@luzmo/analytics-components-kit 1.0.1-alpha.84 → 1.0.1-alpha.85

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 (237) hide show
  1. package/angular/components/droppable-slot.component.ts +2 -2
  2. package/angular/esm/components/droppable-slot.component.d.ts +2 -2
  3. package/angular/esm/types.d.ts +1 -1
  4. package/angular/types.ts +2 -2
  5. package/components/ai-chat-messages-container/index.cjs +1 -1
  6. package/components/ai-chat-messages-container/index.js +2 -2
  7. package/components/ai-interaction-textarea/index.cjs +50 -0
  8. package/components/ai-interaction-textarea/index.d.ts +1 -1
  9. package/components/ai-interaction-textarea/index.js +152 -0
  10. package/components/area-chart-options.config-Bl8bhhOo.cjs +20 -0
  11. package/components/{area-chart-options.config-_J0sG4NF.js → area-chart-options.config-u8itidsi.js} +14 -26
  12. package/components/bar-chart-options.config-CePAqM83.cjs +20 -0
  13. package/components/{bar-chart-options.config-D1mb5TDl.js → bar-chart-options.config-DIirbAJ0.js} +21 -35
  14. package/components/box-plot-options.config-BVNrV2eD.cjs +20 -0
  15. package/components/{box-plot-options.config-xu_i6ms7.js → box-plot-options.config-BWROiguA.js} +52 -88
  16. package/components/{bubble-chart-options.config-BacgXkJ_.js → bubble-chart-options.config-4QD8VPhU.js} +9 -18
  17. package/components/bubble-chart-options.config-BDgOe3GQ.cjs +20 -0
  18. package/components/{bullet-chart-options.config-CDPpX1yc.js → bullet-chart-options.config-3bH7uekx.js} +1 -1
  19. package/components/{bullet-chart-options.config-DfS4Bwds.cjs → bullet-chart-options.config-tWb6Fio-.cjs} +1 -1
  20. package/components/calculate-data-item-icon-C8CbsMQf.js +139 -0
  21. package/components/{calculate-data-item-icon-DjW1_RI1.cjs → calculate-data-item-icon-CX4VW9Km.cjs} +1 -1
  22. package/components/{choropleth-map-options.config-B_W9-rhe.js → choropleth-map-options.config-CMxx3ORp.js} +63 -84
  23. package/components/choropleth-map-options.config-CWJACFd0.cjs +20 -0
  24. package/components/circular-gauge-options.config-BMxgq3zH.cjs +20 -0
  25. package/components/{circular-gauge-options.config-DAIjz4Rl.js → circular-gauge-options.config-DhIKn44k.js} +23 -36
  26. package/components/{color-DuJ4-73S.js → color-B7m0j8lX.js} +941 -950
  27. package/components/color-Czp4Im5q.cjs +20 -0
  28. package/components/{color-range-utils-Bvo9sm5A.js → color-range-utils-BSfqtB3A.js} +31 -32
  29. package/components/color-range-utils-DYYR-iwx.cjs +20 -0
  30. package/components/column-chart-options.config-BV9R3ssH.cjs +20 -0
  31. package/components/{column-chart-options.config-B5SjBVdy.js → column-chart-options.config-D5-yR7iq.js} +27 -37
  32. package/components/conditional-number-options.config-Co099Qfm.cjs +20 -0
  33. package/components/{conditional-number-options.config-BCEpSK9J.js → conditional-number-options.config-DPYsdML5.js} +24 -40
  34. package/components/dataset-selector-list/index.cjs +11 -11
  35. package/components/dataset-selector-list/index.js +65 -69
  36. package/components/dataset-selector-row/dataset-selector-row.d.ts +1 -0
  37. package/components/dataset-selector-row/index.cjs +79 -0
  38. package/components/dataset-selector-row/index.d.ts +1 -1
  39. package/components/dataset-selector-row/index.js +209 -0
  40. package/components/{date-comparison-filter-options.config-JA_yYpJa.js → date-comparison-filter-options.config-CSwGyuBg.js} +3 -6
  41. package/components/{date-comparison-filter-options.config-DAVncmi0.cjs → date-comparison-filter-options.config-QaoWaFUn.cjs} +1 -1
  42. package/components/{date-filter-options.config-DBRxlTWy.js → date-filter-options.config-BTVyHRkp.js} +3 -6
  43. package/components/{date-filter-options.config-CWPMtA18.cjs → date-filter-options.config-n-zhWaYa.cjs} +1 -1
  44. package/components/display-settings/index.cjs +1 -1
  45. package/components/display-settings/index.js +1 -1
  46. package/components/display-settings-binning/index.cjs +5 -5
  47. package/components/display-settings-binning/index.js +29 -30
  48. package/components/display-settings-datetime/index.cjs +29 -29
  49. package/components/display-settings-datetime/index.js +112 -120
  50. package/components/display-settings-grand-totals/index.cjs +4 -4
  51. package/components/display-settings-grand-totals/index.js +23 -24
  52. package/components/display-settings-numeric/index.cjs +48 -48
  53. package/components/display-settings-numeric/index.js +194 -211
  54. package/components/display-settings-period-over-period/index.cjs +16 -16
  55. package/components/display-settings-period-over-period/index.js +91 -97
  56. package/components/{donut-chart-options.config-BulUEiaH.js → donut-chart-options.config-3ZqX8Cbb.js} +21 -37
  57. package/components/donut-chart-options.config-BQyPgnC9.cjs +20 -0
  58. package/components/draggable-data-item/index.cjs +8 -8
  59. package/components/draggable-data-item/index.js +44 -45
  60. package/components/draggable-data-item-level/index.cjs +11 -11
  61. package/components/draggable-data-item-level/index.js +89 -92
  62. package/components/{dropdown-filter-options.config-D9dvPypF.js → dropdown-filter-options.config-CGJTtgAX.js} +7 -10
  63. package/components/{dropdown-filter-options.config-DS-MORmq.cjs → dropdown-filter-options.config-DJvfCTk7.cjs} +1 -1
  64. package/components/droppable-slot/droppable-slot.d.ts +2 -2
  65. package/components/droppable-slot/index.cjs +20 -20
  66. package/components/droppable-slot/index.js +167 -181
  67. package/components/edit-item/index.cjs +9 -9
  68. package/components/edit-item/index.js +116 -119
  69. package/components/edit-option/index.cjs +1 -1
  70. package/components/edit-option/index.js +1 -1
  71. package/components/edit-option-action-button-group/index.cjs +8 -8
  72. package/components/edit-option-action-button-group/index.js +52 -53
  73. package/components/{edit-option-base-DIc7iC-b.js → edit-option-base-Bh29-Cak.js} +1 -1
  74. package/components/{edit-option-base-VhTih9T1.cjs → edit-option-base-tFr8Qg2B.cjs} +1 -1
  75. package/components/edit-option-color-palette-picker/index.cjs +1 -1
  76. package/components/edit-option-color-palette-picker/index.js +1 -1
  77. package/components/edit-option-color-picker/index.cjs +1 -1
  78. package/components/edit-option-color-picker/index.js +1 -1
  79. package/components/edit-option-color-range/index.cjs +19 -19
  80. package/components/edit-option-color-range/index.js +106 -117
  81. package/components/edit-option-multi-language-field/index.cjs +3 -3
  82. package/components/edit-option-multi-language-field/index.js +26 -27
  83. package/components/edit-option-number-field/index.cjs +1 -1
  84. package/components/edit-option-number-field/index.js +1 -1
  85. package/components/edit-option-picker/index.cjs +5 -5
  86. package/components/edit-option-picker/index.js +7 -7
  87. package/components/edit-option-position-picker/index.cjs +4 -4
  88. package/components/edit-option-position-picker/index.js +21 -25
  89. package/components/edit-option-positions-number-field/index.cjs +9 -9
  90. package/components/edit-option-positions-number-field/index.js +76 -81
  91. package/components/edit-option-radio-button-group/index.cjs +6 -6
  92. package/components/edit-option-radio-button-group/index.js +21 -22
  93. package/components/edit-option-slider/index.cjs +1 -1
  94. package/components/edit-option-slider/index.js +1 -1
  95. package/components/edit-option-switch/index.cjs +1 -1
  96. package/components/edit-option-switch/index.js +1 -1
  97. package/components/edit-option-text-field/index.cjs +2 -2
  98. package/components/edit-option-text-field/index.js +22 -23
  99. package/components/en--a5SfjnM.cjs +20 -0
  100. package/components/en-CtCctD2c.js +1483 -0
  101. package/components/{en-GB-DG6uS3sM.cjs → en-GB-CXVKFWyH.cjs} +1 -1
  102. package/components/{en-GB-CEHEs8F2.js → en-GB-CbNfyZMo.js} +1 -1
  103. package/components/{evolution-number-options.config-DzkfeoIN.js → evolution-number-options.config-BIPO_4n3.js} +11 -14
  104. package/components/{evolution-number-options.config-BgIZY4gQ.cjs → evolution-number-options.config-Bc9eKYnn.cjs} +1 -1
  105. package/components/{extrapolate-color-0j_AeYkz.cjs → extrapolate-color-C0n1UDs-.cjs} +1 -1
  106. package/components/{extrapolate-color-CC9CURf6.js → extrapolate-color-v1PimdQr.js} +1 -1
  107. package/components/filter-data-item-picker/index.cjs +7 -7
  108. package/components/filter-data-item-picker/index.js +85 -86
  109. package/components/filter-expression-picker/index.cjs +1 -1
  110. package/components/filter-expression-picker/index.js +1 -1
  111. package/components/filter-item/index.cjs +6 -6
  112. package/components/filter-item/index.js +109 -119
  113. package/components/filter-value-picker/index.cjs +2 -2
  114. package/components/filter-value-picker/index.js +34 -36
  115. package/components/filter-value-picker-datetime/index.cjs +8 -8
  116. package/components/filter-value-picker-datetime/index.js +56 -71
  117. package/components/filter-value-picker-hierarchy/index.cjs +12 -12
  118. package/components/filter-value-picker-hierarchy/index.js +113 -124
  119. package/components/filter-value-picker-numeric/index.cjs +8 -8
  120. package/components/filter-value-picker-numeric/index.js +101 -110
  121. package/components/{focusable-DCIFkpiW.js → focusable-BS2pbY7w.js} +24 -26
  122. package/components/focusable-QLh-LlNt.cjs +20 -0
  123. package/components/{funnel-chart-options.config-C_VjTOvD.js → funnel-chart-options.config-CrJy2U7_.js} +5 -20
  124. package/components/funnel-chart-options.config-DrP4AFgk.cjs +20 -0
  125. package/components/{get-css-variable-DLiZYZEi.cjs → get-css-variable-CuDaWSjr.cjs} +2 -2
  126. package/components/{get-css-variable-YlLiVgo8.js → get-css-variable-DEf4GhTH.js} +4 -4
  127. package/components/grid/index.cjs +46 -46
  128. package/components/grid/index.js +2612 -1873
  129. package/components/heat-map-options.config-CIHnPdYE.cjs +20 -0
  130. package/components/{heat-map-options.config-BnLWe8jS.js → heat-map-options.config-CmL87j1j.js} +35 -41
  131. package/components/{heat-table-options.config-CUsDdgUr.js → heat-table-options.config-BrCYAgYD.js} +60 -88
  132. package/components/heat-table-options.config-DTlZRc_i.cjs +20 -0
  133. package/components/helpers-9I0oLoUB.cjs +20 -0
  134. package/components/helpers-bR8Ibjqh.js +79 -0
  135. package/components/{hexbin-map-options.config-F-7uCqxb.js → hexbin-map-options.config-BguV1w8q.js} +20 -38
  136. package/components/hexbin-map-options.config-CKnn3VAB.cjs +20 -0
  137. package/components/{index-Do7O9azB.js → index-3WsfvkZF.js} +112 -123
  138. package/components/{index-PMDgRSzR.js → index-BDFBUGBc.js} +94 -104
  139. package/components/index-BGb_wRRW.js +1766 -0
  140. package/components/{index-BPNsFiyq.cjs → index-BNAmjOkm.cjs} +4 -4
  141. package/components/index-BUal0r_D.cjs +121 -0
  142. package/components/index-D1Y5TRsH.cjs +20 -0
  143. package/components/index-DvkzMbLt.cjs +249 -0
  144. package/components/{index-CdIUfo-L.js → index-haa7WNrl.js} +453 -481
  145. package/components/index.cjs +1 -60
  146. package/components/index.js +102 -281
  147. package/components/item-options-configs.cjs +1 -1
  148. package/components/item-options-configs.js +37 -37
  149. package/components/{line-chart-options.config-DB3IsXXr.js → line-chart-options.config-BhirTGqD.js} +13 -28
  150. package/components/line-chart-options.config-Cqwou5u6.cjs +20 -0
  151. package/components/{localize-r7ALOUy_.cjs → localize-C4zNlrwK.cjs} +1 -1
  152. package/components/{localize-BX7q0S0M.js → localize-CcDpq940.js} +10 -10
  153. package/components/{marker-map-options.config-DPJ955tt.js → marker-map-options.config-Bx17jmiq.js} +1 -1
  154. package/components/{marker-map-options.config-_FYZzRwA.cjs → marker-map-options.config-CvhCylSC.cjs} +1 -1
  155. package/components/{pivot-table-options.config-DNK_AIG7.js → pivot-table-options.config-CFc7y0IT.js} +15 -24
  156. package/components/pivot-table-options.config-uZDAertf.cjs +20 -0
  157. package/components/{pyramid-chart-options.config-CcVMatYx.js → pyramid-chart-options.config-2Waxb11l.js} +29 -43
  158. package/components/pyramid-chart-options.config-DoGfEvzU.cjs +20 -0
  159. package/components/{radar-chart-options.config-CUZn_3Fd.js → radar-chart-options.config-CPN5fOl8.js} +11 -23
  160. package/components/radar-chart-options.config-CtNUMN1l.cjs +20 -0
  161. package/components/{regular-table-options.config-BoLZsBry.js → regular-table-options.config-CFKCJQK1.js} +17 -23
  162. package/components/{regular-table-options.config-DTx3RTnS.cjs → regular-table-options.config-YRuoijIk.cjs} +1 -1
  163. package/components/route-map-options.config-CVTk5RVL.cjs +20 -0
  164. package/components/{route-map-options.config-CN86T7c0.js → route-map-options.config-CyolTJfK.js} +87 -109
  165. package/components/{sankey-diagram-options.config-RFB83YLZ.cjs → sankey-diagram-options.config-D7OSvSqm.cjs} +1 -1
  166. package/components/{sankey-diagram-options.config-tVLKy_Zn.js → sankey-diagram-options.config-Ldjk84ro.js} +7 -10
  167. package/components/scatter-plot-options.config-5gN7pMTm.cjs +20 -0
  168. package/components/{scatter-plot-options.config-Corlzno1.js → scatter-plot-options.config-CfxEfkQ1.js} +56 -86
  169. package/components/{search-filter-options.config-BE3JhR-F.js → search-filter-options.config-C0syQmP4.js} +3 -6
  170. package/components/{search-filter-options.config-BCaDlYqZ.cjs → search-filter-options.config-Oqco9BKj.cjs} +1 -1
  171. package/components/{set-locale-B-Tz2sdI.js → set-locale-nv7fWEtl.js} +1 -8
  172. package/components/slicer-filter-options.config-CrusP6a0.cjs +20 -0
  173. package/components/{slicer-filter-options.config-3JZZcw5C.js → slicer-filter-options.config-DmOe3440.js} +9 -18
  174. package/components/{slider-filter-options.config-DH4SS8wH.js → slider-filter-options.config-B1M8RcDs.js} +1 -1
  175. package/components/{slider-filter-options.config-_8Z2zKmU.cjs → slider-filter-options.config-k45I-t6G.cjs} +1 -1
  176. package/components/slot-contents-picker/index.cjs +33 -33
  177. package/components/slot-contents-picker/index.js +194 -205
  178. package/components/slot-menu/index.cjs +12 -12
  179. package/components/slot-menu/index.js +171 -184
  180. package/components/slot-menu-list/index.cjs +3 -3
  181. package/components/slot-menu-list/index.js +97 -103
  182. package/components/speedometer-chart-options.config-B4ceg_qI.cjs +20 -0
  183. package/components/{speedometer-chart-options.config-SL581yOa.js → speedometer-chart-options.config-CzOmuEF8.js} +31 -53
  184. package/components/spike-map-options.config-BkkDqb4g.cjs +20 -0
  185. package/components/{spike-map-options.config-C5KewecZ.js → spike-map-options.config-Cbt1YUw6.js} +91 -122
  186. package/components/{sunburst-chart-options.config-AbNjWS6t.cjs → sunburst-chart-options.config-Yrxc2i57.cjs} +1 -1
  187. package/components/{sunburst-chart-options.config-CNauGQJv.js → sunburst-chart-options.config-_dyLQxPJ.js} +9 -20
  188. package/components/{symbol-map-options.config-DdDA4aa7.js → symbol-map-options.config-BORL1NSU.js} +11 -20
  189. package/components/symbol-map-options.config-NpBKm64d.cjs +20 -0
  190. package/components/{treemap-chart-options.config-D5AJaF_u.js → treemap-chart-options.config-B9i9qIm_.js} +20 -37
  191. package/components/treemap-chart-options.config-x4J54WSw.cjs +20 -0
  192. package/components/utils.cjs +1 -1
  193. package/components/utils.js +64 -65
  194. package/components/{video-options.config-CGsDTwHc.cjs → video-options.config-B0asgYt8.cjs} +1 -1
  195. package/components/{video-options.config-Dk36zJ1B.js → video-options.config-UX-9MDfS.js} +7 -10
  196. package/components/{wordcloud-chart-options.config-vGfCW8kE.cjs → wordcloud-chart-options.config-BKtJT8Va.cjs} +1 -1
  197. package/components/{wordcloud-chart-options.config-w2NUIWVA.js → wordcloud-chart-options.config-BoB_KuhA.js} +4 -7
  198. package/custom-elements.json +22 -2
  199. package/index.d.ts +1 -0
  200. package/package.json +5 -5
  201. package/types.d.ts +1 -1
  202. package/components/area-chart-options.config-C7sMAHco.cjs +0 -20
  203. package/components/bar-chart-options.config-DcxEkOT5.cjs +0 -20
  204. package/components/box-plot-options.config-SrrbDEYW.cjs +0 -20
  205. package/components/bubble-chart-options.config-Ihn6eVQI.cjs +0 -20
  206. package/components/calculate-data-item-icon-DZDqb3xu.js +0 -139
  207. package/components/choropleth-map-options.config-ZW8yoZH2.cjs +0 -20
  208. package/components/circular-gauge-options.config-msZ4mfpN.cjs +0 -20
  209. package/components/color-B6LaL8qz.cjs +0 -20
  210. package/components/color-range-utils-C5yXW7ZC.cjs +0 -20
  211. package/components/column-chart-options.config-BjDvA7i9.cjs +0 -20
  212. package/components/conditional-number-options.config-DgzUo0xi.cjs +0 -20
  213. package/components/donut-chart-options.config-tNpqBZfR.cjs +0 -20
  214. package/components/en-BKBhKBXY.cjs +0 -20
  215. package/components/en-BOTjhwEc.js +0 -1488
  216. package/components/focusable-B3E_hQmm.cjs +0 -20
  217. package/components/funnel-chart-options.config-D7H7gFcx.cjs +0 -20
  218. package/components/heat-map-options.config-DVH-Bb5-.cjs +0 -20
  219. package/components/heat-table-options.config-B12JEYnp.cjs +0 -20
  220. package/components/helpers-DXQwEH1P.cjs +0 -20
  221. package/components/helpers-v1bPALRP.js +0 -91
  222. package/components/hexbin-map-options.config-DZERRhM8.cjs +0 -20
  223. package/components/index-BPN3bG9X.js +0 -1733
  224. package/components/index-CQ9ck-BO.cjs +0 -249
  225. package/components/index-CXn67vdn.cjs +0 -121
  226. package/components/index-cfj52IbK.cjs +0 -20
  227. package/components/line-chart-options.config-DSugoe0t.cjs +0 -20
  228. package/components/pivot-table-options.config-BiJXKSFR.cjs +0 -20
  229. package/components/pyramid-chart-options.config-C4zbFS26.cjs +0 -20
  230. package/components/radar-chart-options.config-EqQu6PTh.cjs +0 -20
  231. package/components/route-map-options.config-D7NJePTu.cjs +0 -20
  232. package/components/scatter-plot-options.config-CFfGJXsV.cjs +0 -20
  233. package/components/slicer-filter-options.config-DNI-XevE.cjs +0 -20
  234. package/components/speedometer-chart-options.config-BX9LTQBH.cjs +0 -20
  235. package/components/spike-map-options.config-DoBFXPmN.cjs +0 -20
  236. package/components/symbol-map-options.config-m-lwLTtu.cjs +0 -20
  237. package/components/treemap-chart-options.config-C0Q9aQ1Z.cjs +0 -20
@@ -1,5 +1,5 @@
1
1
  import { Component, Input, Output, EventEmitter, ChangeDetectionStrategy } from '@angular/core';
2
- import type { ItemType, SlotName, VizItemSlots, Placement } from '../types';
2
+ import type { VizItemType, SlotName, VizItemSlots, Placement } from '../types';
3
3
 
4
4
  @Component({
5
5
  selector: 'luzmo-droppable-slot',
@@ -29,7 +29,7 @@ import type { ItemType, SlotName, VizItemSlots, Placement } from '../types';
29
29
  </luzmo-droppable-slot>`
30
30
  })
31
31
  export class DroppableSlotComponent {
32
- @Input() itemType?: ItemType;
32
+ @Input() itemType?: VizItemType;
33
33
  @Input() slotName?: SlotName;
34
34
  @Input() slotConfiguration?: any;
35
35
  @Input() slotsContents?: VizItemSlots;
@@ -1,8 +1,8 @@
1
1
  import { EventEmitter } from '@angular/core';
2
- import type { ItemType, SlotName, VizItemSlots, Placement } from '../types';
2
+ import type { VizItemType, SlotName, VizItemSlots, Placement } from '../types';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class DroppableSlotComponent {
5
- itemType?: ItemType;
5
+ itemType?: VizItemType;
6
6
  slotName?: SlotName;
7
7
  slotConfiguration?: any;
8
8
  slotsContents?: VizItemSlots;
@@ -7,7 +7,7 @@ import { VizItemType } from '@luzmo/dashboard-contents-types';
7
7
  import { IconDefinition } from '@luzmo/icons';
8
8
  import { Placement } from '@luzmo/lucero';
9
9
  import { TemplateResult } from 'lit';
10
- export type { Column, ColumnSubtype, ColumnType, GenericSlotContent, ItemType, SlotName, VizItemSlots } from '@luzmo/dashboard-contents-types';
10
+ export type { Column, ColumnSubtype, ColumnType, GenericSlotContent, SlotName, VizItemSlots, VizItemType } from '@luzmo/dashboard-contents-types';
11
11
  export declare enum PeriodOverPeriodCondition {
12
12
  HasDatetimeColumnAndNoComparisonFilters = "hasDatetimeColumnAndNoComparisonFilters",
13
13
  NoDatetimeColumnAndNoComparisonFilters = "noDatetimeColumnAndNoComparisonFilters",
package/angular/types.ts CHANGED
@@ -14,9 +14,9 @@ export type {
14
14
  ColumnSubtype,
15
15
  ColumnType,
16
16
  GenericSlotContent,
17
- ItemType,
18
17
  SlotName,
19
- VizItemSlots
18
+ VizItemSlots,
19
+ VizItemType
20
20
  } from '@luzmo/dashboard-contents-types';
21
21
 
22
22
  export enum PeriodOverPeriodCondition {
@@ -17,7 +17,7 @@
17
17
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
18
  * SOFTWARE.
19
19
  * */
20
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("lit"),e=require("../focusable-B3E_hQmm.cjs");require("lit/decorators.js");const o=":host{box-sizing:border-box;display:block;width:100%;height:100%;background:var(--luzmo-ai-chat-messages-container-background, var(--ai-chat-messages-container-background));border-radius:var(--luzmo-ai-chat-messages-container-border-radius, var(--ai-chat-messages-container-border-radius));overflow:hidden}:host .messages-container{display:flex;flex-direction:column;height:100%;overflow-y:auto;padding:var(--luzmo-ai-chat-messages-container-padding, var(--ai-chat-messages-container-padding));gap:var(--luzmo-ai-chat-messages-container-gap, var(--ai-chat-messages-container-gap));scrollbar-width:thin;scrollbar-color:var(--luzmo-ai-chat-messages-container-scrollbar-thumb-background, var(--ai-chat-messages-container-scrollbar-track-background))}:host .messages-container::-webkit-scrollbar{width:var(--luzmo-ai-chat-messages-container-scrollbar-width, var(--ai-chat-messages-container-scrollbar-width))}:host .messages-container::-webkit-scrollbar-track{background:var(--luzmo-ai-chat-messages-container-scrollbar-track-background, var(--ai-chat-messages-container-scrollbar-track-background));border-radius:var(--luzmo-ai-chat-messages-container-scrollbar-track-border-radius, var(--ai-chat-messages-container-scrollbar-track-border-radius))}:host .messages-container::-webkit-scrollbar-thumb{background:var(--luzmo-ai-chat-messages-container-scrollbar-thumb-background, var(--ai-chat-messages-container-scrollbar-thumb-background));border-radius:var(--luzmo-ai-chat-messages-container-scrollbar-thumb-border-radius, var(--ai-chat-messages-container-scrollbar-thumb-border-radius))}:host .messages-container::-webkit-scrollbar-thumb:hover{background:var(--luzmo-ai-chat-messages-container-scrollbar-thumb-hover-background, var(--ai-chat-messages-container-scrollbar-thumb-hover-background))}:host .messages-container{scroll-behavior:smooth}:host .messages-container:focus{outline:var(--luzmo-ai-chat-messages-container-focus-outline, var(--ai-chat-messages-container-focus-outline));outline-offset:-2px}:host{--ai-chat-messages-container-background: var(--luzmo-background-color);--ai-chat-messages-container-border-radius: var(--luzmo-border-radius-l);--ai-chat-messages-container-padding: var(--luzmo-spacing-5);--ai-chat-messages-container-gap: var(--luzmo-spacing-2);--ai-chat-messages-container-scrollbar-width: 6px;--ai-chat-messages-container-scrollbar-track-background: var(--luzmo-background-color-highlight);--ai-chat-messages-container-scrollbar-track-border-radius: var(--luzmo-border-radius-s);--ai-chat-messages-container-scrollbar-thumb-background: var(--luzmo-border-color-full);--ai-chat-messages-container-scrollbar-thumb-border-radius: var(--luzmo-border-radius-s);--ai-chat-messages-container-scrollbar-thumb-hover-background: var(--luzmo-border-color-full-hover);--ai-chat-messages-container-focus-outline: 2px solid var(--luzmo-primary)}",r=class r extends e.LuzmoElement{render(){return s.html`
20
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("lit"),e=require("../focusable-QLh-LlNt.cjs");require("lit/decorators.js");const o=":host{box-sizing:border-box;display:block;width:100%;height:100%;background:var(--luzmo-ai-chat-messages-container-background, var(--ai-chat-messages-container-background));border-radius:var(--luzmo-ai-chat-messages-container-border-radius, var(--ai-chat-messages-container-border-radius));overflow:hidden}:host .messages-container{display:flex;flex-direction:column;height:100%;overflow-y:auto;padding:var(--luzmo-ai-chat-messages-container-padding, var(--ai-chat-messages-container-padding));gap:var(--luzmo-ai-chat-messages-container-gap, var(--ai-chat-messages-container-gap))}:host .messages-container::-webkit-scrollbar{width:var(--luzmo-ai-chat-messages-container-scrollbar-width, var(--ai-chat-messages-container-scrollbar-width))}:host .messages-container::-webkit-scrollbar-track{background:var(--luzmo-ai-chat-messages-container-scrollbar-track-background, var(--ai-chat-messages-container-scrollbar-track-background));border-radius:var(--luzmo-ai-chat-messages-container-scrollbar-track-border-radius, var(--ai-chat-messages-container-scrollbar-track-border-radius))}:host .messages-container::-webkit-scrollbar-thumb{background:var(--luzmo-ai-chat-messages-container-scrollbar-thumb-background, var(--ai-chat-messages-container-scrollbar-thumb-background));border-radius:var(--luzmo-ai-chat-messages-container-scrollbar-thumb-border-radius, var(--ai-chat-messages-container-scrollbar-thumb-border-radius))}:host .messages-container::-webkit-scrollbar-thumb:hover{background:var(--luzmo-ai-chat-messages-container-scrollbar-thumb-hover-background, var(--ai-chat-messages-container-scrollbar-thumb-hover-background))}:host .messages-container{scrollbar-width:thin;scrollbar-color:var(--luzmo-ai-chat-messages-container-scrollbar-thumb-background, var(--ai-chat-messages-container-scrollbar-track-background))}:host .messages-container{scroll-behavior:smooth}:host .messages-container:focus{outline:var(--luzmo-ai-chat-messages-container-focus-outline, var(--ai-chat-messages-container-focus-outline));outline-offset:-2px}:host{--ai-chat-messages-container-background: var(--luzmo-background-color);--ai-chat-messages-container-border-radius: var(--luzmo-border-radius-l);--ai-chat-messages-container-padding: var(--luzmo-spacing-5);--ai-chat-messages-container-gap: var(--luzmo-spacing-2);--ai-chat-messages-container-scrollbar-width: 6px;--ai-chat-messages-container-scrollbar-track-background: var(--luzmo-background-color-highlight);--ai-chat-messages-container-scrollbar-track-border-radius: var(--luzmo-border-radius-s);--ai-chat-messages-container-scrollbar-thumb-background: var(--luzmo-border-color-full);--ai-chat-messages-container-scrollbar-thumb-border-radius: var(--luzmo-border-radius-s);--ai-chat-messages-container-scrollbar-thumb-hover-background: var(--luzmo-border-color-full-hover);--ai-chat-messages-container-focus-outline: 2px solid var(--luzmo-primary)}",r=class r extends e.LuzmoElement{render(){return s.html`
21
21
  <div class="messages-container">
22
22
  <slot></slot>
23
23
  </div>
@@ -18,7 +18,7 @@
18
18
  * SOFTWARE.
19
19
  * */
20
20
  import { unsafeCSS as e, html as l } from "lit";
21
- import { L as s } from "../focusable-DCIFkpiW.js";
21
+ import { L as s } from "../focusable-BS2pbY7w.js";
22
22
  import "lit/decorators.js";
23
23
  (function() {
24
24
  if (typeof document < "u" && !document.querySelector("style[data-luzmo-vars]")) {
@@ -26,7 +26,7 @@ import "lit/decorators.js";
26
26
  o.setAttribute("data-luzmo-vars", ""), o.textContent = 'html{--luzmo-animation-duration: 0.15s;--luzmo-border-color: rgba(var(--luzmo-border-color-rgb), 0.1);--luzmo-border-color-hover: rgba(var(--luzmo-border-color-rgb), 0.15);--luzmo-border-color-down: rgba(var(--luzmo-border-color-rgb), 0.3);--luzmo-border-color-focus: rgba(var(--luzmo-border-color-rgb), 0.15);--luzmo-border-color-rgb: 0, 0, 0;--luzmo-border-color-full: rgb(180, 180, 180);--luzmo-border-color-full-hover: rgb(140, 140, 140);--luzmo-border-color-full-down: rgb(110, 110, 110);--luzmo-border-color-full-focus: rgb(140, 140, 140);--luzmo-border-color-disabled: #dddddd;--luzmo-border-radius: 6px;--luzmo-border-radius-s: 4px;--luzmo-border-radius-l: 8px;--luzmo-border-radius-xl: 12px;--luzmo-border-radius-full: 999rem;--luzmo-background-color: #ffffff;--luzmo-background-color-rgb: 255, 255, 255;--luzmo-background-color-disabled: #eeeeee;--luzmo-background-color-hover: #f0f0fc;--luzmo-background-color-down: #f1f1ff;--luzmo-background-color-focus: #f0f0fc;--luzmo-background-color-highlight: rgb(240, 240, 240);--luzmo-background-color-highlight-disabled: rgb(245, 245, 245);--luzmo-background-color-highlight-hover: rgb(225, 225, 225);--luzmo-background-color-highlight-down: rgb(215, 215, 215);--luzmo-background-color-highlight-focus: rgb(225, 225, 225);--luzmo-background-color-alt-1: rgb(250, 250, 250);--luzmo-background-color-alt-2: rgb(239, 239, 239);--luzmo-border-width: 1px;--luzmo-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", Helvetica, Arial, sans-serif;--luzmo-font-size-xs: 10px;--luzmo-font-size-s: 12px;--luzmo-font-size-m: 14px;--luzmo-font-size: 14px;--luzmo-font-size-l: 16px;--luzmo-font-size-xl: 18px;--luzmo-font-size-xxl: 20px;--luzmo-font-style: normal;--luzmo-line-height: normal;--luzmo-font-weight: 400;--luzmo-font-weight-semibold: 500;--luzmo-font-weight-bold: 600;--luzmo-font-color: #333;--luzmo-font-color-hard: #000;--luzmo-font-color-disabled: var(--luzmo-color-disabled);--luzmo-font-color-extra-dimmed: #888;--luzmo-font-color-hover: #333;--luzmo-font-color-down: #111;--luzmo-font-color-focus: #333;--luzmo-primary: #4434ff;--luzmo-primary-hover: #4234e4;--luzmo-primary-down: #392cc7;--luzmo-primary-focus: #4234e4;--luzmo-primary-inverse-color: #ffffff;--luzmo-primary-rgb: 68, 52, 255;--luzmo-secondary: #ff00ff;--luzmo-secondary-hover: #e309e3;--luzmo-secondary-down: #c711c7;--luzmo-secondary-focus: #e309e3;--luzmo-secondary-inverse-color: #ffffff;--luzmo-secondary-rgb: 255, 0, 255;--luzmo-secondary-outline: rgba(255, 0, 255, 0.2);--luzmo-negative-color: #ca221c;--luzmo-negative-color-hover: #b3241f;--luzmo-negative-color-down: #9f231f;--luzmo-negative-color-focus: #b3241f;--luzmo-negative-color-rgb: 202, 34, 28;--luzmo-positive-color: rgb(20, 150, 101);--luzmo-positive-color-hover: rgb(17, 128, 86);--luzmo-positive-color-down: rgb(16, 105, 71);--luzmo-positive-color-focus: rgb(17, 128, 86);--luzmo-positive-color-rgb: 20, 150, 101;--luzmo-selected-color: rgb(110, 110, 110);--luzmo-selected-color-hover: rgb(70, 70, 70);--luzmo-selected-color-down: rgb(40, 40, 40);--luzmo-selected-color-focus: rgb(70, 70, 70);--luzmo-selected-color-hard: #1e1e1e;--luzmo-selected-color-hard-hover: rgb(0, 0, 0);--luzmo-selected-color-hard-down: rgb(0, 0, 0);--luzmo-selected-color-hard-focus: rgb(0, 0, 0);--luzmo-color-informative: #1a77e9;--luzmo-color-informative-rgb: 26, 119, 233;--luzmo-color-disabled: #aaaaaa;--luzmo-spacing-1: 2px;--luzmo-spacing-2: 4px;--luzmo-spacing-3: 8px;--luzmo-spacing-4: 12px;--luzmo-spacing-5: 16px;--luzmo-indicator-gap: 2px;--luzmo-indicator-width: 1px;--luzmo-indicator-color: var(--luzmo-primary);--luzmo-component-height-xxs: 20px;--luzmo-component-height-xs: 24px;--luzmo-component-height-s: 28px;--luzmo-component-height: 32px;--luzmo-component-height-l: 40px;--luzmo-component-height-xl: 48px;--luzmo-component-height-xxl: 64px;--luzmo-icon-size-xxs: 12px;--luzmo-icon-size-xs: 14px;--luzmo-icon-size-s: 16px;--luzmo-icon-size-m: 18px;--luzmo-icon-size-l: 20px;--luzmo-icon-size-xl: 22px;--luzmo-icon-size-xxl: 32px}', document.head.appendChild(o);
27
27
  }
28
28
  })();
29
- const c = ":host{box-sizing:border-box;display:block;width:100%;height:100%;background:var(--luzmo-ai-chat-messages-container-background, var(--ai-chat-messages-container-background));border-radius:var(--luzmo-ai-chat-messages-container-border-radius, var(--ai-chat-messages-container-border-radius));overflow:hidden}:host .messages-container{display:flex;flex-direction:column;height:100%;overflow-y:auto;padding:var(--luzmo-ai-chat-messages-container-padding, var(--ai-chat-messages-container-padding));gap:var(--luzmo-ai-chat-messages-container-gap, var(--ai-chat-messages-container-gap));scrollbar-width:thin;scrollbar-color:var(--luzmo-ai-chat-messages-container-scrollbar-thumb-background, var(--ai-chat-messages-container-scrollbar-track-background))}:host .messages-container::-webkit-scrollbar{width:var(--luzmo-ai-chat-messages-container-scrollbar-width, var(--ai-chat-messages-container-scrollbar-width))}:host .messages-container::-webkit-scrollbar-track{background:var(--luzmo-ai-chat-messages-container-scrollbar-track-background, var(--ai-chat-messages-container-scrollbar-track-background));border-radius:var(--luzmo-ai-chat-messages-container-scrollbar-track-border-radius, var(--ai-chat-messages-container-scrollbar-track-border-radius))}:host .messages-container::-webkit-scrollbar-thumb{background:var(--luzmo-ai-chat-messages-container-scrollbar-thumb-background, var(--ai-chat-messages-container-scrollbar-thumb-background));border-radius:var(--luzmo-ai-chat-messages-container-scrollbar-thumb-border-radius, var(--ai-chat-messages-container-scrollbar-thumb-border-radius))}:host .messages-container::-webkit-scrollbar-thumb:hover{background:var(--luzmo-ai-chat-messages-container-scrollbar-thumb-hover-background, var(--ai-chat-messages-container-scrollbar-thumb-hover-background))}:host .messages-container{scroll-behavior:smooth}:host .messages-container:focus{outline:var(--luzmo-ai-chat-messages-container-focus-outline, var(--ai-chat-messages-container-focus-outline));outline-offset:-2px}:host{--ai-chat-messages-container-background: var(--luzmo-background-color);--ai-chat-messages-container-border-radius: var(--luzmo-border-radius-l);--ai-chat-messages-container-padding: var(--luzmo-spacing-5);--ai-chat-messages-container-gap: var(--luzmo-spacing-2);--ai-chat-messages-container-scrollbar-width: 6px;--ai-chat-messages-container-scrollbar-track-background: var(--luzmo-background-color-highlight);--ai-chat-messages-container-scrollbar-track-border-radius: var(--luzmo-border-radius-s);--ai-chat-messages-container-scrollbar-thumb-background: var(--luzmo-border-color-full);--ai-chat-messages-container-scrollbar-thumb-border-radius: var(--luzmo-border-radius-s);--ai-chat-messages-container-scrollbar-thumb-hover-background: var(--luzmo-border-color-full-hover);--ai-chat-messages-container-focus-outline: 2px solid var(--luzmo-primary)}", a = class a extends s {
29
+ const c = ":host{box-sizing:border-box;display:block;width:100%;height:100%;background:var(--luzmo-ai-chat-messages-container-background, var(--ai-chat-messages-container-background));border-radius:var(--luzmo-ai-chat-messages-container-border-radius, var(--ai-chat-messages-container-border-radius));overflow:hidden}:host .messages-container{display:flex;flex-direction:column;height:100%;overflow-y:auto;padding:var(--luzmo-ai-chat-messages-container-padding, var(--ai-chat-messages-container-padding));gap:var(--luzmo-ai-chat-messages-container-gap, var(--ai-chat-messages-container-gap))}:host .messages-container::-webkit-scrollbar{width:var(--luzmo-ai-chat-messages-container-scrollbar-width, var(--ai-chat-messages-container-scrollbar-width))}:host .messages-container::-webkit-scrollbar-track{background:var(--luzmo-ai-chat-messages-container-scrollbar-track-background, var(--ai-chat-messages-container-scrollbar-track-background));border-radius:var(--luzmo-ai-chat-messages-container-scrollbar-track-border-radius, var(--ai-chat-messages-container-scrollbar-track-border-radius))}:host .messages-container::-webkit-scrollbar-thumb{background:var(--luzmo-ai-chat-messages-container-scrollbar-thumb-background, var(--ai-chat-messages-container-scrollbar-thumb-background));border-radius:var(--luzmo-ai-chat-messages-container-scrollbar-thumb-border-radius, var(--ai-chat-messages-container-scrollbar-thumb-border-radius))}:host .messages-container::-webkit-scrollbar-thumb:hover{background:var(--luzmo-ai-chat-messages-container-scrollbar-thumb-hover-background, var(--ai-chat-messages-container-scrollbar-thumb-hover-background))}:host .messages-container{scrollbar-width:thin;scrollbar-color:var(--luzmo-ai-chat-messages-container-scrollbar-thumb-background, var(--ai-chat-messages-container-scrollbar-track-background))}:host .messages-container{scroll-behavior:smooth}:host .messages-container:focus{outline:var(--luzmo-ai-chat-messages-container-focus-outline, var(--ai-chat-messages-container-focus-outline));outline-offset:-2px}:host{--ai-chat-messages-container-background: var(--luzmo-background-color);--ai-chat-messages-container-border-radius: var(--luzmo-border-radius-l);--ai-chat-messages-container-padding: var(--luzmo-spacing-5);--ai-chat-messages-container-gap: var(--luzmo-spacing-2);--ai-chat-messages-container-scrollbar-width: 6px;--ai-chat-messages-container-scrollbar-track-background: var(--luzmo-background-color-highlight);--ai-chat-messages-container-scrollbar-track-border-radius: var(--luzmo-border-radius-s);--ai-chat-messages-container-scrollbar-thumb-background: var(--luzmo-border-color-full);--ai-chat-messages-container-scrollbar-thumb-border-radius: var(--luzmo-border-radius-s);--ai-chat-messages-container-scrollbar-thumb-hover-background: var(--luzmo-border-color-full-hover);--ai-chat-messages-container-focus-outline: 2px solid var(--luzmo-primary)}", a = class a extends s {
30
30
  render() {
31
31
  return l`
32
32
  <div class="messages-container">
@@ -0,0 +1,50 @@
1
+ /*! * A kit of modern Luzmo Web Components for analytics in your web application.
2
+ *
3
+ * Copyright © 2025 Luzmo
4
+ * All rights reserved.
5
+ * Luzmo web components (“Luzmo Web Components”)
6
+ * must be used according to the Luzmo Terms of Service.
7
+ * This license allows users with a current active Luzmo account
8
+ * to use the Luzmo Web Components. This license terminates
9
+ * automatically if a user no longer has an active Luzmo account.
10
+ * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
11
+ *
12
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
13
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
14
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
15
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
16
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
17
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
+ * SOFTWARE.
19
+ * */
20
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("@lit/localize"),u=require("@luzmo/icons"),l=require("lit"),i=require("lit/decorators.js");require("../dataset-selector-row/index.cjs");const m=":host{box-sizing:border-box;display:flex;flex-direction:column;background-color:var(--luzmo-ai-interaction-textarea-background-color, var(--ai-interaction-textarea-background-color));border:1px solid var(--luzmo-ai-interaction-textarea-border-color, var(--ai-interaction-textarea-border-color));border-radius:var(--luzmo-ai-interaction-textarea-border-radius, var(--ai-interaction-textarea-border-radius));padding:var(--luzmo-ai-interaction-textarea-padding, var(--ai-interaction-textarea-padding));gap:var(--luzmo-ai-interaction-textarea-gap, var(--ai-interaction-textarea-gap));font-family:var(--luzmo-ai-interaction-textarea-font-family, var(--ai-interaction-textarea-font-family));font-size:var(--luzmo-ai-interaction-textarea-font-size, var(--ai-interaction-textarea-font-size))}:host:has(textarea:focus){border-color:var(--luzmo-ai-interaction-textarea-focus-border-color, var(--ai-interaction-textarea-focus-border-color));box-shadow:var(--luzmo-ai-interaction-textarea-focus-box-shadow, var(--ai-interaction-textarea-focus-box-shadow))}:host textarea{background-color:var(--luzmo-ai-interaction-textarea-textarea-background, var(--ai-interaction-textarea-textarea-background));border:none;resize:none;outline:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;vertical-align:middle;padding:0;min-height:3rem;color:var(--luzmo-ai-interaction-textarea-textarea-color, var(--ai-interaction-textarea-textarea-color));font-family:var(--luzmo-ai-interaction-textarea-font-family, var(--ai-interaction-textarea-font-family));font-size:var(--luzmo-ai-interaction-textarea-font-size, var(--ai-interaction-textarea-font-size));line-height:1.5}:host textarea::placeholder{color:var(--luzmo-ai-interaction-textarea-textarea-placeholder-color, var(--ai-interaction-textarea-textarea-placeholder-color))}:host .button-container{text-align:var(--luzmo-ai-interaction-textarea-button-container-text-align, var(--ai-interaction-textarea-button-container-text-align))}:host .button-container button{padding:var(--luzmo-ai-interaction-textarea-button-padding, var(--ai-interaction-textarea-button-padding));min-width:var(--luzmo-ai-interaction-textarea-button-min-width, var(--ai-interaction-textarea-button-min-width));min-height:var(--luzmo-ai-interaction-textarea-button-min-height, var(--ai-interaction-textarea-button-min-height));border:none;border-radius:var(--luzmo-ai-interaction-textarea-button-border-radius, var(--ai-interaction-textarea-button-border-radius));font-size:var(--luzmo-ai-interaction-textarea-button-font-size, var(--ai-interaction-textarea-button-font-size));cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .15s ease}:host .button-container button:disabled{opacity:.6;cursor:not-allowed}:host .button-container button.disabled{opacity:.6;cursor:not-allowed}:host .button-container button svg{display:flex;align-items:center;justify-content:center}:host .button-container button.btn-primary{background-color:var(--luzmo-ai-interaction-textarea-button-background-color, var(--ai-interaction-textarea-button-background-color));color:var(--luzmo-ai-interaction-textarea-button-color, var(--ai-interaction-textarea-button-color))}:host .button-container button.btn-primary:hover:not(:disabled):not(.disabled){background-color:var(--luzmo-ai-interaction-textarea-button-background-color-hover, var(--ai-interaction-textarea-button-background-color-hover))}:host .button-container button.btn-primary:disabled,:host .button-container button.btn-primary.disabled{background-color:var(--luzmo-ai-interaction-textarea-button-background-color-disabled, var(--ai-interaction-textarea-button-background-color-disabled));opacity:.6}:host{--ai-interaction-textarea-background-color: var(--luzmo-background-color-alt-2);--ai-interaction-textarea-border-color: var(--luzmo-border-color);--ai-interaction-textarea-border-radius: .5rem;--ai-interaction-textarea-padding: .75rem;--ai-interaction-textarea-gap: 1rem;--ai-interaction-textarea-focus-border-color: var(--luzmo-primary);--ai-interaction-textarea-focus-box-shadow: 0 0 1rem 0 var(--luzmo-primary-50);--ai-interaction-textarea-font-family: var(--luzmo-font-family);--ai-interaction-textarea-font-size: .875rem;--ai-interaction-textarea-textarea-background: transparent;--ai-interaction-textarea-textarea-color: var(--luzmo-font-color);--ai-interaction-textarea-textarea-placeholder-color: var(--luzmo-font-color-extra-dimmed);--ai-interaction-textarea-button-container-text-align: right;--ai-interaction-textarea-button-padding: 0;--ai-interaction-textarea-button-min-width: 2rem;--ai-interaction-textarea-button-min-height: 1.875rem;--ai-interaction-textarea-button-border-radius: .5rem;--ai-interaction-textarea-button-font-size: 1rem;--ai-interaction-textarea-button-background-color: var(--luzmo-primary);--ai-interaction-textarea-button-background-color-hover: var(--luzmo-primary-hover);--ai-interaction-textarea-button-background-color-disabled: var(--luzmo-primary);--ai-interaction-textarea-button-color: var(--luzmo-primary-inverse-color)}";var p=Object.defineProperty,b=Object.getOwnPropertyDescriptor,r=(n,t,a,e)=>{for(var o=e>1?void 0:e?b(t,a):t,c=n.length-1,s;c>=0;c--)(s=n[c])&&(o=(e?s(t,a,o):s(o))||o);return e&&o&&p(t,a,o),o};exports.LuzmoAiInteractionTextarea=class extends l.LitElement{constructor(){super(...arguments),this.placeholder="Type your prompt here...",this.selectedDatasets=[],this.authKey="",this.authToken="",this.apiUrl="https://api.luzmo.com",this.appServer="https://app.luzmo.com",this.flagOpendata=!1,this._promptValue="",this._isPromptValid=!1}get _buttonDisabled(){return this.selectedDatasets.length===0||!this._isPromptValid}_autoResizeTextarea(t){t.style.height="auto";const a=2*1.5*16,e=8*1.5*16,o=Math.max(a,Math.min(t.scrollHeight,e));t.style.height=`${o}px`}_handlePromptInput(t){const a=t.target;this._promptValue=a.value,this._isPromptValid=a.value.trim().length>0,this._autoResizeTextarea(a),a.scrollTo({top:a.scrollHeight})}_handleKeyDown(t){t.key==="Enter"&&!t.shiftKey&&(t.preventDefault(),this._submitPrompt())}_submitPrompt(){if(this._buttonDisabled)return;const t=this._promptValue.trim();this.dispatchEvent(new CustomEvent("prompt-submitted",{detail:{prompt:t,selectedDatasets:this.selectedDatasets},bubbles:!0,composed:!0}))}_handleDatasetSelected(t){const a=t.detail;this.selectedDatasets.some(e=>e.id===a.id)||(this.selectedDatasets=[...this.selectedDatasets,a])}_handleDatasetRemoved(t){const a=t.detail;this.selectedDatasets=this.selectedDatasets.filter(e=>e.id!==a.id)}firstUpdated(){const t=this.shadowRoot?.querySelector("textarea");t&&this._autoResizeTextarea(t)}render(){return l.html`
21
+ <luzmo-dataset-selector-row
22
+ .selectedDatasets=${this.selectedDatasets}
23
+ auth-key=${this.authKey}
24
+ auth-token=${this.authToken}
25
+ api-url=${this.apiUrl}
26
+ app-server=${this.appServer}
27
+ ?flag-opendata=${this.flagOpendata}
28
+ @dataset-selected=${this._handleDatasetSelected}
29
+ @dataset-removed=${this._handleDatasetRemoved}
30
+ ></luzmo-dataset-selector-row>
31
+
32
+ <textarea
33
+ autofocus
34
+ .placeholder=${this.placeholder}
35
+ .value=${this._promptValue}
36
+ @input=${this._handlePromptInput}
37
+ @keydown=${this._handleKeyDown}
38
+ rows="2"
39
+ ></textarea>
40
+
41
+ <div class="button-container">
42
+ <button
43
+ class="btn btn-primary"
44
+ ?disabled=${this._buttonDisabled}
45
+ @click=${this._submitPrompt}
46
+ >
47
+ ${u.luzmoIcon(u.luzmoArrowRight)}
48
+ </button>
49
+ </div>
50
+ `}};exports.LuzmoAiInteractionTextarea.styles=l.unsafeCSS(m);exports.LuzmoAiInteractionTextarea.tagName="luzmo-ai-interaction-textarea";r([i.property({type:String})],exports.LuzmoAiInteractionTextarea.prototype,"placeholder",2);r([i.property({type:Array})],exports.LuzmoAiInteractionTextarea.prototype,"selectedDatasets",2);r([i.property({type:String,attribute:"auth-key"})],exports.LuzmoAiInteractionTextarea.prototype,"authKey",2);r([i.property({type:String,attribute:"auth-token"})],exports.LuzmoAiInteractionTextarea.prototype,"authToken",2);r([i.property({type:String,attribute:"api-url"})],exports.LuzmoAiInteractionTextarea.prototype,"apiUrl",2);r([i.property({type:String,attribute:"app-server"})],exports.LuzmoAiInteractionTextarea.prototype,"appServer",2);r([i.property({type:Boolean,attribute:"flag-opendata"})],exports.LuzmoAiInteractionTextarea.prototype,"flagOpendata",2);r([i.state()],exports.LuzmoAiInteractionTextarea.prototype,"_promptValue",2);r([i.state()],exports.LuzmoAiInteractionTextarea.prototype,"_isPromptValid",2);exports.LuzmoAiInteractionTextarea=r([d.localized()],exports.LuzmoAiInteractionTextarea);customElements.get("luzmo-ai-interaction-textarea")||customElements.define("luzmo-ai-interaction-textarea",exports.LuzmoAiInteractionTextarea);
@@ -1,7 +1,7 @@
1
1
  import { LuzmoAiInteractionTextarea } from './ai-interaction-textarea';
2
- export { LuzmoAiInteractionTextarea } from './ai-interaction-textarea';
3
2
  declare global {
4
3
  interface HTMLElementTagNameMap {
5
4
  'luzmo-ai-interaction-textarea': LuzmoAiInteractionTextarea;
6
5
  }
7
6
  }
7
+ export { LuzmoAiInteractionTextarea } from './ai-interaction-textarea';
@@ -0,0 +1,152 @@
1
+ /*! * A kit of modern Luzmo Web Components for analytics in your web application.
2
+ *
3
+ * Copyright © 2025 Luzmo
4
+ * All rights reserved.
5
+ * Luzmo web components (“Luzmo Web Components”)
6
+ * must be used according to the Luzmo Terms of Service.
7
+ * This license allows users with a current active Luzmo account
8
+ * to use the Luzmo Web Components. This license terminates
9
+ * automatically if a user no longer has an active Luzmo account.
10
+ * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
11
+ *
12
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
13
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
14
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
15
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
16
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
17
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
+ * SOFTWARE.
19
+ * */
20
+ import { localized as m } from "@lit/localize";
21
+ import { luzmoIcon as d, luzmoArrowRight as b } from "@luzmo/icons";
22
+ import { unsafeCSS as p, LitElement as z, html as h } from "lit";
23
+ import { property as n, state as s } from "lit/decorators.js";
24
+ import "../dataset-selector-row/index.js";
25
+ (function() {
26
+ if (typeof document < "u" && !document.querySelector("style[data-luzmo-vars]")) {
27
+ const o = document.createElement("style");
28
+ o.setAttribute("data-luzmo-vars", ""), o.textContent = 'html{--luzmo-animation-duration: 0.15s;--luzmo-border-color: rgba(var(--luzmo-border-color-rgb), 0.1);--luzmo-border-color-hover: rgba(var(--luzmo-border-color-rgb), 0.15);--luzmo-border-color-down: rgba(var(--luzmo-border-color-rgb), 0.3);--luzmo-border-color-focus: rgba(var(--luzmo-border-color-rgb), 0.15);--luzmo-border-color-rgb: 0, 0, 0;--luzmo-border-color-full: rgb(180, 180, 180);--luzmo-border-color-full-hover: rgb(140, 140, 140);--luzmo-border-color-full-down: rgb(110, 110, 110);--luzmo-border-color-full-focus: rgb(140, 140, 140);--luzmo-border-color-disabled: #dddddd;--luzmo-border-radius: 6px;--luzmo-border-radius-s: 4px;--luzmo-border-radius-l: 8px;--luzmo-border-radius-xl: 12px;--luzmo-border-radius-full: 999rem;--luzmo-background-color: #ffffff;--luzmo-background-color-rgb: 255, 255, 255;--luzmo-background-color-disabled: #eeeeee;--luzmo-background-color-hover: #f0f0fc;--luzmo-background-color-down: #f1f1ff;--luzmo-background-color-focus: #f0f0fc;--luzmo-background-color-highlight: rgb(240, 240, 240);--luzmo-background-color-highlight-disabled: rgb(245, 245, 245);--luzmo-background-color-highlight-hover: rgb(225, 225, 225);--luzmo-background-color-highlight-down: rgb(215, 215, 215);--luzmo-background-color-highlight-focus: rgb(225, 225, 225);--luzmo-background-color-alt-1: rgb(250, 250, 250);--luzmo-background-color-alt-2: rgb(239, 239, 239);--luzmo-border-width: 1px;--luzmo-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", Helvetica, Arial, sans-serif;--luzmo-font-size-xs: 10px;--luzmo-font-size-s: 12px;--luzmo-font-size-m: 14px;--luzmo-font-size: 14px;--luzmo-font-size-l: 16px;--luzmo-font-size-xl: 18px;--luzmo-font-size-xxl: 20px;--luzmo-font-style: normal;--luzmo-line-height: normal;--luzmo-font-weight: 400;--luzmo-font-weight-semibold: 500;--luzmo-font-weight-bold: 600;--luzmo-font-color: #333;--luzmo-font-color-hard: #000;--luzmo-font-color-disabled: var(--luzmo-color-disabled);--luzmo-font-color-extra-dimmed: #888;--luzmo-font-color-hover: #333;--luzmo-font-color-down: #111;--luzmo-font-color-focus: #333;--luzmo-primary: #4434ff;--luzmo-primary-hover: #4234e4;--luzmo-primary-down: #392cc7;--luzmo-primary-focus: #4234e4;--luzmo-primary-inverse-color: #ffffff;--luzmo-primary-rgb: 68, 52, 255;--luzmo-secondary: #ff00ff;--luzmo-secondary-hover: #e309e3;--luzmo-secondary-down: #c711c7;--luzmo-secondary-focus: #e309e3;--luzmo-secondary-inverse-color: #ffffff;--luzmo-secondary-rgb: 255, 0, 255;--luzmo-secondary-outline: rgba(255, 0, 255, 0.2);--luzmo-negative-color: #ca221c;--luzmo-negative-color-hover: #b3241f;--luzmo-negative-color-down: #9f231f;--luzmo-negative-color-focus: #b3241f;--luzmo-negative-color-rgb: 202, 34, 28;--luzmo-positive-color: rgb(20, 150, 101);--luzmo-positive-color-hover: rgb(17, 128, 86);--luzmo-positive-color-down: rgb(16, 105, 71);--luzmo-positive-color-focus: rgb(17, 128, 86);--luzmo-positive-color-rgb: 20, 150, 101;--luzmo-selected-color: rgb(110, 110, 110);--luzmo-selected-color-hover: rgb(70, 70, 70);--luzmo-selected-color-down: rgb(40, 40, 40);--luzmo-selected-color-focus: rgb(70, 70, 70);--luzmo-selected-color-hard: #1e1e1e;--luzmo-selected-color-hard-hover: rgb(0, 0, 0);--luzmo-selected-color-hard-down: rgb(0, 0, 0);--luzmo-selected-color-hard-focus: rgb(0, 0, 0);--luzmo-color-informative: #1a77e9;--luzmo-color-informative-rgb: 26, 119, 233;--luzmo-color-disabled: #aaaaaa;--luzmo-spacing-1: 2px;--luzmo-spacing-2: 4px;--luzmo-spacing-3: 8px;--luzmo-spacing-4: 12px;--luzmo-spacing-5: 16px;--luzmo-indicator-gap: 2px;--luzmo-indicator-width: 1px;--luzmo-indicator-color: var(--luzmo-primary);--luzmo-component-height-xxs: 20px;--luzmo-component-height-xs: 24px;--luzmo-component-height-s: 28px;--luzmo-component-height: 32px;--luzmo-component-height-l: 40px;--luzmo-component-height-xl: 48px;--luzmo-component-height-xxl: 64px;--luzmo-icon-size-xxs: 12px;--luzmo-icon-size-xs: 14px;--luzmo-icon-size-s: 16px;--luzmo-icon-size-m: 18px;--luzmo-icon-size-l: 20px;--luzmo-icon-size-xl: 22px;--luzmo-icon-size-xxl: 32px}', document.head.appendChild(o);
29
+ }
30
+ })();
31
+ const x = ":host{box-sizing:border-box;display:flex;flex-direction:column;background-color:var(--luzmo-ai-interaction-textarea-background-color, var(--ai-interaction-textarea-background-color));border:1px solid var(--luzmo-ai-interaction-textarea-border-color, var(--ai-interaction-textarea-border-color));border-radius:var(--luzmo-ai-interaction-textarea-border-radius, var(--ai-interaction-textarea-border-radius));padding:var(--luzmo-ai-interaction-textarea-padding, var(--ai-interaction-textarea-padding));gap:var(--luzmo-ai-interaction-textarea-gap, var(--ai-interaction-textarea-gap));font-family:var(--luzmo-ai-interaction-textarea-font-family, var(--ai-interaction-textarea-font-family));font-size:var(--luzmo-ai-interaction-textarea-font-size, var(--ai-interaction-textarea-font-size))}:host:has(textarea:focus){border-color:var(--luzmo-ai-interaction-textarea-focus-border-color, var(--ai-interaction-textarea-focus-border-color));box-shadow:var(--luzmo-ai-interaction-textarea-focus-box-shadow, var(--ai-interaction-textarea-focus-box-shadow))}:host textarea{background-color:var(--luzmo-ai-interaction-textarea-textarea-background, var(--ai-interaction-textarea-textarea-background));border:none;resize:none;outline:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;vertical-align:middle;padding:0;min-height:3rem;color:var(--luzmo-ai-interaction-textarea-textarea-color, var(--ai-interaction-textarea-textarea-color));font-family:var(--luzmo-ai-interaction-textarea-font-family, var(--ai-interaction-textarea-font-family));font-size:var(--luzmo-ai-interaction-textarea-font-size, var(--ai-interaction-textarea-font-size));line-height:1.5}:host textarea::placeholder{color:var(--luzmo-ai-interaction-textarea-textarea-placeholder-color, var(--ai-interaction-textarea-textarea-placeholder-color))}:host .button-container{text-align:var(--luzmo-ai-interaction-textarea-button-container-text-align, var(--ai-interaction-textarea-button-container-text-align))}:host .button-container button{padding:var(--luzmo-ai-interaction-textarea-button-padding, var(--ai-interaction-textarea-button-padding));min-width:var(--luzmo-ai-interaction-textarea-button-min-width, var(--ai-interaction-textarea-button-min-width));min-height:var(--luzmo-ai-interaction-textarea-button-min-height, var(--ai-interaction-textarea-button-min-height));border:none;border-radius:var(--luzmo-ai-interaction-textarea-button-border-radius, var(--ai-interaction-textarea-button-border-radius));font-size:var(--luzmo-ai-interaction-textarea-button-font-size, var(--ai-interaction-textarea-button-font-size));cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .15s ease}:host .button-container button:disabled{opacity:.6;cursor:not-allowed}:host .button-container button.disabled{opacity:.6;cursor:not-allowed}:host .button-container button svg{display:flex;align-items:center;justify-content:center}:host .button-container button.btn-primary{background-color:var(--luzmo-ai-interaction-textarea-button-background-color, var(--ai-interaction-textarea-button-background-color));color:var(--luzmo-ai-interaction-textarea-button-color, var(--ai-interaction-textarea-button-color))}:host .button-container button.btn-primary:hover:not(:disabled):not(.disabled){background-color:var(--luzmo-ai-interaction-textarea-button-background-color-hover, var(--ai-interaction-textarea-button-background-color-hover))}:host .button-container button.btn-primary:disabled,:host .button-container button.btn-primary.disabled{background-color:var(--luzmo-ai-interaction-textarea-button-background-color-disabled, var(--ai-interaction-textarea-button-background-color-disabled));opacity:.6}:host{--ai-interaction-textarea-background-color: var(--luzmo-background-color-alt-2);--ai-interaction-textarea-border-color: var(--luzmo-border-color);--ai-interaction-textarea-border-radius: .5rem;--ai-interaction-textarea-padding: .75rem;--ai-interaction-textarea-gap: 1rem;--ai-interaction-textarea-focus-border-color: var(--luzmo-primary);--ai-interaction-textarea-focus-box-shadow: 0 0 1rem 0 var(--luzmo-primary-50);--ai-interaction-textarea-font-family: var(--luzmo-font-family);--ai-interaction-textarea-font-size: .875rem;--ai-interaction-textarea-textarea-background: transparent;--ai-interaction-textarea-textarea-color: var(--luzmo-font-color);--ai-interaction-textarea-textarea-placeholder-color: var(--luzmo-font-color-extra-dimmed);--ai-interaction-textarea-button-container-text-align: right;--ai-interaction-textarea-button-padding: 0;--ai-interaction-textarea-button-min-width: 2rem;--ai-interaction-textarea-button-min-height: 1.875rem;--ai-interaction-textarea-button-border-radius: .5rem;--ai-interaction-textarea-button-font-size: 1rem;--ai-interaction-textarea-button-background-color: var(--luzmo-primary);--ai-interaction-textarea-button-background-color-hover: var(--luzmo-primary-hover);--ai-interaction-textarea-button-background-color-disabled: var(--luzmo-primary);--ai-interaction-textarea-button-color: var(--luzmo-primary-inverse-color)}";
32
+ var g = Object.defineProperty, f = Object.getOwnPropertyDescriptor, a = (t, o, r, l) => {
33
+ for (var i = l > 1 ? void 0 : l ? f(o, r) : o, c = t.length - 1, u; c >= 0; c--)
34
+ (u = t[c]) && (i = (l ? u(o, r, i) : u(i)) || i);
35
+ return l && i && g(o, r, i), i;
36
+ };
37
+ let e = class extends z {
38
+ constructor() {
39
+ super(...arguments), this.placeholder = "Type your prompt here...", this.selectedDatasets = [], this.authKey = "", this.authToken = "", this.apiUrl = "https://api.luzmo.com", this.appServer = "https://app.luzmo.com", this.flagOpendata = !1, this._promptValue = "", this._isPromptValid = !1;
40
+ }
41
+ get _buttonDisabled() {
42
+ return this.selectedDatasets.length === 0 || !this._isPromptValid;
43
+ }
44
+ _autoResizeTextarea(t) {
45
+ t.style.height = "auto";
46
+ const o = 2 * 1.5 * 16, r = 8 * 1.5 * 16, l = Math.max(o, Math.min(t.scrollHeight, r));
47
+ t.style.height = `${l}px`;
48
+ }
49
+ _handlePromptInput(t) {
50
+ const o = t.target;
51
+ this._promptValue = o.value, this._isPromptValid = o.value.trim().length > 0, this._autoResizeTextarea(o), o.scrollTo({ top: o.scrollHeight });
52
+ }
53
+ _handleKeyDown(t) {
54
+ t.key === "Enter" && !t.shiftKey && (t.preventDefault(), this._submitPrompt());
55
+ }
56
+ _submitPrompt() {
57
+ if (this._buttonDisabled)
58
+ return;
59
+ const t = this._promptValue.trim();
60
+ this.dispatchEvent(
61
+ new CustomEvent("prompt-submitted", {
62
+ detail: {
63
+ prompt: t,
64
+ selectedDatasets: this.selectedDatasets
65
+ },
66
+ bubbles: !0,
67
+ composed: !0
68
+ })
69
+ );
70
+ }
71
+ _handleDatasetSelected(t) {
72
+ const o = t.detail;
73
+ this.selectedDatasets.some((r) => r.id === o.id) || (this.selectedDatasets = [...this.selectedDatasets, o]);
74
+ }
75
+ _handleDatasetRemoved(t) {
76
+ const o = t.detail;
77
+ this.selectedDatasets = this.selectedDatasets.filter((r) => r.id !== o.id);
78
+ }
79
+ firstUpdated() {
80
+ const t = this.shadowRoot?.querySelector("textarea");
81
+ t && this._autoResizeTextarea(t);
82
+ }
83
+ render() {
84
+ return h`
85
+ <luzmo-dataset-selector-row
86
+ .selectedDatasets=${this.selectedDatasets}
87
+ auth-key=${this.authKey}
88
+ auth-token=${this.authToken}
89
+ api-url=${this.apiUrl}
90
+ app-server=${this.appServer}
91
+ ?flag-opendata=${this.flagOpendata}
92
+ @dataset-selected=${this._handleDatasetSelected}
93
+ @dataset-removed=${this._handleDatasetRemoved}
94
+ ></luzmo-dataset-selector-row>
95
+
96
+ <textarea
97
+ autofocus
98
+ .placeholder=${this.placeholder}
99
+ .value=${this._promptValue}
100
+ @input=${this._handlePromptInput}
101
+ @keydown=${this._handleKeyDown}
102
+ rows="2"
103
+ ></textarea>
104
+
105
+ <div class="button-container">
106
+ <button
107
+ class="btn btn-primary"
108
+ ?disabled=${this._buttonDisabled}
109
+ @click=${this._submitPrompt}
110
+ >
111
+ ${d(b)}
112
+ </button>
113
+ </div>
114
+ `;
115
+ }
116
+ };
117
+ e.styles = p(x);
118
+ e.tagName = "luzmo-ai-interaction-textarea";
119
+ a([
120
+ n({ type: String })
121
+ ], e.prototype, "placeholder", 2);
122
+ a([
123
+ n({ type: Array })
124
+ ], e.prototype, "selectedDatasets", 2);
125
+ a([
126
+ n({ type: String, attribute: "auth-key" })
127
+ ], e.prototype, "authKey", 2);
128
+ a([
129
+ n({ type: String, attribute: "auth-token" })
130
+ ], e.prototype, "authToken", 2);
131
+ a([
132
+ n({ type: String, attribute: "api-url" })
133
+ ], e.prototype, "apiUrl", 2);
134
+ a([
135
+ n({ type: String, attribute: "app-server" })
136
+ ], e.prototype, "appServer", 2);
137
+ a([
138
+ n({ type: Boolean, attribute: "flag-opendata" })
139
+ ], e.prototype, "flagOpendata", 2);
140
+ a([
141
+ s()
142
+ ], e.prototype, "_promptValue", 2);
143
+ a([
144
+ s()
145
+ ], e.prototype, "_isPromptValid", 2);
146
+ e = a([
147
+ m()
148
+ ], e);
149
+ customElements.get("luzmo-ai-interaction-textarea") || customElements.define("luzmo-ai-interaction-textarea", e);
150
+ export {
151
+ e as LuzmoAiInteractionTextarea
152
+ };
@@ -0,0 +1,20 @@
1
+ /*! * A kit of modern Luzmo Web Components for analytics in your web application.
2
+ *
3
+ * Copyright © 2025 Luzmo
4
+ * All rights reserved.
5
+ * Luzmo web components (“Luzmo Web Components”)
6
+ * must be used according to the Luzmo Terms of Service.
7
+ * This license allows users with a current active Luzmo account
8
+ * to use the Luzmo Web Components. This license terminates
9
+ * automatically if a user no longer has an active Luzmo account.
10
+ * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
11
+ *
12
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
13
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
14
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
15
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
16
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
17
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
+ * SOFTWARE.
19
+ * */
20
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("./helpers-9I0oLoUB.cjs"),l=({slots:e})=>Array.isArray(e)&&e?.length>0?e?.find(t=>t?.name==="legend")?.content?.length>0||e?.find(t=>t?.name==="measure")?.content?.length>1:!1,i=({slots:e})=>Array.isArray(e)&&e?.length>0?!(e?.find(t=>t?.name==="legend")?.content?.length>0)&&e?.find(t=>t?.name==="measure")?.content?.length<=1:!0,r=({slots:e})=>Array.isArray(e)&&e?.find(t=>t?.name==="x-axis")?.content?.[0]?.type==="datetime",o=({options:e,slots:t})=>Array.isArray(t)&&t?.find(a=>a?.name==="x-axis")?.content?.[0]?.type==="datetime"&&e?.missingValue?.type==="manual",c=[{key:"general",type:"group",open:!0,children:[{key:"display.title",control:{label:"Title",type:"switch",default:!0}},{type:"divider"},{key:"mode",control:{label:"Mode",type:"picker",default:"stacked",enum:["100","unstacked","stacked","stream"]},visibleIf:l},{key:"interpolation",control:{label:"Interpolation",type:"picker",default:"linear",enum:["linear","step-before","step-after","monotone"]}},{key:"display.legend",control:{label:"Legend",type:"switch",default:!0},visibleIf:l},{key:"display.modeOption",control:{label:"Mode option",type:"switch",default:!0},visibleIf:l},{key:"missingValue.type",control:{label:"Fill missing values",type:"picker",default:"no",enum:["no","break","manual"]},visibleIf:r},{key:"missingValue.value",control:{label:"Value",type:"number-field",default:"no",min:1},visibleIf:o},{key:"color",control:{label:"Area color",type:"color-picker",default:({theme:e})=>n.getThemeMainColor(e),extraLabel:({options:e,theme:t})=>n.getThemeMainColorResetLabel(e,t,"color"),extraLabelHasClickAction:({options:e,theme:t})=>n.getThemeMainColorExtraLabelHasClickAction(e,t,"color"),extraLabelClickAction:({options:e,theme:t})=>n.getThemeMainColorExtraLabelClickAction(e,t,"color")},visibleIf:i}]},{key:"legend",type:"group",open:!1,children:[{key:"legend.position",control:{label:"Position",type:"position-picker",default:"topRight",enum:["topLeft","top","topRight","right","bottomRight","bottom","bottomLeft","left"]}}],visibleIf:l}];exports.default=c;
@@ -17,20 +17,8 @@
17
17
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
18
  * SOFTWARE.
19
19
  * */
20
- import { g as c, a as u, b as d, c as p } from "./helpers-v1bPALRP.js";
21
- const l = ({ slots: e }) => {
22
- var a, i, r, t;
23
- return Array.isArray(e) && (e == null ? void 0 : e.length) > 0 ? ((i = (a = e == null ? void 0 : e.find((n) => (n == null ? void 0 : n.name) === "legend")) == null ? void 0 : a.content) == null ? void 0 : i.length) > 0 || ((t = (r = e == null ? void 0 : e.find((n) => (n == null ? void 0 : n.name) === "measure")) == null ? void 0 : r.content) == null ? void 0 : t.length) > 1 : !1;
24
- }, y = ({ slots: e }) => {
25
- var a, i, r, t;
26
- return Array.isArray(e) && (e == null ? void 0 : e.length) > 0 ? !(((i = (a = e == null ? void 0 : e.find((n) => (n == null ? void 0 : n.name) === "legend")) == null ? void 0 : a.content) == null ? void 0 : i.length) > 0) && ((t = (r = e == null ? void 0 : e.find((n) => (n == null ? void 0 : n.name) === "measure")) == null ? void 0 : r.content) == null ? void 0 : t.length) <= 1 : !0;
27
- }, m = ({ slots: e }) => {
28
- var a, i, r;
29
- return Array.isArray(e) && ((r = (i = (a = e == null ? void 0 : e.find((t) => (t == null ? void 0 : t.name) === "x-axis")) == null ? void 0 : a.content) == null ? void 0 : i[0]) == null ? void 0 : r.type) === "datetime";
30
- }, f = ({ options: e, slots: a }) => {
31
- var i, r, t, n;
32
- return Array.isArray(a) && ((t = (r = (i = a == null ? void 0 : a.find((o) => (o == null ? void 0 : o.name) === "x-axis")) == null ? void 0 : i.content) == null ? void 0 : r[0]) == null ? void 0 : t.type) === "datetime" && ((n = e == null ? void 0 : e.missingValue) == null ? void 0 : n.type) === "manual";
33
- }, b = [
20
+ import { g as l, a as i, b as o, c as r } from "./helpers-bR8Ibjqh.js";
21
+ const n = ({ slots: e }) => Array.isArray(e) && e?.length > 0 ? e?.find((t) => t?.name === "legend")?.content?.length > 0 || e?.find((t) => t?.name === "measure")?.content?.length > 1 : !1, c = ({ slots: e }) => Array.isArray(e) && e?.length > 0 ? !(e?.find((t) => t?.name === "legend")?.content?.length > 0) && e?.find((t) => t?.name === "measure")?.content?.length <= 1 : !0, s = ({ slots: e }) => Array.isArray(e) && e?.find((t) => t?.name === "x-axis")?.content?.[0]?.type === "datetime", p = ({ options: e, slots: t }) => Array.isArray(t) && t?.find((a) => a?.name === "x-axis")?.content?.[0]?.type === "datetime" && e?.missingValue?.type === "manual", d = [
34
22
  {
35
23
  key: "general",
36
24
  type: "group",
@@ -55,7 +43,7 @@ const l = ({ slots: e }) => {
55
43
  default: "stacked",
56
44
  enum: ["100", "unstacked", "stacked", "stream"]
57
45
  },
58
- visibleIf: l
46
+ visibleIf: n
59
47
  },
60
48
  {
61
49
  key: "interpolation",
@@ -73,7 +61,7 @@ const l = ({ slots: e }) => {
73
61
  type: "switch",
74
62
  default: !0
75
63
  },
76
- visibleIf: l
64
+ visibleIf: n
77
65
  },
78
66
  {
79
67
  key: "display.modeOption",
@@ -82,7 +70,7 @@ const l = ({ slots: e }) => {
82
70
  type: "switch",
83
71
  default: !0
84
72
  },
85
- visibleIf: l
73
+ visibleIf: n
86
74
  },
87
75
  {
88
76
  key: "missingValue.type",
@@ -92,7 +80,7 @@ const l = ({ slots: e }) => {
92
80
  default: "no",
93
81
  enum: ["no", "break", "manual"]
94
82
  },
95
- visibleIf: m
83
+ visibleIf: s
96
84
  },
97
85
  {
98
86
  key: "missingValue.value",
@@ -102,19 +90,19 @@ const l = ({ slots: e }) => {
102
90
  default: "no",
103
91
  min: 1
104
92
  },
105
- visibleIf: f
93
+ visibleIf: p
106
94
  },
107
95
  {
108
96
  key: "color",
109
97
  control: {
110
98
  label: "Area color",
111
99
  type: "color-picker",
112
- default: ({ theme: e }) => p(e),
113
- extraLabel: ({ options: e, theme: a }) => d(e, a, "color"),
114
- extraLabelHasClickAction: ({ options: e, theme: a }) => u(e, a, "color"),
115
- extraLabelClickAction: ({ options: e, theme: a }) => c(e, a, "color")
100
+ default: ({ theme: e }) => r(e),
101
+ extraLabel: ({ options: e, theme: t }) => o(e, t, "color"),
102
+ extraLabelHasClickAction: ({ options: e, theme: t }) => i(e, t, "color"),
103
+ extraLabelClickAction: ({ options: e, theme: t }) => l(e, t, "color")
116
104
  },
117
- visibleIf: y
105
+ visibleIf: c
118
106
  }
119
107
  ]
120
108
  },
@@ -142,9 +130,9 @@ const l = ({ slots: e }) => {
142
130
  }
143
131
  }
144
132
  ],
145
- visibleIf: l
133
+ visibleIf: n
146
134
  }
147
135
  ];
148
136
  export {
149
- b as default
137
+ d as default
150
138
  };
@@ -0,0 +1,20 @@
1
+ /*! * A kit of modern Luzmo Web Components for analytics in your web application.
2
+ *
3
+ * Copyright © 2025 Luzmo
4
+ * All rights reserved.
5
+ * Luzmo web components (“Luzmo Web Components”)
6
+ * must be used according to the Luzmo Terms of Service.
7
+ * This license allows users with a current active Luzmo account
8
+ * to use the Luzmo Web Components. This license terminates
9
+ * automatically if a user no longer has an active Luzmo account.
10
+ * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
11
+ *
12
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
13
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
14
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
15
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
16
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
17
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
+ * SOFTWARE.
19
+ * */
20
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("./helpers-9I0oLoUB.cjs"),r=({slots:e})=>Array.isArray(e)&&e?.length>0?e?.find(t=>t?.name==="legend")?.content?.length>0||e?.find(t=>t?.name==="measure")?.content?.length>1:!1,o=({slots:e})=>Array.isArray(e)&&e?.length>0?e?.find(t=>t?.name==="legend")?.content?.length===0&&e?.find(t=>t?.name==="measure")?.content?.length<=1:!0,i=[{key:"general",type:"group",open:!0,children:[{key:"mode",control:{type:"picker",default:"grouped",enum:["grouped","stacked","100"]},visibleIf:r},{type:"divider",visibleIf:r},{key:"display.title",control:{type:"switch",default:!0}},{key:"display.legend",control:{type:"switch",default:!0},visibleIf:r},{key:"display.modeOption",control:{type:"switch",default:!1},visibleIf:r},{key:"bars.label",control:{type:"picker",default:"none",enum:["none","absolute","percentage","percentageLegend","percentageCategory","percentageMax"]}},{key:"categories.colored",control:{type:"switch",default:!1},visibleIf:o},{key:"bars.roundedCorners",control:{type:"slider",default:({theme:e})=>e?.itemSpecific?.rounding,min:0,max:20,step:1,extraLabel:({options:e,theme:t})=>{if(typeof t?.itemSpecific?.rounding=="number")return typeof e?.bars?.roundedCorners!="number"?"auto":"reset"},extraLabelHasClickAction:({options:e,theme:t})=>!(typeof t?.itemSpecific?.rounding!="number"||typeof e?.bars?.roundedCorners!="number"),extraLabelClickAction:({options:e})=>{const t={...e};return delete t?.bars?.roundedCorners,{value:null,options:t}}}},{key:"color",control:{type:"color-picker",label:"Bar color",default:({theme:e})=>n.getThemeMainColor(e),extraLabel:({options:e,theme:t})=>n.getThemeMainColorResetLabel(e,t,"color"),extraLabelHasClickAction:({options:e,theme:t})=>n.getThemeMainColorExtraLabelHasClickAction(e,t,"color"),extraLabelClickAction:({options:e,theme:t})=>n.getThemeMainColorExtraLabelClickAction(e,t,"color")},visibleIf:o}]},{key:"legend",type:"group",open:!1,children:[{key:"legend.position",control:{label:"Position",type:"position-picker",default:"topRight",enum:["topLeft","top","topRight","right","bottomRight","bottom","bottomLeft","left"]}}],visibleIf:r}];exports.default=i;
@@ -17,14 +17,8 @@
17
17
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
18
  * SOFTWARE.
19
19
  * */
20
- import { g as c, a as u, b as d, c as f } from "./helpers-v1bPALRP.js";
21
- const l = ({ slots: e }) => {
22
- var r, a, t, i;
23
- return Array.isArray(e) && (e == null ? void 0 : e.length) > 0 ? ((a = (r = e == null ? void 0 : e.find((n) => (n == null ? void 0 : n.name) === "legend")) == null ? void 0 : r.content) == null ? void 0 : a.length) > 0 || ((i = (t = e == null ? void 0 : e.find((n) => (n == null ? void 0 : n.name) === "measure")) == null ? void 0 : t.content) == null ? void 0 : i.length) > 1 : !1;
24
- }, o = ({ slots: e }) => {
25
- var r, a, t, i;
26
- return Array.isArray(e) && (e == null ? void 0 : e.length) > 0 ? ((a = (r = e == null ? void 0 : e.find((n) => (n == null ? void 0 : n.name) === "legend")) == null ? void 0 : r.content) == null ? void 0 : a.length) === 0 && ((i = (t = e == null ? void 0 : e.find((n) => (n == null ? void 0 : n.name) === "measure")) == null ? void 0 : t.content) == null ? void 0 : i.length) <= 1 : !0;
27
- }, g = [
20
+ import { g as o, a as i, b as a, c as l } from "./helpers-bR8Ibjqh.js";
21
+ const r = ({ slots: e }) => Array.isArray(e) && e?.length > 0 ? e?.find((t) => t?.name === "legend")?.content?.length > 0 || e?.find((t) => t?.name === "measure")?.content?.length > 1 : !1, n = ({ slots: e }) => Array.isArray(e) && e?.length > 0 ? e?.find((t) => t?.name === "legend")?.content?.length === 0 && e?.find((t) => t?.name === "measure")?.content?.length <= 1 : !0, u = [
28
22
  {
29
23
  key: "general",
30
24
  type: "group",
@@ -37,11 +31,11 @@ const l = ({ slots: e }) => {
37
31
  default: "grouped",
38
32
  enum: ["grouped", "stacked", "100"]
39
33
  },
40
- visibleIf: l
34
+ visibleIf: r
41
35
  },
42
36
  {
43
37
  type: "divider",
44
- visibleIf: l
38
+ visibleIf: r
45
39
  },
46
40
  {
47
41
  key: "display.title",
@@ -56,7 +50,7 @@ const l = ({ slots: e }) => {
56
50
  type: "switch",
57
51
  default: !0
58
52
  },
59
- visibleIf: l
53
+ visibleIf: r
60
54
  },
61
55
  {
62
56
  key: "display.modeOption",
@@ -64,7 +58,7 @@ const l = ({ slots: e }) => {
64
58
  type: "switch",
65
59
  default: !1
66
60
  },
67
- visibleIf: l
61
+ visibleIf: r
68
62
  },
69
63
  {
70
64
  key: "bars.label",
@@ -87,32 +81,24 @@ const l = ({ slots: e }) => {
87
81
  type: "switch",
88
82
  default: !1
89
83
  },
90
- visibleIf: o
84
+ visibleIf: n
91
85
  },
92
86
  {
93
87
  key: "bars.roundedCorners",
94
88
  control: {
95
89
  type: "slider",
96
- default: ({ theme: e }) => {
97
- var r;
98
- return (r = e == null ? void 0 : e.itemSpecific) == null ? void 0 : r.rounding;
99
- },
90
+ default: ({ theme: e }) => e?.itemSpecific?.rounding,
100
91
  min: 0,
101
92
  max: 20,
102
93
  step: 1,
103
- extraLabel: ({ options: e, theme: r }) => {
104
- var a, t;
105
- if (typeof ((a = r == null ? void 0 : r.itemSpecific) == null ? void 0 : a.rounding) == "number")
106
- return typeof ((t = e == null ? void 0 : e.bars) == null ? void 0 : t.roundedCorners) != "number" ? "auto" : "reset";
107
- },
108
- extraLabelHasClickAction: ({ options: e, theme: r }) => {
109
- var a, t;
110
- return !(typeof ((a = r == null ? void 0 : r.itemSpecific) == null ? void 0 : a.rounding) != "number" || typeof ((t = e == null ? void 0 : e.bars) == null ? void 0 : t.roundedCorners) != "number");
94
+ extraLabel: ({ options: e, theme: t }) => {
95
+ if (typeof t?.itemSpecific?.rounding == "number")
96
+ return typeof e?.bars?.roundedCorners != "number" ? "auto" : "reset";
111
97
  },
98
+ extraLabelHasClickAction: ({ options: e, theme: t }) => !(typeof t?.itemSpecific?.rounding != "number" || typeof e?.bars?.roundedCorners != "number"),
112
99
  extraLabelClickAction: ({ options: e }) => {
113
- var a;
114
- const r = { ...e };
115
- return (a = r == null ? void 0 : r.bars) == null || delete a.roundedCorners, { value: null, options: r };
100
+ const t = { ...e };
101
+ return delete t?.bars?.roundedCorners, { value: null, options: t };
116
102
  }
117
103
  }
118
104
  },
@@ -121,12 +107,12 @@ const l = ({ slots: e }) => {
121
107
  control: {
122
108
  type: "color-picker",
123
109
  label: "Bar color",
124
- default: ({ theme: e }) => f(e),
125
- extraLabel: ({ options: e, theme: r }) => d(e, r, "color"),
126
- extraLabelHasClickAction: ({ options: e, theme: r }) => u(e, r, "color"),
127
- extraLabelClickAction: ({ options: e, theme: r }) => c(e, r, "color")
110
+ default: ({ theme: e }) => l(e),
111
+ extraLabel: ({ options: e, theme: t }) => a(e, t, "color"),
112
+ extraLabelHasClickAction: ({ options: e, theme: t }) => i(e, t, "color"),
113
+ extraLabelClickAction: ({ options: e, theme: t }) => o(e, t, "color")
128
114
  },
129
- visibleIf: o
115
+ visibleIf: n
130
116
  }
131
117
  ]
132
118
  },
@@ -154,9 +140,9 @@ const l = ({ slots: e }) => {
154
140
  }
155
141
  }
156
142
  ],
157
- visibleIf: l
143
+ visibleIf: r
158
144
  }
159
145
  ];
160
146
  export {
161
- g as default
147
+ u as default
162
148
  };