@limetech/lime-elements 36.0.0-next.4 → 36.0.0-next.7

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 (48) hide show
  1. package/dist/cjs/lime-elements.cjs.js +1 -1
  2. package/dist/cjs/limel-button.cjs.entry.js +2 -2
  3. package/dist/cjs/{limel-color-picker-palette_2.cjs.entry.js → limel-color-picker-palette.cjs.entry.js} +0 -112
  4. package/dist/cjs/limel-dock-button.cjs.entry.js +79 -0
  5. package/dist/cjs/limel-dock.cjs.entry.js +105 -0
  6. package/dist/cjs/{limel-list_3.cjs.entry.js → limel-list_2.cjs.entry.js} +0 -2018
  7. package/dist/cjs/limel-popover_4.cjs.entry.js +239 -0
  8. package/dist/cjs/limel-portal.cjs.entry.js +2024 -0
  9. package/dist/cjs/loader.cjs.js +1 -1
  10. package/dist/collection/collection-manifest.json +2 -0
  11. package/dist/collection/components/button/button.css +3 -0
  12. package/dist/collection/components/button/button.js +1 -2
  13. package/dist/collection/components/dock/dock-button/dock-button.css +71 -0
  14. package/dist/collection/components/dock/dock-button/dock-button.js +187 -0
  15. package/dist/collection/components/dock/dock.css +107 -0
  16. package/dist/collection/components/dock/dock.js +254 -0
  17. package/dist/collection/components/dock/dock.types.js +1 -0
  18. package/dist/esm/lime-elements.js +1 -1
  19. package/dist/esm/limel-button.entry.js +2 -2
  20. package/dist/esm/{limel-color-picker-palette_2.entry.js → limel-color-picker-palette.entry.js} +2 -113
  21. package/dist/esm/limel-dock-button.entry.js +75 -0
  22. package/dist/esm/limel-dock.entry.js +101 -0
  23. package/dist/esm/{limel-list_3.entry.js → limel-list_2.entry.js} +1 -2018
  24. package/dist/esm/limel-popover_4.entry.js +232 -0
  25. package/dist/esm/limel-portal.entry.js +2020 -0
  26. package/dist/esm/loader.js +1 -1
  27. package/dist/lime-elements/lime-elements.esm.js +1 -1
  28. package/dist/lime-elements/p-009de50e.entry.js +1 -0
  29. package/dist/lime-elements/{p-08251941.entry.js → p-19f72dab.entry.js} +1 -1
  30. package/dist/lime-elements/p-1dfccbc5.entry.js +1 -0
  31. package/dist/lime-elements/p-93cd2268.entry.js +1 -0
  32. package/dist/lime-elements/p-b9af1b40.entry.js +1 -0
  33. package/dist/lime-elements/p-bd098a11.entry.js +1 -0
  34. package/dist/lime-elements/p-fabea4b5.entry.js +1 -0
  35. package/dist/types/components/dock/dock-button/dock-button.d.ts +36 -0
  36. package/dist/types/components/dock/dock.d.ts +71 -0
  37. package/dist/types/components/dock/dock.types.d.ts +53 -0
  38. package/dist/types/components.d.ts +108 -0
  39. package/dist/types/interface.d.ts +1 -0
  40. package/package.json +1 -1
  41. package/dist/cjs/limel-popover-surface.cjs.entry.js +0 -32
  42. package/dist/cjs/limel-tooltip_2.cjs.entry.js +0 -102
  43. package/dist/esm/limel-popover-surface.entry.js +0 -28
  44. package/dist/esm/limel-tooltip_2.entry.js +0 -97
  45. package/dist/lime-elements/p-22569fb6.entry.js +0 -1
  46. package/dist/lime-elements/p-2fbfc1ea.entry.js +0 -1
  47. package/dist/lime-elements/p-705334c1.entry.js +0 -1
  48. package/dist/lime-elements/p-87453b45.entry.js +0 -1
@@ -14,7 +14,7 @@ const patchEsm = () => {
14
14
  const defineCustomElements = (win, options) => {
15
15
  if (typeof window === 'undefined') return Promise.resolve();
16
16
  return patchEsm().then(() => {
17
- return index.bootstrapLazy([["limel-color-picker.cjs",[[1,"limel-color-picker",{"value":[513],"label":[513],"helperText":[513,"helper-text"],"tooltipLabel":[513,"tooltip-label"],"required":[516],"readonly":[516],"isOpen":[32]}]]],["limel-picker.cjs",[[1,"limel-picker",{"disabled":[4],"readonly":[516],"label":[1],"searchLabel":[1,"search-label"],"helperText":[513,"helper-text"],"leadingIcon":[1,"leading-icon"],"emptyResultMessage":[1,"empty-result-message"],"required":[4],"value":[16],"searcher":[16],"multiple":[4],"delimiter":[513],"actions":[16],"actionPosition":[1,"action-position"],"actionScrollBehavior":[1,"action-scroll-behavior"],"badgeIcons":[516,"badge-icons"],"items":[32],"textValue":[32],"loading":[32],"chips":[32]}]]],["limel-date-picker.cjs",[[1,"limel-date-picker",{"disabled":[516],"readonly":[516],"invalid":[516],"label":[513],"helperText":[513,"helper-text"],"required":[516],"value":[16],"type":[513],"format":[513],"language":[513],"formattedValue":[32],"internalFormat":[32],"showPortal":[32]}]]],["limel-button-group.cjs",[[1,"limel-button-group",{"value":[16],"disabled":[516],"selectedButtonId":[32]}]]],["limel-select.cjs",[[1,"limel-select",{"disabled":[516],"readonly":[516],"invalid":[516],"required":[516],"label":[513],"helperText":[513,"helper-text"],"value":[16],"options":[16],"multiple":[4],"menuOpen":[32]}]]],["limel-tab-panel.cjs",[[1,"limel-tab-panel",{"tabs":[1040]}]]],["limel-file.cjs",[[1,"limel-file",{"value":[16],"label":[513],"required":[516],"disabled":[516],"readonly":[516],"accept":[513],"language":[1],"isDraggingOverDropZone":[32]}]]],["limel-menu.cjs",[[1,"limel-menu",{"items":[16],"disabled":[516],"openDirection":[513,"open-direction"],"open":[1540],"badgeIcons":[516,"badge-icons"],"gridLayout":[516,"grid-layout"]}]]],["limel-button.cjs",[[1,"limel-button",{"label":[513],"primary":[516],"outlined":[516],"icon":[513],"disabled":[516],"loading":[516],"loadingFailed":[516,"loading-failed"],"justLoaded":[32]}]]],["limel-collapsible-section.cjs",[[1,"limel-collapsible-section",{"isOpen":[1540,"is-open"],"header":[513],"actions":[16]}]]],["limel-dialog.cjs",[[1,"limel-dialog",{"heading":[1],"fullscreen":[516],"open":[1540],"closingActions":[16]}]]],["limel-progress-flow.cjs",[[1,"limel-progress-flow",{"flowItems":[16],"disabled":[4],"readonly":[4]}]]],["limel-checkbox.cjs",[[1,"limel-checkbox",{"disabled":[516],"readonly":[516],"label":[513],"helperText":[513,"helper-text"],"checked":[516],"indeterminate":[516],"required":[516],"modified":[32]}]]],["limel-table.cjs",[[1,"limel-table",{"data":[16],"columns":[16],"mode":[1],"pageSize":[2,"page-size"],"totalRows":[2,"total-rows"],"sorting":[16],"activeRow":[1040],"movableColumns":[4,"movable-columns"],"loading":[4],"page":[2],"emptyMessage":[1,"empty-message"],"aggregates":[16],"selectable":[4],"selection":[16]}]]],["limel-banner.cjs",[[1,"limel-banner",{"message":[513],"icon":[513],"isOpen":[32],"open":[64],"close":[64]}]]],["limel-circular-progress.cjs",[[1,"limel-circular-progress",{"value":[2],"maxValue":[2,"max-value"],"suffix":[1],"displayPercentageColors":[4,"display-percentage-colors"],"size":[513]}]]],["limel-code-editor.cjs",[[1,"limel-code-editor",{"value":[1],"language":[1],"readonly":[4],"lineNumbers":[4,"line-numbers"],"colorScheme":[1,"color-scheme"],"random":[32]}]]],["limel-config.cjs",[[1,"limel-config",{"config":[16]}]]],["limel-flex-container.cjs",[[1,"limel-flex-container",{"direction":[513],"justify":[513],"align":[513],"reverse":[516]}]]],["limel-form.cjs",[[1,"limel-form",{"schema":[16],"value":[16],"disabled":[4],"propsFactory":[16],"transformErrors":[16],"errors":[16]}]]],["limel-grid.cjs",[[1,"limel-grid"]]],["limel-linear-progress.cjs",[[1,"limel-linear-progress",{"value":[2],"indeterminate":[4]}]]],["limel-slider.cjs",[[1,"limel-slider",{"disabled":[516],"readonly":[516],"factor":[514],"label":[513],"helperText":[513,"helper-text"],"unit":[513],"value":[514],"valuemax":[514],"valuemin":[514],"step":[514],"percentageClass":[32]}]]],["limel-snackbar.cjs",[[1,"limel-snackbar",{"message":[1],"timeout":[2],"actionText":[1,"action-text"],"dismissible":[4],"multiline":[4],"language":[1],"show":[64]}]]],["limel-switch.cjs",[[1,"limel-switch",{"label":[513],"disabled":[516],"readonly":[516],"value":[516],"fieldId":[32]}]]],["limel-tab-bar.cjs",[[1,"limel-tab-bar",{"tabs":[1040],"canScrollLeft":[32],"canScrollRight":[32]},[[9,"resize","handleWindowResize"]]]]],["limel-header.cjs",[[1,"limel-header",{"icon":[1],"heading":[1],"subheading":[1],"supportingText":[1,"supporting-text"]}]]],["limel-progress-flow-item.cjs",[[0,"limel-progress-flow-item",{"item":[16],"disabled":[4],"readonly":[4]}]]],["limel-flatpickr-adapter.cjs",[[1,"limel-flatpickr-adapter",{"value":[16],"type":[1],"format":[1],"isOpen":[4,"is-open"],"inputElement":[16],"language":[1]}]]],["limel-menu-list.cjs",[[1,"limel-menu-list",{"items":[16],"badgeIcons":[4,"badge-icons"],"iconSize":[1,"icon-size"],"type":[1],"maxLinesSecondaryText":[2,"max-lines-secondary-text"]}]]],["limel-popover-surface.cjs",[[1,"limel-popover-surface",{"contentCollection":[16]}]]],["limel-icon.cjs",[[1,"limel-icon",{"size":[513],"name":[513],"badge":[516]}]]],["limel-input-field.cjs",[[1,"limel-input-field",{"disabled":[516],"readonly":[516],"invalid":[516],"label":[513],"helperText":[513,"helper-text"],"prefix":[513],"suffix":[513],"required":[516],"value":[513],"trailingIcon":[513,"trailing-icon"],"leadingIcon":[513,"leading-icon"],"pattern":[513],"type":[513],"formatNumber":[516,"format-number"],"step":[520],"max":[514],"min":[514],"maxlength":[514],"minlength":[514],"completions":[16],"showLink":[516,"show-link"],"isFocused":[32],"isModified":[32],"showCompletions":[32]}]]],["limel-color-picker-palette_2.cjs",[[1,"limel-color-picker-palette",{"value":[513],"label":[513],"helperText":[513,"helper-text"],"required":[516]}],[1,"limel-popover",{"open":[4],"openDirection":[513,"open-direction"]}]]],["limel-badge.cjs",[[1,"limel-badge",{"label":[514]}]]],["limel-chip-set.cjs",[[1,"limel-chip-set",{"value":[16],"type":[513],"label":[513],"helperText":[513,"helper-text"],"disabled":[516],"readonly":[516],"inputType":[513,"input-type"],"maxItems":[514,"max-items"],"required":[516],"searchLabel":[513,"search-label"],"emptyInputOnBlur":[516,"empty-input-on-blur"],"clearAllButton":[4,"clear-all-button"],"leadingIcon":[513,"leading-icon"],"delimiter":[513],"language":[1],"editMode":[32],"textValue":[32],"blurred":[32],"inputChipIndexSelected":[32],"getEditMode":[64],"setFocus":[64],"emptyInput":[64]}]]],["limel-icon-button.cjs",[[1,"limel-icon-button",{"icon":[513],"elevated":[516],"label":[513],"disabled":[516]}]]],["limel-spinner.cjs",[[1,"limel-spinner",{"size":[513],"limeBranded":[4,"lime-branded"]}]]],["limel-list_3.cjs",[[1,"limel-list",{"items":[16],"badgeIcons":[4,"badge-icons"],"iconSize":[1,"icon-size"],"type":[1],"maxLinesSecondaryText":[2,"max-lines-secondary-text"]}],[1,"limel-menu-surface",{"open":[4],"allowClicksElement":[16]}],[1,"limel-portal",{"openDirection":[1,"open-direction"],"position":[1],"containerId":[1,"container-id"],"containerStyle":[16],"parent":[16],"inheritParentWidth":[4,"inherit-parent-width"],"visible":[4]}]]],["limel-tooltip_2.cjs",[[1,"limel-tooltip",{"elementId":[513,"element-id"],"label":[513],"helperLabel":[513,"helper-label"],"maxlength":[514],"open":[32]}],[1,"limel-tooltip-content",{"label":[513],"helperLabel":[513,"helper-label"],"maxlength":[514]}]]]], options);
17
+ return index.bootstrapLazy([["limel-color-picker.cjs",[[1,"limel-color-picker",{"value":[513],"label":[513],"helperText":[513,"helper-text"],"tooltipLabel":[513,"tooltip-label"],"required":[516],"readonly":[516],"isOpen":[32]}]]],["limel-dock.cjs",[[1,"limel-dock",{"dockItems":[16],"dockFooterItems":[16],"accessibleLabel":[513,"accessible-label"],"expanded":[516],"allowResize":[516,"allow-resize"],"mobileBreakPoint":[514,"mobile-break-point"],"useMobileLayout":[32]}]]],["limel-picker.cjs",[[1,"limel-picker",{"disabled":[4],"readonly":[516],"label":[1],"searchLabel":[1,"search-label"],"helperText":[513,"helper-text"],"leadingIcon":[1,"leading-icon"],"emptyResultMessage":[1,"empty-result-message"],"required":[4],"value":[16],"searcher":[16],"multiple":[4],"delimiter":[513],"actions":[16],"actionPosition":[1,"action-position"],"actionScrollBehavior":[1,"action-scroll-behavior"],"badgeIcons":[516,"badge-icons"],"items":[32],"textValue":[32],"loading":[32],"chips":[32]}]]],["limel-date-picker.cjs",[[1,"limel-date-picker",{"disabled":[516],"readonly":[516],"invalid":[516],"label":[513],"helperText":[513,"helper-text"],"required":[516],"value":[16],"type":[513],"format":[513],"language":[513],"formattedValue":[32],"internalFormat":[32],"showPortal":[32]}]]],["limel-button-group.cjs",[[1,"limel-button-group",{"value":[16],"disabled":[516],"selectedButtonId":[32]}]]],["limel-select.cjs",[[1,"limel-select",{"disabled":[516],"readonly":[516],"invalid":[516],"required":[516],"label":[513],"helperText":[513,"helper-text"],"value":[16],"options":[16],"multiple":[4],"menuOpen":[32]}]]],["limel-tab-panel.cjs",[[1,"limel-tab-panel",{"tabs":[1040]}]]],["limel-file.cjs",[[1,"limel-file",{"value":[16],"label":[513],"required":[516],"disabled":[516],"readonly":[516],"accept":[513],"language":[1],"isDraggingOverDropZone":[32]}]]],["limel-menu.cjs",[[1,"limel-menu",{"items":[16],"disabled":[516],"openDirection":[513,"open-direction"],"open":[1540],"badgeIcons":[516,"badge-icons"],"gridLayout":[516,"grid-layout"]}]]],["limel-button.cjs",[[1,"limel-button",{"label":[513],"primary":[516],"outlined":[516],"icon":[513],"disabled":[516],"loading":[516],"loadingFailed":[516,"loading-failed"],"justLoaded":[32]}]]],["limel-collapsible-section.cjs",[[1,"limel-collapsible-section",{"isOpen":[1540,"is-open"],"header":[513],"actions":[16]}]]],["limel-dialog.cjs",[[1,"limel-dialog",{"heading":[1],"fullscreen":[516],"open":[1540],"closingActions":[16]}]]],["limel-progress-flow.cjs",[[1,"limel-progress-flow",{"flowItems":[16],"disabled":[4],"readonly":[4]}]]],["limel-table.cjs",[[1,"limel-table",{"data":[16],"columns":[16],"mode":[1],"pageSize":[2,"page-size"],"totalRows":[2,"total-rows"],"sorting":[16],"activeRow":[1040],"movableColumns":[4,"movable-columns"],"loading":[4],"page":[2],"emptyMessage":[1,"empty-message"],"aggregates":[16],"selectable":[4],"selection":[16]}]]],["limel-banner.cjs",[[1,"limel-banner",{"message":[513],"icon":[513],"isOpen":[32],"open":[64],"close":[64]}]]],["limel-circular-progress.cjs",[[1,"limel-circular-progress",{"value":[2],"maxValue":[2,"max-value"],"suffix":[1],"displayPercentageColors":[4,"display-percentage-colors"],"size":[513]}]]],["limel-code-editor.cjs",[[1,"limel-code-editor",{"value":[1],"language":[1],"readonly":[4],"lineNumbers":[4,"line-numbers"],"colorScheme":[1,"color-scheme"],"random":[32]}]]],["limel-config.cjs",[[1,"limel-config",{"config":[16]}]]],["limel-flex-container.cjs",[[1,"limel-flex-container",{"direction":[513],"justify":[513],"align":[513],"reverse":[516]}]]],["limel-form.cjs",[[1,"limel-form",{"schema":[16],"value":[16],"disabled":[4],"propsFactory":[16],"transformErrors":[16],"errors":[16]}]]],["limel-grid.cjs",[[1,"limel-grid"]]],["limel-linear-progress.cjs",[[1,"limel-linear-progress",{"value":[2],"indeterminate":[4]}]]],["limel-slider.cjs",[[1,"limel-slider",{"disabled":[516],"readonly":[516],"factor":[514],"label":[513],"helperText":[513,"helper-text"],"unit":[513],"value":[514],"valuemax":[514],"valuemin":[514],"step":[514],"percentageClass":[32]}]]],["limel-snackbar.cjs",[[1,"limel-snackbar",{"message":[1],"timeout":[2],"actionText":[1,"action-text"],"dismissible":[4],"multiline":[4],"language":[1],"show":[64]}]]],["limel-switch.cjs",[[1,"limel-switch",{"label":[513],"disabled":[516],"readonly":[516],"value":[516],"fieldId":[32]}]]],["limel-dock-button.cjs",[[0,"limel-dock-button",{"item":[16],"expanded":[516],"useMobileLayout":[516,"use-mobile-layout"],"isOpen":[32]}]]],["limel-input-field.cjs",[[1,"limel-input-field",{"disabled":[516],"readonly":[516],"invalid":[516],"label":[513],"helperText":[513,"helper-text"],"prefix":[513],"suffix":[513],"required":[516],"value":[513],"trailingIcon":[513,"trailing-icon"],"leadingIcon":[513,"leading-icon"],"pattern":[513],"type":[513],"formatNumber":[516,"format-number"],"step":[520],"max":[514],"min":[514],"maxlength":[514],"minlength":[514],"completions":[16],"showLink":[516,"show-link"],"isFocused":[32],"isModified":[32],"showCompletions":[32]}]]],["limel-color-picker-palette.cjs",[[1,"limel-color-picker-palette",{"value":[513],"label":[513],"helperText":[513,"helper-text"],"required":[516]}]]],["limel-tab-bar.cjs",[[1,"limel-tab-bar",{"tabs":[1040],"canScrollLeft":[32],"canScrollRight":[32]},[[9,"resize","handleWindowResize"]]]]],["limel-header.cjs",[[1,"limel-header",{"icon":[1],"heading":[1],"subheading":[1],"supportingText":[1,"supporting-text"]}]]],["limel-progress-flow-item.cjs",[[0,"limel-progress-flow-item",{"item":[16],"disabled":[4],"readonly":[4]}]]],["limel-checkbox.cjs",[[1,"limel-checkbox",{"disabled":[516],"readonly":[516],"label":[513],"helperText":[513,"helper-text"],"checked":[516],"indeterminate":[516],"required":[516],"modified":[32]}]]],["limel-flatpickr-adapter.cjs",[[1,"limel-flatpickr-adapter",{"value":[16],"type":[1],"format":[1],"isOpen":[4,"is-open"],"inputElement":[16],"language":[1]}]]],["limel-menu-list.cjs",[[1,"limel-menu-list",{"items":[16],"badgeIcons":[4,"badge-icons"],"iconSize":[1,"icon-size"],"type":[1],"maxLinesSecondaryText":[2,"max-lines-secondary-text"]}]]],["limel-badge.cjs",[[1,"limel-badge",{"label":[514]}]]],["limel-icon.cjs",[[1,"limel-icon",{"size":[513],"name":[513],"badge":[516]}]]],["limel-chip-set.cjs",[[1,"limel-chip-set",{"value":[16],"type":[513],"label":[513],"helperText":[513,"helper-text"],"disabled":[516],"readonly":[516],"inputType":[513,"input-type"],"maxItems":[514,"max-items"],"required":[516],"searchLabel":[513,"search-label"],"emptyInputOnBlur":[516,"empty-input-on-blur"],"clearAllButton":[4,"clear-all-button"],"leadingIcon":[513,"leading-icon"],"delimiter":[513],"language":[1],"editMode":[32],"textValue":[32],"blurred":[32],"inputChipIndexSelected":[32],"getEditMode":[64],"setFocus":[64],"emptyInput":[64]}]]],["limel-icon-button.cjs",[[1,"limel-icon-button",{"icon":[513],"elevated":[516],"label":[513],"disabled":[516]}]]],["limel-spinner.cjs",[[1,"limel-spinner",{"size":[513],"limeBranded":[4,"lime-branded"]}]]],["limel-portal.cjs",[[1,"limel-portal",{"openDirection":[1,"open-direction"],"position":[1],"containerId":[1,"container-id"],"containerStyle":[16],"parent":[16],"inheritParentWidth":[4,"inherit-parent-width"],"visible":[4]}]]],["limel-list_2.cjs",[[1,"limel-list",{"items":[16],"badgeIcons":[4,"badge-icons"],"iconSize":[1,"icon-size"],"type":[1],"maxLinesSecondaryText":[2,"max-lines-secondary-text"]}],[1,"limel-menu-surface",{"open":[4],"allowClicksElement":[16]}]]],["limel-popover_4.cjs",[[1,"limel-popover",{"open":[4],"openDirection":[513,"open-direction"]}],[1,"limel-tooltip",{"elementId":[513,"element-id"],"label":[513],"helperLabel":[513,"helper-label"],"maxlength":[514],"open":[32]}],[1,"limel-popover-surface",{"contentCollection":[16]}],[1,"limel-tooltip-content",{"label":[513],"helperLabel":[513,"helper-label"],"maxlength":[514]}]]]], options);
18
18
  });
19
19
  };
20
20
 
@@ -15,6 +15,8 @@
15
15
  "./components/date-picker/date-picker.js",
16
16
  "./components/date-picker/flatpickr-adapter/flatpickr-adapter.js",
17
17
  "./components/dialog/dialog.js",
18
+ "./components/dock/dock.js",
19
+ "./components/dock/dock-button/dock-button.js",
18
20
  "./components/file/file.js",
19
21
  "./components/flex-container/flex-container.js",
20
22
  "./components/form/form.js",
@@ -798,6 +798,9 @@ button:active {
798
798
  box-shadow: var(--button-shadow-pressed);
799
799
  transform: translate3d(0, 0.08rem, 0);
800
800
  }
801
+ button:focus-visible {
802
+ box-shadow: var(--shadow-depth-8-focused);
803
+ }
801
804
  button.mdc-button {
802
805
  min-width: 2.25rem;
803
806
  padding: 0 0.75rem;
@@ -48,8 +48,7 @@ export class Button {
48
48
  'just-loaded': this.justLoaded && !this.loadingFailed,
49
49
  'just-failed': this.justLoaded && this.loadingFailed,
50
50
  'mdc-button--outlined': this.outlined,
51
- }, disabled: this.disabled },
52
- h("div", { class: "mdc-button__ripple" }),
51
+ }, disabled: this.disabled || this.loading },
53
52
  this.renderIcon(),
54
53
  h("span", { class: "label mdc-button__label" }, this.label),
55
54
  h("limel-spinner", { limeBranded: false }),
@@ -0,0 +1,71 @@
1
+ /*
2
+ * This file is imported into every component!
3
+ *
4
+ * Nothing in this file may output any CSS
5
+ * without being explicitly called by outside code.
6
+ */
7
+ /*
8
+ * This file is imported into every component!
9
+ *
10
+ * Nothing in this file may output any CSS
11
+ * without being explicitly used by outside code.
12
+ */
13
+ .button {
14
+ all: unset;
15
+ box-sizing: border-box;
16
+ display: flex;
17
+ align-items: center;
18
+ position: relative;
19
+ width: 100%;
20
+ height: var(--dock-item-height);
21
+ border-radius: 0.375rem;
22
+ font-size: 0.875rem;
23
+ padding: 0 0.5rem;
24
+ min-width: var(--dock-item-height);
25
+ color: var(--limel-dock-item-text-color);
26
+ background-color: var(--dock-background-color);
27
+ }
28
+ .button:focus-visible {
29
+ box-shadow: var(--shadow-depth-8-focused);
30
+ }
31
+ .dock-item:not(.selected) .button:not(.disabled) {
32
+ cursor: pointer;
33
+ transition: background-color 0.2s ease, box-shadow 0.2s ease, transform 0.1s ease-out;
34
+ }
35
+ .dock-item:not(.selected) .button:not(.disabled):hover {
36
+ box-shadow: var(--button-shadow-hovered);
37
+ }
38
+ .dock-item:not(.selected) .button:not(.disabled):active {
39
+ box-shadow: var(--button-shadow-pressed);
40
+ transform: translate3d(0, 0.08rem, 0);
41
+ }
42
+ .button:hover {
43
+ z-index: 1;
44
+ }
45
+ .button.selected {
46
+ color: var(--limel-dock-item-text-color--selected);
47
+ background-color: var(--dock-item-background-color--selected, rgb(var(--contrast-200)));
48
+ box-shadow: var(--button-shadow-inset);
49
+ }
50
+ .button.selected .icon {
51
+ color: var(--limel-dock-item-text--selected);
52
+ }
53
+
54
+ limel-popover {
55
+ display: grid;
56
+ }
57
+
58
+ .text {
59
+ overflow: hidden;
60
+ white-space: nowrap;
61
+ text-overflow: ellipsis;
62
+ padding-left: 0.5rem;
63
+ padding-right: 0.75rem;
64
+ }
65
+
66
+ .icon {
67
+ flex-shrink: 0;
68
+ width: calc(var(--dock-item-height) - 1rem);
69
+ height: calc(var(--dock-item-height) - 1rem);
70
+ color: var(--dock-item-icon-color--deselected, var(--limel-dock-item-text-color));
71
+ }
@@ -0,0 +1,187 @@
1
+ import { Component, Event, h, Prop, State } from '@stencil/core';
2
+ import { createRandomString } from '../../../util/random-string';
3
+ /**
4
+ * @private
5
+ */
6
+ export class DockButton {
7
+ constructor() {
8
+ /**
9
+ * @inheritdoc
10
+ */
11
+ this.expanded = false;
12
+ /**
13
+ * @inheritdoc
14
+ */
15
+ this.useMobileLayout = false;
16
+ this.isOpen = false;
17
+ this.openPopover = (event) => {
18
+ event.stopPropagation();
19
+ this.isOpen = true;
20
+ };
21
+ this.onPopoverClose = () => {
22
+ this.isOpen = false;
23
+ this.close.emit();
24
+ };
25
+ this.handleClick = (event) => {
26
+ event.stopPropagation();
27
+ this.interact.emit(this.item);
28
+ };
29
+ this.tooltipId = createRandomString();
30
+ }
31
+ render() {
32
+ var _a, _b;
33
+ if ((_b = (_a = this.item) === null || _a === void 0 ? void 0 : _a.dockMenu) === null || _b === void 0 ? void 0 : _b.componentName) {
34
+ return this.renderPopover();
35
+ }
36
+ return this.renderButton(this.handleClick);
37
+ }
38
+ renderPopover() {
39
+ var _a;
40
+ const CustomComponent = (_a = this.item) === null || _a === void 0 ? void 0 : _a.dockMenu.componentName;
41
+ return (h("limel-popover", { openDirection: this.useMobileLayout ? 'top' : 'right', open: this.isOpen || this.item.dockMenu.menuOpen, onClose: this.onPopoverClose },
42
+ this.renderButton(this.openPopover, 'trigger'),
43
+ h(CustomComponent, Object.assign({}, (this.item.dockMenu.props || {}), { onClose: this.onPopoverClose }))));
44
+ }
45
+ renderButton(handleClick, slot) {
46
+ var _a;
47
+ return (h("button", { slot: slot, tabindex: "0", id: this.tooltipId, type: "button", class: {
48
+ button: true,
49
+ selected: (_a = this.item) === null || _a === void 0 ? void 0 : _a.selected,
50
+ }, onClick: handleClick },
51
+ this.renderIcon(),
52
+ this.renderLabel(),
53
+ this.renderTooltip()));
54
+ }
55
+ renderIcon() {
56
+ if (!this.item.icon) {
57
+ return;
58
+ }
59
+ return h("limel-icon", { name: this.item.icon, class: "icon" });
60
+ }
61
+ renderLabel() {
62
+ if (this.expanded) {
63
+ return h("span", { class: "text" }, this.item.label);
64
+ }
65
+ }
66
+ renderTooltip() {
67
+ if (!this.expanded && this.item.label) {
68
+ return (h("limel-tooltip", { elementId: this.tooltipId, label: this.item.label, helperLabel: this.item.helperLabel }));
69
+ }
70
+ if (this.expanded && this.item.helperLabel) {
71
+ return (h("limel-tooltip", { elementId: this.tooltipId, label: this.item.helperLabel }));
72
+ }
73
+ }
74
+ static get is() { return "limel-dock-button"; }
75
+ static get originalStyleUrls() { return {
76
+ "$": ["dock-button.scss"]
77
+ }; }
78
+ static get styleUrls() { return {
79
+ "$": ["dock-button.css"]
80
+ }; }
81
+ static get properties() { return {
82
+ "item": {
83
+ "type": "unknown",
84
+ "mutable": false,
85
+ "complexType": {
86
+ "original": "DockItem",
87
+ "resolved": "DockItem",
88
+ "references": {
89
+ "DockItem": {
90
+ "location": "import",
91
+ "path": "../dock.types"
92
+ }
93
+ }
94
+ },
95
+ "required": true,
96
+ "optional": false,
97
+ "docs": {
98
+ "tags": [{
99
+ "name": "inheritdoc",
100
+ "text": undefined
101
+ }],
102
+ "text": ""
103
+ }
104
+ },
105
+ "expanded": {
106
+ "type": "boolean",
107
+ "mutable": false,
108
+ "complexType": {
109
+ "original": "boolean",
110
+ "resolved": "boolean",
111
+ "references": {}
112
+ },
113
+ "required": false,
114
+ "optional": true,
115
+ "docs": {
116
+ "tags": [{
117
+ "name": "inheritdoc",
118
+ "text": undefined
119
+ }],
120
+ "text": ""
121
+ },
122
+ "attribute": "expanded",
123
+ "reflect": true,
124
+ "defaultValue": "false"
125
+ },
126
+ "useMobileLayout": {
127
+ "type": "boolean",
128
+ "mutable": false,
129
+ "complexType": {
130
+ "original": "boolean",
131
+ "resolved": "boolean",
132
+ "references": {}
133
+ },
134
+ "required": false,
135
+ "optional": true,
136
+ "docs": {
137
+ "tags": [{
138
+ "name": "inheritdoc",
139
+ "text": undefined
140
+ }],
141
+ "text": ""
142
+ },
143
+ "attribute": "use-mobile-layout",
144
+ "reflect": true,
145
+ "defaultValue": "false"
146
+ }
147
+ }; }
148
+ static get states() { return {
149
+ "isOpen": {}
150
+ }; }
151
+ static get events() { return [{
152
+ "method": "interact",
153
+ "name": "interact",
154
+ "bubbles": true,
155
+ "cancelable": true,
156
+ "composed": true,
157
+ "docs": {
158
+ "tags": [],
159
+ "text": "Fired when clicking on the flow item."
160
+ },
161
+ "complexType": {
162
+ "original": "DockItem",
163
+ "resolved": "DockItem",
164
+ "references": {
165
+ "DockItem": {
166
+ "location": "import",
167
+ "path": "../dock.types"
168
+ }
169
+ }
170
+ }
171
+ }, {
172
+ "method": "close",
173
+ "name": "close",
174
+ "bubbles": true,
175
+ "cancelable": true,
176
+ "composed": true,
177
+ "docs": {
178
+ "tags": [],
179
+ "text": ""
180
+ },
181
+ "complexType": {
182
+ "original": "void",
183
+ "resolved": "void",
184
+ "references": {}
185
+ }
186
+ }]; }
187
+ }
@@ -0,0 +1,107 @@
1
+ /*
2
+ * This file is imported into every component!
3
+ *
4
+ * Nothing in this file may output any CSS
5
+ * without being explicitly called by outside code.
6
+ */
7
+ /*
8
+ * This file is imported into every component!
9
+ *
10
+ * Nothing in this file may output any CSS
11
+ * without being explicitly used by outside code.
12
+ */
13
+ /**
14
+ * @prop --dock-expanded-max-width: The maximum width of the Dock when it is expanded. Defaults to `max-content` which means the Dock will adjust its width to the widest dock item.
15
+ * @prop --dock-background-color: Background color of the whole component, defaults to `--contrast-100`.
16
+ * @prop --dock-item-background-color--selected: Background color of selected dock item, defaults to `--contrast-200`.
17
+ * @prop --dock-item-text-color--deselected: Text of dock items, defaults to `--contrast-1100`.
18
+ * @prop --dock-item-text-color--selected: Text color of selected dock item, defaults to `--contrast-1300`.
19
+ * @prop --dock-item-icon-color: Color of the optional icons used in each dock item. Only affects inactive dock items, defaults to text colors for default or selected states.
20
+ * @prop --popover-surface-width: Defines the width of the popover that is opened for dock items with custom components. Defaults to `auto`.
21
+ */
22
+ :host(limel-dock) {
23
+ --dock-item-height: 2.75rem;
24
+ --dock-padding: 0.25rem;
25
+ --dock-expand-shrink-button-height: 1rem;
26
+ --limel-dock-item-text-color: var(
27
+ --dock-item-text-color--deselected,
28
+ rgb(var(--contrast-1100))
29
+ );
30
+ --limel-dock-item-text-color--selected: var(
31
+ --dock-item-text-color--selected,
32
+ rgb(var(--contrast-1300))
33
+ );
34
+ isolation: isolate;
35
+ position: relative;
36
+ display: inline-flex;
37
+ flex-direction: column;
38
+ background-color: var(--dock-background-color, rgb(var(--contrast-100)));
39
+ box-shadow: 0.1875rem 0 0.375rem -0.125rem rgba(var(--color-black), 0.15), 0.1875rem 0 0.625rem -0.125rem rgba(var(--color-black), 0.05);
40
+ }
41
+
42
+ :host(limel-dock:not(.has-mobile-layout)) {
43
+ height: 100%;
44
+ width: calc(var(--dock-padding) * 2 + var(--dock-item-height));
45
+ }
46
+
47
+ :host(limel-dock.expanded) {
48
+ width: var(--dock-expanded-max-width, max-content);
49
+ }
50
+
51
+ .footer-separator {
52
+ margin-top: auto;
53
+ justify-self: flex-end;
54
+ }
55
+
56
+ nav {
57
+ box-sizing: border-box;
58
+ display: inline-flex;
59
+ flex-direction: column;
60
+ gap: 0.375rem;
61
+ flex-grow: 1;
62
+ padding: var(--dock-padding);
63
+ overflow-y: auto;
64
+ scrollbar-width: none;
65
+ -ms-overflow-style: none;
66
+ }
67
+ nav::-webkit-scrollbar {
68
+ display: none;
69
+ }
70
+ :host(limel-dock.has-mobile-layout) nav {
71
+ justify-content: space-between;
72
+ flex-direction: row;
73
+ }
74
+
75
+ .expand-shrink {
76
+ all: unset;
77
+ box-sizing: border-box;
78
+ transition: background-color 0.2s ease, box-shadow 0.2s ease, transform 0.1s ease-out;
79
+ cursor: pointer;
80
+ display: flex;
81
+ justify-content: center;
82
+ align-items: center;
83
+ height: var(--dock-expand-shrink-button-height);
84
+ padding: 0 0.5rem;
85
+ margin: var(--dock-padding);
86
+ border-radius: 0.375rem;
87
+ }
88
+ .expand-shrink:hover {
89
+ box-shadow: var(--button-shadow-hovered);
90
+ }
91
+ .expand-shrink:active {
92
+ box-shadow: var(--button-shadow-pressed);
93
+ transform: translate3d(0, 0.08rem, 0);
94
+ }
95
+ .expand-shrink.expanded {
96
+ justify-content: flex-end;
97
+ }
98
+ .expand-shrink.expanded limel-icon {
99
+ transform: rotateY(180deg);
100
+ }
101
+ .expand-shrink:focus-visible {
102
+ box-shadow: var(--shadow-depth-8-focused);
103
+ }
104
+ .expand-shrink limel-icon {
105
+ width: calc(var(--dock-expand-shrink-button-height) - 0.25rem);
106
+ color: var(--dock-item-icon-color--deselected, var(--button-text));
107
+ }