@limetech/lime-elements 39.26.0 → 39.28.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +23 -0
- package/dist/cjs/lime-elements.cjs.js +1 -1
- package/dist/cjs/limel-action-bar_3.cjs.entry.js +1 -1
- package/dist/cjs/limel-ai-avatar.cjs.entry.js +136 -12
- package/dist/cjs/limel-badge.cjs.entry.js +2 -2
- package/dist/cjs/limel-banner.cjs.entry.js +1 -1
- package/dist/cjs/limel-breadcrumbs_8.cjs.entry.js +8 -8
- package/dist/cjs/limel-button-group.cjs.entry.js +1 -1
- package/dist/cjs/limel-button.cjs.entry.js +2 -2
- package/dist/cjs/limel-callout.cjs.entry.js +2 -2
- package/dist/cjs/limel-card.cjs.entry.js +1 -1
- package/dist/cjs/limel-chart.cjs.entry.js +1 -1
- package/dist/cjs/limel-checkbox.cjs.entry.js +1 -1
- package/dist/cjs/limel-chip-set.cjs.entry.js +21 -3
- package/dist/cjs/limel-chip_2.cjs.entry.js +2 -2
- package/dist/cjs/limel-circular-progress.cjs.entry.js +1 -1
- package/dist/cjs/limel-code-diff.cjs.entry.js +2 -2
- package/dist/cjs/limel-code-editor.cjs.entry.js +2 -2
- package/dist/cjs/limel-collapsible-section.cjs.entry.js +2 -2
- package/dist/cjs/limel-color-picker-palette.cjs.entry.js +2 -2
- package/dist/cjs/limel-color-picker.cjs.entry.js +1 -1
- package/dist/cjs/limel-dialog.cjs.entry.js +2 -2
- package/dist/cjs/limel-dock.cjs.entry.js +2 -2
- package/dist/cjs/limel-drag-handle.cjs.entry.js +2 -2
- package/dist/cjs/limel-email-viewer.cjs.entry.js +2 -2
- package/dist/cjs/limel-file-dropzone_2.cjs.entry.js +2 -2
- package/dist/cjs/limel-file-viewer.cjs.entry.js +1 -1
- package/dist/cjs/limel-file.cjs.entry.js +2 -2
- package/dist/cjs/limel-flatpickr-adapter.cjs.entry.js +2 -2
- package/dist/cjs/limel-flex-container.cjs.entry.js +1 -1
- package/dist/cjs/limel-form.cjs.entry.js +1 -1
- package/dist/cjs/limel-grid.cjs.entry.js +1 -1
- package/dist/cjs/limel-header.cjs.entry.js +1 -1
- package/dist/cjs/limel-help-content.cjs.entry.js +1 -1
- package/dist/cjs/limel-help.cjs.entry.js +2 -2
- package/dist/cjs/limel-helper-line.cjs.entry.js +2 -2
- package/dist/cjs/limel-hotkey_4.cjs.entry.js +5 -5
- package/dist/cjs/limel-icon-button.cjs.entry.js +1 -1
- package/dist/cjs/limel-icon.cjs.entry.js +23 -1
- package/dist/cjs/limel-info-tile.cjs.entry.js +2 -2
- package/dist/cjs/limel-list-item.cjs.entry.js +3 -3
- package/dist/cjs/limel-markdown.cjs.entry.js +1 -1
- package/dist/cjs/limel-masonry-layout.cjs.entry.js +1 -1
- package/dist/cjs/limel-menu-item-meta.cjs.entry.js +1 -1
- package/dist/cjs/limel-picker.cjs.entry.js +107 -35
- package/dist/cjs/limel-popover_2.cjs.entry.js +2 -2
- package/dist/cjs/limel-profile-picture.cjs.entry.js +1 -1
- package/dist/cjs/limel-prosemirror-adapter.cjs.entry.js +2 -2
- package/dist/cjs/limel-radio-button-group.cjs.entry.js +1 -1
- package/dist/cjs/limel-radio-button.cjs.entry.js +2 -2
- package/dist/cjs/limel-select.cjs.entry.js +1 -1
- package/dist/cjs/limel-shortcut.cjs.entry.js +1 -1
- package/dist/cjs/limel-slider.cjs.entry.js +2 -2
- package/dist/cjs/limel-snackbar.cjs.entry.js +3 -3
- package/dist/cjs/limel-split-button.cjs.entry.js +2 -2
- package/dist/cjs/limel-switch.cjs.entry.js +1 -1
- package/dist/cjs/limel-tab-bar.cjs.entry.js +2 -2
- package/dist/cjs/limel-tab-panel.cjs.entry.js +1 -1
- package/dist/cjs/limel-table.cjs.entry.js +4 -4
- package/dist/cjs/limel-text-editor-link-menu.cjs.entry.js +4 -4
- package/dist/cjs/limel-text-editor.cjs.entry.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{translations-D4j_eojG.js → translations-VEsa81QY.js} +56 -0
- package/dist/collection/components/ai-avatar/ai-avatar.css +363 -124
- package/dist/collection/components/ai-avatar/ai-avatar.js +199 -16
- package/dist/collection/components/ai-avatar/ai-avatar.types.js +1 -0
- package/dist/collection/components/badge/badge.js +2 -2
- package/dist/collection/components/banner/banner.js +1 -1
- package/dist/collection/components/breadcrumbs/breadcrumbs.js +1 -1
- package/dist/collection/components/button/button.js +2 -2
- package/dist/collection/components/button-group/button-group.js +1 -1
- package/dist/collection/components/callout/callout.js +1 -1
- package/dist/collection/components/card/card.js +1 -1
- package/dist/collection/components/checkbox/checkbox.js +1 -1
- package/dist/collection/components/chip/chip.js +1 -1
- package/dist/collection/components/chip-set/chip-set.js +40 -2
- package/dist/collection/components/circular-progress/circular-progress.js +1 -1
- package/dist/collection/components/code-diff/code-diff.js +1 -1
- package/dist/collection/components/code-editor/code-editor.js +1 -1
- package/dist/collection/components/collapsible-section/collapsible-section.js +1 -1
- package/dist/collection/components/color-picker/color-picker-palette.js +2 -2
- package/dist/collection/components/color-picker/color-picker.js +1 -1
- package/dist/collection/components/date-picker/flatpickr-adapter/flatpickr-adapter.js +1 -1
- package/dist/collection/components/dialog/dialog.js +2 -2
- package/dist/collection/components/dock/dock.js +2 -2
- package/dist/collection/components/drag-handle/drag-handle.js +1 -1
- package/dist/collection/components/email-viewer/email-viewer.js +1 -1
- package/dist/collection/components/file/file.js +1 -1
- package/dist/collection/components/file-dropzone/file-dropzone.js +1 -1
- package/dist/collection/components/file-input/file-input.js +1 -1
- package/dist/collection/components/flex-container/flex-container.js +1 -1
- package/dist/collection/components/form/form.js +1 -1
- package/dist/collection/components/grid/grid.js +1 -1
- package/dist/collection/components/header/header.js +1 -1
- package/dist/collection/components/help/help-content.js +1 -1
- package/dist/collection/components/help/help.js +2 -2
- package/dist/collection/components/helper-line/helper-line.js +2 -2
- package/dist/collection/components/hotkey/hotkey.js +1 -1
- package/dist/collection/components/icon/icon.js +43 -1
- package/dist/collection/components/icon-button/icon-button.js +1 -1
- package/dist/collection/components/info-tile/info-tile.js +2 -2
- package/dist/collection/components/input-field/input-field.js +1 -1
- package/dist/collection/components/list/list.js +1 -1
- package/dist/collection/components/list-item/list-item.js +2 -2
- package/dist/collection/components/list-item/menu-item-meta/menu-item-meta.js +1 -1
- package/dist/collection/components/markdown/markdown.js +1 -1
- package/dist/collection/components/masonry-layout/masonry-layout.js +1 -1
- package/dist/collection/components/menu/menu.js +1 -1
- package/dist/collection/components/menu-list/menu-list.js +1 -1
- package/dist/collection/components/menu-surface/menu-surface.js +1 -1
- package/dist/collection/components/notched-outline/notched-outline.js +1 -1
- package/dist/collection/components/picker/picker.js +136 -36
- package/dist/collection/components/popover/popover.js +1 -1
- package/dist/collection/components/popover-surface/popover-surface.js +1 -1
- package/dist/collection/components/portal/portal.js +1 -1
- package/dist/collection/components/radio-button-group/radio-button-group.js +1 -1
- package/dist/collection/components/radio-button-group/radio-button.js +2 -2
- package/dist/collection/components/select/select.js +1 -1
- package/dist/collection/components/shortcut/shortcut.js +1 -1
- package/dist/collection/components/slider/slider.js +2 -2
- package/dist/collection/components/snackbar/snackbar.js +2 -2
- package/dist/collection/components/spinner/spinner.js +1 -1
- package/dist/collection/components/split-button/split-button.js +2 -2
- package/dist/collection/components/switch/switch.js +1 -1
- package/dist/collection/components/tab-bar/tab-bar.js +2 -2
- package/dist/collection/components/tab-panel/tab-panel.js +1 -1
- package/dist/collection/components/table/table.js +3 -3
- package/dist/collection/components/text-editor/link-menu/editor-link-menu.js +3 -3
- package/dist/collection/components/text-editor/prosemirror-adapter/prosemirror-adapter.js +1 -1
- package/dist/collection/components/text-editor/text-editor.js +1 -1
- package/dist/collection/components/tooltip/tooltip-content.js +1 -1
- package/dist/collection/components/tooltip/tooltip.js +2 -2
- package/dist/collection/translations/da.js +7 -0
- package/dist/collection/translations/de.js +7 -0
- package/dist/collection/translations/en.js +7 -0
- package/dist/collection/translations/fi.js +7 -0
- package/dist/collection/translations/fr.js +7 -0
- package/dist/collection/translations/nl.js +7 -0
- package/dist/collection/translations/no.js +7 -0
- package/dist/collection/translations/sv.js +7 -0
- package/dist/esm/lime-elements.js +1 -1
- package/dist/esm/limel-action-bar_3.entry.js +1 -1
- package/dist/esm/limel-ai-avatar.entry.js +136 -12
- package/dist/esm/limel-badge.entry.js +2 -2
- package/dist/esm/limel-banner.entry.js +1 -1
- package/dist/esm/limel-breadcrumbs_8.entry.js +8 -8
- package/dist/esm/limel-button-group.entry.js +1 -1
- package/dist/esm/limel-button.entry.js +2 -2
- package/dist/esm/limel-callout.entry.js +2 -2
- package/dist/esm/limel-card.entry.js +1 -1
- package/dist/esm/limel-chart.entry.js +1 -1
- package/dist/esm/limel-checkbox.entry.js +1 -1
- package/dist/esm/limel-chip-set.entry.js +21 -3
- package/dist/esm/limel-chip_2.entry.js +2 -2
- package/dist/esm/limel-circular-progress.entry.js +1 -1
- package/dist/esm/limel-code-diff.entry.js +2 -2
- package/dist/esm/limel-code-editor.entry.js +2 -2
- package/dist/esm/limel-collapsible-section.entry.js +2 -2
- package/dist/esm/limel-color-picker-palette.entry.js +2 -2
- package/dist/esm/limel-color-picker.entry.js +1 -1
- package/dist/esm/limel-dialog.entry.js +2 -2
- package/dist/esm/limel-dock.entry.js +2 -2
- package/dist/esm/limel-drag-handle.entry.js +2 -2
- package/dist/esm/limel-email-viewer.entry.js +2 -2
- package/dist/esm/limel-file-dropzone_2.entry.js +2 -2
- package/dist/esm/limel-file-viewer.entry.js +1 -1
- package/dist/esm/limel-file.entry.js +2 -2
- package/dist/esm/limel-flatpickr-adapter.entry.js +2 -2
- package/dist/esm/limel-flex-container.entry.js +1 -1
- package/dist/esm/limel-form.entry.js +1 -1
- package/dist/esm/limel-grid.entry.js +1 -1
- package/dist/esm/limel-header.entry.js +1 -1
- package/dist/esm/limel-help-content.entry.js +1 -1
- package/dist/esm/limel-help.entry.js +2 -2
- package/dist/esm/limel-helper-line.entry.js +2 -2
- package/dist/esm/limel-hotkey_4.entry.js +5 -5
- package/dist/esm/limel-icon-button.entry.js +1 -1
- package/dist/esm/limel-icon.entry.js +23 -1
- package/dist/esm/limel-info-tile.entry.js +2 -2
- package/dist/esm/limel-list-item.entry.js +3 -3
- package/dist/esm/limel-markdown.entry.js +1 -1
- package/dist/esm/limel-masonry-layout.entry.js +1 -1
- package/dist/esm/limel-menu-item-meta.entry.js +1 -1
- package/dist/esm/limel-picker.entry.js +108 -36
- package/dist/esm/limel-popover_2.entry.js +2 -2
- package/dist/esm/limel-profile-picture.entry.js +1 -1
- package/dist/esm/limel-prosemirror-adapter.entry.js +2 -2
- package/dist/esm/limel-radio-button-group.entry.js +1 -1
- package/dist/esm/limel-radio-button.entry.js +2 -2
- package/dist/esm/limel-select.entry.js +1 -1
- package/dist/esm/limel-shortcut.entry.js +1 -1
- package/dist/esm/limel-slider.entry.js +2 -2
- package/dist/esm/limel-snackbar.entry.js +3 -3
- package/dist/esm/limel-split-button.entry.js +2 -2
- package/dist/esm/limel-switch.entry.js +1 -1
- package/dist/esm/limel-tab-bar.entry.js +2 -2
- package/dist/esm/limel-tab-panel.entry.js +1 -1
- package/dist/esm/limel-table.entry.js +4 -4
- package/dist/esm/limel-text-editor-link-menu.entry.js +4 -4
- package/dist/esm/limel-text-editor.entry.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{translations-Dv3YcsA7.js → translations-EPnIW0K5.js} +56 -0
- package/dist/lime-elements/lime-elements.esm.js +1 -1
- package/dist/lime-elements/{p-96ee6090.entry.js → p-08a261ce.entry.js} +1 -1
- package/dist/lime-elements/p-122cd39d.entry.js +1 -0
- package/dist/lime-elements/{p-469ec146.entry.js → p-140afd9f.entry.js} +1 -1
- package/dist/lime-elements/{p-5cc370fe.entry.js → p-1614ad86.entry.js} +1 -1
- package/dist/lime-elements/{p-01651634.entry.js → p-19a259ff.entry.js} +1 -1
- package/dist/lime-elements/{p-512b2e14.entry.js → p-1a5541f1.entry.js} +1 -1
- package/dist/lime-elements/{p-104d0fb3.entry.js → p-1ae8b33a.entry.js} +1 -1
- package/dist/lime-elements/{p-95ac0387.entry.js → p-1e155de4.entry.js} +1 -1
- package/dist/lime-elements/{p-c8eabc9d.entry.js → p-1efd78ee.entry.js} +1 -1
- package/dist/lime-elements/{p-cc17846b.entry.js → p-22f34040.entry.js} +1 -1
- package/dist/lime-elements/{p-5442e09e.entry.js → p-263bfd74.entry.js} +1 -1
- package/dist/lime-elements/{p-a026cc24.entry.js → p-2a92790c.entry.js} +1 -1
- package/dist/lime-elements/{p-42b9b57a.entry.js → p-2a9e7bf5.entry.js} +1 -1
- package/dist/lime-elements/{p-05d533b5.entry.js → p-2b0a8066.entry.js} +1 -1
- package/dist/lime-elements/{p-aa43c751.entry.js → p-46900c5b.entry.js} +1 -1
- package/dist/lime-elements/{p-1c244f85.entry.js → p-49901dd7.entry.js} +1 -1
- package/dist/lime-elements/{p-ddd7cb78.entry.js → p-4d948ed5.entry.js} +1 -1
- package/dist/lime-elements/{p-60327283.entry.js → p-5017cb3f.entry.js} +1 -1
- package/dist/lime-elements/{p-fbdca779.entry.js → p-50f51eb9.entry.js} +1 -1
- package/dist/lime-elements/p-59716b48.entry.js +1 -0
- package/dist/lime-elements/{p-9caeca33.entry.js → p-5d9adcbb.entry.js} +1 -1
- package/dist/lime-elements/{p-da4429a8.entry.js → p-5f121609.entry.js} +1 -1
- package/dist/lime-elements/{p-eff0a330.entry.js → p-6015621e.entry.js} +1 -1
- package/dist/lime-elements/{p-c4813e26.entry.js → p-60518e6b.entry.js} +1 -1
- package/dist/lime-elements/{p-374ec191.entry.js → p-61ec46d5.entry.js} +1 -1
- package/dist/lime-elements/{p-cba72cd6.entry.js → p-6b7e58c3.entry.js} +1 -1
- package/dist/lime-elements/{p-6a26ea78.entry.js → p-6ca1da96.entry.js} +1 -1
- package/dist/lime-elements/{p-f6e58e6c.entry.js → p-730ba357.entry.js} +1 -1
- package/dist/lime-elements/{p-e7e2737b.entry.js → p-7b074737.entry.js} +1 -1
- package/dist/lime-elements/{p-79c797f5.entry.js → p-8203eea8.entry.js} +1 -1
- package/dist/lime-elements/{p-19d0861e.entry.js → p-82fb5c74.entry.js} +1 -1
- package/dist/lime-elements/{p-bcf03d4e.entry.js → p-871eb795.entry.js} +1 -1
- package/dist/lime-elements/{p-6f6c28f8.entry.js → p-8fde4714.entry.js} +1 -1
- package/dist/lime-elements/p-91990c64.entry.js +1 -0
- package/dist/lime-elements/{p-80162ba0.entry.js → p-9359e870.entry.js} +1 -1
- package/dist/lime-elements/{p-f867b424.entry.js → p-989f4a52.entry.js} +1 -1
- package/dist/lime-elements/{p-a435d1c3.entry.js → p-9b3e8f43.entry.js} +1 -1
- package/dist/lime-elements/{p-f2f01f2a.entry.js → p-9e1a4d63.entry.js} +1 -1
- package/dist/lime-elements/{p-b1645d2d.entry.js → p-9f4f1854.entry.js} +1 -1
- package/dist/lime-elements/p-EPnIW0K5.js +1 -0
- package/dist/lime-elements/p-a6805c64.entry.js +1 -0
- package/dist/lime-elements/{p-97c401f1.entry.js → p-a7764b6d.entry.js} +1 -1
- package/dist/lime-elements/{p-d227f4df.entry.js → p-a85b2734.entry.js} +1 -1
- package/dist/lime-elements/p-ac5a3f55.entry.js +1 -0
- package/dist/lime-elements/{p-d1477eca.entry.js → p-afd4be62.entry.js} +1 -1
- package/dist/lime-elements/{p-a712087a.entry.js → p-b61a1d27.entry.js} +1 -1
- package/dist/lime-elements/{p-4ecd565b.entry.js → p-bffbd011.entry.js} +1 -1
- package/dist/lime-elements/p-c9fa7a09.entry.js +1 -0
- package/dist/lime-elements/{p-733ebba6.entry.js → p-cc1e3d79.entry.js} +1 -1
- package/dist/lime-elements/{p-72b9d03e.entry.js → p-d0607ba8.entry.js} +1 -1
- package/dist/lime-elements/{p-067a13bb.entry.js → p-d09e74b1.entry.js} +1 -1
- package/dist/lime-elements/{p-504dcdb6.entry.js → p-d23af300.entry.js} +1 -1
- package/dist/lime-elements/{p-eecef02e.entry.js → p-d4a94dce.entry.js} +1 -1
- package/dist/lime-elements/{p-e5c7cac0.entry.js → p-d5f189b9.entry.js} +2 -2
- package/dist/lime-elements/{p-6eaa9776.entry.js → p-dcffc27b.entry.js} +3 -3
- package/dist/lime-elements/{p-92539877.entry.js → p-de203f64.entry.js} +1 -1
- package/dist/lime-elements/p-dee5717c.entry.js +1 -0
- package/dist/lime-elements/{p-86a001e2.entry.js → p-df0b927e.entry.js} +1 -1
- package/dist/lime-elements/{p-d00ec6c2.entry.js → p-f5d60f9c.entry.js} +1 -1
- package/dist/lime-elements/{p-d4d4236b.entry.js → p-faceccc0.entry.js} +1 -1
- package/dist/types/components/ai-avatar/ai-avatar.d.ts +31 -7
- package/dist/types/components/ai-avatar/ai-avatar.types.d.ts +26 -0
- package/dist/types/components/chip-set/chip-set.d.ts +16 -0
- package/dist/types/components/icon/icon.d.ts +15 -0
- package/dist/types/components/picker/picker.d.ts +34 -6
- package/dist/types/components.d.ts +87 -20
- package/dist/types/translations/da.d.ts +7 -0
- package/dist/types/translations/de.d.ts +7 -0
- package/dist/types/translations/en.d.ts +7 -0
- package/dist/types/translations/fi.d.ts +7 -0
- package/dist/types/translations/fr.d.ts +7 -0
- package/dist/types/translations/nl.d.ts +7 -0
- package/dist/types/translations/no.d.ts +7 -0
- package/dist/types/translations/sv.d.ts +7 -0
- package/package.json +1 -1
- package/dist/lime-elements/p-438652d6.entry.js +0 -1
- package/dist/lime-elements/p-56cc6800.entry.js +0 -1
- package/dist/lime-elements/p-58615011.entry.js +0 -1
- package/dist/lime-elements/p-5eadcd4a.entry.js +0 -1
- package/dist/lime-elements/p-7436490f.entry.js +0 -1
- package/dist/lime-elements/p-7cfed02f.entry.js +0 -1
- package/dist/lime-elements/p-Dv3YcsA7.js +0 -1
- package/dist/lime-elements/p-cba2dbb6.entry.js +0 -1
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import translate from "../../global/translations";
|
|
1
2
|
import { h, } from "@stencil/core";
|
|
2
3
|
import { isDescendant } from "../../util/dom";
|
|
3
4
|
import { ARROW_DOWN, ARROW_UP, ENTER, ESCAPE, TAB } from "../../util/keycodes";
|
|
@@ -16,6 +17,7 @@ const DEFAULT_SEARCHER_MAX_RESULTS = 20;
|
|
|
16
17
|
* @exampleComponent limel-example-picker-value-as-object
|
|
17
18
|
* @exampleComponent limel-example-picker-value-as-object-with-actions
|
|
18
19
|
* @exampleComponent limel-example-picker-empty-suggestions
|
|
20
|
+
* @exampleComponent limel-example-picker-empty-result-message
|
|
19
21
|
* @exampleComponent limel-example-picker-leading-icon
|
|
20
22
|
* @exampleComponent limel-example-picker-static-actions
|
|
21
23
|
* @exampleComponent limel-example-picker-sections
|
|
@@ -32,6 +34,12 @@ export class Picker {
|
|
|
32
34
|
* but allow interaction with existing items.
|
|
33
35
|
*/
|
|
34
36
|
this.readonly = false;
|
|
37
|
+
/**
|
|
38
|
+
* Defines the language for translations. Affects the labels
|
|
39
|
+
* rendered by the picker itself, such as the "Results matching"
|
|
40
|
+
* header shown above the suggestion list while the user is typing.
|
|
41
|
+
*/
|
|
42
|
+
this.language = 'en';
|
|
35
43
|
/**
|
|
36
44
|
* True if the control requires a value
|
|
37
45
|
*/
|
|
@@ -124,7 +132,7 @@ export class Picker {
|
|
|
124
132
|
this.loading = true;
|
|
125
133
|
});
|
|
126
134
|
const searcher = this.searcher || this.defaultSearcher;
|
|
127
|
-
const result =
|
|
135
|
+
const result = await searcher(this.textValue);
|
|
128
136
|
// If the search function resolves immediately,
|
|
129
137
|
// the loading spinner will not be shown.
|
|
130
138
|
clearTimeout(timeoutId);
|
|
@@ -146,7 +154,6 @@ export class Picker {
|
|
|
146
154
|
};
|
|
147
155
|
this.handleTextInput = this.handleTextInput.bind(this);
|
|
148
156
|
this.handleInputKeyDown = this.handleInputKeyDown.bind(this);
|
|
149
|
-
this.handleDropdownKeyDown = this.handleDropdownKeyDown.bind(this);
|
|
150
157
|
this.handleInputFieldFocus = this.handleInputFieldFocus.bind(this);
|
|
151
158
|
this.handleChange = this.handleChange.bind(this);
|
|
152
159
|
this.handleInteract = this.handleInteract.bind(this);
|
|
@@ -190,7 +197,7 @@ export class Picker {
|
|
|
190
197
|
props.maxItems = 1;
|
|
191
198
|
}
|
|
192
199
|
return [
|
|
193
|
-
h("limel-chip-set", Object.assign({ key: '
|
|
200
|
+
h("limel-chip-set", Object.assign({ key: '36c7521c2ee4232d08fdb86ed2e3d295fda69e01', type: "input", inputType: "search", label: this.label, helperText: this.helperText, leadingIcon: this.leadingIcon, value: this.chips, disabled: this.disabled, invalid: this.invalid, delimiter: this.renderDelimiter(), readonly: this.readonly, required: this.required, searchLabel: this.searchLabel, language: this.language, onInput: this.handleTextInput, onKeyDown: this.handleInputKeyDown, onChange: this.handleChange, onInteract: this.handleInteract, onStartEdit: this.handleInputFieldFocus, onStopEdit: this.handleStopEditAndBlur, emptyInputOnBlur: false, emptyInputOnChange: false, clearAllButton: this.multiple && !this.chipSetEditMode }, props)),
|
|
194
201
|
this.renderDropdown(),
|
|
195
202
|
];
|
|
196
203
|
}
|
|
@@ -259,7 +266,14 @@ export class Picker {
|
|
|
259
266
|
return this.renderSpinner();
|
|
260
267
|
}
|
|
261
268
|
if (!((_a = this.items) === null || _a === void 0 ? void 0 : _a.length)) {
|
|
262
|
-
|
|
269
|
+
// Only show "no matching results" when the user actually has
|
|
270
|
+
// a query in flight. Without this guard, the message would
|
|
271
|
+
// also render right after Esc clears the input, leaving the
|
|
272
|
+
// dropdown stuck in an "empty result" state.
|
|
273
|
+
if (this.textValue !== '') {
|
|
274
|
+
return this.renderEmptyMessage();
|
|
275
|
+
}
|
|
276
|
+
return;
|
|
263
277
|
}
|
|
264
278
|
return this.renderListResult();
|
|
265
279
|
}
|
|
@@ -282,22 +296,32 @@ export class Picker {
|
|
|
282
296
|
} }, h("limel-spinner", { limeBranded: false })));
|
|
283
297
|
}
|
|
284
298
|
renderEmptyMessage() {
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
299
|
+
const text = this.emptyResultMessage ||
|
|
300
|
+
translate.get('picker.no-matching-results', this.language, {
|
|
301
|
+
query: this.textValue,
|
|
302
|
+
});
|
|
288
303
|
const style = {
|
|
289
304
|
color: 'rgb(var(--contrast-1100))',
|
|
290
|
-
|
|
305
|
+
textAlign: 'center',
|
|
306
|
+
fontSize: 'var(--limel-theme-default-font-size)',
|
|
291
307
|
margin: '0.5rem 1rem',
|
|
292
308
|
};
|
|
293
|
-
return h("p", { style: style },
|
|
309
|
+
return h("p", { style: style }, text);
|
|
294
310
|
}
|
|
295
311
|
renderListResult() {
|
|
296
312
|
return (h("limel-list", { badgeIcons: this.badgeIcons, onChange: this.handleListChange, onKeyDown: this.onListKeyDown, type: "selectable", items: this.items }));
|
|
297
313
|
}
|
|
298
314
|
onListKeyDown(event) {
|
|
299
|
-
|
|
300
|
-
|
|
315
|
+
if (event.key === ESCAPE) {
|
|
316
|
+
// Stop bubble; otherwise menu-surface also emits `dismiss`
|
|
317
|
+
// and triggers a duplicate clear via handleCloseMenu.
|
|
318
|
+
event.preventDefault();
|
|
319
|
+
event.stopPropagation();
|
|
320
|
+
this.handleEscape();
|
|
321
|
+
this.chipSet.setFocus();
|
|
322
|
+
return;
|
|
323
|
+
}
|
|
324
|
+
if ([TAB, ENTER].includes(event.key)) {
|
|
301
325
|
this.chipSet.setFocus();
|
|
302
326
|
}
|
|
303
327
|
}
|
|
@@ -344,7 +368,7 @@ export class Picker {
|
|
|
344
368
|
* @param event - event
|
|
345
369
|
*/
|
|
346
370
|
handleListChange(event) {
|
|
347
|
-
var _a, _b;
|
|
371
|
+
var _a, _b, _c;
|
|
348
372
|
event.stopPropagation();
|
|
349
373
|
if (!this.value || this.value !== event.detail) {
|
|
350
374
|
let newValue = event.detail;
|
|
@@ -353,11 +377,21 @@ export class Picker {
|
|
|
353
377
|
newValue = [...currentValue, event.detail];
|
|
354
378
|
}
|
|
355
379
|
this.change.emit(newValue);
|
|
356
|
-
this.
|
|
380
|
+
if (this.multiple) {
|
|
381
|
+
const remaining = this.items.filter((item) => item !== event.detail);
|
|
382
|
+
this.items = this.hasPickableItems(remaining) ? remaining : [];
|
|
383
|
+
}
|
|
384
|
+
else {
|
|
385
|
+
// Single-pick: the search session ends with the pick, so
|
|
386
|
+
// wipe the input. (In multi-pick we deliberately keep the
|
|
387
|
+
// typed query so the user can keep adding matches.)
|
|
388
|
+
this.items = [];
|
|
389
|
+
this.textValue = '';
|
|
390
|
+
(_b = this.chipSet) === null || _b === void 0 ? void 0 : _b.emptyInput();
|
|
391
|
+
}
|
|
357
392
|
}
|
|
358
393
|
if (this.multiple) {
|
|
359
|
-
this.
|
|
360
|
-
(_b = this.chipSet) === null || _b === void 0 ? void 0 : _b.setFocus(true);
|
|
394
|
+
(_c = this.chipSet) === null || _c === void 0 ? void 0 : _c.setFocus();
|
|
361
395
|
}
|
|
362
396
|
}
|
|
363
397
|
/**
|
|
@@ -413,6 +447,13 @@ export class Picker {
|
|
|
413
447
|
!event.shiftKey;
|
|
414
448
|
const isUp = event.key === ARROW_UP;
|
|
415
449
|
const isDown = event.key === ARROW_DOWN;
|
|
450
|
+
const isEscape = event.key === ESCAPE;
|
|
451
|
+
if (isEscape) {
|
|
452
|
+
event.preventDefault();
|
|
453
|
+
event.stopPropagation();
|
|
454
|
+
this.handleEscape();
|
|
455
|
+
return;
|
|
456
|
+
}
|
|
416
457
|
if (!isForwardTab && !isUp && !isDown) {
|
|
417
458
|
return;
|
|
418
459
|
}
|
|
@@ -441,44 +482,76 @@ export class Picker {
|
|
|
441
482
|
listElement.focus();
|
|
442
483
|
}
|
|
443
484
|
}
|
|
444
|
-
/**
|
|
445
|
-
* Key handler for the dropdown
|
|
446
|
-
*
|
|
447
|
-
* @param event - event
|
|
448
|
-
*/
|
|
449
|
-
handleDropdownKeyDown(event) {
|
|
450
|
-
const isEscape = event.key === ESCAPE;
|
|
451
|
-
if (isEscape) {
|
|
452
|
-
event.preventDefault();
|
|
453
|
-
this.textValue = '';
|
|
454
|
-
this.chipSet.setFocus(true);
|
|
455
|
-
}
|
|
456
|
-
}
|
|
457
485
|
handleSearchResult(query, result) {
|
|
458
486
|
var _a;
|
|
459
487
|
if (query === this.textValue) {
|
|
460
|
-
|
|
488
|
+
let nextItems = result;
|
|
461
489
|
if (this.multiple) {
|
|
462
490
|
const values = (_a = this.value) !== null && _a !== void 0 ? _a : [];
|
|
463
|
-
|
|
491
|
+
nextItems = result.filter((item) => {
|
|
492
|
+
if ('separator' in item) {
|
|
493
|
+
return true;
|
|
494
|
+
}
|
|
464
495
|
return !values.includes(item);
|
|
465
496
|
});
|
|
466
497
|
}
|
|
498
|
+
this.items = this.prependSearchHeader(query, nextItems);
|
|
467
499
|
this.loading = false;
|
|
468
500
|
}
|
|
469
501
|
}
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
502
|
+
hasPickableItems(items) {
|
|
503
|
+
return items.some((item) => !('separator' in item));
|
|
504
|
+
}
|
|
505
|
+
prependSearchHeader(query, items) {
|
|
506
|
+
if (query === '') {
|
|
507
|
+
return items;
|
|
473
508
|
}
|
|
509
|
+
if (!this.hasPickableItems(items)) {
|
|
510
|
+
return items;
|
|
511
|
+
}
|
|
512
|
+
const text = translate.get('picker.results-matching', this.language, {
|
|
513
|
+
query: query,
|
|
514
|
+
});
|
|
515
|
+
return [{ separator: true, text: text }, ...items];
|
|
516
|
+
}
|
|
517
|
+
handleCloseMenu() {
|
|
474
518
|
this.clearInputField();
|
|
475
519
|
}
|
|
476
|
-
|
|
520
|
+
/**
|
|
521
|
+
* Shared prelude for any flow that ends the current search session:
|
|
522
|
+
* wipe the chip-set's visible text, reset the picker's `textValue`,
|
|
523
|
+
* and cancel any in-flight debounced search.
|
|
524
|
+
*
|
|
525
|
+
* Used by `clearInputField` (which then drops the dropdown
|
|
526
|
+
* entirely) and `resetSearchToDefault` (which re-runs the searcher
|
|
527
|
+
* with an empty query to repopulate the dropdown with defaults).
|
|
528
|
+
*/
|
|
529
|
+
clearTextValue() {
|
|
477
530
|
this.chipSet.emptyInput();
|
|
478
531
|
this.textValue = '';
|
|
479
|
-
this.handleSearchResult('', []);
|
|
480
532
|
this.debouncedSearch.cancel();
|
|
481
533
|
}
|
|
534
|
+
clearInputField() {
|
|
535
|
+
this.clearTextValue();
|
|
536
|
+
this.handleSearchResult('', []);
|
|
537
|
+
}
|
|
538
|
+
resetSearchToDefault() {
|
|
539
|
+
this.clearTextValue();
|
|
540
|
+
this.search('');
|
|
541
|
+
}
|
|
542
|
+
/**
|
|
543
|
+
* Two-stage Esc: first press clears the typed query but keeps the
|
|
544
|
+
* dropdown open showing the default suggestions; a second press
|
|
545
|
+
* (with the query already empty) closes the dropdown.
|
|
546
|
+
*/
|
|
547
|
+
handleEscape() {
|
|
548
|
+
if (this.textValue === '') {
|
|
549
|
+
this.clearInputField();
|
|
550
|
+
}
|
|
551
|
+
else {
|
|
552
|
+
this.resetSearchToDefault();
|
|
553
|
+
}
|
|
554
|
+
}
|
|
482
555
|
static get is() { return "limel-picker"; }
|
|
483
556
|
static get encapsulation() { return "shadow"; }
|
|
484
557
|
static get delegatesFocus() { return true; }
|
|
@@ -629,13 +702,40 @@ export class Picker {
|
|
|
629
702
|
"optional": false,
|
|
630
703
|
"docs": {
|
|
631
704
|
"tags": [],
|
|
632
|
-
"text": "A message to display when the search returned an empty result"
|
|
705
|
+
"text": "A message to display when the search returned an empty result.\n\nIf unset (or set to an empty string), the picker shows a\ndefault translated message (`No results matching \"X\"` in\nEnglish, where `X` is the current query) chosen by the\n`language` prop. Set this to override the default with custom\ntext \u2014 for example, when the picker's domain calls for more\nspecific wording like \"No matching participants found\"."
|
|
633
706
|
},
|
|
634
707
|
"getter": false,
|
|
635
708
|
"setter": false,
|
|
636
709
|
"reflect": false,
|
|
637
710
|
"attribute": "empty-result-message"
|
|
638
711
|
},
|
|
712
|
+
"language": {
|
|
713
|
+
"type": "string",
|
|
714
|
+
"mutable": false,
|
|
715
|
+
"complexType": {
|
|
716
|
+
"original": "Languages",
|
|
717
|
+
"resolved": "\"da\" | \"de\" | \"en\" | \"fi\" | \"fr\" | \"nb\" | \"nl\" | \"no\" | \"sv\"",
|
|
718
|
+
"references": {
|
|
719
|
+
"Languages": {
|
|
720
|
+
"location": "import",
|
|
721
|
+
"path": "../date-picker/date.types",
|
|
722
|
+
"id": "src/components/date-picker/date.types.ts::Languages",
|
|
723
|
+
"referenceLocation": "Languages"
|
|
724
|
+
}
|
|
725
|
+
}
|
|
726
|
+
},
|
|
727
|
+
"required": false,
|
|
728
|
+
"optional": false,
|
|
729
|
+
"docs": {
|
|
730
|
+
"tags": [],
|
|
731
|
+
"text": "Defines the language for translations. Affects the labels\nrendered by the picker itself, such as the \"Results matching\"\nheader shown above the suggestion list while the user is typing."
|
|
732
|
+
},
|
|
733
|
+
"getter": false,
|
|
734
|
+
"setter": false,
|
|
735
|
+
"reflect": false,
|
|
736
|
+
"attribute": "language",
|
|
737
|
+
"defaultValue": "'en'"
|
|
738
|
+
},
|
|
639
739
|
"required": {
|
|
640
740
|
"type": "boolean",
|
|
641
741
|
"mutable": false,
|
|
@@ -127,7 +127,7 @@ export class Popover {
|
|
|
127
127
|
render() {
|
|
128
128
|
const cssProperties = this.getCssProperties();
|
|
129
129
|
const popoverZIndex = getComputedStyle(this.host).getPropertyValue('--popover-z-index');
|
|
130
|
-
return (h("div", { key: '
|
|
130
|
+
return (h("div", { key: '53e64435fa661015fbbf2e449890864c8008c329', class: "trigger-anchor" }, h("slot", { key: '85336e8f76377921850ffc7704c7588707c45066', name: "trigger", ref: this.setTriggerRef }), h("limel-portal", { key: 'a40bfde87375a494ac5404911b4b1f058a55becf', visible: this.open, containerId: this.portalId, containerStyle: { 'z-index': popoverZIndex }, openDirection: this.openDirection }, h("limel-popover-surface", { key: '396e369ae3e61a79bfd2f520e05187a6ff85f834', contentCollection: this.host.children, style: cssProperties }))));
|
|
131
131
|
}
|
|
132
132
|
globalClickListener(event) {
|
|
133
133
|
const element = event.target;
|
|
@@ -8,7 +8,7 @@ export class PopoverSurface {
|
|
|
8
8
|
this.appendElement();
|
|
9
9
|
}
|
|
10
10
|
render() {
|
|
11
|
-
return h("div", { key: '
|
|
11
|
+
return h("div", { key: '72e73b254be6cebbd27332329b10a58210ae0352', class: "limel-popover-surface", tabindex: "0" });
|
|
12
12
|
}
|
|
13
13
|
appendElement() {
|
|
14
14
|
const portalContainer = this.host.shadowRoot.querySelector('.limel-popover-surface');
|
|
@@ -120,7 +120,7 @@ export class Portal {
|
|
|
120
120
|
}
|
|
121
121
|
}
|
|
122
122
|
render() {
|
|
123
|
-
return h("slot", { key: '
|
|
123
|
+
return h("slot", { key: 'd6ed0d276afec19ba5ffd4d6a6fcf96937127d6a' });
|
|
124
124
|
}
|
|
125
125
|
onVisible() {
|
|
126
126
|
if (!this.container && this.visible) {
|
|
@@ -37,7 +37,7 @@ export class RadioButtonGroup {
|
|
|
37
37
|
};
|
|
38
38
|
}
|
|
39
39
|
render() {
|
|
40
|
-
return (h("limel-list", { key: '
|
|
40
|
+
return (h("limel-list", { key: 'd42e6342d4fd79d34cb2c6a9d25d3dfe577e9a99', items: this.createItems(), type: "radio", badgeIcons: this.badgeIcons, maxLinesSecondaryText: this.maxLinesSecondaryText, onChange: this.handleChange }));
|
|
41
41
|
}
|
|
42
42
|
createItems() {
|
|
43
43
|
return this.items.map((option) => {
|
|
@@ -31,12 +31,12 @@ import { Host, h } from "@stencil/core";
|
|
|
31
31
|
*/
|
|
32
32
|
export class RadioButtonComponent {
|
|
33
33
|
render() {
|
|
34
|
-
return (h(Host, { key: '
|
|
34
|
+
return (h(Host, { key: '64623e09534c5b4e457029cbed4865d97d3cc19e', class: {
|
|
35
35
|
'boolean-input': true,
|
|
36
36
|
'radio-button': true,
|
|
37
37
|
checked: this.checked,
|
|
38
38
|
disabled: this.disabled,
|
|
39
|
-
} }, h("input", { key: '
|
|
39
|
+
} }, h("input", { key: '4eb816e8031d20bbfa5beb32798e50e5d3747895', type: "radio", id: this.id, checked: this.checked, disabled: this.disabled, onChange: this.onChange }), h("div", { key: '9e7d7db22981a16b4655d7cbcd7c3eb2462a7953', class: "box" }), h("label", { key: '4b2061d351b2d4d03d6e5763bc132be46d146e48', class: "boolean-input-label", htmlFor: this.id }, this.label)));
|
|
40
40
|
}
|
|
41
41
|
static get is() { return "limel-radio-button"; }
|
|
42
42
|
static get originalStyleUrls() {
|
|
@@ -110,7 +110,7 @@ export class Select {
|
|
|
110
110
|
}
|
|
111
111
|
render() {
|
|
112
112
|
const dropdownZIndex = getComputedStyle(this.host).getPropertyValue('--dropdown-z-index');
|
|
113
|
-
return (h(SelectTemplate, { key: '
|
|
113
|
+
return (h(SelectTemplate, { key: '8c14a523262356e12ac5322a917b0f888d794f21', id: this.portalId, disabled: this.disabled || this.readonly, readonly: this.readonly, required: this.required, invalid: this.invalid, label: this.label, helperText: this.helperText, value: this.value, options: this.options, onMenuChange: this.handleMenuChange, onNativeChange: this.handleNativeChange, onTriggerPress: this.handleMenuTriggerKeyPress, multiple: this.multiple, isOpen: this.menuOpen, open: this.openMenu, close: this.closeMenu, checkValid: this.checkValid, native: this.shouldRenderNative(), dropdownZIndex: dropdownZIndex, anchor: this.getAnchorElement() }));
|
|
114
114
|
}
|
|
115
115
|
watchOpen(newValue, oldValue) {
|
|
116
116
|
if (this.checkValid) {
|
|
@@ -56,7 +56,7 @@ export class Shortcut {
|
|
|
56
56
|
render() {
|
|
57
57
|
var _a, _b, _c, _d, _e;
|
|
58
58
|
const rel = getRel((_a = this.link) === null || _a === void 0 ? void 0 : _a.target, (_b = this.link) === null || _b === void 0 ? void 0 : _b.rel);
|
|
59
|
-
return (h(Host, { key: '
|
|
59
|
+
return (h(Host, { key: '531a8b5cc870974dc01a7e20eef553fa53e77509', onMouseEnter: this.handleMouseEnter, onMouseLeave: this.handleMouseLeave }, h("a", { key: '997342917a0d28103ff340ad0e8cee766e48f85c', "aria-disabled": this.disabled, href: (_c = this.link) === null || _c === void 0 ? void 0 : _c.href, target: (_d = this.link) === null || _d === void 0 ? void 0 : _d.target, rel: rel, tabindex: "0", "aria-label": this.getAriaLabel(), title: (_e = this.link) === null || _e === void 0 ? void 0 : _e.title }, h("limel-icon", { key: '30f694eb6cc1ee927e41e6b39aedaa46e6b5715f', name: this.icon }), h("limel-3d-hover-effect-glow", { key: 'f083e6f0d5bc0eb205cee0d7018c9f76b0c39d89' })), this.renderLabel(), this.renderNotification()));
|
|
60
60
|
}
|
|
61
61
|
static get is() { return "limel-shortcut"; }
|
|
62
62
|
static get encapsulation() { return "shadow"; }
|
|
@@ -150,9 +150,9 @@ export class Slider {
|
|
|
150
150
|
if (this.disabled || this.readonly) {
|
|
151
151
|
inputProps.disabled = true;
|
|
152
152
|
}
|
|
153
|
-
return (h(Host, { key: '
|
|
153
|
+
return (h(Host, { key: 'fa9695563f078bdab1707422cad3aaef2610e592', class: this.getContainerClassList() }, h("limel-notched-outline", { key: '8b71ef15e9544a6b346248217c2c2fa8acbba6e7', labelId: this.labelId, label: this.label, required: this.required, invalid: this.invalid, disabled: this.disabled, readonly: this.readonly, hasValue: !!this.value, hasFloatingLabel: true }, h("div", { key: '0327cf7d5295bb1d56e2e34b8dca15cfc3e15c0d', slot: "content" }, h("div", { key: '83fade77119ba9fa1d24ae8fdcd54317648918b3', class: "slider", style: { '--slider-fraction': `${fraction}` } }, h("input", Object.assign({ key: '5181430787abe75b4556923e31ebe8520df977e9', type: "range", min: min, max: max, value: this.displayValue, "aria-labelledby": this.labelId, "aria-describedby": this.helperText
|
|
154
154
|
? this.helperTextId
|
|
155
|
-
: undefined, onInput: this.handleInput, onChange: this.handleChange }, inputProps)), h("div", { key: '
|
|
155
|
+
: undefined, onInput: this.handleInput, onChange: this.handleChange }, inputProps)), h("div", { key: '6ee95d718f1d01e92adcf9592882ed1d32e4ba67', class: "track" }, h("div", { key: 'bba420e41501990bdeb1326e59e6eff57000848d', class: "active" }), this.renderStepDots(min, max)), h("div", { key: '46e5a45adbda4e1a650d01408c3d228f1c6be68d', class: "thumb" }, h("div", { key: 'eeba995f52ff3291e2e7818528b05c7c1dec1b32', class: "knob" }), h("div", { key: 'd0321459ed22c6870d939da54df43fe2bfef6333', class: "indicator", "aria-hidden": "true" }, this.displayValue))), h("div", { key: 'bcc4449d7605343fd64f4b89b50c8e5d665f6937', class: "range-labels" }, h("span", { key: '301c78b1640551fe814ad3b2768bb40f9b682b39', class: "min" }, this.multiplyByFactor(this.valuemin), this.unit), h("span", { key: '7f8d741f63030b6f8e88231e5215448b815bf3ca', class: "max" }, this.multiplyByFactor(this.valuemax), this.unit)))), this.renderHelperLine()));
|
|
156
156
|
}
|
|
157
157
|
watchValue() {
|
|
158
158
|
this.displayValue = this.multiplyByFactor(this.getValue());
|
|
@@ -122,14 +122,14 @@ export class Snackbar {
|
|
|
122
122
|
}
|
|
123
123
|
}
|
|
124
124
|
render() {
|
|
125
|
-
return (h("aside", { key: '
|
|
125
|
+
return (h("aside", { key: '41ced0ac7a40f8317766dabd45a107f304ec46bd', popover: "manual", style: {
|
|
126
126
|
'--snackbar-timeout': `${Math.max(this.timeout || 0, 0)}ms`,
|
|
127
127
|
'--snackbar-distance-to-top-edge': `${this.offset}px`,
|
|
128
128
|
}, class: {
|
|
129
129
|
open: this.open,
|
|
130
130
|
'is-closing': this.closing,
|
|
131
131
|
'limel-portal--parent': true,
|
|
132
|
-
}, id: this.snackbarId, role: this.setAriaRoles(), "aria-atomic": this.open ? 'true' : undefined, "aria-relevant": this.open ? 'additions' : undefined }, h("div", { key: '
|
|
132
|
+
}, id: this.snackbarId, role: this.setAriaRoles(), "aria-atomic": this.open ? 'true' : undefined, "aria-relevant": this.open ? 'additions' : undefined }, h("div", { key: 'a493f7cfafaf63696f8e1ac532103fdfa03b9312', class: "surface" }, h("limel-markdown", { key: '0cda776d6680eff1e8d0f1aff9d3657ef8287d80', class: "label", value: this.message }), this.renderActions(this.actionText), this.renderDismissButton(this.dismissible))));
|
|
133
133
|
}
|
|
134
134
|
setAriaRoles() {
|
|
135
135
|
if (!this.open) {
|
|
@@ -16,7 +16,7 @@ export class Spinner {
|
|
|
16
16
|
this.limeBranded = false;
|
|
17
17
|
}
|
|
18
18
|
render() {
|
|
19
|
-
return (h(Host, { key: '
|
|
19
|
+
return (h(Host, { key: 'bb72728921dd48ab02cad031e3b35641c92b4dce' }, h("svg", { key: 'fccd59e394e3e4a0101d2e7f903b1b4f9dffc630', viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg" }, this.renderSpinner())));
|
|
20
20
|
}
|
|
21
21
|
renderSpinner() {
|
|
22
22
|
if (!this.limeBranded) {
|
|
@@ -55,9 +55,9 @@ export class SplitButton {
|
|
|
55
55
|
};
|
|
56
56
|
}
|
|
57
57
|
render() {
|
|
58
|
-
return (h(Host, { key: '
|
|
58
|
+
return (h(Host, { key: 'e400e10d06c24703585f5e02477175fbfd2a3d95', class: {
|
|
59
59
|
'has-menu': this.items.length > 0,
|
|
60
|
-
}, onClick: this.filterClickWhenDisabled }, h("limel-button", { key: '
|
|
60
|
+
}, onClick: this.filterClickWhenDisabled }, h("limel-button", { key: '29f29a0d44c9b7b66a2f13815f59df6642dad6d2', label: this.label, primary: this.primary, icon: this.icon, disabled: this.disabled, loading: this.loading, loadingFailed: this.loadingFailed }), this.renderMenu()));
|
|
61
61
|
}
|
|
62
62
|
static get is() { return "limel-split-button"; }
|
|
63
63
|
static get encapsulation() { return "shadow"; }
|
|
@@ -78,7 +78,7 @@ export class Switch {
|
|
|
78
78
|
removeEnterClickable(this.host);
|
|
79
79
|
}
|
|
80
80
|
render() {
|
|
81
|
-
return (h(Host, { key: '
|
|
81
|
+
return (h(Host, { key: '4adc29ba50c4e06948efef7b922c0fb70bb58ecb' }, this.readonly
|
|
82
82
|
? this.renderReadonly()
|
|
83
83
|
: this.renderInteractive(), this.renderHelperLine()));
|
|
84
84
|
}
|
|
@@ -62,11 +62,11 @@ export class TabBar {
|
|
|
62
62
|
this.tearDown();
|
|
63
63
|
}
|
|
64
64
|
render() {
|
|
65
|
-
return (h("div", { key: '
|
|
65
|
+
return (h("div", { key: '011bbe3e75ebeb4fefe4942704ef003ad64e92fc', class: "mdc-tab-bar", role: "tablist" }, h("div", { key: '6119888fd94f5ea3d474c1a14016e456ff98923e', class: {
|
|
66
66
|
'mdc-tab-scroller': true,
|
|
67
67
|
'can-scroll-left': this.canScrollLeft,
|
|
68
68
|
'can-scroll-right': this.canScrollRight,
|
|
69
|
-
} }, h("div", { key: '
|
|
69
|
+
} }, h("div", { key: 'ac46f8471cbdbaec95bed2d5541d6f927eee0fb7', class: "mdc-tab-scroller__scroll-area lime-hide-scrollbars" }, h("div", { key: 'a12f6a5112ff94c5c70a6800972e81998fd51517', class: "mdc-tab-scroller__scroll-content" }, this.tabs.map(this.renderTab))), h("div", { key: '2891ceddace39d210b314c203bdaaf1cf50257da', class: "scroll-fade left" }), h("div", { key: '52d16debe5cba91b876d2c1ebc3fa0b65554193c', class: "scroll-button left" }, h("button", { key: 'a9c6c3bc7027e7dfcfdc999f542911533d2ad97d', type: "button", tabindex: "-1", "aria-hidden": "true", disabled: !this.canScrollLeft, onClick: this.handleLeftScrollClick }, h("limel-icon", { key: '6d910230e3e7182c0431508603f97a8da195454f', name: "angle_left" }))), h("div", { key: '47ab1002864f2603fcaee518c5cf8604512a5294', class: "scroll-fade right" }), h("div", { key: 'cebdcc16ed78ecbeafcf4bfbc9e1c59277f3c959', class: "scroll-button right" }, h("button", { key: 'd35caa827d3f4218537f91522cfe1b4b85d0de29', type: "button", tabindex: "-1", "aria-hidden": "true", disabled: !this.canScrollRight, onClick: this.handleRightScrollClick }, h("limel-icon", { key: '875ee1bfc8a28a6fbed1d6323974f732f5d3274e', name: "angle_right" }))))));
|
|
70
70
|
}
|
|
71
71
|
tabsChanged(newTabs = [], oldTabs = []) {
|
|
72
72
|
const newIds = newTabs.map((tab) => tab.id);
|
|
@@ -56,7 +56,7 @@ export class TabPanel {
|
|
|
56
56
|
this.tabs.forEach(this.setTabStatus);
|
|
57
57
|
}
|
|
58
58
|
render() {
|
|
59
|
-
return (h(Host, { key: '
|
|
59
|
+
return (h(Host, { key: 'ebab881a0b0efc36b64c866b58b919890c526525', onChangeTab: this.handleChangeTabs }, h("div", { key: '1417a34aea0af009e44cd91ac8fd425412a2b706', class: "tab-panel" }, h("limel-tab-bar", { key: '5b420eeec41fdd353ba0ba36bb0e475c3fd26821', tabs: this.tabs }), h("div", { key: 'aa3d6f711a824a07eed6f2b5120497dd4218ed7b', class: "tab-content" }, h("slot", { key: '7ba511fa07bd96018e4d8d288d7b1dca572cead0' })))));
|
|
60
60
|
}
|
|
61
61
|
setSlotElements() {
|
|
62
62
|
const slot = this.getSlot();
|
|
@@ -666,17 +666,17 @@ export class Table {
|
|
|
666
666
|
render() {
|
|
667
667
|
var _a, _b;
|
|
668
668
|
const totalRows = (_a = this.totalRows) !== null && _a !== void 0 ? _a : this.data.length;
|
|
669
|
-
return (h(Host, { key: '
|
|
669
|
+
return (h(Host, { key: 'daea6a9974805de1d9a0c65e3dd5a4f1f477fb6e', class: {
|
|
670
670
|
'has-low-density': this.layout === 'lowDensity',
|
|
671
671
|
'has-pagination-on-top': this.paginationLocation === 'top',
|
|
672
|
-
} }, h("div", { key: '
|
|
672
|
+
} }, h("div", { key: '86d554c7a311b0944e04a302184ba4e5e7b4fb64', id: "tabulator-container", class: {
|
|
673
673
|
'has-pagination': totalRows > this.pageSize,
|
|
674
674
|
'has-aggregation': this.hasAggregation(this.columns),
|
|
675
675
|
'has-movable-columns': this.movableColumns,
|
|
676
676
|
'has-movable-rows': !!this.rowDragManager,
|
|
677
677
|
'has-rowselector': this.selectable,
|
|
678
678
|
'has-selection': (_b = this.tableSelection) === null || _b === void 0 ? void 0 : _b.hasSelection,
|
|
679
|
-
} }, h("div", { key: '
|
|
679
|
+
} }, h("div", { key: '8b0e85e32cea7f7411bfa16b2edd061925ad6ffa', id: "tabulator-loader", style: { display: this.loading ? 'flex' : 'none' } }, h("limel-spinner", { key: '321b0a59a93bbdbeadfa5c40a38d20dc01ad242d', size: "large" })), this.renderEmptyMessage(), this.renderSelectAll(), h("div", { key: '61c2f18947b40ff3834b93e7780e552ee8fee415', id: "tabulator-table" }))));
|
|
680
680
|
}
|
|
681
681
|
renderSelectAll() {
|
|
682
682
|
var _a, _b, _c;
|
|
@@ -106,9 +106,9 @@ export class TextEditorLinkMenu {
|
|
|
106
106
|
var _a, _b;
|
|
107
107
|
const isValid = this.isValid(this.link.href);
|
|
108
108
|
return [
|
|
109
|
-
h("limel-input-field", { key: '
|
|
110
|
-
h("limel-input-field", { key: '
|
|
111
|
-
h("div", { key: '
|
|
109
|
+
h("limel-input-field", { key: 'f91dd3a9c03bb52cb91ea0f3251288f5a612cd3a', label: this.getTranslation('editor-link-menu.text'), value: ((_a = this.link) === null || _a === void 0 ? void 0 : _a.text) || '', leadingIcon: "text_cursor", onChange: this.handleLinkTitleChange, onKeyDown: this.handleKeyDown, ref: (el) => (this.textInput = el) }),
|
|
110
|
+
h("limel-input-field", { key: '1034663268cae0a749397331b43ea44387431c78', label: this.getTranslation('editor-link-menu.link'), value: ((_b = this.link) === null || _b === void 0 ? void 0 : _b.href) || '', type: "text", leadingIcon: "-lime-text-link", trailingIcon: "external_link", invalid: !isValid, onChange: this.handleLinkValueChange, onAction: this.handleLinkInputAction, onKeyDown: this.handleKeyDown }),
|
|
111
|
+
h("div", { key: '5c4b46deb47d9369a0a59e1e5908934093322755', class: "actions" }, h("limel-button", { key: '62c2dcc49a7907d938a27e2887432caa3e1a75ff', label: this.getTranslation('cancel'), onClick: this.handleCancel }), h("limel-button", { key: '5252752da58d02fd81abef41fc9788a07e277738', primary: true, label: this.getTranslation('save'), disabled: !isValid, onClick: this.handleSave, ref: (el) => (this.saveButton = el), slot: "button" })),
|
|
112
112
|
];
|
|
113
113
|
}
|
|
114
114
|
static get is() { return "limel-text-editor-link-menu"; }
|
|
@@ -246,7 +246,7 @@ export class ProsemirrorAdapter {
|
|
|
246
246
|
(_e = this.view) === null || _e === void 0 ? void 0 : _e.destroy();
|
|
247
247
|
}
|
|
248
248
|
render() {
|
|
249
|
-
return (h(Host, { key: '
|
|
249
|
+
return (h(Host, { key: '125d6d80cfc94a3121cde5d121d3cb2a26cf1635', onFocus: this.handleFocus }, h("div", { key: 'eb076afa683c0dfcb57b6688bc94ce1b81ce5710', id: "editor" }), this.renderToolbar(), this.renderLinkMenu()));
|
|
250
250
|
}
|
|
251
251
|
renderToolbar() {
|
|
252
252
|
if (this.actionBarItems.length === 0 || this.ui === 'no-toolbar') {
|
|
@@ -142,7 +142,7 @@ export class TextEditor {
|
|
|
142
142
|
this.editorId = createRandomString();
|
|
143
143
|
}
|
|
144
144
|
render() {
|
|
145
|
-
return (h(Host, { key: '
|
|
145
|
+
return (h(Host, { key: '31661aea27e0dea61827560c031587bd208f8bed' }, h("limel-notched-outline", { key: '81571a171ba0b629117d8b153e091e6d34c98c70', labelId: this.editorId, label: this.label, required: this.required, invalid: this.invalid, disabled: this.disabled, readonly: this.readonly, hasValue: !!this.value, hasFloatingLabel: true }, this.renderEditor(), this.renderPlaceholder()), this.renderHelperLine()));
|
|
146
146
|
}
|
|
147
147
|
renderEditor() {
|
|
148
148
|
if (this.readonly) {
|
|
@@ -15,7 +15,7 @@ export class TooltipContent {
|
|
|
15
15
|
const style = this.maxlength
|
|
16
16
|
? { '--tooltip-max-width-of-text': `${this.maxlength}ch` }
|
|
17
17
|
: undefined;
|
|
18
|
-
return (h(Host, { key: '
|
|
18
|
+
return (h(Host, { key: '7dae3fae1f48d6aed186d4a40ec2d3ae4c675c34', class: { 'has-column-layout': isLabelsTextLong }, style: style }, h("div", { key: '892d2b80b4e3d333f363579e8be63726366ec772', class: "label" }, this.label), this.renderHelperLabel(), this.renderHotkey()));
|
|
19
19
|
}
|
|
20
20
|
renderHelperLabel() {
|
|
21
21
|
if (!this.helperLabel) {
|
|
@@ -68,10 +68,10 @@ export class Tooltip {
|
|
|
68
68
|
}
|
|
69
69
|
render() {
|
|
70
70
|
const tooltipZIndex = getComputedStyle(this.host).getPropertyValue('--tooltip-z-index');
|
|
71
|
-
return (h("div", { key: '
|
|
71
|
+
return (h("div", { key: 'bb784749dd20ef6cda629303058dbb0df848f655', class: "trigger-anchor" }, h("limel-portal", { key: 'baca835ff99112bebd09cce6a22181b7a00fc0a5', openDirection: this.openDirection, visible: this.open, containerId: this.portalId, containerStyle: {
|
|
72
72
|
'z-index': tooltipZIndex,
|
|
73
73
|
'pointer-events': 'none',
|
|
74
|
-
}, anchor: this.ownerElement }, h("limel-tooltip-content", { key: '
|
|
74
|
+
}, anchor: this.ownerElement }, h("limel-tooltip-content", { key: 'b830c5052040a8f10345844584b296a1b0c1b00f', label: this.label, helperLabel: this.helperLabel, hotkey: this.hotkey, maxlength: this.maxlength, role: "tooltip", "aria-hidden": !this.open, id: this.tooltipId }))));
|
|
75
75
|
}
|
|
76
76
|
setOwnerAriaDescribedby() {
|
|
77
77
|
var _a;
|
|
@@ -72,6 +72,11 @@ Du kan fortsætte med at blokere billeder (e-mailen kan se ufuldstændig ud) ell
|
|
|
72
72
|
'progress-bar': 'Fremskridtsindikator',
|
|
73
73
|
'ai-avatar.label': 'AI-avatar',
|
|
74
74
|
'ai-avatar.thinking': 'tænker',
|
|
75
|
+
'ai-avatar.mode.active': 'aktiv',
|
|
76
|
+
'ai-avatar.mode.thinking': 'tænker',
|
|
77
|
+
'ai-avatar.mode.typing': 'skriver',
|
|
78
|
+
'ai-avatar.mode.working': 'arbejder',
|
|
79
|
+
'ai-avatar.mode.waiting': 'venter på input',
|
|
75
80
|
'table.select-all': 'Vælg alle rækker',
|
|
76
81
|
'table.select-row': 'Vælg denne række',
|
|
77
82
|
'code-diff.table-label': 'Kodesammenligning',
|
|
@@ -106,4 +111,6 @@ Du kan fortsætte med at blokere billeder (e-mailen kan se ufuldstændig ud) ell
|
|
|
106
111
|
'profile-picture.remove': 'Fjern valgt billede',
|
|
107
112
|
'profile-picture.unsupported-preview.title': 'Ikke-understøttet billedformat',
|
|
108
113
|
'profile-picture.unsupported-preview.description': 'Vi kan ikke vise det valgte billede i denne browser. Vælg venligst en anden billedfil.',
|
|
114
|
+
'picker.results-matching': 'Resultater der matcher "{ query }"',
|
|
115
|
+
'picker.no-matching-results': 'Ingen resultater der matcher "{ query }"',
|
|
109
116
|
};
|
|
@@ -72,6 +72,11 @@ Sie können Bilder weiterhin blockieren (die E-Mail kann unvollständig aussehen
|
|
|
72
72
|
'progress-bar': 'Fortschrittsbalken',
|
|
73
73
|
'ai-avatar.label': 'KI-Avatar',
|
|
74
74
|
'ai-avatar.thinking': 'denkt',
|
|
75
|
+
'ai-avatar.mode.active': 'aktiv',
|
|
76
|
+
'ai-avatar.mode.thinking': 'denkt',
|
|
77
|
+
'ai-avatar.mode.typing': 'tippt',
|
|
78
|
+
'ai-avatar.mode.working': 'arbeitet',
|
|
79
|
+
'ai-avatar.mode.waiting': 'wartet auf Eingabe',
|
|
75
80
|
'table.select-all': 'Alle Zeilen auswählen',
|
|
76
81
|
'table.select-row': 'Diese Zeile auswählen',
|
|
77
82
|
'code-diff.table-label': 'Code-Vergleich',
|
|
@@ -106,4 +111,6 @@ Sie können Bilder weiterhin blockieren (die E-Mail kann unvollständig aussehen
|
|
|
106
111
|
'profile-picture.remove': 'Ausgewähltes Bild entfernen',
|
|
107
112
|
'profile-picture.unsupported-preview.title': 'Nicht unterstütztes Bildformat',
|
|
108
113
|
'profile-picture.unsupported-preview.description': 'Wir können das ausgewählte Bild in diesem Browser nicht anzeigen. Bitte wählen Sie eine andere Bilddatei.',
|
|
114
|
+
'picker.results-matching': 'Ergebnisse passend zu "{ query }"',
|
|
115
|
+
'picker.no-matching-results': 'Keine Ergebnisse passend zu "{ query }"',
|
|
109
116
|
};
|