@ulu/frontend-vue 0.2.0-beta.8 → 0.3.0

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.
Files changed (174) hide show
  1. package/dist/components/collapsible/UluAccordionGroup.vue.d.ts +2 -2
  2. package/dist/components/collapsible/UluAccordionGroup.vue.d.ts.map +1 -1
  3. package/dist/components/collapsible/UluAccordionGroup.vue.js +22 -19
  4. package/dist/components/collapsible/UluDropdown.vue.d.ts +1 -1
  5. package/dist/components/collapsible/UluDropdown.vue.d.ts.map +1 -1
  6. package/dist/components/collapsible/UluDropdown.vue.js +22 -15
  7. package/dist/components/collapsible/UluModal.vue.d.ts +43 -248
  8. package/dist/components/collapsible/UluModal.vue.d.ts.map +1 -1
  9. package/dist/components/collapsible/UluModal.vue.js +139 -191
  10. package/dist/components/collapsible/UluTabGroup.vue.d.ts +2 -0
  11. package/dist/components/collapsible/UluTabGroup.vue.d.ts.map +1 -1
  12. package/dist/components/collapsible/UluTabGroup.vue.js +23 -14
  13. package/dist/components/elements/UluAlert.vue.d.ts +29 -144
  14. package/dist/components/elements/UluAlert.vue.d.ts.map +1 -1
  15. package/dist/components/elements/UluAlert.vue.js +39 -50
  16. package/dist/components/elements/UluBadge.vue.d.ts +6 -6
  17. package/dist/components/elements/UluBadgeStack.vue.d.ts +1 -1
  18. package/dist/components/elements/UluBadgeStack.vue.d.ts.map +1 -1
  19. package/dist/components/elements/UluBadgeStack.vue.js +12 -9
  20. package/dist/components/elements/UluButton.vue.d.ts +47 -177
  21. package/dist/components/elements/UluButton.vue.d.ts.map +1 -1
  22. package/dist/components/elements/UluButton.vue.js +59 -72
  23. package/dist/components/elements/UluButtonVerbose.vue.d.ts +38 -123
  24. package/dist/components/elements/UluButtonVerbose.vue.d.ts.map +1 -1
  25. package/dist/components/elements/UluButtonVerbose.vue.js +52 -65
  26. package/dist/components/elements/UluCallout.vue.d.ts +20 -25
  27. package/dist/components/elements/UluCallout.vue.d.ts.map +1 -1
  28. package/dist/components/elements/UluCallout.vue.js +11 -16
  29. package/dist/components/elements/UluCaptionedFigure.vue.d.ts +25 -0
  30. package/dist/components/elements/UluCaptionedFigure.vue.d.ts.map +1 -0
  31. package/dist/components/elements/UluCaptionedFigure.vue.js +48 -0
  32. package/dist/components/elements/UluCard.vue.d.ts +2 -2
  33. package/dist/components/elements/UluDefinitionList.vue.d.ts +4 -2
  34. package/dist/components/elements/UluDefinitionList.vue.d.ts.map +1 -1
  35. package/dist/components/elements/UluDefinitionList.vue.js +32 -28
  36. package/dist/components/elements/UluExternalLink.vue.d.ts +2 -2
  37. package/dist/components/elements/UluImage.vue.d.ts +14 -0
  38. package/dist/components/elements/UluImage.vue.d.ts.map +1 -0
  39. package/dist/components/elements/UluImage.vue.js +53 -0
  40. package/dist/components/elements/UluList.vue.d.ts.map +1 -1
  41. package/dist/components/elements/UluList.vue.js +14 -13
  42. package/dist/components/elements/UluOverflowScroller.vue.d.ts +49 -0
  43. package/dist/components/elements/UluOverflowScroller.vue.d.ts.map +1 -0
  44. package/dist/components/elements/UluOverflowScroller.vue.js +138 -0
  45. package/dist/components/elements/UluScrollSlider.vue.d.ts +38 -0
  46. package/dist/components/elements/UluScrollSlider.vue.d.ts.map +1 -0
  47. package/dist/components/elements/UluScrollSlider.vue.js +146 -0
  48. package/dist/components/elements/UluSlider.vue.d.ts +57 -0
  49. package/dist/components/elements/UluSlider.vue.d.ts.map +1 -0
  50. package/dist/components/elements/UluSlider.vue.js +277 -0
  51. package/dist/components/forms/UluFormFile.vue.d.ts +2 -2
  52. package/dist/components/forms/UluFormRadio.vue.d.ts +4 -4
  53. package/dist/components/index.d.ts +6 -0
  54. package/dist/components/layout/UluTitleRail.vue.d.ts +29 -87
  55. package/dist/components/layout/UluTitleRail.vue.d.ts.map +1 -1
  56. package/dist/components/layout/UluTitleRail.vue.js +51 -46
  57. package/dist/components/navigation/UluBreadcrumb.vue.d.ts +27 -68
  58. package/dist/components/navigation/UluBreadcrumb.vue.d.ts.map +1 -1
  59. package/dist/components/navigation/UluBreadcrumb.vue.js +51 -54
  60. package/dist/components/navigation/UluMenu.vue.d.ts +30 -138
  61. package/dist/components/navigation/UluMenu.vue.d.ts.map +1 -1
  62. package/dist/components/navigation/UluMenu.vue.js +85 -84
  63. package/dist/components/navigation/UluMenuStack.vue.d.ts +12 -2
  64. package/dist/components/navigation/UluMenuStack.vue.d.ts.map +1 -1
  65. package/dist/components/navigation/UluMenuStack.vue.js +26 -18
  66. package/dist/components/navigation/UluNavStrip.vue.d.ts +22 -134
  67. package/dist/components/navigation/UluNavStrip.vue.d.ts.map +1 -1
  68. package/dist/components/navigation/UluNavStrip.vue.js +43 -31
  69. package/dist/components/systems/facets/UluFacetsSidebarLayout.vue.js +10 -10
  70. package/dist/components/systems/facets/useFacets.d.ts +3 -0
  71. package/dist/components/systems/facets/useFacets.d.ts.map +1 -1
  72. package/dist/components/systems/facets/useFacets.js +124 -112
  73. package/dist/components/systems/index.d.ts +0 -3
  74. package/dist/components/systems/scroll-anchors/UluScrollAnchors.vue.d.ts +2 -2
  75. package/dist/components/systems/table-sticky/UluTableSticky.vue.d.ts +504 -432
  76. package/dist/components/systems/table-sticky/UluTableSticky.vue.d.ts.map +1 -1
  77. package/dist/components/systems/table-sticky/UluTableSticky.vue.js +313 -456
  78. package/dist/components/systems/table-sticky/UluTableStickyRows.vue.d.ts +40 -31
  79. package/dist/components/systems/table-sticky/UluTableStickyRows.vue.d.ts.map +1 -1
  80. package/dist/components/systems/table-sticky/UluTableStickyRows.vue.js +43 -45
  81. package/dist/components/systems/table-sticky/UluTableStickyTable.vue.d.ts +60 -146
  82. package/dist/components/systems/table-sticky/UluTableStickyTable.vue.d.ts.map +1 -1
  83. package/dist/components/systems/table-sticky/UluTableStickyTable.vue.js +156 -175
  84. package/dist/components/utils/UluAction.vue.d.ts +36 -0
  85. package/dist/components/utils/UluAction.vue.d.ts.map +1 -0
  86. package/dist/components/utils/UluAction.vue.js +59 -0
  87. package/dist/components/utils/UluConditionalText.vue.d.ts +7 -26
  88. package/dist/components/utils/UluConditionalText.vue.d.ts.map +1 -1
  89. package/dist/components/utils/UluConditionalText.vue.js +12 -14
  90. package/dist/components/utils/UluConditionalWrapper.vue.d.ts.map +1 -1
  91. package/dist/components/utils/UluConditionalWrapper.vue.js +11 -9
  92. package/dist/components/utils/UluPlaceholderImage.vue.d.ts +12 -57
  93. package/dist/components/utils/UluPlaceholderImage.vue.d.ts.map +1 -1
  94. package/dist/components/utils/UluPlaceholderImage.vue.js +18 -26
  95. package/dist/components/utils/UluPlaceholderText.vue.d.ts +6 -20
  96. package/dist/components/utils/UluPlaceholderText.vue.js +12 -14
  97. package/dist/components/utils/UluRouteAnnouncer.vue.d.ts +9 -58
  98. package/dist/components/utils/UluRouteAnnouncer.vue.d.ts.map +1 -1
  99. package/dist/components/utils/UluRouteAnnouncer.vue.js +28 -28
  100. package/dist/components/visualizations/UluAnimateNumber.vue.d.ts +20 -14
  101. package/dist/components/visualizations/UluAnimateNumber.vue.d.ts.map +1 -1
  102. package/dist/components/visualizations/UluAnimateNumber.vue.js +18 -26
  103. package/dist/components/visualizations/UluProgressCircle.vue.d.ts +2 -2
  104. package/dist/composables/useModifiers.d.ts +20 -25
  105. package/dist/composables/useModifiers.d.ts.map +1 -1
  106. package/dist/index.js +206 -200
  107. package/dist/plugins/modals/UluModalsDisplay.vue.d.ts +3 -12
  108. package/dist/plugins/modals/UluModalsDisplay.vue.js +24 -45
  109. package/dist/plugins/modals/index.js +6 -6
  110. package/dist/plugins/toast/UluToast.vue.d.ts +24 -49
  111. package/dist/plugins/toast/UluToast.vue.d.ts.map +1 -1
  112. package/dist/plugins/toast/UluToast.vue.js +68 -77
  113. package/dist/plugins/toast/UluToastDisplay.vue.d.ts +1 -9
  114. package/dist/plugins/toast/UluToastDisplay.vue.js +27 -35
  115. package/dist/plugins/toast/defaults.d.ts +40 -35
  116. package/dist/plugins/toast/defaults.js +2 -2
  117. package/dist/plugins/toast/index.js +4 -4
  118. package/dist/plugins/toast/store.d.ts +40 -35
  119. package/dist/plugins/toast/store.d.ts.map +1 -1
  120. package/dist/utils/props.d.ts +7 -0
  121. package/dist/utils/props.d.ts.map +1 -0
  122. package/dist/utils/props.js +6 -0
  123. package/lib/components/collapsible/UluAccordionGroup.vue +4 -1
  124. package/lib/components/collapsible/UluDropdown.vue +5 -1
  125. package/lib/components/collapsible/UluModal.vue +278 -298
  126. package/lib/components/collapsible/UluTabGroup.vue +21 -6
  127. package/lib/components/elements/UluAlert.vue +38 -51
  128. package/lib/components/elements/UluBadgeStack.vue +4 -1
  129. package/lib/components/elements/UluButton.vue +105 -129
  130. package/lib/components/elements/UluButtonVerbose.vue +67 -89
  131. package/lib/components/elements/UluCallout.vue +15 -19
  132. package/lib/components/elements/UluCaptionedFigure.vue +40 -0
  133. package/lib/components/elements/UluDefinitionList.vue +27 -6
  134. package/lib/components/elements/UluImage.vue +56 -0
  135. package/lib/components/elements/UluList.vue +1 -0
  136. package/lib/components/elements/UluOverflowScroller.vue +140 -0
  137. package/lib/components/elements/UluScrollSlider.vue +150 -0
  138. package/lib/components/elements/UluSlider.vue +488 -0
  139. package/lib/components/index.js +10 -0
  140. package/lib/components/layout/UluTitleRail.vue +55 -48
  141. package/lib/components/navigation/UluBreadcrumb.vue +29 -34
  142. package/lib/components/navigation/UluMenu.vue +60 -71
  143. package/lib/components/navigation/UluMenuStack.vue +6 -1
  144. package/lib/components/navigation/UluNavStrip.vue +43 -31
  145. package/lib/components/systems/facets/useFacets.js +33 -17
  146. package/lib/components/systems/index.js +0 -4
  147. package/lib/components/systems/table-sticky/UluTableSticky.vue +602 -576
  148. package/lib/components/systems/table-sticky/UluTableStickyRows.vue +16 -27
  149. package/lib/components/systems/table-sticky/UluTableStickyTable.vue +95 -96
  150. package/lib/components/utils/UluAction.vue +81 -0
  151. package/lib/components/utils/UluConditionalText.vue +13 -16
  152. package/lib/components/utils/UluConditionalWrapper.vue +5 -1
  153. package/lib/components/utils/UluPlaceholderImage.vue +44 -46
  154. package/lib/components/utils/UluPlaceholderText.vue +10 -13
  155. package/lib/components/utils/UluRouteAnnouncer.vue +59 -47
  156. package/lib/components/visualizations/UluAnimateNumber.vue +23 -30
  157. package/lib/composables/useModifiers.js +21 -26
  158. package/lib/plugins/modals/UluModalsDisplay.vue +44 -45
  159. package/lib/plugins/toast/UluToast.vue +28 -34
  160. package/lib/plugins/toast/UluToastDisplay.vue +9 -15
  161. package/lib/utils/props.js +8 -0
  162. package/package.json +9 -5
  163. package/dist/components/systems/slider/UluImageSlideShow.vue.d.ts +0 -130
  164. package/dist/components/systems/slider/UluImageSlideShow.vue.d.ts.map +0 -1
  165. package/dist/components/systems/slider/UluImageSlideShow.vue.js +0 -73
  166. package/dist/components/systems/slider/UluSlideShow.vue.d.ts +0 -205
  167. package/dist/components/systems/slider/UluSlideShow.vue.d.ts.map +0 -1
  168. package/dist/components/systems/slider/UluSlideShow.vue.js +0 -292
  169. package/dist/components/systems/slider/UluSlideShowSlide.vue.d.ts +0 -17
  170. package/dist/components/systems/slider/UluSlideShowSlide.vue.d.ts.map +0 -1
  171. package/dist/components/systems/slider/UluSlideShowSlide.vue.js +0 -26
  172. package/lib/components/systems/slider/UluImageSlideShow.vue +0 -75
  173. package/lib/components/systems/slider/UluSlideShow.vue +0 -336
  174. package/lib/components/systems/slider/UluSlideShowSlide.vue +0 -25
@@ -1,16 +1,14 @@
1
- import E from "./UluTableStickyTable.vue.js";
2
- import { debounce as p } from "@ulu/utils/performance.js";
3
- import { runAfterFramePaint as A } from "@ulu/utils/browser/performance.js";
4
- import W from "lodash-es/cloneDeep.js";
5
- import { resolveComponent as X, createElementBlock as v, openBlock as u, normalizeClass as f, createElementVNode as h, createBlock as R, createCommentVNode as k, createVNode as _, normalizeStyle as g, createSlots as w, renderList as m, withCtx as y, renderSlot as d, normalizeProps as b, guardReactiveProps as C, withDirectives as P, resolveDynamicComponent as O, createTextVNode as z, vShow as V } from "vue";
6
- import F from "../../../_virtual/_plugin-vue_export-helper.js";
7
- const S = (e) => e.every((l) => typeof l == "object"), L = !0, H = () => window.innerWidth;
8
- let x = H();
9
- const B = {
10
- name: "UluTableSticky",
11
- components: {
12
- UluTableStickyTable: E
13
- },
1
+ import { ref as i, computed as v, nextTick as ve, watch as Z, onMounted as Pe, onBeforeUnmount as We, createElementBlock as me, openBlock as E, normalizeClass as T, createElementVNode as m, createBlock as ee, createCommentVNode as we, createVNode as ye, normalizeStyle as te, createSlots as P, renderList as W, withCtx as z, renderSlot as b, normalizeProps as V, guardReactiveProps as B, withDirectives as ze, resolveDynamicComponent as Ve, createTextVNode as be, vShow as Be } from "vue";
2
+ import { isArrayOfObjects as oe } from "../../../utils/props.js";
3
+ import _ from "./UluTableStickyTable.vue.js";
4
+ import { debounce as _e } from "@ulu/utils/performance.js";
5
+ import { runAfterFramePaint as Oe } from "@ulu/utils/browser/performance.js";
6
+ import Xe from "lodash-es/cloneDeep.js";
7
+ const Ie = { class: "table-sticky__sticky-wrap table-sticky__sticky-wrap--header" }, Fe = { class: "table-sticky__header-wrap" }, je = { class: "table-sticky__sticky-wrap table-sticky__sticky-wrap--first-column-header" }, Ne = { class: "table-sticky__sticky-wrap table-sticky__sticky-wrap--controls" }, Me = {
8
+ key: 2,
9
+ class: "table-sticky__controls-inner"
10
+ }, De = ["disabled"], Ue = ["disabled"], tt = {
11
+ __name: "UluTableSticky",
14
12
  props: {
15
13
  /**
16
14
  * By default you cannot have interactive items in the cloned sticky header and first column (if set)
@@ -40,7 +38,7 @@ const B = {
40
38
  */
41
39
  caption: {
42
40
  type: String,
43
- required: L
41
+ required: !0
44
42
  },
45
43
  /**
46
44
  * Array of column configurations to convert to list output
@@ -61,8 +59,8 @@ const B = {
61
59
  */
62
60
  columns: {
63
61
  type: Array,
64
- validator: S,
65
- required: L
62
+ validator: oe,
63
+ required: !0
66
64
  },
67
65
  /**
68
66
  * Whether the first column of the table should be sticky
@@ -82,15 +80,14 @@ const B = {
82
80
  */
83
81
  rows: {
84
82
  type: Array,
85
- validator: S
86
- // required
83
+ validator: oe
87
84
  },
88
85
  /**
89
86
  * Array of rows for footer (tfoot)
90
87
  */
91
88
  footerRows: {
92
89
  type: Array,
93
- validator: S
90
+ validator: oe
94
91
  },
95
92
  /**
96
93
  * Enables the visibility of the scroll controls
@@ -104,7 +101,6 @@ const B = {
104
101
  * Scrollable context DOM Element, if the sticky element is within another
105
102
  * scrolling parent use this to change the scroll activation handler to use a custom
106
103
  * scrollable parent element
107
- *
108
104
  */
109
105
  scrollContext: {
110
106
  default: () => window
@@ -117,469 +113,330 @@ const B = {
117
113
  default: 100
118
114
  }
119
115
  },
120
- data() {
121
- const e = this.createColumns();
122
- return {
123
- currentColumns: e,
124
- currentRows: this.createRows(),
125
- currentFooterRows: this.createRows(!0),
126
- headerRows: this.createHeaderRows(e),
127
- sizesCalculated: !1,
128
- tableWidth: "auto",
129
- resizeHandler: p(this.onResize.bind(this), 500, !0),
130
- resizing: !1,
131
- overflownX: !1,
132
- canScrollLeft: !1,
133
- canScrollRight: !1,
134
- displayY: null,
135
- sizesPainted: !1,
136
- columnResizeObserver: new ResizeObserver(() => this.onColumnResize())
137
- };
138
- },
139
- watch: {
140
- columns: {
141
- handler() {
142
- this.currentColumns = this.createColumns(), this.headerRows = this.createHeaderRows(this.currentColumns), this.refresh();
143
- },
144
- deep: !0
145
- },
146
- rows: {
147
- handler() {
148
- this.currentRows = this.createRows(), this.refresh();
149
- },
150
- deep: !0
151
- },
152
- footerRows: {
153
- handler() {
154
- this.currentFooterRows = this.createRows(!0), this.refresh();
155
- },
156
- deep: !0
157
- }
158
- },
159
- computed: {
160
- controlsShown() {
161
- return this.scrollControls && this.overflownX;
162
- },
163
- headerVisibleX() {
164
- return this.sizesCalculated && this.overflownX;
165
- },
166
- headerOpacityX() {
167
- return this.headerVisibleX ? "1" : "0";
168
- },
169
- /**
170
- * Used to output the body rows. This is an array of only the deepest child columns
171
- * parent column information can be accessed by reference
172
- */
173
- rowColumns() {
174
- const e = this.currentColumns, l = [], t = (o) => {
175
- o.columns ? o.columns.forEach(t) : l.push(o);
116
+ emits: ["column-sort"],
117
+ setup(n, { emit: ge }) {
118
+ const le = () => window.innerWidth;
119
+ let se = le();
120
+ const r = n, Ce = ge, O = i(null), a = i(null), $ = i(null), X = (e) => {
121
+ let o = 0;
122
+ return () => `${r.idPrefix}-${e}-${++o}`;
123
+ }, ne = () => {
124
+ const e = X("c"), o = Xe(r.columns), s = (t, l) => {
125
+ t.id = e(), t.parent = l, t.width = "auto", t.boxWidth = null, t.sortApplied = !1, t.sortAscending = !1, t.sortFocused = !1;
126
+ let c = [];
127
+ l && (l.headers && l.headers.length ? c = [...l.headers] : c.push(l.id)), c.push(t.id), t.headers = c, t.columns ? t.columns.forEach((u) => s(u, t)) : !t.key && !t.value && !t.slot && console.warn("UluTableSticky: Missing 'key', 'value' or 'slot' in column configuration for", t);
176
128
  };
177
- e.forEach(t);
178
- let s = [];
179
- return l.forEach((o, r) => {
180
- const c = s.slice();
181
- o.getRowHeaders = (n) => c.map((i) => i(n)).join(" "), o.rowHeader && (o.getRowHeaderId = (n) => `${this.idPrefix}-rh-${n}-${r}`, s.push(o.getRowHeaderId));
182
- }), l;
183
- },
184
- headerHeight() {
185
- return this.headerRows.reduce((e, l) => e + l.boxHeight, 0);
186
- },
187
- /**
188
- * Reduce the array of column header rows to the first row, first column
189
- */
190
- headerRowsFirst() {
191
- const e = this.headerRows[0], t = [Object.assign({}, e.columns[0], { rowspan: 1, colspan: 1 })];
192
- return [{
193
- ...e,
194
- columns: t,
195
- boxHeight: this.headerHeight,
196
- height: `${this.headerHeight}px`
197
- }];
198
- },
199
- /**
200
- * Reduce the rowColumn array to only the first column
201
- */
202
- rowColumnsFirst() {
203
- return [this.rowColumns[0]];
204
- },
205
- firstColumnSize() {
206
- const e = this.headerRowsFirst[0].height;
207
- return { width: this.headerRows[0].columns[0].width, height: e };
208
- }
209
- },
210
- methods: {
211
- resetSorts(e) {
212
- const l = (t) => {
213
- t.forEach((s) => {
214
- e.key !== s.key && (s.sortApplied = !1, s.sortAscending = !1), s.columns && l(s.columns);
215
- });
216
- };
217
- l(this.currentColumns);
218
- },
219
- applySort(e) {
220
- this.resetSorts(e), e.sortApplied ? e.sortAscending = !e.sortAscending : e.sortApplied = !0, this.$emit("column-sort", e);
221
- },
222
- onColumnResize() {
223
- this.sizesPainted && this.refresh();
224
- },
225
- headerAdded(e) {
226
- this.columnResizeObserver.observe(e);
227
- },
228
- headerRemoved(e) {
229
- this.columnResizeObserver.unobserve(e);
230
- },
231
- /**
232
- * Allow classes options to be strings or functions
233
- */
234
- resolveClasses(e, l = null) {
235
- if (!(typeof e > "u"))
236
- return typeof e == "function" ? e(l) : e;
237
- },
238
- /**
239
- * Handles horizontal scroll
240
- * - Shifts the first column as the user scrolls
241
- */
242
- syncScrollLeft() {
243
- const e = this.$refs.display.scrollLeft;
244
- this.$refs.header.$el.style.transform = `translateX(-${e}px)`;
245
- },
246
- /**
247
- * Checks and sets state if the table is overflow horizontally
248
- */
249
- checkOverflowX() {
250
- this.overflownX = this.$refs.display.scrollWidth > this.$refs.display.clientWidth;
251
- },
252
- /**
253
- * Checks whether if the tables scroll position is at the start or end and updates state
254
- */
255
- checkScrollability() {
256
- if (!this.overflownX) return;
257
- const e = this.$refs.display;
258
- this.canScrollLeft = e.scrollLeft > 0, this.canScrollRight = e.clientWidth + e.scrollLeft < e.scrollWidth;
259
- },
260
- /**
261
- * Creates column array for internal use
262
- * - Avoid mutating user's prop
263
- * - Current columns being used in the display
264
- * - This internal copy has internal properties/structural info (like ID)
265
- * - This is the copy of the users columns to avoid mutating their object
266
- * - Can be used in the future for adding/removing or enabling/disabling
267
- */
268
- createColumns() {
269
- const e = this.idCreator("c"), l = W(this.columns), t = (s, o) => {
270
- s.id = e(), s.parent = o, s.width = "auto", s.boxWidth = null, s.sortApplied = !1, s.sortAscending = !1, s.sortFocused = !1;
271
- let r = [];
272
- o && (o.headers && o.headers.length ? r = [...o.headers] : r.push(o.id)), r.push(s.id), s.headers = r, s.columns ? s.columns.forEach((c) => t(c, s)) : !s.key && !s.value && !s.slot && console.warn("UluTableSticky: Missing 'key', 'value' or 'slot' in column configuration for", s);
273
- };
274
- return l.forEach((s) => t(s, null)), l;
275
- },
276
- /**
277
- * Conversion of the columns (which are nested hierarchy) to a flat list of columns
278
- * sorted by the way they need to be displayed in rows
279
- * - Used for nested headers
280
- * - Transform nested data into row arrays
281
- */
282
- createHeaderRows(e) {
283
- const l = this.idCreator("hr"), t = e.reduce(this.maxColumnChildren, 1), s = "auto", o = new Array(t).fill(null).map(() => ({
284
- height: s,
129
+ return o.forEach((t) => s(t, null)), o;
130
+ }, re = (e, o) => {
131
+ const s = o.columns ? o.columns.reduce(re, 1) + 1 : 1;
132
+ return e > s ? e : s;
133
+ }, ae = (e) => {
134
+ const o = X("hr"), s = e.reduce(re, 1), t = "auto", l = new Array(s).fill(null).map(() => ({
135
+ height: t,
285
136
  boxHeight: null,
286
137
  columns: [],
287
- id: l()
138
+ id: o()
288
139
  }));
289
- function r(c, n) {
290
- const i = n.columns;
291
- i && i.forEach((a) => r(1 + c, a)), n.rowspan = i ? 1 : t - c, n.colspan = i ? i.reduce((a, T) => a + T.colspan, 0) : 1, o[c].columns.push(n);
140
+ function c(u, h) {
141
+ const y = h.columns;
142
+ y && y.forEach((Q) => c(1 + u, Q)), h.rowspan = y ? 1 : s - u, h.colspan = y ? y.reduce((Q, Te) => Q + Te.colspan, 0) : 1, l[u].columns.push(h);
292
143
  }
293
- return e.forEach((c) => r(0, c)), o;
294
- },
295
- /**
296
- * Creates row array for internal use
297
- * - Avoid mutating user's prop
298
- */
299
- createRows(e) {
300
- const l = this.idCreator(e ? "fr" : "br"), t = e ? this.footerRows : this.rows;
301
- return t ? t.map((s) => ({
144
+ return e.forEach((u) => c(0, u)), l;
145
+ }, L = (e) => {
146
+ const o = X(e ? "fr" : "br"), s = e ? r.footerRows : r.rows;
147
+ return s ? s.map((t) => ({
302
148
  height: null,
303
149
  boxHeight: null,
304
- data: s,
305
- id: l()
150
+ data: t,
151
+ id: o()
306
152
  })) : [];
307
- },
308
- onResize() {
309
- const e = H();
310
- x !== e && (x = e, this.resizing ? (this.resizing = !1, this.setTableSizes(), this.checkOverflowX(), this.syncScrollLeft()) : (this.resizing = !0, this.removeTableSizes()));
311
- },
312
- /**
313
- * Method to update the table (sizes, etc) when data has changed
314
- */
315
- refresh() {
316
- this.removeTableSizes(), this.$nextTick(() => {
317
- this.setTableSizes(), this.checkOverflowX(), this.checkScrollability(), this.syncScrollLeft();
153
+ }, g = i(ne()), C = i(L()), k = i(L(!0)), d = i(ae(g.value)), R = i(!1), I = i("auto"), F = i(!1), S = i(!1), p = i(!1), x = i(!1), j = i(!1);
154
+ let f = null;
155
+ f = new ResizeObserver(() => xe());
156
+ const ke = v(() => r.scrollControls && S.value), N = v(() => R.value && S.value), ie = v(() => N.value ? "1" : "0"), ce = v(() => {
157
+ const e = g.value, o = [], s = (l) => {
158
+ l.columns ? l.columns.forEach(s) : o.push(l);
159
+ };
160
+ e.forEach(s);
161
+ let t = [];
162
+ return o.forEach((l, c) => {
163
+ const u = t.slice();
164
+ l.getRowHeaders = (h) => u.map((y) => y(h)).join(" "), l.rowHeader && (l.getRowHeaderId = (h) => `${r.idPrefix}-rh-${h}-${c}`, t.push(l.getRowHeaderId));
165
+ }), o;
166
+ }), ue = v(() => d.value.reduce((e, o) => e + o.boxHeight, 0)), M = v(() => {
167
+ const e = d.value[0], s = [Object.assign({}, e.columns[0], { rowspan: 1, colspan: 1 })];
168
+ return [{
169
+ ...e,
170
+ columns: s,
171
+ boxHeight: ue.value,
172
+ height: `${ue.value}px`
173
+ }];
174
+ }), Re = v(() => [ce.value[0]]), Se = v(() => {
175
+ const e = M.value[0].height;
176
+ return { width: d.value[0].columns[0].width, height: e };
177
+ }), pe = (e) => {
178
+ const o = (s) => {
179
+ s.forEach((t) => {
180
+ e.key !== t.key && (t.sortApplied = !1, t.sortAscending = !1), t.columns && o(t.columns);
181
+ });
182
+ };
183
+ o(g.value);
184
+ }, A = (e) => {
185
+ pe(e), e.sortApplied ? e.sortAscending = !e.sortAscending : e.sortApplied = !0, Ce("column-sort", e);
186
+ }, xe = () => {
187
+ j.value && H();
188
+ }, Ee = (e) => {
189
+ f && f.observe(e);
190
+ }, $e = (e) => {
191
+ f && f.unobserve(e);
192
+ }, w = (e, o = null) => {
193
+ if (!(typeof e > "u"))
194
+ return typeof e == "function" ? e(o) : e;
195
+ }, D = () => {
196
+ if (a.value && O.value) {
197
+ const e = a.value.scrollLeft;
198
+ O.value.$el.style.transform = `translateX(-${e}px)`;
199
+ }
200
+ }, U = () => {
201
+ a.value && (S.value = a.value.scrollWidth > a.value.clientWidth);
202
+ }, q = () => {
203
+ if (!S.value || !a.value) return;
204
+ const e = a.value;
205
+ p.value = e.scrollLeft > 0, x.value = e.clientWidth + e.scrollLeft < e.scrollWidth;
206
+ }, de = _e(() => {
207
+ const e = le();
208
+ se !== e && (se = e, F.value ? (F.value = !1, K(), U(), D()) : (F.value = !0, he()));
209
+ }, 500, !0), H = () => {
210
+ he(), ve(() => {
211
+ K(), U(), q(), D();
318
212
  });
319
- },
320
- onScrollX() {
321
- this.checkScrollability(), this.syncScrollLeft();
322
- },
323
- idCreator(e) {
324
- let l = 0;
325
- return () => `${this.idPrefix}-${e}-${++l}`;
326
- },
327
- /**
328
- * Recursive function used as a reducer to return the deepest nested columns
329
- */
330
- maxColumnChildren(e, l) {
331
- const t = l.columns ? l.columns.reduce(this.maxColumnChildren) + 1 : 1;
332
- return e > t ? e : t;
333
- },
334
- /**
335
- * Method to attach handlers needed after creation
336
- */
337
- attachHandlers() {
338
- this.handlerScrollX = this.onScrollX, this.$refs.display.addEventListener("scroll", this.handlerScrollX), this.scrollContext.addEventListener("touchmove", this.handlerScrollY), window.addEventListener("resize", this.resizeHandler);
339
- },
340
- removeHandlers() {
341
- this.$refs.display.removeEventListener("scroll", this.handlerScrollX), this.scrollContext.removeEventListener("scroll", this.handlerScrollY), this.scrollContext.addEventListener("touchmove", this.handlerScrollY), window.removeEventListener("resize", this.resizeHandler);
342
- },
343
- removeTableSizes() {
344
- this.sizesPainted = !1, this.sizesCalculated = !1;
345
- const e = (l) => {
346
- l.boxHeight = null, l.height = "auto";
213
+ }, fe = () => {
214
+ q(), D();
215
+ }, Y = () => {
216
+ }, Le = () => {
217
+ a.value && a.value.addEventListener("scroll", fe), r.scrollContext && r.scrollContext.addEventListener("touchmove", Y), window.addEventListener("resize", de);
218
+ }, Ae = () => {
219
+ a.value && a.value.removeEventListener("scroll", fe), r.scrollContext && (r.scrollContext.removeEventListener("scroll", Y), r.scrollContext.removeEventListener("touchmove", Y)), window.removeEventListener("resize", de);
220
+ }, he = () => {
221
+ j.value = !1, R.value = !1;
222
+ const e = (o) => {
223
+ o.boxHeight = null, o.height = "auto";
347
224
  };
348
- this.tableWidth = "auto", this.headerRows.forEach((l) => {
349
- e(l), l.columns.forEach((t) => {
350
- t.boxWidth = null, t.width = "auto";
225
+ I.value = "auto", d.value.forEach((o) => {
226
+ e(o), o.columns.forEach((s) => {
227
+ s.boxWidth = null, s.width = "auto";
351
228
  });
352
- }), this.firstColumnSticky && (this.currentRows.forEach((l) => e(l)), this.currentFooterRows.forEach((l) => e(l)));
353
- },
354
- scrollLeft() {
355
- const e = this.$refs.display, l = e.scrollLeft, t = this.scrollControlAmount, s = l - t;
229
+ }), r.firstColumnSticky && (C.value.forEach((o) => e(o)), k.value.forEach((o) => e(o)));
230
+ }, G = () => {
231
+ const e = a.value;
232
+ if (!e) return;
233
+ const o = e.scrollLeft, s = r.scrollControlAmount, t = o - s;
356
234
  e.scroll({
357
- left: s < 0 ? 0 : s,
235
+ left: t < 0 ? 0 : t,
358
236
  behavior: "smooth"
359
237
  });
360
- },
361
- scrollRight() {
362
- const e = this.$refs.display, l = e.scrollWidth, t = e.scrollLeft, s = this.scrollControlAmount, o = t + s;
238
+ }, J = () => {
239
+ const e = a.value;
240
+ if (!e) return;
241
+ const o = e.scrollWidth, s = e.scrollLeft, t = r.scrollControlAmount, l = s + t;
363
242
  e.scroll({
364
- left: o > l ? e.scrollWidth : o,
243
+ left: l > o ? o : l,
365
244
  behavior: "smooth"
366
245
  });
367
- },
368
- /**
369
- * Cleanup function for when component is not in use
370
- */
371
- setTableSizes() {
372
- const e = (s, o) => Math.ceil(s.getBoundingClientRect()[o]);
373
- this.tableWidth = `${e(this.$refs.table.$el, "width")}px`;
374
- const l = (s) => document.getElementById(s.id), t = (s) => {
375
- const o = l(s);
376
- o && (s.boxHeight = e(o, "height"), s.height = `${s.boxHeight}px`);
246
+ }, K = () => {
247
+ const e = (t, l) => Math.ceil(t.getBoundingClientRect()[l]);
248
+ $.value && $.value.$el && (I.value = `${e($.value.$el, "width")}px`);
249
+ const o = (t) => document.getElementById(t.id), s = (t) => {
250
+ const l = o(t);
251
+ l && (t.boxHeight = e(l, "height"), t.height = `${t.boxHeight}px`);
377
252
  };
378
- this.headerRows.forEach((s) => {
379
- t(s), s.columns.forEach((o) => {
380
- const r = l(o);
381
- r && (o.boxWidth = e(r, "width"), o.width = `${o.boxWidth}px`);
253
+ d.value.forEach((t) => {
254
+ s(t), t.columns.forEach((l) => {
255
+ const c = o(l);
256
+ c && (l.boxWidth = e(c, "width"), l.width = `${l.boxWidth}px`);
382
257
  });
383
- }), this.firstColumnSticky && (this.currentRows.forEach((s) => t(s)), this.currentFooterRows.forEach((s) => t(s))), this.$nextTick(() => {
384
- this.sizesCalculated = !0, A(() => {
385
- this.sizesPainted = !0;
258
+ }), r.firstColumnSticky && (C.value.forEach((t) => s(t)), k.value.forEach((t) => s(t))), ve(() => {
259
+ R.value = !0, Oe(() => {
260
+ j.value = !0;
386
261
  });
387
262
  });
388
- },
389
- tableReady() {
390
- this.setTableSizes();
391
- }
392
- /**
393
- * Creates a new throttled scroll handler
394
- */
395
- // throttleScroll(handler) {
396
- // let id = null;
397
- // // Old Fired after frame
398
- // return (event) => {
399
- // if (id) window.cancelAnimationFrame(id);
400
- // id = window.requestAnimationFrame(() => handler(event));
401
- // };
402
- // },
403
- },
404
- mounted() {
405
- this.attachHandlers(), this.checkOverflowX(), this.checkScrollability();
406
- },
407
- beforeUnmount() {
408
- this.removeHandlers();
409
- },
410
- unmounted() {
411
- this.columnResizeObserver.disconnect(), this.columnResizeObserver = null;
412
- }
413
- }, I = { class: "table-sticky__sticky-wrap table-sticky__sticky-wrap--header" }, U = { class: "table-sticky__header-wrap" }, j = { class: "table-sticky__sticky-wrap table-sticky__sticky-wrap--first-column-header" }, N = { class: "table-sticky__sticky-wrap table-sticky__sticky-wrap--controls" }, D = {
414
- key: 2,
415
- class: "table-sticky__controls-inner"
416
- }, M = ["disabled"], Y = ["disabled"], q = {
417
- ref: "display",
418
- class: "table-sticky__display"
419
- };
420
- function G(e, l, t, s, o, r) {
421
- const c = X("UluTableStickyTable");
422
- return u(), v("div", {
423
- class: f(["table-sticky", {
424
- "table-sticky--overflown-x": o.overflownX,
425
- "table-sticky--can-scroll-right": o.canScrollRight,
426
- "table-sticky--can-scroll-left": o.canScrollLeft
427
- }])
428
- }, [
429
- h("div", I, [
430
- h("div", U, [
431
- _(c, {
432
- ref: "header",
433
- class: "table-sticky__table table-sticky__table--header",
434
- classes: t.classes,
435
- caption: t.caption,
436
- resolveClasses: r.resolveClasses,
437
- getColumnTitle: t.getColumnTitle,
438
- idPrefix: t.idPrefix,
439
- headerRows: o.headerRows,
440
- style: g({
441
- opacity: o.sizesCalculated ? "1" : "0",
442
- pointerEvents: o.sizesCalculated ? "auto" : "none",
443
- width: o.tableWidth
263
+ }, He = () => {
264
+ K();
265
+ };
266
+ return Z(() => r.columns, () => {
267
+ g.value = ne(), d.value = ae(g.value), H();
268
+ }, { deep: !0 }), Z(() => r.rows, () => {
269
+ C.value = L(), H();
270
+ }, { deep: !0 }), Z(() => r.footerRows, () => {
271
+ k.value = L(!0), H();
272
+ }, { deep: !0 }), Pe(() => {
273
+ Le(), U(), q();
274
+ }), We(() => {
275
+ Ae(), f && (f.disconnect(), f = null);
276
+ }), (e, o) => (E(), me("div", {
277
+ class: T(["table-sticky", {
278
+ "table-sticky--overflown-x": S.value,
279
+ "table-sticky--can-scroll-right": x.value,
280
+ "table-sticky--can-scroll-left": p.value
281
+ }])
282
+ }, [
283
+ m("div", Ie, [
284
+ m("div", Fe, [
285
+ ye(_, {
286
+ ref_key: "header",
287
+ ref: O,
288
+ class: "table-sticky__table table-sticky__table--header",
289
+ classes: n.classes,
290
+ caption: n.caption,
291
+ resolveClasses: w,
292
+ getColumnTitle: n.getColumnTitle,
293
+ idPrefix: n.idPrefix,
294
+ headerRows: d.value,
295
+ style: te({
296
+ opacity: R.value ? "1" : "0",
297
+ pointerEvents: R.value ? "auto" : "none",
298
+ width: I.value
299
+ }),
300
+ onColumnSorted: A
301
+ }, P({ _: 2 }, [
302
+ W(e.$slots, (s, t) => ({
303
+ name: t,
304
+ fn: z((l) => [
305
+ b(e.$slots, t, V(B(l)))
306
+ ])
307
+ }))
308
+ ]), 1032, ["classes", "caption", "getColumnTitle", "idPrefix", "headerRows", "style"])
309
+ ])
310
+ ]),
311
+ m("div", je, [
312
+ n.firstColumnSticky ? (E(), ee(_, {
313
+ key: 0,
314
+ class: "table-sticky__table table-sticky__table--first-column-header",
315
+ classes: n.classes,
316
+ caption: n.caption,
317
+ resolveClasses: w,
318
+ getColumnTitle: n.getColumnTitle,
319
+ idPrefix: n.idPrefix,
320
+ headerRows: M.value,
321
+ style: te({
322
+ opacity: ie.value,
323
+ pointerEvents: N.value ? "auto" : "none"
444
324
  }),
445
- onColumnSorted: r.applySort
446
- }, w({ _: 2 }, [
447
- m(e.$slots, (n, i) => ({
448
- name: i,
449
- fn: y((a) => [
450
- d(e.$slots, i, b(C(a)))
325
+ onColumnSorted: A
326
+ }, P({ _: 2 }, [
327
+ W(e.$slots, (s, t) => ({
328
+ name: t,
329
+ fn: z((l) => [
330
+ b(e.$slots, t, V(B(l)))
451
331
  ])
452
332
  }))
453
- ]), 1032, ["classes", "caption", "resolveClasses", "getColumnTitle", "idPrefix", "headerRows", "style", "onColumnSorted"])
454
- ])
455
- ]),
456
- h("div", j, [
457
- t.firstColumnSticky ? (u(), R(c, {
458
- key: 0,
459
- ref: "firstColumnHeader",
460
- class: "table-sticky__table table-sticky__table--first-column-header",
461
- classes: t.classes,
462
- caption: t.caption,
463
- resolveClasses: r.resolveClasses,
464
- getColumnTitle: t.getColumnTitle,
465
- idPrefix: t.idPrefix,
466
- headerRows: r.headerRowsFirst,
467
- style: g({
468
- opacity: r.headerOpacityX,
469
- pointerEvents: r.headerVisibleX ? "auto" : "none"
470
- }),
471
- onColumnSorted: r.applySort
472
- }, w({ _: 2 }, [
473
- m(e.$slots, (n, i) => ({
474
- name: i,
475
- fn: y((a) => [
476
- d(e.$slots, i, b(C(a)))
477
- ])
478
- }))
479
- ]), 1032, ["classes", "caption", "resolveClasses", "getColumnTitle", "idPrefix", "headerRows", "style", "onColumnSorted"])) : k("", !0)
480
- ]),
481
- h("div", N, [
482
- P(h("div", {
483
- class: f(["table-sticky__controls", r.resolveClasses(t.classes.controls)]),
484
- ref: "controls"
333
+ ]), 1032, ["classes", "caption", "getColumnTitle", "idPrefix", "headerRows", "style"])) : we("", !0)
334
+ ]),
335
+ m("div", Ne, [
336
+ ze(m("div", {
337
+ class: T(["table-sticky__controls", w(n.classes.controls)])
338
+ }, [
339
+ e.$slots.controls ? b(e.$slots, "controls", {
340
+ key: 0,
341
+ scrollLeft: G,
342
+ scrollRight: J,
343
+ canScrollLeft: p.value,
344
+ canScrollRight: x.value
345
+ }) : n.controlsComponent ? (E(), ee(Ve(n.controlsComponent), {
346
+ key: 1,
347
+ scrollLeft: G,
348
+ scrollRight: J,
349
+ canScrollLeft: p.value,
350
+ canScrollRight: x.value
351
+ }, null, 8, ["canScrollLeft", "canScrollRight"])) : (E(), me("div", Me, [
352
+ m("button", {
353
+ class: T(["table-sticky__control table-sticky__control--left", w(n.classes.controlButton)]),
354
+ "aria-label": "Scroll Left",
355
+ onClick: G,
356
+ disabled: !p.value
357
+ }, [
358
+ b(e.$slots, "controlLeft", {}, () => [
359
+ o[0] || (o[0] = be(" ", -1))
360
+ ])
361
+ ], 10, De),
362
+ m("button", {
363
+ class: T(["table-sticky__control table-sticky__control--right", w(n.classes.controlButton)]),
364
+ "aria-label": "Scroll Right",
365
+ onClick: J,
366
+ disabled: !x.value
367
+ }, [
368
+ b(e.$slots, "controlRight", {}, () => [
369
+ o[1] || (o[1] = be(" → ", -1))
370
+ ])
371
+ ], 10, Ue)
372
+ ]))
373
+ ], 2), [
374
+ [Be, ke.value]
375
+ ])
376
+ ]),
377
+ m("div", {
378
+ ref_key: "display",
379
+ ref: a,
380
+ class: "table-sticky__display"
485
381
  }, [
486
- e.$slots.controls ? d(e.$slots, "controls", {
487
- key: 0,
488
- scrollLeft: r.scrollLeft,
489
- scrollRight: r.scrollRight,
490
- canScrollLeft: o.canScrollLeft,
491
- canScrollRight: o.canScrollRight
492
- }) : t.controlsComponent ? (u(), R(O(t.controlsComponent), {
493
- key: 1,
494
- scrollLeft: r.scrollLeft,
495
- scrollRight: r.scrollRight,
496
- canScrollLeft: o.canScrollLeft,
497
- canScrollRight: o.canScrollRight
498
- }, null, 8, ["scrollLeft", "scrollRight", "canScrollLeft", "canScrollRight"])) : (u(), v("div", D, [
499
- h("button", {
500
- class: f(["table-sticky__control table-sticky__control--left", r.resolveClasses(t.classes.controlButton)]),
501
- "aria-label": "Scroll Left",
502
- onClick: l[0] || (l[0] = (...n) => r.scrollLeft && r.scrollLeft(...n)),
503
- disabled: !o.canScrollLeft
504
- }, [
505
- d(e.$slots, "controlLeft", {}, () => [
506
- l[2] || (l[2] = z(" ", -1))
382
+ ye(_, {
383
+ ref_key: "table",
384
+ ref: $,
385
+ class: "table-sticky__table table-sticky__table--actual",
386
+ classes: n.classes,
387
+ resolveClasses: w,
388
+ isActual: "",
389
+ headerRows: d.value,
390
+ rows: C.value,
391
+ footerRows: k.value,
392
+ rowColumns: ce.value,
393
+ caption: n.caption,
394
+ idPrefix: n.idPrefix,
395
+ getRowValue: n.getRowValue,
396
+ getColumnTitle: n.getColumnTitle,
397
+ onVnodeMounted: He,
398
+ onActualHeaderRemoved: $e,
399
+ onActualHeaderAdded: Ee,
400
+ onColumnSorted: A
401
+ }, P({ _: 2 }, [
402
+ W(e.$slots, (s, t) => ({
403
+ name: t,
404
+ fn: z((l) => [
405
+ b(e.$slots, t, V(B(l)))
507
406
  ])
508
- ], 10, M),
509
- h("button", {
510
- class: f(["table-sticky__control table-sticky__control--right", r.resolveClasses(t.classes.controlButton)]),
511
- "aria-label": "Scroll Right",
512
- onClick: l[1] || (l[1] = (...n) => r.scrollRight && r.scrollRight(...n)),
513
- disabled: !o.canScrollRight
514
- }, [
515
- d(e.$slots, "controlRight", {}, () => [
516
- l[3] || (l[3] = z(" → ", -1))
517
- ])
518
- ], 10, Y)
519
- ]))
520
- ], 2), [
521
- [V, r.controlsShown]
522
- ])
523
- ]),
524
- h("div", q, [
525
- _(c, {
526
- ref: "table",
527
- class: "table-sticky__table table-sticky__table--actual",
528
- classes: t.classes,
529
- resolveClasses: r.resolveClasses,
530
- isActual: "",
531
- headerRows: o.headerRows,
532
- rows: o.currentRows,
533
- footerRows: o.currentFooterRows,
534
- rowColumns: r.rowColumns,
535
- caption: t.caption,
536
- idPrefix: t.idPrefix,
537
- getRowValue: t.getRowValue,
538
- getColumnTitle: t.getColumnTitle,
539
- onVnodeMounted: r.tableReady,
540
- onActualHeaderRemoved: r.headerRemoved,
541
- onActualHeaderAdded: r.headerAdded,
542
- onColumnSorted: r.applySort
543
- }, w({ _: 2 }, [
544
- m(e.$slots, (n, i) => ({
545
- name: i,
546
- fn: y((a) => [
547
- d(e.$slots, i, b(C(a)))
407
+ }))
408
+ ]), 1032, ["classes", "headerRows", "rows", "footerRows", "rowColumns", "caption", "idPrefix", "getRowValue", "getColumnTitle"])
409
+ ], 512),
410
+ n.firstColumnSticky ? (E(), ee(_, {
411
+ key: 0,
412
+ class: "table-sticky__table table-sticky__table--first-column",
413
+ classes: n.classes,
414
+ resolveClasses: w,
415
+ caption: n.caption,
416
+ headerRows: M.value,
417
+ columnWidth: Se.value.width,
418
+ rows: C.value,
419
+ footerRows: k.value,
420
+ rowColumns: Re.value,
421
+ idPrefix: n.idPrefix,
422
+ getRowValue: n.getRowValue,
423
+ getColumnTitle: n.getColumnTitle,
424
+ style: te({
425
+ opacity: ie.value,
426
+ pointerEvents: N.value ? "auto" : "none"
427
+ }),
428
+ onColumnSorted: A
429
+ }, P({ _: 2 }, [
430
+ W(e.$slots, (s, t) => ({
431
+ name: t,
432
+ fn: z((l) => [
433
+ b(e.$slots, t, V(B(l)))
548
434
  ])
549
435
  }))
550
- ]), 1032, ["classes", "resolveClasses", "headerRows", "rows", "footerRows", "rowColumns", "caption", "idPrefix", "getRowValue", "getColumnTitle", "onVnodeMounted", "onActualHeaderRemoved", "onActualHeaderAdded", "onColumnSorted"])
551
- ], 512),
552
- t.firstColumnSticky ? (u(), R(c, {
553
- key: 0,
554
- ref: "firstColumn",
555
- class: "table-sticky__table table-sticky__table--first-column",
556
- classes: t.classes,
557
- resolveClasses: r.resolveClasses,
558
- caption: t.caption,
559
- headerRows: r.headerRowsFirst,
560
- columnWidth: r.firstColumnSize.width,
561
- rows: o.currentRows,
562
- footerRows: o.currentFooterRows,
563
- rowColumns: r.rowColumnsFirst,
564
- idPrefix: t.idPrefix,
565
- getRowValue: t.getRowValue,
566
- getColumnTitle: t.getColumnTitle,
567
- style: g({
568
- opacity: r.headerOpacityX,
569
- pointerEvents: r.headerVisibleX ? "auto" : "none"
570
- }),
571
- onColumnSorted: r.applySort
572
- }, w({ _: 2 }, [
573
- m(e.$slots, (n, i) => ({
574
- name: i,
575
- fn: y((a) => [
576
- d(e.$slots, i, b(C(a)))
577
- ])
578
- }))
579
- ]), 1032, ["classes", "resolveClasses", "caption", "headerRows", "columnWidth", "rows", "footerRows", "rowColumns", "idPrefix", "getRowValue", "getColumnTitle", "style", "onColumnSorted"])) : k("", !0)
580
- ], 2);
581
- }
582
- const te = /* @__PURE__ */ F(B, [["render", G]]);
436
+ ]), 1032, ["classes", "caption", "headerRows", "columnWidth", "rows", "footerRows", "rowColumns", "idPrefix", "getRowValue", "getColumnTitle", "style"])) : we("", !0)
437
+ ], 2));
438
+ }
439
+ };
583
440
  export {
584
- te as default
441
+ tt as default
585
442
  };