@editora/ui-core 0.2.2 → 0.3.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/dist/{ElementBase-DxbvhLJs.js → ElementBase-CbUsP3D6.js} +1 -1
- package/dist/{ElementBase-BeZT54Hj.mjs → ElementBase-D5QsC5Vw.mjs} +10 -1
- package/dist/ElementBase.d.ts +7 -0
- package/dist/ElementBase.d.ts.map +1 -1
- package/dist/accordion.cjs.js +1 -1
- package/dist/accordion.esm.js +1 -1
- package/dist/add-icons-CVeHOsWl.js +1 -0
- package/dist/add-icons-DBUZJ0g7.mjs +14 -0
- package/dist/add-icons.cjs.js +1 -0
- package/dist/add-icons.d.ts +16 -0
- package/dist/add-icons.d.ts.map +1 -0
- package/dist/add-icons.esm.js +4 -0
- package/dist/alert-dialog.cjs.js +24 -24
- package/dist/alert-dialog.esm.js +112 -107
- package/dist/alert.cjs.js +8 -8
- package/dist/alert.esm.js +22 -22
- package/dist/animated-beam.cjs.js +1 -1
- package/dist/animated-beam.esm.js +1 -1
- package/dist/animated-list.cjs.js +1 -1
- package/dist/animated-list.esm.js +1 -1
- package/dist/animated-text.cjs.js +1 -1
- package/dist/animated-text.esm.js +1 -1
- package/dist/app-header.cjs.js +15 -3
- package/dist/app-header.esm.js +31 -4
- package/dist/aspect-ratio.cjs.js +1 -1
- package/dist/aspect-ratio.esm.js +1 -1
- package/dist/avatar.cjs.js +1 -1
- package/dist/avatar.esm.js +1 -1
- package/dist/badge.cjs.js +1 -1
- package/dist/badge.esm.js +1 -1
- package/dist/block-controls.cjs.js +1 -1
- package/dist/block-controls.esm.js +1 -1
- package/dist/box.cjs.js +1 -1
- package/dist/box.esm.js +1 -1
- package/dist/breadcrumb.cjs.js +4 -4
- package/dist/breadcrumb.esm.js +93 -84
- package/dist/button.cjs.js +520 -1
- package/dist/button.esm.js +682 -2
- package/dist/{calendar-CzpWDxLc.js → calendar-BsVqtpjM.js} +6 -6
- package/dist/{calendar-DkSDFg33.mjs → calendar-CFafqZVA.mjs} +6 -6
- package/dist/calendar.cjs.js +1 -1
- package/dist/calendar.esm.js +1 -1
- package/dist/card.cjs.js +6 -5
- package/dist/card.esm.js +52 -39
- package/dist/chart.cjs.js +2 -2
- package/dist/chart.esm.js +2 -2
- package/dist/checkbox.cjs.js +4 -4
- package/dist/checkbox.esm.js +36 -15
- package/dist/clone-source-BxK2pEVw.mjs +11 -0
- package/dist/clone-source-C7E_ri5f.js +1 -0
- package/dist/collapsible.cjs.js +1 -1
- package/dist/collapsible.esm.js +1 -1
- package/dist/color-picker.cjs.js +2 -2
- package/dist/color-picker.esm.js +3 -3
- package/dist/combobox.cjs.js +4 -4
- package/dist/combobox.esm.js +22 -19
- package/dist/command-palette.cjs.js +1 -1
- package/dist/command-palette.esm.js +1 -1
- package/dist/command.cjs.js +1 -1
- package/dist/command.esm.js +1 -1
- package/dist/components/ui-alert-dialog.d.ts.map +1 -1
- package/dist/components/ui-alert.d.ts.map +1 -1
- package/dist/components/ui-app-header.d.ts +1 -0
- package/dist/components/ui-app-header.d.ts.map +1 -1
- package/dist/components/ui-breadcrumb.d.ts.map +1 -1
- package/dist/components/ui-card.d.ts +7 -0
- package/dist/components/ui-card.d.ts.map +1 -1
- package/dist/components/ui-checkbox.d.ts +6 -0
- package/dist/components/ui-checkbox.d.ts.map +1 -1
- package/dist/components/ui-combobox.d.ts.map +1 -1
- package/dist/components/ui-date-time-picker.d.ts.map +1 -1
- package/dist/components/ui-dialog.d.ts +1 -0
- package/dist/components/ui-dialog.d.ts.map +1 -1
- package/dist/components/ui-drawer.d.ts.map +1 -1
- package/dist/components/ui-dropdown.d.ts.map +1 -1
- package/dist/components/ui-empty-state.d.ts.map +1 -1
- package/dist/components/ui-hover-card.d.ts.map +1 -1
- package/dist/components/ui-icon.d.ts +1 -0
- package/dist/components/ui-icon.d.ts.map +1 -1
- package/dist/components/ui-input.d.ts +16 -0
- package/dist/components/ui-input.d.ts.map +1 -1
- package/dist/components/ui-layout.d.ts +20 -0
- package/dist/components/ui-layout.d.ts.map +1 -1
- package/dist/components/ui-menu.d.ts +1 -0
- package/dist/components/ui-menu.d.ts.map +1 -1
- package/dist/components/ui-menubar.d.ts.map +1 -1
- package/dist/components/ui-multi-select.d.ts +6 -0
- package/dist/components/ui-multi-select.d.ts.map +1 -1
- package/dist/components/ui-number-field.d.ts +6 -0
- package/dist/components/ui-number-field.d.ts.map +1 -1
- package/dist/components/ui-pagination.d.ts.map +1 -1
- package/dist/components/ui-password-field.d.ts +11 -0
- package/dist/components/ui-password-field.d.ts.map +1 -1
- package/dist/components/ui-popover.d.ts.map +1 -1
- package/dist/components/ui-positioner.d.ts.map +1 -1
- package/dist/components/ui-radio-group.d.ts +6 -0
- package/dist/components/ui-radio-group.d.ts.map +1 -1
- package/dist/components/ui-rating.d.ts +1 -0
- package/dist/components/ui-rating.d.ts.map +1 -1
- package/dist/components/ui-select.d.ts +7 -0
- package/dist/components/ui-select.d.ts.map +1 -1
- package/dist/components/ui-sidebar.d.ts +1 -0
- package/dist/components/ui-sidebar.d.ts.map +1 -1
- package/dist/components/ui-slider.d.ts +6 -0
- package/dist/components/ui-slider.d.ts.map +1 -1
- package/dist/components/ui-sortable.d.ts +1 -0
- package/dist/components/ui-sortable.d.ts.map +1 -1
- package/dist/components/ui-switch.d.ts +6 -0
- package/dist/components/ui-switch.d.ts.map +1 -1
- package/dist/components/ui-tabs.d.ts +2 -0
- package/dist/components/ui-tabs.d.ts.map +1 -1
- package/dist/components/ui-textarea.d.ts +6 -0
- package/dist/components/ui-textarea.d.ts.map +1 -1
- package/dist/components/ui-toast.d.ts.map +1 -1
- package/dist/components/ui-tooltip.d.ts.map +1 -1
- package/dist/container.cjs.js +1 -1
- package/dist/container.esm.js +1 -1
- package/dist/context-menu.cjs.js +2 -2
- package/dist/context-menu.esm.js +2 -2
- package/dist/control-group.cjs.js +1 -1
- package/dist/control-group.esm.js +1 -1
- package/dist/data-table.cjs.js +5 -5
- package/dist/data-table.esm.js +7 -7
- package/dist/date-field.cjs.js +1 -1
- package/dist/date-field.esm.js +3 -3
- package/dist/date-picker.cjs.js +2 -2
- package/dist/date-picker.esm.js +17 -17
- package/dist/date-range-picker.cjs.js +2 -2
- package/dist/date-range-picker.esm.js +4 -4
- package/dist/date-range-time-picker.cjs.js +3 -3
- package/dist/date-range-time-picker.esm.js +16 -16
- package/dist/date-time-picker.cjs.js +26 -23
- package/dist/date-time-picker.esm.js +49 -46
- package/dist/{date-time-utils-zAx4ghvC.mjs → date-time-utils-CJUksWj3.mjs} +1 -1
- package/dist/{date-time-utils-C-4eHTyy.js → date-time-utils-D3hQQ5Om.js} +1 -1
- package/dist/description.cjs.js +1 -1
- package/dist/description.esm.js +1 -1
- package/dist/dialog.cjs.js +7 -7
- package/dist/dialog.esm.js +51 -47
- package/dist/direction-provider.cjs.js +1 -1
- package/dist/direction-provider.esm.js +1 -1
- package/dist/dismissable-layer.cjs.js +1 -1
- package/dist/dismissable-layer.esm.js +1 -1
- package/dist/dock.cjs.js +1 -1
- package/dist/dock.esm.js +1 -1
- package/dist/drawer.cjs.js +5 -5
- package/dist/drawer.esm.js +18 -17
- package/dist/dropdown.cjs.js +7 -7
- package/dist/dropdown.esm.js +39 -38
- package/dist/empty-state.cjs.js +12 -2
- package/dist/empty-state.esm.js +17 -7
- package/dist/field-error.cjs.js +1 -1
- package/dist/field-error.esm.js +1 -1
- package/dist/field.cjs.js +2 -2
- package/dist/field.esm.js +2 -2
- package/dist/fieldset.cjs.js +1 -1
- package/dist/fieldset.esm.js +1 -1
- package/dist/file-upload.cjs.js +1 -1
- package/dist/file-upload.esm.js +1 -1
- package/dist/flex.cjs.js +1 -1
- package/dist/flex.esm.js +1 -1
- package/dist/floating-toolbar.cjs.js +2 -2
- package/dist/floating-toolbar.esm.js +2 -2
- package/dist/focus-scope-Dl0qk5GP.mjs +177 -0
- package/dist/focus-scope-Doz0bnE1.js +1 -0
- package/dist/focus-scope.cjs.js +1 -1
- package/dist/focus-scope.esm.js +2 -2
- package/dist/form-control-B90_3kYN.js +1 -0
- package/dist/form-control-D9wWUMBl.mjs +86 -0
- package/dist/form.cjs.js +2 -2
- package/dist/form.esm.js +2 -2
- package/dist/gantt.cjs.js +2 -2
- package/dist/gantt.esm.js +2 -2
- package/dist/grid.cjs.js +1 -1
- package/dist/grid.esm.js +1 -1
- package/dist/hover-card.cjs.js +5 -5
- package/dist/hover-card.esm.js +19 -18
- package/dist/icon-cloud.cjs.js +1 -1
- package/dist/icon-cloud.esm.js +1 -1
- package/dist/icon.cjs.js +207 -1
- package/dist/icon.esm.js +294 -2
- package/dist/icons-CpCpPXV5.js +1 -0
- package/dist/icons-DWYbbhb0.mjs +115 -0
- package/dist/icons.d.ts +11 -1
- package/dist/icons.d.ts.map +1 -1
- package/dist/implicit-submit-B6M5Uc56.js +1 -0
- package/dist/implicit-submit-Lr0-q2LR.mjs +44 -0
- package/dist/index.cjs.js +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.esm.js +309 -299
- package/dist/inline-edit.cjs.js +1 -1
- package/dist/inline-edit.esm.js +1 -1
- package/dist/input.cjs.js +62 -20
- package/dist/input.esm.js +164 -58
- package/dist/label.cjs.js +1 -1
- package/dist/label.esm.js +1 -1
- package/dist/layout.cjs.js +145 -4
- package/dist/layout.esm.js +278 -40
- package/dist/marquee.cjs.js +1 -1
- package/dist/marquee.esm.js +1 -1
- package/dist/masonry-grid.cjs.js +1 -1
- package/dist/masonry-grid.esm.js +1 -1
- package/dist/menu.cjs.js +8 -8
- package/dist/menu.esm.js +51 -47
- package/dist/menubar.cjs.js +9 -9
- package/dist/menubar.esm.js +41 -40
- package/dist/meter.cjs.js +1 -1
- package/dist/meter.esm.js +1 -1
- package/dist/multi-select.cjs.js +7 -7
- package/dist/multi-select.esm.js +55 -34
- package/dist/navigate-CXebafwF.mjs +18 -0
- package/dist/navigate-ChJVIIuS.js +1 -0
- package/dist/navigation-menu.cjs.js +1 -1
- package/dist/navigation-menu.esm.js +1 -1
- package/dist/number-attribute-BAF07JrU.mjs +8 -0
- package/dist/number-attribute-C4Rrl7d3.js +1 -0
- package/dist/number-field.cjs.js +8 -8
- package/dist/number-field.esm.js +90 -69
- package/dist/number-ticker.cjs.js +1 -1
- package/dist/number-ticker.esm.js +1 -1
- package/dist/odometer.cjs.js +1 -1
- package/dist/odometer.esm.js +1 -1
- package/dist/orbiter.cjs.js +1 -1
- package/dist/orbiter.esm.js +1 -1
- package/dist/pagination.cjs.js +24 -23
- package/dist/pagination.esm.js +61 -46
- package/dist/{panel-group-BVHJEdfx.js → panel-group-BIzzpQ5i.js} +1 -1
- package/dist/{panel-group-BxO_eNW6.mjs → panel-group-CFLjzRWI.mjs} +1 -1
- package/dist/panel-group.cjs.js +1 -1
- package/dist/panel-group.esm.js +1 -1
- package/dist/panel.cjs.js +1 -1
- package/dist/panel.esm.js +1 -1
- package/dist/password-field.cjs.js +36 -16
- package/dist/password-field.esm.js +113 -44
- package/dist/pin-input.cjs.js +1 -1
- package/dist/pin-input.esm.js +1 -1
- package/dist/placement-grid.cjs.js +1 -1
- package/dist/placement-grid.esm.js +1 -1
- package/dist/plugin-panel.cjs.js +1 -1
- package/dist/plugin-panel.esm.js +1 -1
- package/dist/popover.cjs.js +2 -2
- package/dist/popover.esm.js +28 -26
- package/dist/portal.cjs.js +1 -1
- package/dist/portal.esm.js +1 -1
- package/dist/positioner.cjs.js +2 -2
- package/dist/positioner.esm.js +35 -38
- package/dist/preload.cjs.js +221 -0
- package/dist/preload.css +220 -0
- package/dist/preload.d.ts +17 -0
- package/dist/preload.d.ts.map +1 -0
- package/dist/preload.esm.js +224 -0
- package/dist/presence.cjs.js +1 -1
- package/dist/presence.esm.js +1 -1
- package/dist/primitives/clone-source.d.ts +3 -0
- package/dist/primitives/clone-source.d.ts.map +1 -0
- package/dist/primitives/focus-scope.d.ts +6 -0
- package/dist/primitives/focus-scope.d.ts.map +1 -1
- package/dist/primitives/form-control.d.ts +68 -0
- package/dist/primitives/form-control.d.ts.map +1 -0
- package/dist/primitives/implicit-submit.d.ts +17 -0
- package/dist/primitives/implicit-submit.d.ts.map +1 -0
- package/dist/primitives/navigate.d.ts +27 -0
- package/dist/primitives/navigate.d.ts.map +1 -0
- package/dist/primitives/number-attribute.d.ts +7 -0
- package/dist/primitives/number-attribute.d.ts.map +1 -0
- package/dist/primitives/slotted-input.d.ts +19 -0
- package/dist/primitives/slotted-input.d.ts.map +1 -0
- package/dist/progress.cjs.js +3 -3
- package/dist/progress.esm.js +3 -3
- package/dist/quick-actions.cjs.js +5 -5
- package/dist/quick-actions.esm.js +3 -3
- package/dist/radio-group.cjs.js +9 -9
- package/dist/radio-group.esm.js +47 -24
- package/dist/radio.cjs.js +1 -1
- package/dist/radio.esm.js +1 -1
- package/dist/rating.cjs.js +6 -6
- package/dist/rating.esm.js +21 -10
- package/dist/{runtime-CJzoaC8Z.mjs → runtime-CORXjP7e.mjs} +366 -352
- package/dist/runtime-uCly3ECd.js +5 -0
- package/dist/runtime.cjs.js +1 -1
- package/dist/runtime.esm.js +1 -1
- package/dist/scroll-area.cjs.js +1 -1
- package/dist/scroll-area.esm.js +1 -1
- package/dist/section.cjs.js +1 -1
- package/dist/section.esm.js +1 -1
- package/dist/select.cjs.js +21 -21
- package/dist/select.esm.js +111 -71
- package/dist/selection-popup.cjs.js +2 -2
- package/dist/selection-popup.esm.js +2 -2
- package/dist/semantic-tokens.d.ts.map +1 -1
- package/dist/separator.cjs.js +1 -1
- package/dist/separator.esm.js +1 -1
- package/dist/sidebar.cjs.js +15 -15
- package/dist/sidebar.esm.js +48 -42
- package/dist/skeleton.cjs.js +1 -1
- package/dist/skeleton.esm.js +1 -1
- package/dist/slider.cjs.js +11 -11
- package/dist/slider.esm.js +40 -23
- package/dist/slot.cjs.js +1 -1
- package/dist/slot.esm.js +1 -1
- package/dist/slotted-input-BVq2QQg2.js +1 -0
- package/dist/slotted-input-atWznLfm.mjs +13 -0
- package/dist/sortable.cjs.js +25 -25
- package/dist/sortable.esm.js +29 -21
- package/dist/spinning-text.cjs.js +1 -1
- package/dist/spinning-text.esm.js +1 -1
- package/dist/split-button.cjs.js +1 -1
- package/dist/split-button.esm.js +1 -1
- package/dist/splitter.cjs.js +1 -1
- package/dist/splitter.esm.js +1 -1
- package/dist/standalone/add-icons.d.ts +2 -0
- package/dist/standalone/add-icons.d.ts.map +1 -0
- package/dist/standalone/preload.d.ts +2 -0
- package/dist/standalone/preload.d.ts.map +1 -0
- package/dist/stepper.cjs.js +3 -3
- package/dist/stepper.esm.js +3 -3
- package/dist/switch.cjs.js +9 -9
- package/dist/switch.esm.js +56 -35
- package/dist/table.cjs.js +1 -1
- package/dist/table.esm.js +1 -1
- package/dist/tabs.cjs.js +14 -14
- package/dist/tabs.esm.js +129 -115
- package/dist/tags-input.cjs.js +1 -1
- package/dist/tags-input.esm.js +1 -1
- package/dist/textarea.cjs.js +33 -11
- package/dist/textarea.esm.js +74 -35
- package/dist/theme.d.ts +6 -0
- package/dist/theme.d.ts.map +1 -1
- package/dist/time-field.cjs.js +1 -1
- package/dist/time-field.esm.js +2 -2
- package/dist/time-picker.cjs.js +1 -1
- package/dist/time-picker.esm.js +3 -3
- package/dist/timeline.cjs.js +2 -2
- package/dist/timeline.esm.js +2 -2
- package/dist/toast.cjs.js +4 -4
- package/dist/toast.esm.js +17 -16
- package/dist/toggle-group.cjs.js +1 -1
- package/dist/toggle-group.esm.js +1 -1
- package/dist/toggle.cjs.js +3 -3
- package/dist/toggle.esm.js +9 -9
- package/dist/toolbar.cjs.js +1 -1
- package/dist/toolbar.esm.js +1 -1
- package/dist/tooltip.cjs.js +2 -2
- package/dist/tooltip.esm.js +12 -14
- package/dist/transfer-list.cjs.js +1 -1
- package/dist/transfer-list.esm.js +1 -1
- package/dist/{tree-33fVNnaf.mjs → tree-CD2k2lIC.mjs} +1 -1
- package/dist/{tree-Dc02MChE.js → tree-ChQfhxya.js} +1 -1
- package/dist/tree-item.cjs.js +1 -1
- package/dist/tree-item.esm.js +1 -1
- package/dist/tree.cjs.js +1 -1
- package/dist/tree.esm.js +1 -1
- package/dist/visually-hidden.cjs.js +1 -1
- package/dist/visually-hidden.esm.js +1 -1
- package/dist/wizard.cjs.js +4 -4
- package/dist/wizard.esm.js +4 -4
- package/package.json +3 -2
- package/dist/focus-scope-Bwug2gDv.js +0 -1
- package/dist/focus-scope-CmEsG5UZ.mjs +0 -138
- package/dist/runtime-DYSIU3sR.js +0 -5
- package/dist/ui-button-C3OmI7Sn.mjs +0 -684
- package/dist/ui-button-CnLwXBnx.js +0 -520
- package/dist/ui-icon-D3avtxX_.js +0 -207
- package/dist/ui-icon-DLhB08Fo.mjs +0 -361
package/dist/hover-card.esm.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { E as
|
|
2
|
-
import {
|
|
3
|
-
|
|
1
|
+
import { E as u } from "./ElementBase-D5QsC5Vw.mjs";
|
|
2
|
+
import { n as h } from "./number-attribute-BAF07JrU.mjs";
|
|
3
|
+
import { e as p } from "./positioner-BE8Nbho2.mjs";
|
|
4
|
+
const v = `
|
|
4
5
|
:host {
|
|
5
6
|
--ui-hover-card-z: 1700;
|
|
6
7
|
--ui-hover-card-radius: var(--base-card-radius, calc(var(--ui-radius, 6px) + 2px));
|
|
@@ -147,7 +148,7 @@ const p = `
|
|
|
147
148
|
--ui-hover-card-bg: #0f172a;
|
|
148
149
|
--ui-hover-card-color: #e2e8f0;
|
|
149
150
|
--ui-hover-card-border-color: #334155;
|
|
150
|
-
--ui-hover-card-focus-ring: #93c5fd;
|
|
151
|
+
--ui-hover-card-focus-ring: var(--ui-color-accent-on-dark, #93c5fd);
|
|
151
152
|
--ui-hover-card-shadow:
|
|
152
153
|
0 2px 8px rgba(2, 6, 23, 0.24),
|
|
153
154
|
0 30px 62px rgba(2, 6, 23, 0.4);
|
|
@@ -265,10 +266,10 @@ const p = `
|
|
|
265
266
|
}
|
|
266
267
|
}
|
|
267
268
|
`;
|
|
268
|
-
function
|
|
269
|
+
function f(i) {
|
|
269
270
|
return i === "top" || i === "left" || i === "right" ? i : "bottom";
|
|
270
271
|
}
|
|
271
|
-
class
|
|
272
|
+
class b extends u {
|
|
272
273
|
constructor() {
|
|
273
274
|
super(), this._openTimer = null, this._closeTimer = null, this._positionRaf = null, this._positioner = null, this._positionerPlacement = null, this._positionerOffset = 0, this._isOpen = !1, this._globalListenersBound = !1, this._onPointerEnter = this._onPointerEnter.bind(this), this._onPointerLeave = this._onPointerLeave.bind(this), this._onFocusIn = this._onFocusIn.bind(this), this._onFocusOut = this._onFocusOut.bind(this), this._onKeyDown = this._onKeyDown.bind(this), this._onDocumentPointerDown = this._onDocumentPointerDown.bind(this), this._onViewportChange = this._onViewportChange.bind(this), this._onSlotChange = this._onSlotChange.bind(this);
|
|
274
275
|
}
|
|
@@ -309,14 +310,14 @@ class f extends d {
|
|
|
309
310
|
e ? this.setAttribute("open", "") : this.removeAttribute("open");
|
|
310
311
|
}
|
|
311
312
|
get delay() {
|
|
312
|
-
const e =
|
|
313
|
+
const e = h(this.getAttribute("delay"), 120);
|
|
313
314
|
return Number.isFinite(e) && e >= 0 ? e : 120;
|
|
314
315
|
}
|
|
315
316
|
set delay(e) {
|
|
316
317
|
this.setAttribute("delay", String(e));
|
|
317
318
|
}
|
|
318
319
|
get closeDelay() {
|
|
319
|
-
const e =
|
|
320
|
+
const e = h(this.getAttribute("close-delay"), Number.NaN);
|
|
320
321
|
return Number.isFinite(e) && e >= 0 ? e : this.delay;
|
|
321
322
|
}
|
|
322
323
|
set closeDelay(e) {
|
|
@@ -428,9 +429,9 @@ class f extends d {
|
|
|
428
429
|
this.open = !1;
|
|
429
430
|
return;
|
|
430
431
|
}
|
|
431
|
-
const o =
|
|
432
|
+
const o = h(this.getAttribute("offset"), 10), s = Number.isFinite(o) ? o : 10, a = f(this.getAttribute("placement")), c = e.querySelector(".arrow");
|
|
432
433
|
if (!this._positioner || this._positionerPlacement !== a || this._positionerOffset !== s) {
|
|
433
|
-
this._positioner?.destroy(), this._positioner =
|
|
434
|
+
this._positioner?.destroy(), this._positioner = p({
|
|
434
435
|
anchor: t,
|
|
435
436
|
floating: e,
|
|
436
437
|
placement: a,
|
|
@@ -439,7 +440,7 @@ class f extends d {
|
|
|
439
440
|
flip: !0,
|
|
440
441
|
shift: !0,
|
|
441
442
|
boundaryPadding: 8,
|
|
442
|
-
arrow:
|
|
443
|
+
arrow: c,
|
|
443
444
|
observeWindowResize: !1,
|
|
444
445
|
observeScroll: !1,
|
|
445
446
|
observeAncestorScroll: !1,
|
|
@@ -447,10 +448,10 @@ class f extends d {
|
|
|
447
448
|
observeLayoutShift: !1,
|
|
448
449
|
observeAnchorResize: !1,
|
|
449
450
|
observeFloatingResize: !1,
|
|
450
|
-
onUpdate: (
|
|
451
|
-
const
|
|
452
|
-
e.setAttribute("data-placement",
|
|
453
|
-
const n =
|
|
451
|
+
onUpdate: (l) => {
|
|
452
|
+
const d = l.placement.split("-")[0];
|
|
453
|
+
e.setAttribute("data-placement", d);
|
|
454
|
+
const n = l.middlewareData?.arrow;
|
|
454
455
|
typeof n?.x == "number" && e.style.setProperty("--ui-hover-card-arrow-x", `${Math.round(n.x)}px`), typeof n?.y == "number" && e.style.setProperty("--ui-hover-card-arrow-y", `${Math.round(n.y)}px`), e.setAttribute("data-ready", "true");
|
|
455
456
|
}
|
|
456
457
|
}), this._positionerPlacement = a, this._positionerOffset = s;
|
|
@@ -460,7 +461,7 @@ class f extends d {
|
|
|
460
461
|
}
|
|
461
462
|
render() {
|
|
462
463
|
this.setContent(`
|
|
463
|
-
<style>${
|
|
464
|
+
<style>${v}</style>
|
|
464
465
|
<div class="anchor" part="anchor">
|
|
465
466
|
<slot name="trigger"></slot>
|
|
466
467
|
<slot></slot>
|
|
@@ -484,7 +485,7 @@ class f extends d {
|
|
|
484
485
|
return !1;
|
|
485
486
|
}
|
|
486
487
|
}
|
|
487
|
-
typeof customElements < "u" && !customElements.get("ui-hover-card") && customElements.define("ui-hover-card",
|
|
488
|
+
typeof customElements < "u" && !customElements.get("ui-hover-card") && customElements.define("ui-hover-card", b);
|
|
488
489
|
export {
|
|
489
|
-
|
|
490
|
+
b as UIHoverCard
|
|
490
491
|
};
|
package/dist/icon-cloud.cjs.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const C=require("./ElementBase-
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const C=require("./ElementBase-CbUsP3D6.js"),z="920px",x=.86,O=1,R="20px",$="118px",S="40px",E="118px",N=new Set(["clockwise","counterclockwise"]),D=new Set(["surface","soft","solid","glass","contrast","minimal"]),I=new Set(["brand","neutral","info","success","warning","danger"]),X=new Set(["sm","md","lg","xl","1","2","3","4"]),Y=new Set(["none","low","high"]),c={sm:{radius:"90px",radiusPx:90,itemSize:"32px",itemSizePx:32,centerSize:"84px",padding:"14px",shellRadius:"24px"},md:{radius:$,radiusPx:118,itemSize:S,itemSizePx:40,centerSize:E,padding:"18px",shellRadius:"28px"},lg:{radius:"140px",radiusPx:140,itemSize:"46px",itemSizePx:46,centerSize:"132px",padding:"22px",shellRadius:"32px"},xl:{radius:"164px",radiusPx:164,itemSize:"54px",itemSizePx:54,centerSize:"152px",padding:"26px",shellRadius:"36px"}},q=`
|
|
2
2
|
:host {
|
|
3
3
|
--ui-icon-cloud-radius: calc(var(--ui-radius, 6px) + 4px);
|
|
4
4
|
--ui-icon-cloud-item-size: ${S};
|
package/dist/icon-cloud.esm.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { E as L } from "./ElementBase-
|
|
1
|
+
import { E as L } from "./ElementBase-D5QsC5Vw.mjs";
|
|
2
2
|
const z = "920px", x = 0.86, C = 1, O = "20px", R = "118px", S = "40px", E = "118px", $ = /* @__PURE__ */ new Set(["clockwise", "counterclockwise"]), N = /* @__PURE__ */ new Set(["surface", "soft", "solid", "glass", "contrast", "minimal"]), D = /* @__PURE__ */ new Set(["brand", "neutral", "info", "success", "warning", "danger"]), I = /* @__PURE__ */ new Set(["sm", "md", "lg", "xl", "1", "2", "3", "4"]), X = /* @__PURE__ */ new Set(["none", "low", "high"]), c = {
|
|
3
3
|
sm: {
|
|
4
4
|
radius: "90px",
|
package/dist/icon.cjs.js
CHANGED
|
@@ -1 +1,207 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const p=require("./ElementBase-CbUsP3D6.js"),n=require("./icons-CpCpPXV5.js"),h=`
|
|
2
|
+
:host {
|
|
3
|
+
--ui-icon-size: 1em;
|
|
4
|
+
--ui-icon-color: currentColor;
|
|
5
|
+
--ui-icon-radius: 8px;
|
|
6
|
+
--ui-icon-bg: transparent;
|
|
7
|
+
--ui-icon-border: 1px solid transparent;
|
|
8
|
+
--ui-icon-shadow: none;
|
|
9
|
+
--ui-icon-pad: 0;
|
|
10
|
+
--ui-icon-rotate-duration: 0.9s;
|
|
11
|
+
--ui-icon-pulse-duration: 1.35s;
|
|
12
|
+
color-scheme: light dark;
|
|
13
|
+
display: inline-grid;
|
|
14
|
+
place-items: center;
|
|
15
|
+
inline-size: calc(var(--ui-icon-size) + (var(--ui-icon-pad) * 2));
|
|
16
|
+
block-size: calc(var(--ui-icon-size) + (var(--ui-icon-pad) * 2));
|
|
17
|
+
color: var(--ui-icon-color);
|
|
18
|
+
vertical-align: middle;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.icon {
|
|
22
|
+
position: relative;
|
|
23
|
+
display: grid;
|
|
24
|
+
place-items: center;
|
|
25
|
+
inline-size: 100%;
|
|
26
|
+
block-size: 100%;
|
|
27
|
+
border-radius: var(--ui-icon-radius);
|
|
28
|
+
border: var(--ui-icon-border);
|
|
29
|
+
background: var(--ui-icon-bg);
|
|
30
|
+
box-shadow: var(--ui-icon-shadow);
|
|
31
|
+
transition: transform 170ms ease, box-shadow 170ms ease, background-color 170ms ease, border-color 170ms ease;
|
|
32
|
+
overflow: hidden;
|
|
33
|
+
isolation: isolate;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.glyph {
|
|
37
|
+
inline-size: var(--ui-icon-size);
|
|
38
|
+
block-size: var(--ui-icon-size);
|
|
39
|
+
display: grid;
|
|
40
|
+
place-items: center;
|
|
41
|
+
line-height: 0;
|
|
42
|
+
color: currentColor;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.glyph > svg {
|
|
46
|
+
inline-size: 100%;
|
|
47
|
+
block-size: 100%;
|
|
48
|
+
display: block;
|
|
49
|
+
fill: currentColor;
|
|
50
|
+
stroke-width: var(--ui-icon-stroke-width, 1.5);
|
|
51
|
+
shape-rendering: geometricPrecision;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.fallback {
|
|
55
|
+
display: inline-grid;
|
|
56
|
+
place-items: center;
|
|
57
|
+
inline-size: 100%;
|
|
58
|
+
block-size: 100%;
|
|
59
|
+
border-radius: max(4px, calc(var(--ui-icon-radius) - 3px));
|
|
60
|
+
font: 700 11px/1 "IBM Plex Sans", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
|
|
61
|
+
letter-spacing: 0.02em;
|
|
62
|
+
color: color-mix(in srgb, currentColor 74%, transparent);
|
|
63
|
+
background: color-mix(in srgb, currentColor 10%, transparent);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.badge {
|
|
67
|
+
position: absolute;
|
|
68
|
+
right: 0;
|
|
69
|
+
top: 0;
|
|
70
|
+
transform: translate(36%, -36%);
|
|
71
|
+
min-inline-size: 8px;
|
|
72
|
+
block-size: 8px;
|
|
73
|
+
border-radius: 999px;
|
|
74
|
+
background: var(--ui-icon-badge-bg, #ef4444);
|
|
75
|
+
border: 2px solid var(--ui-icon-bg, transparent);
|
|
76
|
+
box-sizing: border-box;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
:host([size="xs"]) { --ui-icon-size: 12px; }
|
|
80
|
+
:host([size="sm"]) { --ui-icon-size: 14px; }
|
|
81
|
+
:host([size="md"]) { --ui-icon-size: 18px; }
|
|
82
|
+
:host([size="lg"]) { --ui-icon-size: 22px; }
|
|
83
|
+
:host([size="xl"]) { --ui-icon-size: 28px; }
|
|
84
|
+
|
|
85
|
+
:host([variant="surface"]) {
|
|
86
|
+
--ui-icon-pad: 6px;
|
|
87
|
+
--ui-icon-bg: var(--ui-color-surface, var(--ui-surface, #ffffff));
|
|
88
|
+
--ui-icon-border: 1px solid color-mix(in srgb, var(--ui-color-border, #cbd5e1) 72%, transparent);
|
|
89
|
+
--ui-icon-shadow: 0 1px 3px rgba(2, 6, 23, 0.08);
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
:host([variant="soft"]) {
|
|
93
|
+
--ui-icon-pad: 6px;
|
|
94
|
+
--ui-icon-bg: color-mix(in srgb, currentColor 8%, transparent);
|
|
95
|
+
--ui-icon-border: 1px solid color-mix(in srgb, currentColor 18%, transparent);
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
:host([variant="contrast"]) {
|
|
99
|
+
--ui-icon-pad: 6px;
|
|
100
|
+
--ui-icon-bg: #0f172a;
|
|
101
|
+
--ui-icon-color: #e2e8f0;
|
|
102
|
+
--ui-icon-border: 1px solid #334155;
|
|
103
|
+
--ui-icon-shadow: 0 2px 8px rgba(2, 6, 23, 0.28);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
:host([variant="minimal"]) {
|
|
107
|
+
--ui-icon-pad: 0;
|
|
108
|
+
--ui-icon-bg: transparent;
|
|
109
|
+
--ui-icon-border: 0;
|
|
110
|
+
--ui-icon-shadow: none;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
:host([variant="elevated"]) {
|
|
114
|
+
--ui-icon-pad: 6px;
|
|
115
|
+
--ui-icon-bg: linear-gradient(
|
|
116
|
+
165deg,
|
|
117
|
+
color-mix(in srgb, var(--ui-color-surface, #ffffff) 92%, #ffffff 8%),
|
|
118
|
+
color-mix(in srgb, var(--ui-color-surface, #ffffff) 98%, transparent)
|
|
119
|
+
);
|
|
120
|
+
--ui-icon-border: 1px solid color-mix(in srgb, var(--ui-color-border, #cbd5e1) 68%, transparent);
|
|
121
|
+
--ui-icon-shadow:
|
|
122
|
+
0 1px 4px rgba(2, 6, 23, 0.08),
|
|
123
|
+
0 10px 20px rgba(2, 6, 23, 0.12);
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
:host([tone="brand"]) { --ui-icon-color: var(--ui-color-primary, var(--ui-primary, #2563eb)); }
|
|
127
|
+
:host([tone="success"]) { --ui-icon-color: var(--ui-color-success, var(--ui-success, #15803d)); }
|
|
128
|
+
:host([tone="warning"]) { --ui-icon-color: var(--ui-color-warning, var(--ui-warning, #b45309)); }
|
|
129
|
+
:host([tone="danger"]) { --ui-icon-color: var(--ui-color-danger, var(--ui-error, #dc2626)); }
|
|
130
|
+
|
|
131
|
+
:host([shape="square"]) { --ui-icon-radius: 4px; }
|
|
132
|
+
:host([shape="soft"]) { --ui-icon-radius: 13px; }
|
|
133
|
+
|
|
134
|
+
:host([spin]) .glyph {
|
|
135
|
+
animation: spin var(--ui-icon-rotate-duration) linear infinite;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
:host([pulse]) .icon {
|
|
139
|
+
animation: pulse var(--ui-icon-pulse-duration) ease-in-out infinite;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
:host(:not([headless])) .icon:hover {
|
|
143
|
+
transform: translateY(-0.5px);
|
|
144
|
+
box-shadow: 0 3px 12px rgba(2, 6, 23, 0.14);
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
:host([headless]) .icon {
|
|
148
|
+
display: none;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
@keyframes spin {
|
|
152
|
+
from { transform: rotate(0deg); }
|
|
153
|
+
to { transform: rotate(360deg); }
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
@keyframes pulse {
|
|
157
|
+
0%, 100% { transform: scale(1); }
|
|
158
|
+
50% { transform: scale(1.06); }
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
@media (prefers-reduced-motion: reduce) {
|
|
162
|
+
.icon,
|
|
163
|
+
.glyph {
|
|
164
|
+
animation: none !important;
|
|
165
|
+
transition: none !important;
|
|
166
|
+
transform: none !important;
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
@media (prefers-contrast: more) {
|
|
171
|
+
:host {
|
|
172
|
+
--ui-icon-border: 2px solid color-mix(in srgb, currentColor 48%, transparent);
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
@media (forced-colors: active) {
|
|
177
|
+
:host {
|
|
178
|
+
--ui-icon-color: CanvasText;
|
|
179
|
+
--ui-icon-bg: Canvas;
|
|
180
|
+
--ui-icon-border: 1px solid CanvasText;
|
|
181
|
+
--ui-icon-shadow: none;
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
.icon,
|
|
185
|
+
.fallback {
|
|
186
|
+
forced-color-adjust: none;
|
|
187
|
+
background: Canvas;
|
|
188
|
+
color: CanvasText;
|
|
189
|
+
border-color: CanvasText;
|
|
190
|
+
box-shadow: none;
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
.badge {
|
|
194
|
+
background: Highlight;
|
|
195
|
+
border-color: Canvas;
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
`;function c(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function b(e){if(!e)return null;const i=e.trim();return i?/^\d+(\.\d+)?$/.test(i)?`${i}px`:i:null}function l(e){if(!e)return;const i=Number(e);return Number.isFinite(i)?i:void 0}class u extends p.ElementBase{constructor(){super(),this._lastName="",this._waitingForIcons=!1}static get observedAttributes(){return["name","size","color","variant","icon-variant","icon-weight","secondary-color","tone","shape","spin","pulse","badge","label","decorative","stroke-width","absolute-stroke-width","stroke-linecap","stroke-linejoin","rotate","flip","rtl","headless"]}_syncDynamicVars(){const i=b(this.getAttribute("size"));i?this.style.setProperty("--ui-icon-size",i):this.style.removeProperty("--ui-icon-size");const o=this.getAttribute("color");o?this.style.setProperty("--ui-icon-color",o):this.style.removeProperty("--ui-icon-color");const t=this.getAttribute("stroke-width");t?this.style.setProperty("--ui-icon-stroke-width",t):this.style.removeProperty("--ui-icon-stroke-width")}render(){if(this._syncDynamicVars(),this.hasAttribute("headless")){this.setContent("<style></style><slot></slot>");return}const i=this.getAttribute("name")||"",o=this.getAttribute("label")||"",t=this.hasAttribute("decorative"),a=i?n.getIcon(i,{variant:this.getAttribute("icon-variant")||void 0,iconWeight:this.getAttribute("icon-weight")||void 0,secondaryColor:this.getAttribute("secondary-color")||void 0,strokeWidth:l(this.getAttribute("stroke-width")),absoluteStrokeWidth:this.hasAttribute("absolute-stroke-width"),strokeLinecap:this.getAttribute("stroke-linecap")||void 0,strokeLinejoin:this.getAttribute("stroke-linejoin")||void 0,rotate:l(this.getAttribute("rotate")),flip:this.getAttribute("flip")||void 0,rtl:this.hasAttribute("rtl")}):"",r=!!a,s=!!i&&!r&&!n.iconsLoaded();s&&!this._waitingForIcons&&(this._waitingForIcons=!0,n.whenIconsLoaded(()=>{this._waitingForIcons=!1,this.isConnected&&this.requestRender()}));const d=t?'aria-hidden="true" role="presentation"':`role="img" aria-label="${c(o||i||"icon")}"`;this.setContent(`
|
|
199
|
+
<style>${h}</style>
|
|
200
|
+
<span class="icon" part="icon" ${d}>
|
|
201
|
+
<span class="glyph" part="glyph">
|
|
202
|
+
${r?a:s?"":`<span class="fallback" part="fallback">${c((i||"?").slice(0,1).toUpperCase())}</span>`}
|
|
203
|
+
${!r&&!s?"<slot></slot>":""}
|
|
204
|
+
</span>
|
|
205
|
+
${this.hasAttribute("badge")?'<span class="badge" part="badge" aria-hidden="true"></span>':""}
|
|
206
|
+
</span>
|
|
207
|
+
`),i!==this._lastName&&!s&&(this.dispatchEvent(new CustomEvent("iconchange",{detail:{name:i,found:r},bubbles:!0})),this._lastName=i)}shouldRenderOnAttributeChange(i,o,t){return!0}}typeof customElements<"u"&&!customElements.get("ui-icon")&&customElements.define("ui-icon",u);exports.UIIcon=u;
|
package/dist/icon.esm.js
CHANGED
|
@@ -1,4 +1,296 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { E as u } from "./ElementBase-D5QsC5Vw.mjs";
|
|
2
|
+
import { g as d, w as p, i as h } from "./icons-DWYbbhb0.mjs";
|
|
3
|
+
const b = `
|
|
4
|
+
:host {
|
|
5
|
+
--ui-icon-size: 1em;
|
|
6
|
+
--ui-icon-color: currentColor;
|
|
7
|
+
--ui-icon-radius: 8px;
|
|
8
|
+
--ui-icon-bg: transparent;
|
|
9
|
+
--ui-icon-border: 1px solid transparent;
|
|
10
|
+
--ui-icon-shadow: none;
|
|
11
|
+
--ui-icon-pad: 0;
|
|
12
|
+
--ui-icon-rotate-duration: 0.9s;
|
|
13
|
+
--ui-icon-pulse-duration: 1.35s;
|
|
14
|
+
color-scheme: light dark;
|
|
15
|
+
display: inline-grid;
|
|
16
|
+
place-items: center;
|
|
17
|
+
inline-size: calc(var(--ui-icon-size) + (var(--ui-icon-pad) * 2));
|
|
18
|
+
block-size: calc(var(--ui-icon-size) + (var(--ui-icon-pad) * 2));
|
|
19
|
+
color: var(--ui-icon-color);
|
|
20
|
+
vertical-align: middle;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.icon {
|
|
24
|
+
position: relative;
|
|
25
|
+
display: grid;
|
|
26
|
+
place-items: center;
|
|
27
|
+
inline-size: 100%;
|
|
28
|
+
block-size: 100%;
|
|
29
|
+
border-radius: var(--ui-icon-radius);
|
|
30
|
+
border: var(--ui-icon-border);
|
|
31
|
+
background: var(--ui-icon-bg);
|
|
32
|
+
box-shadow: var(--ui-icon-shadow);
|
|
33
|
+
transition: transform 170ms ease, box-shadow 170ms ease, background-color 170ms ease, border-color 170ms ease;
|
|
34
|
+
overflow: hidden;
|
|
35
|
+
isolation: isolate;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
.glyph {
|
|
39
|
+
inline-size: var(--ui-icon-size);
|
|
40
|
+
block-size: var(--ui-icon-size);
|
|
41
|
+
display: grid;
|
|
42
|
+
place-items: center;
|
|
43
|
+
line-height: 0;
|
|
44
|
+
color: currentColor;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.glyph > svg {
|
|
48
|
+
inline-size: 100%;
|
|
49
|
+
block-size: 100%;
|
|
50
|
+
display: block;
|
|
51
|
+
fill: currentColor;
|
|
52
|
+
stroke-width: var(--ui-icon-stroke-width, 1.5);
|
|
53
|
+
shape-rendering: geometricPrecision;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.fallback {
|
|
57
|
+
display: inline-grid;
|
|
58
|
+
place-items: center;
|
|
59
|
+
inline-size: 100%;
|
|
60
|
+
block-size: 100%;
|
|
61
|
+
border-radius: max(4px, calc(var(--ui-icon-radius) - 3px));
|
|
62
|
+
font: 700 11px/1 "IBM Plex Sans", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
|
|
63
|
+
letter-spacing: 0.02em;
|
|
64
|
+
color: color-mix(in srgb, currentColor 74%, transparent);
|
|
65
|
+
background: color-mix(in srgb, currentColor 10%, transparent);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
.badge {
|
|
69
|
+
position: absolute;
|
|
70
|
+
right: 0;
|
|
71
|
+
top: 0;
|
|
72
|
+
transform: translate(36%, -36%);
|
|
73
|
+
min-inline-size: 8px;
|
|
74
|
+
block-size: 8px;
|
|
75
|
+
border-radius: 999px;
|
|
76
|
+
background: var(--ui-icon-badge-bg, #ef4444);
|
|
77
|
+
border: 2px solid var(--ui-icon-bg, transparent);
|
|
78
|
+
box-sizing: border-box;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
:host([size="xs"]) { --ui-icon-size: 12px; }
|
|
82
|
+
:host([size="sm"]) { --ui-icon-size: 14px; }
|
|
83
|
+
:host([size="md"]) { --ui-icon-size: 18px; }
|
|
84
|
+
:host([size="lg"]) { --ui-icon-size: 22px; }
|
|
85
|
+
:host([size="xl"]) { --ui-icon-size: 28px; }
|
|
86
|
+
|
|
87
|
+
:host([variant="surface"]) {
|
|
88
|
+
--ui-icon-pad: 6px;
|
|
89
|
+
--ui-icon-bg: var(--ui-color-surface, var(--ui-surface, #ffffff));
|
|
90
|
+
--ui-icon-border: 1px solid color-mix(in srgb, var(--ui-color-border, #cbd5e1) 72%, transparent);
|
|
91
|
+
--ui-icon-shadow: 0 1px 3px rgba(2, 6, 23, 0.08);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
:host([variant="soft"]) {
|
|
95
|
+
--ui-icon-pad: 6px;
|
|
96
|
+
--ui-icon-bg: color-mix(in srgb, currentColor 8%, transparent);
|
|
97
|
+
--ui-icon-border: 1px solid color-mix(in srgb, currentColor 18%, transparent);
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
:host([variant="contrast"]) {
|
|
101
|
+
--ui-icon-pad: 6px;
|
|
102
|
+
--ui-icon-bg: #0f172a;
|
|
103
|
+
--ui-icon-color: #e2e8f0;
|
|
104
|
+
--ui-icon-border: 1px solid #334155;
|
|
105
|
+
--ui-icon-shadow: 0 2px 8px rgba(2, 6, 23, 0.28);
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
:host([variant="minimal"]) {
|
|
109
|
+
--ui-icon-pad: 0;
|
|
110
|
+
--ui-icon-bg: transparent;
|
|
111
|
+
--ui-icon-border: 0;
|
|
112
|
+
--ui-icon-shadow: none;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
:host([variant="elevated"]) {
|
|
116
|
+
--ui-icon-pad: 6px;
|
|
117
|
+
--ui-icon-bg: linear-gradient(
|
|
118
|
+
165deg,
|
|
119
|
+
color-mix(in srgb, var(--ui-color-surface, #ffffff) 92%, #ffffff 8%),
|
|
120
|
+
color-mix(in srgb, var(--ui-color-surface, #ffffff) 98%, transparent)
|
|
121
|
+
);
|
|
122
|
+
--ui-icon-border: 1px solid color-mix(in srgb, var(--ui-color-border, #cbd5e1) 68%, transparent);
|
|
123
|
+
--ui-icon-shadow:
|
|
124
|
+
0 1px 4px rgba(2, 6, 23, 0.08),
|
|
125
|
+
0 10px 20px rgba(2, 6, 23, 0.12);
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
:host([tone="brand"]) { --ui-icon-color: var(--ui-color-primary, var(--ui-primary, #2563eb)); }
|
|
129
|
+
:host([tone="success"]) { --ui-icon-color: var(--ui-color-success, var(--ui-success, #15803d)); }
|
|
130
|
+
:host([tone="warning"]) { --ui-icon-color: var(--ui-color-warning, var(--ui-warning, #b45309)); }
|
|
131
|
+
:host([tone="danger"]) { --ui-icon-color: var(--ui-color-danger, var(--ui-error, #dc2626)); }
|
|
132
|
+
|
|
133
|
+
:host([shape="square"]) { --ui-icon-radius: 4px; }
|
|
134
|
+
:host([shape="soft"]) { --ui-icon-radius: 13px; }
|
|
135
|
+
|
|
136
|
+
:host([spin]) .glyph {
|
|
137
|
+
animation: spin var(--ui-icon-rotate-duration) linear infinite;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
:host([pulse]) .icon {
|
|
141
|
+
animation: pulse var(--ui-icon-pulse-duration) ease-in-out infinite;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
:host(:not([headless])) .icon:hover {
|
|
145
|
+
transform: translateY(-0.5px);
|
|
146
|
+
box-shadow: 0 3px 12px rgba(2, 6, 23, 0.14);
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
:host([headless]) .icon {
|
|
150
|
+
display: none;
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
@keyframes spin {
|
|
154
|
+
from { transform: rotate(0deg); }
|
|
155
|
+
to { transform: rotate(360deg); }
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
@keyframes pulse {
|
|
159
|
+
0%, 100% { transform: scale(1); }
|
|
160
|
+
50% { transform: scale(1.06); }
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
@media (prefers-reduced-motion: reduce) {
|
|
164
|
+
.icon,
|
|
165
|
+
.glyph {
|
|
166
|
+
animation: none !important;
|
|
167
|
+
transition: none !important;
|
|
168
|
+
transform: none !important;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
@media (prefers-contrast: more) {
|
|
173
|
+
:host {
|
|
174
|
+
--ui-icon-border: 2px solid color-mix(in srgb, currentColor 48%, transparent);
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
@media (forced-colors: active) {
|
|
179
|
+
:host {
|
|
180
|
+
--ui-icon-color: CanvasText;
|
|
181
|
+
--ui-icon-bg: Canvas;
|
|
182
|
+
--ui-icon-border: 1px solid CanvasText;
|
|
183
|
+
--ui-icon-shadow: none;
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
.icon,
|
|
187
|
+
.fallback {
|
|
188
|
+
forced-color-adjust: none;
|
|
189
|
+
background: Canvas;
|
|
190
|
+
color: CanvasText;
|
|
191
|
+
border-color: CanvasText;
|
|
192
|
+
box-shadow: none;
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
.badge {
|
|
196
|
+
background: Highlight;
|
|
197
|
+
border-color: Canvas;
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
`;
|
|
201
|
+
function a(o) {
|
|
202
|
+
return o.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """).replace(/'/g, "'");
|
|
203
|
+
}
|
|
204
|
+
function g(o) {
|
|
205
|
+
if (!o) return null;
|
|
206
|
+
const i = o.trim();
|
|
207
|
+
return i ? /^\d+(\.\d+)?$/.test(i) ? `${i}px` : i : null;
|
|
208
|
+
}
|
|
209
|
+
function c(o) {
|
|
210
|
+
if (!o) return;
|
|
211
|
+
const i = Number(o);
|
|
212
|
+
return Number.isFinite(i) ? i : void 0;
|
|
213
|
+
}
|
|
214
|
+
class m extends u {
|
|
215
|
+
constructor() {
|
|
216
|
+
super(), this._lastName = "", this._waitingForIcons = !1;
|
|
217
|
+
}
|
|
218
|
+
static get observedAttributes() {
|
|
219
|
+
return [
|
|
220
|
+
"name",
|
|
221
|
+
"size",
|
|
222
|
+
"color",
|
|
223
|
+
"variant",
|
|
224
|
+
"icon-variant",
|
|
225
|
+
"icon-weight",
|
|
226
|
+
"secondary-color",
|
|
227
|
+
"tone",
|
|
228
|
+
"shape",
|
|
229
|
+
"spin",
|
|
230
|
+
"pulse",
|
|
231
|
+
"badge",
|
|
232
|
+
"label",
|
|
233
|
+
"decorative",
|
|
234
|
+
"stroke-width",
|
|
235
|
+
"absolute-stroke-width",
|
|
236
|
+
"stroke-linecap",
|
|
237
|
+
"stroke-linejoin",
|
|
238
|
+
"rotate",
|
|
239
|
+
"flip",
|
|
240
|
+
"rtl",
|
|
241
|
+
"headless"
|
|
242
|
+
];
|
|
243
|
+
}
|
|
244
|
+
_syncDynamicVars() {
|
|
245
|
+
const i = g(this.getAttribute("size"));
|
|
246
|
+
i ? this.style.setProperty("--ui-icon-size", i) : this.style.removeProperty("--ui-icon-size");
|
|
247
|
+
const e = this.getAttribute("color");
|
|
248
|
+
e ? this.style.setProperty("--ui-icon-color", e) : this.style.removeProperty("--ui-icon-color");
|
|
249
|
+
const r = this.getAttribute("stroke-width");
|
|
250
|
+
r ? this.style.setProperty("--ui-icon-stroke-width", r) : this.style.removeProperty("--ui-icon-stroke-width");
|
|
251
|
+
}
|
|
252
|
+
render() {
|
|
253
|
+
if (this._syncDynamicVars(), this.hasAttribute("headless")) {
|
|
254
|
+
this.setContent("<style></style><slot></slot>");
|
|
255
|
+
return;
|
|
256
|
+
}
|
|
257
|
+
const i = this.getAttribute("name") || "", e = this.getAttribute("label") || "", r = this.hasAttribute("decorative"), n = i ? d(i, {
|
|
258
|
+
variant: this.getAttribute("icon-variant") || void 0,
|
|
259
|
+
iconWeight: this.getAttribute("icon-weight") || void 0,
|
|
260
|
+
secondaryColor: this.getAttribute("secondary-color") || void 0,
|
|
261
|
+
strokeWidth: c(this.getAttribute("stroke-width")),
|
|
262
|
+
absoluteStrokeWidth: this.hasAttribute("absolute-stroke-width"),
|
|
263
|
+
strokeLinecap: this.getAttribute("stroke-linecap") || void 0,
|
|
264
|
+
strokeLinejoin: this.getAttribute("stroke-linejoin") || void 0,
|
|
265
|
+
rotate: c(this.getAttribute("rotate")),
|
|
266
|
+
flip: this.getAttribute("flip") || void 0,
|
|
267
|
+
rtl: this.hasAttribute("rtl")
|
|
268
|
+
}) : "", t = !!n, s = !!i && !t && !h();
|
|
269
|
+
s && !this._waitingForIcons && (this._waitingForIcons = !0, p(() => {
|
|
270
|
+
this._waitingForIcons = !1, this.isConnected && this.requestRender();
|
|
271
|
+
}));
|
|
272
|
+
const l = r ? 'aria-hidden="true" role="presentation"' : `role="img" aria-label="${a(e || i || "icon")}"`;
|
|
273
|
+
this.setContent(`
|
|
274
|
+
<style>${b}</style>
|
|
275
|
+
<span class="icon" part="icon" ${l}>
|
|
276
|
+
<span class="glyph" part="glyph">
|
|
277
|
+
${t ? n : s ? "" : `<span class="fallback" part="fallback">${a((i || "?").slice(0, 1).toUpperCase())}</span>`}
|
|
278
|
+
${!t && !s ? "<slot></slot>" : ""}
|
|
279
|
+
</span>
|
|
280
|
+
${this.hasAttribute("badge") ? '<span class="badge" part="badge" aria-hidden="true"></span>' : ""}
|
|
281
|
+
</span>
|
|
282
|
+
`), i !== this._lastName && !s && (this.dispatchEvent(
|
|
283
|
+
new CustomEvent("iconchange", {
|
|
284
|
+
detail: { name: i, found: t },
|
|
285
|
+
bubbles: !0
|
|
286
|
+
})
|
|
287
|
+
), this._lastName = i);
|
|
288
|
+
}
|
|
289
|
+
shouldRenderOnAttributeChange(i, e, r) {
|
|
290
|
+
return !0;
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
typeof customElements < "u" && !customElements.get("ui-icon") && customElements.define("ui-icon", m);
|
|
2
294
|
export {
|
|
3
|
-
|
|
295
|
+
m as UIIcon
|
|
4
296
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var w=Object.create;var L=Object.defineProperty;var z=Object.getOwnPropertyDescriptor;var j=Object.getOwnPropertyNames;var b=Object.getPrototypeOf,M=Object.prototype.hasOwnProperty;var R=(n,e,t,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of j(e))!M.call(n,r)&&r!==t&&L(n,r,{get:()=>e[r],enumerable:!(o=z(e,r))||o.enumerable});return n};var D=(n,e,t)=>(t=n!=null?w(b(n)):{},R(e||!n||!n.__esModule?L(t,"default",{value:n,enumerable:!0}):t,n));let c=null,a=null;const h=new Set;function k(){return c?Promise.resolve():(a||(a=import("@editora/icons").then(n=>{c=n,g.clear();const e=Array.from(h);return h.clear(),e.forEach(t=>{try{t()}catch{}}),n}),a.catch(()=>{a=null})),a.then(()=>{}))}function V(){return!!c}function A(n){return c?(n(),()=>{}):(h.add(n),k(),()=>h.delete(n))}function W(n){return c?c.hasIcon(n):(k(),!1)}const s=new Map,m=new Map;let I=null;function E(n,e){I=e;for(const t of n)for(const o of[t.name,...t.aliases||[]]){const r=l(o);r&&m.set(r,t)}g.clear()}const g=new Map;function l(n){return String(n||"").trim().toLowerCase().replace(/\s+/g,"-").replace(/_/g,"-")}function K(n,e){if(!e)return`${n}::default`;const t=e.variant||"outline",o=e.iconWeight||"",r=e.secondaryColor||"",u=e.strokeWidth==null?"":String(e.strokeWidth),f=e.absoluteStrokeWidth?"1":"0",d=e.strokeLinecap||"",i=e.strokeLinejoin||"",y=e.rotate==null?"":String(e.rotate),C=e.flip||"",S=e.rtl?"1":"0";return[n,t,o,r,u,f,d,i,y,C,S].join("::")}function N(n,e){const t=l(n);t&&s.set(t,e)}function O(n){const e=l(n);e&&s.delete(e)}function P(){s.clear()}function _(n){const e=l(n);return e?s.has(e)||m.has(e)?!0:W(e):!1}function $(n,e){return v(n,{variant:e})}function v(n,e){const t=l(n);if(!t)return"";const o=s.get(t);if(o)return o;const r=m.get(t);if(!r&&!W(t))return"";const u=K(t,e),f=g.get(u);if(f)return f;if(!r&&!c)return"";const d={variant:e?.variant||"outline",iconWeight:e?.iconWeight,secondaryColor:e?.secondaryColor,strokeWidth:e?.strokeWidth,absoluteStrokeWidth:e?.absoluteStrokeWidth,strokeLinecap:e?.strokeLinecap,strokeLinejoin:e?.strokeLinejoin,rotate:e?.rotate,flip:e?.flip,rtl:e?.rtl,color:"currentColor",decorative:!0},i=r&&I?I(r,d):c.renderIconSvg(t,d);return i&&g.set(u,i),i}exports.clearCustomIcons=P;exports.getIcon=v;exports.getIconVariant=$;exports.hasIcon=_;exports.iconsLoaded=V;exports.loadIcons=k;exports.registerIcon=N;exports.registerIconDefinitions=E;exports.unregisterIcon=O;exports.whenIconsLoaded=A;
|