@sekiui/elements 0.0.55 → 0.0.57
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/cdn/index.js +1053 -91
- package/dist/cdn/p-BJCq8m2o.js +138 -0
- package/dist/cdn/p-BfRJQMIU.js +111 -0
- package/dist/cdn/{p-bMBhrs0a.js → p-Bp7tjKwQ.js} +427 -7
- package/dist/cdn/seki-button.js +1 -1
- package/dist/cdn/seki-card-action.d.ts +11 -0
- package/dist/cdn/seki-card-action.js +38 -0
- package/dist/cdn/seki-card-content.d.ts +11 -0
- package/dist/cdn/seki-card-content.js +38 -0
- package/dist/cdn/seki-card-description.d.ts +11 -0
- package/dist/cdn/seki-card-description.js +38 -0
- package/dist/cdn/seki-card-footer.d.ts +11 -0
- package/dist/cdn/seki-card-footer.js +44 -0
- package/dist/cdn/seki-card-header.d.ts +11 -0
- package/dist/cdn/seki-card-header.js +38 -0
- package/dist/cdn/seki-card-title.d.ts +11 -0
- package/dist/cdn/seki-card-title.js +59 -0
- package/dist/cdn/seki-card.d.ts +11 -0
- package/dist/cdn/seki-card.js +39 -0
- package/dist/cdn/seki-field-description.js +2 -2
- package/dist/cdn/seki-field-error.js +2 -2
- package/dist/cdn/seki-field-group.js +2 -2
- package/dist/cdn/seki-field-label.js +2 -2
- package/dist/cdn/seki-field-legend.js +2 -2
- package/dist/cdn/seki-field.js +2 -2
- package/dist/cdn/seki-fieldset.js +2 -2
- package/dist/cdn/seki-input.js +2 -2
- package/dist/cdn/seki-select-content.js +1 -1
- package/dist/cdn/seki-select-group.js +2 -2
- package/dist/cdn/seki-select-option.js +2 -2
- package/dist/cdn/seki-select-trigger.js +1 -1
- package/dist/cdn/seki-select.js +2 -2
- package/dist/cdn/seki-sidebar-content.d.ts +11 -0
- package/dist/cdn/seki-sidebar-content.js +38 -0
- package/dist/cdn/seki-sidebar-footer.d.ts +11 -0
- package/dist/cdn/seki-sidebar-footer.js +38 -0
- package/dist/cdn/seki-sidebar-group.d.ts +11 -0
- package/dist/cdn/seki-sidebar-group.js +131 -0
- package/dist/cdn/seki-sidebar-header.d.ts +11 -0
- package/dist/cdn/seki-sidebar-header.js +38 -0
- package/dist/cdn/seki-sidebar-menu-item.d.ts +11 -0
- package/dist/cdn/seki-sidebar-menu-item.js +200 -0
- package/dist/cdn/seki-sidebar-menu-sub.d.ts +11 -0
- package/dist/cdn/seki-sidebar-menu-sub.js +123 -0
- package/dist/cdn/seki-sidebar-menu.d.ts +11 -0
- package/dist/cdn/seki-sidebar-menu.js +38 -0
- package/dist/cdn/seki-sidebar-trigger.d.ts +11 -0
- package/dist/cdn/seki-sidebar-trigger.js +109 -0
- package/dist/cdn/seki-sidebar.d.ts +11 -0
- package/dist/cdn/seki-sidebar.js +380 -0
- package/dist/cdn/seki-skeleton.js +2 -2
- package/dist/cdn/seki-switch.js +1 -1
- package/dist/cdn/seki-tooltip.js +1 -1
- package/dist/cjs/{index-Dd6_-KaR.js → index-tQYksITZ.js} +426 -6
- package/dist/cjs/index.cjs.js +1115 -63
- package/dist/cjs/keyboard-Cjl5HYES.js +142 -0
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/seki-button.cjs.entry.js +1 -1
- package/dist/cjs/seki-card-action.cjs.entry.js +17 -0
- package/dist/cjs/seki-card-content.cjs.entry.js +17 -0
- package/dist/cjs/seki-card-description.cjs.entry.js +17 -0
- package/dist/cjs/seki-card-footer.cjs.entry.js +22 -0
- package/dist/cjs/seki-card-header.cjs.entry.js +17 -0
- package/dist/cjs/seki-card-title.cjs.entry.js +37 -0
- package/dist/cjs/seki-card.cjs.entry.js +17 -0
- package/dist/cjs/seki-field-description.cjs.entry.js +2 -2
- package/dist/cjs/seki-field-error.cjs.entry.js +2 -2
- package/dist/cjs/seki-field-group.cjs.entry.js +2 -2
- package/dist/cjs/seki-field-label.cjs.entry.js +2 -2
- package/dist/cjs/seki-field-legend.cjs.entry.js +2 -2
- package/dist/cjs/seki-field.cjs.entry.js +2 -2
- package/dist/cjs/seki-fieldset.cjs.entry.js +2 -2
- package/dist/cjs/seki-input.cjs.entry.js +2 -2
- package/dist/cjs/seki-select-content.cjs.entry.js +1 -1
- package/dist/cjs/seki-select-group.cjs.entry.js +2 -2
- package/dist/cjs/seki-select-option.cjs.entry.js +2 -2
- package/dist/cjs/seki-select-trigger.cjs.entry.js +1 -1
- package/dist/cjs/seki-select.cjs.entry.js +2 -2
- package/dist/cjs/seki-sidebar-content.cjs.entry.js +20 -0
- package/dist/cjs/seki-sidebar-footer.cjs.entry.js +20 -0
- package/dist/cjs/seki-sidebar-group.cjs.entry.js +105 -0
- package/dist/cjs/seki-sidebar-header.cjs.entry.js +20 -0
- package/dist/cjs/seki-sidebar-menu-item.cjs.entry.js +174 -0
- package/dist/cjs/seki-sidebar-menu-sub.cjs.entry.js +99 -0
- package/dist/cjs/seki-sidebar-menu.cjs.entry.js +20 -0
- package/dist/cjs/seki-sidebar-trigger.cjs.entry.js +86 -0
- package/dist/cjs/seki-sidebar.cjs.entry.js +342 -0
- package/dist/cjs/seki-skeleton.cjs.entry.js +2 -2
- package/dist/cjs/seki-switch.cjs.entry.js +81 -3
- package/dist/cjs/seki-tooltip.cjs.entry.js +1 -1
- package/dist/cjs/sekiui.cjs.js +2 -2
- package/dist/collection/collection-manifest.json +16 -0
- package/dist/collection/components/card/seki-card-action.js +50 -0
- package/dist/collection/components/card/seki-card-content.js +51 -0
- package/dist/collection/components/card/seki-card-description.js +48 -0
- package/dist/collection/components/card/seki-card-footer.js +83 -0
- package/dist/collection/components/card/seki-card-header.js +54 -0
- package/dist/collection/components/card/seki-card-title.js +95 -0
- package/dist/collection/components/card/seki-card.a11y.js +363 -0
- package/dist/collection/components/card/seki-card.css +608 -0
- package/dist/collection/components/card/seki-card.js +72 -0
- package/dist/collection/components/field/seki-field.js +1 -1
- package/dist/collection/components/field-description/seki-field-description.js +1 -1
- package/dist/collection/components/field-error/seki-field-error.js +1 -1
- package/dist/collection/components/field-group/seki-field-group.js +1 -1
- package/dist/collection/components/field-label/seki-field-label.js +1 -1
- package/dist/collection/components/field-legend/seki-field-legend.js +1 -1
- package/dist/collection/components/fieldset/seki-fieldset.js +1 -1
- package/dist/collection/components/input/seki-input.js +1 -1
- package/dist/collection/components/select/seki-select.js +1 -1
- package/dist/collection/components/select-group/seki-select-group.js +1 -1
- package/dist/collection/components/select-option/seki-select-option.js +1 -1
- package/dist/collection/components/sidebar/seki-sidebar-content.css +82 -0
- package/dist/collection/components/sidebar/seki-sidebar-content.js +33 -0
- package/dist/collection/components/sidebar/seki-sidebar-footer.css +44 -0
- package/dist/collection/components/sidebar/seki-sidebar-footer.js +31 -0
- package/dist/collection/components/sidebar/seki-sidebar-group.css +158 -0
- package/dist/collection/components/sidebar/seki-sidebar-group.js +300 -0
- package/dist/collection/components/sidebar/seki-sidebar-header.css +44 -0
- package/dist/collection/components/sidebar/seki-sidebar-header.js +32 -0
- package/dist/collection/components/sidebar/seki-sidebar-menu-item.css +196 -0
- package/dist/collection/components/sidebar/seki-sidebar-menu-item.js +403 -0
- package/dist/collection/components/sidebar/seki-sidebar-menu-sub.css +357 -0
- package/dist/collection/components/sidebar/seki-sidebar-menu-sub.js +256 -0
- package/dist/collection/components/sidebar/seki-sidebar-menu.css +25 -0
- package/dist/collection/components/sidebar/seki-sidebar-menu.js +32 -0
- package/dist/collection/components/sidebar/seki-sidebar-trigger.css +68 -0
- package/dist/collection/components/sidebar/seki-sidebar-trigger.js +175 -0
- package/dist/collection/components/sidebar/seki-sidebar.css +352 -0
- package/dist/collection/components/sidebar/seki-sidebar.js +812 -0
- package/dist/collection/components/sidebar/types.js +18 -0
- package/dist/collection/components/skeleton/seki-skeleton.js +1 -1
- package/dist/collection/index.js +7 -0
- package/dist/collection/services/focus.js +192 -0
- package/dist/collection/services/index.js +7 -0
- package/dist/collection/services/keyboard.js +136 -0
- package/dist/collection/services/media-query.js +254 -0
- package/dist/collection/types.js +41 -0
- package/dist/collection/utils/a11y.js +291 -0
- package/dist/collection/utils/common.js +286 -0
- package/dist/components/index.js +1053 -91
- package/dist/components/p-BJCq8m2o.js +138 -0
- package/dist/components/{p-QhPshhKB.js → p-BzYKy7d3.js} +427 -7
- package/dist/components/p-DwTISp-i.js +111 -0
- package/dist/components/seki-button.js +1 -1
- package/dist/components/seki-card-action.d.ts +11 -0
- package/dist/components/seki-card-action.js +38 -0
- package/dist/components/seki-card-content.d.ts +11 -0
- package/dist/components/seki-card-content.js +38 -0
- package/dist/components/seki-card-description.d.ts +11 -0
- package/dist/components/seki-card-description.js +38 -0
- package/dist/components/seki-card-footer.d.ts +11 -0
- package/dist/components/seki-card-footer.js +44 -0
- package/dist/components/seki-card-header.d.ts +11 -0
- package/dist/components/seki-card-header.js +38 -0
- package/dist/components/seki-card-title.d.ts +11 -0
- package/dist/components/seki-card-title.js +59 -0
- package/dist/components/seki-card.d.ts +11 -0
- package/dist/components/seki-card.js +39 -0
- package/dist/components/seki-field-description.js +2 -2
- package/dist/components/seki-field-error.js +2 -2
- package/dist/components/seki-field-group.js +2 -2
- package/dist/components/seki-field-label.js +2 -2
- package/dist/components/seki-field-legend.js +2 -2
- package/dist/components/seki-field.js +2 -2
- package/dist/components/seki-fieldset.js +2 -2
- package/dist/components/seki-input.js +2 -2
- package/dist/components/seki-select-content.js +1 -1
- package/dist/components/seki-select-group.js +2 -2
- package/dist/components/seki-select-option.js +2 -2
- package/dist/components/seki-select-trigger.js +1 -1
- package/dist/components/seki-select.js +2 -2
- package/dist/components/seki-sidebar-content.d.ts +11 -0
- package/dist/components/seki-sidebar-content.js +38 -0
- package/dist/components/seki-sidebar-footer.d.ts +11 -0
- package/dist/components/seki-sidebar-footer.js +38 -0
- package/dist/components/seki-sidebar-group.d.ts +11 -0
- package/dist/components/seki-sidebar-group.js +131 -0
- package/dist/components/seki-sidebar-header.d.ts +11 -0
- package/dist/components/seki-sidebar-header.js +38 -0
- package/dist/components/seki-sidebar-menu-item.d.ts +11 -0
- package/dist/components/seki-sidebar-menu-item.js +200 -0
- package/dist/components/seki-sidebar-menu-sub.d.ts +11 -0
- package/dist/components/seki-sidebar-menu-sub.js +123 -0
- package/dist/components/seki-sidebar-menu.d.ts +11 -0
- package/dist/components/seki-sidebar-menu.js +38 -0
- package/dist/components/seki-sidebar-trigger.d.ts +11 -0
- package/dist/components/seki-sidebar-trigger.js +109 -0
- package/dist/components/seki-sidebar.d.ts +11 -0
- package/dist/components/seki-sidebar.js +380 -0
- package/dist/components/seki-skeleton.js +2 -2
- package/dist/components/seki-switch.js +1 -1
- package/dist/components/seki-tooltip.js +1 -1
- package/dist/esm/{index-CuXbV_yz.js → index-Dfzpqq0a.js} +426 -6
- package/dist/esm/index.js +1053 -63
- package/dist/esm/keyboard-BJCq8m2o.js +138 -0
- package/dist/esm/loader.js +3 -3
- package/dist/esm/seki-button.entry.js +1 -1
- package/dist/esm/seki-card-action.entry.js +15 -0
- package/dist/esm/seki-card-content.entry.js +15 -0
- package/dist/esm/seki-card-description.entry.js +15 -0
- package/dist/esm/seki-card-footer.entry.js +20 -0
- package/dist/esm/seki-card-header.entry.js +15 -0
- package/dist/esm/seki-card-title.entry.js +35 -0
- package/dist/esm/seki-card.entry.js +15 -0
- package/dist/esm/seki-field-description.entry.js +2 -2
- package/dist/esm/seki-field-error.entry.js +2 -2
- package/dist/esm/seki-field-group.entry.js +2 -2
- package/dist/esm/seki-field-label.entry.js +2 -2
- package/dist/esm/seki-field-legend.entry.js +2 -2
- package/dist/esm/seki-field.entry.js +2 -2
- package/dist/esm/seki-fieldset.entry.js +2 -2
- package/dist/esm/seki-input.entry.js +2 -2
- package/dist/esm/seki-select-content.entry.js +1 -1
- package/dist/esm/seki-select-group.entry.js +2 -2
- package/dist/esm/seki-select-option.entry.js +2 -2
- package/dist/esm/seki-select-trigger.entry.js +1 -1
- package/dist/esm/seki-select.entry.js +2 -2
- package/dist/esm/seki-sidebar-content.entry.js +18 -0
- package/dist/esm/seki-sidebar-footer.entry.js +18 -0
- package/dist/esm/seki-sidebar-group.entry.js +103 -0
- package/dist/esm/seki-sidebar-header.entry.js +18 -0
- package/dist/esm/seki-sidebar-menu-item.entry.js +172 -0
- package/dist/esm/seki-sidebar-menu-sub.entry.js +97 -0
- package/dist/esm/seki-sidebar-menu.entry.js +18 -0
- package/dist/esm/seki-sidebar-trigger.entry.js +84 -0
- package/dist/esm/seki-sidebar.entry.js +340 -0
- package/dist/esm/seki-skeleton.entry.js +2 -2
- package/dist/esm/seki-switch.entry.js +84 -2
- package/dist/esm/seki-tooltip.entry.js +1 -1
- package/dist/esm/sekiui.js +3 -3
- package/dist/sekiui/index.esm.js +1 -1
- package/dist/sekiui/p-01cfb4e7.entry.js +1 -0
- package/dist/sekiui/{p-431f46a1.entry.js → p-042ec460.entry.js} +1 -1
- package/dist/sekiui/{p-a36f1ac4.entry.js → p-10c008fc.entry.js} +1 -1
- package/dist/sekiui/p-352bd295.entry.js +1 -0
- package/dist/sekiui/p-37c5f4d9.entry.js +1 -0
- package/dist/sekiui/p-40fb71d6.entry.js +1 -0
- package/dist/sekiui/{p-eefbc037.entry.js → p-44191aed.entry.js} +1 -1
- package/dist/sekiui/{p-81709fc2.entry.js → p-4423d621.entry.js} +1 -1
- package/dist/sekiui/{p-e679d501.entry.js → p-4636588f.entry.js} +1 -1
- package/dist/sekiui/p-471b97a5.entry.js +1 -0
- package/dist/sekiui/{p-de4735fb.entry.js → p-56f0d754.entry.js} +1 -1
- package/dist/sekiui/p-5bc0f5aa.entry.js +1 -0
- package/dist/sekiui/p-6164cd8a.entry.js +1 -0
- package/dist/sekiui/{p-0fba4e2d.entry.js → p-635f4098.entry.js} +1 -1
- package/dist/sekiui/{p-434be19f.entry.js → p-743fc6d9.entry.js} +1 -1
- package/dist/sekiui/p-83e65cbe.entry.js +1 -0
- package/dist/sekiui/p-8b7bd061.entry.js +1 -0
- package/dist/sekiui/p-8d9a4878.entry.js +1 -0
- package/dist/sekiui/p-9cb9cdfe.entry.js +1 -0
- package/dist/sekiui/p-9f2d95d7.entry.js +1 -0
- package/dist/sekiui/p-BJCq8m2o.js +1 -0
- package/dist/sekiui/p-Dfzpqq0a.js +2 -0
- package/dist/sekiui/p-a1a71958.entry.js +1 -0
- package/dist/sekiui/{p-bf942ad5.entry.js → p-a71e0c55.entry.js} +1 -1
- package/dist/sekiui/{p-6ff91f7f.entry.js → p-ae227955.entry.js} +1 -1
- package/dist/sekiui/{p-80a41058.entry.js → p-b365f5fb.entry.js} +1 -1
- package/dist/sekiui/{p-6bde807e.entry.js → p-b387a2a5.entry.js} +1 -1
- package/dist/sekiui/p-b8590f4d.entry.js +1 -0
- package/dist/sekiui/p-c98b6d6a.entry.js +1 -0
- package/dist/sekiui/{p-7c2245be.entry.js → p-d73cdb9a.entry.js} +1 -1
- package/dist/sekiui/{p-a56602b3.entry.js → p-d96e770e.entry.js} +1 -1
- package/dist/sekiui/p-e62dd89b.entry.js +1 -0
- package/dist/sekiui/{p-386c00ac.entry.js → p-e7bb140c.entry.js} +1 -1
- package/dist/sekiui/{p-6e238adf.entry.js → p-eecc18f3.entry.js} +1 -1
- package/dist/sekiui/p-ff636955.entry.js +1 -0
- package/dist/sekiui/sekiui.esm.js +1 -1
- package/dist/types/components/card/seki-card-action.d.ts +16 -0
- package/dist/types/components/card/seki-card-content.d.ts +17 -0
- package/dist/types/components/card/seki-card-description.d.ts +14 -0
- package/dist/types/components/card/seki-card-footer.d.ts +24 -0
- package/dist/types/components/card/seki-card-header.d.ts +20 -0
- package/dist/types/components/card/seki-card-title.d.ts +20 -0
- package/dist/types/components/card/seki-card.a11y.d.ts +1 -0
- package/dist/types/components/card/seki-card.d.ts +23 -0
- package/dist/types/components/sidebar/seki-sidebar-content.d.ts +18 -0
- package/dist/types/components/sidebar/seki-sidebar-footer.d.ts +16 -0
- package/dist/types/components/sidebar/seki-sidebar-group.d.ts +81 -0
- package/dist/types/components/sidebar/seki-sidebar-header.d.ts +17 -0
- package/dist/types/components/sidebar/seki-sidebar-menu-item.d.ts +104 -0
- package/dist/types/components/sidebar/seki-sidebar-menu-sub.d.ts +81 -0
- package/dist/types/components/sidebar/seki-sidebar-menu.d.ts +17 -0
- package/dist/types/components/sidebar/seki-sidebar-trigger.d.ts +53 -0
- package/dist/types/components/sidebar/seki-sidebar.d.ts +185 -0
- package/dist/types/components/sidebar/types.d.ts +245 -0
- package/dist/types/components.d.ts +899 -0
- package/dist/types/index.d.ts +4 -0
- package/dist/types/services/focus.d.ts +74 -0
- package/dist/types/services/index.d.ts +7 -0
- package/dist/types/services/keyboard.d.ts +74 -0
- package/dist/types/services/media-query.d.ts +121 -0
- package/dist/types/types.d.ts +105 -0
- package/dist/types/utils/a11y.d.ts +130 -0
- package/dist/types/utils/common.d.ts +142 -0
- package/package.json +2 -1
- package/dist/sekiui/p-9fe07f6e.entry.js +0 -1
- package/dist/sekiui/p-CuXbV_yz.js +0 -2
|
@@ -7,9 +7,11 @@
|
|
|
7
7
|
import { HTMLStencilElement, JSXBase } from "./stencil-public-runtime";
|
|
8
8
|
import { Event } from "./stencil-public-runtime";
|
|
9
9
|
import { SelectChangeEventDetail, SelectOpenChangeEventDetail, SelectPlacement, SelectValidateEventDetail, SelectValue } from "./utils/select";
|
|
10
|
+
import { CollapsedChangeDetail, CollapseModeChangeDetail, MobileStateChangeDetail, NavigateDetail, OpenChangeDetail, SidebarGroupProps, SidebarMenuItemProps, SidebarMenuSubProps, SidebarProps, SidebarState, SidebarTriggerProps, VariantChangeDetail } from "./components/sidebar/types";
|
|
10
11
|
import { TooltipHideDetail, TooltipPositionedDetail, TooltipShowDetail, TooltipSide } from "./components/tooltip/seki-tooltip";
|
|
11
12
|
export { Event } from "./stencil-public-runtime";
|
|
12
13
|
export { SelectChangeEventDetail, SelectOpenChangeEventDetail, SelectPlacement, SelectValidateEventDetail, SelectValue } from "./utils/select";
|
|
14
|
+
export { CollapsedChangeDetail, CollapseModeChangeDetail, MobileStateChangeDetail, NavigateDetail, OpenChangeDetail, SidebarGroupProps, SidebarMenuItemProps, SidebarMenuSubProps, SidebarProps, SidebarState, SidebarTriggerProps, VariantChangeDetail } from "./components/sidebar/types";
|
|
13
15
|
export { TooltipHideDetail, TooltipPositionedDetail, TooltipShowDetail, TooltipSide } from "./components/tooltip/seki-tooltip";
|
|
14
16
|
export namespace Components {
|
|
15
17
|
interface SekiButton {
|
|
@@ -38,6 +40,116 @@ export namespace Components {
|
|
|
38
40
|
*/
|
|
39
41
|
"variant": 'primary' | 'secondary' | 'outline' | 'ghost' | 'destructive' | 'link';
|
|
40
42
|
}
|
|
43
|
+
/**
|
|
44
|
+
* Flexible container for organizing related content with optional header,
|
|
45
|
+
* content, and footer sections. Composition-based using subcomponents.
|
|
46
|
+
* @example <seki-card>
|
|
47
|
+
* <seki-card-header>
|
|
48
|
+
* <seki-card-title>Title</seki-card-title>
|
|
49
|
+
* </seki-card-header>
|
|
50
|
+
* <seki-card-content>Content here</seki-card-content>
|
|
51
|
+
* </seki-card>
|
|
52
|
+
*/
|
|
53
|
+
interface SekiCard {
|
|
54
|
+
/**
|
|
55
|
+
* Optional CSS class for custom styling hooks
|
|
56
|
+
*/
|
|
57
|
+
"class"?: string;
|
|
58
|
+
/**
|
|
59
|
+
* Optional data attribute for testing
|
|
60
|
+
*/
|
|
61
|
+
"dataTestid"?: string;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Optional action area within card header for buttons or menus.
|
|
65
|
+
* Provides flex layout with automatic right-alignment.
|
|
66
|
+
* @example <seki-card-action>
|
|
67
|
+
* <button icon>⋯</button>
|
|
68
|
+
* </seki-card-action>
|
|
69
|
+
*/
|
|
70
|
+
interface SekiCardAction {
|
|
71
|
+
/**
|
|
72
|
+
* Optional CSS class
|
|
73
|
+
*/
|
|
74
|
+
"class"?: string;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Main content body of the card.
|
|
78
|
+
* Flexible container for any content (text, forms, lists, etc.)
|
|
79
|
+
* @example <seki-card-content>
|
|
80
|
+
* <input type="text" placeholder="Email" />
|
|
81
|
+
* <input type="password" placeholder="Password" />
|
|
82
|
+
* </seki-card-content>
|
|
83
|
+
*/
|
|
84
|
+
interface SekiCardContent {
|
|
85
|
+
/**
|
|
86
|
+
* Optional CSS class
|
|
87
|
+
*/
|
|
88
|
+
"class"?: string;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Secondary descriptive text below the card title.
|
|
92
|
+
* Renders as paragraph with muted text color.
|
|
93
|
+
* @example <seki-card-description>Description text</seki-card-description>
|
|
94
|
+
*/
|
|
95
|
+
interface SekiCardDescription {
|
|
96
|
+
/**
|
|
97
|
+
* Optional CSS class
|
|
98
|
+
*/
|
|
99
|
+
"class"?: string;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Bottom section of a card for action buttons or footer content.
|
|
103
|
+
* Provides flex layout with optional alignment control.
|
|
104
|
+
* @example <seki-card-footer alignment="flex-end">
|
|
105
|
+
* <button>Cancel</button>
|
|
106
|
+
* <button primary>Submit</button>
|
|
107
|
+
* </seki-card-footer>
|
|
108
|
+
*/
|
|
109
|
+
interface SekiCardFooter {
|
|
110
|
+
/**
|
|
111
|
+
* Flex alignment for footer items. Default: flex-start Options: flex-start, center, flex-end
|
|
112
|
+
* @default 'flex-start'
|
|
113
|
+
*/
|
|
114
|
+
"alignment": Alignment;
|
|
115
|
+
/**
|
|
116
|
+
* Optional CSS class
|
|
117
|
+
*/
|
|
118
|
+
"class"?: string;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Header section of a card, typically containing title and description.
|
|
122
|
+
* Provides flex layout for arranging title + action elements.
|
|
123
|
+
* @example <seki-card-header>
|
|
124
|
+
* <seki-card-title>Title</seki-card-title>
|
|
125
|
+
* <seki-card-description>Description</seki-card-description>
|
|
126
|
+
* <seki-card-action>
|
|
127
|
+
* <button>Action</button>
|
|
128
|
+
* </seki-card-action>
|
|
129
|
+
* </seki-card-header>
|
|
130
|
+
*/
|
|
131
|
+
interface SekiCardHeader {
|
|
132
|
+
/**
|
|
133
|
+
* Optional CSS class for custom styling
|
|
134
|
+
*/
|
|
135
|
+
"class"?: string;
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Primary heading text within a card header.
|
|
139
|
+
* Renders as semantic heading (h1-h6) with typography tokens.
|
|
140
|
+
* @example <seki-card-title level="h2">My Card Title</seki-card-title>
|
|
141
|
+
*/
|
|
142
|
+
interface SekiCardTitle {
|
|
143
|
+
/**
|
|
144
|
+
* Optional CSS class
|
|
145
|
+
*/
|
|
146
|
+
"class"?: string;
|
|
147
|
+
/**
|
|
148
|
+
* Semantic heading level (h1-h6). Default: h2
|
|
149
|
+
* @default 'h2'
|
|
150
|
+
*/
|
|
151
|
+
"level": HeadingLevel;
|
|
152
|
+
}
|
|
41
153
|
interface SekiField {
|
|
42
154
|
/**
|
|
43
155
|
* Whether the field is in an invalid/error state Applies data-invalid attribute for styling
|
|
@@ -306,6 +418,194 @@ export namespace Components {
|
|
|
306
418
|
}
|
|
307
419
|
interface SekiSelectTrigger {
|
|
308
420
|
}
|
|
421
|
+
interface SekiSidebar {
|
|
422
|
+
/**
|
|
423
|
+
* Close the sidebar (set isOpen=false)
|
|
424
|
+
* @returns
|
|
425
|
+
*/
|
|
426
|
+
"close": () => Promise<void>;
|
|
427
|
+
/**
|
|
428
|
+
* Collapse mechanism: offcanvas (slides), icon (shrinks), or none (fixed)
|
|
429
|
+
* @type {'offcanvas' | 'icon' | 'none'}
|
|
430
|
+
* @default 'offcanvas'
|
|
431
|
+
*/
|
|
432
|
+
"collapseMode": SidebarProps['collapseMode'];
|
|
433
|
+
/**
|
|
434
|
+
* Initial open/closed state
|
|
435
|
+
* @type {boolean}
|
|
436
|
+
* @default true
|
|
437
|
+
*/
|
|
438
|
+
"defaultOpen": boolean;
|
|
439
|
+
/**
|
|
440
|
+
* Get current sidebar state
|
|
441
|
+
* @returns
|
|
442
|
+
*/
|
|
443
|
+
"getState": () => Promise<SidebarState>;
|
|
444
|
+
/**
|
|
445
|
+
* Viewport width for mobile detection (px)
|
|
446
|
+
* @type {number}
|
|
447
|
+
* @default 768
|
|
448
|
+
*/
|
|
449
|
+
"mobileBreakpoint": number;
|
|
450
|
+
/**
|
|
451
|
+
* Callback fired when open state changes
|
|
452
|
+
*/
|
|
453
|
+
"onOpenChange"?: (isOpen: boolean) => void;
|
|
454
|
+
/**
|
|
455
|
+
* Open the sidebar (set isOpen=true)
|
|
456
|
+
* @returns
|
|
457
|
+
*/
|
|
458
|
+
"open": () => Promise<void>;
|
|
459
|
+
/**
|
|
460
|
+
* Storage key for persisted state
|
|
461
|
+
* @type {string}
|
|
462
|
+
* @default 'seki-sidebar-state'
|
|
463
|
+
*/
|
|
464
|
+
"persistenceKey": string;
|
|
465
|
+
/**
|
|
466
|
+
* Persist state to localStorage
|
|
467
|
+
* @type {boolean}
|
|
468
|
+
* @default false
|
|
469
|
+
*/
|
|
470
|
+
"persistent": boolean;
|
|
471
|
+
/**
|
|
472
|
+
* Update sidebar state
|
|
473
|
+
* @param state - Partial state object
|
|
474
|
+
* @returns
|
|
475
|
+
*/
|
|
476
|
+
"setState": (state: Partial<SidebarState>) => Promise<void>;
|
|
477
|
+
/**
|
|
478
|
+
* Position: left or right side of viewport
|
|
479
|
+
* @type {'left' | 'right'}
|
|
480
|
+
* @default 'left'
|
|
481
|
+
*/
|
|
482
|
+
"side": SidebarProps['side'];
|
|
483
|
+
/**
|
|
484
|
+
* Toggle the sidebar open/closed state
|
|
485
|
+
* @returns
|
|
486
|
+
*/
|
|
487
|
+
"toggle": () => Promise<void>;
|
|
488
|
+
/**
|
|
489
|
+
* Layout variant: standard, floating (detached), or inset
|
|
490
|
+
* @type {'sidebar' | 'floating' | 'inset'}
|
|
491
|
+
* @default 'sidebar'
|
|
492
|
+
*/
|
|
493
|
+
"variant": SidebarProps['variant'];
|
|
494
|
+
}
|
|
495
|
+
interface SekiSidebarContent {
|
|
496
|
+
}
|
|
497
|
+
interface SekiSidebarFooter {
|
|
498
|
+
}
|
|
499
|
+
interface SekiSidebarGroup {
|
|
500
|
+
/**
|
|
501
|
+
* Optional action button configuration
|
|
502
|
+
* @type {object}
|
|
503
|
+
*/
|
|
504
|
+
"action"?: SidebarGroupProps['action'];
|
|
505
|
+
/**
|
|
506
|
+
* Allow collapsing this group
|
|
507
|
+
* @type {boolean}
|
|
508
|
+
* @default false
|
|
509
|
+
*/
|
|
510
|
+
"collapsible": boolean;
|
|
511
|
+
/**
|
|
512
|
+
* Initial collapsed state
|
|
513
|
+
* @type {boolean}
|
|
514
|
+
* @default false
|
|
515
|
+
*/
|
|
516
|
+
"defaultCollapsed": boolean;
|
|
517
|
+
/**
|
|
518
|
+
* Get current collapsed state
|
|
519
|
+
*/
|
|
520
|
+
"isCollapsedState": () => Promise<boolean>;
|
|
521
|
+
/**
|
|
522
|
+
* Set collapsed state
|
|
523
|
+
*/
|
|
524
|
+
"setCollapsed": (collapsed: boolean) => Promise<void>;
|
|
525
|
+
/**
|
|
526
|
+
* Section header text (optional)
|
|
527
|
+
* @type {string}
|
|
528
|
+
*/
|
|
529
|
+
"title"?: SidebarGroupProps['title'];
|
|
530
|
+
}
|
|
531
|
+
interface SekiSidebarHeader {
|
|
532
|
+
}
|
|
533
|
+
interface SekiSidebarMenu {
|
|
534
|
+
}
|
|
535
|
+
interface SekiSidebarMenuItem {
|
|
536
|
+
/**
|
|
537
|
+
* ARIA current value for active items
|
|
538
|
+
* @type {string}
|
|
539
|
+
* @default 'page'
|
|
540
|
+
*/
|
|
541
|
+
"ariaCurrentValue": SidebarMenuItemProps['ariaCurrentValue'];
|
|
542
|
+
/**
|
|
543
|
+
* Accessibility label override
|
|
544
|
+
* @type {string}
|
|
545
|
+
*/
|
|
546
|
+
"ariaLabel"?: SidebarMenuItemProps['ariaLabel'];
|
|
547
|
+
/**
|
|
548
|
+
* Badge indicator for the item
|
|
549
|
+
* @type {object}
|
|
550
|
+
*/
|
|
551
|
+
"badge"?: SidebarMenuItemProps['badge'];
|
|
552
|
+
/**
|
|
553
|
+
* Disable interaction
|
|
554
|
+
* @type {boolean}
|
|
555
|
+
* @default false
|
|
556
|
+
*/
|
|
557
|
+
"disabled": boolean;
|
|
558
|
+
/**
|
|
559
|
+
* Navigation URL (optional)
|
|
560
|
+
* @type {string}
|
|
561
|
+
*/
|
|
562
|
+
"href"?: SidebarMenuItemProps['href'];
|
|
563
|
+
/**
|
|
564
|
+
* Highlight as current page
|
|
565
|
+
* @type {boolean}
|
|
566
|
+
* @default false
|
|
567
|
+
*/
|
|
568
|
+
"isActive": boolean;
|
|
569
|
+
/**
|
|
570
|
+
* Link target: _blank, _self, etc.
|
|
571
|
+
* @type {string}
|
|
572
|
+
*/
|
|
573
|
+
"target"?: SidebarMenuItemProps['target'];
|
|
574
|
+
}
|
|
575
|
+
interface SekiSidebarMenuSub {
|
|
576
|
+
/**
|
|
577
|
+
* Initial collapsed state
|
|
578
|
+
* @type {boolean}
|
|
579
|
+
* @default false
|
|
580
|
+
*/
|
|
581
|
+
"defaultCollapsed": boolean;
|
|
582
|
+
/**
|
|
583
|
+
* Get current collapsed state
|
|
584
|
+
*/
|
|
585
|
+
"isCollapsedState": () => Promise<boolean>;
|
|
586
|
+
/**
|
|
587
|
+
* Label for the submenu (shown when expanded)
|
|
588
|
+
* @type {string}
|
|
589
|
+
*/
|
|
590
|
+
"label"?: SidebarMenuSubProps['label'];
|
|
591
|
+
/**
|
|
592
|
+
* Set collapsed state
|
|
593
|
+
*/
|
|
594
|
+
"setCollapsed": (collapsed: boolean) => Promise<void>;
|
|
595
|
+
}
|
|
596
|
+
interface SekiSidebarTrigger {
|
|
597
|
+
/**
|
|
598
|
+
* Accessibility label for the button
|
|
599
|
+
* @type {string}
|
|
600
|
+
* @default 'Toggle sidebar'
|
|
601
|
+
*/
|
|
602
|
+
"ariaLabel": SidebarTriggerProps['ariaLabel'];
|
|
603
|
+
/**
|
|
604
|
+
* Icon name or SVG path (optional)
|
|
605
|
+
* @type {string}
|
|
606
|
+
*/
|
|
607
|
+
"icon": SidebarTriggerProps['icon'];
|
|
608
|
+
}
|
|
309
609
|
/**
|
|
310
610
|
* @component seki-skeleton
|
|
311
611
|
* @description A loading placeholder component that displays an animated skeleton while content is loading
|
|
@@ -424,6 +724,22 @@ export interface SekiSelectOptionCustomEvent<T> extends CustomEvent<T> {
|
|
|
424
724
|
detail: T;
|
|
425
725
|
target: HTMLSekiSelectOptionElement;
|
|
426
726
|
}
|
|
727
|
+
export interface SekiSidebarCustomEvent<T> extends CustomEvent<T> {
|
|
728
|
+
detail: T;
|
|
729
|
+
target: HTMLSekiSidebarElement;
|
|
730
|
+
}
|
|
731
|
+
export interface SekiSidebarGroupCustomEvent<T> extends CustomEvent<T> {
|
|
732
|
+
detail: T;
|
|
733
|
+
target: HTMLSekiSidebarGroupElement;
|
|
734
|
+
}
|
|
735
|
+
export interface SekiSidebarMenuItemCustomEvent<T> extends CustomEvent<T> {
|
|
736
|
+
detail: T;
|
|
737
|
+
target: HTMLSekiSidebarMenuItemElement;
|
|
738
|
+
}
|
|
739
|
+
export interface SekiSidebarMenuSubCustomEvent<T> extends CustomEvent<T> {
|
|
740
|
+
detail: T;
|
|
741
|
+
target: HTMLSekiSidebarMenuSubElement;
|
|
742
|
+
}
|
|
427
743
|
export interface SekiSwitchCustomEvent<T> extends CustomEvent<T> {
|
|
428
744
|
detail: T;
|
|
429
745
|
target: HTMLSekiSwitchElement;
|
|
@@ -439,6 +755,102 @@ declare global {
|
|
|
439
755
|
prototype: HTMLSekiButtonElement;
|
|
440
756
|
new (): HTMLSekiButtonElement;
|
|
441
757
|
};
|
|
758
|
+
/**
|
|
759
|
+
* Flexible container for organizing related content with optional header,
|
|
760
|
+
* content, and footer sections. Composition-based using subcomponents.
|
|
761
|
+
* @example <seki-card>
|
|
762
|
+
* <seki-card-header>
|
|
763
|
+
* <seki-card-title>Title</seki-card-title>
|
|
764
|
+
* </seki-card-header>
|
|
765
|
+
* <seki-card-content>Content here</seki-card-content>
|
|
766
|
+
* </seki-card>
|
|
767
|
+
*/
|
|
768
|
+
interface HTMLSekiCardElement extends Components.SekiCard, HTMLStencilElement {
|
|
769
|
+
}
|
|
770
|
+
var HTMLSekiCardElement: {
|
|
771
|
+
prototype: HTMLSekiCardElement;
|
|
772
|
+
new (): HTMLSekiCardElement;
|
|
773
|
+
};
|
|
774
|
+
/**
|
|
775
|
+
* Optional action area within card header for buttons or menus.
|
|
776
|
+
* Provides flex layout with automatic right-alignment.
|
|
777
|
+
* @example <seki-card-action>
|
|
778
|
+
* <button icon>⋯</button>
|
|
779
|
+
* </seki-card-action>
|
|
780
|
+
*/
|
|
781
|
+
interface HTMLSekiCardActionElement extends Components.SekiCardAction, HTMLStencilElement {
|
|
782
|
+
}
|
|
783
|
+
var HTMLSekiCardActionElement: {
|
|
784
|
+
prototype: HTMLSekiCardActionElement;
|
|
785
|
+
new (): HTMLSekiCardActionElement;
|
|
786
|
+
};
|
|
787
|
+
/**
|
|
788
|
+
* Main content body of the card.
|
|
789
|
+
* Flexible container for any content (text, forms, lists, etc.)
|
|
790
|
+
* @example <seki-card-content>
|
|
791
|
+
* <input type="text" placeholder="Email" />
|
|
792
|
+
* <input type="password" placeholder="Password" />
|
|
793
|
+
* </seki-card-content>
|
|
794
|
+
*/
|
|
795
|
+
interface HTMLSekiCardContentElement extends Components.SekiCardContent, HTMLStencilElement {
|
|
796
|
+
}
|
|
797
|
+
var HTMLSekiCardContentElement: {
|
|
798
|
+
prototype: HTMLSekiCardContentElement;
|
|
799
|
+
new (): HTMLSekiCardContentElement;
|
|
800
|
+
};
|
|
801
|
+
/**
|
|
802
|
+
* Secondary descriptive text below the card title.
|
|
803
|
+
* Renders as paragraph with muted text color.
|
|
804
|
+
* @example <seki-card-description>Description text</seki-card-description>
|
|
805
|
+
*/
|
|
806
|
+
interface HTMLSekiCardDescriptionElement extends Components.SekiCardDescription, HTMLStencilElement {
|
|
807
|
+
}
|
|
808
|
+
var HTMLSekiCardDescriptionElement: {
|
|
809
|
+
prototype: HTMLSekiCardDescriptionElement;
|
|
810
|
+
new (): HTMLSekiCardDescriptionElement;
|
|
811
|
+
};
|
|
812
|
+
/**
|
|
813
|
+
* Bottom section of a card for action buttons or footer content.
|
|
814
|
+
* Provides flex layout with optional alignment control.
|
|
815
|
+
* @example <seki-card-footer alignment="flex-end">
|
|
816
|
+
* <button>Cancel</button>
|
|
817
|
+
* <button primary>Submit</button>
|
|
818
|
+
* </seki-card-footer>
|
|
819
|
+
*/
|
|
820
|
+
interface HTMLSekiCardFooterElement extends Components.SekiCardFooter, HTMLStencilElement {
|
|
821
|
+
}
|
|
822
|
+
var HTMLSekiCardFooterElement: {
|
|
823
|
+
prototype: HTMLSekiCardFooterElement;
|
|
824
|
+
new (): HTMLSekiCardFooterElement;
|
|
825
|
+
};
|
|
826
|
+
/**
|
|
827
|
+
* Header section of a card, typically containing title and description.
|
|
828
|
+
* Provides flex layout for arranging title + action elements.
|
|
829
|
+
* @example <seki-card-header>
|
|
830
|
+
* <seki-card-title>Title</seki-card-title>
|
|
831
|
+
* <seki-card-description>Description</seki-card-description>
|
|
832
|
+
* <seki-card-action>
|
|
833
|
+
* <button>Action</button>
|
|
834
|
+
* </seki-card-action>
|
|
835
|
+
* </seki-card-header>
|
|
836
|
+
*/
|
|
837
|
+
interface HTMLSekiCardHeaderElement extends Components.SekiCardHeader, HTMLStencilElement {
|
|
838
|
+
}
|
|
839
|
+
var HTMLSekiCardHeaderElement: {
|
|
840
|
+
prototype: HTMLSekiCardHeaderElement;
|
|
841
|
+
new (): HTMLSekiCardHeaderElement;
|
|
842
|
+
};
|
|
843
|
+
/**
|
|
844
|
+
* Primary heading text within a card header.
|
|
845
|
+
* Renders as semantic heading (h1-h6) with typography tokens.
|
|
846
|
+
* @example <seki-card-title level="h2">My Card Title</seki-card-title>
|
|
847
|
+
*/
|
|
848
|
+
interface HTMLSekiCardTitleElement extends Components.SekiCardTitle, HTMLStencilElement {
|
|
849
|
+
}
|
|
850
|
+
var HTMLSekiCardTitleElement: {
|
|
851
|
+
prototype: HTMLSekiCardTitleElement;
|
|
852
|
+
new (): HTMLSekiCardTitleElement;
|
|
853
|
+
};
|
|
442
854
|
interface HTMLSekiFieldElement extends Components.SekiField, HTMLStencilElement {
|
|
443
855
|
}
|
|
444
856
|
var HTMLSekiFieldElement: {
|
|
@@ -556,6 +968,107 @@ declare global {
|
|
|
556
968
|
prototype: HTMLSekiSelectTriggerElement;
|
|
557
969
|
new (): HTMLSekiSelectTriggerElement;
|
|
558
970
|
};
|
|
971
|
+
interface HTMLSekiSidebarElementEventMap {
|
|
972
|
+
"openChange": OpenChangeDetail;
|
|
973
|
+
"variantChange": VariantChangeDetail;
|
|
974
|
+
"collapseModeChange": CollapseModeChangeDetail;
|
|
975
|
+
"mobileStateChange": MobileStateChangeDetail;
|
|
976
|
+
}
|
|
977
|
+
interface HTMLSekiSidebarElement extends Components.SekiSidebar, HTMLStencilElement {
|
|
978
|
+
addEventListener<K extends keyof HTMLSekiSidebarElementEventMap>(type: K, listener: (this: HTMLSekiSidebarElement, ev: SekiSidebarCustomEvent<HTMLSekiSidebarElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
979
|
+
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
980
|
+
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
981
|
+
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
|
|
982
|
+
removeEventListener<K extends keyof HTMLSekiSidebarElementEventMap>(type: K, listener: (this: HTMLSekiSidebarElement, ev: SekiSidebarCustomEvent<HTMLSekiSidebarElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
|
|
983
|
+
removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
984
|
+
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
985
|
+
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
|
|
986
|
+
}
|
|
987
|
+
var HTMLSekiSidebarElement: {
|
|
988
|
+
prototype: HTMLSekiSidebarElement;
|
|
989
|
+
new (): HTMLSekiSidebarElement;
|
|
990
|
+
};
|
|
991
|
+
interface HTMLSekiSidebarContentElement extends Components.SekiSidebarContent, HTMLStencilElement {
|
|
992
|
+
}
|
|
993
|
+
var HTMLSekiSidebarContentElement: {
|
|
994
|
+
prototype: HTMLSekiSidebarContentElement;
|
|
995
|
+
new (): HTMLSekiSidebarContentElement;
|
|
996
|
+
};
|
|
997
|
+
interface HTMLSekiSidebarFooterElement extends Components.SekiSidebarFooter, HTMLStencilElement {
|
|
998
|
+
}
|
|
999
|
+
var HTMLSekiSidebarFooterElement: {
|
|
1000
|
+
prototype: HTMLSekiSidebarFooterElement;
|
|
1001
|
+
new (): HTMLSekiSidebarFooterElement;
|
|
1002
|
+
};
|
|
1003
|
+
interface HTMLSekiSidebarGroupElementEventMap {
|
|
1004
|
+
"collapsedChange": CollapsedChangeDetail;
|
|
1005
|
+
}
|
|
1006
|
+
interface HTMLSekiSidebarGroupElement extends Components.SekiSidebarGroup, HTMLStencilElement {
|
|
1007
|
+
addEventListener<K extends keyof HTMLSekiSidebarGroupElementEventMap>(type: K, listener: (this: HTMLSekiSidebarGroupElement, ev: SekiSidebarGroupCustomEvent<HTMLSekiSidebarGroupElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
1008
|
+
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
1009
|
+
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
1010
|
+
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
|
|
1011
|
+
removeEventListener<K extends keyof HTMLSekiSidebarGroupElementEventMap>(type: K, listener: (this: HTMLSekiSidebarGroupElement, ev: SekiSidebarGroupCustomEvent<HTMLSekiSidebarGroupElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
|
|
1012
|
+
removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
1013
|
+
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
1014
|
+
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
|
|
1015
|
+
}
|
|
1016
|
+
var HTMLSekiSidebarGroupElement: {
|
|
1017
|
+
prototype: HTMLSekiSidebarGroupElement;
|
|
1018
|
+
new (): HTMLSekiSidebarGroupElement;
|
|
1019
|
+
};
|
|
1020
|
+
interface HTMLSekiSidebarHeaderElement extends Components.SekiSidebarHeader, HTMLStencilElement {
|
|
1021
|
+
}
|
|
1022
|
+
var HTMLSekiSidebarHeaderElement: {
|
|
1023
|
+
prototype: HTMLSekiSidebarHeaderElement;
|
|
1024
|
+
new (): HTMLSekiSidebarHeaderElement;
|
|
1025
|
+
};
|
|
1026
|
+
interface HTMLSekiSidebarMenuElement extends Components.SekiSidebarMenu, HTMLStencilElement {
|
|
1027
|
+
}
|
|
1028
|
+
var HTMLSekiSidebarMenuElement: {
|
|
1029
|
+
prototype: HTMLSekiSidebarMenuElement;
|
|
1030
|
+
new (): HTMLSekiSidebarMenuElement;
|
|
1031
|
+
};
|
|
1032
|
+
interface HTMLSekiSidebarMenuItemElementEventMap {
|
|
1033
|
+
"navigate": NavigateDetail;
|
|
1034
|
+
}
|
|
1035
|
+
interface HTMLSekiSidebarMenuItemElement extends Components.SekiSidebarMenuItem, HTMLStencilElement {
|
|
1036
|
+
addEventListener<K extends keyof HTMLSekiSidebarMenuItemElementEventMap>(type: K, listener: (this: HTMLSekiSidebarMenuItemElement, ev: SekiSidebarMenuItemCustomEvent<HTMLSekiSidebarMenuItemElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
1037
|
+
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
1038
|
+
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
1039
|
+
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
|
|
1040
|
+
removeEventListener<K extends keyof HTMLSekiSidebarMenuItemElementEventMap>(type: K, listener: (this: HTMLSekiSidebarMenuItemElement, ev: SekiSidebarMenuItemCustomEvent<HTMLSekiSidebarMenuItemElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
|
|
1041
|
+
removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
1042
|
+
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
1043
|
+
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
|
|
1044
|
+
}
|
|
1045
|
+
var HTMLSekiSidebarMenuItemElement: {
|
|
1046
|
+
prototype: HTMLSekiSidebarMenuItemElement;
|
|
1047
|
+
new (): HTMLSekiSidebarMenuItemElement;
|
|
1048
|
+
};
|
|
1049
|
+
interface HTMLSekiSidebarMenuSubElementEventMap {
|
|
1050
|
+
"collapsedChange": CollapsedChangeDetail;
|
|
1051
|
+
}
|
|
1052
|
+
interface HTMLSekiSidebarMenuSubElement extends Components.SekiSidebarMenuSub, HTMLStencilElement {
|
|
1053
|
+
addEventListener<K extends keyof HTMLSekiSidebarMenuSubElementEventMap>(type: K, listener: (this: HTMLSekiSidebarMenuSubElement, ev: SekiSidebarMenuSubCustomEvent<HTMLSekiSidebarMenuSubElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
1054
|
+
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
1055
|
+
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
1056
|
+
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
|
|
1057
|
+
removeEventListener<K extends keyof HTMLSekiSidebarMenuSubElementEventMap>(type: K, listener: (this: HTMLSekiSidebarMenuSubElement, ev: SekiSidebarMenuSubCustomEvent<HTMLSekiSidebarMenuSubElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
|
|
1058
|
+
removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
1059
|
+
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
1060
|
+
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
|
|
1061
|
+
}
|
|
1062
|
+
var HTMLSekiSidebarMenuSubElement: {
|
|
1063
|
+
prototype: HTMLSekiSidebarMenuSubElement;
|
|
1064
|
+
new (): HTMLSekiSidebarMenuSubElement;
|
|
1065
|
+
};
|
|
1066
|
+
interface HTMLSekiSidebarTriggerElement extends Components.SekiSidebarTrigger, HTMLStencilElement {
|
|
1067
|
+
}
|
|
1068
|
+
var HTMLSekiSidebarTriggerElement: {
|
|
1069
|
+
prototype: HTMLSekiSidebarTriggerElement;
|
|
1070
|
+
new (): HTMLSekiSidebarTriggerElement;
|
|
1071
|
+
};
|
|
559
1072
|
/**
|
|
560
1073
|
* @component seki-skeleton
|
|
561
1074
|
* @description A loading placeholder component that displays an animated skeleton while content is loading
|
|
@@ -625,6 +1138,13 @@ declare global {
|
|
|
625
1138
|
};
|
|
626
1139
|
interface HTMLElementTagNameMap {
|
|
627
1140
|
"seki-button": HTMLSekiButtonElement;
|
|
1141
|
+
"seki-card": HTMLSekiCardElement;
|
|
1142
|
+
"seki-card-action": HTMLSekiCardActionElement;
|
|
1143
|
+
"seki-card-content": HTMLSekiCardContentElement;
|
|
1144
|
+
"seki-card-description": HTMLSekiCardDescriptionElement;
|
|
1145
|
+
"seki-card-footer": HTMLSekiCardFooterElement;
|
|
1146
|
+
"seki-card-header": HTMLSekiCardHeaderElement;
|
|
1147
|
+
"seki-card-title": HTMLSekiCardTitleElement;
|
|
628
1148
|
"seki-field": HTMLSekiFieldElement;
|
|
629
1149
|
"seki-field-description": HTMLSekiFieldDescriptionElement;
|
|
630
1150
|
"seki-field-error": HTMLSekiFieldErrorElement;
|
|
@@ -638,6 +1158,15 @@ declare global {
|
|
|
638
1158
|
"seki-select-group": HTMLSekiSelectGroupElement;
|
|
639
1159
|
"seki-select-option": HTMLSekiSelectOptionElement;
|
|
640
1160
|
"seki-select-trigger": HTMLSekiSelectTriggerElement;
|
|
1161
|
+
"seki-sidebar": HTMLSekiSidebarElement;
|
|
1162
|
+
"seki-sidebar-content": HTMLSekiSidebarContentElement;
|
|
1163
|
+
"seki-sidebar-footer": HTMLSekiSidebarFooterElement;
|
|
1164
|
+
"seki-sidebar-group": HTMLSekiSidebarGroupElement;
|
|
1165
|
+
"seki-sidebar-header": HTMLSekiSidebarHeaderElement;
|
|
1166
|
+
"seki-sidebar-menu": HTMLSekiSidebarMenuElement;
|
|
1167
|
+
"seki-sidebar-menu-item": HTMLSekiSidebarMenuItemElement;
|
|
1168
|
+
"seki-sidebar-menu-sub": HTMLSekiSidebarMenuSubElement;
|
|
1169
|
+
"seki-sidebar-trigger": HTMLSekiSidebarTriggerElement;
|
|
641
1170
|
"seki-skeleton": HTMLSekiSkeletonElement;
|
|
642
1171
|
"seki-switch": HTMLSekiSwitchElement;
|
|
643
1172
|
"seki-tooltip": HTMLSekiTooltipElement;
|
|
@@ -670,6 +1199,116 @@ declare namespace LocalJSX {
|
|
|
670
1199
|
*/
|
|
671
1200
|
"variant"?: 'primary' | 'secondary' | 'outline' | 'ghost' | 'destructive' | 'link';
|
|
672
1201
|
}
|
|
1202
|
+
/**
|
|
1203
|
+
* Flexible container for organizing related content with optional header,
|
|
1204
|
+
* content, and footer sections. Composition-based using subcomponents.
|
|
1205
|
+
* @example <seki-card>
|
|
1206
|
+
* <seki-card-header>
|
|
1207
|
+
* <seki-card-title>Title</seki-card-title>
|
|
1208
|
+
* </seki-card-header>
|
|
1209
|
+
* <seki-card-content>Content here</seki-card-content>
|
|
1210
|
+
* </seki-card>
|
|
1211
|
+
*/
|
|
1212
|
+
interface SekiCard {
|
|
1213
|
+
/**
|
|
1214
|
+
* Optional CSS class for custom styling hooks
|
|
1215
|
+
*/
|
|
1216
|
+
"class"?: string;
|
|
1217
|
+
/**
|
|
1218
|
+
* Optional data attribute for testing
|
|
1219
|
+
*/
|
|
1220
|
+
"dataTestid"?: string;
|
|
1221
|
+
}
|
|
1222
|
+
/**
|
|
1223
|
+
* Optional action area within card header for buttons or menus.
|
|
1224
|
+
* Provides flex layout with automatic right-alignment.
|
|
1225
|
+
* @example <seki-card-action>
|
|
1226
|
+
* <button icon>⋯</button>
|
|
1227
|
+
* </seki-card-action>
|
|
1228
|
+
*/
|
|
1229
|
+
interface SekiCardAction {
|
|
1230
|
+
/**
|
|
1231
|
+
* Optional CSS class
|
|
1232
|
+
*/
|
|
1233
|
+
"class"?: string;
|
|
1234
|
+
}
|
|
1235
|
+
/**
|
|
1236
|
+
* Main content body of the card.
|
|
1237
|
+
* Flexible container for any content (text, forms, lists, etc.)
|
|
1238
|
+
* @example <seki-card-content>
|
|
1239
|
+
* <input type="text" placeholder="Email" />
|
|
1240
|
+
* <input type="password" placeholder="Password" />
|
|
1241
|
+
* </seki-card-content>
|
|
1242
|
+
*/
|
|
1243
|
+
interface SekiCardContent {
|
|
1244
|
+
/**
|
|
1245
|
+
* Optional CSS class
|
|
1246
|
+
*/
|
|
1247
|
+
"class"?: string;
|
|
1248
|
+
}
|
|
1249
|
+
/**
|
|
1250
|
+
* Secondary descriptive text below the card title.
|
|
1251
|
+
* Renders as paragraph with muted text color.
|
|
1252
|
+
* @example <seki-card-description>Description text</seki-card-description>
|
|
1253
|
+
*/
|
|
1254
|
+
interface SekiCardDescription {
|
|
1255
|
+
/**
|
|
1256
|
+
* Optional CSS class
|
|
1257
|
+
*/
|
|
1258
|
+
"class"?: string;
|
|
1259
|
+
}
|
|
1260
|
+
/**
|
|
1261
|
+
* Bottom section of a card for action buttons or footer content.
|
|
1262
|
+
* Provides flex layout with optional alignment control.
|
|
1263
|
+
* @example <seki-card-footer alignment="flex-end">
|
|
1264
|
+
* <button>Cancel</button>
|
|
1265
|
+
* <button primary>Submit</button>
|
|
1266
|
+
* </seki-card-footer>
|
|
1267
|
+
*/
|
|
1268
|
+
interface SekiCardFooter {
|
|
1269
|
+
/**
|
|
1270
|
+
* Flex alignment for footer items. Default: flex-start Options: flex-start, center, flex-end
|
|
1271
|
+
* @default 'flex-start'
|
|
1272
|
+
*/
|
|
1273
|
+
"alignment"?: Alignment;
|
|
1274
|
+
/**
|
|
1275
|
+
* Optional CSS class
|
|
1276
|
+
*/
|
|
1277
|
+
"class"?: string;
|
|
1278
|
+
}
|
|
1279
|
+
/**
|
|
1280
|
+
* Header section of a card, typically containing title and description.
|
|
1281
|
+
* Provides flex layout for arranging title + action elements.
|
|
1282
|
+
* @example <seki-card-header>
|
|
1283
|
+
* <seki-card-title>Title</seki-card-title>
|
|
1284
|
+
* <seki-card-description>Description</seki-card-description>
|
|
1285
|
+
* <seki-card-action>
|
|
1286
|
+
* <button>Action</button>
|
|
1287
|
+
* </seki-card-action>
|
|
1288
|
+
* </seki-card-header>
|
|
1289
|
+
*/
|
|
1290
|
+
interface SekiCardHeader {
|
|
1291
|
+
/**
|
|
1292
|
+
* Optional CSS class for custom styling
|
|
1293
|
+
*/
|
|
1294
|
+
"class"?: string;
|
|
1295
|
+
}
|
|
1296
|
+
/**
|
|
1297
|
+
* Primary heading text within a card header.
|
|
1298
|
+
* Renders as semantic heading (h1-h6) with typography tokens.
|
|
1299
|
+
* @example <seki-card-title level="h2">My Card Title</seki-card-title>
|
|
1300
|
+
*/
|
|
1301
|
+
interface SekiCardTitle {
|
|
1302
|
+
/**
|
|
1303
|
+
* Optional CSS class
|
|
1304
|
+
*/
|
|
1305
|
+
"class"?: string;
|
|
1306
|
+
/**
|
|
1307
|
+
* Semantic heading level (h1-h6). Default: h2
|
|
1308
|
+
* @default 'h2'
|
|
1309
|
+
*/
|
|
1310
|
+
"level"?: HeadingLevel;
|
|
1311
|
+
}
|
|
673
1312
|
interface SekiField {
|
|
674
1313
|
/**
|
|
675
1314
|
* Whether the field is in an invalid/error state Applies data-invalid attribute for styling
|
|
@@ -938,6 +1577,180 @@ declare namespace LocalJSX {
|
|
|
938
1577
|
}
|
|
939
1578
|
interface SekiSelectTrigger {
|
|
940
1579
|
}
|
|
1580
|
+
interface SekiSidebar {
|
|
1581
|
+
/**
|
|
1582
|
+
* Collapse mechanism: offcanvas (slides), icon (shrinks), or none (fixed)
|
|
1583
|
+
* @type {'offcanvas' | 'icon' | 'none'}
|
|
1584
|
+
* @default 'offcanvas'
|
|
1585
|
+
*/
|
|
1586
|
+
"collapseMode"?: SidebarProps['collapseMode'];
|
|
1587
|
+
/**
|
|
1588
|
+
* Initial open/closed state
|
|
1589
|
+
* @type {boolean}
|
|
1590
|
+
* @default true
|
|
1591
|
+
*/
|
|
1592
|
+
"defaultOpen"?: boolean;
|
|
1593
|
+
/**
|
|
1594
|
+
* Viewport width for mobile detection (px)
|
|
1595
|
+
* @type {number}
|
|
1596
|
+
* @default 768
|
|
1597
|
+
*/
|
|
1598
|
+
"mobileBreakpoint"?: number;
|
|
1599
|
+
/**
|
|
1600
|
+
* Event fired when collapse mode changes
|
|
1601
|
+
*/
|
|
1602
|
+
"onCollapseModeChange"?: (event: SekiSidebarCustomEvent<CollapseModeChangeDetail>) => void;
|
|
1603
|
+
/**
|
|
1604
|
+
* Event fired when mobile state changes
|
|
1605
|
+
*/
|
|
1606
|
+
"onMobileStateChange"?: (event: SekiSidebarCustomEvent<MobileStateChangeDetail>) => void;
|
|
1607
|
+
/**
|
|
1608
|
+
* Callback fired when open state changes
|
|
1609
|
+
*/
|
|
1610
|
+
"onOpenChange"?: (isOpen: boolean) => void;
|
|
1611
|
+
/**
|
|
1612
|
+
* Event fired when sidebar opens/closes
|
|
1613
|
+
*/
|
|
1614
|
+
"onOpenChange"?: (event: SekiSidebarCustomEvent<OpenChangeDetail>) => void;
|
|
1615
|
+
/**
|
|
1616
|
+
* Event fired when variant changes
|
|
1617
|
+
*/
|
|
1618
|
+
"onVariantChange"?: (event: SekiSidebarCustomEvent<VariantChangeDetail>) => void;
|
|
1619
|
+
/**
|
|
1620
|
+
* Storage key for persisted state
|
|
1621
|
+
* @type {string}
|
|
1622
|
+
* @default 'seki-sidebar-state'
|
|
1623
|
+
*/
|
|
1624
|
+
"persistenceKey"?: string;
|
|
1625
|
+
/**
|
|
1626
|
+
* Persist state to localStorage
|
|
1627
|
+
* @type {boolean}
|
|
1628
|
+
* @default false
|
|
1629
|
+
*/
|
|
1630
|
+
"persistent"?: boolean;
|
|
1631
|
+
/**
|
|
1632
|
+
* Position: left or right side of viewport
|
|
1633
|
+
* @type {'left' | 'right'}
|
|
1634
|
+
* @default 'left'
|
|
1635
|
+
*/
|
|
1636
|
+
"side"?: SidebarProps['side'];
|
|
1637
|
+
/**
|
|
1638
|
+
* Layout variant: standard, floating (detached), or inset
|
|
1639
|
+
* @type {'sidebar' | 'floating' | 'inset'}
|
|
1640
|
+
* @default 'sidebar'
|
|
1641
|
+
*/
|
|
1642
|
+
"variant"?: SidebarProps['variant'];
|
|
1643
|
+
}
|
|
1644
|
+
interface SekiSidebarContent {
|
|
1645
|
+
}
|
|
1646
|
+
interface SekiSidebarFooter {
|
|
1647
|
+
}
|
|
1648
|
+
interface SekiSidebarGroup {
|
|
1649
|
+
/**
|
|
1650
|
+
* Optional action button configuration
|
|
1651
|
+
* @type {object}
|
|
1652
|
+
*/
|
|
1653
|
+
"action"?: SidebarGroupProps['action'];
|
|
1654
|
+
/**
|
|
1655
|
+
* Allow collapsing this group
|
|
1656
|
+
* @type {boolean}
|
|
1657
|
+
* @default false
|
|
1658
|
+
*/
|
|
1659
|
+
"collapsible"?: boolean;
|
|
1660
|
+
/**
|
|
1661
|
+
* Initial collapsed state
|
|
1662
|
+
* @type {boolean}
|
|
1663
|
+
* @default false
|
|
1664
|
+
*/
|
|
1665
|
+
"defaultCollapsed"?: boolean;
|
|
1666
|
+
/**
|
|
1667
|
+
* Event fired when collapsed state changes
|
|
1668
|
+
*/
|
|
1669
|
+
"onCollapsedChange"?: (event: SekiSidebarGroupCustomEvent<CollapsedChangeDetail>) => void;
|
|
1670
|
+
/**
|
|
1671
|
+
* Section header text (optional)
|
|
1672
|
+
* @type {string}
|
|
1673
|
+
*/
|
|
1674
|
+
"title"?: SidebarGroupProps['title'];
|
|
1675
|
+
}
|
|
1676
|
+
interface SekiSidebarHeader {
|
|
1677
|
+
}
|
|
1678
|
+
interface SekiSidebarMenu {
|
|
1679
|
+
}
|
|
1680
|
+
interface SekiSidebarMenuItem {
|
|
1681
|
+
/**
|
|
1682
|
+
* ARIA current value for active items
|
|
1683
|
+
* @type {string}
|
|
1684
|
+
* @default 'page'
|
|
1685
|
+
*/
|
|
1686
|
+
"ariaCurrentValue"?: SidebarMenuItemProps['ariaCurrentValue'];
|
|
1687
|
+
/**
|
|
1688
|
+
* Accessibility label override
|
|
1689
|
+
* @type {string}
|
|
1690
|
+
*/
|
|
1691
|
+
"ariaLabel"?: SidebarMenuItemProps['ariaLabel'];
|
|
1692
|
+
/**
|
|
1693
|
+
* Badge indicator for the item
|
|
1694
|
+
* @type {object}
|
|
1695
|
+
*/
|
|
1696
|
+
"badge"?: SidebarMenuItemProps['badge'];
|
|
1697
|
+
/**
|
|
1698
|
+
* Disable interaction
|
|
1699
|
+
* @type {boolean}
|
|
1700
|
+
* @default false
|
|
1701
|
+
*/
|
|
1702
|
+
"disabled"?: boolean;
|
|
1703
|
+
/**
|
|
1704
|
+
* Navigation URL (optional)
|
|
1705
|
+
* @type {string}
|
|
1706
|
+
*/
|
|
1707
|
+
"href"?: SidebarMenuItemProps['href'];
|
|
1708
|
+
/**
|
|
1709
|
+
* Highlight as current page
|
|
1710
|
+
* @type {boolean}
|
|
1711
|
+
* @default false
|
|
1712
|
+
*/
|
|
1713
|
+
"isActive"?: boolean;
|
|
1714
|
+
/**
|
|
1715
|
+
* Event fired on item click
|
|
1716
|
+
*/
|
|
1717
|
+
"onNavigate"?: (event: SekiSidebarMenuItemCustomEvent<NavigateDetail>) => void;
|
|
1718
|
+
/**
|
|
1719
|
+
* Link target: _blank, _self, etc.
|
|
1720
|
+
* @type {string}
|
|
1721
|
+
*/
|
|
1722
|
+
"target"?: SidebarMenuItemProps['target'];
|
|
1723
|
+
}
|
|
1724
|
+
interface SekiSidebarMenuSub {
|
|
1725
|
+
/**
|
|
1726
|
+
* Initial collapsed state
|
|
1727
|
+
* @type {boolean}
|
|
1728
|
+
* @default false
|
|
1729
|
+
*/
|
|
1730
|
+
"defaultCollapsed"?: boolean;
|
|
1731
|
+
/**
|
|
1732
|
+
* Label for the submenu (shown when expanded)
|
|
1733
|
+
* @type {string}
|
|
1734
|
+
*/
|
|
1735
|
+
"label"?: SidebarMenuSubProps['label'];
|
|
1736
|
+
/**
|
|
1737
|
+
* Event fired when collapsed state changes
|
|
1738
|
+
*/
|
|
1739
|
+
"onCollapsedChange"?: (event: SekiSidebarMenuSubCustomEvent<CollapsedChangeDetail>) => void;
|
|
1740
|
+
}
|
|
1741
|
+
interface SekiSidebarTrigger {
|
|
1742
|
+
/**
|
|
1743
|
+
* Accessibility label for the button
|
|
1744
|
+
* @type {string}
|
|
1745
|
+
* @default 'Toggle sidebar'
|
|
1746
|
+
*/
|
|
1747
|
+
"ariaLabel"?: SidebarTriggerProps['ariaLabel'];
|
|
1748
|
+
/**
|
|
1749
|
+
* Icon name or SVG path (optional)
|
|
1750
|
+
* @type {string}
|
|
1751
|
+
*/
|
|
1752
|
+
"icon"?: SidebarTriggerProps['icon'];
|
|
1753
|
+
}
|
|
941
1754
|
/**
|
|
942
1755
|
* @component seki-skeleton
|
|
943
1756
|
* @description A loading placeholder component that displays an animated skeleton while content is loading
|
|
@@ -1047,6 +1860,13 @@ declare namespace LocalJSX {
|
|
|
1047
1860
|
}
|
|
1048
1861
|
interface IntrinsicElements {
|
|
1049
1862
|
"seki-button": SekiButton;
|
|
1863
|
+
"seki-card": SekiCard;
|
|
1864
|
+
"seki-card-action": SekiCardAction;
|
|
1865
|
+
"seki-card-content": SekiCardContent;
|
|
1866
|
+
"seki-card-description": SekiCardDescription;
|
|
1867
|
+
"seki-card-footer": SekiCardFooter;
|
|
1868
|
+
"seki-card-header": SekiCardHeader;
|
|
1869
|
+
"seki-card-title": SekiCardTitle;
|
|
1050
1870
|
"seki-field": SekiField;
|
|
1051
1871
|
"seki-field-description": SekiFieldDescription;
|
|
1052
1872
|
"seki-field-error": SekiFieldError;
|
|
@@ -1060,6 +1880,15 @@ declare namespace LocalJSX {
|
|
|
1060
1880
|
"seki-select-group": SekiSelectGroup;
|
|
1061
1881
|
"seki-select-option": SekiSelectOption;
|
|
1062
1882
|
"seki-select-trigger": SekiSelectTrigger;
|
|
1883
|
+
"seki-sidebar": SekiSidebar;
|
|
1884
|
+
"seki-sidebar-content": SekiSidebarContent;
|
|
1885
|
+
"seki-sidebar-footer": SekiSidebarFooter;
|
|
1886
|
+
"seki-sidebar-group": SekiSidebarGroup;
|
|
1887
|
+
"seki-sidebar-header": SekiSidebarHeader;
|
|
1888
|
+
"seki-sidebar-menu": SekiSidebarMenu;
|
|
1889
|
+
"seki-sidebar-menu-item": SekiSidebarMenuItem;
|
|
1890
|
+
"seki-sidebar-menu-sub": SekiSidebarMenuSub;
|
|
1891
|
+
"seki-sidebar-trigger": SekiSidebarTrigger;
|
|
1063
1892
|
"seki-skeleton": SekiSkeleton;
|
|
1064
1893
|
"seki-switch": SekiSwitch;
|
|
1065
1894
|
"seki-tooltip": SekiTooltip;
|
|
@@ -1070,6 +1899,67 @@ declare module "@stencil/core" {
|
|
|
1070
1899
|
export namespace JSX {
|
|
1071
1900
|
interface IntrinsicElements {
|
|
1072
1901
|
"seki-button": LocalJSX.SekiButton & JSXBase.HTMLAttributes<HTMLSekiButtonElement>;
|
|
1902
|
+
/**
|
|
1903
|
+
* Flexible container for organizing related content with optional header,
|
|
1904
|
+
* content, and footer sections. Composition-based using subcomponents.
|
|
1905
|
+
* @example <seki-card>
|
|
1906
|
+
* <seki-card-header>
|
|
1907
|
+
* <seki-card-title>Title</seki-card-title>
|
|
1908
|
+
* </seki-card-header>
|
|
1909
|
+
* <seki-card-content>Content here</seki-card-content>
|
|
1910
|
+
* </seki-card>
|
|
1911
|
+
*/
|
|
1912
|
+
"seki-card": LocalJSX.SekiCard & JSXBase.HTMLAttributes<HTMLSekiCardElement>;
|
|
1913
|
+
/**
|
|
1914
|
+
* Optional action area within card header for buttons or menus.
|
|
1915
|
+
* Provides flex layout with automatic right-alignment.
|
|
1916
|
+
* @example <seki-card-action>
|
|
1917
|
+
* <button icon>⋯</button>
|
|
1918
|
+
* </seki-card-action>
|
|
1919
|
+
*/
|
|
1920
|
+
"seki-card-action": LocalJSX.SekiCardAction & JSXBase.HTMLAttributes<HTMLSekiCardActionElement>;
|
|
1921
|
+
/**
|
|
1922
|
+
* Main content body of the card.
|
|
1923
|
+
* Flexible container for any content (text, forms, lists, etc.)
|
|
1924
|
+
* @example <seki-card-content>
|
|
1925
|
+
* <input type="text" placeholder="Email" />
|
|
1926
|
+
* <input type="password" placeholder="Password" />
|
|
1927
|
+
* </seki-card-content>
|
|
1928
|
+
*/
|
|
1929
|
+
"seki-card-content": LocalJSX.SekiCardContent & JSXBase.HTMLAttributes<HTMLSekiCardContentElement>;
|
|
1930
|
+
/**
|
|
1931
|
+
* Secondary descriptive text below the card title.
|
|
1932
|
+
* Renders as paragraph with muted text color.
|
|
1933
|
+
* @example <seki-card-description>Description text</seki-card-description>
|
|
1934
|
+
*/
|
|
1935
|
+
"seki-card-description": LocalJSX.SekiCardDescription & JSXBase.HTMLAttributes<HTMLSekiCardDescriptionElement>;
|
|
1936
|
+
/**
|
|
1937
|
+
* Bottom section of a card for action buttons or footer content.
|
|
1938
|
+
* Provides flex layout with optional alignment control.
|
|
1939
|
+
* @example <seki-card-footer alignment="flex-end">
|
|
1940
|
+
* <button>Cancel</button>
|
|
1941
|
+
* <button primary>Submit</button>
|
|
1942
|
+
* </seki-card-footer>
|
|
1943
|
+
*/
|
|
1944
|
+
"seki-card-footer": LocalJSX.SekiCardFooter & JSXBase.HTMLAttributes<HTMLSekiCardFooterElement>;
|
|
1945
|
+
/**
|
|
1946
|
+
* Header section of a card, typically containing title and description.
|
|
1947
|
+
* Provides flex layout for arranging title + action elements.
|
|
1948
|
+
* @example <seki-card-header>
|
|
1949
|
+
* <seki-card-title>Title</seki-card-title>
|
|
1950
|
+
* <seki-card-description>Description</seki-card-description>
|
|
1951
|
+
* <seki-card-action>
|
|
1952
|
+
* <button>Action</button>
|
|
1953
|
+
* </seki-card-action>
|
|
1954
|
+
* </seki-card-header>
|
|
1955
|
+
*/
|
|
1956
|
+
"seki-card-header": LocalJSX.SekiCardHeader & JSXBase.HTMLAttributes<HTMLSekiCardHeaderElement>;
|
|
1957
|
+
/**
|
|
1958
|
+
* Primary heading text within a card header.
|
|
1959
|
+
* Renders as semantic heading (h1-h6) with typography tokens.
|
|
1960
|
+
* @example <seki-card-title level="h2">My Card Title</seki-card-title>
|
|
1961
|
+
*/
|
|
1962
|
+
"seki-card-title": LocalJSX.SekiCardTitle & JSXBase.HTMLAttributes<HTMLSekiCardTitleElement>;
|
|
1073
1963
|
"seki-field": LocalJSX.SekiField & JSXBase.HTMLAttributes<HTMLSekiFieldElement>;
|
|
1074
1964
|
"seki-field-description": LocalJSX.SekiFieldDescription & JSXBase.HTMLAttributes<HTMLSekiFieldDescriptionElement>;
|
|
1075
1965
|
"seki-field-error": LocalJSX.SekiFieldError & JSXBase.HTMLAttributes<HTMLSekiFieldErrorElement>;
|
|
@@ -1083,6 +1973,15 @@ declare module "@stencil/core" {
|
|
|
1083
1973
|
"seki-select-group": LocalJSX.SekiSelectGroup & JSXBase.HTMLAttributes<HTMLSekiSelectGroupElement>;
|
|
1084
1974
|
"seki-select-option": LocalJSX.SekiSelectOption & JSXBase.HTMLAttributes<HTMLSekiSelectOptionElement>;
|
|
1085
1975
|
"seki-select-trigger": LocalJSX.SekiSelectTrigger & JSXBase.HTMLAttributes<HTMLSekiSelectTriggerElement>;
|
|
1976
|
+
"seki-sidebar": LocalJSX.SekiSidebar & JSXBase.HTMLAttributes<HTMLSekiSidebarElement>;
|
|
1977
|
+
"seki-sidebar-content": LocalJSX.SekiSidebarContent & JSXBase.HTMLAttributes<HTMLSekiSidebarContentElement>;
|
|
1978
|
+
"seki-sidebar-footer": LocalJSX.SekiSidebarFooter & JSXBase.HTMLAttributes<HTMLSekiSidebarFooterElement>;
|
|
1979
|
+
"seki-sidebar-group": LocalJSX.SekiSidebarGroup & JSXBase.HTMLAttributes<HTMLSekiSidebarGroupElement>;
|
|
1980
|
+
"seki-sidebar-header": LocalJSX.SekiSidebarHeader & JSXBase.HTMLAttributes<HTMLSekiSidebarHeaderElement>;
|
|
1981
|
+
"seki-sidebar-menu": LocalJSX.SekiSidebarMenu & JSXBase.HTMLAttributes<HTMLSekiSidebarMenuElement>;
|
|
1982
|
+
"seki-sidebar-menu-item": LocalJSX.SekiSidebarMenuItem & JSXBase.HTMLAttributes<HTMLSekiSidebarMenuItemElement>;
|
|
1983
|
+
"seki-sidebar-menu-sub": LocalJSX.SekiSidebarMenuSub & JSXBase.HTMLAttributes<HTMLSekiSidebarMenuSubElement>;
|
|
1984
|
+
"seki-sidebar-trigger": LocalJSX.SekiSidebarTrigger & JSXBase.HTMLAttributes<HTMLSekiSidebarTriggerElement>;
|
|
1086
1985
|
/**
|
|
1087
1986
|
* @component seki-skeleton
|
|
1088
1987
|
* @description A loading placeholder component that displays an animated skeleton while content is loading
|