@luzmo/lucero 1.0.2 → 1.0.3-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/README.md +0 -1
  2. package/components/action-button/action-button.d.ts +11 -0
  3. package/components/action-button/index.cjs +1 -1
  4. package/components/action-button/index.d.ts +1 -0
  5. package/components/action-button/index.js +1 -1
  6. package/components/{action-button-G0PWSrZo.cjs → action-button-BC6ge1lw.cjs} +2 -2
  7. package/components/{action-button-B4_UEJle.js → action-button-C3WrvQsA.js} +25 -9
  8. package/components/action-menu/index.cjs +1 -1
  9. package/components/action-menu/index.js +1 -1
  10. package/components/{action-menu-FiS1vhW7.js → action-menu-CaajKKHk.js} +1 -1
  11. package/components/{action-menu-CJyB0mmO.cjs → action-menu-CgFPl0Zu.cjs} +1 -1
  12. package/components/calendar/index.cjs +1 -1
  13. package/components/calendar/index.js +1 -1
  14. package/components/{calendar-CKr5T_zV.js → calendar-B5U3adT2.js} +1 -1
  15. package/components/{calendar-WRhzTEyZ.cjs → calendar-FhfWdLWQ.cjs} +1 -1
  16. package/components/date-range-picker/index.cjs +1 -1
  17. package/components/date-range-picker/index.js +1 -1
  18. package/components/{date-range-picker-BdRQep--.js → date-range-picker-DGYJGNOJ.js} +1 -1
  19. package/components/{date-range-picker-CgitOe0i.cjs → date-range-picker-DxNaTwB8.cjs} +1 -1
  20. package/components/date-time-picker/index.cjs +1 -1
  21. package/components/date-time-picker/index.js +1 -1
  22. package/components/{date-time-picker-Ct_ln8Ot.js → date-time-picker-4UQKUpOX.js} +1 -1
  23. package/components/{date-time-picker-Bz8XwSOR.cjs → date-time-picker-CRCmK3Lj.cjs} +1 -1
  24. package/components/index.cjs +1 -1
  25. package/components/index.js +11 -12
  26. package/components/prompt-box/index.cjs +1 -1
  27. package/components/prompt-box/index.js +1 -1
  28. package/components/prompt-box/prompt-box.d.ts +6 -0
  29. package/components/{prompt-box-BEloQP-R.js → prompt-box-CiALHARZ.js} +120 -93
  30. package/components/{prompt-box-DV8Smf3Q.cjs → prompt-box-DPhB43h3.cjs} +22 -5
  31. package/components/switch/index.cjs +1 -1
  32. package/components/switch/index.js +1 -1
  33. package/components/tabs/index.cjs +1 -1
  34. package/components/tabs/index.js +1 -1
  35. package/components/{tabs-BfTgzdid.cjs → tabs-CIQWFphJ.cjs} +1 -1
  36. package/components/{tabs-BthdwrmW.js → tabs-DwFeTkYN.js} +2 -2
  37. package/components/toast/index.cjs +1 -1
  38. package/components/toast/index.js +1 -1
  39. package/components/top-nav/index.cjs +1 -1
  40. package/components/top-nav/index.js +1 -1
  41. package/components/{top-nav-DVQ5ASMa.js → top-nav-CMVB3G_v.js} +1 -1
  42. package/components/{top-nav-DlTojz8S.cjs → top-nav-bekRXHUk.cjs} +1 -1
  43. package/custom-elements.json +1 -1
  44. package/index.d.ts +0 -1
  45. package/package.json +2 -8
  46. package/components/suggestion/index.cjs +0 -18
  47. package/components/suggestion/index.d.ts +0 -8
  48. package/components/suggestion/index.js +0 -25
  49. package/components/suggestion/suggestion.d.ts +0 -45
  50. package/components/suggestion-CEJiW_7y.cjs +0 -23
  51. package/components/suggestion-DK5gxxDI.js +0 -76
  52. /package/components/{scaled-indicator-BcO2BOsf.js → scaled-indicator-BoLeYSgL.js} +0 -0
  53. /package/components/{scaled-indicator-p8-3k2cJ.cjs → scaled-indicator-DF45Sc3W.cjs} +0 -0
  54. /package/components/{switch-BdE-hI69.js → switch-C5g5t5x2.js} +0 -0
  55. /package/components/{switch-KzkrF-ob.cjs → switch-COhz9ka9.cjs} +0 -0
  56. /package/components/{toast-DKwphMrp.js → toast-BoPYq3c-.js} +0 -0
  57. /package/components/{toast-CJSQUzoW.cjs → toast-DL40wb8G.cjs} +0 -0
package/index.d.ts CHANGED
@@ -46,7 +46,6 @@ export * from './components/select';
46
46
  export * from './components/skeleton-loader';
47
47
  export * from './components/slider';
48
48
  export * from './components/status-light';
49
- export * from './components/suggestion';
50
49
  export * from './components/swatch';
51
50
  export * from './components/switch';
52
51
  export * from './components/tabs';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@luzmo/lucero",
3
- "version": "1.0.2",
3
+ "version": "1.0.3-alpha.1",
4
4
  "homepage": "https://luzmo.com",
5
5
  "description": "Lucero - The design system for Luzmo",
6
6
  "type": "module",
@@ -310,12 +310,6 @@
310
310
  "import": "./components/status-light/index.js",
311
311
  "require": "./components/status-light/index.cjs"
312
312
  },
313
- "./suggestion": {
314
- "types": "./components/suggestion/index.d.ts",
315
- "node": "./components/suggestion/index.js",
316
- "import": "./components/suggestion/index.js",
317
- "require": "./components/suggestion/index.cjs"
318
- },
319
313
  "./swatch": {
320
314
  "types": "./components/swatch/index.d.ts",
321
315
  "node": "./components/swatch/index.js",
@@ -391,7 +385,7 @@
391
385
  "@internationalized/number": "^3.6.6",
392
386
  "@lit-labs/observers": "^2.1.0",
393
387
  "@lit-labs/virtualizer": "^2.1.1",
394
- "@luzmo/icons": "^1.0.1-alpha.39",
388
+ "@luzmo/icons": "^1.0.1-alpha.41",
395
389
  "colorjs.io": "^0.5.2",
396
390
  "lit": "^3.3.2",
397
391
  "nouislider": "^15.8.1"
@@ -1,18 +0,0 @@
1
- /*! * Lucero - The design system for Luzmo.
2
- *
3
- * Copyright © 2025 Luzmo
4
- * All rights reserved.
5
- * Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
6
- * This license allows users with a current active Luzmo account to use Lucero.
7
- * This license terminates automatically if a user no longer has an active Luzmo account.
8
- * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
9
- *
10
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
13
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
14
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
15
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
- * SOFTWARE.
17
- * */
18
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`../suggestion-CEJiW_7y.cjs`);exports.LuzmoSuggestion=e.t;
@@ -1,8 +0,0 @@
1
- import { LuzmoSuggestion } from './suggestion';
2
- declare global {
3
- interface HTMLElementTagNameMap {
4
- 'luzmo-suggestion': LuzmoSuggestion;
5
- }
6
- }
7
- export { LuzmoSuggestion } from './suggestion';
8
- export type { SuggestionVariants } from './suggestion';
@@ -1,25 +0,0 @@
1
- /*! * Lucero - The design system for Luzmo.
2
- *
3
- * Copyright © 2025 Luzmo
4
- * All rights reserved.
5
- * Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
6
- * This license allows users with a current active Luzmo account to use Lucero.
7
- * This license terminates automatically if a user no longer has an active Luzmo account.
8
- * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
9
- *
10
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
13
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
14
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
15
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
- * SOFTWARE.
17
- * */
18
- (() => {
19
- if (typeof document < "u" && !document.querySelector("style[data-luzmo-vars]")) {
20
- let e = document.createElement("style");
21
- e.setAttribute("data-luzmo-vars", ""), e.textContent = "html{--luzmo-animation-duration: 0.15s;--luzmo-border-color: rgba(var(--luzmo-border-color-rgb), 0.1);--luzmo-border-color-hover: rgba(var(--luzmo-border-color-rgb), 0.15);--luzmo-border-color-down: rgba(var(--luzmo-border-color-rgb), 0.3);--luzmo-border-color-focus: rgba(var(--luzmo-border-color-rgb), 0.15);--luzmo-border-color-rgb: 0, 0, 0;--luzmo-border-color-full: rgb(180, 180, 180);--luzmo-border-color-full-hover: color-mix(in oklch, var(--luzmo-border-color-full), black 25%);--luzmo-border-color-full-down: color-mix(in oklch, var(--luzmo-border-color-full), black 45%);--luzmo-border-color-full-focus: color-mix(in oklch, var(--luzmo-border-color-full), black 25%);--luzmo-border-color-disabled: #dddddd;--luzmo-border-radius: 6px;--luzmo-border-radius-s: 4px;--luzmo-border-radius-l: 8px;--luzmo-border-radius-xl: 12px;--luzmo-border-radius-full: 999rem;--luzmo-border-width: 1px;--luzmo-font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen-Sans, Ubuntu, Cantarell, \"Helvetica Neue\", Helvetica, Arial, sans-serif;--luzmo-font-size-xs: 10px;--luzmo-font-size-s: 12px;--luzmo-font-size-m: 14px;--luzmo-font-size: 14px;--luzmo-font-size-l: 16px;--luzmo-font-size-xl: 18px;--luzmo-font-size-xxl: 20px;--luzmo-font-style: normal;--luzmo-line-height: normal;--luzmo-font-weight: 400;--luzmo-font-weight-semibold: 500;--luzmo-font-weight-bold: 600;--luzmo-font-color: #333;--luzmo-font-color-disabled: var(--luzmo-disabled-color);--luzmo-font-color-extra-dimmed: #888;--luzmo-font-color-hover: color-mix(in oklch, var(--luzmo-font-color), black 8%);--luzmo-font-color-down: color-mix(in oklch, var(--luzmo-font-color), black 20%);--luzmo-font-color-focus: color-mix(in oklch, var(--luzmo-font-color), black 8%);--luzmo-primary: #4434ff;--luzmo-primary-hover: color-mix(in oklch, var(--luzmo-primary), black 8%);--luzmo-primary-down: color-mix(in oklch, var(--luzmo-primary), black 20%);--luzmo-primary-focus: color-mix(in oklch, var(--luzmo-primary), black 8%);--luzmo-primary-inverse-color: #ffffff;--luzmo-primary-rgb: 68, 52, 255;--luzmo-background-color: #ffffff;--luzmo-background-color-rgb: 255, 255, 255;--luzmo-background-color-disabled: #eeeeee;--luzmo-background-color-hover: color-mix(in oklch, color-mix(in oklch, var(--luzmo-background-color), var(--luzmo-primary) 5%), black 1.5%);--luzmo-background-color-down: color-mix(in oklch, color-mix(in oklch, var(--luzmo-background-color), var(--luzmo-primary) 7%), black 1%);--luzmo-background-color-focus: color-mix(in oklch, color-mix(in oklch, var(--luzmo-background-color), var(--luzmo-primary) 5%), black 1.5%);--luzmo-background-color-highlight: rgb(240, 240, 240);--luzmo-background-color-highlight-disabled: rgb(245, 245, 245);--luzmo-background-color-highlight-hover: color-mix(in oklch, var(--luzmo-background-color-highlight), black 25%);--luzmo-background-color-highlight-down: color-mix(in oklch, var(--luzmo-background-color-highlight), black 45%);--luzmo-background-color-highlight-focus: color-mix(in oklch, var(--luzmo-background-color-highlight), black 25%);--luzmo-secondary: #d000d0;--luzmo-secondary-hover: color-mix(in oklch, var(--luzmo-secondary), black 8%);--luzmo-secondary-down: color-mix(in oklch, var(--luzmo-secondary), black 20%);--luzmo-secondary-focus: color-mix(in oklch, var(--luzmo-secondary), black 8%);--luzmo-secondary-inverse-color: #ffffff;--luzmo-secondary-rgb: 208, 0, 208;--luzmo-scrollbar-size: 6px;--luzmo-scrollbar-thumb-background: rgba(var(--luzmo-border-color-rgb), 0.3);--luzmo-scrollbar-thumb-border-radius: var(--luzmo-border-radius-s);--luzmo-scrollbar-thumb-hover-background: rgba( var(--luzmo-border-color-rgb), 0.4 );--luzmo-scrollbar-track-background: transparent;--luzmo-scrollbar-track-border-radius: var(--luzmo-border-radius-s);--luzmo-scrollbar-width: thin;--luzmo-negative-color: #ca221c;--luzmo-negative-color-hover: color-mix(in oklch, var(--luzmo-negative-color), black 8%);--luzmo-negative-color-down: color-mix(in oklch, var(--luzmo-negative-color), black 20%);--luzmo-negative-color-focus: color-mix(in oklch, var(--luzmo-negative-color), black 8%);--luzmo-negative-color-rgb: 202, 34, 28;--luzmo-negative-inverse-color: #ffffff;--luzmo-positive-color: rgb(18, 133, 90);--luzmo-positive-color-hover: color-mix(in oklch, var(--luzmo-positive-color), black 8%);--luzmo-positive-color-down: color-mix(in oklch, var(--luzmo-positive-color), black 20%);--luzmo-positive-color-focus: color-mix(in oklch, var(--luzmo-positive-color), black 8%);--luzmo-positive-color-rgb: 18, 133, 90;--luzmo-positive-inverse-color: #ffffff;--luzmo-selected-color: rgb(110, 110, 110);--luzmo-selected-color-hover: color-mix(in oklch, var(--luzmo-selected-color), black 25%);--luzmo-selected-color-down: color-mix(in oklch, var(--luzmo-selected-color), black 45%);--luzmo-selected-color-focus: color-mix(in oklch, var(--luzmo-selected-color), black 25%);--luzmo-selected-color-hard: #1e1e1e;--luzmo-selected-color-hard-hover: color-mix(in oklch, var(--luzmo-selected-color-hard), black 25%);--luzmo-selected-color-hard-down: color-mix(in oklch, var(--luzmo-selected-color-hard), black 45%);--luzmo-selected-color-hard-focus: color-mix(in oklch, var(--luzmo-selected-color-hard), black 25%);--luzmo-informative-color: #1670dd;--luzmo-informative-color-rgb: 22, 112, 221;--luzmo-notice-color: rgb(229, 127, 0);--luzmo-seafoam-color: rgb(0, 140, 140);--luzmo-indigo-color: rgb(68, 52, 255);--luzmo-purple-color: rgb(112, 48, 210);--luzmo-fuchsia-color: rgb(205, 30, 170);--luzmo-magenta-color: rgb(203, 36, 98);--luzmo-yellow-color: rgb(228, 208, 0);--luzmo-gray-color: rgb(110, 110, 110);--luzmo-red-color: rgb(202, 34, 28);--luzmo-orange-color: rgb(218, 123, 17);--luzmo-chartreuse-color: rgb(85, 135, 0);--luzmo-celery-color: rgb(48, 134, 22);--luzmo-green-color: rgb(18, 133, 90);--luzmo-cyan-color: rgb(0, 134, 180);--luzmo-blue-color: rgb(22, 112, 221);--luzmo-disabled-color: #aaaaaa;--luzmo-spacing-1: 2px;--luzmo-spacing-2: 4px;--luzmo-spacing-3: 8px;--luzmo-spacing-4: 12px;--luzmo-spacing-5: 16px;--luzmo-indicator-gap: 2px;--luzmo-indicator-width: 1px;--luzmo-indicator-color: var(--luzmo-primary);--luzmo-component-height-xxs: 20px;--luzmo-component-height-xs: 24px;--luzmo-component-height-s: 28px;--luzmo-component-height: 32px;--luzmo-component-height-l: 40px;--luzmo-component-height-xl: 48px;--luzmo-component-height-xxl: 64px;--luzmo-icon-size-xxs: 10px;--luzmo-icon-size-xs: 12px;--luzmo-icon-size-s: 14px;--luzmo-icon-size-m: 16px;--luzmo-icon-size-l: 18px;--luzmo-icon-size-xl: 20px;--luzmo-icon-size-xxl: 32px}", document.head.appendChild(e);
22
- }
23
- })();
24
- import { t as e } from "../suggestion-DK5gxxDI.js";
25
- export { e as LuzmoSuggestion };
@@ -1,45 +0,0 @@
1
- import { CSSResultArray, PropertyValues, TemplateResult } from 'lit';
2
- import { LuzmoElement } from '../../utils/base';
3
- export type SuggestionVariants = 'default' | 'prompt';
4
- export declare const validSuggestionVariants: SuggestionVariants[];
5
- declare const LuzmoSuggestion_base: typeof LuzmoElement & {
6
- new (...args: any[]): import("../../utils/observe-slot-text").SlotTextObservingInterface;
7
- prototype: import("../../utils/observe-slot-text").SlotTextObservingInterface;
8
- };
9
- /**
10
- * @element luzmo-suggestion
11
- *
12
- * A clickable pill used to surface a single suggestion - typically a suggested
13
- * dataset, prompt, or follow-up question above a chat input. The host element
14
- * behaves like a button: it is focusable and activates on click, Enter, or
15
- * Space.
16
- *
17
- * @slot - text label of the suggestion
18
- * @slot icon - an icon element to display before the label
19
- *
20
- * @cssprop --luzmo-suggestion-background-color
21
- * @cssprop --luzmo-suggestion-border-color
22
- * @cssprop --luzmo-suggestion-content-color
23
- * @cssprop --luzmo-suggestion-border-radius
24
- * @cssprop --luzmo-suggestion-padding-inline
25
- * @cssprop --luzmo-suggestion-padding-block
26
- * @cssprop --luzmo-suggestion-font-size
27
- * @cssprop --luzmo-suggestion-icon-size
28
- */
29
- export declare class LuzmoSuggestion extends LuzmoSuggestion_base {
30
- static get styles(): CSSResultArray;
31
- private _variant;
32
- get variant(): SuggestionVariants;
33
- set variant(variant: SuggestionVariants);
34
- disabled: boolean;
35
- constructor();
36
- private handleClickCapture;
37
- private handleKeydown;
38
- private handleIconSlotChange;
39
- protected get hasLabel(): boolean;
40
- protected render(): TemplateResult;
41
- protected firstUpdated(changes: PropertyValues): void;
42
- protected updated(changes: PropertyValues): void;
43
- private updateTabindex;
44
- }
45
- export {};
@@ -1,23 +0,0 @@
1
- /*! * Lucero - The design system for Luzmo.
2
- *
3
- * Copyright © 2025 Luzmo
4
- * All rights reserved.
5
- * Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
6
- * This license allows users with a current active Luzmo account to use Lucero.
7
- * This license terminates automatically if a user no longer has an active Luzmo account.
8
- * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
9
- *
10
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
13
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
14
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
15
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
- * SOFTWARE.
17
- * */
18
- require(`./chunk-D-qHiVGv.cjs`);const e=require(`./decorate-B2wePfNm.cjs`),t=require(`./observe-slot-text-BhTcGuHY.cjs`);let n=require(`lit`),r=require(`lit/decorators.js`);var i=`:host{font-family:var(--luzmo-suggestion-font-family,var(--suggestion-font-family));background-color:var(--luzmo-suggestion-background-color,var(--suggestion-background-color));color:var(--luzmo-suggestion-content-color,var(--suggestion-content-color));border-radius:var(--luzmo-suggestion-border-radius,var(--suggestion-border-radius));box-sizing:border-box;vertical-align:middle;-webkit-user-select:none;user-select:none;max-inline-size:100%;transition:border-color var(--luzmo-suggestion-animation-duration,var(--suggestion-animation-duration)) ease-in-out, color var(--luzmo-suggestion-animation-duration,var(--suggestion-animation-duration)) ease-in-out, background-color var(--luzmo-suggestion-animation-duration,var(--suggestion-animation-duration)) ease-in-out;cursor:pointer;padding-inline:calc(var(--luzmo-suggestion-padding-inline,var(--suggestion-padding-inline)) - var(--luzmo-suggestion-border-width,var(--suggestion-border-width)));padding-block:calc(var(--luzmo-suggestion-padding-block,var(--suggestion-padding-block)) - var(--luzmo-suggestion-border-width,var(--suggestion-border-width)));justify-content:center;align-items:center;gap:var(--luzmo-suggestion-icon-spacing-inline-end,var(--suggestion-icon-spacing-inline-end));outline:none;display:inline-flex;position:relative;border-color:var(--luzmo-suggestion-border-color,var(--suggestion-border-color))!important;border-width:var(--luzmo-suggestion-border-width,var(--suggestion-border-width))!important;border-style:solid!important}::slotted([slot=icon]){--icon-size:var(--luzmo-suggestion-icon-size,var(--suggestion-icon-size));block-size:var(--luzmo-suggestion-icon-size,var(--suggestion-icon-size));inline-size:var(--luzmo-suggestion-icon-size,var(--suggestion-icon-size));flex-shrink:0;align-self:center}.label{box-sizing:border-box;line-height:var(--luzmo-suggestion-line-height,var(--suggestion-line-height));font-weight:var(--luzmo-suggestion-font-weight,var(--suggestion-font-weight));font-size:var(--luzmo-suggestion-font-size,var(--suggestion-font-size));white-space:nowrap;text-overflow:ellipsis;align-items:center;display:inline-flex;overflow:hidden}.label[hidden]{display:none!important}:host([icon-only]){gap:0}@media (hover:hover){:host(:hover){background-color:var(--luzmo-suggestion-background-color-hover,var(--suggestion-background-color-hover));color:var(--luzmo-suggestion-content-color-hover,var(--suggestion-content-color-hover));border-color:var(--luzmo-suggestion-border-color-hover,var(--suggestion-border-color-hover))!important}}:host(:focus-visible){background-color:var(--luzmo-suggestion-background-color-focus,var(--suggestion-background-color-focus));color:var(--luzmo-suggestion-content-color-focus,var(--suggestion-content-color-focus));border-color:var(--luzmo-suggestion-border-color-focus,var(--suggestion-border-color-focus))!important}:host(:focus-visible):after{content:"";border-radius:calc(var(--luzmo-suggestion-border-radius,var(--suggestion-border-radius)) + var(--luzmo-suggestion-focus-ring-gap,var(--suggestion-focus-ring-gap)) + var(--luzmo-suggestion-border-width,var(--suggestion-border-width)));pointer-events:none;inset:calc(var(--luzmo-suggestion-focus-ring-gap,var(--suggestion-focus-ring-gap)) * -1 - var(--luzmo-suggestion-border-width,var(--suggestion-border-width)) - var(--luzmo-suggestion-focus-ring-thickness,var(--suggestion-focus-ring-thickness)));position:absolute;border-color:var(--luzmo-suggestion-focus-ring-color,var(--suggestion-focus-ring-color))!important;border-width:var(--luzmo-suggestion-focus-ring-thickness,var(--suggestion-focus-ring-thickness))!important;border-style:solid!important}:host([disabled]){background-color:var(--luzmo-suggestion-background-color-disabled,var(--suggestion-background-color-disabled));color:var(--luzmo-suggestion-content-color-disabled,var(--suggestion-content-color-disabled));cursor:not-allowed;pointer-events:none;border-color:var(--luzmo-suggestion-border-color-disabled,var(--suggestion-border-color-disabled))!important}:host([disabled]) ::slotted([slot=icon]){opacity:.5}@media (forced-colors:active){:host{color:buttontext;forced-color-adjust:none;background-color:buttonface;border-color:buttontext!important}:host(:focus-visible){border-color:highlight!important}:host([disabled]){color:graytext;border-color:graytext!important}}:host{--suggestion-font-family:var(--luzmo-font-family);--suggestion-font-size:var(--luzmo-font-size-s);--suggestion-font-weight:var(--luzmo-font-weight);--suggestion-line-height:var(--luzmo-line-height);--suggestion-border-radius:var(--luzmo-border-radius);--suggestion-border-width:var(--luzmo-border-width);--suggestion-padding-block:calc(var(--luzmo-spacing-2) + var(--luzmo-spacing-1));--suggestion-padding-inline:var(--luzmo-spacing-4);--suggestion-icon-size:var(--luzmo-icon-size-m);--suggestion-icon-spacing-inline-end:var(--luzmo-spacing-3);--suggestion-animation-duration:var(--luzmo-animation-duration);--suggestion-background-color:var(--luzmo-background-color);--suggestion-background-color-hover:var(--luzmo-background-color-hover);--suggestion-background-color-focus:var(--luzmo-background-color-focus);--suggestion-border-color:var(--luzmo-border-color);--suggestion-border-color-hover:var(--luzmo-border-color-hover);--suggestion-border-color-focus:var(--luzmo-border-color-focus);--suggestion-content-color:var(--luzmo-font-color);--suggestion-content-color-hover:var(--luzmo-font-color-hover);--suggestion-content-color-focus:var(--luzmo-font-color-focus);--suggestion-background-color-disabled:var(--luzmo-background-color);--suggestion-border-color-disabled:var(--luzmo-border-color);--suggestion-content-color-disabled:var(--luzmo-disabled-color);--suggestion-focus-ring-color:var(--luzmo-indicator-color);--suggestion-focus-ring-thickness:var(--luzmo-indicator-width);--suggestion-focus-ring-gap:var(--luzmo-indicator-gap)}:host([variant=prompt]){--suggestion-background-color:color-mix(in oklch, var(--luzmo-primary), white 88%);--suggestion-background-color-hover:color-mix(in oklch, var(--luzmo-primary), white 75%);--suggestion-background-color-focus:var(--suggestion-background-color-hover);--suggestion-border-color:color-mix(in oklch, var(--luzmo-primary), white 70%);--suggestion-border-color-hover:color-mix(in oklch, var(--luzmo-primary), white 50%);--suggestion-border-color-focus:var(--suggestion-border-color-hover);--suggestion-content-color:color-mix(in oklch, var(--luzmo-primary), black 25%);--suggestion-content-color-hover:var(--suggestion-content-color);--suggestion-content-color-focus:var(--suggestion-content-color);--suggestion-background-color-disabled:color-mix(in oklch, var(--luzmo-primary), white 92%);--suggestion-border-color-disabled:color-mix(in oklch, var(--luzmo-primary), white 85%);--suggestion-content-color-disabled:color-mix(in oklch, var(--luzmo-primary), white 40%)}`,a=[`default`,`prompt`],o=class extends t.t(e.n){static get styles(){return[(0,n.unsafeCSS)(i)]}get variant(){return this._variant}set variant(e){let t=a.includes(e)?e:`default`;t!==this._variant&&(this._variant=t,this.setAttribute(`variant`,t))}constructor(){super(),this._variant=`default`,this.disabled=!1,this.handleClickCapture=e=>{this.disabled&&(e.preventDefault(),e.stopImmediatePropagation(),e.stopPropagation())},this.handleKeydown=e=>{if(this.disabled)return;let{code:t}=e;(t===`Enter`||t===`NumpadEnter`||t===`Space`)&&(e.preventDefault(),this.click())},this.addEventListener(`click`,this.handleClickCapture,{capture:!0})}handleIconSlotChange(e){e.target.assignedElements().forEach(e=>{e.tagName.toLowerCase()===`luzmo-icon`&&e.setAttribute(`block`,``)})}get hasLabel(){return this.slotHasContent}render(){return n.html`
19
- <slot name="icon" @slotchange=${this.handleIconSlotChange}></slot>
20
- <span class="label" ?hidden=${!this.hasLabel}>
21
- <slot @slotchange=${this.manageTextObservedSlot}></slot>
22
- </span>
23
- `}firstUpdated(e){super.firstUpdated(e),this.hasAttribute(`role`)||this.setAttribute(`role`,`button`),this.hasAttribute(`variant`)||this.setAttribute(`variant`,this._variant),this.updateTabindex(),this.addEventListener(`keydown`,this.handleKeydown)}updated(e){super.updated(e),e.has(`disabled`)&&(this.updateTabindex(),this.disabled?this.setAttribute(`aria-disabled`,`true`):this.removeAttribute(`aria-disabled`)),this.toggleAttribute(`icon-only`,!this.slotHasContent)}updateTabindex(){this.disabled?this.setAttribute(`tabindex`,`-1`):(!this.hasAttribute(`tabindex`)||this.getAttribute(`tabindex`)===`-1`)&&this.setAttribute(`tabindex`,`0`)}};e.t([(0,r.property)({reflect:!0})],o.prototype,`variant`,null),e.t([(0,r.property)({type:Boolean,reflect:!0})],o.prototype,`disabled`,void 0),customElements.get(`luzmo-suggestion`)||customElements.define(`luzmo-suggestion`,o),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return o}});
@@ -1,76 +0,0 @@
1
- /*! * Lucero - The design system for Luzmo.
2
- *
3
- * Copyright © 2025 Luzmo
4
- * All rights reserved.
5
- * Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
6
- * This license allows users with a current active Luzmo account to use Lucero.
7
- * This license terminates automatically if a user no longer has an active Luzmo account.
8
- * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
9
- *
10
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
13
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
14
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
15
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
- * SOFTWARE.
17
- * */
18
- import { n as e, t } from "./decorate-aGxJUVxg.js";
19
- import { t as n } from "./observe-slot-text-Ddf1OC6F.js";
20
- import { html as r, unsafeCSS as i } from "lit";
21
- import { property as a } from "lit/decorators.js";
22
- //#region src/components/suggestion/suggestion.module.scss?inline
23
- var o = ":host{font-family:var(--luzmo-suggestion-font-family,var(--suggestion-font-family));background-color:var(--luzmo-suggestion-background-color,var(--suggestion-background-color));color:var(--luzmo-suggestion-content-color,var(--suggestion-content-color));border-radius:var(--luzmo-suggestion-border-radius,var(--suggestion-border-radius));box-sizing:border-box;vertical-align:middle;-webkit-user-select:none;user-select:none;max-inline-size:100%;transition:border-color var(--luzmo-suggestion-animation-duration,var(--suggestion-animation-duration)) ease-in-out, color var(--luzmo-suggestion-animation-duration,var(--suggestion-animation-duration)) ease-in-out, background-color var(--luzmo-suggestion-animation-duration,var(--suggestion-animation-duration)) ease-in-out;cursor:pointer;padding-inline:calc(var(--luzmo-suggestion-padding-inline,var(--suggestion-padding-inline)) - var(--luzmo-suggestion-border-width,var(--suggestion-border-width)));padding-block:calc(var(--luzmo-suggestion-padding-block,var(--suggestion-padding-block)) - var(--luzmo-suggestion-border-width,var(--suggestion-border-width)));justify-content:center;align-items:center;gap:var(--luzmo-suggestion-icon-spacing-inline-end,var(--suggestion-icon-spacing-inline-end));outline:none;display:inline-flex;position:relative;border-color:var(--luzmo-suggestion-border-color,var(--suggestion-border-color))!important;border-width:var(--luzmo-suggestion-border-width,var(--suggestion-border-width))!important;border-style:solid!important}::slotted([slot=icon]){--icon-size:var(--luzmo-suggestion-icon-size,var(--suggestion-icon-size));block-size:var(--luzmo-suggestion-icon-size,var(--suggestion-icon-size));inline-size:var(--luzmo-suggestion-icon-size,var(--suggestion-icon-size));flex-shrink:0;align-self:center}.label{box-sizing:border-box;line-height:var(--luzmo-suggestion-line-height,var(--suggestion-line-height));font-weight:var(--luzmo-suggestion-font-weight,var(--suggestion-font-weight));font-size:var(--luzmo-suggestion-font-size,var(--suggestion-font-size));white-space:nowrap;text-overflow:ellipsis;align-items:center;display:inline-flex;overflow:hidden}.label[hidden]{display:none!important}:host([icon-only]){gap:0}@media (hover:hover){:host(:hover){background-color:var(--luzmo-suggestion-background-color-hover,var(--suggestion-background-color-hover));color:var(--luzmo-suggestion-content-color-hover,var(--suggestion-content-color-hover));border-color:var(--luzmo-suggestion-border-color-hover,var(--suggestion-border-color-hover))!important}}:host(:focus-visible){background-color:var(--luzmo-suggestion-background-color-focus,var(--suggestion-background-color-focus));color:var(--luzmo-suggestion-content-color-focus,var(--suggestion-content-color-focus));border-color:var(--luzmo-suggestion-border-color-focus,var(--suggestion-border-color-focus))!important}:host(:focus-visible):after{content:\"\";border-radius:calc(var(--luzmo-suggestion-border-radius,var(--suggestion-border-radius)) + var(--luzmo-suggestion-focus-ring-gap,var(--suggestion-focus-ring-gap)) + var(--luzmo-suggestion-border-width,var(--suggestion-border-width)));pointer-events:none;inset:calc(var(--luzmo-suggestion-focus-ring-gap,var(--suggestion-focus-ring-gap)) * -1 - var(--luzmo-suggestion-border-width,var(--suggestion-border-width)) - var(--luzmo-suggestion-focus-ring-thickness,var(--suggestion-focus-ring-thickness)));position:absolute;border-color:var(--luzmo-suggestion-focus-ring-color,var(--suggestion-focus-ring-color))!important;border-width:var(--luzmo-suggestion-focus-ring-thickness,var(--suggestion-focus-ring-thickness))!important;border-style:solid!important}:host([disabled]){background-color:var(--luzmo-suggestion-background-color-disabled,var(--suggestion-background-color-disabled));color:var(--luzmo-suggestion-content-color-disabled,var(--suggestion-content-color-disabled));cursor:not-allowed;pointer-events:none;border-color:var(--luzmo-suggestion-border-color-disabled,var(--suggestion-border-color-disabled))!important}:host([disabled]) ::slotted([slot=icon]){opacity:.5}@media (forced-colors:active){:host{color:buttontext;forced-color-adjust:none;background-color:buttonface;border-color:buttontext!important}:host(:focus-visible){border-color:highlight!important}:host([disabled]){color:graytext;border-color:graytext!important}}:host{--suggestion-font-family:var(--luzmo-font-family);--suggestion-font-size:var(--luzmo-font-size-s);--suggestion-font-weight:var(--luzmo-font-weight);--suggestion-line-height:var(--luzmo-line-height);--suggestion-border-radius:var(--luzmo-border-radius);--suggestion-border-width:var(--luzmo-border-width);--suggestion-padding-block:calc(var(--luzmo-spacing-2) + var(--luzmo-spacing-1));--suggestion-padding-inline:var(--luzmo-spacing-4);--suggestion-icon-size:var(--luzmo-icon-size-m);--suggestion-icon-spacing-inline-end:var(--luzmo-spacing-3);--suggestion-animation-duration:var(--luzmo-animation-duration);--suggestion-background-color:var(--luzmo-background-color);--suggestion-background-color-hover:var(--luzmo-background-color-hover);--suggestion-background-color-focus:var(--luzmo-background-color-focus);--suggestion-border-color:var(--luzmo-border-color);--suggestion-border-color-hover:var(--luzmo-border-color-hover);--suggestion-border-color-focus:var(--luzmo-border-color-focus);--suggestion-content-color:var(--luzmo-font-color);--suggestion-content-color-hover:var(--luzmo-font-color-hover);--suggestion-content-color-focus:var(--luzmo-font-color-focus);--suggestion-background-color-disabled:var(--luzmo-background-color);--suggestion-border-color-disabled:var(--luzmo-border-color);--suggestion-content-color-disabled:var(--luzmo-disabled-color);--suggestion-focus-ring-color:var(--luzmo-indicator-color);--suggestion-focus-ring-thickness:var(--luzmo-indicator-width);--suggestion-focus-ring-gap:var(--luzmo-indicator-gap)}:host([variant=prompt]){--suggestion-background-color:color-mix(in oklch, var(--luzmo-primary), white 88%);--suggestion-background-color-hover:color-mix(in oklch, var(--luzmo-primary), white 75%);--suggestion-background-color-focus:var(--suggestion-background-color-hover);--suggestion-border-color:color-mix(in oklch, var(--luzmo-primary), white 70%);--suggestion-border-color-hover:color-mix(in oklch, var(--luzmo-primary), white 50%);--suggestion-border-color-focus:var(--suggestion-border-color-hover);--suggestion-content-color:color-mix(in oklch, var(--luzmo-primary), black 25%);--suggestion-content-color-hover:var(--suggestion-content-color);--suggestion-content-color-focus:var(--suggestion-content-color);--suggestion-background-color-disabled:color-mix(in oklch, var(--luzmo-primary), white 92%);--suggestion-border-color-disabled:color-mix(in oklch, var(--luzmo-primary), white 85%);--suggestion-content-color-disabled:color-mix(in oklch, var(--luzmo-primary), white 40%)}", s = ["default", "prompt"], c = class extends n(e) {
24
- static get styles() {
25
- return [i(o)];
26
- }
27
- get variant() {
28
- return this._variant;
29
- }
30
- set variant(e) {
31
- let t = s.includes(e) ? e : "default";
32
- t !== this._variant && (this._variant = t, this.setAttribute("variant", t));
33
- }
34
- constructor() {
35
- super(), this._variant = "default", this.disabled = !1, this.handleClickCapture = (e) => {
36
- this.disabled && (e.preventDefault(), e.stopImmediatePropagation(), e.stopPropagation());
37
- }, this.handleKeydown = (e) => {
38
- if (this.disabled) return;
39
- let { code: t } = e;
40
- (t === "Enter" || t === "NumpadEnter" || t === "Space") && (e.preventDefault(), this.click());
41
- }, this.addEventListener("click", this.handleClickCapture, { capture: !0 });
42
- }
43
- handleIconSlotChange(e) {
44
- e.target.assignedElements().forEach((e) => {
45
- e.tagName.toLowerCase() === "luzmo-icon" && e.setAttribute("block", "");
46
- });
47
- }
48
- get hasLabel() {
49
- return this.slotHasContent;
50
- }
51
- render() {
52
- return r`
53
- <slot name="icon" @slotchange=${this.handleIconSlotChange}></slot>
54
- <span class="label" ?hidden=${!this.hasLabel}>
55
- <slot @slotchange=${this.manageTextObservedSlot}></slot>
56
- </span>
57
- `;
58
- }
59
- firstUpdated(e) {
60
- super.firstUpdated(e), this.hasAttribute("role") || this.setAttribute("role", "button"), this.hasAttribute("variant") || this.setAttribute("variant", this._variant), this.updateTabindex(), this.addEventListener("keydown", this.handleKeydown);
61
- }
62
- updated(e) {
63
- super.updated(e), e.has("disabled") && (this.updateTabindex(), this.disabled ? this.setAttribute("aria-disabled", "true") : this.removeAttribute("aria-disabled")), this.toggleAttribute("icon-only", !this.slotHasContent);
64
- }
65
- updateTabindex() {
66
- this.disabled ? this.setAttribute("tabindex", "-1") : (!this.hasAttribute("tabindex") || this.getAttribute("tabindex") === "-1") && this.setAttribute("tabindex", "0");
67
- }
68
- };
69
- //#endregion
70
- //#region src/components/suggestion/index.ts
71
- t([a({ reflect: !0 })], c.prototype, "variant", null), t([a({
72
- type: Boolean,
73
- reflect: !0
74
- })], c.prototype, "disabled", void 0), customElements.get("luzmo-suggestion") || customElements.define("luzmo-suggestion", c);
75
- //#endregion
76
- export { c as t };