@strands.gg/accui 2.17.66 → 2.19.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/StrandsUIPlugin-5AOCDOcM.cjs.js +143 -0
- package/dist/StrandsUIPlugin-B0HUf-tm.es.js +20437 -0
- package/dist/StrandsUIPlugin-B98LOdrQ.cjs.js +143 -0
- package/dist/StrandsUIPlugin-BbeOau1G.cjs.js +143 -0
- package/dist/StrandsUIPlugin-BcARSDQF.cjs.js +143 -0
- package/dist/StrandsUIPlugin-CCRrewS9.es.js +20587 -0
- package/dist/StrandsUIPlugin-CMTkJfQt.cjs.js +143 -0
- package/dist/StrandsUIPlugin-CQONZWOX.es.js +20714 -0
- package/dist/StrandsUIPlugin-CQk56uZ2.es.js +19805 -0
- package/dist/StrandsUIPlugin-Cgmu6cTA.es.js +20440 -0
- package/dist/StrandsUIPlugin-CpBH0QFc.cjs.js +272 -0
- package/dist/StrandsUIPlugin-Ct91SLTy.es.js +20587 -0
- package/dist/StrandsUIPlugin-DHhawL07.cjs.js +143 -0
- package/dist/StrandsUIPlugin-DY7VCw7G.es.js +20437 -0
- package/dist/StrandsUIPlugin-Tpi8IoJc.cjs.js +143 -0
- package/dist/StrandsUIPlugin-lRGsfjf5.es.js +20440 -0
- package/dist/accui.css +1 -1
- package/dist/index.cjs.js +5 -5
- package/dist/index.es.js +5841 -5646
- package/dist/nuxt/module.cjs.js +6 -6
- package/dist/nuxt/module.es.js +22 -21
- package/dist/nuxt/runtime/composables/useStrandsAuth.cjs.js +1 -1
- package/dist/nuxt/runtime/composables/useStrandsAuth.d.ts +7 -1
- package/dist/nuxt/runtime/composables/useStrandsAuth.es.js +24 -19
- package/dist/nuxt/runtime/plugin.client.cjs.js +1 -1
- package/dist/nuxt/runtime/plugin.client.es.js +9 -12
- package/dist/nuxt/runtime/plugin.server.cjs.js +1 -1
- package/dist/nuxt/runtime/plugin.server.es.js +1 -1
- package/dist/types/composables.d.ts +6 -2
- package/dist/types/index.d.ts +21 -0
- package/dist/useDarkMode-Cew-NWjS.cjs.js +1 -0
- package/dist/useDarkMode-CvinMR9O.es.js +102 -0
- package/dist/useDarkMode-OZ_A8-6H.es.js +102 -0
- package/dist/useStrandsAuth-B7Fqq-Qp.es.js +717 -0
- package/dist/useStrandsAuth-BDTnh_c_.es.js +702 -0
- package/dist/useStrandsAuth-CEQ4UsKz.cjs.js +1 -0
- package/dist/useStrandsAuth-CboHAkjH.es.js +717 -0
- package/dist/useStrandsAuth-CetpoBNk.cjs.js +1 -0
- package/dist/useStrandsAuth-D2HvStMt.es.js +787 -0
- package/dist/useStrandsAuth-DSLFMDTj.es.js +717 -0
- package/dist/useStrandsAuth-Db5ZGvxL.cjs.js +1 -0
- package/dist/useStrandsAuth-Dz3Grglt.cjs.js +1 -0
- package/dist/useStrandsAuth-FVoni53L.es.js +666 -0
- package/dist/useStrandsAuth-Yp5OpRHU.cjs.js +1 -0
- package/dist/useStrandsConfig-48gZP9xV.es.js +209 -0
- package/dist/useStrandsConfig-B8h5hDy7.es.js +219 -0
- package/dist/useStrandsConfig-BGJg1LlC.es.js +213 -0
- package/dist/useStrandsConfig-BY_IIwK8.cjs.js +1 -0
- package/dist/useStrandsConfig-DRGldIzy.cjs.js +1 -0
- package/dist/vite.cjs.js +1 -1
- package/dist/vite.es.js +2 -2
- package/dist/vue/components/SignedIn.vue.d.ts +3 -1
- package/dist/vue/components/index.d.ts +1 -1
- package/dist/vue/composables/useKnownAccounts.d.ts +33 -0
- package/dist/vue/index.d.ts +1 -0
- package/dist/vue/ui/UiBunnyFontPicker.vue.d.ts +23 -0
- package/dist/vue/ui/UiCheckboxGroup.vue.d.ts +1 -0
- package/dist/vue/ui/UiInput/UiInput.Select.vue.d.ts +806 -0
- package/dist/vue/ui/UiMegaMenu.vue.d.ts +28 -1
- package/dist/vue/ui/UiRadioGroup.vue.d.ts +1 -0
- package/dist/vue/ui/UiTabs.vue.d.ts +2 -0
- package/dist/vue/ui/VirtualList.vue.d.ts +36 -0
- package/dist/webcomponents/define-element.d.ts +1 -1
- package/dist/webcomponents/entries/sl-alert.d.ts +2 -0
- package/dist/webcomponents/entries/sl-avatar-editor.d.ts +2 -0
- package/dist/webcomponents/entries/sl-button.d.ts +2 -0
- package/dist/webcomponents/entries/sl-card.d.ts +2 -0
- package/dist/webcomponents/entries/sl-checkbox-group.d.ts +2 -0
- package/dist/webcomponents/entries/sl-color-picker.d.ts +2 -0
- package/dist/webcomponents/entries/sl-datetime-picker.d.ts +2 -0
- package/dist/webcomponents/entries/sl-divider.d.ts +2 -0
- package/dist/webcomponents/entries/sl-font-picker.d.ts +2 -0
- package/dist/webcomponents/entries/sl-hero.d.ts +2 -0
- package/dist/webcomponents/entries/sl-input.d.ts +2 -0
- package/dist/webcomponents/entries/sl-level-progress.d.ts +2 -0
- package/dist/webcomponents/entries/sl-link.d.ts +2 -0
- package/dist/webcomponents/entries/sl-loader-spinner.d.ts +2 -0
- package/dist/webcomponents/entries/sl-mega-menu.d.ts +5 -0
- package/dist/webcomponents/entries/sl-modal.d.ts +2 -0
- package/dist/webcomponents/entries/sl-pill.d.ts +2 -0
- package/dist/webcomponents/entries/sl-radio-group.d.ts +2 -0
- package/dist/webcomponents/entries/sl-slider.d.ts +2 -0
- package/dist/webcomponents/entries/sl-table.d.ts +2 -0
- package/dist/webcomponents/entries/sl-tabs.d.ts +2 -0
- package/dist/webcomponents/entries/sl-theme-toggle.d.ts +2 -0
- package/dist/webcomponents/entries/sl-toggle.d.ts +2 -0
- package/dist/webcomponents/entries/sl-tooltip.d.ts +2 -0
- package/dist/webcomponents/loader.d.ts +3 -3
- package/dist/webcomponents/registry.d.ts +1 -1
- package/package.json +16 -16
|
@@ -1,3 +1,24 @@
|
|
|
1
|
+
export interface MegaMenuPanelLink {
|
|
2
|
+
label: string;
|
|
3
|
+
href?: string;
|
|
4
|
+
description?: string;
|
|
5
|
+
}
|
|
6
|
+
export interface MegaMenuPanelGroup {
|
|
7
|
+
title?: string;
|
|
8
|
+
links: MegaMenuPanelLink[];
|
|
9
|
+
}
|
|
10
|
+
export interface MegaMenuItemConfig {
|
|
11
|
+
label: string;
|
|
12
|
+
href?: string;
|
|
13
|
+
active?: boolean;
|
|
14
|
+
disabled?: boolean;
|
|
15
|
+
panel?: {
|
|
16
|
+
width?: 'auto' | 'full' | string;
|
|
17
|
+
columns?: 1 | 2 | 3 | 4;
|
|
18
|
+
gap?: 'sm' | 'md' | 'lg';
|
|
19
|
+
groups: MegaMenuPanelGroup[];
|
|
20
|
+
};
|
|
21
|
+
}
|
|
1
22
|
export interface UiMegaMenuProps {
|
|
2
23
|
triggerMode?: 'hover' | 'click';
|
|
3
24
|
closeDelay?: number;
|
|
@@ -7,6 +28,7 @@ export interface UiMegaMenuProps {
|
|
|
7
28
|
maxWidth?: string;
|
|
8
29
|
variant?: 'default' | 'transparent';
|
|
9
30
|
mobileBreakpoint?: number;
|
|
31
|
+
items?: MegaMenuItemConfig[];
|
|
10
32
|
}
|
|
11
33
|
declare function __VLS_template(): {
|
|
12
34
|
attrs: Partial<{}>;
|
|
@@ -26,9 +48,14 @@ declare function __VLS_template(): {
|
|
|
26
48
|
rootEl: HTMLElement;
|
|
27
49
|
};
|
|
28
50
|
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
29
|
-
declare const __VLS_component: import('vue').DefineComponent<UiMegaMenuProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
51
|
+
declare const __VLS_component: import('vue').DefineComponent<UiMegaMenuProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
52
|
+
navigate: (link: MegaMenuPanelLink) => any;
|
|
53
|
+
}, string, import('vue').PublicProps, Readonly<UiMegaMenuProps> & Readonly<{
|
|
54
|
+
onNavigate?: (link: MegaMenuPanelLink) => any;
|
|
55
|
+
}>, {
|
|
30
56
|
variant: "default" | "transparent";
|
|
31
57
|
maxWidth: string;
|
|
58
|
+
items: MegaMenuItemConfig[];
|
|
32
59
|
sticky: boolean;
|
|
33
60
|
triggerMode: "hover" | "click";
|
|
34
61
|
closeDelay: number;
|
|
@@ -35,6 +35,7 @@ declare const _default: import('vue').DefineComponent<Props, {}, {}, {}, {}, imp
|
|
|
35
35
|
variant: "default" | "card";
|
|
36
36
|
size: "sm" | "md" | "lg";
|
|
37
37
|
orientation: "horizontal" | "vertical";
|
|
38
|
+
options: RadioOption[];
|
|
38
39
|
fieldId: string;
|
|
39
40
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
40
41
|
export default _default;
|
|
@@ -68,11 +68,13 @@ declare const __VLS_component: import('vue').DefineComponent<Props, {}, {}, {},
|
|
|
68
68
|
}>, {
|
|
69
69
|
variant: "default" | "pills" | "cards" | "minimal";
|
|
70
70
|
size: "sm" | "md" | "lg";
|
|
71
|
+
modelValue: string;
|
|
71
72
|
orientation: "horizontal" | "vertical";
|
|
72
73
|
sticky: {
|
|
73
74
|
side: "top" | "right" | "bottom" | "left";
|
|
74
75
|
offset: number;
|
|
75
76
|
} | null;
|
|
77
|
+
tabs: Tab[];
|
|
76
78
|
underlineWidth: string;
|
|
77
79
|
tabWidth: "fill" | "fit";
|
|
78
80
|
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
interface Props {
|
|
2
|
+
items: any[];
|
|
3
|
+
itemHeight: number;
|
|
4
|
+
containerHeight: number;
|
|
5
|
+
itemKey?: string | ((item: any) => string | number);
|
|
6
|
+
overscan?: number;
|
|
7
|
+
}
|
|
8
|
+
declare function __VLS_template(): {
|
|
9
|
+
attrs: Partial<{}>;
|
|
10
|
+
slots: {
|
|
11
|
+
default?(_: {
|
|
12
|
+
item: any;
|
|
13
|
+
index: number;
|
|
14
|
+
}): any;
|
|
15
|
+
};
|
|
16
|
+
refs: {
|
|
17
|
+
scrollContainer: HTMLDivElement;
|
|
18
|
+
};
|
|
19
|
+
rootEl: HTMLDivElement;
|
|
20
|
+
};
|
|
21
|
+
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
22
|
+
declare const __VLS_component: import('vue').DefineComponent<Props, {
|
|
23
|
+
scrollToItem: (index: number, align?: "start" | "center" | "end") => void;
|
|
24
|
+
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<Props> & Readonly<{}>, {
|
|
25
|
+
itemKey: string | ((item: any) => string | number);
|
|
26
|
+
overscan: number;
|
|
27
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
|
|
28
|
+
scrollContainer: HTMLDivElement;
|
|
29
|
+
}, HTMLDivElement>;
|
|
30
|
+
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
31
|
+
export default _default;
|
|
32
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
33
|
+
new (): {
|
|
34
|
+
$slots: S;
|
|
35
|
+
};
|
|
36
|
+
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Component } from 'vue';
|
|
2
|
-
export declare const baseStyles = "\n :host {\n /* Typography */\n --accui-font-sans: 'Inter', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif;\n --accui-font-mono: \"Courier New\", Courier, ui-monospace, SFMono-Regular, \"SF Mono\", Consolas, \"Liberation Mono\", Menlo, monospace;\n\n /* Brand Colors - inherit from document or use defaults */\n --strands-accent: var(--strands-custom-accent, #EA00A8);\n --accui-strands-accent: var(--strands-custom-accent, #EA00A8);\n --accui-strands-50: var(--strands-custom-50, color-mix(in srgb, var(--strands-accent) 10%, white));\n --accui-strands-100: var(--strands-custom-100, color-mix(in srgb, var(--strands-accent) 20%, white));\n --accui-strands-200: var(--strands-custom-200, color-mix(in srgb, var(--strands-accent) 30%, white));\n --accui-strands-300: var(--strands-custom-300, color-mix(in srgb, var(--strands-accent) 40%, white));\n --accui-strands-400: var(--strands-custom-400, color-mix(in srgb, var(--strands-accent) 70%, white));\n --accui-strands-500: var(--strands-custom-500, var(--strands-accent));\n --accui-strands-600: var(--strands-custom-600, color-mix(in srgb, var(--strands-accent) 85%, black));\n --accui-strands-700: var(--strands-custom-700, color-mix(in srgb, var(--strands-accent) 70%, black));\n --accui-strands-800: var(--strands-custom-800, color-mix(in srgb, var(--strands-accent) 55%, black));\n --accui-strands-900: var(--strands-custom-900, color-mix(in srgb, var(--strands-accent) 40%, black));\n --accui-strands-950: var(--strands-custom-950, color-mix(in srgb, var(--strands-accent) 25%, black));\n\n /* Neutral Colors */\n --accui-neutral-50: #fafafa;\n --accui-neutral-100: #f5f5f5;\n --accui-neutral-200: #e5e5e5;\n --accui-neutral-300: #d4d4d4;\n --accui-neutral-400: #a3a3a3;\n --accui-neutral-500: #737373;\n --accui-neutral-600: #525252;\n --accui-neutral-700: #404040;\n --accui-neutral-800: #262626;\n --accui-neutral-900: #171717;\n --accui-neutral-950: #0a0a0a;\n\n /* Gray Colors */\n --accui-gray-50: #f9fafb;\n --accui-gray-100: #f3f4f6;\n --accui-gray-200: #e5e7eb;\n --accui-gray-300: #d1d5db;\n --accui-gray-400: #9ca3af;\n --accui-gray-500: #6b7280;\n --accui-gray-600: #4b5563;\n --accui-gray-700: #374151;\n --accui-gray-800: #1f2937;\n --accui-gray-900: #111827;\n --accui-gray-950: #030712;\n\n /* Status Colors */\n --accui-red-500: #ef4444;\n --accui-red-600: #dc2626;\n --accui-green-500: #22c55e;\n --accui-green-600: #16a34a;\n --accui-yellow-500: #f97316;\n --accui-yellow-600: #ea580c;\n\n /* Spacing Scale */\n --accui-space-0: 0;\n --accui-space-1: 0.25rem;\n --accui-space-2: 0.5rem;\n --accui-space-3: 0.75rem;\n --accui-space-4: 1rem;\n --accui-space-5: 1.25rem;\n --accui-space-6: 1.5rem;\n --accui-space-8: 2rem;\n\n /* Border Radius */\n --accui-radius-none: 0;\n --accui-radius-sm: 0.125rem;\n --accui-radius-md: 0.375rem;\n --accui-radius-lg: 0.5rem;\n --accui-radius-xl: 0.75rem;\n --accui-radius-2xl: 1rem;\n --accui-radius-full: 9999px;\n\n /* Transition Timings */\n --accui-transition-fast: 0.15s;\n --accui-transition-duration: 0.25s;\n --animation-duration: 0.25s;\n\n /* Theme Colors (Light Mode Default) */\n --accui-bg-primary: #ffffff;\n --accui-bg-secondary: #f9fafb;\n --accui-bg-tertiary: #f3f4f6;\n --accui-text-primary: #111827;\n --accui-text-secondary: #6b7280;\n --accui-text-tertiary: #9ca3af;\n --accui-border-primary: #e5e7eb;\n --accui-border-secondary: #d1d5db;\n --accui-border-tertiary: #9ca3af;\n\n /* Button Variables */\n --accui-button-primary-background: var(--accui-strands-500);\n --accui-button-primary-background-hover: var(--accui-strands-600);\n --accui-button-primary-text: #ffffff;\n --accui-button-primary-border: transparent;\n\n --accui-button-secondary-background: #f0f0f0;\n --accui-button-secondary-background-hover: #e2e2e2;\n --accui-button-secondary-text: #000000;\n --accui-button-secondary-border: #f0f0f0;\n\n --accui-button-ghost-background: transparent;\n --accui-button-ghost-background-hover: var(--accui-bg-secondary);\n --accui-button-ghost-text: var(--accui-text-primary);\n --accui-button-ghost-border: transparent;\n\n --accui-button-outline-background: transparent;\n --accui-button-outline-background-hover: var(--accui-strands-50);\n --accui-button-outline-text: var(--accui-strands-500);\n --accui-button-outline-border: var(--accui-strands-500);\n\n /* Input Variables */\n --accui-input-background: var(--accui-bg-primary);\n --accui-input-background-focus: var(--accui-bg-primary);\n --accui-input-text: var(--accui-text-primary);\n --accui-input-placeholder: var(--accui-text-tertiary);\n --accui-input-border: var(--accui-border-primary);\n --accui-input-border-focus: var(--strands-accent, #EA00A8);\n --accui-input-shadow-focus: 0 0 0 3px color-mix(in srgb, var(--strands-accent, #EA00A8) 10%, transparent);\n\n /* Card Variables */\n --accui-card-background: var(--accui-bg-primary);\n --accui-card-border: var(--accui-border-primary);\n --accui-card-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1);\n\n /* Alert Variables */\n --accui-alert-success-background: #f0fdf4;\n --accui-alert-success-text: #15803d;\n --accui-alert-success-border: #bbf7d0;\n\n --accui-alert-error-background: #fef2f2;\n --accui-alert-error-text: #dc2626;\n --accui-alert-error-border: #fecaca;\n\n --accui-alert-warning-background: #fefce8;\n --accui-alert-warning-text: #ca8a04;\n --accui-alert-warning-border: #fde047;\n\n --accui-alert-info-background: #eff6ff;\n --accui-alert-info-text: #2563eb;\n --accui-alert-info-border: #bfdbfe;\n\n /* Toggle Variables */\n --accui-toggle-background: var(--accui-border-secondary);\n --accui-toggle-background-active: var(--accui-strands-500);\n --accui-toggle-thumb: #ffffff;\n\n /* Tabs Variables */\n --accui-tabs-background: var(--accui-bg-secondary);\n --accui-tabs-border: var(--accui-border-primary);\n --accui-tabs-button-text: var(--accui-text-secondary);\n --accui-tabs-button-text-active: var(--accui-text-primary);\n --accui-tabs-button-background: var(--accui-bg-primary);\n --accui-tabs-button-background-hover: var(--accui-bg-secondary);\n --accui-tabs-indicator: var(--accui-strands-500);\n\n /* Divider Variables */\n --accui-divider-color: var(--accui-border-primary);\n --accui-divider-text: var(--accui-text-secondary);\n\n /* Display as inline-block by default */\n display: inline-block;\n }\n\n /* Dark mode support - detect from document */\n :host-context([data-theme=\"dark\"]) {\n --accui-bg-primary: #0f172a;\n --accui-bg-secondary: #1e293b;\n --accui-bg-tertiary: #334155;\n --accui-text-primary: #f8fafc;\n --accui-text-secondary: #cbd5e1;\n --accui-text-tertiary: #94a3b8;\n --accui-border-primary: #334155;\n --accui-border-secondary: #475569;\n --accui-border-tertiary: #64748b;\n\n --accui-button-secondary-background: var(--accui-bg-secondary);\n --accui-button-secondary-background-hover: var(--accui-bg-tertiary);\n --accui-button-secondary-text: var(--accui-text-primary);\n --accui-button-secondary-border: var(--accui-bg-secondary);\n\n --accui-button-ghost-background-hover: var(--accui-bg-tertiary);\n\n --accui-button-outline-background-hover: var(--accui-strands-950);\n --accui-button-outline-text: var(--accui-strands-400);\n --accui-button-outline-border: var(--accui-strands-400);\n\n --accui-alert-success-background: #0f2a1a;\n --accui-alert-success-text: #4ade80;\n --accui-alert-success-border: #16a34a;\n\n --accui-alert-error-background: #2a0f0f;\n --accui-alert-error-text: #f87171;\n --accui-alert-error-border: #dc2626;\n\n --accui-alert-warning-background: #2a2508;\n --accui-alert-warning-text: #fbbf24;\n --accui-alert-warning-border: #eab308;\n\n --accui-alert-info-background: #0f1a2a;\n --accui-alert-info-text: #60a5fa;\n --accui-alert-info-border: #3b82f6;\n\n --accui-toggle-background: var(--accui-border-tertiary);\n\n --accui-tabs-background: var(--accui-bg-tertiary);\n --accui-tabs-button-background: var(--accui-bg-secondary);\n --accui-tabs-button-background-hover: var(--accui-bg-primary);\n }\n\n /* Base reset for Shadow DOM content */\n *, *::before, *::after {\n box-sizing: border-box;\n }\n";
|
|
2
|
+
export declare const baseStyles = "\n :host {\n /* Typography */\n --accui-font-sans: 'Inter', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif;\n --accui-font-mono: \"Courier New\", Courier, ui-monospace, SFMono-Regular, \"SF Mono\", Consolas, \"Liberation Mono\", Menlo, monospace;\n\n /* Brand Colors - inherit from document or use defaults */\n --strands-accent: var(--strands-custom-accent, #EA00A8);\n --accui-strands-accent: var(--strands-custom-accent, #EA00A8);\n --accui-strands-50: var(--strands-custom-50, color-mix(in srgb, var(--strands-accent) 10%, white));\n --accui-strands-100: var(--strands-custom-100, color-mix(in srgb, var(--strands-accent) 20%, white));\n --accui-strands-200: var(--strands-custom-200, color-mix(in srgb, var(--strands-accent) 30%, white));\n --accui-strands-300: var(--strands-custom-300, color-mix(in srgb, var(--strands-accent) 40%, white));\n --accui-strands-400: var(--strands-custom-400, color-mix(in srgb, var(--strands-accent) 70%, white));\n --accui-strands-500: var(--strands-custom-500, var(--strands-accent));\n --accui-strands-600: var(--strands-custom-600, color-mix(in srgb, var(--strands-accent) 85%, black));\n --accui-strands-700: var(--strands-custom-700, color-mix(in srgb, var(--strands-accent) 70%, black));\n --accui-strands-800: var(--strands-custom-800, color-mix(in srgb, var(--strands-accent) 55%, black));\n --accui-strands-900: var(--strands-custom-900, color-mix(in srgb, var(--strands-accent) 40%, black));\n --accui-strands-950: var(--strands-custom-950, color-mix(in srgb, var(--strands-accent) 25%, black));\n\n /* Neutral Colors */\n --accui-neutral-50: #fafafa;\n --accui-neutral-100: #f5f5f5;\n --accui-neutral-200: #e5e5e5;\n --accui-neutral-300: #d4d4d4;\n --accui-neutral-400: #a3a3a3;\n --accui-neutral-500: #737373;\n --accui-neutral-600: #525252;\n --accui-neutral-700: #404040;\n --accui-neutral-800: #262626;\n --accui-neutral-900: #171717;\n --accui-neutral-950: #0a0a0a;\n\n /* Gray Colors */\n --accui-gray-50: #f9fafb;\n --accui-gray-100: #f3f4f6;\n --accui-gray-200: #e5e7eb;\n --accui-gray-300: #d1d5db;\n --accui-gray-400: #9ca3af;\n --accui-gray-500: #6b7280;\n --accui-gray-600: #4b5563;\n --accui-gray-700: #374151;\n --accui-gray-800: #1f2937;\n --accui-gray-900: #111827;\n --accui-gray-950: #030712;\n\n /* Status Colors */\n --accui-red-500: #ef4444;\n --accui-red-600: #dc2626;\n --accui-green-500: #22c55e;\n --accui-green-600: #16a34a;\n --accui-yellow-500: #f97316;\n --accui-yellow-600: #ea580c;\n\n /* Spacing Scale */\n --accui-space-0: 0;\n --accui-space-1: 0.25rem;\n --accui-space-2: 0.5rem;\n --accui-space-3: 0.75rem;\n --accui-space-4: 1rem;\n --accui-space-5: 1.25rem;\n --accui-space-6: 1.5rem;\n --accui-space-8: 2rem;\n\n /* Border Radius */\n --accui-radius-none: 0;\n --accui-radius-sm: 0.125rem;\n --accui-radius-md: 0.375rem;\n --accui-radius-lg: 0.5rem;\n --accui-radius-xl: 0.75rem;\n --accui-radius-2xl: 1rem;\n --accui-radius-full: 9999px;\n\n /* Transition Timings */\n --accui-transition-fast: 0.15s;\n --accui-transition-duration: 0.25s;\n --animation-duration: 0.25s;\n\n /* Theme Colors (Light Mode Default) */\n --accui-bg-primary: #ffffff;\n --accui-bg-secondary: #f9fafb;\n --accui-bg-tertiary: #f3f4f6;\n --accui-text-primary: #111827;\n --accui-text-secondary: #6b7280;\n --accui-text-tertiary: #9ca3af;\n --accui-border-primary: #e5e7eb;\n --accui-border-secondary: #d1d5db;\n --accui-border-tertiary: #9ca3af;\n\n /* Button Variables */\n --accui-button-primary-background: var(--accui-strands-500);\n --accui-button-primary-background-hover: var(--accui-strands-600);\n --accui-button-primary-text: #ffffff;\n --accui-button-primary-border: transparent;\n\n --accui-button-secondary-background: #f0f0f0;\n --accui-button-secondary-background-hover: #e2e2e2;\n --accui-button-secondary-text: #000000;\n --accui-button-secondary-border: #f0f0f0;\n\n --accui-button-ghost-background: transparent;\n --accui-button-ghost-background-hover: var(--accui-bg-secondary);\n --accui-button-ghost-text: var(--accui-text-primary);\n --accui-button-ghost-border: transparent;\n\n --accui-button-outline-background: transparent;\n --accui-button-outline-background-hover: var(--accui-strands-50);\n --accui-button-outline-text: var(--accui-strands-500);\n --accui-button-outline-border: var(--accui-strands-500);\n\n /* Input Variables */\n --accui-input-background: var(--accui-bg-primary);\n --accui-input-background-focus: var(--accui-bg-primary);\n --accui-input-text: var(--accui-text-primary);\n --accui-input-placeholder: var(--accui-text-tertiary);\n --accui-input-border: var(--accui-border-primary);\n --accui-input-border-focus: var(--strands-accent, #EA00A8);\n --accui-input-shadow-focus: 0 0 0 3px color-mix(in srgb, var(--strands-accent, #EA00A8) 10%, transparent);\n\n /* Card Variables */\n --accui-card-background: var(--accui-bg-primary);\n --accui-card-border: var(--accui-border-primary);\n --accui-card-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1);\n\n /* Alert Variables */\n --accui-alert-success-background: #f0fdf4;\n --accui-alert-success-text: #15803d;\n --accui-alert-success-border: #bbf7d0;\n\n --accui-alert-error-background: #fef2f2;\n --accui-alert-error-text: #dc2626;\n --accui-alert-error-border: #fecaca;\n\n --accui-alert-warning-background: #fefce8;\n --accui-alert-warning-text: #ca8a04;\n --accui-alert-warning-border: #fde047;\n\n --accui-alert-info-background: #eff6ff;\n --accui-alert-info-text: #2563eb;\n --accui-alert-info-border: #bfdbfe;\n\n /* Toggle Variables */\n --accui-toggle-background: var(--accui-border-secondary);\n --accui-toggle-background-active: var(--accui-strands-500);\n --accui-toggle-thumb: #ffffff;\n\n /* Tabs Variables */\n --accui-tabs-background: var(--accui-bg-secondary);\n --accui-tabs-border: var(--accui-border-primary);\n --accui-tabs-button-text: var(--accui-text-secondary);\n --accui-tabs-button-text-active: var(--accui-text-primary);\n --accui-tabs-button-background: var(--accui-bg-primary);\n --accui-tabs-button-background-hover: var(--accui-bg-secondary);\n --accui-tabs-indicator: var(--accui-strands-500);\n\n /* Divider Variables */\n --accui-divider-color: var(--accui-border-primary);\n --accui-divider-text: var(--accui-text-secondary);\n\n /* Modal Variables */\n --accui-modal-background: var(--accui-bg-primary);\n --accui-modal-overlay: rgba(0, 0, 0, 0.5);\n --accui-modal-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);\n\n /* Table Variables */\n --accui-table-background: var(--accui-bg-primary);\n --accui-table-header-background: var(--accui-bg-secondary);\n --accui-table-header-text: var(--accui-text-primary);\n --accui-table-row-hover: var(--accui-bg-secondary);\n --accui-table-border: var(--accui-border-primary);\n --accui-table-cell-text: var(--accui-text-primary);\n\n /* ColorPicker Variables */\n --accui-colorpicker-background: var(--accui-bg-primary);\n --accui-colorpicker-border: var(--accui-border-primary);\n --accui-colorpicker-text: var(--accui-text-primary);\n --accui-colorpicker-input-background: var(--accui-bg-secondary);\n --accui-colorpicker-button-hover: var(--accui-bg-secondary);\n --accui-colorpicker-contrast-background: var(--accui-bg-secondary);\n\n /* AvatarEditor Variables */\n --accui-avatar-background: var(--accui-bg-primary);\n --accui-avatar-border: var(--accui-border-primary);\n --accui-avatar-button-background: var(--accui-bg-secondary);\n --accui-avatar-button-hover: var(--accui-bg-tertiary);\n --accui-avatar-text: var(--accui-text-primary);\n\n /* Display as inline-block by default */\n display: inline-block;\n }\n\n /* Dark mode support - detect from document */\n :host-context([data-theme=\"dark\"]) {\n --accui-bg-primary: #0f172a;\n --accui-bg-secondary: #1e293b;\n --accui-bg-tertiary: #334155;\n --accui-text-primary: #f8fafc;\n --accui-text-secondary: #cbd5e1;\n --accui-text-tertiary: #94a3b8;\n --accui-border-primary: #334155;\n --accui-border-secondary: #475569;\n --accui-border-tertiary: #64748b;\n\n --accui-button-secondary-background: var(--accui-bg-secondary);\n --accui-button-secondary-background-hover: var(--accui-bg-tertiary);\n --accui-button-secondary-text: var(--accui-text-primary);\n --accui-button-secondary-border: var(--accui-bg-secondary);\n\n --accui-button-ghost-background-hover: var(--accui-bg-tertiary);\n\n --accui-button-outline-background-hover: var(--accui-strands-950);\n --accui-button-outline-text: var(--accui-strands-400);\n --accui-button-outline-border: var(--accui-strands-400);\n\n --accui-alert-success-background: #0f2a1a;\n --accui-alert-success-text: #4ade80;\n --accui-alert-success-border: #16a34a;\n\n --accui-alert-error-background: #2a0f0f;\n --accui-alert-error-text: #f87171;\n --accui-alert-error-border: #dc2626;\n\n --accui-alert-warning-background: #2a2508;\n --accui-alert-warning-text: #fbbf24;\n --accui-alert-warning-border: #eab308;\n\n --accui-alert-info-background: #0f1a2a;\n --accui-alert-info-text: #60a5fa;\n --accui-alert-info-border: #3b82f6;\n\n --accui-toggle-background: var(--accui-border-tertiary);\n\n --accui-tabs-background: var(--accui-bg-tertiary);\n --accui-tabs-button-background: var(--accui-bg-secondary);\n --accui-tabs-button-background-hover: var(--accui-bg-primary);\n\n --accui-input-shadow-focus: 0 0 0 3px rgba(234, 0, 168, 0.2);\n --accui-card-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.3);\n\n --accui-modal-background: var(--accui-bg-secondary);\n --accui-modal-overlay: rgba(0, 0, 0, 0.7);\n --accui-modal-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.5);\n\n --accui-table-row-hover: var(--accui-bg-tertiary);\n\n --accui-colorpicker-background: var(--accui-bg-secondary);\n --accui-colorpicker-text: var(--accui-text-primary);\n --accui-colorpicker-input-background: var(--accui-bg-tertiary);\n --accui-colorpicker-button-hover: var(--accui-bg-tertiary);\n --accui-colorpicker-contrast-background: var(--accui-bg-primary);\n\n --accui-avatar-button-background: var(--accui-bg-tertiary);\n }\n\n /* Base reset for Shadow DOM content */\n *, *::before, *::after {\n box-sizing: border-box;\n }\n";
|
|
3
3
|
/**
|
|
4
4
|
* Creates and registers a custom element from a Vue component
|
|
5
5
|
*
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { default as UiMegaMenu } from '../../vue/ui/UiMegaMenu.vue';
|
|
2
|
+
export { default as UiMegaMenuItem } from '../../vue/ui/UiMegaMenu/UiMegaMenu.Item.vue';
|
|
3
|
+
export { default as UiMegaMenuPanel } from '../../vue/ui/UiMegaMenu/UiMegaMenu.Panel.vue';
|
|
4
|
+
export { default as UiMegaMenuGroup } from '../../vue/ui/UiMegaMenu/UiMegaMenu.Group.vue';
|
|
5
|
+
export { UiMegaMenu };
|
|
@@ -15,14 +15,14 @@ declare function loadComponents(shortNames: string[], onProgress?: (loaded: numb
|
|
|
15
15
|
}>;
|
|
16
16
|
}>;
|
|
17
17
|
/**
|
|
18
|
-
*
|
|
18
|
+
* LumenLoader Custom Element
|
|
19
19
|
*
|
|
20
20
|
* Attributes:
|
|
21
21
|
* - components: Comma-separated list of component names to load
|
|
22
22
|
* - base-url: Override the base URL for component files
|
|
23
23
|
* - show-loading: Show a loading indicator whilst components load
|
|
24
24
|
*/
|
|
25
|
-
declare class
|
|
25
|
+
declare class LumenLoader extends HTMLElement {
|
|
26
26
|
private _connected;
|
|
27
27
|
private _loadPromise;
|
|
28
28
|
static get observedAttributes(): string[];
|
|
@@ -54,4 +54,4 @@ declare class StrandsLoader extends HTMLElement {
|
|
|
54
54
|
*/
|
|
55
55
|
static getComponentInfo(name: string): ComponentInfo | undefined;
|
|
56
56
|
}
|
|
57
|
-
export {
|
|
57
|
+
export { LumenLoader, loadComponent, loadComponents, loadedComponents };
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
export interface ComponentInfo {
|
|
8
8
|
/** The custom element tag name */
|
|
9
9
|
tagName: string;
|
|
10
|
-
/** The short name used in the loader (e.g., 'button' for
|
|
10
|
+
/** The short name used in the loader (e.g., 'button' for sl-button) */
|
|
11
11
|
shortName: string;
|
|
12
12
|
/** Description of the component */
|
|
13
13
|
description: string;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@strands.gg/accui",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.19.1",
|
|
4
4
|
"description": "Strands Authentication UI Components",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.cjs.js",
|
|
@@ -62,20 +62,6 @@
|
|
|
62
62
|
],
|
|
63
63
|
"author": "Strands Services Limited",
|
|
64
64
|
"license": "MIT",
|
|
65
|
-
"scripts": {
|
|
66
|
-
"build": "vite build",
|
|
67
|
-
"build-demo": "vite build --config vite.demo.config.ts",
|
|
68
|
-
"build-webcomponents": "vite build --config vite.webcomponents.config.ts",
|
|
69
|
-
"serve": "vite",
|
|
70
|
-
"serve-demo": "vite --config vite.demo.config.ts",
|
|
71
|
-
"serve-webcomponents": "serve -c serve.webcomponents.json -l 3002 dist-webcomponents",
|
|
72
|
-
"dev": "vite build --watch",
|
|
73
|
-
"preview": "vite preview",
|
|
74
|
-
"preview-demo": "vite preview --config vite.demo.config.ts",
|
|
75
|
-
"prepare-publish": "npm run build",
|
|
76
|
-
"mcp:serve": "npx @modelcontextprotocol/server-filesystem .mcp/docs",
|
|
77
|
-
"mcp:validate": "node -e \"console.log('MCP docs validation: ', require('fs').existsSync('.mcp/docs/ui-components.md') ? '✓ Valid' : '✗ Missing')\""
|
|
78
|
-
},
|
|
79
65
|
"dependencies": {
|
|
80
66
|
"@tiptap/extension-heading": "^3.4.4",
|
|
81
67
|
"@tiptap/extension-placeholder": "^3.4.4",
|
|
@@ -101,5 +87,19 @@
|
|
|
101
87
|
},
|
|
102
88
|
"publishConfig": {
|
|
103
89
|
"access": "public"
|
|
90
|
+
},
|
|
91
|
+
"scripts": {
|
|
92
|
+
"build": "vite build",
|
|
93
|
+
"build-demo": "vite build --config vite.demo.config.ts",
|
|
94
|
+
"build-webcomponents": "vite build --config vite.webcomponents.config.ts",
|
|
95
|
+
"serve": "vite",
|
|
96
|
+
"serve-demo": "vite --config vite.demo.config.ts",
|
|
97
|
+
"serve-webcomponents": "serve -c serve.webcomponents.json -l 3002 dist-webcomponents",
|
|
98
|
+
"dev": "vite build --watch",
|
|
99
|
+
"preview": "vite preview",
|
|
100
|
+
"preview-demo": "vite preview --config vite.demo.config.ts",
|
|
101
|
+
"prepare-publish": "npm run build",
|
|
102
|
+
"mcp:serve": "npx @modelcontextprotocol/server-filesystem .mcp/docs",
|
|
103
|
+
"mcp:validate": "node -e \"console.log('MCP docs validation: ', require('fs').existsSync('.mcp/docs/ui-components.md') ? '✓ Valid' : '✗ Missing')\""
|
|
104
104
|
}
|
|
105
|
-
}
|
|
105
|
+
}
|