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

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 (39) hide show
  1. package/angular/README.md +1 -0
  2. package/angular/components/ai-interaction-textarea.component.ts +2 -0
  3. package/angular/components/dataset-icon.component.ts +21 -0
  4. package/angular/components/dataset-selector-row.component.ts +2 -0
  5. package/angular/components/droppable-slot.component.ts +2 -2
  6. package/angular/esm/components/ai-interaction-textarea.component.d.ts +2 -1
  7. package/angular/esm/components/ai-interaction-textarea.component.js +7 -2
  8. package/angular/esm/components/dataset-icon.component.d.ts +9 -0
  9. package/angular/esm/components/dataset-icon.component.js +36 -0
  10. package/angular/esm/components/dataset-selector-row.component.d.ts +2 -1
  11. package/angular/esm/components/dataset-selector-row.component.js +7 -2
  12. package/angular/esm/components/droppable-slot.component.d.ts +2 -2
  13. package/angular/esm/index.d.ts +3 -1
  14. package/angular/esm/index.js +3 -0
  15. package/angular/esm/types.d.ts +15 -1
  16. package/angular/index.ts +3 -0
  17. package/angular/types.ts +15 -2
  18. package/components/ai-interaction-textarea/ai-interaction-textarea.d.ts +7 -1
  19. package/components/ai-interaction-textarea/index.cjs +54 -0
  20. package/components/ai-interaction-textarea/index.d.ts +1 -1
  21. package/components/ai-interaction-textarea/index.js +165 -0
  22. package/components/dataset-icon/dataset-icon.d.ts +45 -0
  23. package/components/dataset-icon/index.cjs +60 -0
  24. package/components/dataset-icon/index.d.ts +7 -0
  25. package/components/dataset-icon/index.js +167 -0
  26. package/components/dataset-selector-list/dataset-selector-list.d.ts +1 -0
  27. package/components/dataset-selector-list/index.cjs +15 -13
  28. package/components/dataset-selector-list/index.js +42 -46
  29. package/components/dataset-selector-row/dataset-selector-row.d.ts +8 -0
  30. package/components/dataset-selector-row/index.cjs +82 -0
  31. package/components/dataset-selector-row/index.d.ts +1 -1
  32. package/components/dataset-selector-row/index.js +215 -0
  33. package/components/droppable-slot/droppable-slot.d.ts +2 -2
  34. package/components/index.cjs +1 -60
  35. package/components/index.js +104 -281
  36. package/custom-elements.json +156 -2
  37. package/index.d.ts +2 -0
  38. package/package.json +10 -5
  39. package/types.d.ts +15 -1
@@ -17,240 +17,61 @@
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 { LuzmoAiChatMessageAssistant as G } from "./ai-chat-message-assistant/index.js";
21
- import { LuzmoAiChatMessageUser as R } from "./ai-chat-message-user/index.js";
22
- import { LuzmoAiChatMessagesContainer as V } from "./ai-chat-messages-container/index.js";
23
- import { LuzmoDatasetSelectorList as q } from "./dataset-selector-list/index.js";
24
- import { luzmoIcon as m, luzmoTable as b, luzmoPlus as h, luzmoClose16 as g } from "@luzmo/icons";
25
- import "@luzmo/lucero/overlay";
26
- import "@luzmo/lucero/popover";
27
- import "@luzmo/lucero/tooltip";
28
- import { l as z } from "./localize-BX7q0S0M.js";
29
- import { g as y } from "./set-locale-B-Tz2sdI.js";
30
- import { LitElement as f, unsafeCSS as v, html as c, nothing as w } from "lit";
31
- import { property as s, state as x } from "lit/decorators.js";
32
- import { repeat as k } from "lit/directives/repeat.js";
33
- import { L as W } from "./index-Do7O9azB.js";
34
- import { LuzmoDisplaySettingsBinning as Q } from "./display-settings-binning/index.js";
35
- import { LuzmoDisplaySettingsDatetime as Y } from "./display-settings-datetime/index.js";
36
- import { LuzmoDisplaySettingsGrandTotals as ee } from "./display-settings-grand-totals/index.js";
37
- import { LuzmoDisplaySettingsNumeric as oe } from "./display-settings-numeric/index.js";
38
- import { LuzmoDisplaySettingsPeriodOverPeriod as ae } from "./display-settings-period-over-period/index.js";
39
- import { LuzmoDraggableDataItem as ie } from "./draggable-data-item/index.js";
40
- import { LuzmoDraggableDataItemLevel as ce } from "./draggable-data-item-level/index.js";
41
- import { LuzmoDroppableSlot as ne } from "./droppable-slot/index.js";
42
- import { LuzmoEditItem as me } from "./edit-item/index.js";
43
- import { L as be } from "./index-CdIUfo-L.js";
44
- import { LuzmoEditOptionActionButtonGroup as ge } from "./edit-option-action-button-group/index.js";
45
- import { LuzmoEditOptionColorPalettePicker as ye } from "./edit-option-color-palette-picker/index.js";
46
- import { LuzmoEditOptionColorPicker as ve } from "./edit-option-color-picker/index.js";
47
- import { LuzmoEditOptionColorRange as xe } from "./edit-option-color-range/index.js";
48
- import { LuzmoEditOptionMultiLangField as Ce } from "./edit-option-multi-language-field/index.js";
49
- import { LuzmoEditOptionNumberField as De } from "./edit-option-number-field/index.js";
50
- import { LuzmoEditOptionPicker as Pe } from "./edit-option-picker/index.js";
51
- import { LuzmoEditOptionPositionPicker as Oe } from "./edit-option-position-picker/index.js";
52
- import { LuzmoEditOptionPositionsNumberField as Ee } from "./edit-option-positions-number-field/index.js";
53
- import { LuzmoEditOptionRadioButtonGroup as Me } from "./edit-option-radio-button-group/index.js";
54
- import { LuzmoEditOptionSlider as Ae } from "./edit-option-slider/index.js";
55
- import { LuzmoEditOptionSwitch as Ie } from "./edit-option-switch/index.js";
56
- import { LuzmoEditOptionTextField as Ge } from "./edit-option-text-field/index.js";
57
- import { LuzmoFilterDataItemPicker as Re } from "./filter-data-item-picker/index.js";
58
- import { L as Ve } from "./index-PMDgRSzR.js";
59
- import { LuzmoFilterItem as qe } from "./filter-item/index.js";
60
- import { LuzmoFilterValuePicker as We } from "./filter-value-picker/index.js";
61
- import { LuzmoFilterValuePickerDatetime as Qe } from "./filter-value-picker-datetime/index.js";
62
- import { LuzmoFilterValuePickerHierarchy as Ye } from "./filter-value-picker-hierarchy/index.js";
63
- import { LuzmoFilterValuePickerNumeric as et } from "./filter-value-picker-numeric/index.js";
64
- import { LuzmoGrid as ot, LuzmoGridItemActionsMenu as rt } from "./grid/index.js";
65
- import { LuzmoSlotContentsPicker as lt } from "./slot-contents-picker/index.js";
66
- import { LuzmoSlotMenu as st } from "./slot-menu/index.js";
67
- import { LuzmoSlotMenuList as pt } from "./slot-menu-list/index.js";
68
- import { P as ut } from "./types-RxAJdtVT.js";
69
- import { d as dt } from "./decompose-numeric-format-BuZcjH2k.js";
70
- import { f as ht } from "./en-BOTjhwEc.js";
71
- import { switchItem as zt } from "./utils.js";
72
- import { g as ft, s as vt } from "./index-CgnTl6Sc.js";
20
+ import { LuzmoAiChatMessageAssistant as p } from "./ai-chat-message-assistant/index.js";
21
+ import { LuzmoAiChatMessageUser as u } from "./ai-chat-message-user/index.js";
22
+ import { LuzmoAiChatMessagesContainer as n } from "./ai-chat-messages-container/index.js";
23
+ import { LuzmoAiInteractionTextarea as s } from "./ai-interaction-textarea/index.js";
24
+ import { LuzmoDatasetIcon as h } from "./dataset-icon/index.js";
25
+ import { LuzmoDatasetSelectorList as z } from "./dataset-selector-list/index.js";
26
+ import { LuzmoDatasetSelectorRow as f } from "./dataset-selector-row/index.js";
27
+ import { L as C } from "./index-Do7O9azB.js";
28
+ import { LuzmoDisplaySettingsBinning as v } from "./display-settings-binning/index.js";
29
+ import { LuzmoDisplaySettingsDatetime as S } from "./display-settings-datetime/index.js";
30
+ import { LuzmoDisplaySettingsGrandTotals as F } from "./display-settings-grand-totals/index.js";
31
+ import { LuzmoDisplaySettingsNumeric as w } from "./display-settings-numeric/index.js";
32
+ import { LuzmoDisplaySettingsPeriodOverPeriod as E } from "./display-settings-period-over-period/index.js";
33
+ import { LuzmoDraggableDataItem as B } from "./draggable-data-item/index.js";
34
+ import { LuzmoDraggableDataItemLevel as A } from "./draggable-data-item-level/index.js";
35
+ import { LuzmoDroppableSlot as H } from "./droppable-slot/index.js";
36
+ import { LuzmoEditItem as R } from "./edit-item/index.js";
37
+ import { L as V } from "./index-CdIUfo-L.js";
38
+ import { LuzmoEditOptionActionButtonGroup as W } from "./edit-option-action-button-group/index.js";
39
+ import { LuzmoEditOptionColorPalettePicker as j } from "./edit-option-color-palette-picker/index.js";
40
+ import { LuzmoEditOptionColorPicker as K } from "./edit-option-color-picker/index.js";
41
+ import { LuzmoEditOptionColorRange as X } from "./edit-option-color-range/index.js";
42
+ import { LuzmoEditOptionMultiLangField as Z } from "./edit-option-multi-language-field/index.js";
43
+ import { LuzmoEditOptionNumberField as $ } from "./edit-option-number-field/index.js";
44
+ import { LuzmoEditOptionPicker as oe } from "./edit-option-picker/index.js";
45
+ import { LuzmoEditOptionPositionPicker as te } from "./edit-option-position-picker/index.js";
46
+ import { LuzmoEditOptionPositionsNumberField as ae } from "./edit-option-positions-number-field/index.js";
47
+ import { LuzmoEditOptionRadioButtonGroup as pe } from "./edit-option-radio-button-group/index.js";
48
+ import { LuzmoEditOptionSlider as ue } from "./edit-option-slider/index.js";
49
+ import { LuzmoEditOptionSwitch as ne } from "./edit-option-switch/index.js";
50
+ import { LuzmoEditOptionTextField as se } from "./edit-option-text-field/index.js";
51
+ import { LuzmoFilterDataItemPicker as he } from "./filter-data-item-picker/index.js";
52
+ import { L as ze } from "./index-PMDgRSzR.js";
53
+ import { LuzmoFilterItem as fe } from "./filter-item/index.js";
54
+ import { LuzmoFilterValuePicker as Ce } from "./filter-value-picker/index.js";
55
+ import { LuzmoFilterValuePickerDatetime as ve } from "./filter-value-picker-datetime/index.js";
56
+ import { LuzmoFilterValuePickerHierarchy as Se } from "./filter-value-picker-hierarchy/index.js";
57
+ import { LuzmoFilterValuePickerNumeric as Fe } from "./filter-value-picker-numeric/index.js";
58
+ import { LuzmoGrid as we, LuzmoGridItemActionsMenu as Me } from "./grid/index.js";
59
+ import { LuzmoSlotContentsPicker as Oe } from "./slot-contents-picker/index.js";
60
+ import { LuzmoSlotMenu as Te } from "./slot-menu/index.js";
61
+ import { LuzmoSlotMenuList as Ge } from "./slot-menu-list/index.js";
62
+ import { P as Ie } from "./types-RxAJdtVT.js";
63
+ import { d as Ne } from "./decompose-numeric-format-BuZcjH2k.js";
64
+ import { f as Ue } from "./en-BOTjhwEc.js";
65
+ import { l as qe } from "./localize-BX7q0S0M.js";
66
+ import { switchItem as Je } from "./utils.js";
67
+ import { g as Qe, s as Xe } from "./index-CgnTl6Sc.js";
73
68
  (function() {
74
69
  if (typeof document < "u" && !document.querySelector("style[data-luzmo-vars]")) {
75
70
  const e = document.createElement("style");
76
71
  e.setAttribute("data-luzmo-vars", ""), e.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(e);
77
72
  }
78
73
  })();
79
- const C = ":host{box-sizing:border-box;display:flex;flex-direction:row;gap:var(--luzmo-dataset-selector-row-gap, var(--dataset-selector-row-gap));min-height:var(--luzmo-dataset-selector-row-min-height, var(--dataset-selector-row-min-height));flex-wrap:wrap;font-size:var(--luzmo-dataset-selector-row-font-size, var(--dataset-selector-row-font-size));color:var(--luzmo-dataset-selector-row-color, var(--dataset-selector-row-color));font-family:var(--luzmo-dataset-selector-row-font-family, var(--dataset-selector-row-font-family))}:host .add-dataset-button{display:inline-flex;align-items:center;gap:var(--luzmo-dataset-selector-row-button-gap, var(--dataset-selector-row-button-gap));min-width:var(--luzmo-dataset-selector-row-button-min-width, var(--dataset-selector-row-button-min-width));height:var(--luzmo-dataset-selector-row-button-height, var(--dataset-selector-row-button-height));border-radius:var(--luzmo-dataset-selector-row-button-border-radius, var(--dataset-selector-row-button-border-radius));border:1px solid var(--luzmo-dataset-selector-row-button-border-color, var(--dataset-selector-row-button-border-color));background-color:var(--luzmo-dataset-selector-row-button-background, var(--dataset-selector-row-button-background));color:var(--luzmo-dataset-selector-row-button-color, var(--dataset-selector-row-button-color));padding:var(--luzmo-dataset-selector-row-button-padding, var(--dataset-selector-row-button-padding));cursor:pointer;font-size:inherit;font-family:inherit;outline:none;justify-content:center;transition:all .15s ease}:host .add-dataset-button:hover{background-color:var(--luzmo-dataset-selector-row-button-hover-background, var(--dataset-selector-row-button-hover-background));border-color:var(--luzmo-dataset-selector-row-button-hover-border-color, var(--dataset-selector-row-button-hover-border-color))}:host .add-dataset-button:focus{outline:none}:host .add-dataset-button svg{font-size:var(--luzmo-dataset-selector-row-button-icon-size, var(--dataset-selector-row-button-icon-size));color:var(--luzmo-dataset-selector-row-button-icon-color, var(--dataset-selector-row-button-icon-color))}:host .add-dataset-button.icon-only{padding:var(--luzmo-dataset-selector-row-button-icon-only-padding, var(--dataset-selector-row-button-icon-only-padding))}:host .removable-pill{box-sizing:border-box;display:flex;flex-direction:row;max-width:var(--luzmo-dataset-selector-row-pill-max-width, var(--dataset-selector-row-pill-max-width));height:var(--luzmo-dataset-selector-row-pill-height, var(--dataset-selector-row-pill-height));padding:var(--luzmo-dataset-selector-row-pill-padding, var(--dataset-selector-row-pill-padding));gap:var(--luzmo-dataset-selector-row-pill-gap, var(--dataset-selector-row-pill-gap));border-radius:var(--luzmo-dataset-selector-row-pill-border-radius, var(--dataset-selector-row-pill-border-radius));border:1px solid var(--luzmo-dataset-selector-row-pill-border-color, var(--dataset-selector-row-pill-border-color));background-color:var(--luzmo-dataset-selector-row-pill-background, var(--dataset-selector-row-pill-background));align-items:center;cursor:pointer;transition:all .15s ease}:host .removable-pill:hover{background-color:var(--luzmo-dataset-selector-row-pill-hover-background, var(--dataset-selector-row-pill-hover-background));border-color:var(--luzmo-dataset-selector-row-pill-hover-border-color, var(--dataset-selector-row-pill-hover-border-color))}:host .removable-pill:hover .dataset-icon{display:none}:host .removable-pill:hover .close-icon{display:inline-block;color:var(--luzmo-dataset-selector-row-pill-close-color, var(--dataset-selector-row-pill-close-color))}:host .removable-pill .close-icon{width:var(--luzmo-dataset-selector-row-pill-close-size, var(--dataset-selector-row-pill-close-size));display:none;flex-shrink:0}:host .removable-pill .dataset-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--luzmo-dataset-selector-row-pill-icon-size, var(--dataset-selector-row-pill-icon-size));height:var(--luzmo-dataset-selector-row-pill-icon-size, var(--dataset-selector-row-pill-icon-size))}:host .removable-pill .dataset-icon luzmo-icon{display:flex}:host .removable-pill .dataset-icon-img{width:var(--luzmo-dataset-selector-row-pill-icon-size, var(--dataset-selector-row-pill-icon-size));height:var(--luzmo-dataset-selector-row-pill-icon-size, var(--dataset-selector-row-pill-icon-size));object-fit:contain}:host .removable-pill .dataset-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:inherit;line-height:var(--luzmo-dataset-selector-row-pill-text-line-height, var(--dataset-selector-row-pill-text-line-height))}:host luzmo-popover{width:var(--luzmo-dataset-selector-row-popover-width, var(--dataset-selector-row-popover-width));height:var(--luzmo-dataset-selector-row-popover-height, var(--dataset-selector-row-popover-height))}:host{--dataset-selector-row-gap: var(--luzmo-spacing-2);--dataset-selector-row-min-height: 1.75rem;--dataset-selector-row-font-size: .75rem;--dataset-selector-row-color: var(--luzmo-font-color);--dataset-selector-row-font-family: var(--luzmo-font-family);--dataset-selector-row-button-gap: var(--luzmo-spacing-1);--dataset-selector-row-button-min-width: 1.75rem;--dataset-selector-row-button-height: 1.75rem;--dataset-selector-row-button-border-radius: .5rem;--dataset-selector-row-button-border-color: var(--luzmo-border-color);--dataset-selector-row-button-background: var(--luzmo-background-color-alt-1);--dataset-selector-row-button-color: var(--luzmo-font-color-tertiary, rgba(165, 165, 165, 1));--dataset-selector-row-button-padding: .25rem .375rem;--dataset-selector-row-button-icon-only-padding: .25rem;--dataset-selector-row-button-icon-size: .875rem;--dataset-selector-row-button-icon-color: var(--luzmo-font-color-tertiary);--dataset-selector-row-button-hover-background: var(--luzmo-background-color-highlight);--dataset-selector-row-button-hover-border-color: var(--luzmo-border-color-hover);--dataset-selector-row-button-focus-outline-color: var(--luzmo-primary);--dataset-selector-row-pill-max-width: 10rem;--dataset-selector-row-pill-height: 1.75rem;--dataset-selector-row-pill-padding: .125rem .5rem;--dataset-selector-row-pill-gap: var(--luzmo-spacing-2);--dataset-selector-row-pill-border-radius: .5rem;--dataset-selector-row-pill-border-color: var(--luzmo-border-color);--dataset-selector-row-pill-background: var(--luzmo-background-color-alt-1);--dataset-selector-row-pill-hover-background: var(--luzmo-background-color-highlight);--dataset-selector-row-pill-hover-border-color: var(--luzmo-border-color-hover);--dataset-selector-row-pill-icon-size: 1rem;--dataset-selector-row-pill-close-size: 1rem;--dataset-selector-row-pill-close-color: var(--luzmo-danger, #dc3545);--dataset-selector-row-pill-text-line-height: 1.2;--dataset-selector-row-popover-width: 23.75rem;--dataset-selector-row-popover-height: 15rem}";
80
- var S = Object.defineProperty, i = (u, e, t, r) => {
81
- for (var o = void 0, l = u.length - 1, p; l >= 0; l--)
82
- (p = u[l]) && (o = p(e, t, o) || o);
83
- return o && S(e, t, o), o;
84
- };
85
- const n = class n extends f {
86
- constructor() {
87
- super(...arguments), this.selectedDatasets = [], this.buttonLabel = "Add dataset", this.authKey = "", this.authToken = "", this.apiUrl = "https://api.luzmo.com", this.appServer = "https://app.luzmo.com", this.flagOpendata = !1, this._overlayOpen = !1;
88
- }
89
- get _hasSelectedDatasets() {
90
- return this.selectedDatasets.length > 0;
91
- }
92
- get _selectedDatasetIds() {
93
- return new Set(this.selectedDatasets.map((e) => e.id));
94
- }
95
- _handleAddDatasetClick() {
96
- this._overlayOpen = !this._overlayOpen;
97
- }
98
- _handleDatasetSelected(e) {
99
- var o;
100
- const t = e.detail;
101
- if (!this._selectedDatasetIds.has(t.id)) {
102
- const l = [...this.selectedDatasets, t];
103
- this.selectedDatasets = l, this.dispatchEvent(
104
- new CustomEvent("dataset-selected", {
105
- detail: t,
106
- bubbles: !0,
107
- composed: !0
108
- })
109
- );
110
- }
111
- const r = (o = this.shadowRoot) == null ? void 0 : o.getElementById("add-dataset-button");
112
- r && r.click(), this._overlayOpen = !1;
113
- }
114
- _handleDatasetRemoved(e) {
115
- const t = this.selectedDatasets.filter((r) => r.id !== e.id);
116
- this.selectedDatasets = t, this.dispatchEvent(
117
- new CustomEvent("dataset-removed", {
118
- detail: e,
119
- bubbles: !0,
120
- composed: !0
121
- })
122
- );
123
- }
124
- _getDatasetName(e) {
125
- const t = y();
126
- return z(e.name, t) || e.id || "Unknown Dataset";
127
- }
128
- _renderDatasetIcon(e) {
129
- var o, l, p;
130
- const t = (l = (o = e.account) == null ? void 0 : o.plugin) == null ? void 0 : l.thumbnails, r = t && t.length > 0 ? (p = t[0]) == null ? void 0 : p.url : null;
131
- if (r) {
132
- const d = `${this.appServer}/${r}`;
133
- return c`<img
134
- src=${d}
135
- alt=${this._getDatasetName(e)}
136
- class="dataset-icon-img"
137
- />`;
138
- }
139
- return c`${m(b)}`;
140
- }
141
- _renderAddButton() {
142
- return c`
143
- <button
144
- id="add-dataset-button"
145
- type="button"
146
- class="add-dataset-button ${this._hasSelectedDatasets ? "icon-only" : ""}"
147
- @click=${this._handleAddDatasetClick}
148
- >
149
- ${m(h)}
150
- ${this._hasSelectedDatasets ? w : this.buttonLabel}
151
- </button>
152
- `;
153
- }
154
- _renderDatasetPill(e) {
155
- return c`
156
- <div class="removable-pill" @click=${this._createDatasetRemovedHandler(e)}>
157
- <div class="dataset-icon">
158
- ${this._renderDatasetIcon(e)}
159
- </div>
160
- <span class="close-icon">${m(g)}</span>
161
- <span
162
- class="dataset-name text-truncate"
163
- title=${this._getDatasetName(e)}
164
- >
165
- ${this._getDatasetName(e)}
166
- </span>
167
- <luzmo-tooltip
168
- self-managed
169
- placement="top"
170
- show-only-if-truncated
171
- truncated-element-selector=".dataset-name"
172
- >
173
- ${this._getDatasetName(e)}
174
- </luzmo-tooltip>
175
- </div>
176
- `;
177
- }
178
- _handleOverlayOpened() {
179
- this._overlayOpen = !0, requestAnimationFrame(() => {
180
- var r, o;
181
- const e = (r = this.shadowRoot) == null ? void 0 : r.querySelector("luzmo-dataset-selector-list"), t = (o = e == null ? void 0 : e.shadowRoot) == null ? void 0 : o.querySelector(".search-input");
182
- t && t.focus();
183
- });
184
- }
185
- _handleOverlayClosed() {
186
- this._overlayOpen = !1;
187
- }
188
- _createDatasetRemovedHandler(e) {
189
- return () => this._handleDatasetRemoved(e);
190
- }
191
- _renderOverlay() {
192
- return c`
193
- <luzmo-overlay
194
- id="dataset-overlay"
195
- trigger="add-dataset-button@click"
196
- placement="top-start"
197
- @luzmo-opened=${this._handleOverlayOpened}
198
- @luzmo-closed=${this._handleOverlayClosed}
199
- >
200
- <luzmo-popover style="position: relative">
201
- <luzmo-dataset-selector-list
202
- .selectedDatasets=${this._selectedDatasetIds}
203
- auth-key=${this.authKey}
204
- auth-token=${this.authToken}
205
- api-url=${this.apiUrl}
206
- app-server=${this.appServer}
207
- ?flag-opendata=${this.flagOpendata}
208
- @dataset-selected=${this._handleDatasetSelected}
209
- ></luzmo-dataset-selector-list>
210
- </luzmo-popover>
211
- </luzmo-overlay>
212
- `;
213
- }
214
- render() {
215
- return c`
216
- ${this._renderAddButton()}
217
- ${k(
218
- this.selectedDatasets,
219
- (e) => e.id,
220
- (e) => this._renderDatasetPill(e)
221
- )}
222
- ${this._renderOverlay()}
223
- `;
224
- }
225
- };
226
- n.styles = v(C), n.tagName = "luzmo-dataset-selector-row";
227
- let a = n;
228
- i([
229
- s({ type: Array })
230
- ], a.prototype, "selectedDatasets");
231
- i([
232
- s({ type: String, attribute: "button-label" })
233
- ], a.prototype, "buttonLabel");
234
- i([
235
- s({ type: String, attribute: "auth-key" })
236
- ], a.prototype, "authKey");
237
- i([
238
- s({ type: String, attribute: "auth-token" })
239
- ], a.prototype, "authToken");
240
- i([
241
- s({ type: String, attribute: "api-url" })
242
- ], a.prototype, "apiUrl");
243
- i([
244
- s({ type: String, attribute: "app-server" })
245
- ], a.prototype, "appServer");
246
- i([
247
- s({ type: Boolean, attribute: "flag-opendata" })
248
- ], a.prototype, "flagOpendata");
249
- i([
250
- x()
251
- ], a.prototype, "_overlayOpen");
252
- customElements.get("luzmo-dataset-selector-row") || customElements.define("luzmo-dataset-selector-row", a);
253
- const B = [
74
+ const r = [
254
75
  { key: "general", label: "General" },
255
76
  { key: "filters", label: "Filters" },
256
77
  { key: "bar-column", label: "Bar & Column Charts" },
@@ -263,7 +84,7 @@ const B = [
263
84
  { key: "hierarchical", label: "Hierarchical Charts" },
264
85
  { key: "special", label: "Special Charts" },
265
86
  { key: "financial", label: "Financial Charts" }
266
- ], A = [
87
+ ], t = [
267
88
  { type: "area-chart", label: "Area Chart" },
268
89
  { type: "bar-chart", label: "Bar Chart" },
269
90
  { type: "box-plot", label: "Box Plot" },
@@ -308,7 +129,7 @@ const B = [
308
129
  { type: "treemap-chart", label: "Treemap Chart" },
309
130
  { type: "video", label: "Video" },
310
131
  { type: "wordcloud-chart", label: "Wordcloud Chart" }
311
- ], T = [
132
+ ], l = [
312
133
  { item: "text", type: "text", label: "Text", group: "general" },
313
134
  { item: "image", type: "image", label: "Image", group: "general" },
314
135
  {
@@ -657,55 +478,57 @@ const B = [
657
478
  }
658
479
  ];
659
480
  export {
660
- G as LuzmoAiChatMessageAssistant,
661
- R as LuzmoAiChatMessageUser,
662
- V as LuzmoAiChatMessagesContainer,
663
- q as LuzmoDatasetSelectorList,
664
- a as LuzmoDatasetSelectorRow,
665
- W as LuzmoDisplaySettings,
666
- Q as LuzmoDisplaySettingsBinning,
667
- Y as LuzmoDisplaySettingsDatetime,
668
- ee as LuzmoDisplaySettingsGrandTotals,
669
- oe as LuzmoDisplaySettingsNumeric,
670
- ae as LuzmoDisplaySettingsPeriodOverPeriod,
671
- ie as LuzmoDraggableDataItem,
672
- ce as LuzmoDraggableDataItemLevel,
673
- ne as LuzmoDroppableSlot,
674
- me as LuzmoEditItem,
675
- be as LuzmoEditOption,
676
- ge as LuzmoEditOptionActionButtonGroup,
677
- ye as LuzmoEditOptionColorPalettePicker,
678
- ve as LuzmoEditOptionColorPicker,
679
- xe as LuzmoEditOptionColorRange,
680
- Ce as LuzmoEditOptionMultiLangField,
681
- De as LuzmoEditOptionNumberField,
682
- Pe as LuzmoEditOptionPicker,
683
- Oe as LuzmoEditOptionPositionPicker,
684
- Ee as LuzmoEditOptionPositionsNumberField,
685
- Me as LuzmoEditOptionRadioButtonGroup,
686
- Ae as LuzmoEditOptionSlider,
687
- Ie as LuzmoEditOptionSwitch,
688
- Ge as LuzmoEditOptionTextField,
689
- Re as LuzmoFilterDataItemPicker,
690
- Ve as LuzmoFilterExpressionPicker,
691
- qe as LuzmoFilterItem,
692
- We as LuzmoFilterValuePicker,
693
- Qe as LuzmoFilterValuePickerDatetime,
694
- Ye as LuzmoFilterValuePickerHierarchy,
695
- et as LuzmoFilterValuePickerNumeric,
696
- ot as LuzmoGrid,
697
- rt as LuzmoGridItemActionsMenu,
698
- lt as LuzmoSlotContentsPicker,
699
- st as LuzmoSlotMenu,
700
- pt as LuzmoSlotMenuList,
701
- ut as PeriodOverPeriodCondition,
702
- dt as decomposeNumericFormat,
703
- ht as formatter,
704
- ft as getTheme,
705
- B as itemGroups,
706
- T as itemList,
707
- A as itemTypes,
708
- z as localize,
709
- zt as switchItem,
710
- vt as systemThemeIds
481
+ p as LuzmoAiChatMessageAssistant,
482
+ u as LuzmoAiChatMessageUser,
483
+ n as LuzmoAiChatMessagesContainer,
484
+ s as LuzmoAiInteractionTextarea,
485
+ h as LuzmoDatasetIcon,
486
+ z as LuzmoDatasetSelectorList,
487
+ f as LuzmoDatasetSelectorRow,
488
+ C as LuzmoDisplaySettings,
489
+ v as LuzmoDisplaySettingsBinning,
490
+ S as LuzmoDisplaySettingsDatetime,
491
+ F as LuzmoDisplaySettingsGrandTotals,
492
+ w as LuzmoDisplaySettingsNumeric,
493
+ E as LuzmoDisplaySettingsPeriodOverPeriod,
494
+ B as LuzmoDraggableDataItem,
495
+ A as LuzmoDraggableDataItemLevel,
496
+ H as LuzmoDroppableSlot,
497
+ R as LuzmoEditItem,
498
+ V as LuzmoEditOption,
499
+ W as LuzmoEditOptionActionButtonGroup,
500
+ j as LuzmoEditOptionColorPalettePicker,
501
+ K as LuzmoEditOptionColorPicker,
502
+ X as LuzmoEditOptionColorRange,
503
+ Z as LuzmoEditOptionMultiLangField,
504
+ $ as LuzmoEditOptionNumberField,
505
+ oe as LuzmoEditOptionPicker,
506
+ te as LuzmoEditOptionPositionPicker,
507
+ ae as LuzmoEditOptionPositionsNumberField,
508
+ pe as LuzmoEditOptionRadioButtonGroup,
509
+ ue as LuzmoEditOptionSlider,
510
+ ne as LuzmoEditOptionSwitch,
511
+ se as LuzmoEditOptionTextField,
512
+ he as LuzmoFilterDataItemPicker,
513
+ ze as LuzmoFilterExpressionPicker,
514
+ fe as LuzmoFilterItem,
515
+ Ce as LuzmoFilterValuePicker,
516
+ ve as LuzmoFilterValuePickerDatetime,
517
+ Se as LuzmoFilterValuePickerHierarchy,
518
+ Fe as LuzmoFilterValuePickerNumeric,
519
+ we as LuzmoGrid,
520
+ Me as LuzmoGridItemActionsMenu,
521
+ Oe as LuzmoSlotContentsPicker,
522
+ Te as LuzmoSlotMenu,
523
+ Ge as LuzmoSlotMenuList,
524
+ Ie as PeriodOverPeriodCondition,
525
+ Ne as decomposeNumericFormat,
526
+ Ue as formatter,
527
+ Qe as getTheme,
528
+ r as itemGroups,
529
+ l as itemList,
530
+ t as itemTypes,
531
+ qe as localize,
532
+ Je as switchItem,
533
+ Xe as systemThemeIds
711
534
  };
@@ -374,6 +374,17 @@
374
374
  "default": "false",
375
375
  "description": "When true, restricts results to public datasets (opendata parity)",
376
376
  "attribute": "flag-opendata"
377
+ },
378
+ {
379
+ "kind": "field",
380
+ "name": "disabled",
381
+ "type": {
382
+ "text": "boolean"
383
+ },
384
+ "default": "false",
385
+ "description": "When true, disables the entire component (sets opacity to 60% and prevents all interactions)",
386
+ "attribute": "disabled",
387
+ "reflects": true
377
388
  }
378
389
  ],
379
390
  "events": [
@@ -386,6 +397,15 @@
386
397
  }
387
398
  ],
388
399
  "attributes": [
400
+ {
401
+ "type": {
402
+ "text": "boolean"
403
+ },
404
+ "description": "When true, disables the entire component (sets opacity to 60% and prevents all interactions)",
405
+ "name": "disabled",
406
+ "default": "false",
407
+ "fieldName": "disabled"
408
+ },
389
409
  {
390
410
  "name": "placeholder",
391
411
  "type": {
@@ -470,6 +490,120 @@
470
490
  }
471
491
  ]
472
492
  },
493
+ {
494
+ "kind": "javascript-module",
495
+ "path": "src/components/dataset-icon/dataset-icon.ts",
496
+ "declarations": [
497
+ {
498
+ "kind": "variable",
499
+ "name": "publicConnectors",
500
+ "type": {
501
+ "text": "[\n 'amazonathena',\n 'asana',\n 'bigquery',\n 'citybikes',\n 'clickhouse',\n 'demodataplugin',\n 'elasticsearch',\n 'exact',\n 'exactonline',\n 'exactonlinenl',\n 'google',\n 'googleanalytics',\n 'googleanalyticsv4',\n 'googledrive',\n 'hubspot',\n 'mailchimp',\n 'mariadb',\n 'mongodb',\n 'mysql',\n 'oracle',\n 'panoply',\n 'pipedrive',\n 'pipelinedb',\n 'postgresql',\n 'presto',\n 'redshift',\n 'salesforce',\n 'saphana',\n 'snowflake',\n 'sqlserver',\n 'stardog',\n 'synapse',\n 'teamleader',\n 'trino',\n 'typeform',\n 'zendesk'\n]"
502
+ },
503
+ "default": "[ 'amazonathena', 'asana', 'bigquery', 'citybikes', 'clickhouse', 'demodataplugin', 'elasticsearch', 'exact', 'exactonline', 'exactonlinenl', 'google', 'googleanalytics', 'googleanalyticsv4', 'googledrive', 'hubspot', 'mailchimp', 'mariadb', 'mongodb', 'mysql', 'oracle', 'panoply', 'pipedrive', 'pipelinedb', 'postgresql', 'presto', 'redshift', 'salesforce', 'saphana', 'snowflake', 'sqlserver', 'stardog', 'synapse', 'teamleader', 'trino', 'typeform', 'zendesk' ]",
504
+ "description": "Public connectors list - these are well-known connectors that may have CSS-based icons\nThis list should match the one from"
505
+ },
506
+ {
507
+ "kind": "class",
508
+ "description": "",
509
+ "name": "LuzmoDatasetIcon",
510
+ "members": [
511
+ {
512
+ "kind": "field",
513
+ "name": "tagName",
514
+ "type": {
515
+ "text": "string"
516
+ },
517
+ "static": true,
518
+ "default": "'luzmo-dataset-icon'"
519
+ },
520
+ {
521
+ "kind": "field",
522
+ "name": "datasetInfo",
523
+ "type": {
524
+ "text": "DatasetIcon | undefined"
525
+ },
526
+ "description": "The dataset information containing subtype and thumbnail data",
527
+ "attribute": "dataset"
528
+ },
529
+ {
530
+ "kind": "field",
531
+ "name": "size",
532
+ "type": {
533
+ "text": "'16px' | '24px' | '32px' | '48px' | '64px'"
534
+ },
535
+ "default": "'32px'",
536
+ "description": "The size of the icon",
537
+ "attribute": "size",
538
+ "reflects": true
539
+ },
540
+ {
541
+ "kind": "field",
542
+ "name": "appUrl",
543
+ "type": {
544
+ "text": "string"
545
+ },
546
+ "default": "''",
547
+ "description": "The base URL for the application (used for thumbnail URLs)",
548
+ "attribute": "app-url"
549
+ }
550
+ ],
551
+ "attributes": [
552
+ {
553
+ "name": "dataset",
554
+ "type": {
555
+ "text": "DatasetIcon | undefined"
556
+ },
557
+ "description": "The dataset information containing subtype and thumbnail data",
558
+ "fieldName": "datasetInfo"
559
+ },
560
+ {
561
+ "name": "size",
562
+ "type": {
563
+ "text": "'16px' | '24px' | '32px' | '48px' | '64px'"
564
+ },
565
+ "default": "'32px'",
566
+ "description": "The size of the icon",
567
+ "fieldName": "size"
568
+ },
569
+ {
570
+ "name": "app-url",
571
+ "type": {
572
+ "text": "string"
573
+ },
574
+ "default": "''",
575
+ "description": "The base URL for the application (used for thumbnail URLs)",
576
+ "fieldName": "appUrl"
577
+ }
578
+ ],
579
+ "superclass": {
580
+ "name": "LitElement",
581
+ "package": "lit"
582
+ },
583
+ "tagName": "luzmo-dataset-icon",
584
+ "customElement": true,
585
+ "summary": "Displays an icon for a dataset based on its type, thumbnails, and connector"
586
+ }
587
+ ],
588
+ "exports": [
589
+ {
590
+ "kind": "js",
591
+ "name": "publicConnectors",
592
+ "declaration": {
593
+ "name": "publicConnectors",
594
+ "module": "src/components/dataset-icon/dataset-icon.ts"
595
+ }
596
+ },
597
+ {
598
+ "kind": "js",
599
+ "name": "LuzmoDatasetIcon",
600
+ "declaration": {
601
+ "name": "LuzmoDatasetIcon",
602
+ "module": "src/components/dataset-icon/dataset-icon.ts"
603
+ }
604
+ }
605
+ ]
606
+ },
473
607
  {
474
608
  "kind": "javascript-module",
475
609
  "path": "src/components/dataset-selector-list/dataset-selector-list.ts",
@@ -886,6 +1020,17 @@
886
1020
  "default": "false",
887
1021
  "description": "When true, restricts results to public datasets (opendata parity)",
888
1022
  "attribute": "flag-opendata"
1023
+ },
1024
+ {
1025
+ "kind": "field",
1026
+ "name": "disabled",
1027
+ "type": {
1028
+ "text": "boolean"
1029
+ },
1030
+ "default": "false",
1031
+ "description": "When true, disables all interactions with the component",
1032
+ "attribute": "disabled",
1033
+ "reflects": true
889
1034
  }
890
1035
  ],
891
1036
  "events": [
@@ -905,6 +1050,15 @@
905
1050
  }
906
1051
  ],
907
1052
  "attributes": [
1053
+ {
1054
+ "type": {
1055
+ "text": "boolean"
1056
+ },
1057
+ "description": "When true, disables all interactions with the component",
1058
+ "name": "disabled",
1059
+ "default": "false",
1060
+ "fieldName": "disabled"
1061
+ },
908
1062
  {
909
1063
  "name": "selectedDatasets",
910
1064
  "type": {
@@ -2418,7 +2572,7 @@
2418
2572
  "kind": "field",
2419
2573
  "name": "itemType",
2420
2574
  "type": {
2421
- "text": "ItemType | undefined"
2575
+ "text": "VizItemType | undefined"
2422
2576
  },
2423
2577
  "attribute": "item-type",
2424
2578
  "reflects": true
@@ -2584,7 +2738,7 @@
2584
2738
  {
2585
2739
  "name": "item-type",
2586
2740
  "type": {
2587
- "text": "ItemType | undefined"
2741
+ "text": "VizItemType | undefined"
2588
2742
  },
2589
2743
  "fieldName": "itemType"
2590
2744
  },