@limetech/lime-elements 37.40.1 → 37.41.1
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 +24 -0
- package/dist/cjs/{debounce-2e5f4b7e.js → dom-ee8ee17d.js} +31 -1
- package/dist/cjs/dom-ee8ee17d.js.map +1 -0
- package/dist/cjs/lime-elements.cjs.js +1 -1
- package/dist/cjs/limel-badge_3.cjs.entry.js +162 -0
- package/dist/cjs/limel-badge_3.cjs.entry.js.map +1 -0
- package/dist/cjs/{limel-breadcrumbs_4.cjs.entry.js → limel-breadcrumbs_7.cjs.entry.js} +3381 -414
- package/dist/cjs/limel-breadcrumbs_7.cjs.entry.js.map +1 -0
- package/dist/cjs/limel-button.cjs.entry.js +1 -0
- package/dist/cjs/limel-button.cjs.entry.js.map +1 -1
- package/dist/cjs/limel-callout.cjs.entry.js +1 -1
- package/dist/cjs/limel-chip_2.cjs.entry.js +54 -4
- package/dist/cjs/limel-chip_2.cjs.entry.js.map +1 -1
- package/dist/cjs/limel-dynamic-label_2.cjs.entry.js +91 -0
- package/dist/cjs/limel-dynamic-label_2.cjs.entry.js.map +1 -0
- package/dist/cjs/limel-file-viewer.cjs.entry.js +1 -1
- package/dist/cjs/limel-file.cjs.entry.js +1 -1
- package/dist/cjs/limel-flatpickr-adapter.cjs.entry.js +1 -1
- package/dist/cjs/limel-picker.cjs.entry.js +2 -3
- package/dist/cjs/limel-picker.cjs.entry.js.map +1 -1
- package/dist/cjs/{limel-portal_3.cjs.entry.js → limel-portal.cjs.entry.js} +11 -131
- package/dist/cjs/limel-portal.cjs.entry.js.map +1 -0
- package/dist/cjs/limel-snackbar.cjs.entry.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{translations-a384b596.js → translations-a67fc927.js} +7 -3
- package/dist/cjs/translations-a67fc927.js.map +1 -0
- package/dist/collection/components/button/button.js +1 -0
- package/dist/collection/components/button/button.js.map +1 -1
- package/dist/collection/components/chip/chip.css +8 -8
- package/dist/collection/components/chip/chip.js +101 -3
- package/dist/collection/components/chip/chip.js.map +1 -1
- package/dist/collection/translations/da.js +1 -0
- package/dist/collection/translations/da.js.map +1 -1
- package/dist/collection/translations/en.js +1 -1
- package/dist/collection/translations/en.js.map +1 -1
- package/dist/collection/translations/fi.js +1 -0
- package/dist/collection/translations/fi.js.map +1 -1
- package/dist/collection/translations/nl.js +1 -0
- package/dist/collection/translations/nl.js.map +1 -1
- package/dist/collection/translations/no.js +1 -0
- package/dist/collection/translations/no.js.map +1 -1
- package/dist/collection/translations/sv.js +1 -1
- package/dist/collection/translations/sv.js.map +1 -1
- package/dist/esm/{debounce-9a05c91c.js → dom-ae531ebc.js} +31 -2
- package/dist/esm/dom-ae531ebc.js.map +1 -0
- package/dist/esm/lime-elements.js +1 -1
- package/dist/esm/limel-badge_3.entry.js +156 -0
- package/dist/esm/limel-badge_3.entry.js.map +1 -0
- package/dist/esm/{limel-breadcrumbs_4.entry.js → limel-breadcrumbs_7.entry.js} +3364 -400
- package/dist/esm/limel-breadcrumbs_7.entry.js.map +1 -0
- package/dist/esm/limel-button.entry.js +1 -0
- package/dist/esm/limel-button.entry.js.map +1 -1
- package/dist/esm/limel-callout.entry.js +1 -1
- package/dist/esm/limel-chip_2.entry.js +54 -4
- package/dist/esm/limel-chip_2.entry.js.map +1 -1
- package/dist/esm/limel-dynamic-label_2.entry.js +86 -0
- package/dist/esm/limel-dynamic-label_2.entry.js.map +1 -0
- package/dist/esm/limel-file-viewer.entry.js +1 -1
- package/dist/esm/limel-file.entry.js +1 -1
- package/dist/esm/limel-flatpickr-adapter.entry.js +1 -1
- package/dist/esm/limel-picker.entry.js +1 -2
- package/dist/esm/limel-picker.entry.js.map +1 -1
- package/dist/esm/{limel-portal_3.entry.js → limel-portal.entry.js} +12 -130
- package/dist/esm/limel-portal.entry.js.map +1 -0
- package/dist/esm/limel-snackbar.entry.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{translations-dea847ae.js → translations-cab6bc1e.js} +7 -3
- package/dist/esm/translations-cab6bc1e.js.map +1 -0
- package/dist/lime-elements/lime-elements.esm.js +1 -1
- package/dist/lime-elements/lime-elements.esm.js.map +1 -1
- package/dist/lime-elements/p-00caa45f.js +2 -0
- package/dist/lime-elements/p-00caa45f.js.map +1 -0
- package/dist/lime-elements/{p-33a52a53.entry.js → p-0b52bddf.entry.js} +2 -2
- package/dist/lime-elements/{p-9d0552a2.entry.js → p-1b10fc91.entry.js} +2 -2
- package/dist/lime-elements/{p-08dd6ff7.entry.js → p-24c69726.entry.js} +2 -2
- package/dist/lime-elements/p-3b0a8ceb.entry.js +2 -0
- package/dist/lime-elements/p-3b0a8ceb.entry.js.map +1 -0
- package/dist/lime-elements/p-3e90be0a.entry.js +2 -0
- package/dist/lime-elements/{p-5fcdb9d2.entry.js.map → p-3e90be0a.entry.js.map} +1 -1
- package/dist/lime-elements/{p-a6f90b2e.entry.js → p-45380cc1.entry.js} +2 -2
- package/dist/lime-elements/{p-a6f90b2e.entry.js.map → p-45380cc1.entry.js.map} +1 -1
- package/dist/lime-elements/p-6b92e98a.entry.js +266 -0
- package/dist/lime-elements/p-6b92e98a.entry.js.map +1 -0
- package/dist/lime-elements/p-714d6937.js +2 -0
- package/dist/lime-elements/p-714d6937.js.map +1 -0
- package/dist/lime-elements/p-a2d19673.entry.js +2 -0
- package/dist/lime-elements/p-a2d19673.entry.js.map +1 -0
- package/dist/lime-elements/{p-fc91537a.entry.js → p-cab2fc85.entry.js} +2 -2
- package/dist/lime-elements/p-d1838cf6.entry.js +2 -0
- package/dist/lime-elements/p-d1838cf6.entry.js.map +1 -0
- package/dist/lime-elements/{p-79cf904b.entry.js → p-e1641410.entry.js} +2 -2
- package/dist/lime-elements/p-f548d996.entry.js +2 -0
- package/dist/lime-elements/p-f548d996.entry.js.map +1 -0
- package/dist/types/components/chip/chip.d.ts +18 -1
- package/dist/types/components.d.ts +22 -4
- package/dist/types/translations/da.d.ts +1 -0
- package/dist/types/translations/en.d.ts +1 -1
- package/dist/types/translations/fi.d.ts +1 -0
- package/dist/types/translations/nl.d.ts +1 -0
- package/dist/types/translations/no.d.ts +1 -0
- package/dist/types/translations/sv.d.ts +1 -1
- package/package.json +1 -1
- package/dist/cjs/component-cba208a8.js +0 -2448
- package/dist/cjs/component-cba208a8.js.map +0 -1
- package/dist/cjs/debounce-2e5f4b7e.js.map +0 -1
- package/dist/cjs/dom-81eaa633.js +0 -34
- package/dist/cjs/dom-81eaa633.js.map +0 -1
- package/dist/cjs/limel-badge.cjs.entry.js +0 -42
- package/dist/cjs/limel-badge.cjs.entry.js.map +0 -1
- package/dist/cjs/limel-breadcrumbs_4.cjs.entry.js.map +0 -1
- package/dist/cjs/limel-dynamic-label_4.cjs.entry.js +0 -609
- package/dist/cjs/limel-dynamic-label_4.cjs.entry.js.map +0 -1
- package/dist/cjs/limel-portal_3.cjs.entry.js.map +0 -1
- package/dist/cjs/limel-spinner.cjs.entry.js +0 -31
- package/dist/cjs/limel-spinner.cjs.entry.js.map +0 -1
- package/dist/cjs/translations-a384b596.js.map +0 -1
- package/dist/esm/component-db286494.js +0 -2440
- package/dist/esm/component-db286494.js.map +0 -1
- package/dist/esm/debounce-9a05c91c.js.map +0 -1
- package/dist/esm/dom-0b0170a0.js +0 -32
- package/dist/esm/dom-0b0170a0.js.map +0 -1
- package/dist/esm/limel-badge.entry.js +0 -38
- package/dist/esm/limel-badge.entry.js.map +0 -1
- package/dist/esm/limel-breadcrumbs_4.entry.js.map +0 -1
- package/dist/esm/limel-dynamic-label_4.entry.js +0 -602
- package/dist/esm/limel-dynamic-label_4.entry.js.map +0 -1
- package/dist/esm/limel-portal_3.entry.js.map +0 -1
- package/dist/esm/limel-spinner.entry.js +0 -27
- package/dist/esm/limel-spinner.entry.js.map +0 -1
- package/dist/esm/translations-dea847ae.js.map +0 -1
- package/dist/lime-elements/p-18c97232.js +0 -2
- package/dist/lime-elements/p-18c97232.js.map +0 -1
- package/dist/lime-elements/p-35365201.entry.js +0 -68
- package/dist/lime-elements/p-35365201.entry.js.map +0 -1
- package/dist/lime-elements/p-3ee3dcdc.js +0 -2
- package/dist/lime-elements/p-3ee3dcdc.js.map +0 -1
- package/dist/lime-elements/p-46a6a412.entry.js +0 -2
- package/dist/lime-elements/p-46a6a412.entry.js.map +0 -1
- package/dist/lime-elements/p-4dfeeaf0.entry.js +0 -2
- package/dist/lime-elements/p-4dfeeaf0.entry.js.map +0 -1
- package/dist/lime-elements/p-57a26fef.entry.js +0 -2
- package/dist/lime-elements/p-57a26fef.entry.js.map +0 -1
- package/dist/lime-elements/p-5e7b7b03.js +0 -2
- package/dist/lime-elements/p-5e7b7b03.js.map +0 -1
- package/dist/lime-elements/p-5fcdb9d2.entry.js +0 -2
- package/dist/lime-elements/p-9df38d59.entry.js +0 -2
- package/dist/lime-elements/p-9df38d59.entry.js.map +0 -1
- package/dist/lime-elements/p-ae978098.entry.js +0 -2
- package/dist/lime-elements/p-ae978098.entry.js.map +0 -1
- package/dist/lime-elements/p-f764b655.js +0 -200
- package/dist/lime-elements/p-f764b655.js.map +0 -1
- /package/dist/lime-elements/{p-33a52a53.entry.js.map → p-0b52bddf.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-9d0552a2.entry.js.map → p-1b10fc91.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-08dd6ff7.entry.js.map → p-24c69726.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-fc91537a.entry.js.map → p-cab2fc85.entry.js.map} +0 -0
- /package/dist/lime-elements/{p-79cf904b.entry.js.map → p-e1641410.entry.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"button.js","sourceRoot":"","sources":["../../../src/components/button/button.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"button.js","sourceRoot":"","sources":["../../../src/components/button/button.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, h, Prop, State, Watch, Element, Host } from '@stencil/core';\nimport {\n makeEnterClickable,\n removeEnterClickable,\n} from '../../util/make-enter-clickable';\n\n/**\n * @exampleComponent limel-example-button-basic\n * @exampleComponent limel-example-button-primary\n * @exampleComponent limel-example-button-outlined\n * @exampleComponent limel-example-button-disabled\n * @exampleComponent limel-example-button-icon\n * @exampleComponent limel-example-button-loading\n * @exampleComponent limel-example-button-click-success\n * @exampleComponent limel-example-button-click-fail\n * @exampleComponent limel-example-button-reduce-presence\n * @exampleComponent limel-example-button-colors\n * @exampleComponent limel-example-button-composite\n */\n@Component({\n tag: 'limel-button',\n shadow: { delegatesFocus: true },\n styleUrl: 'button.scss',\n})\nexport class Button {\n /**\n * The text to show on the button.\n */\n @Prop({ reflect: true })\n public label: string;\n\n /**\n * Set to `true` to make the button primary.\n */\n @Prop({ reflect: true })\n public primary = false;\n\n /**\n * Set to `true` to make the button outlined.\n */\n @Prop({ reflect: true })\n public outlined = false;\n\n /**\n * Set icon for the button\n */\n @Prop({ reflect: true })\n public icon: string;\n\n /**\n * Set to `true` to disable the button.\n */\n @Prop({ reflect: true })\n public disabled = false;\n\n /**\n * Set to `true` to put the button in the `loading` state.\n * This also disables the button.\n */\n @Prop({ reflect: true })\n public loading = false;\n\n /**\n * Set to `true` to indicate failure instead of success when the button is\n * no longer in the `loading` state.\n */\n @Prop({ reflect: true })\n public loadingFailed = false;\n\n @State()\n private justLoaded = false;\n\n @Element()\n private host: HTMLElement;\n\n private justLoadedTimeout?: number;\n\n public componentWillLoad() {\n makeEnterClickable(this.host);\n }\n\n public disconnectedCallback() {\n removeEnterClickable(this.host);\n }\n\n public render() {\n return (\n <Host onClick={this.filterClickWhenDisabled}>\n <button\n class={{\n loading: this.loading,\n 'just-loaded': this.justLoaded && !this.loadingFailed,\n 'just-failed': this.justLoaded && this.loadingFailed,\n outlined: this.outlined,\n }}\n disabled={this.disabled || this.loading}\n >\n {this.renderIcon()}\n {this.renderLabel()}\n {this.renderSpinner()}\n <svg viewBox=\"0 0 30 30\">{this.renderLoadingIcons()}</svg>\n </button>\n </Host>\n );\n }\n\n @Watch('loading')\n protected loadingWatcher(newValue: boolean, oldValue: boolean) {\n if (oldValue && !newValue) {\n this.justLoaded = true;\n const TIMEOUT = 2000;\n this.justLoadedTimeout = window.setTimeout(() => {\n this.justLoaded = false;\n }, TIMEOUT);\n } else if (newValue) {\n this.justLoaded = false;\n window.clearTimeout(this.justLoadedTimeout);\n }\n }\n\n private renderLoadingIcons() {\n if (this.loadingFailed) {\n return [\n <line x1=\"9\" y1=\"9\" x2=\"21\" y2=\"21\" />,\n <line x1=\"21\" y1=\"9\" x2=\"9\" y2=\"21\" />,\n ];\n }\n\n return [\n <line x1=\"8\" y1=\"14\" x2=\"15\" y2=\"20\" />,\n <line x1=\"23\" y1=\"9\" x2=\"14\" y2=\"20\" />,\n ];\n }\n\n private renderIcon() {\n if (!this.icon) {\n return;\n }\n\n return <limel-icon class=\"icon\" name={this.icon} />;\n }\n\n private renderLabel() {\n if (!this.label) {\n return;\n }\n\n return <span class=\"label\">{this.label}</span>;\n }\n\n private renderSpinner() {\n if (!this.loading) {\n return;\n }\n\n return <limel-spinner limeBranded={false} />;\n }\n\n private filterClickWhenDisabled = (e) => {\n if (this.disabled) {\n e.preventDefault();\n }\n };\n}\n"]}
|
|
@@ -119,33 +119,33 @@
|
|
|
119
119
|
.chip:has(+ .remove-button:hover) {
|
|
120
120
|
box-shadow: var(--shadow-depth-8-error);
|
|
121
121
|
}
|
|
122
|
-
.chip:has(+ .trailing-button) {
|
|
122
|
+
.chip:has(+ limel-menu), .chip:has(+ .trailing-button) {
|
|
123
123
|
padding-right: calc(var(--limel-chip-height) + 0.125rem);
|
|
124
124
|
}
|
|
125
|
-
.chip:has(+ .trailing-button) .text {
|
|
125
|
+
.chip:has(+ limel-menu) .text, .chip:has(+ .trailing-button) .text {
|
|
126
126
|
padding-right: 0;
|
|
127
127
|
}
|
|
128
128
|
|
|
129
|
-
:host(limel-chip[disabled]) .chip {
|
|
129
|
+
:host(limel-chip[disabled]:not([disabled=false])) .chip {
|
|
130
130
|
color: rgba(var(--contrast-1600), 0.37);
|
|
131
131
|
background-color: rgba(var(--contrast-1600), 0.1);
|
|
132
132
|
box-shadow: none;
|
|
133
133
|
}
|
|
134
134
|
|
|
135
|
-
:host(limel-chip[readonly]) .chip {
|
|
135
|
+
:host(limel-chip[readonly]:not([readonly=false])) .chip {
|
|
136
136
|
box-shadow: 0 0 0 1px rgba(var(--contrast-800), 0.5);
|
|
137
137
|
}
|
|
138
138
|
|
|
139
|
-
:host(limel-chip[selected]) .chip {
|
|
139
|
+
:host(limel-chip[selected]:not([selected=false])) .chip {
|
|
140
140
|
box-shadow: var(--button-shadow-inset);
|
|
141
141
|
}
|
|
142
|
-
:host(limel-chip[selected]) .chip:focus-visible {
|
|
142
|
+
:host(limel-chip[selected]:not([selected=false])) .chip:focus-visible {
|
|
143
143
|
box-shadow: var(--button-shadow-inset), var(--shadow-depth-8-focused);
|
|
144
144
|
}
|
|
145
|
-
:host(limel-chip[selected]) .chip:active {
|
|
145
|
+
:host(limel-chip[selected]:not([selected=false])) .chip:active {
|
|
146
146
|
box-shadow: var(--button-shadow-inset-pressed);
|
|
147
147
|
}
|
|
148
|
-
:host(limel-chip[selected]) .text {
|
|
148
|
+
:host(limel-chip[selected]:not([selected=false])) .text {
|
|
149
149
|
color: var(--mdc-theme-primary);
|
|
150
150
|
}
|
|
151
151
|
|
|
@@ -36,7 +36,7 @@ import { isEmpty } from 'lodash-es';
|
|
|
36
36
|
* or navigating to a page with more information about the item in the shopping list.
|
|
37
37
|
* :::
|
|
38
38
|
*
|
|
39
|
-
* @
|
|
39
|
+
* @beta
|
|
40
40
|
* @exampleComponent limel-example-chip-button
|
|
41
41
|
* @exampleComponent limel-example-chip-link
|
|
42
42
|
* @exampleComponent limel-example-chip-icon-colors
|
|
@@ -44,6 +44,7 @@ import { isEmpty } from 'lodash-es';
|
|
|
44
44
|
* @exampleComponent limel-example-chip-badge
|
|
45
45
|
* @exampleComponent limel-example-chip-filter
|
|
46
46
|
* @exampleComponent limel-example-chip-removable
|
|
47
|
+
* @exampleComponent limel-example-chip-menu
|
|
47
48
|
* @exampleComponent limel-example-chip-loading
|
|
48
49
|
* @exampleComponent limel-example-chip-progress
|
|
49
50
|
* @exampleComponent limel-example-chip-aria-role
|
|
@@ -54,12 +55,14 @@ export class Chip {
|
|
|
54
55
|
return [
|
|
55
56
|
h("button", { id: 'chip-' + this.identifier, class: "chip", role: "button", disabled: this.disabled || this.readonly, onKeyDown: this.handleDeleteKeyDown }, this.renderSpinner(), this.renderPicture(), this.renderLabel(), this.renderBadge(), this.renderProgressBar()),
|
|
56
57
|
this.renderRemoveButton(),
|
|
58
|
+
this.renderActionsMenu(),
|
|
57
59
|
];
|
|
58
60
|
};
|
|
59
61
|
this.renderAsLink = () => {
|
|
60
62
|
return [
|
|
61
63
|
h("a", { id: 'chip-' + this.identifier, class: "chip", href: this.link.href, title: this.link.title, target: this.link.target, "aria-disabled": this.disabled || this.readonly, tabindex: this.disabled || this.readonly ? -1 : 0, onKeyDown: this.handleDeleteKeyDown }, this.renderSpinner(), this.renderPicture(), this.renderLabel(), this.renderBadge(), this.renderProgressBar()),
|
|
62
64
|
this.renderRemoveButton(),
|
|
65
|
+
this.renderActionsMenu(),
|
|
63
66
|
];
|
|
64
67
|
};
|
|
65
68
|
this.renderLabel = () => {
|
|
@@ -85,7 +88,22 @@ export class Chip {
|
|
|
85
88
|
}
|
|
86
89
|
};
|
|
87
90
|
this.removeChipLabel = () => {
|
|
88
|
-
return translate.get('
|
|
91
|
+
return translate.get('remove', this.language) + ' ' + this.text;
|
|
92
|
+
};
|
|
93
|
+
this.actionMenuLabel = () => {
|
|
94
|
+
return translate.get('file-viewer.more-actions', this.language);
|
|
95
|
+
};
|
|
96
|
+
this.handleActionMenuSelect = (event) => {
|
|
97
|
+
const menuItem = event.detail;
|
|
98
|
+
if (!menuItem) {
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
const { value } = menuItem;
|
|
102
|
+
if (value === '_remove') {
|
|
103
|
+
this.remove.emit(this.identifier);
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
this.menuItemSelected.emit(value);
|
|
89
107
|
};
|
|
90
108
|
this.language = 'en';
|
|
91
109
|
this.text = undefined;
|
|
@@ -102,6 +120,7 @@ export class Chip {
|
|
|
102
120
|
this.loading = false;
|
|
103
121
|
this.progress = undefined;
|
|
104
122
|
this.identifier = crypto.randomUUID();
|
|
123
|
+
this.menuItems = [];
|
|
105
124
|
}
|
|
106
125
|
componentWillLoad() {
|
|
107
126
|
makeEnterClickable(this.host);
|
|
@@ -133,12 +152,43 @@ export class Chip {
|
|
|
133
152
|
return h("limel-badge", { label: this.badge });
|
|
134
153
|
}
|
|
135
154
|
renderRemoveButton() {
|
|
136
|
-
|
|
155
|
+
var _a;
|
|
156
|
+
if (!this.removable ||
|
|
157
|
+
this.readonly ||
|
|
158
|
+
this.disabled ||
|
|
159
|
+
!!((_a = this.menuItems) === null || _a === void 0 ? void 0 : _a.length)) {
|
|
137
160
|
return;
|
|
138
161
|
}
|
|
139
162
|
const svgData = '<svg viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg"><path fill="none" stroke="currentColor" stroke-width="2" d="m8 8 16 16M24 8 8 24"/></svg>';
|
|
140
163
|
return (h("button", { class: "trailing-button remove-button", tabIndex: -1, "aria-label": this.removeChipLabel, "aria-controls": 'chip-' + this.identifier, innerHTML: svgData, onClick: this.handleRemoveClick }));
|
|
141
164
|
}
|
|
165
|
+
renderActionsMenu() {
|
|
166
|
+
var _a;
|
|
167
|
+
if (!((_a = this.menuItems) === null || _a === void 0 ? void 0 : _a.length)) {
|
|
168
|
+
return;
|
|
169
|
+
}
|
|
170
|
+
const svgData = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" xml:space="preserve"><circle cx="16" cy="16" r="2"/><circle cx="16" cy="24" r="2"/><circle cx="16" cy="8" r="2"/></svg>';
|
|
171
|
+
const menuItems = this.getMenuItems();
|
|
172
|
+
return (h("limel-menu", { items: menuItems, onSelect: this.handleActionMenuSelect }, h("button", { slot: "trigger", class: "trailing-button", tabIndex: -1, "aria-label": this.actionMenuLabel, innerHTML: svgData })));
|
|
173
|
+
}
|
|
174
|
+
getMenuItems() {
|
|
175
|
+
let menuItems = [...this.menuItems];
|
|
176
|
+
if (this.removable) {
|
|
177
|
+
menuItems = [
|
|
178
|
+
...menuItems,
|
|
179
|
+
{ separator: true },
|
|
180
|
+
{
|
|
181
|
+
text: this.removeChipLabel(),
|
|
182
|
+
icon: {
|
|
183
|
+
name: 'delete_sign',
|
|
184
|
+
color: 'rgb(var(--color-red-default))',
|
|
185
|
+
},
|
|
186
|
+
value: '_remove',
|
|
187
|
+
},
|
|
188
|
+
];
|
|
189
|
+
}
|
|
190
|
+
return menuItems;
|
|
191
|
+
}
|
|
142
192
|
renderSpinner() {
|
|
143
193
|
if (!this.loading) {
|
|
144
194
|
return;
|
|
@@ -458,6 +508,34 @@ export class Chip {
|
|
|
458
508
|
"attribute": "identifier",
|
|
459
509
|
"reflect": true,
|
|
460
510
|
"defaultValue": "crypto.randomUUID()"
|
|
511
|
+
},
|
|
512
|
+
"menuItems": {
|
|
513
|
+
"type": "unknown",
|
|
514
|
+
"mutable": false,
|
|
515
|
+
"complexType": {
|
|
516
|
+
"original": "Array<MenuItem | ListSeparator>",
|
|
517
|
+
"resolved": "any[]",
|
|
518
|
+
"references": {
|
|
519
|
+
"Array": {
|
|
520
|
+
"location": "global"
|
|
521
|
+
},
|
|
522
|
+
"MenuItem": {
|
|
523
|
+
"location": "import",
|
|
524
|
+
"path": "../../components"
|
|
525
|
+
},
|
|
526
|
+
"ListSeparator": {
|
|
527
|
+
"location": "import",
|
|
528
|
+
"path": "../list/list-item.types"
|
|
529
|
+
}
|
|
530
|
+
}
|
|
531
|
+
},
|
|
532
|
+
"required": false,
|
|
533
|
+
"optional": true,
|
|
534
|
+
"docs": {
|
|
535
|
+
"tags": [],
|
|
536
|
+
"text": "When provided, the chip will render an ellipsis menu with the supplied items.\nAlso, this will hide the \"remove button\" when `removable={true}`, as\nthe remove button will automatically become the last item in the menu."
|
|
537
|
+
},
|
|
538
|
+
"defaultValue": "[]"
|
|
461
539
|
}
|
|
462
540
|
};
|
|
463
541
|
}
|
|
@@ -477,6 +555,26 @@ export class Chip {
|
|
|
477
555
|
"resolved": "number | string",
|
|
478
556
|
"references": {}
|
|
479
557
|
}
|
|
558
|
+
}, {
|
|
559
|
+
"method": "menuItemSelected",
|
|
560
|
+
"name": "menuItemSelected",
|
|
561
|
+
"bubbles": true,
|
|
562
|
+
"cancelable": true,
|
|
563
|
+
"composed": true,
|
|
564
|
+
"docs": {
|
|
565
|
+
"tags": [],
|
|
566
|
+
"text": "Emitted when a menu item is selected from the actions menu."
|
|
567
|
+
},
|
|
568
|
+
"complexType": {
|
|
569
|
+
"original": "MenuItem",
|
|
570
|
+
"resolved": "MenuItem",
|
|
571
|
+
"references": {
|
|
572
|
+
"MenuItem": {
|
|
573
|
+
"location": "import",
|
|
574
|
+
"path": "../../components"
|
|
575
|
+
}
|
|
576
|
+
}
|
|
577
|
+
}
|
|
480
578
|
}];
|
|
481
579
|
}
|
|
482
580
|
static get elementRef() { return "host"; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chip.js","sourceRoot":"","sources":["../../../src/components/chip/chip.tsx"],"names":[],"mappings":"AAAA,OAAO,EACH,SAAS,EACT,OAAO,EACP,KAAK,EAEL,CAAC,EACD,IAAI,EACJ,IAAI,GACP,MAAM,eAAe,CAAC;AAIvB,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EACH,kBAAkB,EAClB,oBAAoB,GACvB,MAAM,iCAAiC,CAAC;AACzC,OAAO,SAAS,MAAM,2BAA2B,CAAC;AAClD,OAAO,EACH,SAAS,EACT,kBAAkB,EAClB,MAAM,EACN,eAAe,GAClB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAcpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAMH,MAAM,OAAO,IAAI;;IAgIL,mBAAc,GAAG,GAAG,EAAE;MAC1B,OAAO;QACH,cACI,EAAE,EAAE,OAAO,GAAG,IAAI,CAAC,UAAU,EAC7B,KAAK,EAAC,MAAM,EACZ,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,EACxC,SAAS,EAAE,IAAI,CAAC,mBAAmB;UAElC,IAAI,CAAC,aAAa,EAAE;UACpB,IAAI,CAAC,aAAa,EAAE;UACpB,IAAI,CAAC,WAAW,EAAE;UAClB,IAAI,CAAC,WAAW,EAAE;UAClB,IAAI,CAAC,iBAAiB,EAAE,CACpB;QACT,IAAI,CAAC,kBAAkB,EAAE;OAC5B,CAAC;IACN,CAAC,CAAC;IAEM,iBAAY,GAAG,GAAG,EAAE;MACxB,OAAO;QACH,SACI,EAAE,EAAE,OAAO,GAAG,IAAI,CAAC,UAAU,EAC7B,KAAK,EAAC,MAAM,EACZ,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EACpB,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,EACtB,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,mBACT,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAC7C,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACjD,SAAS,EAAE,IAAI,CAAC,mBAAmB;UAElC,IAAI,CAAC,aAAa,EAAE;UACpB,IAAI,CAAC,aAAa,EAAE;UACpB,IAAI,CAAC,WAAW,EAAE;UAClB,IAAI,CAAC,WAAW,EAAE;UAClB,IAAI,CAAC,iBAAiB,EAAE,CACzB;QACJ,IAAI,CAAC,kBAAkB,EAAE;OAC5B,CAAC;IACN,CAAC,CAAC;IAEM,gBAAW,GAAG,GAAG,EAAE;MACvB,OAAO,YAAM,KAAK,EAAC,MAAM,IAAE,IAAI,CAAC,IAAI,CAAQ,CAAC;IACjD,CAAC,CAAC;IAyDM,4BAAuB,GAAG,CAAC,CAAC,EAAE,EAAE;MACpC,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE;QAChC,CAAC,CAAC,cAAc,EAAE,CAAC;OACtB;IACL,CAAC,CAAC;IAEM,sBAAiB,GAAG,CAAC,KAAiC,EAAE,EAAE;MAC9D,KAAK,CAAC,eAAe,EAAE,CAAC;MACxB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACtC,CAAC,CAAC;IAEM,wBAAmB,GAAG,CAAC,KAAoB,EAAE,EAAE;MACnD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;QACjB,OAAO;OACV;MAED,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;MACjC,MAAM,QAAQ,GAAG,CAAC,eAAe,EAAE,kBAAkB,CAAC,CAAC;MAEvD,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;QAC9D,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;OACjC;IACL,CAAC,CAAC;IAEM,oBAAe,GAAG,GAAW,EAAE;MACnC,OAAO,SAAS,CAAC,GAAG,CAAC,sBAAsB,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAChE,CAAC,CAAC;oBAxP2B,IAAI;;;;;;oBAoCf,KAAK;oBAOL,KAAK;oBAQL,KAAK;mBAMN,KAAK;qBAMH,KAAK;gBASC,SAAS;mBAQhB,KAAK;;sBAce,MAAM,CAAC,UAAU,EAAE;;EAYlD,iBAAiB;IACpB,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;EAClC,CAAC;EAEM,oBAAoB;IACvB,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;EACpC,CAAC;EAEM,MAAM;IACT,OAAO,CACH,EAAC,IAAI,IAAC,OAAO,EAAE,IAAI,CAAC,uBAAuB,IACtC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,EAAE,CACrD,CACV,CAAC;EACN,CAAC;EA+CO,aAAa;;IACjB,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEpC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;MACtB,OAAO;KACV;IAED,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;MACtB,OAAO,CACH,WAAK,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,EAAC,MAAM,GAAG,CACnE,CAAC;KACL;IAED,OAAO,CACH,kBACI,KAAK,EAAE,IAAI,EACX,IAAI,EAAE,IAAI,EACV,KAAK,EAAE;QACH,KAAK,EAAE,GAAG,MAAC,IAAI,CAAC,IAAa,0CAAE,KAAK,EAAE;QACtC,kBAAkB,EAAE,GAChB,MAAC,IAAI,CAAC,IAAa,0CAAE,eACzB,EAAE;OACL,GACH,CACL,CAAC;EACN,CAAC;EAEO,WAAW;IACf,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;MACb,OAAO;KACV;IAED,OAAO,mBAAa,KAAK,EAAE,IAAI,CAAC,KAAK,GAAI,CAAC;EAC9C,CAAC;EAEO,kBAAkB;IACtB,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE;MACnD,OAAO;KACV;IAED,MAAM,OAAO,GACT,uJAAuJ,CAAC;IAE5J,OAAO,CACH,cACI,KAAK,EAAC,+BAA+B,EACrC,QAAQ,EAAE,CAAC,CAAC,gBACA,IAAI,CAAC,eAAe,mBACjB,OAAO,GAAG,IAAI,CAAC,UAAU,EACxC,SAAS,EAAE,OAAO,EAClB,OAAO,EAAE,IAAI,CAAC,iBAAiB,GACjC,CACL,CAAC;EACN,CAAC;EA8BO,aAAa;IACjB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;MACf,OAAO;KACV;IAED,OAAO,6BAAuB,aAAa,EAAE,IAAI,GAAI,CAAC;EAC1D,CAAC;EAEO,iBAAiB;IACrB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;MAChB,OAAO;KACV;IAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC;IAE9C,OAAO,CACH,WACI,IAAI,EAAC,aAAa,gBACP,GAAG,mBACA,GAAG,mBACH,KAAK,mBACJ,IAAI,CAAC,QAAQ,EAC5B,KAAK,EAAE;QACH,kCAAkC,EAAE,iBAAiB;OACxD,GACH,CACL,CAAC;EACN,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACJ","sourcesContent":["import {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n} from '@stencil/core';\nimport { Icon } from '../../global/shared-types/icon.types';\nimport { Languages } from '../date-picker/date.types';\nimport { Link } from '../../global/shared-types/link.types';\nimport { getIconName } from '../icon/get-icon-props';\nimport {\n makeEnterClickable,\n removeEnterClickable,\n} from '../../util/make-enter-clickable';\nimport translate from '../../global/translations';\nimport {\n BACKSPACE,\n BACKSPACE_KEY_CODE,\n DELETE,\n DELETE_KEY_CODE,\n} from '../../util/keycodes';\nimport { ChipType, Chip as OldChipInterface } from '../chip-set/chip.types';\nimport { Image } from '../../global/shared-types/image.types';\nimport { isEmpty } from 'lodash-es';\n\ninterface ChipInterface extends Omit<OldChipInterface, 'id' | 'badge'> {\n /**\n * Identifier for the chip. Must be unique.\n */\n identifier?: number | string;\n\n /**\n * The value of the badge.\n */\n badge?: string | number;\n}\n\n/**\n * Chips and buttons are both interactive elements in UI design,\n * but they serve different purposes and are used in different contexts.\n *\n * :::warning\n * Do not use the chip component carelessly, as an alternative for\n * [`limel-button`](#/component/limel-button/) in the UI design!\n *\n * **Buttons:**\n * Buttons are used to trigger actions. They are typically used to\n * submit forms, open dialogs, initiate a process, or perform any action\n * that changes the state of the application.\n * Buttons' labels usually contain action words, in other words, the labels is\n * a _verb in imperative mood_ such as \"Submit\" or \"Delete\".\n * Buttons are placed in areas where it's clear they will initiate\n * an action when clicked.\n *\n * **Chips:**\n * Chips however are elements which may look like buttons, but they are\n * representing choices, filters, or tags, in a small block\n * or clearly bundled into a group. Chips are rarely used alone in the\n * user interface.\n * They are often used in a so called \"chip-set\", or placed together in\n * a section of the UI, where the user can expect more than one chip to be present.\n *\n * For example, a chip may represent a filter in a filter bar, or a tag in a tag list,\n * or an item in a shopping list.\n * Clicking a chip can also trigger an action, for example toggling a filter ON or OFF,\n * or opening a page with all posts tagged with the tag represented by the chip,\n * or navigating to a page with more information about the item in the shopping list.\n * :::\n *\n * @private\n * @exampleComponent limel-example-chip-button\n * @exampleComponent limel-example-chip-link\n * @exampleComponent limel-example-chip-icon-colors\n * @exampleComponent limel-example-chip-image\n * @exampleComponent limel-example-chip-badge\n * @exampleComponent limel-example-chip-filter\n * @exampleComponent limel-example-chip-removable\n * @exampleComponent limel-example-chip-loading\n * @exampleComponent limel-example-chip-progress\n * @exampleComponent limel-example-chip-aria-role\n */\n@Component({\n tag: 'limel-chip',\n shadow: true,\n styleUrl: 'chip.scss',\n})\nexport class Chip implements ChipInterface {\n /**\n * Defines the language for translations.\n * Will translate the translatable strings on the components.\n */\n @Prop({ reflect: true })\n public language: Languages = 'en';\n\n /**\n * Label displayed on the chip\n */\n @Prop({ reflect: true })\n public text: string;\n\n /**\n * Icon of the chip.\n */\n @Prop()\n public icon?: string | Icon;\n\n /**\n * A picture to be displayed instead of the icon on the chip.\n */\n @Prop()\n public image?: Image;\n\n /**\n * If supplied, the chip will become a clickable link.\n */\n @Prop()\n public link?: Omit<Link, 'text'>;\n\n /**\n * The value of the badge, displayed on the chip.\n */\n @Prop({ reflect: true })\n public badge?: string | number;\n\n /**\n * Set to `true` to disable the chip.\n */\n @Prop({ reflect: true })\n public disabled = false;\n\n /**\n * Set to `true` to render the chip as a static UI element.\n * Useful when the parent component has a `readonly` state.\n */\n @Prop({ reflect: true })\n public readonly = false;\n\n /**\n * Set to `true` to visualize the chip in a \"selected\" state.\n * This is typically used when the chip is used in a chip-set\n * along with other chips.\n */\n @Prop({ reflect: true })\n public selected = false;\n\n /**\n * Set to `true` to visualize the chip in an \"invalid\" or \"error\" state.\n */\n @Prop({ reflect: true })\n public invalid = false;\n\n /**\n * Set to `true` to render a remove button on the chip.\n */\n @Prop({ reflect: true })\n public removable = false;\n\n /**\n * Set to `filter` to render the chip with a distinct style\n * suitable for visualizing filters.\n *\n * @beta\n */\n @Prop({ reflect: true })\n public type?: ChipType = 'default';\n\n /**\n * Set to `true` to put the component in the `loading` state,\n * and render an indeterminate progress indicator inside the chip.\n * This does _not_ disable the interactivity of the chip!\n */\n @Prop({ reflect: true })\n public loading? = false;\n\n /**\n * Reflects the current value of a progress bar on the chip,\n * visualizing the percentage of an ongoing process.\n * Must be a number between `0` and `100`.\n */\n @Prop({ reflect: true })\n public progress?: number;\n\n /**\n * Identifier for the chip. Must be unique.\n */\n @Prop({ reflect: true })\n public identifier?: number | string = crypto.randomUUID();\n\n /**\n * Fired when clicking on the remove button of a `removable` chip.\n * The value of `identifier` is emitted as the event detail.\n */\n @Event()\n public remove: EventEmitter<number | string>;\n\n @Element()\n private host: HTMLLimelChipElement;\n\n public componentWillLoad() {\n makeEnterClickable(this.host);\n }\n\n public disconnectedCallback() {\n removeEnterClickable(this.host);\n }\n\n public render() {\n return (\n <Host onClick={this.filterClickWhenDisabled}>\n {this.link ? this.renderAsLink() : this.renderAsButton()}\n </Host>\n );\n }\n\n private renderAsButton = () => {\n return [\n <button\n id={'chip-' + this.identifier}\n class=\"chip\"\n role=\"button\"\n disabled={this.disabled || this.readonly}\n onKeyDown={this.handleDeleteKeyDown}\n >\n {this.renderSpinner()}\n {this.renderPicture()}\n {this.renderLabel()}\n {this.renderBadge()}\n {this.renderProgressBar()}\n </button>,\n this.renderRemoveButton(),\n ];\n };\n\n private renderAsLink = () => {\n return [\n <a\n id={'chip-' + this.identifier}\n class=\"chip\"\n href={this.link.href}\n title={this.link.title}\n target={this.link.target}\n aria-disabled={this.disabled || this.readonly}\n tabindex={this.disabled || this.readonly ? -1 : 0}\n onKeyDown={this.handleDeleteKeyDown}\n >\n {this.renderSpinner()}\n {this.renderPicture()}\n {this.renderLabel()}\n {this.renderBadge()}\n {this.renderProgressBar()}\n </a>,\n this.renderRemoveButton(),\n ];\n };\n\n private renderLabel = () => {\n return <span class=\"text\">{this.text}</span>;\n };\n\n private renderPicture() {\n const icon = getIconName(this.icon);\n\n if (!icon && !this.image) {\n return;\n }\n\n if (!isEmpty(this.image)) {\n return (\n <img src={this.image.src} alt={this.image.alt} loading=\"lazy\" />\n );\n }\n\n return (\n <limel-icon\n badge={true}\n name={icon}\n style={{\n color: `${(this.icon as Icon)?.color}`,\n 'background-color': `${\n (this.icon as Icon)?.backgroundColor\n }`,\n }}\n />\n );\n }\n\n private renderBadge() {\n if (!this.badge) {\n return;\n }\n\n return <limel-badge label={this.badge} />;\n }\n\n private renderRemoveButton() {\n if (!this.removable || this.readonly || this.disabled) {\n return;\n }\n\n const svgData =\n '<svg viewBox=\"0 0 32 32\" xmlns=\"http://www.w3.org/2000/svg\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" d=\"m8 8 16 16M24 8 8 24\"/></svg>';\n\n return (\n <button\n class=\"trailing-button remove-button\"\n tabIndex={-1}\n aria-label={this.removeChipLabel}\n aria-controls={'chip-' + this.identifier}\n innerHTML={svgData}\n onClick={this.handleRemoveClick}\n />\n );\n }\n\n private filterClickWhenDisabled = (e) => {\n if (this.disabled || this.readonly) {\n e.preventDefault();\n }\n };\n\n private handleRemoveClick = (event: MouseEvent | KeyboardEvent) => {\n event.stopPropagation();\n this.remove.emit(this.identifier);\n };\n\n private handleDeleteKeyDown = (event: KeyboardEvent) => {\n if (!this.removable) {\n return;\n }\n\n const keys = [DELETE, BACKSPACE];\n const keycodes = [DELETE_KEY_CODE, BACKSPACE_KEY_CODE];\n\n if (keys.includes(event.key) || keycodes.includes(event.keyCode)) {\n this.handleRemoveClick(event);\n }\n };\n\n private removeChipLabel = (): string => {\n return translate.get('chip-set.remove-chip', this.language);\n };\n\n private renderSpinner() {\n if (!this.loading) {\n return;\n }\n\n return <limel-linear-progress indeterminate={true} />;\n }\n\n private renderProgressBar() {\n if (!this.progress) {\n return;\n }\n\n const currentPercentage = this.progress + '%';\n\n return (\n <div\n role=\"progressbar\"\n aria-label=\"%\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n aria-valuenow={this.progress}\n style={{\n '--limel-chip-progress-percentage': currentPercentage,\n }}\n />\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"chip.js","sourceRoot":"","sources":["../../../src/components/chip/chip.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Prop,\n} from '@stencil/core';\nimport { Icon } from '../../global/shared-types/icon.types';\nimport { Languages } from '../date-picker/date.types';\nimport { Link } from '../../global/shared-types/link.types';\nimport { getIconName } from '../icon/get-icon-props';\nimport {\n makeEnterClickable,\n removeEnterClickable,\n} from '../../util/make-enter-clickable';\nimport translate from '../../global/translations';\nimport {\n BACKSPACE,\n BACKSPACE_KEY_CODE,\n DELETE,\n DELETE_KEY_CODE,\n} from '../../util/keycodes';\nimport { ChipType, Chip as OldChipInterface } from '../chip-set/chip.types';\nimport { Image } from '../../global/shared-types/image.types';\nimport { isEmpty } from 'lodash-es';\n\nimport { ListSeparator } from '../list/list-item.types';\nimport { LimelMenuCustomEvent, MenuItem } from '../../components';\n\ninterface ChipInterface extends Omit<OldChipInterface, 'id' | 'badge'> {\n /**\n * Identifier for the chip. Must be unique.\n */\n identifier?: number | string;\n\n /**\n * The value of the badge.\n */\n badge?: string | number;\n}\n\n/**\n * Chips and buttons are both interactive elements in UI design,\n * but they serve different purposes and are used in different contexts.\n *\n * :::warning\n * Do not use the chip component carelessly, as an alternative for\n * [`limel-button`](#/component/limel-button/) in the UI design!\n *\n * **Buttons:**\n * Buttons are used to trigger actions. They are typically used to\n * submit forms, open dialogs, initiate a process, or perform any action\n * that changes the state of the application.\n * Buttons' labels usually contain action words, in other words, the labels is\n * a _verb in imperative mood_ such as \"Submit\" or \"Delete\".\n * Buttons are placed in areas where it's clear they will initiate\n * an action when clicked.\n *\n * **Chips:**\n * Chips however are elements which may look like buttons, but they are\n * representing choices, filters, or tags, in a small block\n * or clearly bundled into a group. Chips are rarely used alone in the\n * user interface.\n * They are often used in a so called \"chip-set\", or placed together in\n * a section of the UI, where the user can expect more than one chip to be present.\n *\n * For example, a chip may represent a filter in a filter bar, or a tag in a tag list,\n * or an item in a shopping list.\n * Clicking a chip can also trigger an action, for example toggling a filter ON or OFF,\n * or opening a page with all posts tagged with the tag represented by the chip,\n * or navigating to a page with more information about the item in the shopping list.\n * :::\n *\n * @beta\n * @exampleComponent limel-example-chip-button\n * @exampleComponent limel-example-chip-link\n * @exampleComponent limel-example-chip-icon-colors\n * @exampleComponent limel-example-chip-image\n * @exampleComponent limel-example-chip-badge\n * @exampleComponent limel-example-chip-filter\n * @exampleComponent limel-example-chip-removable\n * @exampleComponent limel-example-chip-menu\n * @exampleComponent limel-example-chip-loading\n * @exampleComponent limel-example-chip-progress\n * @exampleComponent limel-example-chip-aria-role\n */\n@Component({\n tag: 'limel-chip',\n shadow: true,\n styleUrl: 'chip.scss',\n})\nexport class Chip implements ChipInterface {\n /**\n * Defines the language for translations.\n * Will translate the translatable strings on the components.\n */\n @Prop({ reflect: true })\n public language: Languages = 'en';\n\n /**\n * Label displayed on the chip\n */\n @Prop({ reflect: true })\n public text: string;\n\n /**\n * Icon of the chip.\n */\n @Prop()\n public icon?: string | Icon;\n\n /**\n * A picture to be displayed instead of the icon on the chip.\n */\n @Prop()\n public image?: Image;\n\n /**\n * If supplied, the chip will become a clickable link.\n */\n @Prop()\n public link?: Omit<Link, 'text'>;\n\n /**\n * The value of the badge, displayed on the chip.\n */\n @Prop({ reflect: true })\n public badge?: string | number;\n\n /**\n * Set to `true` to disable the chip.\n */\n @Prop({ reflect: true })\n public disabled = false;\n\n /**\n * Set to `true` to render the chip as a static UI element.\n * Useful when the parent component has a `readonly` state.\n */\n @Prop({ reflect: true })\n public readonly = false;\n\n /**\n * Set to `true` to visualize the chip in a \"selected\" state.\n * This is typically used when the chip is used in a chip-set\n * along with other chips.\n */\n @Prop({ reflect: true })\n public selected = false;\n\n /**\n * Set to `true` to visualize the chip in an \"invalid\" or \"error\" state.\n */\n @Prop({ reflect: true })\n public invalid = false;\n\n /**\n * Set to `true` to render a remove button on the chip.\n */\n @Prop({ reflect: true })\n public removable = false;\n\n /**\n * Set to `filter` to render the chip with a distinct style\n * suitable for visualizing filters.\n *\n * @beta\n */\n @Prop({ reflect: true })\n public type?: ChipType = 'default';\n\n /**\n * Set to `true` to put the component in the `loading` state,\n * and render an indeterminate progress indicator inside the chip.\n * This does _not_ disable the interactivity of the chip!\n */\n @Prop({ reflect: true })\n public loading? = false;\n\n /**\n * Reflects the current value of a progress bar on the chip,\n * visualizing the percentage of an ongoing process.\n * Must be a number between `0` and `100`.\n */\n @Prop({ reflect: true })\n public progress?: number;\n\n /**\n * Identifier for the chip. Must be unique.\n */\n @Prop({ reflect: true })\n public identifier?: number | string = crypto.randomUUID();\n\n /**\n * When provided, the chip will render an ellipsis menu with the supplied items.\n * Also, this will hide the \"remove button\" when `removable={true}`, as\n * the remove button will automatically become the last item in the menu.\n */\n @Prop()\n public menuItems?: Array<MenuItem | ListSeparator> = [];\n\n /**\n * Fired when clicking on the remove button of a `removable` chip.\n * The value of `identifier` is emitted as the event detail.\n */\n @Event()\n public remove: EventEmitter<number | string>;\n\n /**\n * Emitted when a menu item is selected from the actions menu.\n */\n @Event()\n public menuItemSelected: EventEmitter<MenuItem>;\n\n @Element()\n private host: HTMLLimelChipElement;\n\n public componentWillLoad() {\n makeEnterClickable(this.host);\n }\n\n public disconnectedCallback() {\n removeEnterClickable(this.host);\n }\n\n public render() {\n return (\n <Host onClick={this.filterClickWhenDisabled}>\n {this.link ? this.renderAsLink() : this.renderAsButton()}\n </Host>\n );\n }\n\n private renderAsButton = () => {\n return [\n <button\n id={'chip-' + this.identifier}\n class=\"chip\"\n role=\"button\"\n disabled={this.disabled || this.readonly}\n onKeyDown={this.handleDeleteKeyDown}\n >\n {this.renderSpinner()}\n {this.renderPicture()}\n {this.renderLabel()}\n {this.renderBadge()}\n {this.renderProgressBar()}\n </button>,\n this.renderRemoveButton(),\n this.renderActionsMenu(),\n ];\n };\n\n private renderAsLink = () => {\n return [\n <a\n id={'chip-' + this.identifier}\n class=\"chip\"\n href={this.link.href}\n title={this.link.title}\n target={this.link.target}\n aria-disabled={this.disabled || this.readonly}\n tabindex={this.disabled || this.readonly ? -1 : 0}\n onKeyDown={this.handleDeleteKeyDown}\n >\n {this.renderSpinner()}\n {this.renderPicture()}\n {this.renderLabel()}\n {this.renderBadge()}\n {this.renderProgressBar()}\n </a>,\n this.renderRemoveButton(),\n this.renderActionsMenu(),\n ];\n };\n\n private renderLabel = () => {\n return <span class=\"text\">{this.text}</span>;\n };\n\n private renderPicture() {\n const icon = getIconName(this.icon);\n\n if (!icon && !this.image) {\n return;\n }\n\n if (!isEmpty(this.image)) {\n return (\n <img src={this.image.src} alt={this.image.alt} loading=\"lazy\" />\n );\n }\n\n return (\n <limel-icon\n badge={true}\n name={icon}\n style={{\n color: `${(this.icon as Icon)?.color}`,\n 'background-color': `${\n (this.icon as Icon)?.backgroundColor\n }`,\n }}\n />\n );\n }\n\n private renderBadge() {\n if (!this.badge) {\n return;\n }\n\n return <limel-badge label={this.badge} />;\n }\n\n private renderRemoveButton() {\n if (\n !this.removable ||\n this.readonly ||\n this.disabled ||\n !!this.menuItems?.length\n ) {\n return;\n }\n\n const svgData =\n '<svg viewBox=\"0 0 32 32\" xmlns=\"http://www.w3.org/2000/svg\"><path fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" d=\"m8 8 16 16M24 8 8 24\"/></svg>';\n\n return (\n <button\n class=\"trailing-button remove-button\"\n tabIndex={-1}\n aria-label={this.removeChipLabel}\n aria-controls={'chip-' + this.identifier}\n innerHTML={svgData}\n onClick={this.handleRemoveClick}\n />\n );\n }\n\n private renderActionsMenu() {\n if (!this.menuItems?.length) {\n return;\n }\n\n const svgData =\n '<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 32 32\" xml:space=\"preserve\"><circle cx=\"16\" cy=\"16\" r=\"2\"/><circle cx=\"16\" cy=\"24\" r=\"2\"/><circle cx=\"16\" cy=\"8\" r=\"2\"/></svg>';\n\n const menuItems = this.getMenuItems();\n\n return (\n <limel-menu\n items={menuItems}\n onSelect={this.handleActionMenuSelect}\n >\n <button\n slot=\"trigger\"\n class=\"trailing-button\"\n tabIndex={-1}\n aria-label={this.actionMenuLabel}\n innerHTML={svgData}\n />\n </limel-menu>\n );\n }\n\n private getMenuItems() {\n let menuItems = [...this.menuItems];\n\n if (this.removable) {\n menuItems = [\n ...menuItems,\n { separator: true },\n {\n text: this.removeChipLabel(),\n icon: {\n name: 'delete_sign',\n color: 'rgb(var(--color-red-default))',\n },\n value: '_remove',\n },\n ];\n }\n\n return menuItems;\n }\n\n private filterClickWhenDisabled = (e) => {\n if (this.disabled || this.readonly) {\n e.preventDefault();\n }\n };\n\n private handleRemoveClick = (event: MouseEvent | KeyboardEvent) => {\n event.stopPropagation();\n this.remove.emit(this.identifier);\n };\n\n private handleDeleteKeyDown = (event: KeyboardEvent) => {\n if (!this.removable) {\n return;\n }\n\n const keys = [DELETE, BACKSPACE];\n const keycodes = [DELETE_KEY_CODE, BACKSPACE_KEY_CODE];\n\n if (keys.includes(event.key) || keycodes.includes(event.keyCode)) {\n this.handleRemoveClick(event);\n }\n };\n\n private removeChipLabel = (): string => {\n return translate.get('remove', this.language) + ' ' + this.text;\n };\n\n private actionMenuLabel = (): string => {\n return translate.get('file-viewer.more-actions', this.language);\n };\n\n private renderSpinner() {\n if (!this.loading) {\n return;\n }\n\n return <limel-linear-progress indeterminate={true} />;\n }\n\n private renderProgressBar() {\n if (!this.progress) {\n return;\n }\n\n const currentPercentage = this.progress + '%';\n\n return (\n <div\n role=\"progressbar\"\n aria-label=\"%\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n aria-valuenow={this.progress}\n style={{\n '--limel-chip-progress-percentage': currentPercentage,\n }}\n />\n );\n }\n\n private handleActionMenuSelect = (\n event: LimelMenuCustomEvent<MenuItem>,\n ) => {\n const menuItem = event.detail;\n\n if (!menuItem) {\n return;\n }\n\n const { value } = menuItem;\n\n if (value === '_remove') {\n this.remove.emit(this.identifier);\n\n return;\n }\n\n this.menuItemSelected.emit(value);\n };\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"da.js","sourceRoot":"","sources":["../../src/translations/da.ts"],"names":[],"mappings":"AAAA,eAAe;EACX,cAAc,EAAE,QAAQ;EACxB,mBAAmB,EAAE,QAAQ;EAC7B,aAAa,EAAE,KAAK;EACpB,iBAAiB,EAAE,UAAU;EAC7B,iBAAiB,EAAE,UAAU;EAC7B,mBAAmB,EAAE,MAAM;EAC3B,2BAA2B,EAAE,OAAO;EACpC,6BAA6B,EAAE,SAAS;EACxC,0BAA0B,EAAE,IAAI;EAChC,oBAAoB,EAAE,UAAU;EAChC,yBAAyB,EACrB,qDAAqD;EACzD,0CAA0C,EAAE,2BAA2B;EACvE,sBAAsB,EAAE,MAAM;EAC9B,6BAA6B,EAAE,kBAAkB;EACjD,gCAAgC,EAAE,kBAAkB;EACpD,6BAA6B,EAAE,kBAAkB;EACjD,0BAA0B,EAAE,OAAO;CACtC,CAAC","sourcesContent":["export default {\n 'callout.note': 'Bemærk',\n 'callout.important': 'Vigtig',\n 'callout.tip': 'Tip',\n 'callout.caution': 'Advarsel',\n 'callout.warning': 'Advarsel',\n 'date-picker.today': 'Idag',\n 'date-picker.month.heading': 'Måned',\n 'date-picker.quarter.heading': 'Kvartal',\n 'date-picker.year.heading': 'År',\n 'chip-set.clear-all': 'Ryd alle',\n 'file.drag-and-drop-tips':\n 'Træk og slip filen her, eller klik for at gennemse.',\n 'file-viewer.message.unsupported-filetype': 'Denne fil kan ikke vises!',\n 'file-viewer.download': 'Hent',\n 'file-viewer.exit-fullscreen': 'Afslut fuldskærm',\n 'file-viewer.open-in-fullscreen': 'Åbn i fuld skærm',\n 'file-viewer.open-in-new-tab': 'Åbn i en ny fane',\n 'file-viewer.more-actions': 'Mere…',\n};\n"]}
|
|
1
|
+
{"version":3,"file":"da.js","sourceRoot":"","sources":["../../src/translations/da.ts"],"names":[],"mappings":"AAAA,eAAe;EACX,MAAM,EAAE,OAAO;EACf,cAAc,EAAE,QAAQ;EACxB,mBAAmB,EAAE,QAAQ;EAC7B,aAAa,EAAE,KAAK;EACpB,iBAAiB,EAAE,UAAU;EAC7B,iBAAiB,EAAE,UAAU;EAC7B,mBAAmB,EAAE,MAAM;EAC3B,2BAA2B,EAAE,OAAO;EACpC,6BAA6B,EAAE,SAAS;EACxC,0BAA0B,EAAE,IAAI;EAChC,oBAAoB,EAAE,UAAU;EAChC,yBAAyB,EACrB,qDAAqD;EACzD,0CAA0C,EAAE,2BAA2B;EACvE,sBAAsB,EAAE,MAAM;EAC9B,6BAA6B,EAAE,kBAAkB;EACjD,gCAAgC,EAAE,kBAAkB;EACpD,6BAA6B,EAAE,kBAAkB;EACjD,0BAA0B,EAAE,OAAO;CACtC,CAAC","sourcesContent":["export default {\n remove: 'Fjern',\n 'callout.note': 'Bemærk',\n 'callout.important': 'Vigtig',\n 'callout.tip': 'Tip',\n 'callout.caution': 'Advarsel',\n 'callout.warning': 'Advarsel',\n 'date-picker.today': 'Idag',\n 'date-picker.month.heading': 'Måned',\n 'date-picker.quarter.heading': 'Kvartal',\n 'date-picker.year.heading': 'År',\n 'chip-set.clear-all': 'Ryd alle',\n 'file.drag-and-drop-tips':\n 'Træk og slip filen her, eller klik for at gennemse.',\n 'file-viewer.message.unsupported-filetype': 'Denne fil kan ikke vises!',\n 'file-viewer.download': 'Hent',\n 'file-viewer.exit-fullscreen': 'Afslut fuldskærm',\n 'file-viewer.open-in-fullscreen': 'Åbn i fuld skærm',\n 'file-viewer.open-in-new-tab': 'Åbn i en ny fane',\n 'file-viewer.more-actions': 'Mere…',\n};\n"]}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export default {
|
|
2
|
+
remove: 'Remove',
|
|
2
3
|
'callout.note': 'Note',
|
|
3
4
|
'callout.important': 'Important',
|
|
4
5
|
'callout.tip': 'Tip',
|
|
@@ -9,7 +10,6 @@ export default {
|
|
|
9
10
|
'date-picker.quarter.heading': 'Quarter',
|
|
10
11
|
'date-picker.year.heading': 'Year',
|
|
11
12
|
'chip-set.clear-all': 'Clear all',
|
|
12
|
-
'chip-set.remove-chip': 'Remove chip',
|
|
13
13
|
'snackbar.dismiss': 'Dismiss',
|
|
14
14
|
'file.drag-and-drop-tips': 'Drag and drop your file here, or click to browse.',
|
|
15
15
|
'file-viewer.message.unsupported-filetype': 'Cannot display this file!',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"en.js","sourceRoot":"","sources":["../../src/translations/en.ts"],"names":[],"mappings":"AAAA,eAAe;EACX,cAAc,EAAE,MAAM;EACtB,mBAAmB,EAAE,WAAW;EAChC,aAAa,EAAE,KAAK;EACpB,iBAAiB,EAAE,SAAS;EAC5B,iBAAiB,EAAE,SAAS;EAC5B,mBAAmB,EAAE,OAAO;EAC5B,2BAA2B,EAAE,OAAO;EACpC,6BAA6B,EAAE,SAAS;EACxC,0BAA0B,EAAE,MAAM;EAClC,oBAAoB,EAAE,WAAW;EACjC,
|
|
1
|
+
{"version":3,"file":"en.js","sourceRoot":"","sources":["../../src/translations/en.ts"],"names":[],"mappings":"AAAA,eAAe;EACX,MAAM,EAAE,QAAQ;EAChB,cAAc,EAAE,MAAM;EACtB,mBAAmB,EAAE,WAAW;EAChC,aAAa,EAAE,KAAK;EACpB,iBAAiB,EAAE,SAAS;EAC5B,iBAAiB,EAAE,SAAS;EAC5B,mBAAmB,EAAE,OAAO;EAC5B,2BAA2B,EAAE,OAAO;EACpC,6BAA6B,EAAE,SAAS;EACxC,0BAA0B,EAAE,MAAM;EAClC,oBAAoB,EAAE,WAAW;EACjC,kBAAkB,EAAE,SAAS;EAC7B,yBAAyB,EACrB,mDAAmD;EACvD,0CAA0C,EAAE,2BAA2B;EACvE,sBAAsB,EAAE,UAAU;EAClC,6BAA6B,EAAE,iBAAiB;EAChD,gCAAgC,EAAE,oBAAoB;EACtD,6BAA6B,EAAE,mBAAmB;EAClD,0BAA0B,EAAE,OAAO;CACtC,CAAC","sourcesContent":["export default {\n remove: 'Remove',\n 'callout.note': 'Note',\n 'callout.important': 'Important',\n 'callout.tip': 'Tip',\n 'callout.caution': 'Caution',\n 'callout.warning': 'Warning',\n 'date-picker.today': 'Today',\n 'date-picker.month.heading': 'Month',\n 'date-picker.quarter.heading': 'Quarter',\n 'date-picker.year.heading': 'Year',\n 'chip-set.clear-all': 'Clear all',\n 'snackbar.dismiss': 'Dismiss',\n 'file.drag-and-drop-tips':\n 'Drag and drop your file here, or click to browse.',\n 'file-viewer.message.unsupported-filetype': 'Cannot display this file!',\n 'file-viewer.download': 'Download',\n 'file-viewer.exit-fullscreen': 'Exit fullscreen',\n 'file-viewer.open-in-fullscreen': 'Open in fullscreen',\n 'file-viewer.open-in-new-tab': 'Open in a new tab',\n 'file-viewer.more-actions': 'More…',\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fi.js","sourceRoot":"","sources":["../../src/translations/fi.ts"],"names":[],"mappings":"AAAA,eAAe;EACX,cAAc,EAAE,QAAQ;EACxB,mBAAmB,EAAE,SAAS;EAC9B,aAAa,EAAE,QAAQ;EACvB,iBAAiB,EAAE,UAAU;EAC7B,iBAAiB,EAAE,UAAU;EAC7B,mBAAmB,EAAE,QAAQ;EAC7B,2BAA2B,EAAE,UAAU;EACvC,6BAA6B,EAAE,gBAAgB;EAC/C,0BAA0B,EAAE,OAAO;EACnC,oBAAoB,EAAE,iBAAiB;EACvC,yBAAyB,EACrB,4DAA4D;EAChE,0CAA0C,EACtC,gCAAgC;EACpC,sBAAsB,EAAE,QAAQ;EAChC,6BAA6B,EAAE,sBAAsB;EACrD,gCAAgC,EAAE,oBAAoB;EACtD,6BAA6B,EAAE,2BAA2B;EAC1D,0BAA0B,EAAE,QAAQ;CACvC,CAAC","sourcesContent":["export default {\n 'callout.note': 'Huomio',\n 'callout.important': 'Tärkeää',\n 'callout.tip': 'Vinkki',\n 'callout.caution': 'Varoitus',\n 'callout.warning': 'Varoitus',\n 'date-picker.today': 'Tänään',\n 'date-picker.month.heading': 'Kuukausi',\n 'date-picker.quarter.heading': 'Vuosineljännes',\n 'date-picker.year.heading': 'Vuosi',\n 'chip-set.clear-all': 'Tyhjennä kaikki',\n 'file.drag-and-drop-tips':\n 'Vedä ja pudota tiedostosi tähän, tai napsauta selataksesi.',\n 'file-viewer.message.unsupported-filetype':\n 'Tätä tiedostoa ei voi näyttää!',\n 'file-viewer.download': 'Ladata',\n 'file-viewer.exit-fullscreen': 'Poistu koko näytöstä',\n 'file-viewer.open-in-fullscreen': 'Avaa koko näytössä',\n 'file-viewer.open-in-new-tab': 'Avaa uudella välilehdellä',\n 'file-viewer.more-actions': 'Lisää…',\n};\n"]}
|
|
1
|
+
{"version":3,"file":"fi.js","sourceRoot":"","sources":["../../src/translations/fi.ts"],"names":[],"mappings":"AAAA,eAAe;EACX,MAAM,EAAE,QAAQ;EAChB,cAAc,EAAE,QAAQ;EACxB,mBAAmB,EAAE,SAAS;EAC9B,aAAa,EAAE,QAAQ;EACvB,iBAAiB,EAAE,UAAU;EAC7B,iBAAiB,EAAE,UAAU;EAC7B,mBAAmB,EAAE,QAAQ;EAC7B,2BAA2B,EAAE,UAAU;EACvC,6BAA6B,EAAE,gBAAgB;EAC/C,0BAA0B,EAAE,OAAO;EACnC,oBAAoB,EAAE,iBAAiB;EACvC,yBAAyB,EACrB,4DAA4D;EAChE,0CAA0C,EACtC,gCAAgC;EACpC,sBAAsB,EAAE,QAAQ;EAChC,6BAA6B,EAAE,sBAAsB;EACrD,gCAAgC,EAAE,oBAAoB;EACtD,6BAA6B,EAAE,2BAA2B;EAC1D,0BAA0B,EAAE,QAAQ;CACvC,CAAC","sourcesContent":["export default {\n remove: 'Poista',\n 'callout.note': 'Huomio',\n 'callout.important': 'Tärkeää',\n 'callout.tip': 'Vinkki',\n 'callout.caution': 'Varoitus',\n 'callout.warning': 'Varoitus',\n 'date-picker.today': 'Tänään',\n 'date-picker.month.heading': 'Kuukausi',\n 'date-picker.quarter.heading': 'Vuosineljännes',\n 'date-picker.year.heading': 'Vuosi',\n 'chip-set.clear-all': 'Tyhjennä kaikki',\n 'file.drag-and-drop-tips':\n 'Vedä ja pudota tiedostosi tähän, tai napsauta selataksesi.',\n 'file-viewer.message.unsupported-filetype':\n 'Tätä tiedostoa ei voi näyttää!',\n 'file-viewer.download': 'Ladata',\n 'file-viewer.exit-fullscreen': 'Poistu koko näytöstä',\n 'file-viewer.open-in-fullscreen': 'Avaa koko näytössä',\n 'file-viewer.open-in-new-tab': 'Avaa uudella välilehdellä',\n 'file-viewer.more-actions': 'Lisää…',\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nl.js","sourceRoot":"","sources":["../../src/translations/nl.ts"],"names":[],"mappings":"AAAA,eAAe;EACX,cAAc,EAAE,WAAW;EAC3B,mBAAmB,EAAE,YAAY;EACjC,aAAa,EAAE,KAAK;EACpB,iBAAiB,EAAE,cAAc;EACjC,iBAAiB,EAAE,cAAc;EACjC,mBAAmB,EAAE,SAAS;EAC9B,2BAA2B,EAAE,OAAO;EACpC,6BAA6B,EAAE,UAAU;EACzC,0BAA0B,EAAE,MAAM;EAClC,oBAAoB,EAAE,cAAc;EACpC,yBAAyB,EACrB,+DAA+D;EACnE,0CAA0C,EACtC,iCAAiC;EACrC,sBAAsB,EAAE,YAAY;EACpC,6BAA6B,EAAE,yBAAyB;EACxD,gCAAgC,EAAE,yBAAyB;EAC3D,6BAA6B,EAAE,6BAA6B;EAC5D,0BAA0B,EAAE,OAAO;CACtC,CAAC","sourcesContent":["export default {\n 'callout.note': 'Opmerking',\n 'callout.important': 'Belangrijk',\n 'callout.tip': 'Tip',\n 'callout.caution': 'Waarschuwing',\n 'callout.warning': 'Waarschuwing',\n 'date-picker.today': 'Vandaag',\n 'date-picker.month.heading': 'Maand',\n 'date-picker.quarter.heading': 'Kwartaal',\n 'date-picker.year.heading': 'Jaar',\n 'chip-set.clear-all': 'Alles wissen',\n 'file.drag-and-drop-tips':\n 'Sleep uw bestand en zet het hier neer of klik om te bladeren.',\n 'file-viewer.message.unsupported-filetype':\n 'Kan dit bestand niet weergeven!',\n 'file-viewer.download': 'Downloaden',\n 'file-viewer.exit-fullscreen': 'Verlaat volledig scherm',\n 'file-viewer.open-in-fullscreen': 'Open in volledig scherm',\n 'file-viewer.open-in-new-tab': 'Openen op een nieuw tabblad',\n 'file-viewer.more-actions': 'Meer…',\n};\n"]}
|
|
1
|
+
{"version":3,"file":"nl.js","sourceRoot":"","sources":["../../src/translations/nl.ts"],"names":[],"mappings":"AAAA,eAAe;EACX,MAAM,EAAE,WAAW;EACnB,cAAc,EAAE,WAAW;EAC3B,mBAAmB,EAAE,YAAY;EACjC,aAAa,EAAE,KAAK;EACpB,iBAAiB,EAAE,cAAc;EACjC,iBAAiB,EAAE,cAAc;EACjC,mBAAmB,EAAE,SAAS;EAC9B,2BAA2B,EAAE,OAAO;EACpC,6BAA6B,EAAE,UAAU;EACzC,0BAA0B,EAAE,MAAM;EAClC,oBAAoB,EAAE,cAAc;EACpC,yBAAyB,EACrB,+DAA+D;EACnE,0CAA0C,EACtC,iCAAiC;EACrC,sBAAsB,EAAE,YAAY;EACpC,6BAA6B,EAAE,yBAAyB;EACxD,gCAAgC,EAAE,yBAAyB;EAC3D,6BAA6B,EAAE,6BAA6B;EAC5D,0BAA0B,EAAE,OAAO;CACtC,CAAC","sourcesContent":["export default {\n remove: 'Verwijder',\n 'callout.note': 'Opmerking',\n 'callout.important': 'Belangrijk',\n 'callout.tip': 'Tip',\n 'callout.caution': 'Waarschuwing',\n 'callout.warning': 'Waarschuwing',\n 'date-picker.today': 'Vandaag',\n 'date-picker.month.heading': 'Maand',\n 'date-picker.quarter.heading': 'Kwartaal',\n 'date-picker.year.heading': 'Jaar',\n 'chip-set.clear-all': 'Alles wissen',\n 'file.drag-and-drop-tips':\n 'Sleep uw bestand en zet het hier neer of klik om te bladeren.',\n 'file-viewer.message.unsupported-filetype':\n 'Kan dit bestand niet weergeven!',\n 'file-viewer.download': 'Downloaden',\n 'file-viewer.exit-fullscreen': 'Verlaat volledig scherm',\n 'file-viewer.open-in-fullscreen': 'Open in volledig scherm',\n 'file-viewer.open-in-new-tab': 'Openen op een nieuw tabblad',\n 'file-viewer.more-actions': 'Meer…',\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"no.js","sourceRoot":"","sources":["../../src/translations/no.ts"],"names":[],"mappings":"AAAA,eAAe;EACX,cAAc,EAAE,MAAM;EACtB,mBAAmB,EAAE,QAAQ;EAC7B,aAAa,EAAE,KAAK;EACpB,iBAAiB,EAAE,UAAU;EAC7B,iBAAiB,EAAE,UAAU;EAC7B,mBAAmB,EAAE,OAAO;EAC5B,2BAA2B,EAAE,OAAO;EACpC,6BAA6B,EAAE,SAAS;EACxC,0BAA0B,EAAE,IAAI;EAChC,oBAAoB,EAAE,YAAY;EAClC,yBAAyB,EACrB,wDAAwD;EAC5D,0CAA0C,EAAE,4BAA4B;EACxE,sBAAsB,EAAE,YAAY;EACpC,6BAA6B,EAAE,qBAAqB;EACpD,gCAAgC,EAAE,mBAAmB;EACrD,6BAA6B,EAAE,mBAAmB;EAClD,0BAA0B,EAAE,MAAM;CACrC,CAAC","sourcesContent":["export default {\n 'callout.note': 'Note',\n 'callout.important': 'Viktig',\n 'callout.tip': 'Tip',\n 'callout.caution': 'Advarsel',\n 'callout.warning': 'Advarsel',\n 'date-picker.today': 'I dag',\n 'date-picker.month.heading': 'Måned',\n 'date-picker.quarter.heading': 'Kvartal',\n 'date-picker.year.heading': 'År',\n 'chip-set.clear-all': 'Fjern alle',\n 'file.drag-and-drop-tips':\n 'Dra og slipp filen her, eller klikk for å bla gjennom.',\n 'file-viewer.message.unsupported-filetype': 'Kan ikke vise denne filen!',\n 'file-viewer.download': 'Nedlasting',\n 'file-viewer.exit-fullscreen': 'Gå ut av fullskjerm',\n 'file-viewer.open-in-fullscreen': 'Åpne i fullskjerm',\n 'file-viewer.open-in-new-tab': 'Åpne i en ny fane',\n 'file-viewer.more-actions': 'Mer…',\n};\n"]}
|
|
1
|
+
{"version":3,"file":"no.js","sourceRoot":"","sources":["../../src/translations/no.ts"],"names":[],"mappings":"AAAA,eAAe;EACX,MAAM,EAAE,QAAQ;EAChB,cAAc,EAAE,MAAM;EACtB,mBAAmB,EAAE,QAAQ;EAC7B,aAAa,EAAE,KAAK;EACpB,iBAAiB,EAAE,UAAU;EAC7B,iBAAiB,EAAE,UAAU;EAC7B,mBAAmB,EAAE,OAAO;EAC5B,2BAA2B,EAAE,OAAO;EACpC,6BAA6B,EAAE,SAAS;EACxC,0BAA0B,EAAE,IAAI;EAChC,oBAAoB,EAAE,YAAY;EAClC,yBAAyB,EACrB,wDAAwD;EAC5D,0CAA0C,EAAE,4BAA4B;EACxE,sBAAsB,EAAE,YAAY;EACpC,6BAA6B,EAAE,qBAAqB;EACpD,gCAAgC,EAAE,mBAAmB;EACrD,6BAA6B,EAAE,mBAAmB;EAClD,0BAA0B,EAAE,MAAM;CACrC,CAAC","sourcesContent":["export default {\n remove: 'Fjerne',\n 'callout.note': 'Note',\n 'callout.important': 'Viktig',\n 'callout.tip': 'Tip',\n 'callout.caution': 'Advarsel',\n 'callout.warning': 'Advarsel',\n 'date-picker.today': 'I dag',\n 'date-picker.month.heading': 'Måned',\n 'date-picker.quarter.heading': 'Kvartal',\n 'date-picker.year.heading': 'År',\n 'chip-set.clear-all': 'Fjern alle',\n 'file.drag-and-drop-tips':\n 'Dra og slipp filen her, eller klikk for å bla gjennom.',\n 'file-viewer.message.unsupported-filetype': 'Kan ikke vise denne filen!',\n 'file-viewer.download': 'Nedlasting',\n 'file-viewer.exit-fullscreen': 'Gå ut av fullskjerm',\n 'file-viewer.open-in-fullscreen': 'Åpne i fullskjerm',\n 'file-viewer.open-in-new-tab': 'Åpne i en ny fane',\n 'file-viewer.more-actions': 'Mer…',\n};\n"]}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export default {
|
|
2
|
+
remove: 'Ta bort',
|
|
2
3
|
'callout.note': 'Obs',
|
|
3
4
|
'callout.important': 'Viktigt',
|
|
4
5
|
'callout.tip': 'Tips',
|
|
@@ -9,7 +10,6 @@ export default {
|
|
|
9
10
|
'date-picker.quarter.heading': 'Kvartal',
|
|
10
11
|
'date-picker.year.heading': 'År',
|
|
11
12
|
'chip-set.clear-all': 'Rensa alla',
|
|
12
|
-
'chip-set.remove-chip': 'Ta bort chip',
|
|
13
13
|
'snackbar.dismiss': 'Stäng',
|
|
14
14
|
'file.drag-and-drop-tips': 'Dra och släpp filen här eller klicka om du vill bläddra.',
|
|
15
15
|
'file-viewer.message.unsupported-filetype': 'Kan inte visa den här filen!',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sv.js","sourceRoot":"","sources":["../../src/translations/sv.ts"],"names":[],"mappings":"AAAA,eAAe;EACX,cAAc,EAAE,KAAK;EACrB,mBAAmB,EAAE,SAAS;EAC9B,aAAa,EAAE,MAAM;EACrB,iBAAiB,EAAE,SAAS;EAC5B,iBAAiB,EAAE,SAAS;EAC5B,mBAAmB,EAAE,MAAM;EAC3B,2BAA2B,EAAE,OAAO;EACpC,6BAA6B,EAAE,SAAS;EACxC,0BAA0B,EAAE,IAAI;EAChC,oBAAoB,EAAE,YAAY;EAClC,
|
|
1
|
+
{"version":3,"file":"sv.js","sourceRoot":"","sources":["../../src/translations/sv.ts"],"names":[],"mappings":"AAAA,eAAe;EACX,MAAM,EAAE,SAAS;EACjB,cAAc,EAAE,KAAK;EACrB,mBAAmB,EAAE,SAAS;EAC9B,aAAa,EAAE,MAAM;EACrB,iBAAiB,EAAE,SAAS;EAC5B,iBAAiB,EAAE,SAAS;EAC5B,mBAAmB,EAAE,MAAM;EAC3B,2BAA2B,EAAE,OAAO;EACpC,6BAA6B,EAAE,SAAS;EACxC,0BAA0B,EAAE,IAAI;EAChC,oBAAoB,EAAE,YAAY;EAClC,kBAAkB,EAAE,OAAO;EAC3B,yBAAyB,EACrB,0DAA0D;EAC9D,0CAA0C,EAAE,8BAA8B;EAC1E,sBAAsB,EAAE,WAAW;EACnC,6BAA6B,EAAE,wBAAwB;EACvD,gCAAgC,EAAE,wBAAwB;EAC1D,6BAA6B,EAAE,iBAAiB;EAChD,0BAA0B,EAAE,MAAM;CACrC,CAAC","sourcesContent":["export default {\n remove: 'Ta bort',\n 'callout.note': 'Obs',\n 'callout.important': 'Viktigt',\n 'callout.tip': 'Tips',\n 'callout.caution': 'Varning',\n 'callout.warning': 'Varning',\n 'date-picker.today': 'Idag',\n 'date-picker.month.heading': 'Månad',\n 'date-picker.quarter.heading': 'Kvartal',\n 'date-picker.year.heading': 'År',\n 'chip-set.clear-all': 'Rensa alla',\n 'snackbar.dismiss': 'Stäng',\n 'file.drag-and-drop-tips':\n 'Dra och släpp filen här eller klicka om du vill bläddra.',\n 'file-viewer.message.unsupported-filetype': 'Kan inte visa den här filen!',\n 'file-viewer.download': 'Ladda ner',\n 'file-viewer.exit-fullscreen': 'Avsluta fullskärmsläge',\n 'file-viewer.open-in-fullscreen': 'Öppna i fullskärmsläge',\n 'file-viewer.open-in-new-tab': 'Öppna i ny flik',\n 'file-viewer.more-actions': 'Mer…',\n};\n"]}
|
|
@@ -207,6 +207,35 @@ function debounce(func, wait, options) {
|
|
|
207
207
|
return debounced;
|
|
208
208
|
}
|
|
209
209
|
|
|
210
|
-
|
|
210
|
+
/**
|
|
211
|
+
* Check if an element is a descendant of another, even if it is located within a shadow root
|
|
212
|
+
*
|
|
213
|
+
* @param element - The element to check
|
|
214
|
+
* @param parent - The parent element
|
|
215
|
+
* @returns True if the element is a descendant of the parent element, false otherwise
|
|
216
|
+
*/
|
|
217
|
+
function isDescendant(element, parent) {
|
|
218
|
+
if (!parent) {
|
|
219
|
+
return false;
|
|
220
|
+
}
|
|
221
|
+
if (parent.contains(element)) {
|
|
222
|
+
return true;
|
|
223
|
+
}
|
|
224
|
+
let currentNode = element;
|
|
225
|
+
let i = 0; // Just in case something weird happens, let's not crash the browser…
|
|
226
|
+
const DEPTH = 1000; // Max depth to search.
|
|
227
|
+
while (i < DEPTH &&
|
|
228
|
+
currentNode &&
|
|
229
|
+
currentNode.getRootNode().nodeName === '#document-fragment') {
|
|
230
|
+
currentNode = currentNode.getRootNode().host;
|
|
231
|
+
if (parent.contains(currentNode)) {
|
|
232
|
+
return true;
|
|
233
|
+
}
|
|
234
|
+
i += 1;
|
|
235
|
+
}
|
|
236
|
+
return parent.contains(currentNode);
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
export { debounce as d, isDescendant as i };
|
|
211
240
|
|
|
212
|
-
//# sourceMappingURL=
|
|
241
|
+
//# sourceMappingURL=dom-ae531ebc.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"dom-ae531ebc.js","mappings":"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","names":[],"sources":["./node_modules/lodash-es/now.js","./node_modules/lodash-es/debounce.js","./src/util/dom.ts"],"sourcesContent":["import root from './_root.js';\n\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\nvar now = function() {\n return root.Date.now();\n};\n\nexport default now;\n","import isObject from './isObject.js';\nimport now from './now.js';\nimport toNumber from './toNumber.js';\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n timeWaiting = wait - timeSinceLastCall;\n\n return maxing\n ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)\n : timeWaiting;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n clearTimeout(timerId);\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\nexport default debounce;\n","/**\n * Check if an element is a descendant of another, even if it is located within a shadow root\n *\n * @param element - The element to check\n * @param parent - The parent element\n * @returns True if the element is a descendant of the parent element, false otherwise\n */\nexport function isDescendant(element: Node, parent: Node): boolean {\n if (!parent) {\n return false;\n }\n\n if (parent.contains(element)) {\n return true;\n }\n\n let currentNode: Node = element;\n let i = 0; // Just in case something weird happens, let's not crash the browser…\n const DEPTH = 1000; // Max depth to search.\n\n while (\n i < DEPTH &&\n currentNode &&\n currentNode.getRootNode().nodeName === '#document-fragment'\n ) {\n currentNode = (currentNode.getRootNode() as any).host;\n if (parent.contains(currentNode)) {\n return true;\n }\n\n i += 1;\n }\n\n return parent.contains(currentNode);\n}\n"],"version":3}
|