github.com/kyleu/dbaudit@v0.0.2-0.20240321155047-ff2f2c940496/views/components/view/Diff.html.go (about)

     1  // Code generated by qtc from "Diff.html". DO NOT EDIT.
     2  // See https://github.com/valyala/quicktemplate for details.
     3  
     4  // <!-- Content managed by Project Forge, see [projectforge.md] for details. -->
     5  
     6  //line views/components/view/Diff.html:2
     7  package view
     8  
     9  //line views/components/view/Diff.html:2
    10  import (
    11  	"github.com/samber/lo"
    12  
    13  	"github.com/kyleu/dbaudit/app/controller/cutil"
    14  	"github.com/kyleu/dbaudit/app/util"
    15  	"github.com/kyleu/dbaudit/views/components"
    16  )
    17  
    18  //line views/components/view/Diff.html:10
    19  import (
    20  	qtio422016 "io"
    21  
    22  	qt422016 "github.com/valyala/quicktemplate"
    23  )
    24  
    25  //line views/components/view/Diff.html:10
    26  var (
    27  	_ = qtio422016.Copy
    28  	_ = qt422016.AcquireByteBuffer
    29  )
    30  
    31  //line views/components/view/Diff.html:10
    32  func StreamDiffs(qw422016 *qt422016.Writer, value util.Diffs) {
    33  //line views/components/view/Diff.html:11
    34  	if len(value) == 0 {
    35  //line views/components/view/Diff.html:11
    36  		qw422016.N().S(`<em>no changes</em>`)
    37  //line views/components/view/Diff.html:13
    38  	} else {
    39  //line views/components/view/Diff.html:13
    40  		qw422016.N().S(`<div class="overflow full-width"><table class="expanded"><thead><tr><th>Path</th><th>Old</th><th></th><th>New</th></tr></thead><tbody>`)
    41  //line views/components/view/Diff.html:25
    42  		for _, d := range value {
    43  //line views/components/view/Diff.html:25
    44  			qw422016.N().S(`<tr><td style="width: 30%;"><code>`)
    45  //line views/components/view/Diff.html:27
    46  			qw422016.E().S(d.Path)
    47  //line views/components/view/Diff.html:27
    48  			qw422016.N().S(`</code></td><td style="width: 30%;"><code><em>`)
    49  //line views/components/view/Diff.html:28
    50  			qw422016.E().S(d.Old)
    51  //line views/components/view/Diff.html:28
    52  			qw422016.N().S(`</em></code></td><td style="width: 10%;">→</td><td style="width: 30%;"><code class="success">`)
    53  //line views/components/view/Diff.html:30
    54  			qw422016.E().S(d.New)
    55  //line views/components/view/Diff.html:30
    56  			qw422016.N().S(`</code></td></tr>`)
    57  //line views/components/view/Diff.html:32
    58  		}
    59  //line views/components/view/Diff.html:32
    60  		qw422016.N().S(`</tbody></table></div>`)
    61  //line views/components/view/Diff.html:36
    62  	}
    63  //line views/components/view/Diff.html:37
    64  }
    65  
    66  //line views/components/view/Diff.html:37
    67  func WriteDiffs(qq422016 qtio422016.Writer, value util.Diffs) {
    68  //line views/components/view/Diff.html:37
    69  	qw422016 := qt422016.AcquireWriter(qq422016)
    70  //line views/components/view/Diff.html:37
    71  	StreamDiffs(qw422016, value)
    72  //line views/components/view/Diff.html:37
    73  	qt422016.ReleaseWriter(qw422016)
    74  //line views/components/view/Diff.html:37
    75  }
    76  
    77  //line views/components/view/Diff.html:37
    78  func Diffs(value util.Diffs) string {
    79  //line views/components/view/Diff.html:37
    80  	qb422016 := qt422016.AcquireByteBuffer()
    81  //line views/components/view/Diff.html:37
    82  	WriteDiffs(qb422016, value)
    83  //line views/components/view/Diff.html:37
    84  	qs422016 := string(qb422016.B)
    85  //line views/components/view/Diff.html:37
    86  	qt422016.ReleaseByteBuffer(qb422016)
    87  //line views/components/view/Diff.html:37
    88  	return qs422016
    89  //line views/components/view/Diff.html:37
    90  }
    91  
    92  //line views/components/view/Diff.html:39
    93  func StreamDiffsSet(qw422016 *qt422016.Writer, key string, value util.DiffsSet, ps *cutil.PageState) {
    94  //line views/components/view/Diff.html:40
    95  	if len(value) == 0 {
    96  //line views/components/view/Diff.html:40
    97  		qw422016.N().S(`<em>no changes</em>`)
    98  //line views/components/view/Diff.html:42
    99  	} else {
   100  //line views/components/view/Diff.html:42
   101  		qw422016.N().S(`<ul class="accordion">`)
   102  //line views/components/view/Diff.html:44
   103  		for idx, k := range util.ArraySorted[string](lo.Keys(value)) {
   104  //line views/components/view/Diff.html:45
   105  			dk, u := util.StringSplitLast(k, '^', true)
   106  
   107  //line views/components/view/Diff.html:46
   108  			if idx < 100 {
   109  //line views/components/view/Diff.html:46
   110  				qw422016.N().S(`<li><input id="accordion-`)
   111  //line views/components/view/Diff.html:48
   112  				qw422016.E().S(k)
   113  //line views/components/view/Diff.html:48
   114  				qw422016.N().S(`-`)
   115  //line views/components/view/Diff.html:48
   116  				qw422016.N().D(idx)
   117  //line views/components/view/Diff.html:48
   118  				qw422016.N().S(`" type="checkbox" hidden="hidden" /><label for="accordion-`)
   119  //line views/components/view/Diff.html:49
   120  				qw422016.E().S(k)
   121  //line views/components/view/Diff.html:49
   122  				qw422016.N().S(`-`)
   123  //line views/components/view/Diff.html:49
   124  				qw422016.N().D(idx)
   125  //line views/components/view/Diff.html:49
   126  				qw422016.N().S(`">`)
   127  //line views/components/view/Diff.html:50
   128  				components.StreamExpandCollapse(qw422016, 3, ps)
   129  //line views/components/view/Diff.html:51
   130  				if u != "" {
   131  //line views/components/view/Diff.html:51
   132  					qw422016.N().S(`<a href="`)
   133  //line views/components/view/Diff.html:51
   134  					qw422016.E().S(u)
   135  //line views/components/view/Diff.html:51
   136  					qw422016.N().S(`">`)
   137  //line views/components/view/Diff.html:51
   138  					qw422016.E().S(dk)
   139  //line views/components/view/Diff.html:51
   140  					qw422016.N().S(`</a>`)
   141  //line views/components/view/Diff.html:51
   142  				} else {
   143  //line views/components/view/Diff.html:51
   144  					qw422016.E().S(dk)
   145  //line views/components/view/Diff.html:51
   146  				}
   147  //line views/components/view/Diff.html:51
   148  				qw422016.N().S(`</label><div class="bd"><div><div>`)
   149  //line views/components/view/Diff.html:54
   150  				StreamDiffs(qw422016, value[k])
   151  //line views/components/view/Diff.html:54
   152  				qw422016.N().S(`</div></div></div></li>`)
   153  //line views/components/view/Diff.html:57
   154  			}
   155  //line views/components/view/Diff.html:58
   156  			if idx == 100 {
   157  //line views/components/view/Diff.html:58
   158  				qw422016.N().S(`<li><input id="accordion-`)
   159  //line views/components/view/Diff.html:60
   160  				qw422016.E().S(k)
   161  //line views/components/view/Diff.html:60
   162  				qw422016.N().S(`-extras" type="checkbox" hidden="hidden" /><label for="accordion-`)
   163  //line views/components/view/Diff.html:61
   164  				qw422016.E().S(k)
   165  //line views/components/view/Diff.html:61
   166  				qw422016.N().S(`-extras">...and`)
   167  //line views/components/view/Diff.html:61
   168  				qw422016.N().S(` `)
   169  //line views/components/view/Diff.html:61
   170  				qw422016.N().D(len(value) - 100)
   171  //line views/components/view/Diff.html:61
   172  				qw422016.N().S(` `)
   173  //line views/components/view/Diff.html:61
   174  				qw422016.N().S(`extra</label></li>`)
   175  //line views/components/view/Diff.html:63
   176  			}
   177  //line views/components/view/Diff.html:64
   178  		}
   179  //line views/components/view/Diff.html:64
   180  		qw422016.N().S(`</ul>`)
   181  //line views/components/view/Diff.html:66
   182  	}
   183  //line views/components/view/Diff.html:67
   184  }
   185  
   186  //line views/components/view/Diff.html:67
   187  func WriteDiffsSet(qq422016 qtio422016.Writer, key string, value util.DiffsSet, ps *cutil.PageState) {
   188  //line views/components/view/Diff.html:67
   189  	qw422016 := qt422016.AcquireWriter(qq422016)
   190  //line views/components/view/Diff.html:67
   191  	StreamDiffsSet(qw422016, key, value, ps)
   192  //line views/components/view/Diff.html:67
   193  	qt422016.ReleaseWriter(qw422016)
   194  //line views/components/view/Diff.html:67
   195  }
   196  
   197  //line views/components/view/Diff.html:67
   198  func DiffsSet(key string, value util.DiffsSet, ps *cutil.PageState) string {
   199  //line views/components/view/Diff.html:67
   200  	qb422016 := qt422016.AcquireByteBuffer()
   201  //line views/components/view/Diff.html:67
   202  	WriteDiffsSet(qb422016, key, value, ps)
   203  //line views/components/view/Diff.html:67
   204  	qs422016 := string(qb422016.B)
   205  //line views/components/view/Diff.html:67
   206  	qt422016.ReleaseByteBuffer(qb422016)
   207  //line views/components/view/Diff.html:67
   208  	return qs422016
   209  //line views/components/view/Diff.html:67
   210  }