@xiee/utils 1.14.92 → 1.14.94

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -17,16 +17,13 @@
17
17
  .lti-search {
18
18
  width: 100%;
19
19
  padding: .5em 0 .5em 1.6em;
20
- background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="none" stroke="gray" stroke-width="2"><circle cx="6.5" cy="6.5" r="4.5"/><path d="M10 10l5 5"/></svg>');
21
- background-repeat: no-repeat;
22
- background-position: 0.4em center;
23
- background-size: 1em;
24
- }
25
- /* on focus the magnifier goes away, leaving a small left pad so the caret
26
- * sits just inside the edge rather than behind the icon's wider gutter */
27
- .lti-search:focus {
28
- padding-left: .5em;
29
- background-image: none;
20
+ background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="none" stroke="gray" stroke-width="2"><circle cx="6.5" cy="6.5" r="4.5"/><path d="M10 10l5 5"/></svg>') 0.4em center / 1em no-repeat;
21
+ /* on focus the magnifier goes away, leaving a small left pad so the caret
22
+ * sits just inside the edge rather than behind the icon's wider gutter */
23
+ &:focus {
24
+ padding-left: .5em;
25
+ background-image: none;
26
+ }
30
27
  }
31
28
 
32
29
  /* the click target is the label span, not the whole cell (so the resize grip
@@ -73,10 +70,10 @@
73
70
  cursor: col-resize;
74
71
  user-select: none;
75
72
  touch-action: none;
76
- }
77
- .lti-resizer:hover {
78
- background: currentColor;
79
- opacity: 0.3;
73
+ &:hover {
74
+ background: currentColor;
75
+ opacity: 0.3;
76
+ }
80
77
  }
81
78
  /* while dragging, the pointer keeps the resize cursor anywhere on the table,
82
79
  * and the drag selects no text */
@@ -96,23 +93,26 @@
96
93
  }
97
94
  }
98
95
 
99
- /* the column menu and search box share this flex bar: alone, the search fills
100
- * it; with the menu button, they sit at opposite ends */
96
+ /* the control bar lays its parts out left to right: an icon group, the filter
97
+ * chips, then the search box. Only the search box grows, so all the free space
98
+ * lands in it (pushing it to the right edge); the icons and chips keep their
99
+ * natural width. The search still fills the bar when it is the only control. */
101
100
  .lti-bar {
102
101
  display: flex;
103
102
  align-items: center;
104
- gap: 0.3em;
105
- .lti-search {
106
- flex: 1;
103
+ /* a wide gap between the three parts (icons, chips, search) ... */
104
+ gap: 1.2em;
105
+ .lti-icons, .lti-chips {
106
+ flex: 0 0 auto;
107
+ display: flex;
108
+ align-items: center;
109
+ /* ... but a tight gap between the buttons / chips within a part */
110
+ gap: 0.3em;
107
111
  }
108
- &:has(.lti-cols) {
109
- justify-content: space-between;
110
- /* width:auto overrides the base 100%, so the box takes its natural width
111
- * and the free space falls between it and the menu button */
112
- .lti-search {
113
- flex: 0 1 auto;
114
- width: auto;
115
- }
112
+ /* direct child only: a chip's popover holds its own `.lti-search` box */
113
+ & > .lti-search {
114
+ flex: 1 1 8em;
115
+ min-width: 6em;
116
116
  }
117
117
  }
118
118
 
@@ -142,6 +142,15 @@
142
142
  }
143
143
  }
144
144
 
145
+ /* the CSV download button: an icon button, same footprint as the eye button */
146
+ .lti-download {
147
+ border: none;
148
+ padding: 0;
149
+ width: 1.2em;
150
+ height: 1.2em;
151
+ background: center / contain no-repeat url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="none" stroke="gray" stroke-width="1.5"><path d="M8 1v9m0 0L4.5 6.5M8 10l3.5-3.5"/><path d="M2 11v3h12v-3"/></svg>');
152
+ }
153
+
145
154
  /* typed filter chips sit after the search box in the head bar; each is a label,
146
155
  * a summary of the current filter, and a funnel popping up the widget + box */
147
156
  .lti-chip {
@@ -1,2 +1,2 @@
1
- .lt-table{& :is(.lti-head,.lti-pager-row) td{padding-left:0;padding-right:0}& .lti-search{background-image:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"gray\" stroke-width=\"2\"><circle cx=\"6.5\" cy=\"6.5\" r=\"4.5\"/><path d=\"M10 10l5 5\"/></svg>");background-position:.4em;background-repeat:no-repeat;background-size:1em;width:100%;padding:.5em 0 .5em 1.6em}& .lti-search:focus{background-image:none;padding-left:.5em}& .lti-sortable .lti-label{cursor:pointer;user-select:none}& .lti-sort{margin-left:.3em;font-size:.8em}& .lti-empty td{text-align:center}& .lti-expand{cursor:pointer;background:0 0;border:none;margin-right:.4em;padding:0}& .lti-detail>td{padding-left:1.5em}& th:has(.lti-resizer){position:relative}& .lti-resizer{cursor:col-resize;user-select:none;touch-action:none;width:5px;height:100%;position:absolute;top:0;right:0}& .lti-resizer:hover{opacity:.3;background:currentColor}&.lti-resizing{cursor:col-resize;user-select:none}&.lti-fixed{table-layout:fixed;& thead th,& tbody tr:not(.lti-detail) td{overflow:hidden}}& .lti-bar{align-items:center;gap:.3em;display:flex;& .lti-search{flex:1}&:has(.lti-cols){justify-content:space-between;& .lti-search{flex:0 auto;width:auto}}}& .lti-cols{position:relative;& button{background:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"gray\" stroke-width=\"1.5\"><path d=\"M1 8s2.5-4.5 7-4.5 7 4.5 7 4.5-2.5 4.5-7 4.5-7-4.5-7-4.5z\"/><circle cx=\"8\" cy=\"8\" r=\"2\"/></svg>") 50%/contain no-repeat;border:none;width:1.2em;height:1.2em;padding:0}& .lti-menu{z-index:1;background:canvas;border:1px solid;padding:.3em .6em;position:absolute;top:100%;left:0;& label{white-space:nowrap;cursor:pointer;display:block}}}& .lti-chip{align-items:center;gap:.3em;display:inline-flex;&.lti-on .lti-chip-name{font-weight:600}& .lti-chip-cur{color:#555;font-variant-numeric:tabular-nums}}& .lti-pop{position:relative;& .lti-funnel{opacity:.55;background:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 16 16\" fill=\"gray\"><path d=\"M1 2h14l-5.5 6.5V14l-3 1V8.5z\"/></svg>") 50%/contain no-repeat;border:none;width:1.1em;height:1.1em;padding:0}&.lti-on .lti-funnel{opacity:1}& .lti-pop-panel{z-index:1;flex-direction:column;display:flex;position:absolute;top:100%;left:0;&[hidden]{display:none}background:canvas;border:1px solid;gap:.5em;min-width:14em;max-width:90vw;padding:.6em}}& .lti-slider{height:1.2em;margin:.4em .6em;position:relative;&:before{content:"";background:#c8c8c8;border-radius:3px;height:3px;position:absolute;inset:50% 0 auto;transform:translateY(-50%)}& .lti-slider-fill{background:#4a90d9;height:3px;position:absolute;inset:50% 0;transform:translateY(-50%)}& .lti-thumb{cursor:pointer;touch-action:none;background:#4a90d9;border:2px solid #fff;border-radius:50%;width:14px;height:14px;padding:0;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 2px #0006}}& .lti-slider-out{text-align:center;font-variant-numeric:tabular-nums}& .lti-pager{align-items:center;gap:.3em;display:flex}& button,& select{font:inherit;cursor:pointer}& .lti-pos{margin:0 auto 0 .3em}}
1
+ .lt-table{& :is(.lti-head,.lti-pager-row) td{padding-left:0;padding-right:0}& .lti-search{background:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"gray\" stroke-width=\"2\"><circle cx=\"6.5\" cy=\"6.5\" r=\"4.5\"/><path d=\"M10 10l5 5\"/></svg>") .4em/1em no-repeat;width:100%;padding:.5em 0 .5em 1.6em;&:focus{background-image:none;padding-left:.5em}}& .lti-sortable .lti-label{cursor:pointer;user-select:none}& .lti-sort{margin-left:.3em;font-size:.8em}& .lti-empty td{text-align:center}& .lti-expand{cursor:pointer;background:0 0;border:none;margin-right:.4em;padding:0}& .lti-detail>td{padding-left:1.5em}& th:has(.lti-resizer){position:relative}& .lti-resizer{cursor:col-resize;user-select:none;touch-action:none;width:5px;height:100%;position:absolute;top:0;right:0;&:hover{opacity:.3;background:currentColor}}&.lti-resizing{cursor:col-resize;user-select:none}&.lti-fixed{table-layout:fixed;& thead th,& tbody tr:not(.lti-detail) td{overflow:hidden}}& .lti-bar{align-items:center;gap:1.2em;display:flex;& .lti-icons,& .lti-chips{flex:none;align-items:center;gap:.3em;display:flex}&>.lti-search{flex:8em;min-width:6em}}& .lti-cols{position:relative;& button{background:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"gray\" stroke-width=\"1.5\"><path d=\"M1 8s2.5-4.5 7-4.5 7 4.5 7 4.5-2.5 4.5-7 4.5-7-4.5-7-4.5z\"/><circle cx=\"8\" cy=\"8\" r=\"2\"/></svg>") 50%/contain no-repeat;border:none;width:1.2em;height:1.2em;padding:0}& .lti-menu{z-index:1;background:canvas;border:1px solid;padding:.3em .6em;position:absolute;top:100%;left:0;& label{white-space:nowrap;cursor:pointer;display:block}}}& .lti-download{background:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"gray\" stroke-width=\"1.5\"><path d=\"M8 1v9m0 0L4.5 6.5M8 10l3.5-3.5\"/><path d=\"M2 11v3h12v-3\"/></svg>") 50%/contain no-repeat;border:none;width:1.2em;height:1.2em;padding:0}& .lti-chip{align-items:center;gap:.3em;display:inline-flex;&.lti-on .lti-chip-name{font-weight:600}& .lti-chip-cur{color:#555;font-variant-numeric:tabular-nums}}& .lti-pop{position:relative;& .lti-funnel{opacity:.55;background:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 16 16\" fill=\"gray\"><path d=\"M1 2h14l-5.5 6.5V14l-3 1V8.5z\"/></svg>") 50%/contain no-repeat;border:none;width:1.1em;height:1.1em;padding:0}&.lti-on .lti-funnel{opacity:1}& .lti-pop-panel{z-index:1;flex-direction:column;display:flex;position:absolute;top:100%;left:0;&[hidden]{display:none}background:canvas;border:1px solid;gap:.5em;min-width:14em;max-width:90vw;padding:.6em}}& .lti-slider{height:1.2em;margin:.4em .6em;position:relative;&:before{content:"";background:#c8c8c8;border-radius:3px;height:3px;position:absolute;inset:50% 0 auto;transform:translateY(-50%)}& .lti-slider-fill{background:#4a90d9;height:3px;position:absolute;inset:50% 0;transform:translateY(-50%)}& .lti-thumb{cursor:pointer;touch-action:none;background:#4a90d9;border:2px solid #fff;border-radius:50%;width:14px;height:14px;padding:0;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 2px #0006}}& .lti-slider-out{text-align:center;font-variant-numeric:tabular-nums}& .lti-pager{align-items:center;gap:.3em;display:flex}& button,& select{font:inherit;cursor:pointer}& .lti-pos{margin:0 auto 0 .3em}}
2
2
  /*# sourceMappingURL=lt-interactive.min.css.map */
@@ -1 +1 @@
1
- {"version":3,"mappings":"AAKA,UAGE,kEAQA,gWAUA,4DAOA,2DAKA,4CAKA,kCAMA,oFASA,oCAKA,yCAGA,0HAUA,wDAMA,kDAKA,+BAME,2DAOF,oDAIE,qBAGA,+CAIE,uCAQJ,8BAEE,uVAOA,6GAQE,0DAUJ,4DAIE,wCAGA,8DAKF,6BAEE,oQAUA,+BAGA,gGAQE,uBACI,wFAUR,8DAIE,kIASA,0GAOA,6NAeF,sEAKA,sDAKA,8CAKA","sources":["lt-interactive.css"],"sourcesContent":["/* lt-interactive.css — controls for lt-interactive.js (search box, sortable\n * headers, column filters, pager). Classes are namespaced `lti-*` to avoid\n * clashing with core `lt-*`. Only properties that change a default are\n * declared. */\n\n.lt-table {\n /* the search box and the pager are full-width rows of the table, so they line\n * up with its edges rather than the cell text */\n :is(.lti-head, .lti-pager-row) td {\n padding-left: 0;\n padding-right: 0;\n }\n\n /* Each box fills its cell: the whole table for the search, one column for a\n * filter. A faded magnifier stands in for a placeholder — it says \"type here\n * to search\" in no language — and steps aside once the box has the focus. */\n .lti-search {\n width: 100%;\n padding: .5em 0 .5em 1.6em;\n background-image: url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"gray\" stroke-width=\"2\"><circle cx=\"6.5\" cy=\"6.5\" r=\"4.5\"/><path d=\"M10 10l5 5\"/></svg>');\n background-repeat: no-repeat;\n background-position: 0.4em center;\n background-size: 1em;\n }\n /* on focus the magnifier goes away, leaving a small left pad so the caret\n * sits just inside the edge rather than behind the icon's wider gutter */\n .lti-search:focus {\n padding-left: .5em;\n background-image: none;\n }\n\n /* the click target is the label span, not the whole cell (so the resize grip\n * stays separate), so the pointer cursor belongs on the label too */\n .lti-sortable .lti-label {\n cursor: pointer;\n user-select: none;\n }\n /* the ▲/▼ indicator, set off from the column label */\n .lti-sort {\n margin-left: 0.3em;\n font-size: 0.8em;\n }\n\n .lti-empty td {\n text-align: center;\n }\n\n /* the expand caret leads the first cell of each row; it carries its own\n * glyph (▸ / ▾), so it needs no borders or background of its own */\n .lti-expand {\n border: none;\n background: none;\n padding: 0;\n margin-right: 0.4em;\n cursor: pointer;\n }\n /* a row's detail spans every column; the inset marks it as belonging to the\n * row above it */\n .lti-detail > td {\n padding-left: 1.5em;\n }\n\n /* the drag grip sits on a column's right edge, inside its header cell */\n th:has(.lti-resizer) {\n position: relative;\n }\n .lti-resizer {\n position: absolute;\n top: 0;\n right: 0;\n width: 5px;\n height: 100%;\n cursor: col-resize;\n user-select: none;\n touch-action: none;\n }\n .lti-resizer:hover {\n background: currentColor;\n opacity: 0.3;\n }\n /* while dragging, the pointer keeps the resize cursor anywhere on the table,\n * and the drag selects no text */\n &.lti-resizing {\n cursor: col-resize;\n user-select: none;\n }\n /* column widths are authoritative once frozen, so a drag moves one edge only */\n &.lti-fixed {\n table-layout: fixed;\n /* a shrunk column hides its overflow rather than spilling into the next\n * column or out under the resize grip, so the grip can shrink it freely;\n * the detail row (full width, possibly tall) and the popover-bearing\n * filter/bar cells (<td>) are left to overflow */\n thead th, tbody tr:not(.lti-detail) td {\n overflow: hidden;\n }\n }\n\n /* the column menu and search box share this flex bar: alone, the search fills\n * it; with the menu button, they sit at opposite ends */\n .lti-bar {\n display: flex;\n align-items: center;\n gap: 0.3em;\n .lti-search {\n flex: 1;\n }\n &:has(.lti-cols) {\n justify-content: space-between;\n /* width:auto overrides the base 100%, so the box takes its natural width\n * and the free space falls between it and the menu button */\n .lti-search {\n flex: 0 1 auto;\n width: auto;\n }\n }\n }\n\n /* the column-visibility menu: an eye button and the checklist it pops up */\n .lti-cols {\n position: relative;\n button {\n border: none;\n padding: 0;\n width: 1.2em;\n height: 1.2em;\n background: center / contain no-repeat url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"gray\" stroke-width=\"1.5\"><path d=\"M1 8s2.5-4.5 7-4.5 7 4.5 7 4.5-2.5 4.5-7 4.5-7-4.5-7-4.5z\"/><circle cx=\"8\" cy=\"8\" r=\"2\"/></svg>');\n }\n .lti-menu {\n position: absolute;\n z-index: 1;\n top: 100%;\n left: 0;\n background: Canvas;\n border: 1px solid;\n padding: 0.3em 0.6em;\n label {\n display: block;\n white-space: nowrap;\n cursor: pointer;\n }\n }\n }\n\n /* typed filter chips sit after the search box in the head bar; each is a label,\n * a summary of the current filter, and a funnel popping up the widget + box */\n .lti-chip {\n display: inline-flex;\n align-items: center;\n gap: 0.3em;\n &.lti-on .lti-chip-name {\n font-weight: 600;\n }\n .lti-chip-cur {\n color: #555;\n font-variant-numeric: tabular-nums;\n }\n }\n .lti-pop {\n position: relative;\n .lti-funnel {\n border: none;\n padding: 0;\n width: 1.1em;\n height: 1.1em;\n opacity: 0.55;\n background: center / contain no-repeat url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 16 16\" fill=\"gray\"><path d=\"M1 2h14l-5.5 6.5V14l-3 1V8.5z\"/></svg>');\n }\n /* a funnel standing in for a header-level filter reads as active when its\n * column has a live term */\n &.lti-on .lti-funnel {\n opacity: 1;\n }\n .lti-pop-panel {\n position: absolute;\n z-index: 1;\n top: 100%;\n left: 0;\n display: flex;\n flex-direction: column;\n /* an explicit display beats the UA [hidden] rule, so re-hide it here */\n &[hidden] { display: none; }\n gap: 0.5em;\n min-width: 14em;\n max-width: 90vw;\n padding: 0.6em;\n background: Canvas;\n border: 1px solid;\n }\n }\n\n /* the custom range slider: a track with a fill band between two button thumbs */\n .lti-slider {\n position: relative;\n height: 1.2em;\n margin: 0.4em 0.6em;\n &::before {\n content: \"\";\n position: absolute;\n inset: 50% 0 auto;\n height: 3px;\n transform: translateY(-50%);\n background: #c8c8c8;\n border-radius: 3px;\n }\n .lti-slider-fill {\n position: absolute;\n inset: 50% 0;\n height: 3px;\n transform: translateY(-50%);\n background: #4a90d9;\n }\n .lti-thumb {\n position: absolute;\n top: 50%;\n width: 14px;\n height: 14px;\n padding: 0;\n transform: translate(-50%, -50%);\n border: 2px solid #fff;\n border-radius: 50%;\n background: #4a90d9;\n box-shadow: 0 0 2px rgba(0, 0, 0, 0.4);\n cursor: pointer;\n touch-action: none;\n }\n }\n .lti-slider-out {\n text-align: center;\n font-variant-numeric: tabular-nums;\n }\n\n .lti-pager {\n display: flex;\n align-items: center;\n gap: 0.3em;\n }\n button, select {\n font: inherit;\n cursor: pointer;\n }\n /* push the row count away from the arrows, and the page size to the far end */\n .lti-pos {\n margin: 0 auto 0 0.3em;\n }\n}\n"],"names":[]}
1
+ {"version":3,"mappings":"AAKA,UAGE,kEAQA,oSAME,iDAQF,2DAKA,4CAKA,kCAMA,oFASA,oCAKA,yCAGA,0HASE,4CAOF,kDAKA,+BAME,2DASF,qDAKE,6EAQA,sCAOF,8BAEE,uVAOA,6GAQE,0DASJ,4TAUA,4DAIE,wCAGA,8DAKF,6BAEE,oQAUA,+BAGA,gGAQE,uBACI,wFAUR,8DAIE,kIASA,0GAOA,6NAeF,sEAKA,sDAKA,8CAKA","sources":["lt-interactive.css"],"sourcesContent":["/* lt-interactive.css — controls for lt-interactive.js (search box, sortable\n * headers, column filters, pager). Classes are namespaced `lti-*` to avoid\n * clashing with core `lt-*`. Only properties that change a default are\n * declared. */\n\n.lt-table {\n /* the search box and the pager are full-width rows of the table, so they line\n * up with its edges rather than the cell text */\n :is(.lti-head, .lti-pager-row) td {\n padding-left: 0;\n padding-right: 0;\n }\n\n /* Each box fills its cell: the whole table for the search, one column for a\n * filter. A faded magnifier stands in for a placeholder — it says \"type here\n * to search\" in no language — and steps aside once the box has the focus. */\n .lti-search {\n width: 100%;\n padding: .5em 0 .5em 1.6em;\n background: url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"gray\" stroke-width=\"2\"><circle cx=\"6.5\" cy=\"6.5\" r=\"4.5\"/><path d=\"M10 10l5 5\"/></svg>') 0.4em center / 1em no-repeat;\n /* on focus the magnifier goes away, leaving a small left pad so the caret\n * sits just inside the edge rather than behind the icon's wider gutter */\n &:focus {\n padding-left: .5em;\n background-image: none;\n }\n }\n\n /* the click target is the label span, not the whole cell (so the resize grip\n * stays separate), so the pointer cursor belongs on the label too */\n .lti-sortable .lti-label {\n cursor: pointer;\n user-select: none;\n }\n /* the ▲/▼ indicator, set off from the column label */\n .lti-sort {\n margin-left: 0.3em;\n font-size: 0.8em;\n }\n\n .lti-empty td {\n text-align: center;\n }\n\n /* the expand caret leads the first cell of each row; it carries its own\n * glyph (▸ / ▾), so it needs no borders or background of its own */\n .lti-expand {\n border: none;\n background: none;\n padding: 0;\n margin-right: 0.4em;\n cursor: pointer;\n }\n /* a row's detail spans every column; the inset marks it as belonging to the\n * row above it */\n .lti-detail > td {\n padding-left: 1.5em;\n }\n\n /* the drag grip sits on a column's right edge, inside its header cell */\n th:has(.lti-resizer) {\n position: relative;\n }\n .lti-resizer {\n position: absolute;\n top: 0;\n right: 0;\n width: 5px;\n height: 100%;\n cursor: col-resize;\n user-select: none;\n touch-action: none;\n &:hover {\n background: currentColor;\n opacity: 0.3;\n }\n }\n /* while dragging, the pointer keeps the resize cursor anywhere on the table,\n * and the drag selects no text */\n &.lti-resizing {\n cursor: col-resize;\n user-select: none;\n }\n /* column widths are authoritative once frozen, so a drag moves one edge only */\n &.lti-fixed {\n table-layout: fixed;\n /* a shrunk column hides its overflow rather than spilling into the next\n * column or out under the resize grip, so the grip can shrink it freely;\n * the detail row (full width, possibly tall) and the popover-bearing\n * filter/bar cells (<td>) are left to overflow */\n thead th, tbody tr:not(.lti-detail) td {\n overflow: hidden;\n }\n }\n\n /* the control bar lays its parts out left to right: an icon group, the filter\n * chips, then the search box. Only the search box grows, so all the free space\n * lands in it (pushing it to the right edge); the icons and chips keep their\n * natural width. The search still fills the bar when it is the only control. */\n .lti-bar {\n display: flex;\n align-items: center;\n /* a wide gap between the three parts (icons, chips, search) ... */\n gap: 1.2em;\n .lti-icons, .lti-chips {\n flex: 0 0 auto;\n display: flex;\n align-items: center;\n /* ... but a tight gap between the buttons / chips within a part */\n gap: 0.3em;\n }\n /* direct child only: a chip's popover holds its own `.lti-search` box */\n & > .lti-search {\n flex: 1 1 8em;\n min-width: 6em;\n }\n }\n\n /* the column-visibility menu: an eye button and the checklist it pops up */\n .lti-cols {\n position: relative;\n button {\n border: none;\n padding: 0;\n width: 1.2em;\n height: 1.2em;\n background: center / contain no-repeat url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"gray\" stroke-width=\"1.5\"><path d=\"M1 8s2.5-4.5 7-4.5 7 4.5 7 4.5-2.5 4.5-7 4.5-7-4.5-7-4.5z\"/><circle cx=\"8\" cy=\"8\" r=\"2\"/></svg>');\n }\n .lti-menu {\n position: absolute;\n z-index: 1;\n top: 100%;\n left: 0;\n background: Canvas;\n border: 1px solid;\n padding: 0.3em 0.6em;\n label {\n display: block;\n white-space: nowrap;\n cursor: pointer;\n }\n }\n }\n\n /* the CSV download button: an icon button, same footprint as the eye button */\n .lti-download {\n border: none;\n padding: 0;\n width: 1.2em;\n height: 1.2em;\n background: center / contain no-repeat url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"gray\" stroke-width=\"1.5\"><path d=\"M8 1v9m0 0L4.5 6.5M8 10l3.5-3.5\"/><path d=\"M2 11v3h12v-3\"/></svg>');\n }\n\n /* typed filter chips sit after the search box in the head bar; each is a label,\n * a summary of the current filter, and a funnel popping up the widget + box */\n .lti-chip {\n display: inline-flex;\n align-items: center;\n gap: 0.3em;\n &.lti-on .lti-chip-name {\n font-weight: 600;\n }\n .lti-chip-cur {\n color: #555;\n font-variant-numeric: tabular-nums;\n }\n }\n .lti-pop {\n position: relative;\n .lti-funnel {\n border: none;\n padding: 0;\n width: 1.1em;\n height: 1.1em;\n opacity: 0.55;\n background: center / contain no-repeat url('data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 16 16\" fill=\"gray\"><path d=\"M1 2h14l-5.5 6.5V14l-3 1V8.5z\"/></svg>');\n }\n /* a funnel standing in for a header-level filter reads as active when its\n * column has a live term */\n &.lti-on .lti-funnel {\n opacity: 1;\n }\n .lti-pop-panel {\n position: absolute;\n z-index: 1;\n top: 100%;\n left: 0;\n display: flex;\n flex-direction: column;\n /* an explicit display beats the UA [hidden] rule, so re-hide it here */\n &[hidden] { display: none; }\n gap: 0.5em;\n min-width: 14em;\n max-width: 90vw;\n padding: 0.6em;\n background: Canvas;\n border: 1px solid;\n }\n }\n\n /* the custom range slider: a track with a fill band between two button thumbs */\n .lti-slider {\n position: relative;\n height: 1.2em;\n margin: 0.4em 0.6em;\n &::before {\n content: \"\";\n position: absolute;\n inset: 50% 0 auto;\n height: 3px;\n transform: translateY(-50%);\n background: #c8c8c8;\n border-radius: 3px;\n }\n .lti-slider-fill {\n position: absolute;\n inset: 50% 0;\n height: 3px;\n transform: translateY(-50%);\n background: #4a90d9;\n }\n .lti-thumb {\n position: absolute;\n top: 50%;\n width: 14px;\n height: 14px;\n padding: 0;\n transform: translate(-50%, -50%);\n border: 2px solid #fff;\n border-radius: 50%;\n background: #4a90d9;\n box-shadow: 0 0 2px rgba(0, 0, 0, 0.4);\n cursor: pointer;\n touch-action: none;\n }\n }\n .lti-slider-out {\n text-align: center;\n font-variant-numeric: tabular-nums;\n }\n\n .lti-pager {\n display: flex;\n align-items: center;\n gap: 0.3em;\n }\n button, select {\n font: inherit;\n cursor: pointer;\n }\n /* push the row count away from the arrows, and the page size to the far end */\n .lti-pos {\n margin: 0 auto 0 0.3em;\n }\n}\n"],"names":[]}
@@ -26,6 +26,12 @@
26
26
  // explicit `{col, dir}` object. Normalizes either to `{col, dir}`.
27
27
  const parseKey = k => typeof k !== "string" ? { ...k } :
28
28
  k[0] === "-" ? { col: k.slice(1), dir: "desc" } : { col: k, dir: "asc" };
29
+ // Compare two non-null values: numeric subtraction for a numeric column, else
30
+ // a locale-aware string compare (the collator built once, lazily reused).
31
+ const cmpVals = (x, y, num) => {
32
+ coll ||= new Intl.Collator();
33
+ return num ? x - y : coll.compare(String(x), String(y));
34
+ };
29
35
 
30
36
  // --- Small DOM helpers, so building the controls stays terse ---
31
37
  const $ = (el, sel) => el.querySelector(sel),
@@ -146,8 +152,7 @@
146
152
  for (const { col, num, dir } of keys) {
147
153
  const x = col[a - 1], y = col[b - 1], xn = x == null, yn = y == null;
148
154
  if (xn || yn) { if (xn !== yn) return xn ? 1 : -1; continue; }
149
- coll ||= new Intl.Collator();
150
- const c = num ? x - y : coll.compare(String(x), String(y));
155
+ const c = cmpVals(x, y, num);
151
156
  if (c) return dir * c;
152
157
  }
153
158
  return 0;
@@ -216,8 +221,7 @@
216
221
  order.sort((a, b) => {
217
222
  const an = a.v == null, bn = b.v == null;
218
223
  if (an || bn) return an === bn ? 0 : an ? 1 : -1;
219
- coll ||= new Intl.Collator();
220
- return d * (num ? a.v - b.v : coll.compare(String(a.v), String(b.v)));
224
+ return d * cmpVals(a.v, b.v, num);
221
225
  });
222
226
  }
223
227
  return order.flatMap(b => partition(b.rows, depth + 1));
@@ -231,8 +235,7 @@
231
235
  // groups need not cover every row). A group left with no row simply
232
236
  // contributes nothing — its header is re-emitted at render only when a row
233
237
  // remains.
234
- const cmp = makeCmp(state.sort || []);
235
- const groups = spec._groups;
238
+ const cmp = makeCmp(state.sort || []), groups = spec._groups;
236
239
  if (!groups) return reduce(all(), cmp);
237
240
  const grouped = new Set(), out = [];
238
241
  for (const g of groups) { g.rows.forEach(r => grouped.add(r)); out.push(...reduce(g.rows, cmp)); }
@@ -305,7 +308,10 @@
305
308
  // reorders its blocks (computeView pulls a group-column key out of the leaf
306
309
  // sort — see the `_rowspan` branch there)
307
310
  const nGroup = spec._rowspan ? spec._rowspan.length : 0,
308
- allCols = nGroup ? [...spec._rowspan, ...cols] : cols;
311
+ allCols = nGroup ? [...spec._rowspan, ...cols] : cols,
312
+ // the table's full column count: a full-width row (control bar, pager,
313
+ // no-match placeholder, detail) must span the leading group columns too
314
+ nAll = nGroup + cols.length;
309
315
  const disp = captureDisplay(el, cols, order),
310
316
  // the bottom header row: the one whose cells line up with `cols`
311
317
  hrow = [...$$(el, "thead tr")].pop(),
@@ -336,7 +342,7 @@
336
342
  });
337
343
  const body = $(tmp.content, "tbody");
338
344
  if (!rows.length) // no matches: a neutral symbol spanning all columns
339
- body.innerHTML = `<tr class="lti-empty"><td colspan="${cols.length}">—</td></tr>`;
345
+ body.innerHTML = `<tr class="lti-empty"><td colspan="${nAll}">—</td></tr>`;
340
346
  else postSwap.forEach(f => f(body, vr));
341
347
  $(el, "tbody").replaceWith(body);
342
348
  sync(view.length);
@@ -369,11 +375,12 @@
369
375
  const flt = opts.filter,
370
376
  barCols = flt?.cols ?
371
377
  Object.keys(flt.cols).filter(c => flt.cols[c] !== true && !cols.includes(c)) : [];
372
- // the table-wide controls share one full-width head row: the column menu
373
- // (if any) at its start, the search box, then any head-bar filter chips
374
- const headBar = (opts.search !== false || opts.hide || barCols.length) ?
378
+ // the table-wide controls share one full-width head row, laid out left to
379
+ // right: an icon group (the column menu and the download button), then the
380
+ // head-bar filter chips, then the search box (which absorbs the free space)
381
+ const headBar = (opts.search !== false || opts.hide || barCols.length || opts.download) ?
375
382
  elem(el.ownerDocument, "div", { className: "lti-bar" },
376
- fullRow(el.tHead || el.createTHead(), "lti-head", cols.length, 0)) : null;
383
+ fullRow(el.tHead || el.createTHead(), "lti-head", nAll, 0)) : null;
377
384
  // the data-column header labels (skipping any leading group cell), read
378
385
  // before sort/resize decorate the cells, so the column menu can list the
379
386
  // displayed labels rather than the raw names
@@ -387,19 +394,29 @@
387
394
  addFilter(hrow, cols, flt, spec.data, state, refresh);
388
395
  const layout = opts.resize ? fixedLayout(el, hrow, cols.length, nGroup) : null;
389
396
  if (opts.resize) addResize(el, layout);
397
+ // the icon buttons sit together in a group that keeps its natural width;
398
+ // append them (menu first, download second) before the chips and search so
399
+ // the DOM order is the visual order
400
+ const icons = (opts.hide || opts.download) ?
401
+ elem(el.ownerDocument, "div", { className: "lti-icons" }, headBar) : null;
390
402
  if (opts.hide)
391
- addColumnToggle(headBar, el, hrow, cols, labels, opts.hide, layout, postSwap);
403
+ addColumnToggle(icons, el, hrow, cols, labels, opts.hide, layout, postSwap);
404
+ if (opts.download) addDownload(icons, el, spec, cols, labels, opts.download);
405
+ // the chips share a group so the bar has three parts (icons, chips, search)
406
+ // with a wider gap between them than within each
407
+ if (barCols.length) addControlFilters(
408
+ elem(el.ownerDocument, "div", { className: "lti-chips" }, headBar),
409
+ barCols, flt.cols, spec.data, state, refresh);
392
410
  if (opts.search !== false) addSearch(headBar, el, state, refresh);
393
- if (barCols.length) addControlFilters(headBar, barCols, flt.cols, spec.data, state, refresh);
394
411
  // row detail re-renders through the same seam: toggling a row only changes
395
412
  // which rows carry a detail block, so a plain re-render (no new view) is
396
413
  // enough
397
414
  if (opts.detail)
398
- postSwap.push(addDetail(el, spec, cols, state, opts.detail, () => refresh(false)));
415
+ postSwap.push(addDetail(el, spec, nAll, state, opts.detail, () => refresh(false)));
399
416
  // `pager` is the page sizes to offer, the first one being the initial
400
417
  if (opts.pager) {
401
418
  const sizes = Array.isArray(opts.pager) ? opts.pager : [10, 25, 50, 100];
402
- sync = addPaginate(el, cols, sizes, state, () => refresh(false));
419
+ sync = addPaginate(el, nAll, sizes, nRow, state, () => refresh(false));
403
420
  refresh(); // cut the full render down to the first page
404
421
  } else if (state.sort.length || opts.detail) {
405
422
  // core rendered the rows in file order; re-render to apply an initial
@@ -442,6 +459,40 @@
442
459
  onType(input, v => { state.term = v; refresh(); });
443
460
  }
444
461
 
462
+ // Escape one value for a CSV field: wrap in quotes (doubling any inside) only
463
+ // when it holds a comma, quote, or newline, so plain values stay bare.
464
+ function csvField(v) {
465
+ const s = v == null ? "" : String(v);
466
+ return /[",\n]/.test(s) ? '"' + s.replace(/"/g, '""') + '"' : s;
467
+ }
468
+
469
+ // A button that downloads the table's current view as a CSV file. The header
470
+ // row is the column labels; each body row is a view row (every row the filters
471
+ // and search keep, in sort order, across all pages — `el._lt.view()` gives the
472
+ // 1-based original indices) rendered with the displayed cell text from
473
+ // `spec._display`. `name` is the file name (`true` = a default); group columns
474
+ // (null in `cols`) are skipped. No library, no network: a Blob and an <a>.
475
+ function addDownload(cell, el, spec, cols, labels, name) {
476
+ const doc = el.ownerDocument,
477
+ file = (typeof name === "string" && name ? name : "table")
478
+ .replace(/(\.csv)?$/i, ".csv"),
479
+ keep = cols.map((c, i) => i).filter(i => cols[i] != null),
480
+ btn = elem(doc, "button", {
481
+ type: "button", className: "lti-download", title: "Download CSV",
482
+ "aria-label": "Download table as CSV"
483
+ }, cell);
484
+ btn.onclick = () => {
485
+ const disp = spec._display || {},
486
+ lines = [keep.map(i => csvField(labels[i] ?? cols[i])).join(",")];
487
+ for (const r of el._lt.view())
488
+ lines.push(keep.map(i => csvField((disp[cols[i]] || [])[r - 1])).join(","));
489
+ const url = URL.createObjectURL(
490
+ new Blob([lines.join("\n")], { type: "text/csv" }));
491
+ elem(doc, "a", { href: url, download: file }).click();
492
+ URL.revokeObjectURL(url);
493
+ };
494
+ }
495
+
445
496
  // Advance one column through asc → desc → unsorted, updating `state.sort` (an
446
497
  // ordered list of `{col, dir}` keys). A plain click sorts by that column
447
498
  // alone; a shift-click adds it as a further tie-breaker (or re-cycles it where
@@ -524,8 +575,10 @@
524
575
  // interactive). Expanded rows are tracked by their original index, so detail
525
576
  // follows its row across sort/filter/page. Resolving `detailOpt` is deferred
526
577
  // to the first expand, so a global built after the table still works.
527
- function addDetail(el, spec, cols, state, detailOpt, rerender) {
528
- const doc = el.ownerDocument, nCol = cols.length, cache = {};
578
+ function addDetail(el, spec, nCol, state, detailOpt, rerender) {
579
+ // `nCol` is the table's full width, so the detail row spans the leading
580
+ // rowspan group columns too
581
+ const doc = el.ownerDocument, cache = {};
529
582
  state.expanded = new Set();
530
583
  // a row as an object keyed by column (every column, including ones hidden
531
584
  // from the table), built from `src`: spec.data gives raw values, spec._display
@@ -626,7 +679,7 @@
626
679
  const old = parseFloat(cs[i].style.width);
627
680
  cs[i].style.width = Math.max(w, min) + "px";
628
681
  el.style.width =
629
- parseFloat(el.style.width) + parseFloat(cs[i].style.width) - old + "px";
682
+ `${parseFloat(el.style.width) + parseFloat(cs[i].style.width) - old}px`;
630
683
  };
631
684
  // `dataCs` drops the leading group <col>s, so a data-column consumer (the
632
685
  // column-hide menu) indexes it by data-column position
@@ -758,6 +811,9 @@
758
811
  ? a - b : String(a).localeCompare(String(b)));
759
812
  choices = vals.map(v => ({ value: String(v), label: String(v) }));
760
813
  }
814
+ // a leading blank is the "no filter" choice, so a select shows every row
815
+ // until the reader picks a value (and can always return to it)
816
+ if (!choices.some(o => o.value === "")) choices = [{ value: "", label: "" }, ...choices];
761
817
  return { ...spec, choices };
762
818
  }
763
819
  let { min, max } = spec;
@@ -809,7 +865,7 @@
809
865
  t.setAttribute("aria-valuenow", val[i]);
810
866
  });
811
867
  fill.style.left = pct(val[0]) + "%";
812
- fill.style.right = 100 - pct(val[1]) + "%";
868
+ fill.style.right = `${100 - pct(val[1])}%`;
813
869
  },
814
870
  setOne = (i, v) => {
815
871
  val[i] = snap(v);
@@ -838,7 +894,7 @@
838
894
 
839
895
  // A funnel button that toggles a floating panel built by `build(panel)`; closes
840
896
  // on an outside click or Escape. Returns the wrapper element.
841
- function popover(doc, label, build) {
897
+ function popover(doc, label, build, onClose) {
842
898
  const wrap = elem(doc, "span", { className: "lti-pop" }),
843
899
  btn = elem(doc, "button", {
844
900
  type: "button", className: "lti-funnel", title: label,
@@ -846,18 +902,25 @@
846
902
  }, wrap),
847
903
  panel = elem(doc, "div", { className: "lti-pop-panel", hidden: true }, wrap);
848
904
  build(panel);
849
- // keep the panel inside the viewport: it opens to the funnel's left edge by
850
- // default, but a funnel near the right margin would push it off-screen (and
851
- // raise a horizontal scrollbar), so anchor it to the funnel's right instead
905
+ // keep the panel inside the table's scroll box: it opens to the funnel's left
906
+ // edge by default, but a funnel near the right edge would push it past the
907
+ // box (raising its horizontal scrollbar), so anchor it to the funnel's right
908
+ // instead. The limit is the scroll box's right edge, not the viewport's — the
909
+ // box can have room on screen yet none of its own, and vice versa.
852
910
  const place = () => {
853
911
  panel.style.left = panel.style.right = ""; // back to the CSS default (left:0)
854
- const r = panel.getBoundingClientRect(), vw = (doc.defaultView || window).innerWidth;
855
- if (r.right > vw - 4) { panel.style.left = "auto"; panel.style.right = "0"; }
912
+ const vw = (doc.defaultView || window).innerWidth,
913
+ box = wrap.closest(".lt-wrap"),
914
+ limit = Math.min(vw, box ? box.getBoundingClientRect().right : vw);
915
+ if (panel.getBoundingClientRect().right > limit - 4) {
916
+ panel.style.left = "auto"; panel.style.right = "0";
917
+ }
856
918
  };
857
919
  const open = on => {
920
+ const was = !panel.hidden;
858
921
  panel.hidden = !on;
859
922
  btn.setAttribute("aria-expanded", String(on));
860
- if (on) place();
923
+ if (on) place(); else if (was) onClose && onClose();
861
924
  };
862
925
  btn.onclick = e => { e.stopPropagation(); open(panel.hidden); };
863
926
  on(doc, "click", e => { if (!wrap.contains(e.target)) open(false); });
@@ -880,7 +943,7 @@
880
943
  const o = cfg.choices.find(o => o.value === v);
881
944
  return o ? o.label : v;
882
945
  },
883
- init: cfg => selExpr(cfg.selected ?? (cfg.choices[0] || {}).value ?? ""),
946
+ init: cfg => selExpr(cfg.selected ?? ""),
884
947
  build: (doc, cfg, setTerm) => {
885
948
  const w = makeSelect(doc, cfg.choices, v => setTerm(selExpr(v), ed)),
886
949
  ed = { el: w.el, reflect: t => { const v = selParse(t); w.set(v == null ? "" : v); } };
@@ -930,7 +993,7 @@
930
993
  editors.push(wEd);
931
994
  panel.append(...[].concat(wEd.el));
932
995
  setTerm(kind.init(cfg), null); // seed the configured default
933
- });
996
+ }, () => showSummary()); // refresh the chip text on close
934
997
  // a hidden column wraps the funnel in a chip (label + value summary); a
935
998
  // visible column shows the bare funnel under its own header
936
999
  let root = wrap, summary;
@@ -940,11 +1003,14 @@
940
1003
  summary = elem(doc, "span", { className: "lti-chip-cur" }, root);
941
1004
  root.appendChild(wrap);
942
1005
  }
943
- mark = cur => {
944
- root.classList.toggle("lti-on", !!cur);
945
- if (summary) summary.textContent = kind.describe(cur, cfg);
946
- };
1006
+ // the active-state class tracks every change (color only, no reflow), but the
1007
+ // chip's value text is a variable width, so a live update while dragging the
1008
+ // slider would shift the funnel (and its popover) sideways; defer it to close
1009
+ mark = cur => root.classList.toggle("lti-on", !!cur);
1010
+ const showSummary = () =>
1011
+ summary && (summary.textContent = kind.describe(state.filters[col] || "", cfg));
947
1012
  mark(state.filters[col] || ""); // paint the seeded term
1013
+ showSummary();
948
1014
  return root;
949
1015
  }
950
1016
 
@@ -961,13 +1027,13 @@
961
1027
  // numbers only: « ‹ › » for first/previous/next/last and `from–to / total`
962
1028
  // for the position. Returns the callback that updates them for a new row
963
1029
  // count.
964
- function addPaginate(el, cols, sizes, state, repage) {
1030
+ function addPaginate(el, nCol, sizes, nRow, state, repage) {
965
1031
  const doc = el.ownerDocument;
966
1032
  let foot = el.tFoot;
967
1033
  // reuse the core footer if there is one, so the pager is sized like it
968
1034
  if (!foot) (foot = el.createTFoot()).className = "lt-footer";
969
1035
  const bar = elem(doc, "div", { className: "lti-pager" },
970
- fullRow(foot, "lti-pager-row", cols.length, -1)),
1036
+ fullRow(foot, "lti-pager-row", nCol, -1)),
971
1037
  pos = elem(doc, "span", { className: "lti-pos" });
972
1038
  state.pageSize = sizes[0];
973
1039
  // the last page is clamped by pageSlice(), so a large number will do
@@ -981,7 +1047,8 @@
981
1047
  return b;
982
1048
  });
983
1049
  bar.appendChild(pos);
984
- if (sizes.length > 1) {
1050
+ // no dropdown when even the smallest size holds every row (none would split)
1051
+ if (sizes.length > 1 && nRow > Math.min(...sizes.filter(n => n > 0))) {
985
1052
  const sel = elem(doc, "select", { "aria-label": "Rows per page" }, bar);
986
1053
  // 0: every row on one page (∞)
987
1054
  sizes.forEach(n => elem(doc, "option", { value: n, textContent: n || "∞" }, sel));
@@ -990,10 +1057,12 @@
990
1057
  return total => {
991
1058
  // a page size of 0 is one page holding everything
992
1059
  const n = state.pageSize || total || 1,
993
- last = Math.max(0, Math.ceil(total / n) - 1);
994
- pos.textContent = total ?
1060
+ last = Math.max(0, Math.ceil(total / n) - 1),
1061
+ // under a filter, append the full count in parens (a symbol, no i18n)
1062
+ all = total < nRow ? ` (${nRow})` : "";
1063
+ pos.textContent = (total ?
995
1064
  `${state.page * n + 1}–${Math.min(total, (state.page + 1) * n)} / ${total}` :
996
- "0 / 0";
1065
+ "0 / 0") + all;
997
1066
  btns.forEach((b, i) => b.disabled = i < 2 ? !state.page : state.page === last);
998
1067
  };
999
1068
  }
@@ -1,2 +1,2 @@
1
- (t=>{"use strict";const e=t.LT;if(!e?.onMount||e.plugins.interactive)return;let n;const s=t=>"number"==typeof t.find(t=>null!=t),o=t=>"string"!=typeof t?{...t}:"-"===t[0]?{col:t.slice(1),dir:"desc"}:{col:t,dir:"asc"},r=(t,e)=>t.querySelector(e),l=(t,e)=>t.querySelectorAll(e),i=(t,e,n,s)=>t.addEventListener(e,n,s),a=t=>[...t.children].filter(t=>!t.classList.contains("lt-row-group"));function c(t,e,n={},s){const o=t.createElement(e);for(const t in n)t.includes("-")?o.setAttribute(t,n[t]):o[t]=n[t];return s?s.appendChild(o):o}function u(t,e,n){t.preventDefault();const s=t.target.ownerDocument||document,o=t=>e(t);i(s,"pointermove",o),i(s,"pointerup",()=>{var t,e;t="pointermove",e=o,s.removeEventListener(t,e),n&&n()},{once:!0})}function d(t){const e=String(t??"").trim();if(""===e)return null;if(/(^|[^\w$])x([^\w$]|$)/.test(e)){let t;try{t=new Function("x",`return (${e});`)}catch(t){}if(t){const n=/^\s*!|!=/.test(e),s=e=>{if(null==e)return n;try{const n=Number(e);return!!t(String(e))||""!==e&&isFinite(n)&&!!t(n)}catch(t){return!1}};return t=>t[n?"every":"some"](t=>s(t.raw))}}const n="!"===e[0],s=(n?e.slice(1).trim():e).toLowerCase();return""===s?null:t=>n!==t.some(t=>null!=t.disp&&String(t.disp).toLowerCase().includes(s))}function p(t,e,o){const r=t._cols||[],l=t.data||{},i=(l[r[0]]||[]).length,a=(t,n)=>({raw:l[t]?.[n-1]??null,disp:e[t]?.[n-1]??""}),c=[];for(const t in o.filters||{}){const e=d(o.filters[t]);e&&c.push(n=>e([a(t,n)]))}const u=d(o.term);u&&c.push(t=>u(r.map(e=>a(e,t))));const p=Object.values(o.predicates||{});if(p.length){const t=Object.keys(l),e=e=>Object.fromEntries(t.map(t=>[t,l[t]?.[e-1]??null]));c.push(t=>{const n=e(t);return p.every(t=>t(n))})}const f=t=>c.every(e=>e(t)),h=t=>{const e=t.map(t=>{const e=l[t.col];return e&&{col:e,num:s(e),dir:"desc"===t.dir?-1:1}}).filter(Boolean);return e.length?(t,s)=>{for(const{col:o,num:r,dir:l}of e){const e=o[t-1],i=o[s-1],a=null==e,c=null==i;if(a||c){if(a!==c)return a?1:-1;continue}n||=new Intl.Collator;const u=r?e-i:n.compare(String(e),String(i));if(u)return l*u}return 0}:null},m=t._indent,g=(t,e)=>{if(!m){const n=t.filter(f);return e?n.sort(e):n}const n=[],s=[];for(const e of t){const t={r:e,kids:[]},o=m[e-1]||0;for(;s.length&&s[s.length-1].lv>=o;)s.pop();(s.length?s[s.length-1].node.kids:n).push(t),s.push({node:t,lv:o})}const o=t=>t.map(t=>{const e=o(t.kids);return f(t.r)||e.length?{r:t.r,kids:e}:null}).filter(Boolean),r=t=>(e&&t.sort((t,n)=>e(t.r,n.r)),t.forEach(t=>r(t.kids)),t),l=[],i=t=>t.forEach(t=>{l.push(t.r),i(t.kids)});return i(r(o(n))),l},w=()=>Array.from({length:i},(t,e)=>e+1),y=t._rowspan;if(y){const t={},e=[];for(const n of o.sort||[])y.includes(n.col)?t[n.col]=n.dir:e.push(n);const r=h(e),i=(e,o)=>{if(o===y.length)return g(e,r);const a=l[y[o]],c=new Map;for(const t of e){const e=a[t-1],n=null==e?"\0":String(e);(c.get(n)||c.set(n,{v:e,rows:[]}).get(n)).rows.push(t)}let u=[...c.values()];if(t[y[o]]){const e=s(a),r="desc"===t[y[o]]?-1:1;u.sort((t,s)=>{const o=null==t.v,l=null==s.v;return o||l?o===l?0:o?1:-1:(n||=new Intl.Collator,r*(e?t.v-s.v:n.compare(String(t.v),String(s.v))))})}return u.flatMap(t=>i(t.rows,o+1))};return i(w(),0)}const b=h(o.sort||[]),x=t._groups;if(!x)return g(w(),b);const v=new Set,S=[];for(const t of x)t.rows.forEach(t=>v.add(t)),S.push(...g(t.rows,b));const E=[];for(let t=1;t<=i;t++)v.has(t)||E.push(t);return[...S,...g(E,b)]}function f(t,e){const n=e.pageSize;if(!n)return e.page=0,t;const s=Math.max(0,Math.ceil(t.length/n)-1);return e.page=Math.min(Math.max(e.page||0,0),s),t.slice(e.page*n,(e.page+1)*n)}function h(n,s){const d=s.interactive,h=s._cols||[],y=((s.data||{})[h[0]]||[]).length,b=s._groups,x={},v=b?[]:null;if(b){const t=new Set;b.forEach(e=>e.rows.forEach(n=>{x[n]=e,v.push(n),t.add(n)}));for(let e=1;e<=y;e++)t.has(e)||v.push(e)}const S=s._rowspan?s._rowspan.length:0,E=S?[...s._rowspan,...h]:h,C=function(t,e,n){const s={};e.forEach(t=>s[t]=[]);let o=0;return l(t,"tbody tr").forEach(t=>{if(t.classList.contains("lt-row-group"))return;const r=n?n[o]:o+1,l=a(t);e.forEach((t,e)=>s[t][r-1]=l[e]?.textContent??""),o++}),s}(n,h,v),k=[...l(n,"thead tr")].pop(),M={filters:{},predicates:{},page:0,pageSize:0,sort:Array.isArray(d.sort)?d.sort.map(o):[]};let L,$=()=>{};const A=[],D=(t=!0)=>{t&&(L=p(s,C,M),M.page=0);const o=f(L,M),l=(t=>{if(!b)return t;const e=[];let n;for(const s of t){const t=x[s];t!==n&&(t&&e.push({label:t.label,raw:t.raw}),n=t),e.push(s)}return e})(o),i=c(n.ownerDocument,"template",{innerHTML:e.buildHtml({...s,_viewRows:l})}),a=r(i.content,"tbody");o.length?A.forEach(t=>t(a,l)):a.innerHTML=`<tr class="lti-empty"><td colspan="${h.length}">—</td></tr>`,r(n,"tbody").replaceWith(a),$(L.length)};n._lt={spec:s,state:M,refresh:()=>D(),view:()=>L||p(s,C,M),filter(t,e){e?M.predicates[t]=e:delete M.predicates[t],D()}};const F=d.filter,_=F?.cols?Object.keys(F.cols).filter(t=>!0!==F.cols[t]&&!h.includes(t)):[],z=!1!==d.search||d.hide||_.length?c(n.ownerDocument,"div",{className:"lti-bar"},g(n.tHead||n.createTHead(),"lti-head",h.length,0)):null,T=a(k).map(t=>t.textContent);!1!==d.sort&&function(t,e,n,s){const o=t.ownerDocument,r={},i=()=>{for(const t in r)r[t].th.removeAttribute("aria-sort"),r[t].ind.textContent="";const t=n.sort||[];t.forEach(({col:e,dir:n},s)=>{const o=r[e];o&&(o.th.setAttribute("aria-sort","desc"===n?"descending":"ascending"),o.ind.textContent=("desc"===n?"▼":"▲")+(t.length>1?String(s+1).replace(/\d/g,t=>"₀₁₂₃₄₅₆₇₈₉"[t]):""))})};l(t,"th").forEach((t,l)=>{const a=e[l];if(null==a)return;t.classList.add("lti-sortable");const u=c(o,"span",{className:"lti-label"},t);for(;t.firstChild!==u;)u.append(t.firstChild);r[a]={th:t,ind:c(o,"span",{className:"lti-sort"},u)},u.onclick=t=>{!function(t,e,n){const s=(t.sort||[]).slice(),o=s.findIndex(t=>t.col===e),r=o<0?"asc":"asc"===s[o].dir?"desc":null;if(!n)return void(t.sort=r?[{col:e,dir:r}]:[]);o<0?s.push({col:e,dir:r}):r?s[o]={col:e,dir:r}:s.splice(o,1);t.sort=s}(n,a,t.shiftKey),i(),s()}}),i()}(k,E,M,D),F&&(F.default||F.cols&&Object.keys(F.cols).some(t=>h.includes(t)))&&function(t,e,n,s,o,r){const l=t.ownerDocument,i=c(l,"tr",{className:"lti-filters"}),a=n.default,u=n.cols||{};e.forEach(t=>{const e=c(l,"td",{},i),n=t in u?u[t]:a;if(n)if(!0===n){w(e.appendChild(m(l,`Filter ${t}`)),e=>{e?o.filters[t]=e:delete o.filters[t],r()})}else e.appendChild(N(l,t,n,s,o,r,null))}),t.parentNode.appendChild(i)}(k,h,F,s.data,M,D);const O=d.resize?function(t,e,n,s=0){const o=[...l(e,"th")],i=function(t,e,n=0){let s=r(t,"colgroup");if(!s){const o=t.ownerDocument;s=c(o,"colgroup");for(let t=0;t<n+e;t++)c(o,"col",{},s);t.caption?t.caption.after(s):t.prepend(s)}return[...s.children]}(t,n,s),a=t=>t.getBoundingClientRect().width,u=()=>{if(t.classList.contains("lti-fixed"))return;const e=o.map(a);t.style.width=a(t)+"px",i.forEach((t,n)=>t.style.width=e[n]+"px"),t.classList.add("lti-fixed")},d=e=>{const n=i.map(t=>t.style.width),s=t.style.width;i.forEach(t=>t.style.width=""),t.style.width="",t.classList.remove("lti-fixed");const r=a(o[e]);return i.forEach((t,e)=>t.style.width=n[e]),t.style.width=s,t.classList.add("lti-fixed"),r},p=(e,n,s=24)=>{const o=parseFloat(i[e].style.width);i[e].style.width=Math.max(n,s)+"px",t.style.width=parseFloat(t.style.width)+parseFloat(i[e].style.width)-o+"px"};return{ths:o,cs:i,dataCs:i.slice(s),freeze:u,natural:d,setWidth:p}}(n,k,h.length,S):null;if(d.resize&&function(t,e){const n=t.ownerDocument,{ths:s,cs:o,freeze:r,natural:l,setWidth:i}=e;s.forEach((e,s)=>{const a=c(n,"div",{className:"lti-resizer"},e);a.ondblclick=t=>{t.stopPropagation(),r(),i(s,l(s))},a.onpointerdown=e=>{e.stopPropagation(),r();const n=e.clientX,l=parseFloat(o[s].style.width);t.classList.add("lti-resizing"),u(e,t=>i(s,l+t.clientX-n),()=>t.classList.remove("lti-resizing"))}})}(n,O),d.hide&&function(t,e,n,s,o,r,l,u){const d=e.ownerDocument,p=r&&r.hidden||[],f=new Set,h=(t,e,n)=>{const s=a(t)[e];s&&1===s.colSpan&&(s.hidden=n)};u.push(t=>f.forEach(e=>{for(const n of t.rows)h(n,e,!0)}));const m=t=>{const n=f.has(t);l?.dataCs[t]&&(l.dataCs[t].hidden=n);for(const s of e.rows)s.classList.contains("lt-spanner-row")||h(s,t,n)},g=c(d,"span",{className:"lti-cols"},t),w=c(d,"button",{type:"button",title:"Columns","aria-label":"Show or hide columns","aria-expanded":"false"},g),y=c(d,"div",{className:"lti-menu",hidden:!0},g);s.forEach((t,e)=>{if(null==t)return;const n=c(d,"label",{},y),s=c(d,"input",{type:"checkbox",checked:!0},n);n.append(o[e]??t),p.includes(t)&&(s.checked=!1,f.add(e)),s.onchange=()=>{s.checked?f.delete(e):f.add(e),m(e)}}),s.forEach((t,e)=>m(e));const b=t=>{y.hidden=!t,w.setAttribute("aria-expanded",String(t))};w.onclick=t=>{t.stopPropagation(),b(y.hidden)},i(d,"click",t=>{g.contains(t.target)||b(!1)}),i(d,"keydown",t=>{"Escape"===t.key&&b(!1)})}(z,n,0,h,T,d.hide,O,A),!1!==d.search&&function(t,e,n,s){const o=t.appendChild(m(e.ownerDocument,"Search"));w(o,t=>{n.term=t,s()})}(z,n,M,D),_.length&&function(t,e,n,s,o,r){const l=t.ownerDocument;for(const i of e)t.appendChild(N(l,i,n[i],s,o,r,n[i].label||i))}(z,_,F.cols,s.data,M,D),d.detail&&A.push(function(n,s,o,r,l,i){const u=n.ownerDocument,d=o.length,p={};r.expanded=new Set;const f=(t,e)=>{const n={};for(const s in t)n[s]=t[s]?.[e-1]??null;return n},h=e=>{if(e in p)return p[e];const n=f(s._display||{},e);let o=null;if(Array.isArray(l)){const t={};for(const e of l)t[e]=[n[e]??null];o={data:t}}else{const r="function"==typeof l?l:t[l];"function"==typeof r&&(o=r(f(s.data||{},e),e,n))}return p[e]=o},m=t=>{r.expanded.has(t)?r.expanded.delete(t):r.expanded.add(t),i()};return(t,n)=>[...t.rows].forEach((t,s)=>{const o=n[s];if("number"!=typeof o)return;const l=a(t)[0],i=r.expanded.has(o);if(!l)return;const p=c(u,"button",{type:"button",className:"lti-expand",textContent:i?"▾":"▸","aria-expanded":String(i),"aria-label":"Toggle detail"});p.onclick=()=>m(o),l.prepend(p);const f=i&&h(o);if(f){const n=c(u,"tr",{className:"lti-detail"});t.after(n);const s=c(u,"td",{colSpan:d},n);e.render(c(u,"div",{},s),f)}})}(n,s,h,M,d.detail,()=>D(!1))),d.pager){const t=Array.isArray(d.pager)?d.pager:[10,25,50,100];$=function(t,e,n,s,o){const r=t.ownerDocument;let l=t.tFoot;l||((l=t.createTFoot()).className="lt-footer");const i=c(r,"div",{className:"lti-pager"},g(l,"lti-pager-row",e.length,-1)),a=c(r,"span",{className:"lti-pos"});s.pageSize=n[0];const u=[()=>0,t=>t-1,t=>t+1,()=>1e9],d=["«","‹","›","»"].map((t,e)=>{const n=c(r,"button",{type:"button",textContent:t,"aria-label":["First","Previous","Next","Last"][e]},i);return n.onclick=()=>{s.page=u[e](s.page),o()},n});if(i.appendChild(a),n.length>1){const t=c(r,"select",{"aria-label":"Rows per page"},i);n.forEach(e=>c(r,"option",{value:e,textContent:e||"∞"},t)),t.onchange=()=>{s.pageSize=+t.value,s.page=0,o()}}return t=>{const e=s.pageSize||t||1,n=Math.max(0,Math.ceil(t/e)-1);a.textContent=t?`${s.page*e+1}–${Math.min(t,(s.page+1)*e)} / ${t}`:"0 / 0",d.forEach((t,e)=>t.disabled=e<2?!s.page:s.page===n)}}(n,h,t,M,()=>D(!1)),D()}else(M.sort.length||d.detail)&&D()}function m(t,e){return c(t,"input",{type:"search",className:"lti-search","aria-label":e})}function g(t,e,n,s){const o=t.insertRow(s);return o.className=e,c(t.ownerDocument,"td",{colSpan:n},o)}function w(t,e){let n;const s=()=>e(t.value);t.oninput=()=>{clearTimeout(n),n=setTimeout(s,150)},t.onchange=()=>{clearTimeout(n),s()}}const y=t=>""===t?"":`x == ${JSON.stringify(String(t))}`,b=t=>{const e=/^\s*x\s*==\s*(['"])([\s\S]*)\1\s*$/.exec(t||"");return e?e[2]:null},x=(t,e,n,s)=>t<=n&&e>=s?"":`x >= ${t} && x <= ${e}`,v=t=>{const e=/^\s*x\s*>=\s*(-?[\d.]+)\s*&&\s*x\s*<=\s*(-?[\d.]+)\s*$/.exec(t||"");return e?[parseFloat(e[1]),parseFloat(e[2])]:null};function S(t,e,n){const s=e.min,o=e.max,r=o-s||1,l=e.step||r/100,i=c(t,"div",{className:"lti-slider"}),a=c(t,"div",{className:"lti-slider-fill"},i),d=e=>c(t,"button",{type:"button",className:"lti-thumb",role:"slider","aria-label":e,"aria-valuemin":s,"aria-valuemax":o},i),p=[d("Minimum"),d("Maximum")];let f=[s,o];const h=t=>(t-s)/r*100,m=()=>{p.forEach((t,e)=>{t.style.left=h(f[e])+"%",t.setAttribute("aria-valuenow",f[e])}),a.style.left=h(f[0])+"%",a.style.right=100-h(f[1])+"%"},g=(t,e)=>{f[t]=(t=>{const e=Math.round((t-s)/l)*l+s;return Math.min(o,Math.max(s,Math.round(1e6*e)/1e6))})(e),f[0]>f[1]&&(f=[Math.min(...f),Math.max(...f)]),m(),n(f.slice())};return p.forEach((t,e)=>{t.onpointerdown=n=>{t.focus(),u(n,t=>g(e,(t=>{const e=i.getBoundingClientRect();return s+r*Math.min(1,Math.max(0,(t-e.left)/e.width))})(t.clientX)))},t.onkeydown=t=>{const n={ArrowLeft:-1,ArrowDown:-1,ArrowRight:1,ArrowUp:1}[t.key];if(n)g(e,f[e]+n*l);else if("Home"===t.key)g(e,s);else{if("End"!==t.key)return;g(e,o)}t.preventDefault()}}),m(),{el:i,set:t=>{f=t.slice(),m()}}}function E(t,e,n){const s=c(t,"span",{className:"lti-pop"}),o=c(t,"button",{type:"button",className:"lti-funnel",title:e,"aria-label":e,"aria-expanded":"false"},s),r=c(t,"div",{className:"lti-pop-panel",hidden:!0},s);n(r);const l=e=>{r.hidden=!e,o.setAttribute("aria-expanded",String(e)),e&&(()=>{r.style.left=r.style.right="";const e=r.getBoundingClientRect(),n=(t.defaultView||window).innerWidth;e.right>n-4&&(r.style.left="auto",r.style.right="0")})()};return o.onclick=t=>{t.stopPropagation(),l(r.hidden)},i(t,"click",t=>{s.contains(t.target)||l(!1)}),i(t,"keydown",t=>{"Escape"===t.key&&l(!1)}),s}const C={select:{describe:(t,e)=>{const n=b(t);if(null==n)return t?"⋯":"";const s=e.choices.find(t=>t.value===n);return s?s.label:n},init:t=>y(t.selected??(t.choices[0]||{}).value??""),build:(t,e,n)=>{const s=function(t,e,n){const s=c(t,"select",{className:"lti-filter-pick"});return e.forEach(e=>c(t,"option",{value:e.value,textContent:e.label},s)),s.onchange=()=>n(s.value),{el:s,set:t=>s.value=t}}(t,e.choices,t=>n(y(t),o)),o={el:s.el,reflect:t=>{const e=b(t);s.set(null==e?"":e)}};return o}},range:{describe:t=>{const e=v(t);return e?`${e[0]} – ${e[1]}`:t?"⋯":""},init:t=>t.value?x(t.value[0],t.value[1],t.min,t.max):"",build:(t,e,n)=>{const s=c(t,"span",{className:"lti-slider-out"}),o=t=>s.textContent=`${t[0]} – ${t[1]}`,r=S(t,e,t=>{o(t),n(x(t[0],t[1],e.min,e.max),l)}),l={el:[r.el,s],reflect:t=>{const n=v(t)||[e.min,e.max];r.set(n),o(n)}};return l}}};function N(t,e,n,s,o,r,l){const i=function(t,e){if("select"===t.type){let n=t.choices;if(!n){const t=new Set,s=[];for(const n of e)null==n||t.has(n)||(t.add(n),s.push(n));s.sort((t,e)=>"number"==typeof t&&"number"==typeof e?t-e:String(t).localeCompare(String(e))),n=s.map(t=>({value:String(t),label:String(t)}))}return{...t,choices:n}}let{min:n,max:s}=t;if(null==n||null==s){let t=1/0,o=-1/0;for(const n of e){const e=Number(n);isFinite(e)&&(e<t&&(t=e),e>o&&(o=e))}null==n&&(n=isFinite(t)?t:0),null==s&&(s=isFinite(o)?o:1)}return{...t,min:n,max:s}}(n,s[e]||[]),a=C[i.type],u=[];let d=()=>{};const p=(t,n)=>{t?o.filters[e]=t:delete o.filters[e],r();const s=o.filters[e]||"";u.forEach(t=>t!==n&&t.reflect(s)),d(s)},f=E(t,`Filter ${i.label||e}`,n=>{const s=c(t,"input",{type:"search",className:"lti-search","aria-label":`${i.label||e} filter expression`},n),o={reflect:e=>{t.activeElement!==s&&(s.value=e)}};u.push(o),w(s,t=>p(t.trim(),o));const r=a.build(t,i,p);u.push(r),n.append(...[].concat(r.el)),p(a.init(i),null)});let h,m=f;return null!=l&&(m=c(t,"span",{className:"lti-chip"}),c(t,"span",{className:"lti-chip-name",textContent:l},m),h=c(t,"span",{className:"lti-chip-cur"},m),m.appendChild(f)),d=t=>{m.classList.toggle("lti-on",!!t),h&&(h.textContent=a.describe(t,i))},d(o.filters[e]||""),m}const k=(t,e)=>{e?.interactive&&!t.dataset.ltiOn&&(t.dataset.ltiOn="1",h(t,e))};e.plugins.interactive={matcher:d,computeView:p,pageSlice:f,enhance:h},e.onMount.push(k),"undefined"!=typeof document&&l(document,".lt-table").forEach(t=>k(t,t._ltSpec))})("undefined"!=typeof window?window:globalThis);
1
+ (t=>{"use strict";const e=t.LT;if(!e?.onMount||e.plugins.interactive)return;let n;const o=t=>"number"==typeof t.find(t=>null!=t),s=t=>"string"!=typeof t?{...t}:"-"===t[0]?{col:t.slice(1),dir:"desc"}:{col:t,dir:"asc"},l=(t,e,o)=>(n||=new Intl.Collator,o?t-e:n.compare(String(t),String(e))),r=(t,e)=>t.querySelector(e),i=(t,e)=>t.querySelectorAll(e),a=(t,e,n,o)=>t.addEventListener(e,n,o),c=t=>[...t.children].filter(t=>!t.classList.contains("lt-row-group"));function u(t,e,n={},o){const s=t.createElement(e);for(const t in n)t.includes("-")?s.setAttribute(t,n[t]):s[t]=n[t];return o?o.appendChild(s):s}function d(t,e,n){t.preventDefault();const o=t.target.ownerDocument||document,s=t=>e(t);a(o,"pointermove",s),a(o,"pointerup",()=>{var t,e;t="pointermove",e=s,o.removeEventListener(t,e),n&&n()},{once:!0})}function p(t){const e=String(t??"").trim();if(""===e)return null;if(/(^|[^\w$])x([^\w$]|$)/.test(e)){let t;try{t=new Function("x",`return (${e});`)}catch(t){}if(t){const n=/^\s*!|!=/.test(e),o=e=>{if(null==e)return n;try{const n=Number(e);return!!t(String(e))||""!==e&&isFinite(n)&&!!t(n)}catch(t){return!1}};return t=>t[n?"every":"some"](t=>o(t.raw))}}const n="!"===e[0],o=(n?e.slice(1).trim():e).toLowerCase();return""===o?null:t=>n!==t.some(t=>null!=t.disp&&String(t.disp).toLowerCase().includes(o))}function f(t,e,n){const s=t._cols||[],r=t.data||{},i=(r[s[0]]||[]).length,a=(t,n)=>({raw:r[t]?.[n-1]??null,disp:e[t]?.[n-1]??""}),c=[];for(const t in n.filters||{}){const e=p(n.filters[t]);e&&c.push(n=>e([a(t,n)]))}const u=p(n.term);u&&c.push(t=>u(s.map(e=>a(e,t))));const d=Object.values(n.predicates||{});if(d.length){const t=Object.keys(r),e=e=>Object.fromEntries(t.map(t=>[t,r[t]?.[e-1]??null]));c.push(t=>{const n=e(t);return d.every(t=>t(n))})}const f=t=>c.every(e=>e(t)),h=t=>{const e=t.map(t=>{const e=r[t.col];return e&&{col:e,num:o(e),dir:"desc"===t.dir?-1:1}}).filter(Boolean);return e.length?(t,n)=>{for(const{col:o,num:s,dir:r}of e){const e=o[t-1],i=o[n-1],a=null==e,c=null==i;if(a||c){if(a!==c)return a?1:-1;continue}const u=l(e,i,s);if(u)return r*u}return 0}:null},m=t._indent,g=(t,e)=>{if(!m){const n=t.filter(f);return e?n.sort(e):n}const n=[],o=[];for(const e of t){const t={r:e,kids:[]},s=m[e-1]||0;for(;o.length&&o[o.length-1].lv>=s;)o.pop();(o.length?o[o.length-1].node.kids:n).push(t),o.push({node:t,lv:s})}const s=t=>t.map(t=>{const e=s(t.kids);return f(t.r)||e.length?{r:t.r,kids:e}:null}).filter(Boolean),l=t=>(e&&t.sort((t,n)=>e(t.r,n.r)),t.forEach(t=>l(t.kids)),t),r=[],i=t=>t.forEach(t=>{r.push(t.r),i(t.kids)});return i(l(s(n))),r},w=()=>Array.from({length:i},(t,e)=>e+1),y=t._rowspan;if(y){const t={},e=[];for(const o of n.sort||[])y.includes(o.col)?t[o.col]=o.dir:e.push(o);const s=h(e),i=(e,n)=>{if(n===y.length)return g(e,s);const a=r[y[n]],c=new Map;for(const t of e){const e=a[t-1],n=null==e?"\0":String(e);(c.get(n)||c.set(n,{v:e,rows:[]}).get(n)).rows.push(t)}let u=[...c.values()];if(t[y[n]]){const e=o(a),s="desc"===t[y[n]]?-1:1;u.sort((t,n)=>{const o=null==t.v,r=null==n.v;return o||r?o===r?0:o?1:-1:s*l(t.v,n.v,e)})}return u.flatMap(t=>i(t.rows,n+1))};return i(w(),0)}const b=h(n.sort||[]),v=t._groups;if(!v)return g(w(),b);const x=new Set,S=[];for(const t of v)t.rows.forEach(t=>x.add(t)),S.push(...g(t.rows,b));const C=[];for(let t=1;t<=i;t++)x.has(t)||C.push(t);return[...S,...g(C,b)]}function h(t,e){const n=e.pageSize;if(!n)return e.page=0,t;const o=Math.max(0,Math.ceil(t.length/n)-1);return e.page=Math.min(Math.max(e.page||0,0),o),t.slice(e.page*n,(e.page+1)*n)}function m(n,o){const l=o.interactive,p=o._cols||[],m=((o.data||{})[p[0]]||[]).length,v=o._groups,x={},S=v?[]:null;if(v){const t=new Set;v.forEach(e=>e.rows.forEach(n=>{x[n]=e,S.push(n),t.add(n)}));for(let e=1;e<=m;e++)t.has(e)||S.push(e)}const C=o._rowspan?o._rowspan.length:0,E=C?[...o._rowspan,...p]:p,N=C+p.length,k=function(t,e,n){const o={};e.forEach(t=>o[t]=[]);let s=0;return i(t,"tbody tr").forEach(t=>{if(t.classList.contains("lt-row-group"))return;const l=n?n[s]:s+1,r=c(t);e.forEach((t,e)=>o[t][l-1]=r[e]?.textContent??""),s++}),o}(n,p,S),L=[...i(n,"thead tr")].pop(),$={filters:{},predicates:{},page:0,pageSize:0,sort:Array.isArray(l.sort)?l.sort.map(s):[]};let D,A=()=>{};const F=[],_=(t=!0)=>{t&&(D=f(o,k,$),$.page=0);const s=h(D,$),l=(t=>{if(!v)return t;const e=[];let n;for(const o of t){const t=x[o];t!==n&&(t&&e.push({label:t.label,raw:t.raw}),n=t),e.push(o)}return e})(s),i=u(n.ownerDocument,"template",{innerHTML:e.buildHtml({...o,_viewRows:l})}),a=r(i.content,"tbody");s.length?F.forEach(t=>t(a,l)):a.innerHTML=`<tr class="lti-empty"><td colspan="${N}">—</td></tr>`,r(n,"tbody").replaceWith(a),A(D.length)};n._lt={spec:o,state:$,refresh:()=>_(),view:()=>D||f(o,k,$),filter(t,e){e?$.predicates[t]=e:delete $.predicates[t],_()}};const z=l.filter,R=z?.cols?Object.keys(z.cols).filter(t=>!0!==z.cols[t]&&!p.includes(t)):[],j=!1!==l.search||l.hide||R.length||l.download?u(n.ownerDocument,"div",{className:"lti-bar"},w(n.tHead||n.createTHead(),"lti-head",N,0)):null,O=c(L).map(t=>t.textContent);!1!==l.sort&&function(t,e,n,o){const s=t.ownerDocument,l={},r=()=>{for(const t in l)l[t].th.removeAttribute("aria-sort"),l[t].ind.textContent="";const t=n.sort||[];t.forEach(({col:e,dir:n},o)=>{const s=l[e];s&&(s.th.setAttribute("aria-sort","desc"===n?"descending":"ascending"),s.ind.textContent=("desc"===n?"▼":"▲")+(t.length>1?String(o+1).replace(/\d/g,t=>"₀₁₂₃₄₅₆₇₈₉"[t]):""))})};i(t,"th").forEach((t,i)=>{const a=e[i];if(null==a)return;t.classList.add("lti-sortable");const c=u(s,"span",{className:"lti-label"},t);for(;t.firstChild!==c;)c.append(t.firstChild);l[a]={th:t,ind:u(s,"span",{className:"lti-sort"},c)},c.onclick=t=>{!function(t,e,n){const o=(t.sort||[]).slice(),s=o.findIndex(t=>t.col===e),l=s<0?"asc":"asc"===o[s].dir?"desc":null;if(!n)return void(t.sort=l?[{col:e,dir:l}]:[]);s<0?o.push({col:e,dir:l}):l?o[s]={col:e,dir:l}:o.splice(s,1);t.sort=o}(n,a,t.shiftKey),r(),o()}}),r()}(L,E,$,_),z&&(z.default||z.cols&&Object.keys(z.cols).some(t=>p.includes(t)))&&function(t,e,n,o,s,l){const r=t.ownerDocument,i=u(r,"tr",{className:"lti-filters"}),a=n.default,c=n.cols||{};e.forEach(t=>{const e=u(r,"td",{},i),n=t in c?c[t]:a;if(n)if(!0===n){y(e.appendChild(g(r,`Filter ${t}`)),e=>{e?s.filters[t]=e:delete s.filters[t],l()})}else e.appendChild(M(r,t,n,o,s,l,null))}),t.parentNode.appendChild(i)}(L,p,z,o.data,$,_);const T=l.resize?function(t,e,n,o=0){const s=[...i(e,"th")],l=function(t,e,n=0){let o=r(t,"colgroup");if(!o){const s=t.ownerDocument;o=u(s,"colgroup");for(let t=0;t<n+e;t++)u(s,"col",{},o);t.caption?t.caption.after(o):t.prepend(o)}return[...o.children]}(t,n,o),a=t=>t.getBoundingClientRect().width,c=()=>{if(t.classList.contains("lti-fixed"))return;const e=s.map(a);t.style.width=a(t)+"px",l.forEach((t,n)=>t.style.width=e[n]+"px"),t.classList.add("lti-fixed")},d=e=>{const n=l.map(t=>t.style.width),o=t.style.width;l.forEach(t=>t.style.width=""),t.style.width="",t.classList.remove("lti-fixed");const r=a(s[e]);return l.forEach((t,e)=>t.style.width=n[e]),t.style.width=o,t.classList.add("lti-fixed"),r},p=(e,n,o=24)=>{const s=parseFloat(l[e].style.width);l[e].style.width=Math.max(n,o)+"px",t.style.width=parseFloat(t.style.width)+parseFloat(l[e].style.width)-s+"px"};return{ths:s,cs:l,dataCs:l.slice(o),freeze:c,natural:d,setWidth:p}}(n,L,p.length,C):null;l.resize&&function(t,e){const n=t.ownerDocument,{ths:o,cs:s,freeze:l,natural:r,setWidth:i}=e;o.forEach((e,o)=>{const a=u(n,"div",{className:"lti-resizer"},e);a.ondblclick=t=>{t.stopPropagation(),l(),i(o,r(o))},a.onpointerdown=e=>{e.stopPropagation(),l();const n=e.clientX,r=parseFloat(s[o].style.width);t.classList.add("lti-resizing"),d(e,t=>i(o,r+t.clientX-n),()=>t.classList.remove("lti-resizing"))}})}(n,T);const B=l.hide||l.download?u(n.ownerDocument,"div",{className:"lti-icons"},j):null;if(l.hide&&function(t,e,n,o,s,l,r,i){const d=e.ownerDocument,p=l&&l.hidden||[],f=new Set,h=(t,e,n)=>{const o=c(t)[e];o&&1===o.colSpan&&(o.hidden=n)};i.push(t=>f.forEach(e=>{for(const n of t.rows)h(n,e,!0)}));const m=t=>{const n=f.has(t);r?.dataCs[t]&&(r.dataCs[t].hidden=n);for(const o of e.rows)o.classList.contains("lt-spanner-row")||h(o,t,n)},g=u(d,"span",{className:"lti-cols"},t),w=u(d,"button",{type:"button",title:"Columns","aria-label":"Show or hide columns","aria-expanded":"false"},g),y=u(d,"div",{className:"lti-menu",hidden:!0},g);o.forEach((t,e)=>{if(null==t)return;const n=u(d,"label",{},y),o=u(d,"input",{type:"checkbox",checked:!0},n);n.append(s[e]??t),p.includes(t)&&(o.checked=!1,f.add(e)),o.onchange=()=>{o.checked?f.delete(e):f.add(e),m(e)}}),o.forEach((t,e)=>m(e));const b=t=>{y.hidden=!t,w.setAttribute("aria-expanded",String(t))};w.onclick=t=>{t.stopPropagation(),b(y.hidden)},a(d,"click",t=>{g.contains(t.target)||b(!1)}),a(d,"keydown",t=>{"Escape"===t.key&&b(!1)})}(B,n,0,p,O,l.hide,T,F),l.download&&function(t,e,n,o,s,l){const r=e.ownerDocument,i=("string"==typeof l&&l?l:"table").replace(/(\.csv)?$/i,".csv"),a=o.map((t,e)=>e).filter(t=>null!=o[t]);u(r,"button",{type:"button",className:"lti-download",title:"Download CSV","aria-label":"Download table as CSV"},t).onclick=()=>{const t=n._display||{},l=[a.map(t=>b(s[t]??o[t])).join(",")];for(const n of e._lt.view())l.push(a.map(e=>b((t[o[e]]||[])[n-1])).join(","));const c=URL.createObjectURL(new Blob([l.join("\n")],{type:"text/csv"}));u(r,"a",{href:c,download:i}).click(),URL.revokeObjectURL(c)}}(B,n,o,p,O,l.download),R.length&&function(t,e,n,o,s,l){const r=t.ownerDocument;for(const i of e)t.appendChild(M(r,i,n[i],o,s,l,n[i].label||i))}(u(n.ownerDocument,"div",{className:"lti-chips"},j),R,z.cols,o.data,$,_),!1!==l.search&&function(t,e,n,o){const s=t.appendChild(g(e.ownerDocument,"Search"));y(s,t=>{n.term=t,o()})}(j,n,$,_),l.detail&&F.push(function(n,o,s,l,r,i){const a=n.ownerDocument,d={};l.expanded=new Set;const p=(t,e)=>{const n={};for(const o in t)n[o]=t[o]?.[e-1]??null;return n},f=e=>{if(e in d)return d[e];const n=p(o._display||{},e);let s=null;if(Array.isArray(r)){const t={};for(const e of r)t[e]=[n[e]??null];s={data:t}}else{const l="function"==typeof r?r:t[r];"function"==typeof l&&(s=l(p(o.data||{},e),e,n))}return d[e]=s},h=t=>{l.expanded.has(t)?l.expanded.delete(t):l.expanded.add(t),i()};return(t,n)=>[...t.rows].forEach((t,o)=>{const r=n[o];if("number"!=typeof r)return;const i=c(t)[0],d=l.expanded.has(r);if(!i)return;const p=u(a,"button",{type:"button",className:"lti-expand",textContent:d?"▾":"▸","aria-expanded":String(d),"aria-label":"Toggle detail"});p.onclick=()=>h(r),i.prepend(p);const m=d&&f(r);if(m){const n=u(a,"tr",{className:"lti-detail"});t.after(n);const o=u(a,"td",{colSpan:s},n);e.render(u(a,"div",{},o),m)}})}(n,o,N,$,l.detail,()=>_(!1))),l.pager){const t=Array.isArray(l.pager)?l.pager:[10,25,50,100];A=function(t,e,n,o,s,l){const r=t.ownerDocument;let i=t.tFoot;i||((i=t.createTFoot()).className="lt-footer");const a=u(r,"div",{className:"lti-pager"},w(i,"lti-pager-row",e,-1)),c=u(r,"span",{className:"lti-pos"});s.pageSize=n[0];const d=[()=>0,t=>t-1,t=>t+1,()=>1e9],p=["«","‹","›","»"].map((t,e)=>{const n=u(r,"button",{type:"button",textContent:t,"aria-label":["First","Previous","Next","Last"][e]},a);return n.onclick=()=>{s.page=d[e](s.page),l()},n});if(a.appendChild(c),n.length>1&&o>Math.min(...n.filter(t=>t>0))){const t=u(r,"select",{"aria-label":"Rows per page"},a);n.forEach(e=>u(r,"option",{value:e,textContent:e||"∞"},t)),t.onchange=()=>{s.pageSize=+t.value,s.page=0,l()}}return t=>{const e=s.pageSize||t||1,n=Math.max(0,Math.ceil(t/e)-1),l=t<o?` (${o})`:"";c.textContent=(t?`${s.page*e+1}–${Math.min(t,(s.page+1)*e)} / ${t}`:"0 / 0")+l,p.forEach((t,e)=>t.disabled=e<2?!s.page:s.page===n)}}(n,N,t,m,$,()=>_(!1)),_()}else($.sort.length||l.detail)&&_()}function g(t,e){return u(t,"input",{type:"search",className:"lti-search","aria-label":e})}function w(t,e,n,o){const s=t.insertRow(o);return s.className=e,u(t.ownerDocument,"td",{colSpan:n},s)}function y(t,e){let n;const o=()=>e(t.value);t.oninput=()=>{clearTimeout(n),n=setTimeout(o,150)},t.onchange=()=>{clearTimeout(n),o()}}function b(t){const e=null==t?"":String(t);return/[",\n]/.test(e)?'"'+e.replace(/"/g,'""')+'"':e}const v=t=>""===t?"":`x == ${JSON.stringify(String(t))}`,x=t=>{const e=/^\s*x\s*==\s*(['"])([\s\S]*)\1\s*$/.exec(t||"");return e?e[2]:null},S=(t,e,n,o)=>t<=n&&e>=o?"":`x >= ${t} && x <= ${e}`,C=t=>{const e=/^\s*x\s*>=\s*(-?[\d.]+)\s*&&\s*x\s*<=\s*(-?[\d.]+)\s*$/.exec(t||"");return e?[parseFloat(e[1]),parseFloat(e[2])]:null};function E(t,e,n){const o=e.min,s=e.max,l=s-o||1,r=e.step||l/100,i=u(t,"div",{className:"lti-slider"}),a=u(t,"div",{className:"lti-slider-fill"},i),c=e=>u(t,"button",{type:"button",className:"lti-thumb",role:"slider","aria-label":e,"aria-valuemin":o,"aria-valuemax":s},i),p=[c("Minimum"),c("Maximum")];let f=[o,s];const h=t=>(t-o)/l*100,m=()=>{p.forEach((t,e)=>{t.style.left=h(f[e])+"%",t.setAttribute("aria-valuenow",f[e])}),a.style.left=h(f[0])+"%",a.style.right=100-h(f[1])+"%"},g=(t,e)=>{f[t]=(t=>{const e=Math.round((t-o)/r)*r+o;return Math.min(s,Math.max(o,Math.round(1e6*e)/1e6))})(e),f[0]>f[1]&&(f=[Math.min(...f),Math.max(...f)]),m(),n(f.slice())};return p.forEach((t,e)=>{t.onpointerdown=n=>{t.focus(),d(n,t=>g(e,(t=>{const e=i.getBoundingClientRect();return o+l*Math.min(1,Math.max(0,(t-e.left)/e.width))})(t.clientX)))},t.onkeydown=t=>{const n={ArrowLeft:-1,ArrowDown:-1,ArrowRight:1,ArrowUp:1}[t.key];if(n)g(e,f[e]+n*r);else if("Home"===t.key)g(e,o);else{if("End"!==t.key)return;g(e,s)}t.preventDefault()}}),m(),{el:i,set:t=>{f=t.slice(),m()}}}function N(t,e,n,o){const s=u(t,"span",{className:"lti-pop"}),l=u(t,"button",{type:"button",className:"lti-funnel",title:e,"aria-label":e,"aria-expanded":"false"},s),r=u(t,"div",{className:"lti-pop-panel",hidden:!0},s);n(r);const i=e=>{const n=!r.hidden;r.hidden=!e,l.setAttribute("aria-expanded",String(e)),e?(()=>{r.style.left=r.style.right="";const e=(t.defaultView||window).innerWidth,n=s.closest(".lt-wrap"),o=Math.min(e,n?n.getBoundingClientRect().right:e);r.getBoundingClientRect().right>o-4&&(r.style.left="auto",r.style.right="0")})():n&&o&&o()};return l.onclick=t=>{t.stopPropagation(),i(r.hidden)},a(t,"click",t=>{s.contains(t.target)||i(!1)}),a(t,"keydown",t=>{"Escape"===t.key&&i(!1)}),s}const k={select:{describe:(t,e)=>{const n=x(t);if(null==n)return t?"⋯":"";const o=e.choices.find(t=>t.value===n);return o?o.label:n},init:t=>v(t.selected??""),build:(t,e,n)=>{const o=function(t,e,n){const o=u(t,"select",{className:"lti-filter-pick"});return e.forEach(e=>u(t,"option",{value:e.value,textContent:e.label},o)),o.onchange=()=>n(o.value),{el:o,set:t=>o.value=t}}(t,e.choices,t=>n(v(t),s)),s={el:o.el,reflect:t=>{const e=x(t);o.set(null==e?"":e)}};return s}},range:{describe:t=>{const e=C(t);return e?`${e[0]} – ${e[1]}`:t?"⋯":""},init:t=>t.value?S(t.value[0],t.value[1],t.min,t.max):"",build:(t,e,n)=>{const o=u(t,"span",{className:"lti-slider-out"}),s=t=>o.textContent=`${t[0]} – ${t[1]}`,l=E(t,e,t=>{s(t),n(S(t[0],t[1],e.min,e.max),r)}),r={el:[l.el,o],reflect:t=>{const n=C(t)||[e.min,e.max];l.set(n),s(n)}};return r}}};function M(t,e,n,o,s,l,r){const i=function(t,e){if("select"===t.type){let n=t.choices;if(!n){const t=new Set,o=[];for(const n of e)null==n||t.has(n)||(t.add(n),o.push(n));o.sort((t,e)=>"number"==typeof t&&"number"==typeof e?t-e:String(t).localeCompare(String(e))),n=o.map(t=>({value:String(t),label:String(t)}))}return n.some(t=>""===t.value)||(n=[{value:"",label:""},...n]),{...t,choices:n}}let{min:n,max:o}=t;if(null==n||null==o){let t=1/0,s=-1/0;for(const n of e){const e=Number(n);isFinite(e)&&(e<t&&(t=e),e>s&&(s=e))}null==n&&(n=isFinite(t)?t:0),null==o&&(o=isFinite(s)?s:1)}return{...t,min:n,max:o}}(n,o[e]||[]),a=k[i.type],c=[];let d=()=>{};const p=(t,n)=>{t?s.filters[e]=t:delete s.filters[e],l();const o=s.filters[e]||"";c.forEach(t=>t!==n&&t.reflect(o)),d(o)},f=N(t,`Filter ${i.label||e}`,n=>{const o=u(t,"input",{type:"search",className:"lti-search","aria-label":`${i.label||e} filter expression`},n),s={reflect:e=>{t.activeElement!==o&&(o.value=e)}};c.push(s),y(o,t=>p(t.trim(),s));const l=a.build(t,i,p);c.push(l),n.append(...[].concat(l.el)),p(a.init(i),null)},()=>g());let h,m=f;null!=r&&(m=u(t,"span",{className:"lti-chip"}),u(t,"span",{className:"lti-chip-name",textContent:r},m),h=u(t,"span",{className:"lti-chip-cur"},m),m.appendChild(f)),d=t=>m.classList.toggle("lti-on",!!t);const g=()=>h&&(h.textContent=a.describe(s.filters[e]||"",i));return d(s.filters[e]||""),g(),m}const L=(t,e)=>{e?.interactive&&!t.dataset.ltiOn&&(t.dataset.ltiOn="1",m(t,e))};e.plugins.interactive={matcher:p,computeView:f,pageSlice:h,enhance:m},e.onMount.push(L),"undefined"!=typeof document&&i(document,".lt-table").forEach(t=>L(t,t._ltSpec))})("undefined"!=typeof window?window:globalThis);
2
2
  //# sourceMappingURL=lt-interactive.min.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["root","LT","onMount","plugins","interactive","coll","numCol","col","find","v","parseKey","k","slice","dir","$","el","sel","querySelector","$$","querySelectorAll","on","t","type","fn","opts","addEventListener","dataCells","tr","children","filter","c","classList","contains","elem","doc","tag","props","parent","e","createElement","includes","setAttribute","appendChild","drag","onMove","onEnd","preventDefault","target","ownerDocument","document","move","ev","removeEventListener","once","matcher","term","String","trim","test","Function","neg","raw","num","Number","isFinite","cells","needle","toLowerCase","some","disp","computeView","spec","state","cols","_cols","data","nRow","length","cell","r","tests","filters","pred","push","sPred","map","fns","Object","values","predicates","all","keys","row","fromEntries","o","every","f","keep","makeCmp","sortKeys","Boolean","a","b","x","y","xn","yn","Intl","Collator","compare","indent","_indent","reduce","rows","cmp","out","sort","roots","stack","node","kids","lv","pop","prune","ns","n","sortNodes","forEach","flat","walk","Array","from","_","i","gcols","_rowspan","leaf","leafCmp","partition","depth","blocks","Map","key","get","set","order","d","an","bn","flatMap","groups","_groups","grouped","Set","g","add","rest","has","pageSlice","view","pageSize","page","last","Math","max","ceil","min","enhance","groupOf","seen","nGroup","allCols","ci","textContent","captureDisplay","hrow","isArray","sync","postSwap","refresh","stale","vr","prev","label","withGroups","tmp","innerHTML","buildHtml","_viewRows","body","content","replaceWith","_lt","id","flt","barCols","headBar","search","hide","className","fullRow","tHead","createTHead","labels","th","marks","paint","removeAttribute","ind","m","replace","lab","firstChild","append","onclick","additive","findIndex","splice","cycle","shiftKey","addSort","default","def","explicit","onType","searchInput","typedFilter","parentNode","addFilter","layout","resize","nCol","ths","cs","caption","after","prepend","colGroup","wOf","getBoundingClientRect","width","freeze","w","style","natural","tw","remove","j","setWidth","old","parseFloat","dataCs","fixedLayout","grip","ondblclick","stopPropagation","onpointerdown","x0","clientX","w0","addResize","opt","start","hidden","setCell","colSpan","apply","wrap","btn","title","menu","box","checked","onchange","delete","open","addColumnToggle","input","addSearch","cfg","addControlFilters","detail","detailOpt","rerender","cache","expanded","pick","src","build","_display","toggle","td0","child","render","addDetail","pager","sizes","repage","foot","tFoot","createTFoot","bar","pos","steps","p","btns","glyph","value","total","disabled","addPaginate","sect","cls","insertRow","timer","go","oninput","clearTimeout","setTimeout","selExpr","JSON","stringify","selParse","s","exec","rngExpr","lo","hi","rngParse","makeSlider","onInput","span","step","track","fill","mk","role","thumbs","val","pct","left","right","setOne","round","snap","focus","at","onkeydown","ArrowLeft","ArrowDown","ArrowRight","ArrowUp","popover","panel","vw","defaultView","window","innerWidth","place","KINDS","select","describe","choices","init","selected","setTerm","options","makeSelect","ed","reflect","range","show","chipLabel","column","vals","localeCompare","Infinity","resolveSpec","kind","editors","mark","expr","cur","boxEd","activeElement","wEd","concat","summary","dataset","ltiOn","_ltSpec","globalThis"],"sources":["lt-interactive.js"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["root","LT","onMount","plugins","interactive","coll","numCol","col","find","v","parseKey","k","slice","dir","cmpVals","x","y","num","Intl","Collator","compare","String","$","el","sel","querySelector","$$","querySelectorAll","on","t","type","fn","opts","addEventListener","dataCells","tr","children","filter","c","classList","contains","elem","doc","tag","props","parent","e","createElement","includes","setAttribute","appendChild","drag","onMove","onEnd","preventDefault","target","ownerDocument","document","move","ev","removeEventListener","once","matcher","term","trim","test","Function","neg","raw","Number","isFinite","cells","needle","toLowerCase","some","disp","computeView","spec","state","cols","_cols","data","nRow","length","cell","r","tests","filters","pred","push","sPred","map","fns","Object","values","predicates","all","keys","row","fromEntries","o","every","f","keep","makeCmp","sortKeys","Boolean","a","b","xn","yn","indent","_indent","reduce","rows","cmp","out","sort","roots","stack","node","kids","lv","pop","prune","ns","n","sortNodes","forEach","flat","walk","Array","from","_","i","gcols","_rowspan","leaf","leafCmp","partition","depth","blocks","Map","key","get","set","order","d","an","bn","flatMap","groups","_groups","grouped","Set","g","add","rest","has","pageSlice","view","pageSize","page","last","Math","max","ceil","min","enhance","groupOf","seen","nGroup","allCols","nAll","ci","textContent","captureDisplay","hrow","isArray","sync","postSwap","refresh","stale","vr","prev","label","withGroups","tmp","innerHTML","buildHtml","_viewRows","body","content","replaceWith","_lt","id","flt","barCols","headBar","search","hide","download","className","fullRow","tHead","createTHead","labels","th","marks","paint","removeAttribute","ind","m","replace","lab","firstChild","append","onclick","additive","findIndex","splice","cycle","shiftKey","addSort","default","def","explicit","onType","searchInput","typedFilter","parentNode","addFilter","layout","resize","nCol","ths","cs","caption","after","prepend","colGroup","wOf","getBoundingClientRect","width","freeze","w","style","natural","tw","remove","j","setWidth","old","parseFloat","dataCs","fixedLayout","grip","ondblclick","stopPropagation","onpointerdown","x0","clientX","w0","addResize","icons","opt","start","hidden","setCell","colSpan","apply","wrap","btn","title","menu","box","checked","onchange","delete","open","addColumnToggle","name","file","_display","lines","csvField","join","url","URL","createObjectURL","Blob","href","click","revokeObjectURL","addDownload","cfg","addControlFilters","input","addSearch","detail","detailOpt","rerender","cache","expanded","pick","src","build","toggle","td0","child","render","addDetail","pager","sizes","repage","foot","tFoot","createTFoot","bar","pos","steps","p","btns","glyph","value","total","disabled","addPaginate","sect","cls","insertRow","timer","go","oninput","clearTimeout","setTimeout","s","selExpr","JSON","stringify","selParse","exec","rngExpr","lo","hi","rngParse","makeSlider","onInput","span","step","track","fill","mk","role","thumbs","val","pct","left","right","setOne","round","snap","focus","at","onkeydown","ArrowLeft","ArrowDown","ArrowRight","ArrowUp","popover","onClose","panel","was","vw","defaultView","window","innerWidth","closest","limit","place","KINDS","select","describe","choices","init","selected","setTerm","options","makeSelect","ed","reflect","range","show","chipLabel","column","vals","localeCompare","Infinity","resolveSpec","kind","editors","mark","expr","cur","boxEd","activeElement","wEd","concat","showSummary","summary","dataset","ltiOn","_ltSpec","globalThis"],"sources":["lt-interactive.js"],"mappings":"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","ignoreList":[]}
package/js/lt-plot.js CHANGED
@@ -8,8 +8,7 @@
8
8
  */
9
9
  (root => {
10
10
  "use strict";
11
- const LT = root.LT || (root.LT = {});
12
- const cells = LT.cells || (LT.cells = {});
11
+ const LT = root.LT || (root.LT = {}), cells = LT.cells || (LT.cells = {});
13
12
  if (cells.errorbar) return; // duplicate inclusion is a no-op
14
13
 
15
14
  // Horizontal padding (px) left/right inside an error-bar SVG, so points,
@@ -175,9 +174,9 @@
175
174
  // entries become null (a gap in the line, a skipped bar). `u` carries the core
176
175
  // helpers (esc/isNum/str).
177
176
  function spSeries(sp, data, r, u) {
178
- const cell = data[sp.cols[0]]?.[r - 1];
179
- const raw = sp.cols.length === 1 && Array.isArray(cell)
180
- ? cell : sp.cols.map(c => data[c]?.[r - 1]);
177
+ const cell = data[sp.cols[0]]?.[r - 1],
178
+ raw = sp.cols.length === 1 && Array.isArray(cell)
179
+ ? cell : sp.cols.map(c => data[c]?.[r - 1]);
181
180
  return raw.map(v => u.isNum(v) ? +v : null);
182
181
  }
183
182
 
@@ -188,8 +187,8 @@
188
187
  function svgSparkline(sp, data, r, u) {
189
188
  const vals = spSeries(sp, data, r, u), fin = vals.filter(v => v != null);
190
189
  if (!fin.length) return "";
191
- const W = sp.width, H = sp.height, n = vals.length;
192
- const lo = sp.min != null ? sp.min : Math.min(...fin),
190
+ const W = sp.width, H = sp.height, n = vals.length,
191
+ lo = sp.min != null ? sp.min : Math.min(...fin),
193
192
  hi = sp.max != null ? sp.max : Math.max(...fin);
194
193
  const xAt = i => round1(n > 1 ? SP_PAD + i / (n - 1) * (W - 2 * SP_PAD) : W / 2),
195
194
  yAt = v => round1(hi > lo
@@ -1 +1 @@
1
- {"version":3,"names":["root","LT","cells","errorbar","niceTicks","lo","hi","n","niceNum","x","round","e","Math","floor","log10","f","d","dec","max","ticks","v","ceil","push","toFixed","nAxisTicks","eb","inner","width","per","String","min","length","ebX","span","p","stackY","i","H","svgErrorbar","data","r","u","num","k","isNum","height","cols","cap","s","ref","titles","forEach","c","est","los","his","y","yOf","col","colors","st","esc","fl","xl","xh","ci","str","labels","join","svgGrid","t","svgAxis","W","lbl","axisLabel","xt","resolve","op","columns","lowers","uppers","axis","axis_label","cellClass","cell","foot","legend","round1","q","svgSparkline","sp","vals","Array","isArray","map","spSeries","fin","filter","yAt","style","color","body","kind","slot","bw","base","yv","abs","pen","xAt","svgDotplot","dp","stagger","cfg","sparkline","dotplot","doc","document","tbl","querySelectorAll","_ltSpec","ops","some","o","type","refresh","window"],"sources":["lt-plot.js"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["root","LT","cells","errorbar","niceTicks","lo","hi","n","niceNum","x","round","e","Math","floor","log10","f","d","dec","max","ticks","v","ceil","push","toFixed","nAxisTicks","eb","inner","width","per","String","min","length","ebX","span","p","stackY","i","H","svgErrorbar","data","r","u","num","k","isNum","height","cols","cap","s","ref","titles","forEach","c","est","los","his","y","yOf","col","colors","st","esc","fl","xl","xh","ci","str","labels","join","svgGrid","t","svgAxis","W","lbl","axisLabel","xt","resolve","op","columns","lowers","uppers","axis","axis_label","cellClass","cell","foot","legend","round1","q","svgSparkline","sp","vals","Array","isArray","map","spSeries","fin","filter","yAt","style","color","body","kind","slot","bw","base","yv","abs","pen","xAt","svgDotplot","dp","stagger","cfg","sparkline","dotplot","doc","document","tbl","querySelectorAll","_ltSpec","ops","some","o","type","refresh","window"],"sources":["lt-plot.js"],"mappings":"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","ignoreList":[]}
package/js/lt.js CHANGED
@@ -64,9 +64,9 @@
64
64
  s.match(/^(-?)(\d+)(?:\.(\d+))?e([+-]?\d+)$/i);
65
65
  const exp = +expStr, digits = int + frac, point = int.length + exp;
66
66
  let out;
67
- if (point <= 0) out = "0." + "0".repeat(-point) + digits;
67
+ if (point <= 0) out = `0.${"0".repeat(-point)}${digits}`;
68
68
  else if (point >= digits.length) out = digits + "0".repeat(point - digits.length);
69
- else out = digits.slice(0, point) + "." + digits.slice(point);
69
+ else out = `${digits.slice(0, point)}.${digits.slice(point)}`;
70
70
  return sign + out;
71
71
  }
72
72
 
@@ -82,7 +82,7 @@
82
82
  parts[0] = parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, bigMark);
83
83
  s = parts.join(".");
84
84
  }
85
- if (s[0] === "-") s = "−" + s.slice(1);
85
+ if (s[0] === "-") s = `−${s.slice(1)}`;
86
86
  return decimals != null || bigMark || sigDigits != null ? s : null;
87
87
  }
88
88
 
@@ -103,8 +103,7 @@
103
103
  return result;
104
104
  }
105
105
  function subRefs(s, vals) {
106
- for (let i = 0; i < vals.length; i++)
107
- s = s.split("{" + (i + 1) + "}").join(vals[i]);
106
+ vals.forEach((v, i) => s = s.split(`{${i + 1}}`).join(v));
108
107
  return s;
109
108
  }
110
109
 
@@ -210,7 +209,7 @@
210
209
  eachCell(cols, (c, i, raw) => {
211
210
  if (op.small != null && isNum(raw) && raw !== 0 &&
212
211
  Math.abs(raw) < op.small) {
213
- display[c][i] = op.small_text ?? ("<" + op.small);
212
+ display[c][i] = op.small_text ?? `<${op.small}`;
214
213
  } else if (op.zero != null && raw === 0) {
215
214
  display[c][i] = op.zero;
216
215
  } else if (op.missing != null && raw == null) {
@@ -295,8 +294,8 @@
295
294
  onOp("align", op => { for (const c of (op.columns || [])) setByCol(align, c, op.align); });
296
295
 
297
296
  // Column labels
298
- const autoLbl = s => spec.auto_label === false ? s : s.replace(/[._]/g, " ");
299
- const colLabels = visible.map(autoLbl);
297
+ const autoLbl = s => spec.auto_label === false ? s : s.replace(/[._]/g, " "),
298
+ colLabels = visible.map(autoLbl);
300
299
  onOp("label", op => {
301
300
  for (const [c, lbl] of Object.entries(op.labels || {})) setByCol(colLabels, c, lbl);
302
301
  });
@@ -493,8 +492,8 @@
493
492
  // R side); spec.html_cols is true (all columns) or a name array.
494
493
  isRaw = c => rawCol(spec.html_cols, c),
495
494
  out = [`<table class="lt-table"${tableWidth ? ` style="width:${tableWidth}"` : ""}>`];
496
- const mark = (type, val) => { const i = fIdx(type, val); return i ? sup(i) : ""; };
497
- const cell = (c, r) => display[c]?.[r - 1] ?? "";
495
+ const mark = (type, val) => { const i = fIdx(type, val); return i ? sup(i) : ""; },
496
+ cell = (c, r) => display[c]?.[r - 1] ?? "";
498
497
  // ` name="val"` for a truthy val, else "" — for optional HTML attributes.
499
498
  const attr = (n, v) => v ? ` ${n}="${v}"` : "";
500
499
  // Plain class names per column (alignment + leading-indent), "" if none.
@@ -529,9 +528,8 @@
529
528
  // align with the body columns (which are offset by nGrp on the left).
530
529
  if (colWidths && colWidths.some(w => w)) {
531
530
  out.push(`<colgroup>`);
532
- for (let i = 0; i < nGrp; i++) out.push(`<col>`);
533
- for (let i = 0; i < cols.length; i++)
534
- out.push(`<col${attr("style", colWidths[i] ? "width:" + colWidths[i] : "")}>`);
531
+ if (nGrp) out.push("<col>".repeat(nGrp));
532
+ colWidths.forEach(w => out.push(`<col${attr("style", w ? `width:${w}` : "")}>`));
535
533
  out.push(`</colgroup>`);
536
534
  }
537
535
 
@@ -563,8 +561,8 @@
563
561
  out.push(`<tr>`);
564
562
  for (const rs of rowSpans)
565
563
  out.push(`<th scope="col" class="lt-row-group">${txt(rs.label)}</th>`);
566
- for (let i = 0; i < cols.length; i++)
567
- out.push(`<th scope="col"${attr("class", colCls[i])}>${txt(colLabels[i])}${mark("column_labels", cols[i])}</th>`);
564
+ cols.forEach((c, i) =>
565
+ out.push(`<th scope="col"${attr("class", colCls[i])}>${txt(colLabels[i])}${mark("column_labels", c)}</th>`));
568
566
  out.push(`</tr></thead>`);
569
567
 
570
568
  // Body footnote markers
@@ -693,13 +691,13 @@
693
691
  if (hasFoot) {
694
692
  out.push(`<tr class="lt-plot-foot">`);
695
693
  out.push(`<td></td>`.repeat(nGrp));
696
- for (let i = 0; i < cols.length; i++) {
697
- const cm = cellMap[cols[i]];
694
+ cols.forEach((c, i) => {
695
+ const cm = cellMap[c];
698
696
  // reuse the renderer's cell class so the footer lines up with the plot
699
- const extra = footCells[i] && cm ? (cm.rnd.cellClass?.(cm.cfg) || "") : "";
700
- const ac = [colCls[i], extra].filter(Boolean).join(" ");
697
+ const extra = footCells[i] && cm ? (cm.rnd.cellClass?.(cm.cfg) || "") : "",
698
+ ac = [colCls[i], extra].filter(Boolean).join(" ");
701
699
  out.push(`<td${attr("class", ac)}>${footCells[i]}</td>`);
702
- }
700
+ });
703
701
  out.push(`</tr>`);
704
702
  }
705
703
  reg.order.forEach((t, i) => out.push(footRow("lt-footnote", `${sup(i + 1)} ${txt(t)}`)));
package/js/lt.min.js CHANGED
@@ -1,2 +1,2 @@
1
- (t=>{"use strict";if(t.LT?.buildHtml)return;const o=(t,o)=>t.querySelector(o),n=t.LT?.cells||{},e=t=>String(t).replace(/&/g,"&amp;").replace(/[<]/g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;"),l=t=>Array.isArray(t)?String(t[0]??""):e(t),s=(t,o)=>t?String(o??""):e(o),r=(t,o)=>!0===t||Array.isArray(t)&&t.includes(o),c=t=>`<sup class="lt-fnref">${t}</sup>`,i=t=>t===1/0?"∞":t===-1/0?"-∞":String(t??""),a=t=>"number"==typeof t&&isFinite(t),f=t=>a(t)||Math.abs(t)===1/0,u=t=>t?.length&&"number"==typeof t.find(t=>null!=t),p=t=>(t.columns||Object.keys(t.data||{})).filter(o=>o in(t.data||{})),h=(t,o)=>{let n=o;for(const e of t)"label"===e.type&&null!=e.labels?.[o]&&(n=e.labels[o]);return n};function d(t,o,n,e){if(t===1/0)return"∞";if(t===-1/0)return"−∞";if(!a(t))return null;let l=null!=e?function(t){if(!/e/i.test(t))return t;const[,o,n,e="",l]=t.match(/^(-?)(\d+)(?:\.(\d+))?e([+-]?\d+)$/i),s=+l,r=n+e,c=n.length+s;let i;return i=c<=0?"0."+"0".repeat(-c)+r:c>=r.length?r+"0".repeat(c-r.length):r.slice(0,c)+"."+r.slice(c),o+i}(t.toPrecision(e)):null!=o?t.toFixed(o):String(t);if(/^-0(\.0+)?$/.test(l)&&(l=l.slice(1)),n){const t=l.split(".");t[0]=t[0].replace(/\B(?=(\d{3})+(?!\d))/g,n),l=t.join(".")}return"-"===l[0]&&(l="−"+l.slice(1)),null!=o||n||null!=e?l:null}function g(t,o){if(!o)return t.filter(t=>""!==t).join(" ");let n=o,e="";for(;n;){const o=n.match(/<<(.*?)>>/);if(!o){e+=m(n,t);break}o.index>0&&(e+=m(n.slice(0,o.index),t));const l=o[1],s=[...l.matchAll(/\{(\d+)\}/g)].map(t=>+t[1]);s.length&&!s.every(o=>""!==t[o-1])||(e+=m(l,t)),n=n.slice(o.index+o[0].length)}return e}function m(t,o){for(let n=0;n<o.length;n++)t=t.split("{"+(n+1)+"}").join(o[n]);return t}function b(t){const o=t.data||{},n=t.ops||[],e=p(t),l=e.length?o[e[0]].length:0,s={};for(const t of e)s[t]=o[t].map(i);!function(t,o,n){if(!1===t.auto_format)return;const e=t.data||{},l=t.ops||[],s=p(t),r=new Set;for(const t of l)if("fmt_number"===t.type)for(const o of t.columns||s)r.add(o);for(const t of s){if(r.has(t))continue;const s=e[t];if(!u(s))continue;const c=h(l,t),i=/%|[ _](pct|percent)$/i.test(c);if(/year/i.test(c)&&s.every(t=>null==t||/^\d{4}$/.test(String(t))))continue;let p=0,g=0;for(const t of s){if(!a(t))continue;const o=Math.abs(i?100*t:t),n=o<1?0:Math.floor(Math.log10(o))+1;n>p&&(p=n);const e=String(t).match(/\.(\d+)/);if(!e)continue;const l=e[1].replace(/0+$/,"").length-(i?2:0);l>g&&(g=l)}g=Math.min(g,Math.max(4-p,0));for(let e=0;e<n;e++){const n=s[e];if(!f(n))continue;const l=d(i?100*n:n,g," ");null!=l&&(o[t][e]=l+(i?"%":""))}}}(t,s,l);const r=(t,n)=>{for(const e of t)if(o[e])for(let t=0;t<l;t++)n(e,t,o[e][t])};for(const t of n){const o=t.columns||e;switch(t.type){case"fmt_number":r(o,(o,n,e)=>{if(!f(e))return;const l=!0===t.percent?100*e:e,r=t.percent?"%":"",c=d(l,t.decimals,t.big_mark??"",t.sig_digits),i=t.prefix||"",a=(t.suffix||"")+r;null!=c?s[o][n]=i+c+a:(i||a)&&(s[o][n]=i+String(l)+a)});break;case"fmt_date":r(o,(o,n,e)=>{if(null==e)return;const l=e instanceof Date?e:new Date(e);isNaN(l)||(s[o][n]=t.method?l[t.method]():t.options?l.toLocaleDateString(t.locale,t.options):l.toLocaleDateString(t.locale))});break;case"sub":r(o,(o,n,e)=>{null!=t.small&&a(e)&&0!==e&&Math.abs(e)<t.small?s[o][n]=t.small_text??"<"+t.small:null!=t.zero&&0===e?s[o][n]=t.zero:null!=t.missing&&null==e&&(s[o][n]=t.missing)});break;case"merge":{const o=t.columns;if(!o||o.length<2)break;const n=o[0];for(let e=0;e<l;e++){const l=o.map(t=>s[t]?.[e]??"");s[n][e]=g(l,t.pattern)}break}}}const c=void 0===t.missing?"—":t.missing;if(c)for(const t of e)for(let n=0;n<l;n++)null==o[t][n]&&""===s[t][n]&&(s[t][n]=c);return{display:s,nRow:l}}function w(t){!function(t){if(!1===t.sort||!t.row_group)return;const o=t.data||{},n=[].concat(t.row_group),e=p(t),l=e.length?o[e[0]].length:0;if(!l)return;const s=Array.from({length:l},(t,o)=>o);s.sort((t,e)=>{for(const l of n){const n=o[l]?.[t],s=o[l]?.[e];if(n!=s){if(null==n)return 1;if(null==s)return-1;if(n<s)return-1;if(n>s)return 1}}return 0});for(const t of e)o[t]=s.map(n=>o[t][n]);const r=new Array(l);for(let t=0;t<l;t++)r[s[t]]=t+1;for(const o of t.ops||[])o.rows&&(o.rows=o.rows.map(t=>r[t-1]))}(t);const o=t.data||{},{display:f,nRow:d}=b(t),{visible:g,align:m,colLabels:w,colWidths:$,tableWidth:y,indent:_,groups:x,rowSpans:S,styles:v,spanners:j,cellMap:L,footnotes:M,notes:A,header:k}=function(t){const o=t.data||{},e=t.ops||[],l=p(t),s=l.length?o[l[0]].length:0,c=(t,o)=>{for(const n of e)n.type===t&&o(n)};let a="string"==typeof t.row_group;const f=Array.isArray(t.row_group)?t.row_group:t.row_group?[t.row_group]:[];a||1!==f.length||!1===t.auto_sep||u(o[f[0]])||!o[f[0]]?.some(t=>(t+"").length>20)||(a=!0);const d=new Set;for(const t of f)d.add(t);c("merge",t=>{!1!==t.hide&&t.columns&&t.columns.slice(1).forEach(t=>d.add(t))}),c("hide",t=>(t.columns||[]).forEach(t=>d.add(t)));let g=l.filter(t=>!d.has(t));c("move",t=>{const o=(t.columns||[]).filter(t=>g.includes(t));if(!o.length)return;const n=g.filter(t=>!o.includes(t));if(null==t.after)g=[...o,...n];else{const e=n.indexOf(t.after);e>=0&&(g=[...n.slice(0,e+1),...o,...n.slice(e+1)])}});const m=(t,o,n)=>{const e=g.indexOf(o);e>=0&&(t[e]=n)},b=g.map(t=>u(o[t])?"right":"left");c("align",t=>{for(const o of t.columns||[])m(b,o,t.align)});const w=o=>!1===t.auto_label?o:o.replace(/[._]/g," "),$=g.map(w);let y,_;c("label",t=>{for(const[o,n]of Object.entries(t.labels||{}))m($,o,n)}),c("width",t=>{if(t.table&&(_=t.table),t.widths){y||(y=g.map(()=>""));for(const[o,n]of Object.entries(t.widths))m(y,o,n)}});const x=new Array(s).fill(0);c("indent",t=>{if(t.rows)for(const o of t.rows)x[o-1]=t.level??1});const S=t=>{const o=[];for(let n=0;n<s;){const e=i(t[n]),l=[n+1];for(;++n<s&&i(t[n])===e;)l.push(n+1);o.push({label:e,rows:l})}return o};let v=[];if(a&&f.length&&o[f[0]]){const n=r(t.html_cols,f[0]);v.push(...S(o[f[0]]).map(t=>({...t,raw:n})))}c("row_group",t=>v.push({label:t.label,rows:t.rows})),c("group_order",t=>{if(!v.length)return;const o=[],n=[];for(const n of t.order||[]){const t=v.find(t=>t.label===n);t&&o.push(t)}for(const t of v)o.includes(t)||n.push(t);v=[...o,...n]});const j=[];if(!a&&f.length)for(const t of f){const n=new Array(s).fill(0);for(const e of S(o[t]||[]))n[e.rows[0]-1]=e.rows.length;j.push({col:t,label:h(e,t),spans:n})}const L=e.filter(t=>"style"===t.type);let M=(t.spanners||[]).map(t=>{const o=t.columns.slice().sort((t,o)=>g.indexOf(t)-g.indexOf(o));return{...t,columns:o}});if(t.auto_span){const o="string"==typeof t.auto_span?new RegExp(t.auto_span):/[._]/;M=[...M];for(let t=0;t<g.length;){const n=g[t].match(o);if(!n){t++;continue}const e=g[t].slice(0,n.index);let l=t+1;for(;l<g.length;){const t=g[l].match(o);if(!t||g[l].slice(0,t.index)!==e)break;l++}if(l-t>=2){M.push({label:e,columns:g.slice(t,l)});for(let n=t;n<l;n++){const t=g[n].match(o);t&&($[n]=w(g[n].slice(t.index+t[0].length)))}}t=l}}const A={};for(const t of e){const o=n[t.type];if(!o)continue;const e=o.resolve(t)||{};for(const t of Object.keys(e))A[t]={rnd:o,cfg:e[t]}}return{visible:g,align:b,colLabels:$,colWidths:y,tableWidth:_,indent:x,groups:v,rowSpans:j,styles:L,spanners:M,cellMap:A,footnotes:t.footnotes||[],notes:t.notes||[],header:t.header||{},nRow:s}}(t),E={esc:e,isNum:a,str:i},O=function(t){const o=[],n={};return t.forEach(t=>{null==n[t.text]&&(n[t.text]=o.length+1,o.push(t.text))}),{order:o,idx:n}}(M),T=((t,o)=>(n,e)=>{for(const l of t){const t=l.location;if(t.type!==n)continue;const s=o[l.text];if("title"===n&&t.group===e)return s;if("column_labels"===n&&t.columns.includes(e))return s;if("column_spanners"===n&&t.spanners.includes(e))return s;if("row_groups"===n){if("all"===t.match)return s;if("exact"===t.match&&t.values.includes(e))return s;if("starts_with"===t.match&&e.startsWith(t.value))return s}}return 0})(M,O.idx),R=S.length,D=g.length+R,H=o=>r(t.html_cols,o),W=[`<table class="lt-table"${y?` style="width:${y}"`:""}>`],q=(t,o)=>{const n=T(t,o);return n?c(n):""},B=(t,o)=>f[t]?.[o-1]??"",N=(t,o)=>o?` ${t}="${o}"`:"",z=g.map((t,o)=>((0===o&&x.length?"lt-indent ":"")+({right:"al-r",center:"al-c"}[m[o]]||"")).trimEnd()),C=(t,o,n)=>{for(let e=1;e<=d;e++)if(!t||t.includes(e))for(const t of o||g){const o=g.indexOf(t);o>=0&&n(`${e},${o}`,t,e)}},F={},K={},P=(t,o,n,e)=>{t[o]=t[o]?t[o]+e+n:n};for(const t of v)C(t.rows,t.columns?[].concat(t.columns):null,(n,e,l)=>{t.test&&!t.test(o[e][l-1])||(t.css&&P(F,n,t.css,";"),t.class&&P(K,n,t.class," "))});if($&&$.some(t=>t)){W.push("<colgroup>");for(let t=0;t<R;t++)W.push("<col>");for(let t=0;t<g.length;t++)W.push(`<col${N("style",$[t]?"width:"+$[t]:"")}>`);W.push("</colgroup>")}const G=[["title","lt-title"],["subtitle","lt-subtitle"]].filter(([t])=>null!=k[t]&&""!==k[t]).map(([t,o])=>`<div class="${o}">${l(k[t])}${q("title",t)}</div>`);if(G.length&&W.push('<caption class="lt-caption">',...G,"</caption>"),W.push("<thead>"),j.length){const t='<th class="lt-spanner-empty"></th>';W.push('<tr class="lt-spanner-row">'),W.push(t.repeat(R));for(let o=0;o<g.length;){const n=j.find(t=>t.columns[0]===g[o]);n?(W.push(`<th colspan="${n.columns.length}" scope="colgroup" class="lt-spanner">${l(n.label)}${q("column_spanners",n.label)}</th>`),o+=n.columns.length):(W.push(t),o++)}W.push("</tr>")}W.push("<tr>");for(const t of S)W.push(`<th scope="col" class="lt-row-group">${l(t.label)}</th>`);for(let t=0;t<g.length;t++)W.push(`<th scope="col"${N("class",z[t])}>${l(w[t])}${q("column_labels",g[t])}</th>`);W.push("</tr></thead>");const I={};for(const t of M){if("body"!==t.location.type)continue;const o=O.idx[t.text];C(t.location.rows,t.location.columns||[],t=>{I[t]=o})}const J=(t,n)=>{W.push("<tr>");for(let e=0;e<S.length;e++){const l=S[e];let r=n?n[e]:null;if(!n){const o=l.spans[t-1],n=(l.spans[t-2]||0)-1;r=o>0?{label:!0,open:o>1}:n>0?{fill:n}:null}r&&(r.label?W.push(`<th scope="row" class="lt-row-group${r.open?" lt-row-open":""}">${s(H(l.col),B(l.col,t))}${q("row_groups",i(o[l.col][t-1]))}</th>`):W.push(`<th class="lt-row-group"${N("rowspan",r.fill>1?r.fill:0)}></th>`))}const l=_[t-1]||0;for(let n=0;n<g.length;n++){const r=`${t},${n}`,a=g[n],u=I[r],p=K[r],h=[z[n],p].filter(Boolean).join(" ");let d=F[r]||"";0===n&&l&&(d=(d?d+";":"")+`padding-left:${l+1}em`);const m=L[a];if(m){const n=[h,m.rnd.cellClass?.(m.cfg)||""].filter(Boolean).join(" ");W.push(`<td${N("class",n)}${N("style",d)}>${m.rnd.cell(m.cfg,o,t,E)}${u?c(u):""}</td>`);continue}const b=i(o[a][t-1]),w=f[a][t-1],$=b!==w?` title="${e(b)}"`:"";W.push(`<td${N("class",h)}${N("style",d)}${$}>${s(H(a),w)}${u?c(u):""}</td>`)}W.push("</tr>")},Q=(t,o)=>`<tr class="lt-row-group"><th colspan="${D}" scope="colgroup">${s(o,t)}${q("row_groups",t)}</th></tr>`;if(W.push("<tbody>"),t._viewRows){const n=S.length?(t=>{const n=t.map(()=>[]);for(let e=0;e<S.length;e++){const l=t=>S.slice(0,e+1).map(n=>i(o[n.col][t-1])).join("\0");for(let o=0;o<t.length;){let s=o+1;const r=l(t[o]);for(;s<t.length&&l(t[s])===r;)s++;const c=s-o;n[o][e]={label:!0,open:c>1},c>1&&(n[o+1][e]={fill:c-1}),o=s}}return n})(t._viewRows.filter(t=>"number"==typeof t)):null;let e=0;for(const o of t._viewRows)o&&"object"==typeof o?W.push(Q(o.label,o.raw)):J(o,n?n[e++]:null)}else if(x.length){const t={};for(const o of x){W.push(Q(o.label,o.raw));for(const n of o.rows)t[n]=1,J(n)}for(let o=1;o<=d;o++)t[o]||J(o)}else for(let t=1;t<=d;t++)J(t);W.push("</tbody>");const U=g.map(t=>L[t]&&L[t].rnd.foot?.(L[t].cfg,E)||""),V=U.some(t=>t);if(O.order.length||A.length||V){const t=(t,o)=>`<tr class="${t}"><td colspan="${D}">${o}</td></tr>`;if(W.push('<tfoot class="lt-footer">'),V){W.push('<tr class="lt-plot-foot">'),W.push("<td></td>".repeat(R));for(let t=0;t<g.length;t++){const o=L[g[t]],n=U[t]&&o&&o.rnd.cellClass?.(o.cfg)||"",e=[z[t],n].filter(Boolean).join(" ");W.push(`<td${N("class",e)}>${U[t]}</td>`)}W.push("</tr>")}O.order.forEach((o,n)=>W.push(t("lt-footnote",`${c(n+1)} ${l(o)}`)));for(const o of A)W.push(t("lt-source-note",l(o)));W.push("</tfoot>")}return W.push("</table>"),t._cols=g,t._display=f,t._groups=x.length?x:null,t._indent=_.some(t=>t)?_:null,t._rowspan=S.length?S.map(t=>t.col):null,`<div class="lt-wrap">${W.join("")}</div>`}const $=t.LT?.plugins||{},y=t.LT?.onMount||[],_=(t,o)=>(t._ltSpec=o,(t=>{const o=(t,o)=>{t.altKey&&o.classList.toggle("lt-raw")};t.onclick=n=>{1===n.detail&&o(n,t)},t.ondblclick=n=>{o(n,t.ownerDocument.documentElement)}})(t),y.forEach(n=>n(t,o)),t),x=(t,n)=>{t.insertAdjacentHTML("afterend",w(n)),_(o(t.nextElementSibling,"table"),n)},S={push:t=>x(t.s,t.d)};(t.LT?.q||[]).forEach(S.push),t.LT={build:t=>x(document.currentScript,t),render:(t,n)=>(t.innerHTML=w(n),_(o(t,"table"),n)),refresh:t=>{const n=t?._ltSpec,e=t?.closest(".lt-wrap");if(!n||!e)return;e.insertAdjacentHTML("afterend",w(n));const l=e.nextElementSibling;return e.remove(),_(o(l,"table"),n)},buildHtml:w,plugins:$,onMount:y,cells:n,q:S}})(window);
1
+ (t=>{"use strict";if(t.LT?.buildHtml)return;const o=(t,o)=>t.querySelector(o),n=t.LT?.cells||{},e=t=>String(t).replace(/&/g,"&amp;").replace(/[<]/g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;"),s=t=>Array.isArray(t)?String(t[0]??""):e(t),l=(t,o)=>t?String(o??""):e(o),r=(t,o)=>!0===t||Array.isArray(t)&&t.includes(o),c=t=>`<sup class="lt-fnref">${t}</sup>`,i=t=>t===1/0?"∞":t===-1/0?"-∞":String(t??""),a=t=>"number"==typeof t&&isFinite(t),f=t=>a(t)||Math.abs(t)===1/0,u=t=>t?.length&&"number"==typeof t.find(t=>null!=t),p=t=>(t.columns||Object.keys(t.data||{})).filter(o=>o in(t.data||{})),h=(t,o)=>{let n=o;for(const e of t)"label"===e.type&&null!=e.labels?.[o]&&(n=e.labels[o]);return n};function d(t,o,n,e){if(t===1/0)return"∞";if(t===-1/0)return"−∞";if(!a(t))return null;let s=null!=e?function(t){if(!/e/i.test(t))return t;const[,o,n,e="",s]=t.match(/^(-?)(\d+)(?:\.(\d+))?e([+-]?\d+)$/i),l=+s,r=n+e,c=n.length+l;let i;return i=c<=0?`0.${"0".repeat(-c)}${r}`:c>=r.length?r+"0".repeat(c-r.length):`${r.slice(0,c)}.${r.slice(c)}`,o+i}(t.toPrecision(e)):null!=o?t.toFixed(o):String(t);if(/^-0(\.0+)?$/.test(s)&&(s=s.slice(1)),n){const t=s.split(".");t[0]=t[0].replace(/\B(?=(\d{3})+(?!\d))/g,n),s=t.join(".")}return"-"===s[0]&&(s=`−${s.slice(1)}`),null!=o||n||null!=e?s:null}function g(t,o){if(!o)return t.filter(t=>""!==t).join(" ");let n=o,e="";for(;n;){const o=n.match(/<<(.*?)>>/);if(!o){e+=m(n,t);break}o.index>0&&(e+=m(n.slice(0,o.index),t));const s=o[1],l=[...s.matchAll(/\{(\d+)\}/g)].map(t=>+t[1]);l.length&&!l.every(o=>""!==t[o-1])||(e+=m(s,t)),n=n.slice(o.index+o[0].length)}return e}function m(t,o){return o.forEach((o,n)=>t=t.split(`{${n+1}}`).join(o)),t}function b(t){const o=t.data||{},n=t.ops||[],e=p(t),s=e.length?o[e[0]].length:0,l={};for(const t of e)l[t]=o[t].map(i);!function(t,o,n){if(!1===t.auto_format)return;const e=t.data||{},s=t.ops||[],l=p(t),r=new Set;for(const t of s)if("fmt_number"===t.type)for(const o of t.columns||l)r.add(o);for(const t of l){if(r.has(t))continue;const l=e[t];if(!u(l))continue;const c=h(s,t),i=/%|[ _](pct|percent)$/i.test(c);if(/year/i.test(c)&&l.every(t=>null==t||/^\d{4}$/.test(String(t))))continue;let p=0,g=0;for(const t of l){if(!a(t))continue;const o=Math.abs(i?100*t:t),n=o<1?0:Math.floor(Math.log10(o))+1;n>p&&(p=n);const e=String(t).match(/\.(\d+)/);if(!e)continue;const s=e[1].replace(/0+$/,"").length-(i?2:0);s>g&&(g=s)}g=Math.min(g,Math.max(4-p,0));for(let e=0;e<n;e++){const n=l[e];if(!f(n))continue;const s=d(i?100*n:n,g," ");null!=s&&(o[t][e]=s+(i?"%":""))}}}(t,l,s);const r=(t,n)=>{for(const e of t)if(o[e])for(let t=0;t<s;t++)n(e,t,o[e][t])};for(const t of n){const o=t.columns||e;switch(t.type){case"fmt_number":r(o,(o,n,e)=>{if(!f(e))return;const s=!0===t.percent?100*e:e,r=t.percent?"%":"",c=d(s,t.decimals,t.big_mark??"",t.sig_digits),i=t.prefix||"",a=(t.suffix||"")+r;null!=c?l[o][n]=i+c+a:(i||a)&&(l[o][n]=i+String(s)+a)});break;case"fmt_date":r(o,(o,n,e)=>{if(null==e)return;const s=e instanceof Date?e:new Date(e);isNaN(s)||(l[o][n]=t.method?s[t.method]():t.options?s.toLocaleDateString(t.locale,t.options):s.toLocaleDateString(t.locale))});break;case"sub":r(o,(o,n,e)=>{null!=t.small&&a(e)&&0!==e&&Math.abs(e)<t.small?l[o][n]=t.small_text??`<${t.small}`:null!=t.zero&&0===e?l[o][n]=t.zero:null!=t.missing&&null==e&&(l[o][n]=t.missing)});break;case"merge":{const o=t.columns;if(!o||o.length<2)break;const n=o[0];for(let e=0;e<s;e++){const s=o.map(t=>l[t]?.[e]??"");l[n][e]=g(s,t.pattern)}break}}}const c=void 0===t.missing?"—":t.missing;if(c)for(const t of e)for(let n=0;n<s;n++)null==o[t][n]&&""===l[t][n]&&(l[t][n]=c);return{display:l,nRow:s}}function w(t){!function(t){if(!1===t.sort||!t.row_group)return;const o=t.data||{},n=[].concat(t.row_group),e=p(t),s=e.length?o[e[0]].length:0;if(!s)return;const l=Array.from({length:s},(t,o)=>o);l.sort((t,e)=>{for(const s of n){const n=o[s]?.[t],l=o[s]?.[e];if(n!=l){if(null==n)return 1;if(null==l)return-1;if(n<l)return-1;if(n>l)return 1}}return 0});for(const t of e)o[t]=l.map(n=>o[t][n]);const r=new Array(s);for(let t=0;t<s;t++)r[l[t]]=t+1;for(const o of t.ops||[])o.rows&&(o.rows=o.rows.map(t=>r[t-1]))}(t);const o=t.data||{},{display:f,nRow:d}=b(t),{visible:g,align:m,colLabels:w,colWidths:$,tableWidth:y,indent:_,groups:x,rowSpans:S,styles:v,spanners:j,cellMap:E,footnotes:L,notes:M,header:A}=function(t){const o=t.data||{},e=t.ops||[],s=p(t),l=s.length?o[s[0]].length:0,c=(t,o)=>{for(const n of e)n.type===t&&o(n)};let a="string"==typeof t.row_group;const f=Array.isArray(t.row_group)?t.row_group:t.row_group?[t.row_group]:[];a||1!==f.length||!1===t.auto_sep||u(o[f[0]])||!o[f[0]]?.some(t=>(t+"").length>20)||(a=!0);const d=new Set;for(const t of f)d.add(t);c("merge",t=>{!1!==t.hide&&t.columns&&t.columns.slice(1).forEach(t=>d.add(t))}),c("hide",t=>(t.columns||[]).forEach(t=>d.add(t)));let g=s.filter(t=>!d.has(t));c("move",t=>{const o=(t.columns||[]).filter(t=>g.includes(t));if(!o.length)return;const n=g.filter(t=>!o.includes(t));if(null==t.after)g=[...o,...n];else{const e=n.indexOf(t.after);e>=0&&(g=[...n.slice(0,e+1),...o,...n.slice(e+1)])}});const m=(t,o,n)=>{const e=g.indexOf(o);e>=0&&(t[e]=n)},b=g.map(t=>u(o[t])?"right":"left");c("align",t=>{for(const o of t.columns||[])m(b,o,t.align)});const w=o=>!1===t.auto_label?o:o.replace(/[._]/g," "),$=g.map(w);let y,_;c("label",t=>{for(const[o,n]of Object.entries(t.labels||{}))m($,o,n)}),c("width",t=>{if(t.table&&(_=t.table),t.widths){y||(y=g.map(()=>""));for(const[o,n]of Object.entries(t.widths))m(y,o,n)}});const x=new Array(l).fill(0);c("indent",t=>{if(t.rows)for(const o of t.rows)x[o-1]=t.level??1});const S=t=>{const o=[];for(let n=0;n<l;){const e=i(t[n]),s=[n+1];for(;++n<l&&i(t[n])===e;)s.push(n+1);o.push({label:e,rows:s})}return o};let v=[];if(a&&f.length&&o[f[0]]){const n=r(t.html_cols,f[0]);v.push(...S(o[f[0]]).map(t=>({...t,raw:n})))}c("row_group",t=>v.push({label:t.label,rows:t.rows})),c("group_order",t=>{if(!v.length)return;const o=[],n=[];for(const n of t.order||[]){const t=v.find(t=>t.label===n);t&&o.push(t)}for(const t of v)o.includes(t)||n.push(t);v=[...o,...n]});const j=[];if(!a&&f.length)for(const t of f){const n=new Array(l).fill(0);for(const e of S(o[t]||[]))n[e.rows[0]-1]=e.rows.length;j.push({col:t,label:h(e,t),spans:n})}const E=e.filter(t=>"style"===t.type);let L=(t.spanners||[]).map(t=>{const o=t.columns.slice().sort((t,o)=>g.indexOf(t)-g.indexOf(o));return{...t,columns:o}});if(t.auto_span){const o="string"==typeof t.auto_span?new RegExp(t.auto_span):/[._]/;L=[...L];for(let t=0;t<g.length;){const n=g[t].match(o);if(!n){t++;continue}const e=g[t].slice(0,n.index);let s=t+1;for(;s<g.length;){const t=g[s].match(o);if(!t||g[s].slice(0,t.index)!==e)break;s++}if(s-t>=2){L.push({label:e,columns:g.slice(t,s)});for(let n=t;n<s;n++){const t=g[n].match(o);t&&($[n]=w(g[n].slice(t.index+t[0].length)))}}t=s}}const M={};for(const t of e){const o=n[t.type];if(!o)continue;const e=o.resolve(t)||{};for(const t of Object.keys(e))M[t]={rnd:o,cfg:e[t]}}return{visible:g,align:b,colLabels:$,colWidths:y,tableWidth:_,indent:x,groups:v,rowSpans:j,styles:E,spanners:L,cellMap:M,footnotes:t.footnotes||[],notes:t.notes||[],header:t.header||{},nRow:l}}(t),k={esc:e,isNum:a,str:i},O=function(t){const o=[],n={};return t.forEach(t=>{null==n[t.text]&&(n[t.text]=o.length+1,o.push(t.text))}),{order:o,idx:n}}(L),T=((t,o)=>(n,e)=>{for(const s of t){const t=s.location;if(t.type!==n)continue;const l=o[s.text];if("title"===n&&t.group===e)return l;if("column_labels"===n&&t.columns.includes(e))return l;if("column_spanners"===n&&t.spanners.includes(e))return l;if("row_groups"===n){if("all"===t.match)return l;if("exact"===t.match&&t.values.includes(e))return l;if("starts_with"===t.match&&e.startsWith(t.value))return l}}return 0})(L,O.idx),R=S.length,D=g.length+R,H=o=>r(t.html_cols,o),W=[`<table class="lt-table"${y?` style="width:${y}"`:""}>`],q=(t,o)=>{const n=T(t,o);return n?c(n):""},B=(t,o)=>f[t]?.[o-1]??"",N=(t,o)=>o?` ${t}="${o}"`:"",z=g.map((t,o)=>((0===o&&x.length?"lt-indent ":"")+({right:"al-r",center:"al-c"}[m[o]]||"")).trimEnd()),C=(t,o,n)=>{for(let e=1;e<=d;e++)if(!t||t.includes(e))for(const t of o||g){const o=g.indexOf(t);o>=0&&n(`${e},${o}`,t,e)}},F={},K={},P=(t,o,n,e)=>{t[o]=t[o]?t[o]+e+n:n};for(const t of v)C(t.rows,t.columns?[].concat(t.columns):null,(n,e,s)=>{t.test&&!t.test(o[e][s-1])||(t.css&&P(F,n,t.css,";"),t.class&&P(K,n,t.class," "))});$&&$.some(t=>t)&&(W.push("<colgroup>"),R&&W.push("<col>".repeat(R)),$.forEach(t=>W.push(`<col${N("style",t?`width:${t}`:"")}>`)),W.push("</colgroup>"));const G=[["title","lt-title"],["subtitle","lt-subtitle"]].filter(([t])=>null!=A[t]&&""!==A[t]).map(([t,o])=>`<div class="${o}">${s(A[t])}${q("title",t)}</div>`);if(G.length&&W.push('<caption class="lt-caption">',...G,"</caption>"),W.push("<thead>"),j.length){const t='<th class="lt-spanner-empty"></th>';W.push('<tr class="lt-spanner-row">'),W.push(t.repeat(R));for(let o=0;o<g.length;){const n=j.find(t=>t.columns[0]===g[o]);n?(W.push(`<th colspan="${n.columns.length}" scope="colgroup" class="lt-spanner">${s(n.label)}${q("column_spanners",n.label)}</th>`),o+=n.columns.length):(W.push(t),o++)}W.push("</tr>")}W.push("<tr>");for(const t of S)W.push(`<th scope="col" class="lt-row-group">${s(t.label)}</th>`);g.forEach((t,o)=>W.push(`<th scope="col"${N("class",z[o])}>${s(w[o])}${q("column_labels",t)}</th>`)),W.push("</tr></thead>");const I={};for(const t of L){if("body"!==t.location.type)continue;const o=O.idx[t.text];C(t.location.rows,t.location.columns||[],t=>{I[t]=o})}const J=(t,n)=>{W.push("<tr>");for(let e=0;e<S.length;e++){const s=S[e];let r=n?n[e]:null;if(!n){const o=s.spans[t-1],n=(s.spans[t-2]||0)-1;r=o>0?{label:!0,open:o>1}:n>0?{fill:n}:null}r&&(r.label?W.push(`<th scope="row" class="lt-row-group${r.open?" lt-row-open":""}">${l(H(s.col),B(s.col,t))}${q("row_groups",i(o[s.col][t-1]))}</th>`):W.push(`<th class="lt-row-group"${N("rowspan",r.fill>1?r.fill:0)}></th>`))}const s=_[t-1]||0;for(let n=0;n<g.length;n++){const r=`${t},${n}`,a=g[n],u=I[r],p=K[r],h=[z[n],p].filter(Boolean).join(" ");let d=F[r]||"";0===n&&s&&(d=(d?d+";":"")+`padding-left:${s+1}em`);const m=E[a];if(m){const n=[h,m.rnd.cellClass?.(m.cfg)||""].filter(Boolean).join(" ");W.push(`<td${N("class",n)}${N("style",d)}>${m.rnd.cell(m.cfg,o,t,k)}${u?c(u):""}</td>`);continue}const b=i(o[a][t-1]),w=f[a][t-1],$=b!==w?` title="${e(b)}"`:"";W.push(`<td${N("class",h)}${N("style",d)}${$}>${l(H(a),w)}${u?c(u):""}</td>`)}W.push("</tr>")},Q=(t,o)=>`<tr class="lt-row-group"><th colspan="${D}" scope="colgroup">${l(o,t)}${q("row_groups",t)}</th></tr>`;if(W.push("<tbody>"),t._viewRows){const n=S.length?(t=>{const n=t.map(()=>[]);for(let e=0;e<S.length;e++){const s=t=>S.slice(0,e+1).map(n=>i(o[n.col][t-1])).join("\0");for(let o=0;o<t.length;){let l=o+1;const r=s(t[o]);for(;l<t.length&&s(t[l])===r;)l++;const c=l-o;n[o][e]={label:!0,open:c>1},c>1&&(n[o+1][e]={fill:c-1}),o=l}}return n})(t._viewRows.filter(t=>"number"==typeof t)):null;let e=0;for(const o of t._viewRows)o&&"object"==typeof o?W.push(Q(o.label,o.raw)):J(o,n?n[e++]:null)}else if(x.length){const t={};for(const o of x){W.push(Q(o.label,o.raw));for(const n of o.rows)t[n]=1,J(n)}for(let o=1;o<=d;o++)t[o]||J(o)}else for(let t=1;t<=d;t++)J(t);W.push("</tbody>");const U=g.map(t=>E[t]&&E[t].rnd.foot?.(E[t].cfg,k)||""),V=U.some(t=>t);if(O.order.length||M.length||V){const t=(t,o)=>`<tr class="${t}"><td colspan="${D}">${o}</td></tr>`;W.push('<tfoot class="lt-footer">'),V&&(W.push('<tr class="lt-plot-foot">'),W.push("<td></td>".repeat(R)),g.forEach((t,o)=>{const n=E[t],e=U[o]&&n&&n.rnd.cellClass?.(n.cfg)||"",s=[z[o],e].filter(Boolean).join(" ");W.push(`<td${N("class",s)}>${U[o]}</td>`)}),W.push("</tr>")),O.order.forEach((o,n)=>W.push(t("lt-footnote",`${c(n+1)} ${s(o)}`)));for(const o of M)W.push(t("lt-source-note",s(o)));W.push("</tfoot>")}return W.push("</table>"),t._cols=g,t._display=f,t._groups=x.length?x:null,t._indent=_.some(t=>t)?_:null,t._rowspan=S.length?S.map(t=>t.col):null,`<div class="lt-wrap">${W.join("")}</div>`}const $=t.LT?.plugins||{},y=t.LT?.onMount||[],_=(t,o)=>(t._ltSpec=o,(t=>{const o=(t,o)=>{t.altKey&&o.classList.toggle("lt-raw")};t.onclick=n=>{1===n.detail&&o(n,t)},t.ondblclick=n=>{o(n,t.ownerDocument.documentElement)}})(t),y.forEach(n=>n(t,o)),t),x=(t,n)=>{t.insertAdjacentHTML("afterend",w(n)),_(o(t.nextElementSibling,"table"),n)},S={push:t=>x(t.s,t.d)};(t.LT?.q||[]).forEach(S.push),t.LT={build:t=>x(document.currentScript,t),render:(t,n)=>(t.innerHTML=w(n),_(o(t,"table"),n)),refresh:t=>{const n=t?._ltSpec,e=t?.closest(".lt-wrap");if(!n||!e)return;e.insertAdjacentHTML("afterend",w(n));const s=e.nextElementSibling;return e.remove(),_(o(s,"table"),n)},buildHtml:w,plugins:$,onMount:y,cells:n,q:S}})(window);
2
2
  //# sourceMappingURL=lt.min.js.map
package/js/lt.min.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["root","LT","buildHtml","$","el","sel","querySelector","cellRenderers","cells","esc","s","String","replace","txt","v","Array","isArray","escIf","raw","rawCol","hc","c","includes","sup","i","str","Infinity","isNum","isFinite","isNumInf","Math","abs","numCol","col","length","find","colOrder","spec","columns","Object","keys","data","filter","colLabel","ops","lbl","op","type","labels","fmtNumber","decimals","bigMark","sigDigits","test","sign","int","frac","expStr","match","exp","digits","point","out","repeat","slice","expandExp","toPrecision","toFixed","parts","split","join","mergeVals","vals","pattern","remaining","result","m","subRefs","index","block","refs","matchAll","map","x","every","applyOps","colNames","nRow","display","auto_format","fmtCols","Set","add","has","pct","maxInt","n","a","intW","floor","log10","d","min","max","autoFmt","eachCell","cols","fn","percent","psfx","f","big_mark","sig_digits","pfx","prefix","sfx","suffix","Date","isNaN","method","options","toLocaleDateString","locale","small","small_text","zero","missing","mCols","target","miss","undefined","sort","row_group","concat","idx","from","_","b","va","vb","newPos","rows","r","sortByGroups","visible","align","colLabels","colWidths","tableWidth","indent","groups","rowSpans","styles","spanners","cellMap","footnotes","fns","notes","header","hdr","onOp","t","rowGroupSep","rowGroupCols","auto_sep","some","hidden","g","hide","forEach","toMove","rest","after","pos","indexOf","setByCol","arr","val","autoLbl","auto_label","entries","table","widths","w","fill","level","runs","label","push","html_cols","ordered","order","gc","spans","sp","auto_span","sep","RegExp","j","m2","k","mk","rnd","cfgs","resolve","cfg","resolveSpec","U","reg","text","indexFootnotes","fIdx","loc","location","hit","group","values","startsWith","value","matcher","nGrp","nCol","isRaw","mark","cell","attr","colCls","right","center","trimEnd","eachLoc","locCols","ci","styleMap","classMap","addTo","key","css","class","caption","cls","emptyTh","rs","bodyMarks","fi","pushRow","spanCells","gi","span","open","ind","cc","Boolean","cm","pcls","cellClass","disp","tip","groupHeader","_viewRows","info","seq","len","viewRowSpans","vi","seen","footCells","foot","hasFoot","h","footRow","html","extra","ac","_cols","_display","_groups","_indent","_rowspan","plugins","onMount","ready","tbl","_ltSpec","e","altKey","classList","toggle","onclick","detail","ondblclick","ownerDocument","documentElement","wireRaw","mount","insertAdjacentHTML","nextElementSibling","q","build","document","currentScript","render","innerHTML","refresh","wrap","closest","next","remove","window"],"sources":["lt.js"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["root","LT","buildHtml","$","el","sel","querySelector","cellRenderers","cells","esc","s","String","replace","txt","v","Array","isArray","escIf","raw","rawCol","hc","c","includes","sup","i","str","Infinity","isNum","isFinite","isNumInf","Math","abs","numCol","col","length","find","colOrder","spec","columns","Object","keys","data","filter","colLabel","ops","lbl","op","type","labels","fmtNumber","decimals","bigMark","sigDigits","test","sign","int","frac","expStr","match","exp","digits","point","out","repeat","slice","expandExp","toPrecision","toFixed","parts","split","join","mergeVals","vals","pattern","remaining","result","m","subRefs","index","block","refs","matchAll","map","x","every","forEach","applyOps","colNames","nRow","display","auto_format","fmtCols","Set","add","has","pct","maxInt","n","a","intW","floor","log10","d","min","max","autoFmt","eachCell","cols","fn","percent","psfx","f","big_mark","sig_digits","pfx","prefix","sfx","suffix","Date","isNaN","method","options","toLocaleDateString","locale","small","small_text","zero","missing","mCols","target","miss","undefined","sort","row_group","concat","idx","from","_","b","va","vb","newPos","rows","r","sortByGroups","visible","align","colLabels","colWidths","tableWidth","indent","groups","rowSpans","styles","spanners","cellMap","footnotes","fns","notes","header","hdr","onOp","t","rowGroupSep","rowGroupCols","auto_sep","some","hidden","g","hide","toMove","rest","after","pos","indexOf","setByCol","arr","val","autoLbl","auto_label","entries","table","widths","w","fill","level","runs","label","push","html_cols","ordered","order","gc","spans","sp","auto_span","sep","RegExp","j","m2","k","mk","rnd","cfgs","resolve","cfg","resolveSpec","U","reg","text","indexFootnotes","fIdx","loc","location","hit","group","values","startsWith","value","matcher","nGrp","nCol","isRaw","mark","cell","attr","colCls","right","center","trimEnd","eachLoc","locCols","ci","styleMap","classMap","addTo","key","css","class","caption","cls","emptyTh","rs","bodyMarks","fi","pushRow","spanCells","gi","span","open","ind","cc","Boolean","cm","pcls","cellClass","disp","tip","groupHeader","_viewRows","info","seq","len","viewRowSpans","vi","seen","footCells","foot","hasFoot","h","footRow","html","extra","ac","_cols","_display","_groups","_indent","_rowspan","plugins","onMount","ready","tbl","_ltSpec","e","altKey","classList","toggle","onclick","detail","ondblclick","ownerDocument","documentElement","wireRaw","mount","insertAdjacentHTML","nextElementSibling","q","build","document","currentScript","render","innerHTML","refresh","wrap","closest","next","remove","window"],"sources":["lt.js"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xiee/utils",
3
- "version": "1.14.92",
3
+ "version": "1.14.94",
4
4
  "description": "Miscellaneous tools and utilities to manipulate HTML pages",
5
5
  "scripts": {
6
6
  "test": "echo \"Error: no test specified\" && exit 1"