@limetech/lime-elements 35.0.0-next.2 → 35.0.0-next.20

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 (230) hide show
  1. package/dist/cjs/checkbox.template-7f83d0b4.js +41 -0
  2. package/dist/cjs/{component-f7ef9087.js → component-66df95e7.js} +190 -132
  3. package/dist/cjs/{component-f532119f.js → component-67144c1c.js} +47 -3
  4. package/dist/cjs/{component-ed21410d.js → component-ae3bfacf.js} +367 -235
  5. package/dist/cjs/{component-2faaa141.js → component-cf490570.js} +213 -143
  6. package/dist/cjs/{component-10dbdd60.js → component-dd795ff0.js} +7 -5
  7. package/dist/cjs/{index-e63a89d7.js → index-43283636.js} +23 -0
  8. package/dist/cjs/lime-elements.cjs.js +3 -3
  9. package/dist/cjs/limel-badge.cjs.entry.js +3 -3
  10. package/dist/cjs/limel-banner.cjs.entry.js +1 -1
  11. package/dist/cjs/limel-button-group.cjs.entry.js +2 -2
  12. package/dist/cjs/limel-button.cjs.entry.js +2 -2
  13. package/dist/cjs/limel-checkbox.cjs.entry.js +131 -86
  14. package/dist/cjs/limel-chip-set.cjs.entry.js +234 -190
  15. package/dist/cjs/limel-circular-progress.cjs.entry.js +2 -2
  16. package/dist/cjs/limel-code-editor.cjs.entry.js +49 -22
  17. package/dist/cjs/limel-collapsible-section.cjs.entry.js +1 -1
  18. package/dist/cjs/limel-color-picker-palette_2.cjs.entry.js +1 -1
  19. package/dist/cjs/limel-color-picker.cjs.entry.js +1 -1
  20. package/dist/cjs/limel-config.cjs.entry.js +1 -1
  21. package/dist/cjs/limel-date-picker.cjs.entry.js +5 -5
  22. package/dist/cjs/limel-dialog.cjs.entry.js +8 -9
  23. package/dist/cjs/limel-file.cjs.entry.js +5 -5
  24. package/dist/cjs/limel-flatpickr-adapter.cjs.entry.js +1 -1
  25. package/dist/cjs/limel-flex-container.cjs.entry.js +5 -1
  26. package/dist/cjs/limel-form.cjs.entry.js +7547 -8994
  27. package/dist/cjs/limel-grid.cjs.entry.js +1 -1
  28. package/dist/cjs/limel-header.cjs.entry.js +1 -1
  29. package/dist/cjs/limel-icon-button.cjs.entry.js +5 -5
  30. package/dist/cjs/limel-icon.cjs.entry.js +1 -1
  31. package/dist/cjs/limel-input-field.cjs.entry.js +6 -6
  32. package/dist/cjs/limel-linear-progress.cjs.entry.js +3 -3
  33. package/dist/cjs/limel-list_3.cjs.entry.js +133 -78
  34. package/dist/cjs/limel-menu-list.cjs.entry.js +85 -69
  35. package/dist/cjs/limel-menu.cjs.entry.js +1 -1
  36. package/dist/cjs/limel-picker.cjs.entry.js +2 -2
  37. package/dist/cjs/limel-popover-surface.cjs.entry.js +2 -2
  38. package/dist/cjs/limel-progress-flow-item.cjs.entry.js +1 -1
  39. package/dist/cjs/limel-progress-flow.cjs.entry.js +1 -1
  40. package/dist/cjs/limel-select.cjs.entry.js +5 -5
  41. package/dist/cjs/limel-slider.cjs.entry.js +33 -6
  42. package/dist/cjs/limel-snackbar.cjs.entry.js +78 -72
  43. package/dist/cjs/limel-spinner.cjs.entry.js +1 -1
  44. package/dist/cjs/limel-switch.cjs.entry.js +497 -201
  45. package/dist/cjs/limel-tab-bar.cjs.entry.js +262 -185
  46. package/dist/cjs/limel-tab-panel.cjs.entry.js +1 -1
  47. package/dist/cjs/limel-table.cjs.entry.js +363 -11
  48. package/dist/cjs/limel-tooltip_2.cjs.entry.js +1 -1
  49. package/dist/cjs/loader.cjs.js +3 -3
  50. package/dist/collection/collection-manifest.json +2 -2
  51. package/dist/collection/components/badge/badge.css +9 -15
  52. package/dist/collection/components/badge/badge.js +2 -2
  53. package/dist/collection/components/button/button.css +333 -145
  54. package/dist/collection/components/button-group/button-group.css +30 -5
  55. package/dist/collection/components/checkbox/checkbox.css +46 -16
  56. package/dist/collection/components/checkbox/checkbox.template.js +22 -20
  57. package/dist/collection/components/chip-set/chip-set.css +367 -34
  58. package/dist/collection/components/circular-progress/circular-progress.css +2 -2
  59. package/dist/collection/components/code-editor/code-editor.css +8 -13
  60. package/dist/collection/components/dialog/dialog.css +153 -109
  61. package/dist/collection/components/flex-container/flex-container.js +10 -0
  62. package/dist/collection/components/form/form.css +3 -1
  63. package/dist/collection/components/form/templates/common.js +4 -1
  64. package/dist/collection/components/icon-button/icon-button.css +116 -59
  65. package/dist/collection/components/icon-button/icon-button.js +1 -0
  66. package/dist/collection/components/input-field/input-field.css +351 -29
  67. package/dist/collection/components/linear-progress/linear-progress.css +14 -2
  68. package/dist/collection/components/list/list.css +912 -89
  69. package/dist/collection/components/menu-list/menu-list.css +912 -89
  70. package/dist/collection/components/menu-surface/menu-surface.css +31 -7
  71. package/dist/collection/components/picker/picker.js +1 -1
  72. package/dist/collection/components/popover-surface/popover-surface.css +1 -0
  73. package/dist/collection/components/select/select.css +430 -20
  74. package/dist/collection/components/select/select.template.js +1 -1
  75. package/dist/collection/components/slider/slider.css +54 -2
  76. package/dist/collection/components/snackbar/snackbar.css +588 -301
  77. package/dist/collection/components/switch/switch.css +592 -222
  78. package/dist/collection/components/switch/switch.js +18 -12
  79. package/dist/collection/components/tab-bar/tab-bar.css +77 -48
  80. package/dist/collection/components/table/columns.js +1 -1
  81. package/dist/collection/components/table/selection.js +111 -0
  82. package/dist/collection/components/table/table-selection.js +125 -0
  83. package/dist/collection/components/table/table.css +125 -36
  84. package/dist/collection/components/table/table.js +212 -7
  85. package/dist/collection/style/functions.scss +3 -1
  86. package/dist/collection/style/internal/lime-theme.scss +30 -31
  87. package/dist/collection/style/internal/lime-typography.scss +55 -56
  88. package/dist/collection/style/internal/shared_input-select-picker.scss +1 -0
  89. package/dist/collection/style/internal/z-index.scss +2 -1
  90. package/dist/esm/checkbox.template-f429c5b6.js +39 -0
  91. package/dist/esm/{component-89e0ce26.js → component-19eb6e2b.js} +7 -5
  92. package/dist/esm/{component-2630c3d7.js → component-288691f3.js} +367 -235
  93. package/dist/esm/{component-d682c974.js → component-410aad5a.js} +44 -4
  94. package/dist/esm/{component-429e92ee.js → component-5b4ac85a.js} +213 -143
  95. package/dist/esm/{component-2eb4e07b.js → component-fffa3419.js} +191 -133
  96. package/dist/esm/{index-2316f345.js → index-4456d4ad.js} +23 -0
  97. package/dist/esm/lime-elements.js +3 -3
  98. package/dist/esm/limel-badge.entry.js +3 -3
  99. package/dist/esm/limel-banner.entry.js +1 -1
  100. package/dist/esm/limel-button-group.entry.js +2 -2
  101. package/dist/esm/limel-button.entry.js +2 -2
  102. package/dist/esm/limel-checkbox.entry.js +132 -87
  103. package/dist/esm/limel-chip-set.entry.js +234 -190
  104. package/dist/esm/limel-circular-progress.entry.js +2 -2
  105. package/dist/esm/limel-code-editor.entry.js +49 -22
  106. package/dist/esm/limel-collapsible-section.entry.js +1 -1
  107. package/dist/esm/limel-color-picker-palette_2.entry.js +1 -1
  108. package/dist/esm/limel-color-picker.entry.js +1 -1
  109. package/dist/esm/limel-config.entry.js +1 -1
  110. package/dist/esm/limel-date-picker.entry.js +5 -5
  111. package/dist/esm/limel-dialog.entry.js +8 -9
  112. package/dist/esm/limel-file.entry.js +5 -5
  113. package/dist/esm/limel-flatpickr-adapter.entry.js +1 -1
  114. package/dist/esm/limel-flex-container.entry.js +5 -1
  115. package/dist/esm/limel-form.entry.js +7550 -8997
  116. package/dist/esm/limel-grid.entry.js +1 -1
  117. package/dist/esm/limel-header.entry.js +1 -1
  118. package/dist/esm/limel-icon-button.entry.js +5 -5
  119. package/dist/esm/limel-icon.entry.js +1 -1
  120. package/dist/esm/limel-input-field.entry.js +6 -6
  121. package/dist/esm/limel-linear-progress.entry.js +4 -4
  122. package/dist/esm/limel-list_3.entry.js +134 -79
  123. package/dist/esm/limel-menu-list.entry.js +86 -70
  124. package/dist/esm/limel-menu.entry.js +1 -1
  125. package/dist/esm/limel-picker.entry.js +2 -2
  126. package/dist/esm/limel-popover-surface.entry.js +2 -2
  127. package/dist/esm/limel-progress-flow-item.entry.js +1 -1
  128. package/dist/esm/limel-progress-flow.entry.js +1 -1
  129. package/dist/esm/limel-select.entry.js +5 -5
  130. package/dist/esm/limel-slider.entry.js +34 -7
  131. package/dist/esm/limel-snackbar.entry.js +78 -72
  132. package/dist/esm/limel-spinner.entry.js +1 -1
  133. package/dist/esm/limel-switch.entry.js +497 -201
  134. package/dist/esm/limel-tab-bar.entry.js +262 -185
  135. package/dist/esm/limel-tab-panel.entry.js +1 -1
  136. package/dist/esm/limel-table.entry.js +363 -11
  137. package/dist/esm/limel-tooltip_2.entry.js +1 -1
  138. package/dist/esm/loader.js +3 -3
  139. package/dist/esm/polyfills/css-shim.js +1 -1
  140. package/dist/esm/{util-71a23335.js → util-f1bde91c.js} +1 -1
  141. package/dist/lime-elements/lime-elements.esm.js +1 -1
  142. package/dist/lime-elements/{p-a4c532a7.entry.js → p-00d485d8.entry.js} +1 -1
  143. package/dist/lime-elements/p-062a9599.entry.js +131 -0
  144. package/dist/lime-elements/{p-597cbe05.entry.js → p-0ea1cbf6.entry.js} +1 -1
  145. package/dist/lime-elements/p-1c284626.js +73 -0
  146. package/dist/lime-elements/{p-a2cf74c1.entry.js → p-255084bd.entry.js} +1 -1
  147. package/dist/lime-elements/{p-e881e98d.entry.js → p-2550ff27.entry.js} +1 -1
  148. package/dist/lime-elements/{p-31fecf5d.entry.js → p-3bef288b.entry.js} +1 -1
  149. package/dist/lime-elements/{p-58cbe99d.entry.js → p-3f440859.entry.js} +1 -1
  150. package/dist/lime-elements/{p-4b5af81b.entry.js → p-41ec08c9.entry.js} +1 -1
  151. package/dist/lime-elements/{p-92146da6.js → p-44f9b6d5.js} +0 -0
  152. package/dist/lime-elements/{p-1fb5340d.entry.js → p-45689f25.entry.js} +1 -1
  153. package/dist/lime-elements/p-47ef0ebb.entry.js +1 -0
  154. package/dist/lime-elements/{p-076bd4dc.js → p-48d4ef20.js} +3 -3
  155. package/dist/lime-elements/p-4e9869f4.entry.js +126 -0
  156. package/dist/lime-elements/{p-6003f817.entry.js → p-549190f6.entry.js} +1 -1
  157. package/dist/lime-elements/p-555f774c.entry.js +82 -0
  158. package/dist/lime-elements/p-63516991.entry.js +1 -0
  159. package/dist/lime-elements/{p-13f0e4f4.entry.js → p-687429fb.entry.js} +1 -1
  160. package/dist/lime-elements/p-6acee2e5.entry.js +73 -0
  161. package/dist/lime-elements/p-6fc9a0be.entry.js +59 -0
  162. package/dist/lime-elements/{p-64549ba6.entry.js → p-70a4d004.entry.js} +3 -3
  163. package/dist/lime-elements/{p-468e940e.entry.js → p-75846313.entry.js} +1 -1
  164. package/dist/lime-elements/p-779d1567.entry.js +1 -0
  165. package/dist/lime-elements/p-7d4eb67f.entry.js +1 -0
  166. package/dist/lime-elements/p-8777324f.entry.js +1 -0
  167. package/dist/lime-elements/{p-714fde78.entry.js → p-897a7f8a.entry.js} +1 -1
  168. package/dist/lime-elements/{p-fc30b8e3.entry.js → p-8a5ca741.entry.js} +1 -1
  169. package/dist/lime-elements/{p-8a2c1038.entry.js → p-9607b6f9.entry.js} +2 -2
  170. package/dist/lime-elements/p-9caf28bd.entry.js +1 -0
  171. package/dist/lime-elements/{p-152a6d5f.js → p-9faad6eb.js} +1 -1
  172. package/dist/lime-elements/{p-34c7872e.entry.js → p-a35e6b8a.entry.js} +1 -1
  173. package/dist/lime-elements/{p-041ae00c.entry.js → p-b808ba3d.entry.js} +1 -1
  174. package/dist/lime-elements/p-be2bd743.js +1 -0
  175. package/dist/lime-elements/p-be351178.entry.js +37 -0
  176. package/dist/lime-elements/p-c40f5030.entry.js +82 -0
  177. package/dist/lime-elements/p-c4e2eb42.entry.js +1 -0
  178. package/dist/lime-elements/{p-1876a96a.entry.js → p-c5168bda.entry.js} +1 -1
  179. package/dist/lime-elements/p-cbc43682.js +81 -0
  180. package/dist/lime-elements/{p-ace9affc.js → p-d0a7de87.js} +2 -2
  181. package/dist/lime-elements/{p-be56ffab.entry.js → p-d5f17adb.entry.js} +1 -1
  182. package/dist/lime-elements/p-d70f1c00.entry.js +59 -0
  183. package/dist/lime-elements/p-dbd61714.entry.js +1 -0
  184. package/dist/lime-elements/{p-8ad5e143.entry.js → p-dd62c71b.entry.js} +1 -1
  185. package/dist/lime-elements/p-dfba92de.js +126 -0
  186. package/dist/lime-elements/p-e55144ec.entry.js +1 -0
  187. package/dist/lime-elements/{p-dfe0a58b.entry.js → p-e6f39a71.entry.js} +1 -1
  188. package/dist/lime-elements/p-e8453bcb.entry.js +16 -0
  189. package/dist/lime-elements/p-f777d8a3.entry.js +82 -0
  190. package/dist/lime-elements/style/functions.scss +3 -1
  191. package/dist/lime-elements/style/internal/lime-theme.scss +30 -31
  192. package/dist/lime-elements/style/internal/lime-typography.scss +55 -56
  193. package/dist/lime-elements/style/internal/shared_input-select-picker.scss +1 -0
  194. package/dist/lime-elements/style/internal/z-index.scss +2 -1
  195. package/dist/types/components/badge/badge.d.ts +1 -1
  196. package/dist/types/components/flex-container/flex-container.d.ts +7 -0
  197. package/dist/types/components/switch/switch.d.ts +2 -2
  198. package/dist/types/components/table/columns.d.ts +7 -0
  199. package/dist/types/components/table/selection.d.ts +79 -0
  200. package/dist/types/components/table/table-selection.d.ts +57 -0
  201. package/dist/types/components/table/table.d.ts +39 -7
  202. package/dist/types/components/table/table.types.d.ts +13 -0
  203. package/dist/types/components.d.ts +33 -1
  204. package/dist/types/stencil-public-runtime.d.ts +6 -4
  205. package/package.json +19 -19
  206. package/dist/cjs/checkbox.template-50eb8b76.js +0 -39
  207. package/dist/esm/checkbox.template-50f7c07b.js +0 -37
  208. package/dist/lime-elements/p-0ce9165f.entry.js +0 -1
  209. package/dist/lime-elements/p-0fd208f3.entry.js +0 -82
  210. package/dist/lime-elements/p-143705b1.entry.js +0 -1
  211. package/dist/lime-elements/p-250f55be.js +0 -1
  212. package/dist/lime-elements/p-31299106.js +0 -126
  213. package/dist/lime-elements/p-4932c029.entry.js +0 -1
  214. package/dist/lime-elements/p-510bb5a4.entry.js +0 -1
  215. package/dist/lime-elements/p-6215e45e.entry.js +0 -37
  216. package/dist/lime-elements/p-668795a7.js +0 -73
  217. package/dist/lime-elements/p-6cfb45a1.entry.js +0 -1
  218. package/dist/lime-elements/p-7476efe0.entry.js +0 -1
  219. package/dist/lime-elements/p-902347b9.js +0 -81
  220. package/dist/lime-elements/p-90f3e17c.entry.js +0 -37
  221. package/dist/lime-elements/p-96e44a1e.entry.js +0 -82
  222. package/dist/lime-elements/p-a77cbb08.entry.js +0 -1
  223. package/dist/lime-elements/p-b5faa40d.entry.js +0 -59
  224. package/dist/lime-elements/p-bc0dcf01.entry.js +0 -73
  225. package/dist/lime-elements/p-c35874db.entry.js +0 -1
  226. package/dist/lime-elements/p-c8c8a946.entry.js +0 -59
  227. package/dist/lime-elements/p-d2c74396.entry.js +0 -1
  228. package/dist/lime-elements/p-d48ad9f7.entry.js +0 -126
  229. package/dist/lime-elements/p-d93a3b07.entry.js +0 -16
  230. package/dist/lime-elements/p-f2c706b8.entry.js +0 -131
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-2316f345.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-4456d4ad.js';
2
2
  import { d as dispatchResizeEvent } from './dispatch-resize-event-cd1d230c.js';
3
3
 
4
4
  const tabPanelCss = ":host(limel-tab-panel){display:block;height:100%}.tab-panel{height:100%;position:relative;display:flex;flex-direction:column}.tab-content{height:100%;flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;box-sizing:border-box}";
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, g as getElement } from './index-2316f345.js';
1
+ import { r as registerInstance, c as createEvent, h, g as getElement } from './index-4456d4ad.js';
2
2
  import { p as pickBy, n as negate, h as has } from './pickBy-8a849e46.js';
3
3
  import { j as isEqual } from './isEqual-4f22635f.js';
4
4
  import './isObject-c74e273c.js';
@@ -23876,7 +23876,242 @@ class ElementPool {
23876
23876
  }
23877
23877
  }
23878
23878
 
23879
- const tableCss = "@charset \"UTF-8\";.tabulator{position:relative;border:1px solid #999;background-color:#888;font-size:14px;text-align:left;overflow:hidden;-webkit-transform:translatez(0);-moz-transform:translatez(0);-ms-transform:translatez(0);-o-transform:translatez(0);transform:translatez(0)}.tabulator[tabulator-layout=fitDataFill] .tabulator-tableHolder .tabulator-table{min-width:100%}.tabulator[tabulator-layout=fitDataTable]{display:inline-block}.tabulator.tabulator-block-select{user-select:none}.tabulator .tabulator-header{position:relative;box-sizing:border-box;width:100%;border-bottom:1px solid #999;background-color:#e6e6e6;color:#555;font-weight:bold;white-space:nowrap;overflow:hidden;-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none}.tabulator .tabulator-header.tabulator-header-hidden{display:none}.tabulator .tabulator-header .tabulator-col{display:inline-block;position:relative;box-sizing:border-box;border-right:1px solid #aaa;background:#e6e6e6;text-align:left;vertical-align:bottom;overflow:hidden}.tabulator .tabulator-header .tabulator-col.tabulator-moving{position:absolute;border:1px solid #999;background:#cdcdcd;pointer-events:none}.tabulator .tabulator-header .tabulator-col .tabulator-col-content{box-sizing:border-box;position:relative;padding:4px}.tabulator .tabulator-header .tabulator-col .tabulator-col-content .tabulator-header-menu-button{padding:0 8px}.tabulator .tabulator-header .tabulator-col .tabulator-col-content .tabulator-header-menu-button:hover{cursor:pointer;opacity:0.6}.tabulator .tabulator-header .tabulator-col .tabulator-col-content .tabulator-col-title-holder{position:relative}.tabulator .tabulator-header .tabulator-col .tabulator-col-content .tabulator-col-title{box-sizing:border-box;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom}.tabulator .tabulator-header .tabulator-col .tabulator-col-content .tabulator-col-title .tabulator-title-editor{box-sizing:border-box;width:100%;border:1px solid #999;padding:1px;background:#fff}.tabulator .tabulator-header .tabulator-col .tabulator-col-content .tabulator-col-title .tabulator-header-menu-button+.tabulator-title-editor{width:calc(100% - 22px)}.tabulator .tabulator-header .tabulator-col .tabulator-col-content .tabulator-col-sorter{display:flex;align-items:center;position:absolute;top:0;bottom:0;right:4px}.tabulator .tabulator-header .tabulator-col .tabulator-col-content .tabulator-col-sorter .tabulator-arrow{width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #bbb}.tabulator .tabulator-header .tabulator-col.tabulator-col-group .tabulator-col-group-cols{position:relative;display:flex;border-top:1px solid #aaa;overflow:hidden;margin-right:-1px}.tabulator .tabulator-header .tabulator-col:first-child .tabulator-col-resize-handle.prev{display:none}.tabulator .tabulator-header .tabulator-col .tabulator-header-filter{position:relative;box-sizing:border-box;margin-top:2px;width:100%;text-align:center}.tabulator .tabulator-header .tabulator-col .tabulator-header-filter textarea{height:auto !important}.tabulator .tabulator-header .tabulator-col .tabulator-header-filter svg{margin-top:3px}.tabulator .tabulator-header .tabulator-col .tabulator-header-filter input::-ms-clear{width:0;height:0}.tabulator .tabulator-header .tabulator-col.tabulator-sortable .tabulator-col-title{padding-right:25px}.tabulator .tabulator-header .tabulator-col.tabulator-sortable:hover{cursor:pointer;background-color:#cdcdcd}.tabulator .tabulator-header .tabulator-col.tabulator-sortable[aria-sort=none] .tabulator-col-content .tabulator-col-sorter{color:#bbb}.tabulator .tabulator-header .tabulator-col.tabulator-sortable[aria-sort=none] .tabulator-col-content .tabulator-col-sorter .tabulator-arrow{border-top:none;border-bottom:6px solid #bbb}.tabulator .tabulator-header .tabulator-col.tabulator-sortable[aria-sort=asc] .tabulator-col-content .tabulator-col-sorter{color:#666}.tabulator .tabulator-header .tabulator-col.tabulator-sortable[aria-sort=asc] .tabulator-col-content .tabulator-col-sorter .tabulator-arrow{border-top:none;border-bottom:6px solid #666}.tabulator .tabulator-header .tabulator-col.tabulator-sortable[aria-sort=desc] .tabulator-col-content .tabulator-col-sorter{color:#666}.tabulator .tabulator-header .tabulator-col.tabulator-sortable[aria-sort=desc] .tabulator-col-content .tabulator-col-sorter .tabulator-arrow{border-bottom:none;border-top:6px solid #666;color:#666}.tabulator .tabulator-header .tabulator-col.tabulator-col-vertical .tabulator-col-content .tabulator-col-title{writing-mode:vertical-rl;text-orientation:mixed;display:flex;align-items:center;justify-content:center}.tabulator .tabulator-header .tabulator-col.tabulator-col-vertical.tabulator-col-vertical-flip .tabulator-col-title{transform:rotate(180deg)}.tabulator .tabulator-header .tabulator-col.tabulator-col-vertical.tabulator-sortable .tabulator-col-title{padding-right:0;padding-top:20px}.tabulator .tabulator-header .tabulator-col.tabulator-col-vertical.tabulator-sortable.tabulator-col-vertical-flip .tabulator-col-title{padding-right:0;padding-bottom:20px}.tabulator .tabulator-header .tabulator-col.tabulator-col-vertical.tabulator-sortable .tabulator-col-sorter{justify-content:center;left:0;right:0;top:4px;bottom:auto}.tabulator .tabulator-header .tabulator-frozen{display:inline-block;position:absolute;z-index:10}.tabulator .tabulator-header .tabulator-frozen.tabulator-frozen-left{border-right:2px solid #aaa}.tabulator .tabulator-header .tabulator-frozen.tabulator-frozen-right{border-left:2px solid #aaa}.tabulator .tabulator-header .tabulator-calcs-holder{box-sizing:border-box;min-width:600%;background:#f3f3f3 !important;border-top:1px solid #aaa;border-bottom:1px solid #aaa;overflow:hidden}.tabulator .tabulator-header .tabulator-calcs-holder .tabulator-row{background:#f3f3f3 !important}.tabulator .tabulator-header .tabulator-calcs-holder .tabulator-row .tabulator-col-resize-handle{display:none}.tabulator .tabulator-header .tabulator-frozen-rows-holder{min-width:600%}.tabulator .tabulator-header .tabulator-frozen-rows-holder:empty{display:none}.tabulator .tabulator-tableHolder{position:relative;width:100%;white-space:nowrap;overflow:auto;-webkit-overflow-scrolling:touch}.tabulator .tabulator-tableHolder:focus{outline:none}.tabulator .tabulator-tableHolder .tabulator-placeholder{box-sizing:border-box;display:flex;align-items:center;width:100%}.tabulator .tabulator-tableHolder .tabulator-placeholder[tabulator-render-mode=virtual]{min-height:100%;min-width:100%}.tabulator .tabulator-tableHolder .tabulator-placeholder span{display:inline-block;margin:0 auto;padding:10px;color:#ccc;font-weight:bold;font-size:20px}.tabulator .tabulator-tableHolder .tabulator-table{position:relative;display:inline-block;background-color:#fff;white-space:nowrap;overflow:visible;color:#333}.tabulator .tabulator-tableHolder .tabulator-table .tabulator-row.tabulator-calcs{font-weight:bold;background:#e2e2e2 !important}.tabulator .tabulator-tableHolder .tabulator-table .tabulator-row.tabulator-calcs.tabulator-calcs-top{border-bottom:2px solid #aaa}.tabulator .tabulator-tableHolder .tabulator-table .tabulator-row.tabulator-calcs.tabulator-calcs-bottom{border-top:2px solid #aaa}.tabulator .tabulator-footer{padding:5px 10px;border-top:1px solid #999;background-color:#e6e6e6;text-align:right;color:#555;font-weight:bold;white-space:nowrap;user-select:none;-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none}.tabulator .tabulator-footer .tabulator-calcs-holder{box-sizing:border-box;width:calc(100% + 20px);margin:-5px -10px 5px -10px;text-align:left;background:#f3f3f3 !important;border-bottom:1px solid #aaa;border-top:1px solid #aaa;overflow:hidden}.tabulator .tabulator-footer .tabulator-calcs-holder .tabulator-row{background:#f3f3f3 !important}.tabulator .tabulator-footer .tabulator-calcs-holder .tabulator-row .tabulator-col-resize-handle{display:none}.tabulator .tabulator-footer .tabulator-calcs-holder:only-child{margin-bottom:-5px;border-bottom:none}.tabulator .tabulator-footer .tabulator-paginator{color:#555;font-family:inherit;font-weight:inherit;font-size:inherit}.tabulator .tabulator-footer .tabulator-page-size{display:inline-block;margin:0 5px;padding:2px 5px;border:1px solid #aaa;border-radius:3px}.tabulator .tabulator-footer .tabulator-pages{margin:0 7px}.tabulator .tabulator-footer .tabulator-page{display:inline-block;margin:0 2px;padding:2px 5px;border:1px solid #aaa;border-radius:3px;background:rgba(255, 255, 255, 0.2)}.tabulator .tabulator-footer .tabulator-page.active{color:#d00}.tabulator .tabulator-footer .tabulator-page:disabled{opacity:0.5}.tabulator .tabulator-footer .tabulator-page:not(.disabled):hover{cursor:pointer;background:rgba(0, 0, 0, 0.2);color:#fff}.tabulator .tabulator-col-resize-handle{position:absolute;right:0;top:0;bottom:0;width:5px}.tabulator .tabulator-col-resize-handle.prev{left:0;right:auto}.tabulator .tabulator-col-resize-handle:hover{cursor:ew-resize}.tabulator .tabulator-loader{position:absolute;display:flex;align-items:center;top:0;left:0;z-index:100;height:100%;width:100%;background:rgba(0, 0, 0, 0.4);text-align:center}.tabulator .tabulator-loader .tabulator-loader-msg{display:inline-block;margin:0 auto;padding:10px 20px;border-radius:10px;background:#fff;font-weight:bold;font-size:16px}.tabulator .tabulator-loader .tabulator-loader-msg.tabulator-loading{border:4px solid #333;color:#000}.tabulator .tabulator-loader .tabulator-loader-msg.tabulator-error{border:4px solid #D00;color:#590000}.tabulator-row{position:relative;box-sizing:border-box;min-height:22px;background-color:#fff}.tabulator-row.tabulator-row-even{background-color:#EFEFEF}.tabulator-row.tabulator-selectable:hover{background-color:#bbb;cursor:pointer}.tabulator-row.tabulator-selected{background-color:#9ABCEA}.tabulator-row.tabulator-selected:hover{background-color:#769BCC;cursor:pointer}.tabulator-row.tabulator-row-moving{border:1px solid #000;background:#fff}.tabulator-row.tabulator-moving{position:absolute;border-top:1px solid #aaa;border-bottom:1px solid #aaa;pointer-events:none;z-index:15}.tabulator-row .tabulator-row-resize-handle{position:absolute;right:0;bottom:0;left:0;height:5px}.tabulator-row .tabulator-row-resize-handle.prev{top:0;bottom:auto}.tabulator-row .tabulator-row-resize-handle:hover{cursor:ns-resize}.tabulator-row .tabulator-frozen{display:inline-block;position:absolute;background-color:inherit;z-index:10}.tabulator-row .tabulator-frozen.tabulator-frozen-left{border-right:2px solid #aaa}.tabulator-row .tabulator-frozen.tabulator-frozen-right{border-left:2px solid #aaa}.tabulator-row .tabulator-responsive-collapse{box-sizing:border-box;padding:5px;border-top:1px solid #aaa;border-bottom:1px solid #aaa}.tabulator-row .tabulator-responsive-collapse:empty{display:none}.tabulator-row .tabulator-responsive-collapse table{font-size:14px}.tabulator-row .tabulator-responsive-collapse table tr td{position:relative}.tabulator-row .tabulator-responsive-collapse table tr td:first-of-type{padding-right:10px}.tabulator-row .tabulator-cell{display:inline-block;position:relative;box-sizing:border-box;padding:4px;border-right:1px solid #aaa;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tabulator-row .tabulator-cell.tabulator-editing{border:1px solid #1D68CD;outline:none;padding:0}.tabulator-row .tabulator-cell.tabulator-editing input,.tabulator-row .tabulator-cell.tabulator-editing select{border:1px;background:transparent}.tabulator-row .tabulator-cell.tabulator-validation-fail{border:1px solid #dd0000}.tabulator-row .tabulator-cell.tabulator-validation-fail input,.tabulator-row .tabulator-cell.tabulator-validation-fail select{border:1px;background:transparent;color:#dd0000}.tabulator-row .tabulator-cell:first-child .tabulator-col-resize-handle.prev{display:none}.tabulator-row .tabulator-cell.tabulator-row-handle{display:inline-flex;align-items:center;justify-content:center;-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none}.tabulator-row .tabulator-cell.tabulator-row-handle .tabulator-row-handle-box{width:80%}.tabulator-row .tabulator-cell.tabulator-row-handle .tabulator-row-handle-box .tabulator-row-handle-bar{width:100%;height:3px;margin-top:2px;background:#666}.tabulator-row .tabulator-cell .tabulator-data-tree-branch{display:inline-block;vertical-align:middle;height:9px;width:7px;margin-top:-9px;margin-right:5px;border-bottom-left-radius:1px;border-left:2px solid #aaa;border-bottom:2px solid #aaa}.tabulator-row .tabulator-cell .tabulator-data-tree-control{display:inline-flex;justify-content:center;align-items:center;vertical-align:middle;height:11px;width:11px;margin-right:5px;border:1px solid #333;border-radius:2px;background:rgba(0, 0, 0, 0.1);overflow:hidden}.tabulator-row .tabulator-cell .tabulator-data-tree-control:hover{cursor:pointer;background:rgba(0, 0, 0, 0.2)}.tabulator-row .tabulator-cell .tabulator-data-tree-control .tabulator-data-tree-control-collapse{display:inline-block;position:relative;height:7px;width:1px;background:transparent}.tabulator-row .tabulator-cell .tabulator-data-tree-control .tabulator-data-tree-control-collapse:after{position:absolute;content:\"\";left:-3px;top:3px;height:1px;width:7px;background:#333}.tabulator-row .tabulator-cell .tabulator-data-tree-control .tabulator-data-tree-control-expand{display:inline-block;position:relative;height:7px;width:1px;background:#333}.tabulator-row .tabulator-cell .tabulator-data-tree-control .tabulator-data-tree-control-expand:after{position:absolute;content:\"\";left:-3px;top:3px;height:1px;width:7px;background:#333}.tabulator-row .tabulator-cell .tabulator-responsive-collapse-toggle{display:inline-flex;align-items:center;justify-content:center;-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none;height:15px;width:15px;border-radius:20px;background:#666;color:#fff;font-weight:bold;font-size:1.1em}.tabulator-row .tabulator-cell .tabulator-responsive-collapse-toggle:hover{opacity:0.7}.tabulator-row .tabulator-cell .tabulator-responsive-collapse-toggle.open .tabulator-responsive-collapse-toggle-close{display:initial}.tabulator-row .tabulator-cell .tabulator-responsive-collapse-toggle.open .tabulator-responsive-collapse-toggle-open{display:none}.tabulator-row .tabulator-cell .tabulator-responsive-collapse-toggle .tabulator-responsive-collapse-toggle-close{display:none}.tabulator-row .tabulator-cell .tabulator-traffic-light{display:inline-block;height:14px;width:14px;border-radius:14px}.tabulator-row.tabulator-group{box-sizing:border-box;border-bottom:1px solid #999;border-right:1px solid #aaa;border-top:1px solid #999;padding:5px;padding-left:10px;background:#ccc;font-weight:bold;min-width:100%}.tabulator-row.tabulator-group:hover{cursor:pointer;background-color:rgba(0, 0, 0, 0.1)}.tabulator-row.tabulator-group.tabulator-group-visible .tabulator-arrow{margin-right:10px;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #666;border-bottom:0}.tabulator-row.tabulator-group.tabulator-group-level-1{padding-left:30px}.tabulator-row.tabulator-group.tabulator-group-level-2{padding-left:50px}.tabulator-row.tabulator-group.tabulator-group-level-3{padding-left:70px}.tabulator-row.tabulator-group.tabulator-group-level-4{padding-left:90px}.tabulator-row.tabulator-group.tabulator-group-level-5{padding-left:110px}.tabulator-row.tabulator-group .tabulator-group-toggle{display:inline-block}.tabulator-row.tabulator-group .tabulator-arrow{display:inline-block;width:0;height:0;margin-right:16px;border-top:6px solid transparent;border-bottom:6px solid transparent;border-right:0;border-left:6px solid #666;vertical-align:middle}.tabulator-row.tabulator-group span{margin-left:10px;color:#d00}.tabulator-menu{position:absolute;display:inline-block;box-sizing:border-box;background:#fff;border:1px solid #aaa;box-shadow:0 0 5px 0 rgba(0, 0, 0, 0.2);font-size:14px;overflow-y:auto;-webkit-overflow-scrolling:touch;z-index:10000}.tabulator-menu .tabulator-menu-item{position:relative;box-sizing:border-box;padding:5px 10px;user-select:none}.tabulator-menu .tabulator-menu-item.tabulator-menu-item-disabled{opacity:0.5}.tabulator-menu .tabulator-menu-item:not(.tabulator-menu-item-disabled):hover{cursor:pointer;background:#EFEFEF}.tabulator-menu .tabulator-menu-item.tabulator-menu-item-submenu{padding-right:25px}.tabulator-menu .tabulator-menu-item.tabulator-menu-item-submenu::after{display:inline-block;position:absolute;top:calc(5px + .4em);right:10px;height:7px;width:7px;content:\"\";border-width:1px 1px 0 0;border-style:solid;border-color:#aaa;vertical-align:top;transform:rotate(45deg)}.tabulator-menu .tabulator-menu-separator{border-top:1px solid #aaa}.tabulator-edit-select-list{position:absolute;display:inline-block;box-sizing:border-box;max-height:200px;background:#fff;border:1px solid #aaa;font-size:14px;overflow-y:auto;-webkit-overflow-scrolling:touch;z-index:10000}.tabulator-edit-select-list .tabulator-edit-select-list-item{padding:4px;color:#333}.tabulator-edit-select-list .tabulator-edit-select-list-item.active{color:#fff;background:#1D68CD}.tabulator-edit-select-list .tabulator-edit-select-list-item.active.focused{outline:1px solid rgba(255, 255, 255, 0.5)}.tabulator-edit-select-list .tabulator-edit-select-list-item.focused{outline:1px solid #1D68CD}.tabulator-edit-select-list .tabulator-edit-select-list-item:hover{cursor:pointer;color:#fff;background:#1D68CD}.tabulator-edit-select-list .tabulator-edit-select-list-notice{padding:4px;color:#333;text-align:center}.tabulator-edit-select-list .tabulator-edit-select-list-group{border-bottom:1px solid #aaa;padding:4px;padding-top:6px;color:#333;font-weight:bold}.tabulator.tabulator-ltr{direction:ltr}.tabulator.tabulator-rtl{text-align:initial;direction:rtl}.tabulator.tabulator-rtl .tabulator-header .tabulator-col{text-align:initial;border-left:1px solid #aaa;border-right:initial}.tabulator.tabulator-rtl .tabulator-header .tabulator-col.tabulator-col-group .tabulator-col-group-cols{margin-right:initial;margin-left:-1px}.tabulator.tabulator-rtl .tabulator-header .tabulator-col.tabulator-sortable .tabulator-col-title{padding-right:0;padding-left:25px}.tabulator.tabulator-rtl .tabulator-header .tabulator-col .tabulator-col-content .tabulator-arrow{left:8px;right:initial}.tabulator.tabulator-rtl .tabulator-row .tabulator-cell{border-right:initial;border-left:1px solid #aaa}.tabulator.tabulator-rtl .tabulator-row .tabulator-cell .tabulator-data-tree-branch{margin-right:initial;margin-left:5px;border-bottom-left-radius:initial;border-bottom-right-radius:1px;border-left:initial;border-right:2px solid #aaa}.tabulator.tabulator-rtl .tabulator-row .tabulator-cell .tabulator-data-tree-control{margin-right:initial;margin-left:5px}.tabulator.tabulator-rtl .tabulator-col-resize-handle{position:absolute;left:0;right:auto}.tabulator.tabulator-rtl .tabulator-col-resize-handle.prev{right:0;left:auto}.tabulator-print-fullscreen{position:absolute;top:0;bottom:0;left:0;right:0;z-index:10000}body.tabulator-print-fullscreen-hide>*:not(.tabulator-print-fullscreen){display:none !important}.tabulator-print-table{border-collapse:collapse}.tabulator-print-table .tabulator-data-tree-branch{display:inline-block;vertical-align:middle;height:9px;width:7px;margin-top:-9px;margin-right:5px;border-bottom-left-radius:1px;border-left:2px solid #aaa;border-bottom:2px solid #aaa}.tabulator-print-table .tabulator-print-table-group{box-sizing:border-box;border-bottom:1px solid #999;border-right:1px solid #aaa;border-top:1px solid #999;padding:5px;padding-left:10px;background:#ccc;font-weight:bold;min-width:100%}.tabulator-print-table .tabulator-print-table-group:hover{cursor:pointer;background-color:rgba(0, 0, 0, 0.1)}.tabulator-print-table .tabulator-print-table-group.tabulator-group-visible .tabulator-arrow{margin-right:10px;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #666;border-bottom:0}.tabulator-print-table .tabulator-print-table-group.tabulator-group-level-1 td{padding-left:30px !important}.tabulator-print-table .tabulator-print-table-group.tabulator-group-level-2 td{padding-left:50px !important}.tabulator-print-table .tabulator-print-table-group.tabulator-group-level-3 td{padding-left:70px !important}.tabulator-print-table .tabulator-print-table-group.tabulator-group-level-4 td{padding-left:90px !important}.tabulator-print-table .tabulator-print-table-group.tabulator-group-level-5 td{padding-left:110px !important}.tabulator-print-table .tabulator-print-table-group .tabulator-group-toggle{display:inline-block}.tabulator-print-table .tabulator-print-table-group .tabulator-arrow{display:inline-block;width:0;height:0;margin-right:16px;border-top:6px solid transparent;border-bottom:6px solid transparent;border-right:0;border-left:6px solid #666;vertical-align:middle}.tabulator-print-table .tabulator-print-table-group span{margin-left:10px;color:#d00}.tabulator-print-table .tabulator-data-tree-control{display:inline-flex;justify-content:center;align-items:center;vertical-align:middle;height:11px;width:11px;margin-right:5px;border:1px solid #333;border-radius:2px;background:rgba(0, 0, 0, 0.1);overflow:hidden}.tabulator-print-table .tabulator-data-tree-control:hover{cursor:pointer;background:rgba(0, 0, 0, 0.2)}.tabulator-print-table .tabulator-data-tree-control .tabulator-data-tree-control-collapse{display:inline-block;position:relative;height:7px;width:1px;background:transparent}.tabulator-print-table .tabulator-data-tree-control .tabulator-data-tree-control-collapse:after{position:absolute;content:\"\";left:-3px;top:3px;height:1px;width:7px;background:#333}.tabulator-print-table .tabulator-data-tree-control .tabulator-data-tree-control-expand{display:inline-block;position:relative;height:7px;width:1px;background:#333}.tabulator-print-table .tabulator-data-tree-control .tabulator-data-tree-control-expand:after{position:absolute;content:\"\";left:-3px;top:3px;height:1px;width:7px;background:#333}.tabulator-col-sorter{right:1rem !important}.tabulator-arrow{position:absolute;transition:border 0.2s ease;top:0.25rem;cursor:pointer}[aria-sort=none] .tabulator-arrow{border-bottom-color:rgb(var(--contrast-800)) !important}[aria-sort=desc] .tabulator-arrow{border-top-color:rgb(var(--color-teal-light)) !important}[aria-sort=asc] .tabulator-arrow{border-bottom-color:rgb(var(--color-teal-light)) !important}.tabulator-arrow:before,.tabulator-arrow:after{display:block;content:\"\";position:absolute;bottom:0}.tabulator-arrow:before{background-color:rgb(var(--contrast-500));width:0.5rem;height:0.5rem;transform:rotate(45deg);left:-0.25rem;top:0.25rem}.tabulator-arrow:after{width:0.125rem;background-color:rgb(var(--contrast-800));height:0.5625rem;top:0.125rem;left:-0.0625rem}[aria-sort=desc] .tabulator-arrow{top:0.625rem}[aria-sort=desc] .tabulator-arrow:before{top:-0.75rem}[aria-sort=desc] .tabulator-arrow:after{top:-0.6875rem}[aria-sort=desc] .tabulator-arrow:after,[aria-sort=asc] .tabulator-arrow:after{background-color:rgb(var(--color-teal-light))}@keyframes indicate-sortable-column{0%,100%{transform:translate3d(0, 0, 0)}30%{transform:translate3d(0, -0.0875rem, 0)}60%{transform:translate3d(0, 0.0875rem, 0)}}.tabulator-col.tabulator-sortable:hover .tabulator-arrow{animation:indicate-sortable-column 0.5s ease}.tabulator .tabulator-footer{transition:transform 0.5s ease-out, opacity 0.35s ease}.tabulator .tabulator-footer .tabulator-paginator{display:grid;grid-auto-flow:column;justify-content:end}.tabulator .tabulator-footer .tabulator-paginator .tabulator-pages{margin:0 0.5rem}.tabulator .tabulator-footer .tabulator-paginator .tabulator-pages .tabulator-page{margin:0 0rem}.tabulator .tabulator-footer .tabulator-paginator .tabulator-page{position:relative;height:1.75rem;min-width:1.75rem;padding:0 0.5rem;margin:0;border:none;border-radius:2.5rem;color:#303042;background-color:transparent}.tabulator .tabulator-footer .tabulator-paginator .tabulator-page:not([disabled]){transition:background-color 0.2s ease, box-shadow 0.2s ease, transform 0.1s ease-out}.tabulator .tabulator-footer .tabulator-paginator .tabulator-page:not([disabled]):hover{box-shadow:var(--button-shadow-hovered)}.tabulator .tabulator-footer .tabulator-paginator .tabulator-page:not([disabled]):active{box-shadow:var(--button-shadow-pressed);transform:translate3d(0, 0.08rem, 0)}.tabulator .tabulator-footer .tabulator-paginator .tabulator-page:hover{color:#303042;background-color:rgb(var(--contrast-200))}.tabulator .tabulator-footer .tabulator-paginator .tabulator-page.active{box-shadow:var(--button-shadow-inset);background-color:#fff}.tabulator .tabulator-footer .tabulator-paginator .tabulator-page:disabled{cursor:not-allowed}.tabulator .tabulator-footer .tabulator-paginator .tabulator-page:disabled:hover{background-color:transparent}.tabulator:not(.has-pagination):not(.has-aggregation) .tabulator-tableHolder{height:calc(100% - 2.125rem) !important;max-height:calc(100% - 2.125rem) !important}.tabulator:not(.has-pagination).has-aggregation .tabulator-tableHolder{height:calc( 100% - ( 2.125rem + 2.25rem ) ) !important;max-height:calc( 100% - ( 2.125rem + 2.25rem ) ) !important}.tabulator:not(.has-pagination) .tabulator-footer{pointer-events:none}.tabulator:not(.has-pagination) .tabulator-footer .tabulator-paginator{visibility:hidden;opacity:0;transform:translateY(2.5rem)}.tabulator-page[data-page=first],.tabulator-page[data-page=prev],.tabulator-page[data-page=next],.tabulator-page[data-page=last]{font-size:0;color:transparent !important}.tabulator-page[data-page=first]:after,.tabulator-page[data-page=prev]:after,.tabulator-page[data-page=next]:after,.tabulator-page[data-page=last]:after{transition:transform 0.2s ease;display:block;opacity:0.7;position:absolute;top:0.125rem;right:0.125rem;bottom:0.125rem;left:0.125rem}.tabulator-page[data-page=prev]:after,.tabulator-page[data-page=next]:after{content:url(\"data:image/svg+xml; utf8, <svg xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2' clip-rule='evenodd' viewBox='0 0 100 100'><defs/><path d='M68.714 50L37.286 70V30l31.428 20z'/></svg>\")}.tabulator-page[data-page=first]:after,.tabulator-page[data-page=last]:after{content:url(\"data:image/svg+xml; utf8, <svg xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2' clip-rule='evenodd' viewBox='0 0 100 100'><defs/><path d='M60.714 50L29.286 70V30l31.428 20zM64.714 30h6v40h-6z'/></svg>\")}.tabulator-page[data-page=first]:after,.tabulator-page[data-page=prev]:after{transform:rotateZ(180deg)}.tabulator-page[data-page=next]:not([disabled]):hover:after,.tabulator-page[data-page=last]:not([disabled]):hover:after{transform:translate3d(0.09375rem, 0, 0)}.tabulator-page[data-page=first]:not([disabled]):hover:after,.tabulator-page[data-page=prev]:not([disabled]):hover:after{transform:translate3d(-0.09375rem, 0, 0) rotateZ(180deg)}@keyframes fade-in-tabulator-loader{0%{background:transparent}100%{background:rgba(var(--contrast-1400), 0.4)}}@keyframes spin-tabulator-loader{to{transform:rotate(360deg)}}.tabulator .tabulator-loader{animation:fade-in-tabulator-loader 0.5s ease 0.5s forwards;animation-iteration-count:1;cursor:progress;background:transparent}.tabulator .tabulator-loader .tabulator-loader-msg{animation:spin-tabulator-loader 0.4s linear infinite;color:transparent;font-size:0;border-radius:50%;border:0.1875rem solid rgb(var(--lime-brand-color-flexible-turquoise)) !important;border-top-color:transparent !important;width:1.25rem;height:1.25rem;background-color:transparent !important;padding:0}:host(.has-interactive-rows) .tabulator-row.tabulator-selectable{transition:background-color 0.2s ease, box-shadow 0.2s ease, transform 0.1s ease-out}:host(.has-interactive-rows) .tabulator-row.tabulator-selectable:hover{box-shadow:var(--button-shadow-hovered)}:host(.has-interactive-rows) .tabulator-row.tabulator-selectable:active{box-shadow:var(--button-shadow-pressed);transform:translate3d(0, 0.08rem, 0)}:host(.has-interactive-rows) .tabulator-row.tabulator-selectable:hover{z-index:1}:host(.has-interactive-rows) .tabulator-row.tabulator-selectable:not(.active):hover{background-color:rgb(var(--contrast-100))}:host(.has-low-density) #tabulator-table{width:max-content;max-width:100%;margin:auto}:host(.has-low-density) .tabulator-table{background-color:transparent}:host(.has-low-density) .tabulator-headers{padding:0 0.5rem}:host(.has-low-density) .tabulator-header{background-color:transparent}:host(.has-low-density) .tabulator-header .tabulator-col-content{padding-left:0.5rem}:host(.has-low-density) .tabulator-col:first-child{border-radius:0.375rem 0 0 0.375rem}:host(.has-low-density) .tabulator-col:last-child{border-radius:0 0.375rem 0.375rem 0}:host(.has-low-density) .tabulator-row{width:calc( 100% - 1rem );margin-right:auto;margin-left:auto;border-radius:0.5rem}:host(.has-low-density) .tabulator-row:not(.tabulator-calcs-bottom){margin-bottom:0.25rem}:host(.has-low-density) .tabulator-row:not(.tabulator-calcs-bottom):first-child{margin-top:0.75rem}:host(.has-low-density) .tabulator-row:not(.tabulator-calcs-bottom) .tabulator-cell{height:2.75rem !important;padding-left:0.75rem;padding-right:0.5rem}:host(.has-low-density) .tabulator-row:not(.tabulator-calcs-bottom) .tabulator-cell:first-child{border-radius:0.5rem 0 0 0.5rem}:host(.has-low-density) .tabulator-row:not(.tabulator-calcs-bottom) .tabulator-cell:last-child{border-radius:0 0.5rem 0.5rem 0}.lime-col-title__custom-component{width:100%;display:flex;align-items:center;margin-right:1.25rem}.title-component-text{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;flex-grow:1;flex-shrink:1;min-width:0}.title-component-slot{flex-shrink:0}@keyframes detach-a-column-header{0%{transform:rotate(0deg)}100%{transform:rotate(-2deg)}}.tabulator.has-movable-columns .tabulator-header{overflow-y:visible}.tabulator.has-movable-columns .tabulator-header .tabulator-col{cursor:move !important}.tabulator.has-movable-columns .tabulator-header .tabulator-col.tabulator-sortable.tabulator-moving{animation:detach-a-column-header 0.2s ease forwards;opacity:0.9;border:none;border-radius:0.25rem;background-color:rgb(var(--contrast-100));box-shadow:var(--shadow-depth-16)}.tabulator.has-movable-columns .tabulator-header .tabulator-col.tabulator-sortable.tabulator-moving:hover{background-color:rgb(var(--contrast-100))}.tabulator.has-movable-columns .tabulator-header .tabulator-col.tabulator-sortable.tabulator-moving .tabulator-arrow:before{background-color:rgb(var(--contrast-100))}:host{display:block}#tabulator-container{position:relative}#tabulator-container,#tabulator-table{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto, sans-serif;font-family:var(--mdc-typography-font-family, Roboto, sans-serif);height:100%;width:100%;background-color:transparent;border:none}.tabulator .tabulator-header{border-bottom:0;background-color:rgb(var(--contrast-500))}.tabulator .tabulator-header .tabulator-col{transition:background-color 0.2s ease;background-color:rgb(var(--contrast-500));border-right-color:rgb(var(--contrast-200))}.tabulator .tabulator-header .tabulator-col .tabulator-col-content{padding-top:0.5rem;padding-bottom:0.5rem}.tabulator .tabulator-header .tabulator-col.tabulator-sortable:hover{background-color:rgb(var(--contrast-400))}.tabulator .tabulator-header .tabulator-col-title{font-weight:500;padding-left:0.125rem}.tabulator .tabulator-footer{background-color:rgb(var(--contrast-500));border:none}.tabulator .tabulator-footer .tabulator-calcs-holder{border-color:rgb(var(--contrast-600))}.tabulator-row.tabulator-selectable{transition:background-color 0.2s ease}.tabulator-row.tabulator-selectable:not(.active):hover{background-color:rgb(var(--contrast-500))}.tabulator-row.tabulator-row-odd{background-color:rgb(var(--contrast-200))}.tabulator-row.tabulator-row-even{background-color:rgb(var(--contrast-100))}.tabulator-row.active,.tabulator-row.active:hover{background-color:rgba(var(--color-teal-light), 0.16)}.tabulator-row .tabulator-cell{border-right:transparent;padding:0.5rem;display:inline-flex;align-items:center}.tabulator-row .tabulator-cell[style*=\"text-align: right;\"]{justify-content:flex-end}.tabulator-row .tabulator-cell[style*=\"text-align: center;\"]{justify-content:center}.tabulator-col,.tabulator-cell{max-width:37.5rem;font-size:0.8125rem}#tabulator-loader,#tabulator-empty-text{position:absolute;width:100%;height:100%;z-index:1;display:flex;align-items:center;justify-content:center}#tabulator-loader{background-color:rgba(var(--contrast-100), 0.6);cursor:wait}#tabulator-empty-text{color:rgb(var(--contrast-800));font-weight:bold;font-size:1.25rem;pointer-events:none}";
23879
+ /**
23880
+ * Contains a set of selected data objects with methods for adding and removing
23881
+ * items to the selection by referring to them by their index/position.
23882
+ * Maintains a memory of the last toggled item which can be used to select or
23883
+ * deselect a range of items between the last toggled item and a given item.
23884
+ */
23885
+ class Selection {
23886
+ /**
23887
+ * Creates an instance of the Selection class.
23888
+ * The provided function `getDataByIndex` is used to provide data for the
23889
+ * selected items when selection is toggled by using the item index,
23890
+ * which can be the row position in a table.
23891
+ *
23892
+ * @param {Function} getDataByIndex A function that returns the data at the given index
23893
+ */
23894
+ constructor(getDataByIndex) {
23895
+ this.getDataByIndex = getDataByIndex;
23896
+ this.toggleRange = (fromIndex, toIndex) => {
23897
+ const select = !this.selectedItems.has(this.getDataByIndex(toIndex));
23898
+ const lowerBound = Math.min(fromIndex, toIndex);
23899
+ const upperBound = Math.max(fromIndex, toIndex);
23900
+ const updatedIndexes = [];
23901
+ const updatedItems = [];
23902
+ for (let index = lowerBound; index <= upperBound; index++) {
23903
+ const data = this.getDataByIndex(index);
23904
+ if (!data) {
23905
+ continue;
23906
+ }
23907
+ const isSelected = this.selectedItems.has(data);
23908
+ if (isSelected === select) {
23909
+ continue;
23910
+ }
23911
+ if (select) {
23912
+ this.selectedItems.add(data);
23913
+ }
23914
+ else {
23915
+ this.selectedItems.delete(data);
23916
+ }
23917
+ updatedIndexes.push(index);
23918
+ updatedItems.push(data);
23919
+ }
23920
+ this.lastToggledIndex = toIndex;
23921
+ return {
23922
+ selected: select,
23923
+ items: updatedItems,
23924
+ indexes: updatedIndexes,
23925
+ };
23926
+ };
23927
+ this.clear();
23928
+ }
23929
+ /**
23930
+ * @returns {number} The size of the selection
23931
+ */
23932
+ get size() {
23933
+ return this.selectedItems.size;
23934
+ }
23935
+ /**
23936
+ * @returns {any[]} The selected items
23937
+ */
23938
+ get items() {
23939
+ return Array.from(this.selectedItems);
23940
+ }
23941
+ /**
23942
+ * @param {any[]} items The selected items
23943
+ */
23944
+ set items(items) {
23945
+ this.selectedItems = new Set(items);
23946
+ this.lastToggledIndex = -1;
23947
+ }
23948
+ /**
23949
+ * Checks whether the given item exist in the selection
23950
+ *
23951
+ * @param {any} data The data to look up
23952
+ * @returns {boolean} `true` if the given data exist in the selection, otherwise `false`
23953
+ */
23954
+ has(data) {
23955
+ return this.selectedItems.has(data);
23956
+ }
23957
+ /**
23958
+ * Toggles the item at the given index in the selection
23959
+ *
23960
+ * @param {number} index The index of the item to toggle
23961
+ * @returns {SelectionChangeSet} The changes made to the selection
23962
+ */
23963
+ toggleSelection(index) {
23964
+ return this.toggleRange(index, index);
23965
+ }
23966
+ /**
23967
+ * Toggles the items from the last toggled index to the given index in the selection.
23968
+ * The toggled items will be toggled as the item at the given index no matter
23969
+ * their current state in the selection.
23970
+ * Initially, when no last toggled index exist, this function behaves like
23971
+ * `toggleSelection`.
23972
+ *
23973
+ * @param {number} index The index of the item to toggle
23974
+ * @returns {SelectionChangeSet} The changes made to the selection
23975
+ */
23976
+ toggleSelectionFromLastIndex(index) {
23977
+ if (this.lastToggledIndex < 0) {
23978
+ return this.toggleSelection(index);
23979
+ }
23980
+ return this.toggleRange(this.lastToggledIndex, index);
23981
+ }
23982
+ /**
23983
+ * Clears the current selection and resets last toggled index
23984
+ */
23985
+ clear() {
23986
+ this.selectedItems = new Set();
23987
+ this.lastToggledIndex = -1;
23988
+ }
23989
+ }
23990
+
23991
+ const LIMEL_CHECKBOX = 'limel-checkbox';
23992
+ /**
23993
+ * Provides row selection to Tabulator with shift-click support for range selections
23994
+ */
23995
+ class TableSelection {
23996
+ /**
23997
+ * Creates an instance of the TableSelection class
23998
+ *
23999
+ * @param {Function} getTable Function that returns the Tabulator instance
24000
+ * @param {ElementPool} pool The element pool used to cache the checkbox components
24001
+ * @param {EventEmitter<object[]>} selectEvent The event emitter to use when checkboxes are toggled
24002
+ */
24003
+ constructor(getTable, pool, selectEvent) {
24004
+ this.getTable = getTable;
24005
+ this.pool = pool;
24006
+ this.selectEvent = selectEvent;
24007
+ /**
24008
+ * Tabulator cell click handler that updates the selection for the clicked
24009
+ * row and toggles the selection from the last clicked row if the shift key
24010
+ * is pressed down.
24011
+ *
24012
+ * @param {PointerEvent} ev The pointer event
24013
+ * @param {Tabulator.CellComponent} cell The clicked cell component
24014
+ */
24015
+ this.rowSelectorCellClick = (ev, cell) => {
24016
+ ev.stopPropagation();
24017
+ ev.preventDefault();
24018
+ const clickedRow = cell.getRow();
24019
+ const rowPosition = clickedRow.getPosition(true);
24020
+ if (ev.shiftKey) {
24021
+ this.updateRowSelectors(this.selection.toggleSelectionFromLastIndex(rowPosition));
24022
+ }
24023
+ else {
24024
+ this.updateRowSelectors(this.selection.toggleSelection(rowPosition));
24025
+ }
24026
+ this.selectEvent.emit(this.selection.items);
24027
+ };
24028
+ this.updateRowSelectors = (changeSet) => {
24029
+ changeSet.indexes
24030
+ .map(this.getRowByIndex)
24031
+ .forEach((row) => this.updateRowSelector(row, changeSet.selected));
24032
+ };
24033
+ this.updateRowSelector = (row, checked) => {
24034
+ const cell = row.getCells()[0];
24035
+ if (cell) {
24036
+ const checkBox = cell.getElement().querySelector(LIMEL_CHECKBOX);
24037
+ checkBox.checked = checked;
24038
+ }
24039
+ };
24040
+ this.getActiveRows = () => {
24041
+ const table = this.getTable();
24042
+ if (!table) {
24043
+ return [];
24044
+ }
24045
+ return table.getRows('active');
24046
+ };
24047
+ this.getRowByIndex = (index) => {
24048
+ return this.getTable().getRowFromPosition(index, true);
24049
+ };
24050
+ this.selection = new Selection((index) => this.getRowByIndex(index).getData());
24051
+ }
24052
+ /**
24053
+ * @returns {boolean} Returns `true` when the selection is non-empty, otherwise `false`
24054
+ */
24055
+ get hasSelection() {
24056
+ return this.selection.size > 0;
24057
+ }
24058
+ /**
24059
+ * Clears the selection
24060
+ */
24061
+ clear() {
24062
+ this.selection.clear();
24063
+ }
24064
+ /**
24065
+ * Sets the selected items
24066
+ *
24067
+ * @param {any[]} data The selected items
24068
+ */
24069
+ setSelection(data) {
24070
+ if (isEqual(this.selection.items, data)) {
24071
+ return;
24072
+ }
24073
+ this.selection.items = data;
24074
+ const rows = this.getActiveRows();
24075
+ rows.forEach((row) => this.updateRowSelector(row, this.selection.has(row.getData())));
24076
+ }
24077
+ /**
24078
+ * Prepends a checkbox column used for row selection to the given column definitions
24079
+ *
24080
+ * @param {Tabulator.ColumnDefinition[]} columnDefinitions The column definition for the table
24081
+ * @returns {Tabulator.ColumnDefinition[]} The column definitions with the checkbox column prepended to it
24082
+ */
24083
+ getColumnDefinitions(columnDefinitions) {
24084
+ return [this.getRowSelectorColumnDefinition(), ...columnDefinitions];
24085
+ }
24086
+ getRowSelectorColumnDefinition() {
24087
+ return {
24088
+ title: '',
24089
+ formatter: this.getRowSelectorFormatter(),
24090
+ cellClick: this.rowSelectorCellClick,
24091
+ headerClick: this.headerClick,
24092
+ headerSort: false,
24093
+ cssClass: 'limel-table--row-selector',
24094
+ resizable: false,
24095
+ htmlOutput: false,
24096
+ clipboard: false,
24097
+ };
24098
+ }
24099
+ headerClick(ev) {
24100
+ ev.stopPropagation();
24101
+ }
24102
+ getRowSelectorFormatter() {
24103
+ return (cell) => {
24104
+ const element = this.pool.get(LIMEL_CHECKBOX);
24105
+ setElementProperties(element, {
24106
+ checked: this.selection.has(cell.getData()),
24107
+ });
24108
+ element.style.display = 'inline-block';
24109
+ return element;
24110
+ };
24111
+ }
24112
+ }
24113
+
24114
+ const tableCss = "@charset \"UTF-8\";.tabulator{position:relative;border:1px solid #999;background-color:#888;font-size:14px;text-align:left;overflow:hidden;-webkit-transform:translatez(0);-moz-transform:translatez(0);-ms-transform:translatez(0);-o-transform:translatez(0);transform:translatez(0)}.tabulator[tabulator-layout=fitDataFill] .tabulator-tableHolder .tabulator-table{min-width:100%}.tabulator[tabulator-layout=fitDataTable]{display:inline-block}.tabulator.tabulator-block-select{user-select:none}.tabulator .tabulator-header{position:relative;box-sizing:border-box;width:100%;border-bottom:1px solid #999;background-color:#e6e6e6;color:#555;font-weight:bold;white-space:nowrap;overflow:hidden;-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none}.tabulator .tabulator-header.tabulator-header-hidden{display:none}.tabulator .tabulator-header .tabulator-col{display:inline-block;position:relative;box-sizing:border-box;border-right:1px solid #aaa;background:#e6e6e6;text-align:left;vertical-align:bottom;overflow:hidden}.tabulator .tabulator-header .tabulator-col.tabulator-moving{position:absolute;border:1px solid #999;background:#cdcdcd;pointer-events:none}.tabulator .tabulator-header .tabulator-col .tabulator-col-content{box-sizing:border-box;position:relative;padding:4px}.tabulator .tabulator-header .tabulator-col .tabulator-col-content .tabulator-header-menu-button{padding:0 8px}.tabulator .tabulator-header .tabulator-col .tabulator-col-content .tabulator-header-menu-button:hover{cursor:pointer;opacity:0.6}.tabulator .tabulator-header .tabulator-col .tabulator-col-content .tabulator-col-title-holder{position:relative}.tabulator .tabulator-header .tabulator-col .tabulator-col-content .tabulator-col-title{box-sizing:border-box;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom}.tabulator .tabulator-header .tabulator-col .tabulator-col-content .tabulator-col-title .tabulator-title-editor{box-sizing:border-box;width:100%;border:1px solid #999;padding:1px;background:#fff}.tabulator .tabulator-header .tabulator-col .tabulator-col-content .tabulator-col-title .tabulator-header-menu-button+.tabulator-title-editor{width:calc(100% - 22px)}.tabulator .tabulator-header .tabulator-col .tabulator-col-content .tabulator-col-sorter{display:flex;align-items:center;position:absolute;top:0;bottom:0;right:4px}.tabulator .tabulator-header .tabulator-col .tabulator-col-content .tabulator-col-sorter .tabulator-arrow{width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #bbb}.tabulator .tabulator-header .tabulator-col.tabulator-col-group .tabulator-col-group-cols{position:relative;display:flex;border-top:1px solid #aaa;overflow:hidden;margin-right:-1px}.tabulator .tabulator-header .tabulator-col:first-child .tabulator-col-resize-handle.prev{display:none}.tabulator .tabulator-header .tabulator-col .tabulator-header-filter{position:relative;box-sizing:border-box;margin-top:2px;width:100%;text-align:center}.tabulator .tabulator-header .tabulator-col .tabulator-header-filter textarea{height:auto !important}.tabulator .tabulator-header .tabulator-col .tabulator-header-filter svg{margin-top:3px}.tabulator .tabulator-header .tabulator-col .tabulator-header-filter input::-ms-clear{width:0;height:0}.tabulator .tabulator-header .tabulator-col.tabulator-sortable .tabulator-col-title{padding-right:25px}.tabulator .tabulator-header .tabulator-col.tabulator-sortable:hover{cursor:pointer;background-color:#cdcdcd}.tabulator .tabulator-header .tabulator-col.tabulator-sortable[aria-sort=none] .tabulator-col-content .tabulator-col-sorter{color:#bbb}.tabulator .tabulator-header .tabulator-col.tabulator-sortable[aria-sort=none] .tabulator-col-content .tabulator-col-sorter .tabulator-arrow{border-top:none;border-bottom:6px solid #bbb}.tabulator .tabulator-header .tabulator-col.tabulator-sortable[aria-sort=asc] .tabulator-col-content .tabulator-col-sorter{color:#666}.tabulator .tabulator-header .tabulator-col.tabulator-sortable[aria-sort=asc] .tabulator-col-content .tabulator-col-sorter .tabulator-arrow{border-top:none;border-bottom:6px solid #666}.tabulator .tabulator-header .tabulator-col.tabulator-sortable[aria-sort=desc] .tabulator-col-content .tabulator-col-sorter{color:#666}.tabulator .tabulator-header .tabulator-col.tabulator-sortable[aria-sort=desc] .tabulator-col-content .tabulator-col-sorter .tabulator-arrow{border-bottom:none;border-top:6px solid #666;color:#666}.tabulator .tabulator-header .tabulator-col.tabulator-col-vertical .tabulator-col-content .tabulator-col-title{writing-mode:vertical-rl;text-orientation:mixed;display:flex;align-items:center;justify-content:center}.tabulator .tabulator-header .tabulator-col.tabulator-col-vertical.tabulator-col-vertical-flip .tabulator-col-title{transform:rotate(180deg)}.tabulator .tabulator-header .tabulator-col.tabulator-col-vertical.tabulator-sortable .tabulator-col-title{padding-right:0;padding-top:20px}.tabulator .tabulator-header .tabulator-col.tabulator-col-vertical.tabulator-sortable.tabulator-col-vertical-flip .tabulator-col-title{padding-right:0;padding-bottom:20px}.tabulator .tabulator-header .tabulator-col.tabulator-col-vertical.tabulator-sortable .tabulator-col-sorter{justify-content:center;left:0;right:0;top:4px;bottom:auto}.tabulator .tabulator-header .tabulator-frozen{display:inline-block;position:absolute;z-index:10}.tabulator .tabulator-header .tabulator-frozen.tabulator-frozen-left{border-right:2px solid #aaa}.tabulator .tabulator-header .tabulator-frozen.tabulator-frozen-right{border-left:2px solid #aaa}.tabulator .tabulator-header .tabulator-calcs-holder{box-sizing:border-box;min-width:600%;background:#f3f3f3 !important;border-top:1px solid #aaa;border-bottom:1px solid #aaa;overflow:hidden}.tabulator .tabulator-header .tabulator-calcs-holder .tabulator-row{background:#f3f3f3 !important}.tabulator .tabulator-header .tabulator-calcs-holder .tabulator-row .tabulator-col-resize-handle{display:none}.tabulator .tabulator-header .tabulator-frozen-rows-holder{min-width:600%}.tabulator .tabulator-header .tabulator-frozen-rows-holder:empty{display:none}.tabulator .tabulator-tableHolder{position:relative;width:100%;white-space:nowrap;overflow:auto;-webkit-overflow-scrolling:touch}.tabulator .tabulator-tableHolder:focus{outline:none}.tabulator .tabulator-tableHolder .tabulator-placeholder{box-sizing:border-box;display:flex;align-items:center;width:100%}.tabulator .tabulator-tableHolder .tabulator-placeholder[tabulator-render-mode=virtual]{min-height:100%;min-width:100%}.tabulator .tabulator-tableHolder .tabulator-placeholder span{display:inline-block;margin:0 auto;padding:10px;color:#ccc;font-weight:bold;font-size:20px}.tabulator .tabulator-tableHolder .tabulator-table{position:relative;display:inline-block;background-color:#fff;white-space:nowrap;overflow:visible;color:#333}.tabulator .tabulator-tableHolder .tabulator-table .tabulator-row.tabulator-calcs{font-weight:bold;background:#e2e2e2 !important}.tabulator .tabulator-tableHolder .tabulator-table .tabulator-row.tabulator-calcs.tabulator-calcs-top{border-bottom:2px solid #aaa}.tabulator .tabulator-tableHolder .tabulator-table .tabulator-row.tabulator-calcs.tabulator-calcs-bottom{border-top:2px solid #aaa}.tabulator .tabulator-footer{padding:5px 10px;border-top:1px solid #999;background-color:#e6e6e6;text-align:right;color:#555;font-weight:bold;white-space:nowrap;user-select:none;-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none}.tabulator .tabulator-footer .tabulator-calcs-holder{box-sizing:border-box;width:calc(100% + 20px);margin:-5px -10px 5px -10px;text-align:left;background:#f3f3f3 !important;border-bottom:1px solid #aaa;border-top:1px solid #aaa;overflow:hidden}.tabulator .tabulator-footer .tabulator-calcs-holder .tabulator-row{background:#f3f3f3 !important}.tabulator .tabulator-footer .tabulator-calcs-holder .tabulator-row .tabulator-col-resize-handle{display:none}.tabulator .tabulator-footer .tabulator-calcs-holder:only-child{margin-bottom:-5px;border-bottom:none}.tabulator .tabulator-footer .tabulator-paginator{color:#555;font-family:inherit;font-weight:inherit;font-size:inherit}.tabulator .tabulator-footer .tabulator-page-size{display:inline-block;margin:0 5px;padding:2px 5px;border:1px solid #aaa;border-radius:3px}.tabulator .tabulator-footer .tabulator-pages{margin:0 7px}.tabulator .tabulator-footer .tabulator-page{display:inline-block;margin:0 2px;padding:2px 5px;border:1px solid #aaa;border-radius:3px;background:rgba(255, 255, 255, 0.2)}.tabulator .tabulator-footer .tabulator-page.active{color:#d00}.tabulator .tabulator-footer .tabulator-page:disabled{opacity:0.5}.tabulator .tabulator-footer .tabulator-page:not(.disabled):hover{cursor:pointer;background:rgba(0, 0, 0, 0.2);color:#fff}.tabulator .tabulator-col-resize-handle{position:absolute;right:0;top:0;bottom:0;width:5px}.tabulator .tabulator-col-resize-handle.prev{left:0;right:auto}.tabulator .tabulator-col-resize-handle:hover{cursor:ew-resize}.tabulator .tabulator-loader{position:absolute;display:flex;align-items:center;top:0;left:0;z-index:100;height:100%;width:100%;background:rgba(0, 0, 0, 0.4);text-align:center}.tabulator .tabulator-loader .tabulator-loader-msg{display:inline-block;margin:0 auto;padding:10px 20px;border-radius:10px;background:#fff;font-weight:bold;font-size:16px}.tabulator .tabulator-loader .tabulator-loader-msg.tabulator-loading{border:4px solid #333;color:#000}.tabulator .tabulator-loader .tabulator-loader-msg.tabulator-error{border:4px solid #D00;color:#590000}.tabulator-row{position:relative;box-sizing:border-box;min-height:22px;background-color:#fff}.tabulator-row.tabulator-row-even{background-color:#EFEFEF}.tabulator-row.tabulator-selectable:hover{background-color:#bbb;cursor:pointer}.tabulator-row.tabulator-selected{background-color:#9ABCEA}.tabulator-row.tabulator-selected:hover{background-color:#769BCC;cursor:pointer}.tabulator-row.tabulator-row-moving{border:1px solid #000;background:#fff}.tabulator-row.tabulator-moving{position:absolute;border-top:1px solid #aaa;border-bottom:1px solid #aaa;pointer-events:none;z-index:15}.tabulator-row .tabulator-row-resize-handle{position:absolute;right:0;bottom:0;left:0;height:5px}.tabulator-row .tabulator-row-resize-handle.prev{top:0;bottom:auto}.tabulator-row .tabulator-row-resize-handle:hover{cursor:ns-resize}.tabulator-row .tabulator-frozen{display:inline-block;position:absolute;background-color:inherit;z-index:10}.tabulator-row .tabulator-frozen.tabulator-frozen-left{border-right:2px solid #aaa}.tabulator-row .tabulator-frozen.tabulator-frozen-right{border-left:2px solid #aaa}.tabulator-row .tabulator-responsive-collapse{box-sizing:border-box;padding:5px;border-top:1px solid #aaa;border-bottom:1px solid #aaa}.tabulator-row .tabulator-responsive-collapse:empty{display:none}.tabulator-row .tabulator-responsive-collapse table{font-size:14px}.tabulator-row .tabulator-responsive-collapse table tr td{position:relative}.tabulator-row .tabulator-responsive-collapse table tr td:first-of-type{padding-right:10px}.tabulator-row .tabulator-cell{display:inline-block;position:relative;box-sizing:border-box;padding:4px;border-right:1px solid #aaa;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tabulator-row .tabulator-cell.tabulator-editing{border:1px solid #1D68CD;outline:none;padding:0}.tabulator-row .tabulator-cell.tabulator-editing input,.tabulator-row .tabulator-cell.tabulator-editing select{border:1px;background:transparent}.tabulator-row .tabulator-cell.tabulator-validation-fail{border:1px solid #dd0000}.tabulator-row .tabulator-cell.tabulator-validation-fail input,.tabulator-row .tabulator-cell.tabulator-validation-fail select{border:1px;background:transparent;color:#dd0000}.tabulator-row .tabulator-cell:first-child .tabulator-col-resize-handle.prev{display:none}.tabulator-row .tabulator-cell.tabulator-row-handle{display:inline-flex;align-items:center;justify-content:center;-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none}.tabulator-row .tabulator-cell.tabulator-row-handle .tabulator-row-handle-box{width:80%}.tabulator-row .tabulator-cell.tabulator-row-handle .tabulator-row-handle-box .tabulator-row-handle-bar{width:100%;height:3px;margin-top:2px;background:#666}.tabulator-row .tabulator-cell .tabulator-data-tree-branch{display:inline-block;vertical-align:middle;height:9px;width:7px;margin-top:-9px;margin-right:5px;border-bottom-left-radius:1px;border-left:2px solid #aaa;border-bottom:2px solid #aaa}.tabulator-row .tabulator-cell .tabulator-data-tree-control{display:inline-flex;justify-content:center;align-items:center;vertical-align:middle;height:11px;width:11px;margin-right:5px;border:1px solid #333;border-radius:2px;background:rgba(0, 0, 0, 0.1);overflow:hidden}.tabulator-row .tabulator-cell .tabulator-data-tree-control:hover{cursor:pointer;background:rgba(0, 0, 0, 0.2)}.tabulator-row .tabulator-cell .tabulator-data-tree-control .tabulator-data-tree-control-collapse{display:inline-block;position:relative;height:7px;width:1px;background:transparent}.tabulator-row .tabulator-cell .tabulator-data-tree-control .tabulator-data-tree-control-collapse:after{position:absolute;content:\"\";left:-3px;top:3px;height:1px;width:7px;background:#333}.tabulator-row .tabulator-cell .tabulator-data-tree-control .tabulator-data-tree-control-expand{display:inline-block;position:relative;height:7px;width:1px;background:#333}.tabulator-row .tabulator-cell .tabulator-data-tree-control .tabulator-data-tree-control-expand:after{position:absolute;content:\"\";left:-3px;top:3px;height:1px;width:7px;background:#333}.tabulator-row .tabulator-cell .tabulator-responsive-collapse-toggle{display:inline-flex;align-items:center;justify-content:center;-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-o-user-select:none;height:15px;width:15px;border-radius:20px;background:#666;color:#fff;font-weight:bold;font-size:1.1em}.tabulator-row .tabulator-cell .tabulator-responsive-collapse-toggle:hover{opacity:0.7}.tabulator-row .tabulator-cell .tabulator-responsive-collapse-toggle.open .tabulator-responsive-collapse-toggle-close{display:initial}.tabulator-row .tabulator-cell .tabulator-responsive-collapse-toggle.open .tabulator-responsive-collapse-toggle-open{display:none}.tabulator-row .tabulator-cell .tabulator-responsive-collapse-toggle .tabulator-responsive-collapse-toggle-close{display:none}.tabulator-row .tabulator-cell .tabulator-traffic-light{display:inline-block;height:14px;width:14px;border-radius:14px}.tabulator-row.tabulator-group{box-sizing:border-box;border-bottom:1px solid #999;border-right:1px solid #aaa;border-top:1px solid #999;padding:5px;padding-left:10px;background:#ccc;font-weight:bold;min-width:100%}.tabulator-row.tabulator-group:hover{cursor:pointer;background-color:rgba(0, 0, 0, 0.1)}.tabulator-row.tabulator-group.tabulator-group-visible .tabulator-arrow{margin-right:10px;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #666;border-bottom:0}.tabulator-row.tabulator-group.tabulator-group-level-1{padding-left:30px}.tabulator-row.tabulator-group.tabulator-group-level-2{padding-left:50px}.tabulator-row.tabulator-group.tabulator-group-level-3{padding-left:70px}.tabulator-row.tabulator-group.tabulator-group-level-4{padding-left:90px}.tabulator-row.tabulator-group.tabulator-group-level-5{padding-left:110px}.tabulator-row.tabulator-group .tabulator-group-toggle{display:inline-block}.tabulator-row.tabulator-group .tabulator-arrow{display:inline-block;width:0;height:0;margin-right:16px;border-top:6px solid transparent;border-bottom:6px solid transparent;border-right:0;border-left:6px solid #666;vertical-align:middle}.tabulator-row.tabulator-group span{margin-left:10px;color:#d00}.tabulator-menu{position:absolute;display:inline-block;box-sizing:border-box;background:#fff;border:1px solid #aaa;box-shadow:0 0 5px 0 rgba(0, 0, 0, 0.2);font-size:14px;overflow-y:auto;-webkit-overflow-scrolling:touch;z-index:10000}.tabulator-menu .tabulator-menu-item{position:relative;box-sizing:border-box;padding:5px 10px;user-select:none}.tabulator-menu .tabulator-menu-item.tabulator-menu-item-disabled{opacity:0.5}.tabulator-menu .tabulator-menu-item:not(.tabulator-menu-item-disabled):hover{cursor:pointer;background:#EFEFEF}.tabulator-menu .tabulator-menu-item.tabulator-menu-item-submenu{padding-right:25px}.tabulator-menu .tabulator-menu-item.tabulator-menu-item-submenu::after{display:inline-block;position:absolute;top:calc(5px + 0.4em);right:10px;height:7px;width:7px;content:\"\";border-width:1px 1px 0 0;border-style:solid;border-color:#aaa;vertical-align:top;transform:rotate(45deg)}.tabulator-menu .tabulator-menu-separator{border-top:1px solid #aaa}.tabulator-edit-select-list{position:absolute;display:inline-block;box-sizing:border-box;max-height:200px;background:#fff;border:1px solid #aaa;font-size:14px;overflow-y:auto;-webkit-overflow-scrolling:touch;z-index:10000}.tabulator-edit-select-list .tabulator-edit-select-list-item{padding:4px;color:#333}.tabulator-edit-select-list .tabulator-edit-select-list-item.active{color:#fff;background:#1D68CD}.tabulator-edit-select-list .tabulator-edit-select-list-item.active.focused{outline:1px solid rgba(255, 255, 255, 0.5)}.tabulator-edit-select-list .tabulator-edit-select-list-item.focused{outline:1px solid #1D68CD}.tabulator-edit-select-list .tabulator-edit-select-list-item:hover{cursor:pointer;color:#fff;background:#1D68CD}.tabulator-edit-select-list .tabulator-edit-select-list-notice{padding:4px;color:#333;text-align:center}.tabulator-edit-select-list .tabulator-edit-select-list-group{border-bottom:1px solid #aaa;padding:4px;padding-top:6px;color:#333;font-weight:bold}.tabulator.tabulator-ltr{direction:ltr}.tabulator.tabulator-rtl{text-align:initial;direction:rtl}.tabulator.tabulator-rtl .tabulator-header .tabulator-col{text-align:initial;border-left:1px solid #aaa;border-right:initial}.tabulator.tabulator-rtl .tabulator-header .tabulator-col.tabulator-col-group .tabulator-col-group-cols{margin-right:initial;margin-left:-1px}.tabulator.tabulator-rtl .tabulator-header .tabulator-col.tabulator-sortable .tabulator-col-title{padding-right:0;padding-left:25px}.tabulator.tabulator-rtl .tabulator-header .tabulator-col .tabulator-col-content .tabulator-arrow{left:8px;right:initial}.tabulator.tabulator-rtl .tabulator-row .tabulator-cell{border-right:initial;border-left:1px solid #aaa}.tabulator.tabulator-rtl .tabulator-row .tabulator-cell .tabulator-data-tree-branch{margin-right:initial;margin-left:5px;border-bottom-left-radius:initial;border-bottom-right-radius:1px;border-left:initial;border-right:2px solid #aaa}.tabulator.tabulator-rtl .tabulator-row .tabulator-cell .tabulator-data-tree-control{margin-right:initial;margin-left:5px}.tabulator.tabulator-rtl .tabulator-col-resize-handle{position:absolute;left:0;right:auto}.tabulator.tabulator-rtl .tabulator-col-resize-handle.prev{right:0;left:auto}.tabulator-print-fullscreen{position:absolute;top:0;bottom:0;left:0;right:0;z-index:10000}body.tabulator-print-fullscreen-hide>*:not(.tabulator-print-fullscreen){display:none !important}.tabulator-print-table{border-collapse:collapse}.tabulator-print-table .tabulator-data-tree-branch{display:inline-block;vertical-align:middle;height:9px;width:7px;margin-top:-9px;margin-right:5px;border-bottom-left-radius:1px;border-left:2px solid #aaa;border-bottom:2px solid #aaa}.tabulator-print-table .tabulator-print-table-group{box-sizing:border-box;border-bottom:1px solid #999;border-right:1px solid #aaa;border-top:1px solid #999;padding:5px;padding-left:10px;background:#ccc;font-weight:bold;min-width:100%}.tabulator-print-table .tabulator-print-table-group:hover{cursor:pointer;background-color:rgba(0, 0, 0, 0.1)}.tabulator-print-table .tabulator-print-table-group.tabulator-group-visible .tabulator-arrow{margin-right:10px;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #666;border-bottom:0}.tabulator-print-table .tabulator-print-table-group.tabulator-group-level-1 td{padding-left:30px !important}.tabulator-print-table .tabulator-print-table-group.tabulator-group-level-2 td{padding-left:50px !important}.tabulator-print-table .tabulator-print-table-group.tabulator-group-level-3 td{padding-left:70px !important}.tabulator-print-table .tabulator-print-table-group.tabulator-group-level-4 td{padding-left:90px !important}.tabulator-print-table .tabulator-print-table-group.tabulator-group-level-5 td{padding-left:110px !important}.tabulator-print-table .tabulator-print-table-group .tabulator-group-toggle{display:inline-block}.tabulator-print-table .tabulator-print-table-group .tabulator-arrow{display:inline-block;width:0;height:0;margin-right:16px;border-top:6px solid transparent;border-bottom:6px solid transparent;border-right:0;border-left:6px solid #666;vertical-align:middle}.tabulator-print-table .tabulator-print-table-group span{margin-left:10px;color:#d00}.tabulator-print-table .tabulator-data-tree-control{display:inline-flex;justify-content:center;align-items:center;vertical-align:middle;height:11px;width:11px;margin-right:5px;border:1px solid #333;border-radius:2px;background:rgba(0, 0, 0, 0.1);overflow:hidden}.tabulator-print-table .tabulator-data-tree-control:hover{cursor:pointer;background:rgba(0, 0, 0, 0.2)}.tabulator-print-table .tabulator-data-tree-control .tabulator-data-tree-control-collapse{display:inline-block;position:relative;height:7px;width:1px;background:transparent}.tabulator-print-table .tabulator-data-tree-control .tabulator-data-tree-control-collapse:after{position:absolute;content:\"\";left:-3px;top:3px;height:1px;width:7px;background:#333}.tabulator-print-table .tabulator-data-tree-control .tabulator-data-tree-control-expand{display:inline-block;position:relative;height:7px;width:1px;background:#333}.tabulator-print-table .tabulator-data-tree-control .tabulator-data-tree-control-expand:after{position:absolute;content:\"\";left:-3px;top:3px;height:1px;width:7px;background:#333}.tabulator-col-sorter{right:1rem !important}.tabulator-arrow{position:absolute;transition:border 0.2s ease;top:0.25rem;cursor:pointer}[aria-sort=none] .tabulator-arrow{border-bottom-color:rgb(var(--table-arrow-color)) !important}[aria-sort=desc] .tabulator-arrow{border-top-color:rgb(var(--table-arrow-color--active)) !important}[aria-sort=asc] .tabulator-arrow{border-bottom-color:rgb(var(--table-arrow-color--active)) !important}.tabulator-arrow:before,.tabulator-arrow:after{display:block;content:\"\";position:absolute;bottom:0}.tabulator-arrow:before{background-color:rgb(var(--table-header-background-color));width:0.5rem;height:0.5rem;transform:rotate(45deg);left:-0.25rem;top:0.25rem}.tabulator-arrow:after{width:0.125rem;background-color:rgb(var(--table-arrow-color));height:0.5625rem;top:0.125rem;left:-0.0625rem}[aria-sort=desc] .tabulator-arrow{top:0.625rem}[aria-sort=desc] .tabulator-arrow:before{top:-0.75rem}[aria-sort=desc] .tabulator-arrow:after{top:-0.6875rem}[aria-sort=desc] .tabulator-arrow:after,[aria-sort=asc] .tabulator-arrow:after{background-color:rgb(var(--table-arrow-color--active))}@keyframes indicate-sortable-column{0%,100%{transform:translate3d(0, 0, 0)}30%{transform:translate3d(0, -0.0875rem, 0)}60%{transform:translate3d(0, 0.0875rem, 0)}}.tabulator-col.tabulator-sortable:hover .tabulator-arrow{animation:indicate-sortable-column 0.5s ease}.tabulator .tabulator-footer{transition:transform 0.5s ease-out, opacity 0.35s ease}.tabulator .tabulator-footer .tabulator-paginator{display:grid;grid-auto-flow:column;justify-content:end}.tabulator .tabulator-footer .tabulator-paginator .tabulator-pages{margin:0 0.5rem}.tabulator .tabulator-footer .tabulator-paginator .tabulator-pages .tabulator-page{margin:0 0rem}.tabulator .tabulator-footer .tabulator-paginator .tabulator-page{position:relative;height:1.75rem;min-width:1.75rem;padding:0 0.5rem;margin:0;border:none;border-radius:2.5rem;color:#303042;background-color:transparent}.tabulator .tabulator-footer .tabulator-paginator .tabulator-page:not([disabled]){transition:background-color 0.2s ease, box-shadow 0.2s ease, transform 0.1s ease-out}.tabulator .tabulator-footer .tabulator-paginator .tabulator-page:not([disabled]):hover{box-shadow:var(--button-shadow-hovered)}.tabulator .tabulator-footer .tabulator-paginator .tabulator-page:not([disabled]):active{box-shadow:var(--button-shadow-pressed);transform:translate3d(0, 0.08rem, 0)}.tabulator .tabulator-footer .tabulator-paginator .tabulator-page:hover{color:#303042;background-color:rgb(var(--contrast-200))}.tabulator .tabulator-footer .tabulator-paginator .tabulator-page.active{box-shadow:var(--button-shadow-inset);background-color:#fff}.tabulator .tabulator-footer .tabulator-paginator .tabulator-page:disabled{cursor:not-allowed}.tabulator .tabulator-footer .tabulator-paginator .tabulator-page:disabled:hover{background-color:transparent}.tabulator:not(.has-pagination):not(.has-aggregation) .tabulator-tableHolder{height:calc(100% - 2.125rem) !important;max-height:calc(100% - 2.125rem) !important}.tabulator:not(.has-pagination).has-aggregation .tabulator-tableHolder{height:calc(100% - (\n 2.125rem + 2.25rem\n )) !important;max-height:calc(100% - (\n 2.125rem + 2.25rem\n )) !important}.tabulator:not(.has-pagination) .tabulator-footer{pointer-events:none}.tabulator:not(.has-pagination) .tabulator-footer .tabulator-paginator{visibility:hidden;opacity:0;transform:translateY(2.5rem)}.tabulator-page[data-page=first],.tabulator-page[data-page=prev],.tabulator-page[data-page=next],.tabulator-page[data-page=last]{font-size:0;color:transparent !important}.tabulator-page[data-page=first]:after,.tabulator-page[data-page=prev]:after,.tabulator-page[data-page=next]:after,.tabulator-page[data-page=last]:after{transition:transform 0.2s ease;display:block;opacity:0.7;position:absolute;top:0.125rem;right:0.125rem;bottom:0.125rem;left:0.125rem}.tabulator-page[data-page=prev]:after,.tabulator-page[data-page=next]:after{content:url(\"data:image/svg+xml; utf8, <svg xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2' clip-rule='evenodd' viewBox='0 0 100 100'><defs/><path d='M68.714 50L37.286 70V30l31.428 20z'/></svg>\")}.tabulator-page[data-page=first]:after,.tabulator-page[data-page=last]:after{content:url(\"data:image/svg+xml; utf8, <svg xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2' clip-rule='evenodd' viewBox='0 0 100 100'><defs/><path d='M60.714 50L29.286 70V30l31.428 20zM64.714 30h6v40h-6z'/></svg>\")}.tabulator-page[data-page=first]:after,.tabulator-page[data-page=prev]:after{transform:rotateZ(180deg)}.tabulator-page[data-page=next]:not([disabled]):hover:after,.tabulator-page[data-page=last]:not([disabled]):hover:after{transform:translate3d(0.09375rem, 0, 0)}.tabulator-page[data-page=first]:not([disabled]):hover:after,.tabulator-page[data-page=prev]:not([disabled]):hover:after{transform:translate3d(-0.09375rem, 0, 0) rotateZ(180deg)}@keyframes fade-in-tabulator-loader{0%{background:transparent}100%{background:rgba(var(--contrast-1400), 0.4)}}@keyframes spin-tabulator-loader{to{transform:rotate(360deg)}}.tabulator .tabulator-loader{animation:fade-in-tabulator-loader 0.5s ease 0.5s forwards;animation-iteration-count:1;cursor:progress;background:transparent}.tabulator .tabulator-loader .tabulator-loader-msg{animation:spin-tabulator-loader 0.4s linear infinite;color:transparent;font-size:0;border-radius:50%;border:0.1875rem solid rgb(var(--lime-brand-color-flexible-turquoise)) !important;border-top-color:transparent !important;width:1.25rem;height:1.25rem;background-color:transparent !important;padding:0}:host(.has-interactive-rows) .tabulator-row:not(.tabulator-calcs).tabulator-selectable{transition:background-color 0.2s ease, box-shadow 0.2s ease, transform 0.1s ease-out}:host(.has-interactive-rows) .tabulator-row:not(.tabulator-calcs).tabulator-selectable:hover{box-shadow:var(--button-shadow-hovered)}:host(.has-interactive-rows) .tabulator-row:not(.tabulator-calcs).tabulator-selectable:active{box-shadow:var(--button-shadow-pressed);transform:translate3d(0, 0.08rem, 0)}:host(.has-interactive-rows) .tabulator-row:not(.tabulator-calcs).tabulator-selectable:hover{z-index:2}:host(.has-interactive-rows) .tabulator-row:not(.tabulator-calcs).tabulator-selectable:not(.active):hover{background-color:rgb(var(--table-row-background-color--hover))}:host(.has-low-density) #tabulator-table{width:max-content;max-width:100%;margin:auto}:host(.has-low-density) .tabulator-table{background-color:transparent}:host(.has-low-density) .tabulator-headers{padding:0 0.5rem}:host(.has-low-density) .tabulator-header{background-color:transparent}:host(.has-low-density) .tabulator-header .tabulator-col-content{padding-left:0.5rem}:host(.has-low-density) .tabulator-col:first-child{border-radius:0.375rem 0 0 0.375rem}:host(.has-low-density) .tabulator-col:last-child{border-radius:0 0.375rem 0.375rem 0}:host(.has-low-density) .tabulator-row{width:calc(\n 100% - 1rem\n );margin-right:auto;margin-left:auto;border-radius:0.5rem}:host(.has-low-density) .tabulator-row:not(.tabulator-calcs-bottom){margin-bottom:0.25rem}:host(.has-low-density) .tabulator-row:not(.tabulator-calcs-bottom):first-child{margin-top:0.75rem}:host(.has-low-density) .tabulator-row:not(.tabulator-calcs-bottom) .tabulator-cell{height:2.75rem !important;padding-left:0.75rem;padding-right:0.5rem}:host(.has-low-density) .tabulator-row:not(.tabulator-calcs-bottom) .tabulator-cell:first-child{border-radius:0.5rem 0 0 0.5rem}:host(.has-low-density) .tabulator-row:not(.tabulator-calcs-bottom) .tabulator-cell:last-child{border-radius:0 0.5rem 0.5rem 0}.lime-col-title__custom-component{width:100%;display:flex;align-items:center;margin-right:1.25rem}.title-component-text{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;flex-grow:1;flex-shrink:1;min-width:0}.title-component-slot{flex-shrink:0}@keyframes detach-a-column-header{0%{transform:rotate(0deg)}100%{transform:rotate(-2deg)}}.tabulator.has-movable-columns .tabulator-header{overflow-y:visible}.tabulator.has-movable-columns .tabulator-header .tabulator-col:not(.tabulator-frozen){cursor:move !important}.tabulator.has-movable-columns .tabulator-header .tabulator-col:not(.tabulator-frozen).tabulator-sortable.tabulator-moving{animation:detach-a-column-header 0.2s ease forwards;opacity:0.9;border:none;border-radius:0.25rem;background-color:rgb(var(---table-header-background-color-when-being-dragged));box-shadow:var(--shadow-depth-16)}.tabulator.has-movable-columns .tabulator-header .tabulator-col:not(.tabulator-frozen).tabulator-sortable.tabulator-moving:hover{background-color:rgb(var(---table-header-background-color-when-being-dragged))}.tabulator.has-movable-columns .tabulator-header .tabulator-col:not(.tabulator-frozen).tabulator-sortable.tabulator-moving .tabulator-arrow:before{background-color:rgb(var(---table-header-background-color-when-being-dragged))}.select-all,.limel-table--row-selector{--mdc-checkbox-touch-target-size:1rem}.select-all{position:absolute;z-index:1;left:0;top:0.375rem;width:2.5625rem;display:flex !important;align-items:center;justify-content:center}.select-all limel-checkbox{transform:translate(-0.25rem, 0)}.limel-table--row-selector{position:sticky !important;left:0;border-width:0;justify-content:center;z-index:1}.tabulator-row-odd .limel-table--row-selector{background-image:linear-gradient(to right, rgb(var(--table-row-background-color--odd)) 70%, rgb(var(--table-row-background-color--odd), 0))}.tabulator-row-even .limel-table--row-selector{background-image:linear-gradient(to right, rgb(var(--table-row-background-color--even)) 70%, rgb(var(--table-row-background-color--even), 0))}.tabulator-row:not(.tabulator-calcs):hover .limel-table--row-selector{will-change:background-image;background-image:linear-gradient(to right, rgb(var(--table-row-background-color--hover)) 70%, rgb(var(--table-row-background-color--hover), 0))}.tabulator-row.active .limel-table--row-selector,.tabulator-row.active:hover .limel-table--row-selector{background-image:linear-gradient(to right, rgb(var(--table-row-background-color--active)) 70%, rgb(var(--table-row-background-color--active), 0))}.limel-table--row-selector limel-checkbox{transition:opacity 0.2s ease;align-self:center;opacity:0.3;transform:translate(-0.25rem, 0)}.tabulator-row:hover .limel-table--row-selector limel-checkbox{opacity:1}.has-selection .limel-table--row-selector limel-checkbox{opacity:1}.limel-table--row-selector .tabulator-col-resize-handle{display:none}.limel-table--row-selector+.tabulator-col .tabulator-col-resize-handle.prev,.limel-table--row-selector+.tabulator-cell .tabulator-col-resize-handle.prev{display:none}.tabulator.has-movable-columns .tabulator-header .tabulator-col.limel-table--row-selector{border:none;cursor:default;pointer-events:none;background-color:transparent;background-image:linear-gradient(to right, rgb(var(--table-header-background-color--hover)) 70%, rgb(var(--table-header-background-color--hover), 0));position:sticky;left:0}:host{display:block;--table-header-background-color:var(--contrast-500);--table-header-background-color--hover:var(--contrast-400);--table-header-background-color-when-being-dragged:var(--contrast-100);--table-row-background-color--odd:var(--contrast-200);--table-row-background-color--even:var(--contrast-100);--table-row-background-color--hover:var(--contrast-100);--table-row-background-color--active:var(--color-teal-lighter);--table-arrow-color:var(--contrast-800);--table-arrow-color--active:var(--color-teal-default)}#tabulator-container{position:relative}#tabulator-container,#tabulator-table{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-family:Roboto, sans-serif;font-family:var(--mdc-typography-font-family, Roboto, sans-serif);height:100%;width:100%;background-color:transparent;border:none}.tabulator .tabulator-header{border-bottom:0;background-color:rgb(var(--table-header-background-color--hover))}.tabulator .tabulator-header .tabulator-col{transition:background-color 0.2s ease;background-color:rgb(var(--table-header-background-color--hover));border-right-color:rgb(var(--contrast-200))}.tabulator .tabulator-header .tabulator-col.tabulator-sortable:hover{background-color:var(--table-header-background-color--hover)}.tabulator .tabulator-header .tabulator-col-title{font-weight:500;padding-left:0.125rem}.tabulator .tabulator-footer{background-color:rgb(var(--table-header-background-color--hover));border:none;user-select:auto}.tabulator .tabulator-footer .tabulator-calcs-holder{border-color:rgb(var(--contrast-600))}.tabulator-row.tabulator-calcs{cursor:default !important}.tabulator-row.tabulator-selectable{transition:background-color 0.2s ease}.tabulator-row.tabulator-selectable:not(.active):hover{background-color:rgb(var(--table-header-background-color))}.tabulator-row.tabulator-row-odd{background-color:rgb(var(--table-row-background-color--odd))}.tabulator-row.tabulator-row-even{background-color:rgb(var(--table-row-background-color--even))}.tabulator-row.active,.tabulator-row.active:hover{background-color:rgb(var(--table-row-background-color--active))}.tabulator-row .tabulator-cell{border-right:transparent;padding:0.5rem;display:inline-flex;align-items:center}.tabulator-row .tabulator-cell[style*=\"text-align: right;\"]{justify-content:flex-end}.tabulator-row .tabulator-cell[style*=\"text-align: center;\"]{justify-content:center}.tabulator-col,.tabulator-cell{max-width:37.5rem;font-size:0.8125rem}#tabulator-loader,#tabulator-empty-text{position:absolute;width:100%;height:100%;z-index:1;display:flex;align-items:center;justify-content:center}#tabulator-loader{background-color:rgba(var(--contrast-100), 0.6);cursor:wait}#tabulator-empty-text{color:rgb(var(--contrast-800));font-weight:bold;font-size:1.25rem;pointer-events:none}";
23880
24115
 
23881
24116
  const FIRST_PAGE = 1;
23882
24117
  let Table = class {
@@ -23887,6 +24122,8 @@ let Table = class {
23887
24122
  this.load = createEvent(this, "load", 7);
23888
24123
  this.activate = createEvent(this, "activate", 7);
23889
24124
  this.changeColumns = createEvent(this, "changeColumns", 7);
24125
+ this.select = createEvent(this, "select", 7);
24126
+ this.selectAll = createEvent(this, "selectAll", 7);
23890
24127
  /**
23891
24128
  * Data to be displayed in the table
23892
24129
  */
@@ -23914,6 +24151,27 @@ let Table = class {
23914
24151
  * The page to show
23915
24152
  */
23916
24153
  this.page = FIRST_PAGE;
24154
+ this.getActiveRows = () => {
24155
+ if (!this.tabulator) {
24156
+ return [];
24157
+ }
24158
+ return this.tabulator.getRows('active');
24159
+ };
24160
+ this.getActiveRowsData = () => {
24161
+ // Note: Tabulator.getData() creates copies of each data object
24162
+ // and will break this.selection.has checks, hence why this function
24163
+ // intentionally retrieves the data using the row components
24164
+ return this.getActiveRows().map((row) => row.getData());
24165
+ };
24166
+ this.selectAllOnChange = (ev) => {
24167
+ const selectAll = ev.detail;
24168
+ ev.stopPropagation();
24169
+ ev.preventDefault();
24170
+ const newSelection = selectAll ? this.getActiveRowsData() : [];
24171
+ this.select.emit(newSelection);
24172
+ this.tableSelection.setSelection(newSelection);
24173
+ this.selectAll.emit(selectAll);
24174
+ };
23917
24175
  this.getColumnOptions = () => {
23918
24176
  if (!this.movableColumns) {
23919
24177
  return {};
@@ -23924,7 +24182,7 @@ let Table = class {
23924
24182
  };
23925
24183
  };
23926
24184
  this.handleMoveColumn = (_, components) => {
23927
- const columns = components.map(this.findColumn);
24185
+ const columns = components.map(this.findColumn).filter((c) => c);
23928
24186
  this.changeColumns.emit(columns);
23929
24187
  };
23930
24188
  this.findColumn = (component) => {
@@ -23939,13 +24197,20 @@ let Table = class {
23939
24197
  this.requestData = this.requestData.bind(this);
23940
24198
  this.onClickRow = this.onClickRow.bind(this);
23941
24199
  this.formatRow = this.formatRow.bind(this);
24200
+ this.formatRows = this.formatRows.bind(this);
23942
24201
  this.updateMaxPage = this.updateMaxPage.bind(this);
23943
24202
  this.initTabulatorComponent = this.initTabulatorComponent.bind(this);
24203
+ this.setSelection = this.setSelection.bind(this);
24204
+ this.addColumnAggregator = this.addColumnAggregator.bind(this);
23944
24205
  this.pool = new ElementPool(document);
23945
24206
  this.columnFactory = new ColumnDefinitionFactory(this.pool);
23946
24207
  }
23947
24208
  componentWillLoad() {
23948
24209
  this.firstRequest = this.mode === 'remote';
24210
+ if (this.selectable) {
24211
+ this.tableSelection = new TableSelection(() => this.tabulator, this.pool, this.select);
24212
+ this.tableSelection.setSelection(this.selection);
24213
+ }
23949
24214
  }
23950
24215
  componentDidLoad() {
23951
24216
  this.init();
@@ -23972,7 +24237,7 @@ let Table = class {
23972
24237
  if (!this.tabulator) {
23973
24238
  return;
23974
24239
  }
23975
- this.tabulator.getRows().forEach(this.formatRow);
24240
+ this.formatRows();
23976
24241
  }
23977
24242
  updateData(newData = [], oldData = []) {
23978
24243
  if (isEqual(newData, oldData)) {
@@ -23984,6 +24249,7 @@ let Table = class {
23984
24249
  return;
23985
24250
  }
23986
24251
  this.tabulator.replaceData(this.data);
24252
+ this.setSelection();
23987
24253
  });
23988
24254
  }
23989
24255
  updateColumns(newColumns, oldColumns) {
@@ -23993,20 +24259,46 @@ let Table = class {
23993
24259
  if (this.areSameColumns(newColumns, oldColumns)) {
23994
24260
  return;
23995
24261
  }
23996
- const existingColumns = this.tabulator
24262
+ const columnsInTable = this.tabulator
23997
24263
  .getColumns()
23998
- .map(this.findColumn);
23999
- if (this.areSameColumns(newColumns, existingColumns)) {
24264
+ .filter((c) => c.getField());
24265
+ const oldColumnsInTable = columnsInTable.map((c) => oldColumns.find((old) => old.field === c.getField()));
24266
+ if (this.areSameColumns(newColumns, oldColumnsInTable)) {
24000
24267
  return;
24001
24268
  }
24002
24269
  // Updating columns requires a reinitialization otherwise sorting will not work
24003
24270
  // afterwards
24004
24271
  this.init();
24005
24272
  }
24273
+ updateAggregates(newAggregates, oldAggregates) {
24274
+ if (!this.tabulator) {
24275
+ return;
24276
+ }
24277
+ if (isEqual(newAggregates, oldAggregates)) {
24278
+ return;
24279
+ }
24280
+ if (!this.haveSameAggregateFields(newAggregates, oldAggregates)) {
24281
+ this.init();
24282
+ return;
24283
+ }
24284
+ this.tabulator.recalc();
24285
+ this.tabulator.rowManager.redraw();
24286
+ }
24287
+ updateSelection(newSelection) {
24288
+ if (!this.tableSelection) {
24289
+ return;
24290
+ }
24291
+ this.tableSelection.setSelection(newSelection);
24292
+ }
24006
24293
  areSameColumns(newColumns, oldColumns) {
24007
24294
  return (newColumns.length === oldColumns.length &&
24008
24295
  newColumns.every((column) => oldColumns.includes(column)));
24009
24296
  }
24297
+ haveSameAggregateFields(newAggregates, oldAggregates) {
24298
+ const oldAggregateFields = (oldAggregates === null || oldAggregates === void 0 ? void 0 : oldAggregates.map((a) => a.field)) || [];
24299
+ return ((newAggregates === null || newAggregates === void 0 ? void 0 : newAggregates.length) === (oldAggregates === null || oldAggregates === void 0 ? void 0 : oldAggregates.length) &&
24300
+ !!(newAggregates === null || newAggregates === void 0 ? void 0 : newAggregates.every((a) => oldAggregateFields.includes(a.field))));
24301
+ }
24010
24302
  init() {
24011
24303
  if (this.tabulator) {
24012
24304
  this.pool.releaseAll();
@@ -24033,14 +24325,22 @@ let Table = class {
24033
24325
  // matter if its rendered or not.
24034
24326
  if (!('ResizeObserver' in window)) {
24035
24327
  this.tabulator = new Tabulator(table, options);
24328
+ this.setSelection();
24036
24329
  return;
24037
24330
  }
24038
24331
  const observer = new ResizeObserver(() => {
24039
24332
  this.tabulator = new Tabulator(table, options);
24333
+ this.setSelection();
24040
24334
  observer.unobserve(table);
24041
24335
  });
24042
24336
  observer.observe(table);
24043
24337
  }
24338
+ setSelection() {
24339
+ if (!(this.tabulator && this.tableSelection)) {
24340
+ return;
24341
+ }
24342
+ this.tableSelection.setSelection(this.selection);
24343
+ }
24044
24344
  updateMaxPage() {
24045
24345
  var _a;
24046
24346
  (_a = this.tabulator) === null || _a === void 0 ? void 0 : _a.setMaxPage(this.calculatePageCount());
@@ -24062,7 +24362,38 @@ let Table = class {
24062
24362
  });
24063
24363
  }
24064
24364
  getColumnDefinitions() {
24065
- return this.columns.map(this.columnFactory.create);
24365
+ const columnDefinitions = this.columns
24366
+ .map(this.addColumnAggregator)
24367
+ .map(this.columnFactory.create);
24368
+ if (this.tableSelection) {
24369
+ return this.tableSelection.getColumnDefinitions(columnDefinitions);
24370
+ }
24371
+ return columnDefinitions;
24372
+ }
24373
+ addColumnAggregator(column) {
24374
+ var _a;
24375
+ if (!((_a = this.aggregates) === null || _a === void 0 ? void 0 : _a.length) || column.aggregator) {
24376
+ return column;
24377
+ }
24378
+ const aggregate = this.aggregates.find((a) => a.field === column.field);
24379
+ if (aggregate) {
24380
+ column.aggregator = (col,
24381
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
24382
+ _values,
24383
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
24384
+ _data) => {
24385
+ var _a;
24386
+ if (!col) {
24387
+ return undefined;
24388
+ }
24389
+ const value = (_a = this.aggregates.find((a) => a.field === col.field)) === null || _a === void 0 ? void 0 : _a.value;
24390
+ if (col.formatter) {
24391
+ return col.formatter(value);
24392
+ }
24393
+ return value;
24394
+ };
24395
+ }
24396
+ return column;
24066
24397
  }
24067
24398
  getAjaxOptions() {
24068
24399
  if (!this.isRemoteMode()) {
@@ -24161,7 +24492,11 @@ let Table = class {
24161
24492
  }
24162
24493
  this.changePage.emit(page);
24163
24494
  }
24164
- onClickRow(_, row) {
24495
+ onClickRow(_ev, row) {
24496
+ if (typeof row.getPosition === 'undefined') {
24497
+ // Not a data row, probably a CalcComponent
24498
+ return;
24499
+ }
24165
24500
  if (this.activeRow === row.getData()) {
24166
24501
  this.activeRow = null;
24167
24502
  }
@@ -24170,6 +24505,9 @@ let Table = class {
24170
24505
  }
24171
24506
  this.activate.emit(this.activeRow);
24172
24507
  }
24508
+ formatRows() {
24509
+ this.tabulator.getRows().forEach(this.formatRow);
24510
+ }
24173
24511
  formatRow(row) {
24174
24512
  if (this.activeRow === row.getData()) {
24175
24513
  row.getElement().classList.add('active');
@@ -24189,12 +24527,24 @@ let Table = class {
24189
24527
  return columns.some((column) => has(column, 'aggregator'));
24190
24528
  }
24191
24529
  render() {
24192
- return (h("div", { id: "tabulator-container" }, h("div", { id: "tabulator-loader", style: { display: this.loading ? 'flex' : 'none' } }, h("limel-spinner", { size: "large" })), this.renderEmptyMessage(), h("div", { id: "tabulator-table", class: {
24530
+ var _a;
24531
+ return (h("div", { id: "tabulator-container" }, h("div", { id: "tabulator-loader", style: { display: this.loading ? 'flex' : 'none' } }, h("limel-spinner", { size: "large" })), this.renderEmptyMessage(), this.renderSelectAll(), h("div", { id: "tabulator-table", class: {
24193
24532
  'has-pagination': this.totalRows > this.pageSize,
24194
24533
  'has-aggregation': this.hasAggregation(this.columns),
24195
24534
  'has-movable-columns': this.movableColumns,
24535
+ 'has-rowselector': this.selectable,
24536
+ 'has-selection': (_a = this.tableSelection) === null || _a === void 0 ? void 0 : _a.hasSelection,
24196
24537
  } })));
24197
24538
  }
24539
+ renderSelectAll() {
24540
+ var _a, _b, _c;
24541
+ if (!this.selectable) {
24542
+ return;
24543
+ }
24544
+ const showSelectAll = !this.loading && this.tableSelection;
24545
+ return (h("div", { class: "select-all", style: { display: showSelectAll ? 'inline-block' : 'none' } }, h("limel-checkbox", { onChange: this.selectAllOnChange, checked: (_a = this.tableSelection) === null || _a === void 0 ? void 0 : _a.hasSelection, indeterminate: ((_b = this.tableSelection) === null || _b === void 0 ? void 0 : _b.hasSelection) &&
24546
+ ((_c = this.selection) === null || _c === void 0 ? void 0 : _c.length) < this.data.length })));
24547
+ }
24198
24548
  renderEmptyMessage() {
24199
24549
  const showEmptyMessage = !this.loading && !this.data.length && this.emptyMessage;
24200
24550
  return (h("div", { id: "tabulator-empty-text", style: { display: showEmptyMessage ? 'flex' : 'none' } }, h("span", null, this.emptyMessage)));
@@ -24206,7 +24556,9 @@ let Table = class {
24206
24556
  "page": ["pageChanged"],
24207
24557
  "activeRow": ["activeRowChanged"],
24208
24558
  "data": ["updateData"],
24209
- "columns": ["updateColumns"]
24559
+ "columns": ["updateColumns"],
24560
+ "aggregates": ["updateAggregates"],
24561
+ "selection": ["updateSelection"]
24210
24562
  }; }
24211
24563
  };
24212
24564
  Table.style = tableCss;