@limetech/lime-elements 40.4.1 → 40.5.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 +18 -0
- package/dist/cjs/component-UyqdiWGc.js +1576 -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 +1 -1
- package/dist/cjs/{limel-breadcrumbs_8.cjs.entry.js → limel-breadcrumbs_6.cjs.entry.js} +221 -2175
- package/dist/cjs/limel-callout.cjs.entry.js +1 -1
- package/dist/cjs/limel-chart.cjs.entry.js +1 -1
- package/dist/cjs/limel-chip-set.cjs.entry.js +1 -1
- package/dist/cjs/limel-chip_2.cjs.entry.js +1 -1
- package/dist/cjs/limel-code-diff.cjs.entry.js +1 -1
- package/dist/cjs/limel-code-editor.cjs.entry.js +1 -1
- package/dist/cjs/limel-collapsible-section.cjs.entry.js +1 -1
- package/dist/cjs/limel-drag-handle.cjs.entry.js +1 -1
- package/dist/cjs/limel-email-viewer.cjs.entry.js +1 -1
- 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-helper-line_3.cjs.entry.js +454 -0
- package/dist/cjs/limel-list-item.cjs.entry.js +1 -1
- package/dist/cjs/limel-pagination-jump.cjs.entry.js +182 -0
- package/dist/cjs/limel-pagination.cjs.entry.js +165 -126
- package/dist/cjs/limel-picker.cjs.entry.js +1 -1
- package/dist/cjs/limel-popover_2.cjs.entry.js +33 -25
- package/dist/cjs/limel-profile-picture.cjs.entry.js +1 -1
- package/dist/cjs/limel-prosemirror-adapter.cjs.entry.js +1 -1
- package/dist/cjs/limel-slider.cjs.entry.js +1 -1
- package/dist/cjs/limel-snackbar.cjs.entry.js +1 -1
- package/dist/cjs/limel-table.cjs.entry.js +1 -1
- package/dist/cjs/limel-text-editor-link-menu.cjs.entry.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/pagination.util-B5zzH8vg.js +135 -0
- package/dist/cjs/{translations-C5T2-_rH.js → translations-DFFpR6AZ.js} +32 -0
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/menu/menu.js +44 -22
- package/dist/collection/components/pagination/jump/pagination-jump.css +11 -0
- package/dist/collection/components/pagination/jump/pagination-jump.js +331 -0
- package/dist/collection/components/pagination/pagination.css +8 -4
- package/dist/collection/components/pagination/pagination.js +167 -10
- package/dist/collection/components/pagination/pagination.util.js +25 -8
- package/dist/collection/components/popover/popover.js +33 -25
- package/dist/collection/translations/da.js +4 -0
- package/dist/collection/translations/de.js +4 -0
- package/dist/collection/translations/en.js +4 -0
- package/dist/collection/translations/fi.js +4 -0
- package/dist/collection/translations/fr.js +4 -0
- package/dist/collection/translations/nl.js +4 -0
- package/dist/collection/translations/no.js +4 -0
- package/dist/collection/translations/sv.js +4 -0
- package/dist/esm/component-B2Vy44Z3.js +1570 -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 +1 -1
- package/dist/esm/{limel-breadcrumbs_8.entry.js → limel-breadcrumbs_6.entry.js} +47 -1999
- package/dist/esm/limel-callout.entry.js +1 -1
- package/dist/esm/limel-chart.entry.js +1 -1
- package/dist/esm/limel-chip-set.entry.js +1 -1
- package/dist/esm/limel-chip_2.entry.js +1 -1
- package/dist/esm/limel-code-diff.entry.js +1 -1
- package/dist/esm/limel-code-editor.entry.js +1 -1
- package/dist/esm/limel-collapsible-section.entry.js +1 -1
- package/dist/esm/limel-drag-handle.entry.js +1 -1
- package/dist/esm/limel-email-viewer.entry.js +1 -1
- 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-helper-line_3.entry.js +450 -0
- package/dist/esm/limel-list-item.entry.js +1 -1
- package/dist/esm/limel-pagination-jump.entry.js +180 -0
- package/dist/esm/limel-pagination.entry.js +165 -126
- package/dist/esm/limel-picker.entry.js +1 -1
- package/dist/esm/limel-popover_2.entry.js +33 -25
- package/dist/esm/limel-profile-picture.entry.js +1 -1
- package/dist/esm/limel-prosemirror-adapter.entry.js +1 -1
- package/dist/esm/limel-slider.entry.js +1 -1
- package/dist/esm/limel-snackbar.entry.js +1 -1
- package/dist/esm/limel-table.entry.js +1 -1
- package/dist/esm/limel-text-editor-link-menu.entry.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/pagination.util-CSC2LJ7P.js +132 -0
- package/dist/esm/{translations-Bwm2y2E4.js → translations-DMtX4tTX.js} +32 -0
- package/dist/lime-elements/lime-elements.esm.js +1 -1
- package/dist/lime-elements/{p-2bbdac10.entry.js → p-11a96a8c.entry.js} +1 -1
- package/dist/lime-elements/p-1dd86ad4.entry.js +1 -0
- package/dist/lime-elements/p-1e93473a.entry.js +1 -0
- package/dist/lime-elements/{p-a41b5ff3.entry.js → p-2e568c56.entry.js} +1 -1
- package/dist/lime-elements/{p-de631fc3.entry.js → p-2f57c3fa.entry.js} +1 -1
- package/dist/lime-elements/p-3735111e.entry.js +1 -0
- package/dist/lime-elements/{p-c823054d.entry.js → p-452b9b01.entry.js} +1 -1
- package/dist/lime-elements/{p-f333f12d.entry.js → p-4855dc9b.entry.js} +1 -1
- package/dist/lime-elements/{p-a462aeb7.entry.js → p-4902fb3f.entry.js} +1 -1
- package/dist/lime-elements/p-507cc8a1.entry.js +159 -0
- package/dist/lime-elements/{p-dadd2e17.entry.js → p-531b6a64.entry.js} +1 -1
- package/dist/lime-elements/{p-b194a212.entry.js → p-5698e493.entry.js} +1 -1
- package/dist/lime-elements/{p-65a9adfc.entry.js → p-67f02b69.entry.js} +1 -1
- package/dist/lime-elements/{p-1162dd39.entry.js → p-867681aa.entry.js} +1 -1
- package/dist/lime-elements/{p-f72ee01b.entry.js → p-90df3e1b.entry.js} +1 -1
- package/dist/lime-elements/{p-22f85b99.entry.js → p-955292eb.entry.js} +1 -1
- package/dist/lime-elements/{p-c2ff132c.entry.js → p-9b631363.entry.js} +1 -1
- package/dist/lime-elements/{p-8af3e4a1.entry.js → p-9d3437ac.entry.js} +1 -1
- package/dist/lime-elements/p-B8hoCfhT.js +1 -0
- package/dist/lime-elements/p-BwJGg-WI.js +89 -0
- package/dist/lime-elements/p-CSC2LJ7P.js +1 -0
- package/dist/lime-elements/p-a1de9bbe.entry.js +1 -0
- package/dist/lime-elements/{p-b5484494.entry.js → p-acba5700.entry.js} +1 -1
- package/dist/lime-elements/{p-f6361b03.entry.js → p-b8c76487.entry.js} +1 -1
- package/dist/lime-elements/{p-ac9c5c88.entry.js → p-cafec335.entry.js} +1 -1
- package/dist/lime-elements/{p-48928b4f.entry.js → p-d146feda.entry.js} +1 -1
- package/dist/lime-elements/{p-532ea234.entry.js → p-deceda00.entry.js} +1 -1
- package/dist/lime-elements/{p-e508771f.entry.js → p-f04f7c8e.entry.js} +1 -1
- package/dist/lime-elements/{p-51dc5f0b.entry.js → p-f3c108c9.entry.js} +1 -1
- package/dist/lime-elements/{p-24041bbb.entry.js → p-fbcd99a3.entry.js} +1 -1
- package/dist/types/components/menu/menu.d.ts +11 -0
- package/dist/types/components/pagination/jump/pagination-jump.d.ts +102 -0
- package/dist/types/components/pagination/pagination.d.ts +81 -0
- package/dist/types/components/pagination/pagination.util.d.ts +12 -2
- package/dist/types/components/popover/popover.d.ts +8 -1
- package/dist/types/components.d.ts +145 -0
- package/dist/types/translations/da.d.ts +4 -0
- package/dist/types/translations/de.d.ts +4 -0
- package/dist/types/translations/en.d.ts +4 -0
- package/dist/types/translations/fi.d.ts +4 -0
- package/dist/types/translations/fr.d.ts +4 -0
- package/dist/types/translations/nl.d.ts +4 -0
- package/dist/types/translations/no.d.ts +4 -0
- package/dist/types/translations/sv.d.ts +4 -0
- package/package.json +1 -1
- package/dist/cjs/limel-helper-line.cjs.entry.js +0 -42
- package/dist/esm/limel-helper-line.entry.js +0 -40
- package/dist/lime-elements/p-1a478498.entry.js +0 -248
- package/dist/lime-elements/p-4c65dee7.entry.js +0 -1
- package/dist/lime-elements/p-DAFuhe5e.js +0 -1
- package/dist/lime-elements/p-b4988a9b.entry.js +0 -1
- package/dist/lime-elements/p-f81dc23a.entry.js +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var index = require('./index--B6-r0uo.js');
|
|
4
|
-
var translations = require('./translations-
|
|
4
|
+
var translations = require('./translations-DFFpR6AZ.js');
|
|
5
5
|
var randomString = require('./random-string-BTzDB2ee.js');
|
|
6
6
|
require('./language-CaqPKPyW.js');
|
|
7
7
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var index = require('./index--B6-r0uo.js');
|
|
4
4
|
var keycodes = require('./keycodes-k-EdzcMX.js');
|
|
5
|
-
var translations = require('./translations-
|
|
5
|
+
var translations = require('./translations-DFFpR6AZ.js');
|
|
6
6
|
var linkHelper = require('./link-helper-DwlfFJVL.js');
|
|
7
7
|
var randomString = require('./random-string-BTzDB2ee.js');
|
|
8
8
|
var isEqual = require('./isEqual-Cd9J8a5-.js');
|
|
@@ -5,7 +5,7 @@ var image_template = require('./image.template-DY7qwbuy.js');
|
|
|
5
5
|
var linkHelper = require('./link-helper-DwlfFJVL.js');
|
|
6
6
|
var getIconProps = require('./get-icon-props-CwpDdQDI.js');
|
|
7
7
|
var makeEnterClickable = require('./make-enter-clickable-NuTMC9MU.js');
|
|
8
|
-
var translations = require('./translations-
|
|
8
|
+
var translations = require('./translations-DFFpR6AZ.js');
|
|
9
9
|
var keycodes = require('./keycodes-k-EdzcMX.js');
|
|
10
10
|
var isEmpty = require('./isEmpty-CCxl3bYc.js');
|
|
11
11
|
require('./language-CaqPKPyW.js');
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
var index = require('./index--B6-r0uo.js');
|
|
4
4
|
var randomString = require('./random-string-BTzDB2ee.js');
|
|
5
5
|
var _commonjsHelpers = require('./_commonjsHelpers-CFO10eej.js');
|
|
6
|
-
var translations = require('./translations-
|
|
6
|
+
var translations = require('./translations-DFFpR6AZ.js');
|
|
7
7
|
require('./language-CaqPKPyW.js');
|
|
8
8
|
|
|
9
9
|
var codemirror$1 = {exports: {}};
|
|
@@ -5,7 +5,7 @@ var dispatchResizeEvent = require('./dispatch-resize-event-DH5CaB3p.js');
|
|
|
5
5
|
var makeEnterClickable = require('./make-enter-clickable-NuTMC9MU.js');
|
|
6
6
|
var randomString = require('./random-string-BTzDB2ee.js');
|
|
7
7
|
var getIconProps = require('./get-icon-props-CwpDdQDI.js');
|
|
8
|
-
var translations = require('./translations-
|
|
8
|
+
var translations = require('./translations-DFFpR6AZ.js');
|
|
9
9
|
require('./language-CaqPKPyW.js');
|
|
10
10
|
|
|
11
11
|
const collapsibleSectionCss = () => `@charset "UTF-8";.expand-icon{position:relative;display:flex;align-items:center;justify-content:center;height:1.875rem;margin:0 0 0 0.5rem;width:0.75rem;flex-shrink:0}.line{position:absolute;inset:auto;margin:auto;width:100%;border-radius:1rem;height:0.125rem}.line:first-of-type,.line:last-of-type{transition:opacity 0.2s ease 0.1s, transform 0.4s ease 0.3s;opacity:0;background-color:var(--header-stroke-color, rgb(var(--contrast-900)))}.line:nth-of-type(2){transform:translate3d(0, 0.25rem, 0) rotate(90deg)}.line:nth-of-type(3){transform:translate3d(0, -0.25rem, 0) rotate(-90deg)}.line:nth-of-type(2),.line:nth-of-type(3){transition:opacity 0.2s ease, transform 0.18s ease}.line:nth-of-type(2):before,.line:nth-of-type(2):after,.line:nth-of-type(3):before,.line:nth-of-type(3):after{content:"";position:absolute;inset:0;margin:auto;width:50%;height:100%;border-radius:inherit;background-color:var(--header-stroke-color, rgb(var(--contrast-900)))}.line:nth-of-type(2):before,.line:nth-of-type(3):before{transform:translate3d(0, -0.1rem, 0) rotate(45deg)}.line:nth-of-type(2):after,.line:nth-of-type(3):after{transform:translate3d(0, 0.1rem, 0) rotate(-45deg)}.open-close-toggle:hover+.expand-icon .line:first-of-type,.open-close-toggle:hover+.expand-icon .line:last-of-type,.open-close-toggle:focus-visible+.expand-icon .line:first-of-type,.open-close-toggle:focus-visible+.expand-icon .line:last-of-type{transition:opacity 0.8s ease 0.4s, transform 0.4s ease 0.3s;opacity:1}.open-close-toggle:hover+.expand-icon .line:first-of-type,.open-close-toggle:focus-visible+.expand-icon .line:first-of-type{transform:rotate3d(0, 0, 1, 0deg)}.open-close-toggle:hover+.expand-icon .line:last-of-type,.open-close-toggle:focus-visible+.expand-icon .line:last-of-type{transform:rotate3d(0, 0, 1, 0deg)}.open-close-toggle:hover+.expand-icon .line:nth-of-type(2),.open-close-toggle:hover+.expand-icon .line:nth-of-type(3),.open-close-toggle:focus-visible+.expand-icon .line:nth-of-type(2),.open-close-toggle:focus-visible+.expand-icon .line:nth-of-type(3){transition:opacity 0.5s ease 0.4s, transform 0.7s cubic-bezier(0.85, 0.11, 0.14, 1.35) 0.2s}.open-close-toggle:hover+.expand-icon .line:nth-of-type(2),.open-close-toggle:focus-visible+.expand-icon .line:nth-of-type(2){transform:translate3d(0, 0.5rem, 0) rotate(90deg);opacity:0.4}.open-close-toggle:hover+.expand-icon .line:nth-of-type(3),.open-close-toggle:focus-visible+.expand-icon .line:nth-of-type(3){transform:translate3d(0, -0.5rem, 0) rotate(-90deg);opacity:0.4}section.open .line:first-of-type,section.open .line:last-of-type{transition:opacity 0.2s ease 0.1s, transform 0.4s ease 0.3s;opacity:1}section.open .line:first-of-type{transform:rotate3d(0, 0, 1, 0deg)}section.open .line:last-of-type{transform:rotate3d(0, 0, 1, 0deg)}section.open .line:nth-of-type(2),section.open .line:nth-of-type(3){transition:opacity 1s ease, transform 0.4s ease}section.open .line:nth-of-type(2){transform:translate3d(0, 1rem, 0) rotate(90deg);opacity:0}section.open .line:nth-of-type(3){transform:translate3d(0, -1rem, 0) rotate(-90deg);opacity:0}section.open .open-close-toggle:hover+.expand-icon .line:first-of-type,section.open .open-close-toggle:hover+.expand-icon .line:last-of-type,section.open .open-close-toggle:focus-visible+.expand-icon .line:first-of-type,section.open .open-close-toggle:focus-visible+.expand-icon .line:last-of-type{transition:opacity 0.2s ease 0.4s, transform 0.4s cubic-bezier(0.85, 0.11, 0.14, 1.35) 0.2s}section.open .open-close-toggle:hover+.expand-icon .line:first-of-type,section.open .open-close-toggle:focus-visible+.expand-icon .line:first-of-type{transform:rotate3d(0, 0, 1, 45deg)}section.open .open-close-toggle:hover+.expand-icon .line:last-of-type,section.open .open-close-toggle:focus-visible+.expand-icon .line:last-of-type{transform:rotate3d(0, 0, 1, -45deg)}section.open .open-close-toggle:hover+.expand-icon .line:nth-of-type(2),section.open .open-close-toggle:focus-visible+.expand-icon .line:nth-of-type(2){transform:translate3d(0, 1rem, 0) rotate(90deg);opacity:0}section.open .open-close-toggle:hover+.expand-icon .line:nth-of-type(3),section.open .open-close-toggle:focus-visible+.expand-icon .line:nth-of-type(3){transform:translate3d(0, -1rem, 0) rotate(-90deg);opacity:0}:host(limel-collapsible-section){--border-radius-of-header:0.75rem;display:block}:host([hidden]){display:none}button.open-close-toggle{appearance:none;background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;text-align:inherit;position:absolute;inset:0;width:100%}button.open-close-toggle:focus{outline:none}button.open-close-toggle:focus-visible{outline:none;box-shadow:var(--shadow-depth-8-focused)}button.open-close-toggle{transition:background-color 0.4s ease, border-radius 0.1s ease;cursor:pointer;z-index:-1;background-color:var(--closed-header-background-color, rgb(var(--contrast-200)));border-radius:var(--border-radius-of-header)}button.open-close-toggle:hover,button.open-close-toggle:focus-visible{background-color:var(--open-header-background-color, rgb(var(--contrast-300)))}section.open button.open-close-toggle{background-color:var(--open-header-background-color, rgb(var(--contrast-100)));border-radius:var(--border-radius-of-header) var(--border-radius-of-header) var(--limel-cs-open-header-bottom-border-radius, 0) var(--limel-cs-open-header-bottom-border-radius, 0)}section.open button.open-close-toggle:hover,section.open button.open-close-toggle:focus-visible{background-color:var(--open-header-background-color, rgb(var(--contrast-300)))}.title,.divider-line,.expand-icon{pointer-events:none}section{transition:box-shadow 0.4s ease;border-radius:var(--border-radius-of-header)}section[aria-invalid]:not([aria-invalid=false]){--header-stroke-color:rgb(var(--color-red-default)) !important}section[aria-invalid]:not([aria-invalid=false]):not(.open){box-shadow:0 0 0 1px rgb(var(--color-red-default))}header{isolation:isolate;position:relative;align-items:center;display:flex;justify-content:space-between;gap:0.5rem;padding-left:0.5rem;height:2.5rem}limel-icon{width:1.5rem;flex-shrink:0}.title{font-size:1rem;font-weight:300;color:var(--limel-theme-on-surface-color);justify-self:flex-start;user-select:none;height:auto;max-height:3rem;line-height:1.2rem;display:-webkit-box;overflow:hidden;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.divider-line{transition:opacity 0.3s ease 0.3s;flex-grow:1;height:0.125rem;border-radius:1rem;background-color:var(--header-stroke-color, rgb(var(--contrast-900)));opacity:0;margin-right:0.5rem}section.open .divider-line{opacity:0.16}.actions{justify-self:flex-end;flex-shrink:0}::slotted([slot=header]){margin-right:0.5rem}.body{background-color:var(--body-background-color, var(--contrast-100));padding-left:var(--body-padding, 1.25rem);padding-right:var(--body-padding, 1.25rem);border-radius:0 0 var(--border-radius-of-header) var(--border-radius-of-header)}.body{transition:grid-template-rows var(--limel-cs-grid-template-rows-transition-speed) cubic-bezier(1, 0.09, 0, 0.89);display:grid;grid-template-rows:var(--limel-cs-grid-template-rows)}.body slot{transition:opacity var(--limel-cs-opacity-transition-speed) ease var(--limel-cs-opacity-transition-delay);display:block;overflow:hidden}:host(limel-collapsible-section:not([is-open])){--limel-cs-opacity-transition-speed:0.1s;--limel-cs-opacity-transition-delay:0s;--limel-cs-grid-template-rows-transition-speed:0.3s;--limel-cs-grid-template-rows:0fr}:host(limel-collapsible-section:not([is-open])) slot{opacity:0}:host(limel-collapsible-section[is-open]){--limel-cs-opacity-transition-speed:0.4s;--limel-cs-opacity-transition-delay:0.3s;--limel-cs-grid-template-rows-transition-speed:0.46s;--limel-cs-grid-template-rows:1fr}:host(limel-collapsible-section[is-open]) slot{opacity:1}header:hover+.body,header:has(.open-close-toggle:hover)+.body,header:has(.open-close-toggle:focus-visible)+.body{will-change:grid-template-rows}header:hover+.body slot,header:has(.open-close-toggle:hover)+.body slot,header:has(.open-close-toggle:focus-visible)+.body slot{will-change:opacity}`;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var index = require('./index--B6-r0uo.js');
|
|
4
|
-
var translations = require('./translations-
|
|
4
|
+
var translations = require('./translations-DFFpR6AZ.js');
|
|
5
5
|
require('./language-CaqPKPyW.js');
|
|
6
6
|
|
|
7
7
|
const dragHandleCss = () => `@charset "UTF-8";limel-drag-handle{display:inline-flex;align-items:center;justify-content:center}button.limel-drag-handle{appearance:none;background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;text-align:inherit}button.limel-drag-handle:focus{outline:none}button.limel-drag-handle:focus-visible{outline:none;box-shadow:var(--shadow-depth-8-focused)}button.limel-drag-handle{transition:color var(--limel-clickable-transition-speed, 0.4s) ease, background-color var(--limel-clickable-transition-speed, 0.4s) ease, box-shadow var(--limel-clickable-transform-speed, 0.4s) ease, transform var(--limel-clickable-transform-speed, 0.4s) var(--limel-clickable-transform-timing-function, ease);cursor:pointer;color:var(--limel-theme-on-surface-color);background-color:transparent}button.limel-drag-handle:hover,button.limel-drag-handle:focus,button.limel-drag-handle:focus-visible{will-change:color, background-color, box-shadow, transform}button.limel-drag-handle:hover,button.limel-drag-handle:focus-visible{transform:translate3d(0, 0.01rem, 0);color:var(--mdc-theme-primary);background-color:transparent}button.limel-drag-handle:hover{box-shadow:var(--button-shadow-hovered)}button.limel-drag-handle:active{--limel-clickable-transform-timing-function:cubic-bezier( 0.83, -0.15, 0.49, 1.16 );transform:translate3d(0, 0.05rem, 0);box-shadow:var(--button-shadow-pressed)}button.limel-drag-handle:hover,button.limel-drag-handle:active{--limel-clickable-transition-speed:0.2s;--limel-clickable-transform-speed:0.16s}button.limel-drag-handle{touch-action:none;cursor:grab}button.limel-drag-handle:active{cursor:grabbing}button.limel-drag-handle:active,button.limel-drag-handle:hover{box-shadow:none !important}button.limel-drag-handle{display:inline-flex;align-items:center;justify-content:center;border-radius:0.4rem;padding:0.5rem;max-height:2.25rem;max-width:2.25rem;color:rgb(var(--contrast-900))}button.limel-drag-handle .drag-icon{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0.2rem}limel-drag-handle[drag-direction=horizontal] button.limel-drag-handle .drag-icon{grid-template-columns:1fr 1fr}button.limel-drag-handle .drag-icon div{transition:transform 0.2s ease, background-color 0.2s ease;height:0.125rem;width:0.125rem;border-radius:1rem;background-color:currentColor;transform:scale(1)}.is-being-dragged button.limel-drag-handle .drag-icon div,button.limel-drag-handle:active .drag-icon div,button.limel-drag-handle:focus .drag-icon div,button.limel-drag-handle:hover .drag-icon div,button.limel-drag-handle:focus-visible .drag-icon div{background-color:var(--mdc-theme-primary);transform:scale(1.5)}`;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var index = require('./index--B6-r0uo.js');
|
|
4
|
-
var translations = require('./translations-
|
|
4
|
+
var translations = require('./translations-DFFpR6AZ.js');
|
|
5
5
|
var formatBytes = require('./format-bytes-CpUKKU86.js');
|
|
6
6
|
var adaptColorContrast = require('./adapt-color-contrast-Beo1IEl_.js');
|
|
7
7
|
var icons = require('./icons-isR5V1X0.js');
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var index$1 = require('./index--B6-r0uo.js');
|
|
4
|
-
var translations = require('./translations-
|
|
4
|
+
var translations = require('./translations-DFFpR6AZ.js');
|
|
5
5
|
var index = require('./index-ETPz91V5.js');
|
|
6
6
|
var image_template = require('./image.template-DY7qwbuy.js');
|
|
7
7
|
require('./language-CaqPKPyW.js');
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var index = require('./index--B6-r0uo.js');
|
|
4
|
-
var translations = require('./translations-
|
|
4
|
+
var translations = require('./translations-DFFpR6AZ.js');
|
|
5
5
|
var fileMetadata = require('./file-metadata-BrhOssGG.js');
|
|
6
6
|
var formatBytes = require('./format-bytes-CpUKKU86.js');
|
|
7
7
|
var imageResize = require('./image-resize-CG2fitJT.js');
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var index = require('./index--B6-r0uo.js');
|
|
4
|
-
var translations = require('./translations-
|
|
4
|
+
var translations = require('./translations-DFFpR6AZ.js');
|
|
5
5
|
var _commonjsHelpers = require('./_commonjsHelpers-CFO10eej.js');
|
|
6
6
|
require('./sv-BSR4W58y.js');
|
|
7
7
|
var moment = require('./moment-CqRdiK10.js');
|
|
@@ -0,0 +1,454 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var index = require('./index--B6-r0uo.js');
|
|
4
|
+
var component = require('./component-UyqdiWGc.js');
|
|
5
|
+
require('./ponyfill-BgIFyUG5.js');
|
|
6
|
+
|
|
7
|
+
const helperLineCss = () => `:host(limel-helper-line){transition:opacity 0.2s ease;box-sizing:border-box;display:grid;min-width:0;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-size:0.6875rem;line-height:normal;color:rgb(var(--contrast-1200))}div{display:flex;justify-content:space-between;gap:0.75rem;overflow:hidden;padding:0 1rem}:host(limel-helper-line.invalid){--limel-h-l-grid-template-rows-transition-speed:0.46s;--limel-h-l-grid-template-rows:1fr}:host(limel-helper-line.invalid) .helper-text{color:var(--limel-theme-error-color)}.counter{flex-shrink:0;margin-left:auto}.helper-text,.counter{padding-top:0.125rem}:host(limel-helper-line){transition:grid-template-rows var(--limel-h-l-grid-template-rows-transition-speed, 0.46s) cubic-bezier(1, 0.09, 0, 0.89);grid-template-rows:var(--limel-h-l-grid-template-rows, 1fr)}:host(limel-helper-line.hide){--limel-h-l-grid-template-rows-transition-speed:0.3s;--limel-h-l-grid-template-rows:0fr}`;
|
|
8
|
+
|
|
9
|
+
const HelperLine = class {
|
|
10
|
+
constructor(hostRef) {
|
|
11
|
+
index.registerInstance(this, hostRef);
|
|
12
|
+
/**
|
|
13
|
+
* Turns `true`, when the parent component is invalid.
|
|
14
|
+
* For example, when the parent component is `required` but is left empty.
|
|
15
|
+
* Or when the input format is invalid.
|
|
16
|
+
*/
|
|
17
|
+
this.invalid = false;
|
|
18
|
+
this.hasContent = () => {
|
|
19
|
+
return !!(this.maxLength > 0 ||
|
|
20
|
+
(this.helperText && this.helperText.length > 0));
|
|
21
|
+
};
|
|
22
|
+
this.renderHelperText = () => {
|
|
23
|
+
if (!this.helperText) {
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
return (index.h("span", { class: "helper-text", id: this.helperTextId }, this.helperText));
|
|
27
|
+
};
|
|
28
|
+
this.renderCharacterCounter = () => {
|
|
29
|
+
const counter = `${this.length} / ${this.maxLength}`;
|
|
30
|
+
if (!this.maxLength) {
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
return index.h("span", { class: "counter" }, counter);
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
render() {
|
|
37
|
+
return (index.h(index.Host, { key: '5ecd83d58e8412274b36def796d0a9c24b67e582', tabIndex: -1, class: {
|
|
38
|
+
invalid: this.invalid,
|
|
39
|
+
}, style: this.hasContent() ? {} : { display: 'none' }, "aria-hidden": !this.hasContent() }, index.h("div", { key: 'f10706f6e5f7be45da53a58a13b44a936eb091b4' }, this.renderHelperText(), this.renderCharacterCounter())));
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
HelperLine.style = helperLineCss();
|
|
43
|
+
|
|
44
|
+
class ListRenderer {
|
|
45
|
+
constructor() {
|
|
46
|
+
this.defaultConfig = {
|
|
47
|
+
isOpen: true,
|
|
48
|
+
badgeIcons: false,
|
|
49
|
+
};
|
|
50
|
+
/**
|
|
51
|
+
* `aria-orientation` is valid for `listbox` and `radiogroup`,
|
|
52
|
+
* but not for group (used for checkboxes).
|
|
53
|
+
* @param role
|
|
54
|
+
*/
|
|
55
|
+
this.getAriaOrientation = (role) => {
|
|
56
|
+
if (role === 'listbox' || role === 'radiogroup') {
|
|
57
|
+
return 'vertical';
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
return null;
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
/**
|
|
64
|
+
* Determine which ListItem should have the `tab-index` attribute set,
|
|
65
|
+
* and return the index at which that ListItem is located in `items`.
|
|
66
|
+
* Returns `undefined` if no item should have the attribute set.
|
|
67
|
+
* See https://github.com/material-components/material-components-web/tree/e66a43a75fef4f9179e24856649518e15e279a04/packages/mdc-list#accessibility
|
|
68
|
+
*
|
|
69
|
+
* @param items - the items of the list, including any `ListSeparator`:s
|
|
70
|
+
* @returns the index as per the description
|
|
71
|
+
*/
|
|
72
|
+
this.getIndexForWhichToApplyTabIndex = (items) => {
|
|
73
|
+
let result;
|
|
74
|
+
for (let i = 0, max = items.length; i < max; i += 1) {
|
|
75
|
+
if ('separator' in items[i]) ;
|
|
76
|
+
else {
|
|
77
|
+
const item = items[i];
|
|
78
|
+
if (item.disabled) {
|
|
79
|
+
// Skip disabled items - they should never get tabindex
|
|
80
|
+
continue;
|
|
81
|
+
}
|
|
82
|
+
if (item.selected) {
|
|
83
|
+
result = i;
|
|
84
|
+
break;
|
|
85
|
+
}
|
|
86
|
+
if (result === undefined) {
|
|
87
|
+
result = i;
|
|
88
|
+
// Do NOT break, as any later item with
|
|
89
|
+
// `selected=true` should get the tab-index instead!
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
return result;
|
|
94
|
+
};
|
|
95
|
+
/**
|
|
96
|
+
* Render a single list item
|
|
97
|
+
*
|
|
98
|
+
* @param item - the item to render
|
|
99
|
+
* @param index - the index the item had in the `items` array
|
|
100
|
+
* @returns the list item
|
|
101
|
+
*/
|
|
102
|
+
this.renderListItem = (item, index$1) => {
|
|
103
|
+
var _a;
|
|
104
|
+
if ('separator' in item) {
|
|
105
|
+
return (index.h("li", { class: "mdc-deprecated-list-divider", role: "separator", key: `sep-${index$1}` }, this.renderTextForSeparator(item), index.h("div", { class: "limel-list-divider-line" })));
|
|
106
|
+
}
|
|
107
|
+
const attributes = {};
|
|
108
|
+
if (index$1 === this.applyTabIndexToItemAtIndex) {
|
|
109
|
+
attributes.tabindex = '0';
|
|
110
|
+
}
|
|
111
|
+
let itemType;
|
|
112
|
+
if (this.config.type === 'radio' || this.config.type === 'checkbox') {
|
|
113
|
+
itemType = this.config.type;
|
|
114
|
+
}
|
|
115
|
+
else if (this.config.type === 'selectable') {
|
|
116
|
+
itemType = 'option';
|
|
117
|
+
}
|
|
118
|
+
else {
|
|
119
|
+
itemType = 'listitem';
|
|
120
|
+
}
|
|
121
|
+
const key = (_a = item.id) !== null && _a !== void 0 ? _a : `item-${index$1}`;
|
|
122
|
+
const classNames = {
|
|
123
|
+
'mdc-deprecated-list-item': true, // required for keyboard navigation with arrow keys
|
|
124
|
+
'mdc-deprecated-list-item--disabled': !!item.disabled, // MDC’s foundation checks for the disabled class before toggling selected state
|
|
125
|
+
};
|
|
126
|
+
return (index.h("limel-list-item", Object.assign({ key: key, class: classNames }, attributes, { "data-index": index$1, type: itemType, text: item.text, secondaryText: item.secondaryText, icon: item.icon, image: item.image, primaryComponent: item.primaryComponent, badgeIcon: this.config.badgeIcons, iconSize: this.config.iconSize, selected: item.selected, disabled: item.disabled, actions: item.actions })));
|
|
127
|
+
};
|
|
128
|
+
this.renderTextForSeparator = (item) => {
|
|
129
|
+
if ('text' in item) {
|
|
130
|
+
return index.h("h2", { class: "limel-list-divider-title" }, item.text);
|
|
131
|
+
}
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
render(items, config = {}) {
|
|
135
|
+
items = items || [];
|
|
136
|
+
this.config = Object.assign(Object.assign({}, this.defaultConfig), config);
|
|
137
|
+
let role;
|
|
138
|
+
switch (this.config.type) {
|
|
139
|
+
case 'checkbox': {
|
|
140
|
+
role = 'group';
|
|
141
|
+
break;
|
|
142
|
+
}
|
|
143
|
+
case 'radio': {
|
|
144
|
+
role = 'radiogroup';
|
|
145
|
+
break;
|
|
146
|
+
}
|
|
147
|
+
default: {
|
|
148
|
+
role = 'listbox';
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
this.applyTabIndexToItemAtIndex =
|
|
152
|
+
this.getIndexForWhichToApplyTabIndex(items);
|
|
153
|
+
return (index.h("ul", { class: "mdc-deprecated-list", role: role, "aria-orientation": this.getAriaOrientation(role) }, items.map(this.renderListItem)));
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
const listCss = () => `@charset "UTF-8";:host(.has-striped-rows) .mdc-deprecated-list{border:1px solid rgb(var(--contrast-400))}:host(.has-striped-rows) limel-list-item:not([disabled]):not([disabled=true]):not(:hover):nth-child(even),:host(.has-striped-rows.has-interactive-items) limel-list-item:not([disabled]):not([disabled=true]):not(:hover):nth-child(even){background-color:var(--list-background-color-of-odd-interactive-items, rgb(var(--contrast-200)))}:host(.has-striped-rows) limel-list-item:not([disabled]):not([disabled=true]):not(:hover):nth-child(odd),:host(.has-striped-rows.has-interactive-items) limel-list-item:not([disabled]):not([disabled=true]):not(:hover):nth-child(odd){background-color:var(--list-background-color-of-even-interactive-items, rgb(var(--contrast-100)))}:host(.has-interactive-items) limel-list-item:not([disabled]):not([disabled=true]){transition:color var(--limel-clickable-transition-speed, 0.4s) ease, background-color var(--limel-clickable-transition-speed, 0.4s) ease, box-shadow var(--limel-clickable-transform-speed, 0.4s) ease, transform var(--limel-clickable-transform-speed, 0.4s) var(--limel-clickable-transform-timing-function, ease);cursor:pointer;color:var(--limel-theme-on-surface-color);background-color:transparent}:host(.has-interactive-items) limel-list-item:not([disabled]):not([disabled=true]):hover,:host(.has-interactive-items) limel-list-item:not([disabled]):not([disabled=true]):focus,:host(.has-interactive-items) limel-list-item:not([disabled]):not([disabled=true]):focus-visible{will-change:color, background-color, box-shadow, transform}:host(.has-interactive-items) limel-list-item:not([disabled]):not([disabled=true]):hover,:host(.has-interactive-items) limel-list-item:not([disabled]):not([disabled=true]):focus-visible{transform:translate3d(0, 0.01rem, 0);color:var(--limel-theme-on-surface-color);background-color:var(--lime-elevated-surface-background-color)}:host(.has-interactive-items) limel-list-item:not([disabled]):not([disabled=true]):hover{box-shadow:var(--button-shadow-hovered)}:host(.has-interactive-items) limel-list-item:not([disabled]):not([disabled=true]):active{--limel-clickable-transform-timing-function:cubic-bezier( 0.83, -0.15, 0.49, 1.16 );transform:translate3d(0, 0.05rem, 0);box-shadow:var(--button-shadow-pressed)}:host(.has-interactive-items) limel-list-item:not([disabled]):not([disabled=true]):hover,:host(.has-interactive-items) limel-list-item:not([disabled]):not([disabled=true]):active{--limel-clickable-transition-speed:0.2s;--limel-clickable-transform-speed:0.16s}:host(.has-grid-layout){--gap:var(--list-grid-gap, 0.5rem);padding:var(--gap);}:host(.has-grid-layout) .mdc-deprecated-list{display:grid;gap:var(--gap);grid-template-columns:repeat(auto-fit, minmax(min(100%, max(var(--list-grid-item-max-width, 10rem) - var(--gap), var(--list-grid-item-min-width, 7.5rem))), 1fr));max-width:var(--list-grid-max-width, 100%)}:host(.has-grid-layout) .mdc-deprecated-list limel-list-item{border-radius:var(--limel-list-border-radius) !important}:host(.has-grid-layout) .mdc-deprecated-list-divider{grid-column:1/-1}:host(.static-actions-list){z-index:1;background-color:var(--limel-theme-surface-background-color)}:host(.has-position-sticky){position:sticky;box-shadow:0 0 0.75rem 0.5rem var(--limel-theme-surface-background-color)}:host(.has-position-sticky.is-on-top){top:0}:host(.has-position-sticky.is-at-bottom){bottom:0}:host(.is-on-top){border-bottom:1px solid rgb(var(--contrast-400));margin-bottom:0.5rem;padding-bottom:0.25rem}:host(.is-at-bottom){border-top:1px solid rgb(var(--contrast-400));margin-top:0.5rem;padding-top:0.25rem}:host(limel-list){--limel-list-border-radius:0.5rem;display:block;isolation:isolate}:host([hidden]){display:none}ul{--mdc-theme-text-icon-on-background:var( --icon-color, rgb(var(--contrast-900)) );margin:var(--list-margin, 0.25rem);border-radius:var(--limel-list-border-radius);padding:0;list-style:none}.mdc-deprecated-list-divider{border-bottom-color:transparent;display:flex;align-items:center;gap:0.75rem;height:auto;padding:0 0.25rem;margin-bottom:0.5rem}.mdc-deprecated-list-divider:not(:first-child){margin-top:0.75rem}:host(.has-striped-rows) .mdc-deprecated-list-divider{margin-top:0.5rem}.limel-list-divider-line{background-color:rgb(var(--contrast-400));height:0.125rem;border-radius:1rem;min-width:1rem;flex-grow:1}.limel-list-divider-title{all:unset;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:rgb(var(--contrast-900));font-size:var(--limel-theme-default-small-font-size)}`;
|
|
158
|
+
|
|
159
|
+
const { ACTION_EVENT } = component.strings;
|
|
160
|
+
const List = class {
|
|
161
|
+
constructor(hostRef) {
|
|
162
|
+
index.registerInstance(this, hostRef);
|
|
163
|
+
this.change = index.createEvent(this, "change", 7);
|
|
164
|
+
this.select = index.createEvent(this, "select", 7);
|
|
165
|
+
this.interact = index.createEvent(this, "interact", 7);
|
|
166
|
+
/**
|
|
167
|
+
* Size of the icons in the list
|
|
168
|
+
*/
|
|
169
|
+
this.iconSize = 'small';
|
|
170
|
+
/**
|
|
171
|
+
* By default, lists will display 3 lines of text, and then truncate the rest.
|
|
172
|
+
* Consumers can increase or decrease this number by specifying
|
|
173
|
+
* `maxLinesSecondaryText`. If consumer enters zero or negative
|
|
174
|
+
* numbers we default to 1; and if they type decimals we round up.
|
|
175
|
+
*/
|
|
176
|
+
this.maxLinesSecondaryText = 3;
|
|
177
|
+
this.listRenderer = new ListRenderer();
|
|
178
|
+
this.setup = () => {
|
|
179
|
+
this.setupList();
|
|
180
|
+
this.setupListeners();
|
|
181
|
+
};
|
|
182
|
+
this.setupList = () => {
|
|
183
|
+
if (this.mdcList) {
|
|
184
|
+
this.teardown();
|
|
185
|
+
this.mdcList = null;
|
|
186
|
+
}
|
|
187
|
+
const element = this.element.shadowRoot.querySelector('.mdc-deprecated-list');
|
|
188
|
+
if (!element) {
|
|
189
|
+
return;
|
|
190
|
+
}
|
|
191
|
+
this.listElement = element;
|
|
192
|
+
this.listElement.removeEventListener('mousedown', this.handleItemMouseDown);
|
|
193
|
+
this.listElement.addEventListener('mousedown', this.handleItemMouseDown);
|
|
194
|
+
this.mdcList = new component.MDCList(element);
|
|
195
|
+
// NOTE: This has no effect. It is kept as a marker rather than
|
|
196
|
+
// removed, so that its absence isn't mistaken for an oversight.
|
|
197
|
+
//
|
|
198
|
+
// MDC indexes each row for typeahead by looking for
|
|
199
|
+
// `.mdc-deprecated-list-item__primary-text` inside it, while
|
|
200
|
+
// `limel-list-item` renders its label as `<span class="label">`. MDC
|
|
201
|
+
// therefore builds an empty index, and typing does nothing.
|
|
202
|
+
//
|
|
203
|
+
// Do not "fix" this by adding MDC's class name to `limel-list-item`.
|
|
204
|
+
// That revives MDC's typeahead along with three behaviors that cannot
|
|
205
|
+
// be configured from the outside: a hard coded 300ms buffer, `Enter`
|
|
206
|
+
// being ignored for as long as that buffer lives (its `notifyAction`
|
|
207
|
+
// is guarded by `isTypeaheadInProgress`), and the space bar being
|
|
208
|
+
// excluded from matches. It would also collide with `limel-menu`,
|
|
209
|
+
// where single characters are used as item hotkeys.
|
|
210
|
+
//
|
|
211
|
+
// `limel-select` implements its own typeahead instead, see
|
|
212
|
+
// `src/util/typeahead.ts`. It intercepts typed characters in the
|
|
213
|
+
// capture phase on this very element, so they never reach MDC.
|
|
214
|
+
this.mdcList.hasTypeahead = true;
|
|
215
|
+
};
|
|
216
|
+
/**
|
|
217
|
+
* Focus the pressed list item directly, without scrolling.
|
|
218
|
+
*
|
|
219
|
+
* Since the list uses `delegatesFocus`, pressing a non-focusable part of
|
|
220
|
+
* a list item (e.g. its text) would otherwise delegate focus to the first
|
|
221
|
+
* focusable row, scrolling it into view. In a scrolled list that moves the
|
|
222
|
+
* pressed row out from under the pointer before the click completes, so the
|
|
223
|
+
* click lands on empty space and no item gets selected.
|
|
224
|
+
*
|
|
225
|
+
* Bound to `mousedown` only (not `pointerdown`) so a touch-drag to scroll
|
|
226
|
+
* that starts on a row is not blocked by `preventDefault`.
|
|
227
|
+
*
|
|
228
|
+
* @param event - the mousedown event
|
|
229
|
+
*/
|
|
230
|
+
this.handleItemMouseDown = (event) => {
|
|
231
|
+
var _a;
|
|
232
|
+
const target = event.target;
|
|
233
|
+
const itemElement = (_a = target === null || target === void 0 ? void 0 : target.closest) === null || _a === void 0 ? void 0 : _a.call(target, '.mdc-deprecated-list-item');
|
|
234
|
+
if (!itemElement) {
|
|
235
|
+
return;
|
|
236
|
+
}
|
|
237
|
+
// Suppress the default focus delegation (and its scroll) for any row,
|
|
238
|
+
// but only move focus to interactive (non-disabled) rows.
|
|
239
|
+
event.preventDefault();
|
|
240
|
+
if (!itemElement.classList.contains('mdc-deprecated-list-item--disabled')) {
|
|
241
|
+
itemElement.focus({ preventScroll: true });
|
|
242
|
+
}
|
|
243
|
+
};
|
|
244
|
+
this.setupListeners = () => {
|
|
245
|
+
if (!this.mdcList) {
|
|
246
|
+
return;
|
|
247
|
+
}
|
|
248
|
+
this.mdcList.unlisten(ACTION_EVENT, this.handleAction);
|
|
249
|
+
this.selectable = ['selectable', 'radio', 'checkbox'].includes(this.type);
|
|
250
|
+
this.multiple = this.type === 'checkbox';
|
|
251
|
+
if (!this.selectable) {
|
|
252
|
+
return;
|
|
253
|
+
}
|
|
254
|
+
this.mdcList.listen(ACTION_EVENT, this.handleAction);
|
|
255
|
+
this.mdcList.singleSelection = !this.multiple;
|
|
256
|
+
};
|
|
257
|
+
this.teardown = () => {
|
|
258
|
+
var _a, _b, _c;
|
|
259
|
+
(_a = this.listElement) === null || _a === void 0 ? void 0 : _a.removeEventListener('mousedown', this.handleItemMouseDown);
|
|
260
|
+
(_b = this.mdcList) === null || _b === void 0 ? void 0 : _b.unlisten(ACTION_EVENT, this.handleAction);
|
|
261
|
+
(_c = this.mdcList) === null || _c === void 0 ? void 0 : _c.destroy();
|
|
262
|
+
};
|
|
263
|
+
this.handleAction = (event) => {
|
|
264
|
+
if (!this.multiple) {
|
|
265
|
+
this.handleSingleSelect(event.detail.index);
|
|
266
|
+
return;
|
|
267
|
+
}
|
|
268
|
+
this.handleMultiSelect(event.detail.index);
|
|
269
|
+
};
|
|
270
|
+
this.handleSingleSelect = (index) => {
|
|
271
|
+
const listItems = this.items.filter(this.isListItem);
|
|
272
|
+
if (listItems[index].disabled) {
|
|
273
|
+
return;
|
|
274
|
+
}
|
|
275
|
+
const selectedItem = listItems.find((item) => {
|
|
276
|
+
return !!item.selected;
|
|
277
|
+
});
|
|
278
|
+
let interactedItem;
|
|
279
|
+
if (selectedItem) {
|
|
280
|
+
if (this.type !== 'radio') {
|
|
281
|
+
this.mdcList.selectedIndex = -1;
|
|
282
|
+
}
|
|
283
|
+
interactedItem = Object.assign(Object.assign({}, selectedItem), { selected: false });
|
|
284
|
+
this.change.emit(interactedItem);
|
|
285
|
+
}
|
|
286
|
+
if (listItems[index] !== selectedItem) {
|
|
287
|
+
interactedItem = Object.assign(Object.assign({}, listItems[index]), { selected: true });
|
|
288
|
+
this.change.emit(interactedItem);
|
|
289
|
+
}
|
|
290
|
+
this.interact.emit(interactedItem);
|
|
291
|
+
};
|
|
292
|
+
this.handleMultiSelect = (index) => {
|
|
293
|
+
const listItems = this.items.filter(this.isListItem);
|
|
294
|
+
if (listItems[index].disabled) {
|
|
295
|
+
return;
|
|
296
|
+
}
|
|
297
|
+
const selectedItems = listItems
|
|
298
|
+
.filter((item, listIndex) => {
|
|
299
|
+
if (listIndex === index) {
|
|
300
|
+
// This is the item that was selected or deselected,
|
|
301
|
+
// so we negate its previous selection status.
|
|
302
|
+
return !item.selected;
|
|
303
|
+
}
|
|
304
|
+
// This is an item that didn't change, so we keep its selection status.
|
|
305
|
+
return item.selected;
|
|
306
|
+
})
|
|
307
|
+
.map((item) => {
|
|
308
|
+
return Object.assign(Object.assign({}, item), { selected: true });
|
|
309
|
+
});
|
|
310
|
+
this.change.emit(selectedItems);
|
|
311
|
+
this.interact.emit(Object.assign({}, selectedItems[index]));
|
|
312
|
+
};
|
|
313
|
+
this.isListItem = (item) => {
|
|
314
|
+
return !('separator' in item);
|
|
315
|
+
};
|
|
316
|
+
}
|
|
317
|
+
connectedCallback() {
|
|
318
|
+
this.setup();
|
|
319
|
+
}
|
|
320
|
+
disconnectedCallback() {
|
|
321
|
+
this.teardown();
|
|
322
|
+
}
|
|
323
|
+
componentDidLoad() {
|
|
324
|
+
this.setup();
|
|
325
|
+
this.triggerIconColorWarning();
|
|
326
|
+
}
|
|
327
|
+
render() {
|
|
328
|
+
var _a;
|
|
329
|
+
this.config = {
|
|
330
|
+
badgeIcons: this.badgeIcons,
|
|
331
|
+
type: this.type,
|
|
332
|
+
iconSize: this.iconSize,
|
|
333
|
+
};
|
|
334
|
+
let maxLinesSecondaryText = +((_a = this.maxLinesSecondaryText) === null || _a === void 0 ? void 0 : _a.toFixed());
|
|
335
|
+
if (this.maxLinesSecondaryText < 1) {
|
|
336
|
+
maxLinesSecondaryText = 1;
|
|
337
|
+
}
|
|
338
|
+
const html = this.listRenderer.render(this.items, this.config);
|
|
339
|
+
return (index.h(index.Host, { key: 'f15badb0936caf891cd8bd272ef5d3224645c3c7', style: {
|
|
340
|
+
'--maxLinesSecondaryText': `${maxLinesSecondaryText}`,
|
|
341
|
+
} }, html));
|
|
342
|
+
}
|
|
343
|
+
handleType() {
|
|
344
|
+
this.setupListeners();
|
|
345
|
+
}
|
|
346
|
+
itemsChanged() {
|
|
347
|
+
if (!this.mdcList) {
|
|
348
|
+
return;
|
|
349
|
+
}
|
|
350
|
+
setTimeout(() => {
|
|
351
|
+
this.setup();
|
|
352
|
+
const listItems = this.items.filter(this.isListItem);
|
|
353
|
+
if (this.multiple) {
|
|
354
|
+
this.mdcList.selectedIndex = listItems
|
|
355
|
+
.filter((item) => item.selected)
|
|
356
|
+
.map((item) => listItems.indexOf(item));
|
|
357
|
+
}
|
|
358
|
+
else {
|
|
359
|
+
const selectedIndex = listItems.findIndex((item) => item.selected);
|
|
360
|
+
if (selectedIndex === -1) {
|
|
361
|
+
this.mdcList.initializeListType();
|
|
362
|
+
}
|
|
363
|
+
else {
|
|
364
|
+
this.mdcList.selectedIndex = selectedIndex;
|
|
365
|
+
}
|
|
366
|
+
}
|
|
367
|
+
}, 0);
|
|
368
|
+
}
|
|
369
|
+
triggerIconColorWarning() {
|
|
370
|
+
var _a;
|
|
371
|
+
if ((_a = this.items) === null || _a === void 0 ? void 0 : _a.some((item) => 'iconColor' in item)) {
|
|
372
|
+
console.warn("The `iconColor` prop is deprecated, has no visual effect anymore, and will soon be removed! Use the new `Icon` interface, and instead of `iconColor: 'color-name'` write `icon: { name: 'icon-name', color: 'color-name' }`.");
|
|
373
|
+
}
|
|
374
|
+
}
|
|
375
|
+
static get delegatesFocus() { return true; }
|
|
376
|
+
get element() { return index.getElement(this); }
|
|
377
|
+
static get watchers() { return {
|
|
378
|
+
"type": [{
|
|
379
|
+
"handleType": 0
|
|
380
|
+
}],
|
|
381
|
+
"items": [{
|
|
382
|
+
"itemsChanged": 0
|
|
383
|
+
}]
|
|
384
|
+
}; }
|
|
385
|
+
};
|
|
386
|
+
List.style = listCss();
|
|
387
|
+
|
|
388
|
+
const notchedOutlineCss = () => `@charset "UTF-8";*,*:before,*:after{box-sizing:border-box}limel-notched-outline{--limel-notched-outline-border-color:rgba(var(--contrast-700), 0.65);--limel-notched-outline-background-color:rgba(var(--contrast-200), 0.5);display:block;width:100%;height:fit-content}.limel-notched-outline{position:relative;width:100%;height:100%}.limel-notched-outline [slot=content]{background-color:var(--limel-notched-outline-background-color);border-radius:var(--limel-notched-outline-border-radius, 0.25rem)}.limel-notched-outline--outlines{pointer-events:none;position:absolute;inset:0;z-index:var(--limel-notched-outline-z-index, 0);display:flex}.limel-notched-outline--leading-outline,.limel-notched-outline--notch,.limel-notched-outline--trailing-outline{transition:border-color 0.2s ease;border-width:1px;border-style:solid;border-color:var(--limel-notched-outline-border-color)}.limel-notched-outline--leading-outline{flex-shrink:0;width:0.75rem;border-right-width:0;border-top-left-radius:var(--limel-notched-outline-border-radius, 0.25rem);border-bottom-left-radius:var(--limel-notched-outline-border-radius, 0.25rem)}.limel-notched-outline--notch{flex-shrink:0;position:relative;z-index:2;border-top-color:var(--limel-notched-outline-notch-border-top-color, var(--limel-notched-outline-border-color));border-right-width:0;border-left-width:0;max-width:calc(100% - 1.5rem)}.limel-notched-outline--notch label{all:unset;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;position:relative;transition:color 0.2s ease, font-size 0.2s ease, transform 0.12s cubic-bezier(0.4, 0, 0.2, 1);transform:translate3d(var(--limel-notched-outline-label-transform-x, 0), var(--limel-notched-outline-label-transform-y, 0.62rem), 0);display:block;padding:0 0.25rem;color:var(--limel-notched-outline-label-color, rgba(var(--contrast-1200), 1));font-size:var(--limel-notched-outline-label-font-size, var(--limel-theme-default-font-size));letter-spacing:var(--mdc-typography-subtitle1-letter-spacing, 0.009375em);line-height:normal}.limel-notched-outline--notch label:after{position:absolute;right:0;padding:0 0.25rem}.limel-notched-outline--trailing-outline{flex-grow:1;border-left-width:0;border-top-right-radius:var(--limel-notched-outline-border-radius, 0.25rem);border-bottom-right-radius:var(--limel-notched-outline-border-radius, 0.25rem)}.limel-notched-outline--empty-readonly-value .lime-looks-like-input-value{line-height:1.75rem;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;color:rgba(var(--contrast-1400), 1);font-size:var(--limel-theme-default-font-size);font-weight:400;font-family:inherit;letter-spacing:0.009375em}.mdc-text-field--disabled .limel-notched-outline--empty-readonly-value .lime-looks-like-input-value{cursor:not-allowed;opacity:0.4}.limel-notched-outline--empty-readonly-value{position:absolute;top:0.62rem;left:1rem}limel-notched-outline:not([disabled]:not([disabled=false])):hover{--limel-notched-outline-border-color:rgba(var(--contrast-700), 1);--limel-notched-outline-background-color:rgba(var(--contrast-200), 1)}limel-notched-outline:not([disabled]:not([disabled=false])):has([slot=content]:focus-visible),limel-notched-outline:not([disabled]:not([disabled=false])):has([slot=content]:focus-within){--limel-notched-outline-border-color:var(--lime-primary-color, var(--limel-theme-primary-color));--limel-notched-outline-background-color:rgba(var(--contrast-100), 0.8)}limel-notched-outline[disabled]:not([disabled=false]){--limel-notched-outline-label-color:rgba(var(--contrast-1200), 0.5)}limel-notched-outline[required]:not([required=false]) .limel-notched-outline--notch label{padding-right:0.75rem}limel-notched-outline[required]:not([required=false]) .limel-notched-outline--notch label:after{content:"*";scale:1.3}limel-notched-outline[invalid]:not([invalid=false]):not([disabled]:not([disabled=false])){--limel-notched-outline-border-color:var( --limel-theme-error-text-color )}limel-notched-outline[invalid]:not([invalid=false]):not([disabled]:not([disabled=false])):hover{--limel-notched-outline-border-color:var( --limel-theme-error-color )}limel-notched-outline[invalid]:not([invalid=false]) .limel-notched-outline--notch label:after{color:var(--limel-theme-error-text-color)}limel-notched-outline[readonly]:not([readonly=false]){--limel-notched-outline-border-color:transparent !important;--limel-notched-outline-background-color:transparent !important}limel-notched-outline[readonly]:not([readonly=false]) .limel-notched-outline--notch label{transition-duration:0s}limel-notched-outline[has-leading-icon]:not([has-leading-icon=false]):not([has-floating-label]):not([has-value]){--limel-notched-outline-label-transform-x:1.25rem}limel-notched-outline[has-leading-icon] .limel-notched-outline--empty-readonly-value{left:2.25rem}limel-notched-outline:not([disabled]:not([disabled=false])):hover label,limel-notched-outline:not([disabled]:not([disabled=false])):focus label,limel-notched-outline:not([disabled]:not([disabled=false])):focus-within label{will-change:color, transform, font-size}limel-notched-outline:not([disabled]:not([disabled=false])):has([slot=content]:focus-visible),limel-notched-outline:not([disabled]:not([disabled=false])):has([slot=content]:focus-within){--limel-notched-outline-label-font-size:0.65rem;--limel-notched-outline-label-transform-x:0;--limel-notched-outline-label-transform-y:calc(-50% - 0.09375rem);--limel-notched-outline-notch-border-top-color:transparent}limel-notched-outline[has-floating-label],limel-notched-outline[has-value]:not([has-value=false]),limel-notched-outline[readonly]:not([has-value]:not([has-value=true])){--limel-notched-outline-label-font-size:0.65rem;--limel-notched-outline-label-transform-x:0;--limel-notched-outline-label-transform-y:calc(-50% - 0.09375rem);--limel-notched-outline-notch-border-top-color:transparent}`;
|
|
389
|
+
|
|
390
|
+
const NotchedOutline = class {
|
|
391
|
+
constructor(hostRef) {
|
|
392
|
+
index.registerInstance(this, hostRef);
|
|
393
|
+
/**
|
|
394
|
+
* Set to `true` when the input element is required.
|
|
395
|
+
* This applies proper visual styles, such as inclusion of an asterisk
|
|
396
|
+
* beside the label.
|
|
397
|
+
*/
|
|
398
|
+
this.required = false;
|
|
399
|
+
/**
|
|
400
|
+
* Set to `true` when the input element is readonly.
|
|
401
|
+
* This applies proper visual styles, such as making the outline transparent.
|
|
402
|
+
*/
|
|
403
|
+
this.readonly = false;
|
|
404
|
+
/**
|
|
405
|
+
* Set to `true` to indicate that the current value of the input element is
|
|
406
|
+
* invalid. This applies proper visual styles, such as making the outlines red.
|
|
407
|
+
*/
|
|
408
|
+
this.invalid = false;
|
|
409
|
+
/**
|
|
410
|
+
* Set to `true` to indicate that the input element is
|
|
411
|
+
* disabled. This applies proper visual styles, such as making the outlines
|
|
412
|
+
* and the label transparent.
|
|
413
|
+
*/
|
|
414
|
+
this.disabled = false;
|
|
415
|
+
/**
|
|
416
|
+
* Set to `true` when the user has entered a value for the input element,
|
|
417
|
+
* shrinking the label in size, and visually rendering it above the entered value.
|
|
418
|
+
*/
|
|
419
|
+
this.hasValue = false;
|
|
420
|
+
/**
|
|
421
|
+
* Set to `true` when the consumer element displays a leading icon.
|
|
422
|
+
* This applies proper visual styles, such as rendering the label
|
|
423
|
+
* correctly placed beside the leading icon.
|
|
424
|
+
*/
|
|
425
|
+
this.hasLeadingIcon = false;
|
|
426
|
+
/**
|
|
427
|
+
* Set to `true` when the consumer element needs to render the
|
|
428
|
+
* label above the input element, despite existence of a `value`.
|
|
429
|
+
* For example in the `text-editor` or `limel-select`,
|
|
430
|
+
* where the default layout requires a floating label.
|
|
431
|
+
*/
|
|
432
|
+
this.hasFloatingLabel = false;
|
|
433
|
+
}
|
|
434
|
+
render() {
|
|
435
|
+
return (index.h("div", { key: '928b12e7565dd3a827b29e57dfb94cbd668feb91', class: "limel-notched-outline" }, index.h("slot", { key: 'ae0a6205b1e8aeed3edea040a198ba7faebecc85', name: "content" }), index.h("span", { key: '84b1fd4feb65005eea9280717dd2cb6d74fc513c', class: "limel-notched-outline--outlines", "aria-hidden": "true" }, index.h("span", { key: '4ae9c02d23197109c5ea0721a4f1abfab802822e', class: "limel-notched-outline--leading-outline" }), this.renderLabel(), index.h("span", { key: 'd7b70aa632b22b7b639bf208ea57fd39a82884e3', class: "limel-notched-outline--trailing-outline" }), this.renderEmptyReadonlyValue())));
|
|
436
|
+
}
|
|
437
|
+
renderLabel() {
|
|
438
|
+
if (!this.label) {
|
|
439
|
+
return;
|
|
440
|
+
}
|
|
441
|
+
return (index.h("span", { class: "limel-notched-outline--notch" }, index.h("label", { htmlFor: this.labelId }, this.label)));
|
|
442
|
+
}
|
|
443
|
+
renderEmptyReadonlyValue() {
|
|
444
|
+
if (!this.readonly || this.hasValue) {
|
|
445
|
+
return;
|
|
446
|
+
}
|
|
447
|
+
return (index.h("span", { class: "limel-notched-outline--empty-readonly-value", "aria-hidden": "true" }, "\u2013"));
|
|
448
|
+
}
|
|
449
|
+
};
|
|
450
|
+
NotchedOutline.style = notchedOutlineCss();
|
|
451
|
+
|
|
452
|
+
exports.limel_helper_line = HelperLine;
|
|
453
|
+
exports.limel_list = List;
|
|
454
|
+
exports.limel_notched_outline = NotchedOutline;
|
|
@@ -5,7 +5,7 @@ var getIconProps = require('./get-icon-props-CwpDdQDI.js');
|
|
|
5
5
|
var randomString = require('./random-string-BTzDB2ee.js');
|
|
6
6
|
var renderListComponent = require('./render-list-component-5ZKWpCnM.js');
|
|
7
7
|
var checkbox_template = require('./checkbox.template-BPk8WkQF.js');
|
|
8
|
-
var translations = require('./translations-
|
|
8
|
+
var translations = require('./translations-DFFpR6AZ.js');
|
|
9
9
|
var image_template = require('./image.template-DY7qwbuy.js');
|
|
10
10
|
require('./language-CaqPKPyW.js');
|
|
11
11
|
|