le-kit 0.1.7 → 0.1.8
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/custom-elements.json +877 -877
- package/dist/cjs/index-D7B9TPh8.js.map +1 -1
- package/dist/collection/components/le-popup/le-popup.js +7 -7
- package/dist/components/index.js.map +1 -1
- package/dist/core/cjs/index-D7B9TPh8.js +1835 -0
- package/dist/core/cjs/index-D7B9TPh8.js.map +1 -0
- package/dist/core/cjs/index.cjs.js +119 -0
- package/dist/core/cjs/index.cjs.js.map +1 -0
- package/dist/core/cjs/le-box.cjs.entry.js +184 -0
- package/dist/core/cjs/le-box.entry.cjs.js.map +1 -0
- package/dist/core/cjs/le-button.cjs.entry.js +92 -0
- package/dist/core/cjs/le-button.entry.cjs.js.map +1 -0
- package/dist/core/cjs/le-card.cjs.entry.js +29 -0
- package/dist/core/cjs/le-card.entry.cjs.js.map +1 -0
- package/dist/core/cjs/le-checkbox.cjs.entry.js +61 -0
- package/dist/core/cjs/le-checkbox.entry.cjs.js.map +1 -0
- package/dist/core/cjs/le-kit.cjs.js +25 -0
- package/dist/core/cjs/le-kit.cjs.js.map +1 -0
- package/dist/core/cjs/le-number-input.cjs.entry.js +202 -0
- package/dist/core/cjs/le-number-input.entry.cjs.js.map +1 -0
- package/dist/core/cjs/le-popover.cjs.entry.js +348 -0
- package/dist/core/cjs/le-popover.entry.cjs.js.map +1 -0
- package/dist/core/cjs/le-popup.cjs.entry.js +212 -0
- package/dist/core/cjs/le-popup.entry.cjs.js.map +1 -0
- package/dist/core/cjs/le-round-progress.cjs.entry.js +106 -0
- package/dist/core/cjs/le-round-progress.entry.cjs.js.map +1 -0
- package/dist/core/cjs/le-stack.cjs.entry.js +135 -0
- package/dist/core/cjs/le-stack.entry.cjs.js.map +1 -0
- package/dist/core/cjs/le-string-input.cjs.entry.js +95 -0
- package/dist/core/cjs/le-string-input.entry.cjs.js.map +1 -0
- package/dist/core/cjs/le-text.cjs.entry.js +335 -0
- package/dist/core/cjs/le-text.entry.cjs.js.map +1 -0
- package/dist/core/cjs/le-turntable.cjs.entry.js +139 -0
- package/dist/core/cjs/le-turntable.entry.cjs.js.map +1 -0
- package/dist/core/cjs/loader.cjs.js +13 -0
- package/dist/core/cjs/loader.cjs.js.map +1 -0
- package/dist/core/cjs/utils-DrsoID-a.js +152 -0
- package/dist/core/cjs/utils-DrsoID-a.js.map +1 -0
- package/dist/core/collection/collection-manifest.json +24 -0
- package/dist/core/collection/components/le-box/le-box.default.css +37 -0
- package/dist/core/collection/components/le-box/le-box.js +614 -0
- package/dist/core/collection/components/le-box/le-box.js.map +1 -0
- package/dist/core/collection/components/le-button/le-button.default.css +263 -0
- package/dist/core/collection/components/le-button/le-button.js +368 -0
- package/dist/core/collection/components/le-button/le-button.js.map +1 -0
- package/dist/core/collection/components/le-card/le-card.default.css +74 -0
- package/dist/core/collection/components/le-card/le-card.js +102 -0
- package/dist/core/collection/components/le-card/le-card.js.map +1 -0
- package/dist/core/collection/components/le-checkbox/le-checkbox.css +93 -0
- package/dist/core/collection/components/le-checkbox/le-checkbox.js +192 -0
- package/dist/core/collection/components/le-checkbox/le-checkbox.js.map +1 -0
- package/dist/core/collection/components/le-number-input/le-number-input.css +135 -0
- package/dist/core/collection/components/le-number-input/le-number-input.js +515 -0
- package/dist/core/collection/components/le-number-input/le-number-input.js.map +1 -0
- package/dist/core/collection/components/le-popover/le-popover.css +143 -0
- package/dist/core/collection/components/le-popover/le-popover.js +693 -0
- package/dist/core/collection/components/le-popover/le-popover.js.map +1 -0
- package/dist/core/collection/components/le-popup/le-popup.api.js +101 -0
- package/dist/core/collection/components/le-popup/le-popup.api.js.map +1 -0
- package/dist/core/collection/components/le-popup/le-popup.css +222 -0
- package/dist/core/collection/components/le-popup/le-popup.js +596 -0
- package/dist/core/collection/components/le-popup/le-popup.js.map +1 -0
- package/dist/core/collection/components/le-round-progress/le-round-progress.css +34 -0
- package/dist/core/collection/components/le-round-progress/le-round-progress.js +184 -0
- package/dist/core/collection/components/le-round-progress/le-round-progress.js.map +1 -0
- package/dist/core/collection/components/le-stack/le-stack.default.css +37 -0
- package/dist/core/collection/components/le-stack/le-stack.js +389 -0
- package/dist/core/collection/components/le-stack/le-stack.js.map +1 -0
- package/dist/core/collection/components/le-string-input/le-string-input.css +83 -0
- package/dist/core/collection/components/le-string-input/le-string-input.js +359 -0
- package/dist/core/collection/components/le-string-input/le-string-input.js.map +1 -0
- package/dist/core/collection/components/le-text/le-text.default.css +169 -0
- package/dist/core/collection/components/le-text/le-text.js +475 -0
- package/dist/core/collection/components/le-text/le-text.js.map +1 -0
- package/dist/core/collection/components/le-turntable/le-turntable.css +10 -0
- package/dist/core/collection/components/le-turntable/le-turntable.js +210 -0
- package/dist/core/collection/components/le-turntable/le-turntable.js.map +1 -0
- package/dist/core/collection/global/app.js +167 -0
- package/dist/core/collection/global/app.js.map +1 -0
- package/dist/core/collection/index.js +15 -0
- package/dist/core/collection/index.js.map +1 -0
- package/dist/core/collection/types/blocks.js +115 -0
- package/dist/core/collection/types/blocks.js.map +1 -0
- package/dist/core/collection/types/options.js +2 -0
- package/dist/core/collection/types/options.js.map +1 -0
- package/dist/core/collection/utils/utils.js +141 -0
- package/dist/core/collection/utils/utils.js.map +1 -0
- package/dist/core/esm/index-PS-3Rz-c.js +1818 -0
- package/dist/core/esm/index-PS-3Rz-c.js.map +1 -0
- package/dist/core/esm/index.js +106 -0
- package/dist/core/esm/index.js.map +1 -0
- package/dist/core/esm/le-box.entry.js +182 -0
- package/dist/core/esm/le-box.entry.js.map +1 -0
- package/dist/core/esm/le-button.entry.js +90 -0
- package/dist/core/esm/le-button.entry.js.map +1 -0
- package/dist/core/esm/le-card.entry.js +27 -0
- package/dist/core/esm/le-card.entry.js.map +1 -0
- package/dist/core/esm/le-checkbox.entry.js +59 -0
- package/dist/core/esm/le-checkbox.entry.js.map +1 -0
- package/dist/core/esm/le-kit.js +21 -0
- package/dist/core/esm/le-kit.js.map +1 -0
- package/dist/core/esm/le-number-input.entry.js +200 -0
- package/dist/core/esm/le-number-input.entry.js.map +1 -0
- package/dist/core/esm/le-popover.entry.js +346 -0
- package/dist/core/esm/le-popover.entry.js.map +1 -0
- package/dist/core/esm/le-popup.entry.js +210 -0
- package/dist/core/esm/le-popup.entry.js.map +1 -0
- package/dist/core/esm/le-round-progress.entry.js +104 -0
- package/dist/core/esm/le-round-progress.entry.js.map +1 -0
- package/dist/core/esm/le-stack.entry.js +133 -0
- package/dist/core/esm/le-stack.entry.js.map +1 -0
- package/dist/core/esm/le-string-input.entry.js +93 -0
- package/dist/core/esm/le-string-input.entry.js.map +1 -0
- package/dist/core/esm/le-text.entry.js +333 -0
- package/dist/core/esm/le-text.entry.js.map +1 -0
- package/dist/core/esm/le-turntable.entry.js +137 -0
- package/dist/core/esm/le-turntable.entry.js.map +1 -0
- package/dist/core/esm/loader.js +11 -0
- package/dist/core/esm/loader.js.map +1 -0
- package/dist/core/esm/utils-lgjSfQP0.js +146 -0
- package/dist/core/esm/utils-lgjSfQP0.js.map +1 -0
- package/dist/core/index.cjs.js +1 -0
- package/dist/core/index.js +1 -0
- package/dist/core/le-kit/index.esm.js +2 -0
- package/dist/core/le-kit/index.esm.js.map +1 -0
- package/dist/core/le-kit/le-box.entry.esm.js.map +1 -0
- package/dist/core/le-kit/le-button.entry.esm.js.map +1 -0
- package/dist/core/le-kit/le-card.entry.esm.js.map +1 -0
- package/dist/core/le-kit/le-checkbox.entry.esm.js.map +1 -0
- package/dist/core/le-kit/le-kit.css +1 -0
- package/dist/core/le-kit/le-kit.esm.js +2 -0
- package/dist/core/le-kit/le-kit.esm.js.map +1 -0
- package/dist/core/le-kit/le-number-input.entry.esm.js.map +1 -0
- package/dist/core/le-kit/le-popover.entry.esm.js.map +1 -0
- package/dist/core/le-kit/le-popup.entry.esm.js.map +1 -0
- package/dist/core/le-kit/le-round-progress.entry.esm.js.map +1 -0
- package/dist/core/le-kit/le-stack.entry.esm.js.map +1 -0
- package/dist/core/le-kit/le-string-input.entry.esm.js.map +1 -0
- package/dist/core/le-kit/le-text.entry.esm.js.map +1 -0
- package/dist/core/le-kit/le-turntable.entry.esm.js.map +1 -0
- package/dist/core/le-kit/loader.esm.js.map +1 -0
- package/dist/core/le-kit/p-1c5262eb.entry.js +2 -0
- package/dist/core/le-kit/p-1c5262eb.entry.js.map +1 -0
- package/dist/core/le-kit/p-32c08678.entry.js +2 -0
- package/dist/core/le-kit/p-32c08678.entry.js.map +1 -0
- package/dist/core/le-kit/p-38e7ec05.entry.js +2 -0
- package/dist/core/le-kit/p-38e7ec05.entry.js.map +1 -0
- package/dist/core/le-kit/p-4bf51acc.entry.js +2 -0
- package/dist/core/le-kit/p-4bf51acc.entry.js.map +1 -0
- package/dist/core/le-kit/p-86961f34.entry.js +2 -0
- package/dist/core/le-kit/p-86961f34.entry.js.map +1 -0
- package/dist/core/le-kit/p-9ee92c29.entry.js +2 -0
- package/dist/core/le-kit/p-9ee92c29.entry.js.map +1 -0
- package/dist/core/le-kit/p-DN2JVY-7.js +2 -0
- package/dist/core/le-kit/p-DN2JVY-7.js.map +1 -0
- package/dist/core/le-kit/p-PS-3Rz-c.js +3 -0
- package/dist/core/le-kit/p-PS-3Rz-c.js.map +1 -0
- package/dist/core/le-kit/p-a07048f8.entry.js +2 -0
- package/dist/core/le-kit/p-a07048f8.entry.js.map +1 -0
- package/dist/core/le-kit/p-a24b042d.entry.js +2 -0
- package/dist/core/le-kit/p-a24b042d.entry.js.map +1 -0
- package/dist/core/le-kit/p-bbc9e13e.entry.js +2 -0
- package/dist/core/le-kit/p-bbc9e13e.entry.js.map +1 -0
- package/dist/core/le-kit/p-c4223c60.entry.js +2 -0
- package/dist/core/le-kit/p-c4223c60.entry.js.map +1 -0
- package/dist/core/le-kit/p-dcf1343d.entry.js +2 -0
- package/dist/core/le-kit/p-dcf1343d.entry.js.map +1 -0
- package/dist/core/le-kit/p-fb4e68e0.entry.js +2 -0
- package/dist/core/le-kit/p-fb4e68e0.entry.js.map +1 -0
- package/dist/core/loader/cdn.js +1 -0
- package/dist/core/loader/index.cjs.js +1 -0
- package/dist/core/loader/index.d.ts +24 -0
- package/dist/core/loader/index.es2017.js +1 -0
- package/dist/core/loader/index.js +2 -0
- package/dist/core/types/components/le-box/le-box.d.ts +111 -0
- package/dist/core/types/components/le-button/le-button.d.ts +78 -0
- package/dist/core/types/components/le-card/le-card.d.ts +37 -0
- package/dist/core/types/components/le-checkbox/le-checkbox.d.ts +46 -0
- package/dist/core/types/components/le-number-input/le-number-input.d.ts +106 -0
- package/dist/core/types/components/le-popover/le-popover.d.ts +109 -0
- package/dist/core/types/components/le-popup/le-popup.api.d.ts +73 -0
- package/dist/core/types/components/le-popup/le-popup.d.ts +122 -0
- package/dist/core/types/components/le-round-progress/le-round-progress.d.ts +37 -0
- package/dist/core/types/components/le-stack/le-stack.d.ts +73 -0
- package/dist/core/types/components/le-string-input/le-string-input.d.ts +83 -0
- package/dist/core/types/components/le-text/le-text.d.ts +141 -0
- package/dist/core/types/components/le-turntable/le-turntable.d.ts +55 -0
- package/dist/core/types/components.d.ts +1752 -0
- package/dist/core/types/global/app.d.ts +73 -0
- package/dist/core/types/index.d.ts +15 -0
- package/dist/core/types/stencil-public-runtime.d.ts +1756 -0
- package/dist/core/types/types/blocks.d.ts +136 -0
- package/dist/core/types/types/options.d.ts +124 -0
- package/dist/core/types/utils/utils.d.ts +54 -0
- package/dist/docs.json +8 -8
- package/dist/esm/index-PS-3Rz-c.js.map +1 -1
- package/dist/le-kit/p-PS-3Rz-c.js.map +1 -1
- package/package.json +19 -2
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Block types for the rich text editor.
|
|
3
|
+
*
|
|
4
|
+
* Used by: le-rich-text-editor, le-editor-block, le-block-menu
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Available block types for the editor.
|
|
8
|
+
* Start with essential types, expand in future versions.
|
|
9
|
+
*/
|
|
10
|
+
export type BlockType = 'paragraph' | 'heading1' | 'heading2' | 'heading3' | 'bullet-list' | 'numbered-list' | 'quote' | 'code' | 'divider';
|
|
11
|
+
/**
|
|
12
|
+
* A single block in the editor.
|
|
13
|
+
*
|
|
14
|
+
* @example Paragraph block
|
|
15
|
+
* ```typescript
|
|
16
|
+
* const block: LeBlock = {
|
|
17
|
+
* id: 'block-1',
|
|
18
|
+
* type: 'paragraph',
|
|
19
|
+
* content: 'Hello <strong>world</strong>!'
|
|
20
|
+
* };
|
|
21
|
+
* ```
|
|
22
|
+
*
|
|
23
|
+
* @example Code block with language
|
|
24
|
+
* ```typescript
|
|
25
|
+
* const block: LeBlock = {
|
|
26
|
+
* id: 'block-2',
|
|
27
|
+
* type: 'code',
|
|
28
|
+
* content: 'const x = 1;',
|
|
29
|
+
* attributes: { language: 'typescript' }
|
|
30
|
+
* };
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
export interface LeBlock {
|
|
34
|
+
/**
|
|
35
|
+
* Unique identifier for the block.
|
|
36
|
+
*/
|
|
37
|
+
id: string;
|
|
38
|
+
/**
|
|
39
|
+
* The type of block (paragraph, heading, list, etc.)
|
|
40
|
+
*/
|
|
41
|
+
type: BlockType;
|
|
42
|
+
/**
|
|
43
|
+
* HTML content of the block.
|
|
44
|
+
* For most blocks, this is the inner HTML.
|
|
45
|
+
* For divider, this is empty.
|
|
46
|
+
*/
|
|
47
|
+
content: string;
|
|
48
|
+
/**
|
|
49
|
+
* Block-specific attributes.
|
|
50
|
+
*/
|
|
51
|
+
attributes?: LeBlockAttributes;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Block-specific attributes
|
|
55
|
+
*/
|
|
56
|
+
export interface LeBlockAttributes {
|
|
57
|
+
/**
|
|
58
|
+
* Programming language for code blocks.
|
|
59
|
+
*/
|
|
60
|
+
language?: string;
|
|
61
|
+
/**
|
|
62
|
+
* Placeholder text shown when block is empty.
|
|
63
|
+
*/
|
|
64
|
+
placeholder?: string;
|
|
65
|
+
/**
|
|
66
|
+
* Custom CSS class for the block.
|
|
67
|
+
*/
|
|
68
|
+
className?: string;
|
|
69
|
+
/**
|
|
70
|
+
* Additional custom attributes.
|
|
71
|
+
*/
|
|
72
|
+
[key: string]: unknown;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Configuration for a block type.
|
|
76
|
+
* Used by the block registry to render and manage blocks.
|
|
77
|
+
*/
|
|
78
|
+
export interface BlockTypeConfig {
|
|
79
|
+
/**
|
|
80
|
+
* Block type identifier.
|
|
81
|
+
*/
|
|
82
|
+
type: BlockType;
|
|
83
|
+
/**
|
|
84
|
+
* Display label for the block type (shown in block menu).
|
|
85
|
+
*/
|
|
86
|
+
label: string;
|
|
87
|
+
/**
|
|
88
|
+
* Icon for the block type (emoji or icon name).
|
|
89
|
+
*/
|
|
90
|
+
icon?: string;
|
|
91
|
+
/**
|
|
92
|
+
* HTML tag to render for this block type.
|
|
93
|
+
*/
|
|
94
|
+
tag: string;
|
|
95
|
+
/**
|
|
96
|
+
* CSS class applied to the block element.
|
|
97
|
+
*/
|
|
98
|
+
className?: string;
|
|
99
|
+
/**
|
|
100
|
+
* Placeholder text shown when block is empty.
|
|
101
|
+
*/
|
|
102
|
+
placeholder?: string;
|
|
103
|
+
/**
|
|
104
|
+
* Whether the block content is editable.
|
|
105
|
+
* Set to false for blocks like divider.
|
|
106
|
+
*/
|
|
107
|
+
editable?: boolean;
|
|
108
|
+
/**
|
|
109
|
+
* Description shown in block menu.
|
|
110
|
+
*/
|
|
111
|
+
description?: string;
|
|
112
|
+
/**
|
|
113
|
+
* Keyboard shortcut hint (e.g., "# " for heading).
|
|
114
|
+
*/
|
|
115
|
+
shortcut?: string;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Default block type configurations.
|
|
119
|
+
*/
|
|
120
|
+
export declare const DEFAULT_BLOCK_CONFIGS: BlockTypeConfig[];
|
|
121
|
+
/**
|
|
122
|
+
* Event detail for block changes
|
|
123
|
+
*/
|
|
124
|
+
export interface LeBlockChangeDetail {
|
|
125
|
+
blocks: LeBlock[];
|
|
126
|
+
changedBlock?: LeBlock;
|
|
127
|
+
action: 'add' | 'remove' | 'update' | 'move';
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Generate a unique block ID
|
|
131
|
+
*/
|
|
132
|
+
export declare function generateBlockId(): string;
|
|
133
|
+
/**
|
|
134
|
+
* Create a new block with default values
|
|
135
|
+
*/
|
|
136
|
+
export declare function createBlock(type: BlockType, content?: string): LeBlock;
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Universal option interface used across Le-Kit components.
|
|
3
|
+
*
|
|
4
|
+
* Used by: le-select, le-combobox, le-multiselect, le-tabs,
|
|
5
|
+
* le-block-menu, le-emoji-picker, and any menu/list components.
|
|
6
|
+
*
|
|
7
|
+
* @example Basic option
|
|
8
|
+
* ```typescript
|
|
9
|
+
* const option: LeOption = {
|
|
10
|
+
* label: 'Option 1',
|
|
11
|
+
* value: 'opt1'
|
|
12
|
+
* };
|
|
13
|
+
* ```
|
|
14
|
+
*
|
|
15
|
+
* @example With icons and description
|
|
16
|
+
* ```typescript
|
|
17
|
+
* const option: LeOption = {
|
|
18
|
+
* label: 'Settings',
|
|
19
|
+
* value: 'settings',
|
|
20
|
+
* iconStart: '⚙️',
|
|
21
|
+
* description: 'Configure application settings'
|
|
22
|
+
* };
|
|
23
|
+
* ```
|
|
24
|
+
*
|
|
25
|
+
* @example Grouped options
|
|
26
|
+
* ```typescript
|
|
27
|
+
* const options: LeOption[] = [
|
|
28
|
+
* { label: 'Apple', value: 'apple', group: 'Fruits' },
|
|
29
|
+
* { label: 'Banana', value: 'banana', group: 'Fruits' },
|
|
30
|
+
* { label: 'Carrot', value: 'carrot', group: 'Vegetables' },
|
|
31
|
+
* ];
|
|
32
|
+
* ```
|
|
33
|
+
*
|
|
34
|
+
* @example Nested options (for submenus)
|
|
35
|
+
* ```typescript
|
|
36
|
+
* const option: LeOption = {
|
|
37
|
+
* label: 'More actions',
|
|
38
|
+
* iconEnd: '▶',
|
|
39
|
+
* children: [
|
|
40
|
+
* { label: 'Duplicate', value: 'duplicate' },
|
|
41
|
+
* { label: 'Archive', value: 'archive' },
|
|
42
|
+
* ]
|
|
43
|
+
* };
|
|
44
|
+
* ```
|
|
45
|
+
*/
|
|
46
|
+
export interface LeOption {
|
|
47
|
+
/**
|
|
48
|
+
* Unique identifier for the option.
|
|
49
|
+
* Auto-generated if not provided.
|
|
50
|
+
*/
|
|
51
|
+
id?: string;
|
|
52
|
+
/**
|
|
53
|
+
* Display text for the option (required).
|
|
54
|
+
*/
|
|
55
|
+
label: string;
|
|
56
|
+
/**
|
|
57
|
+
* Selection value. Defaults to label if not provided.
|
|
58
|
+
*/
|
|
59
|
+
value?: string | number;
|
|
60
|
+
/**
|
|
61
|
+
* Whether the option is disabled and cannot be selected.
|
|
62
|
+
*/
|
|
63
|
+
disabled?: boolean;
|
|
64
|
+
/**
|
|
65
|
+
* Whether the option is currently selected.
|
|
66
|
+
* Used for multiselect and menu components.
|
|
67
|
+
*/
|
|
68
|
+
selected?: boolean;
|
|
69
|
+
/**
|
|
70
|
+
* Whether the option is checked.
|
|
71
|
+
* Used for checkbox/radio menu items.
|
|
72
|
+
*/
|
|
73
|
+
checked?: boolean;
|
|
74
|
+
/**
|
|
75
|
+
* Icon displayed at the start (left) of the option.
|
|
76
|
+
* Can be a URL, icon name, or emoji character.
|
|
77
|
+
*/
|
|
78
|
+
iconStart?: string;
|
|
79
|
+
/**
|
|
80
|
+
* Icon displayed at the end (right) of the option.
|
|
81
|
+
* Can be a URL, icon name, or emoji character.
|
|
82
|
+
*/
|
|
83
|
+
iconEnd?: string;
|
|
84
|
+
/**
|
|
85
|
+
* Secondary description text displayed below the label.
|
|
86
|
+
*/
|
|
87
|
+
description?: string;
|
|
88
|
+
/**
|
|
89
|
+
* Nested child options for hierarchical menus or submenus.
|
|
90
|
+
*/
|
|
91
|
+
children?: LeOption[];
|
|
92
|
+
/**
|
|
93
|
+
* Group label for categorizing options in flat lists.
|
|
94
|
+
* Options with the same group value are visually grouped together.
|
|
95
|
+
*/
|
|
96
|
+
group?: string;
|
|
97
|
+
/**
|
|
98
|
+
* Add a visual separator line before or after this option.
|
|
99
|
+
*/
|
|
100
|
+
separator?: 'before' | 'after';
|
|
101
|
+
/**
|
|
102
|
+
* Custom data passthrough for application-specific needs.
|
|
103
|
+
* This data is included in selection events.
|
|
104
|
+
*/
|
|
105
|
+
data?: Record<string, unknown>;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Helper type for option value
|
|
109
|
+
*/
|
|
110
|
+
export type LeOptionValue = string | number;
|
|
111
|
+
/**
|
|
112
|
+
* Event detail for option selection events
|
|
113
|
+
*/
|
|
114
|
+
export interface LeOptionSelectDetail {
|
|
115
|
+
value: LeOptionValue;
|
|
116
|
+
option: LeOption;
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Event detail for multi-option selection events
|
|
120
|
+
*/
|
|
121
|
+
export interface LeMultiOptionSelectDetail {
|
|
122
|
+
values: LeOptionValue[];
|
|
123
|
+
options: LeOption[];
|
|
124
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Utility functions for le-kit components
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Generates a unique ID for component instances
|
|
6
|
+
*/
|
|
7
|
+
export declare function generateId(prefix?: string): string;
|
|
8
|
+
/**
|
|
9
|
+
* Parses a comma-separated string into an array
|
|
10
|
+
*/
|
|
11
|
+
export declare function parseCommaSeparated(value: string | undefined): string[];
|
|
12
|
+
/**
|
|
13
|
+
* Checks if a slot has content
|
|
14
|
+
*/
|
|
15
|
+
export declare function slotHasContent(el: HTMLElement, slotName?: string): boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Sets up a MutationObserver to track mode changes on ancestor elements.
|
|
18
|
+
* Returns a cleanup function to disconnect the observer.
|
|
19
|
+
*
|
|
20
|
+
* If the element or any ancestor has an explicit `mode` attribute, that creates
|
|
21
|
+
* a "mode boundary" - the mode is determined from that point, not from further up.
|
|
22
|
+
* This allows components like le-popover to force default mode for their children.
|
|
23
|
+
*
|
|
24
|
+
* @param el - The component's host element
|
|
25
|
+
* @param callback - Function to call when mode changes, receives the new mode
|
|
26
|
+
* @returns Cleanup function to disconnect the observer
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```tsx
|
|
30
|
+
* export class MyComponent {
|
|
31
|
+
* @Element() el: HTMLElement;
|
|
32
|
+
* @State() adminMode: boolean = false;
|
|
33
|
+
* private disconnectModeObserver?: () => void;
|
|
34
|
+
*
|
|
35
|
+
* connectedCallback() {
|
|
36
|
+
* this.disconnectModeObserver = observeModeChanges(this.el, (mode) => {
|
|
37
|
+
* this.adminMode = mode === 'admin';
|
|
38
|
+
* });
|
|
39
|
+
* }
|
|
40
|
+
*
|
|
41
|
+
* disconnectedCallback() {
|
|
42
|
+
* this.disconnectModeObserver?.();
|
|
43
|
+
* }
|
|
44
|
+
* }
|
|
45
|
+
* ```
|
|
46
|
+
*/
|
|
47
|
+
export declare function observeModeChanges(el: HTMLElement, callback: (mode: string) => void): () => void;
|
|
48
|
+
/**
|
|
49
|
+
* Combines multiple class names into a single string, filtering out falsy values.
|
|
50
|
+
*
|
|
51
|
+
* @param classes - arguments of class names, undefined, arrays, objects with boolean values and nested combinations of these
|
|
52
|
+
* @returns Combined class names string
|
|
53
|
+
*/
|
|
54
|
+
export declare function classnames(...classes: any[]): string;
|
package/dist/docs.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"timestamp": "2025-12-
|
|
2
|
+
"timestamp": "2025-12-15T09:19:01",
|
|
3
3
|
"compiler": {
|
|
4
4
|
"name": "@stencil/core",
|
|
5
5
|
"version": "4.38.3",
|
|
@@ -3076,7 +3076,7 @@
|
|
|
3076
3076
|
"references": {
|
|
3077
3077
|
"PopupPosition": {
|
|
3078
3078
|
"location": "local",
|
|
3079
|
-
"path": "/Users/
|
|
3079
|
+
"path": "/Users/andreylechev/Projects/le-kit/src/components/le-popup/le-popup.tsx",
|
|
3080
3080
|
"id": "src/components/le-popup/le-popup.tsx::PopupPosition"
|
|
3081
3081
|
}
|
|
3082
3082
|
}
|
|
@@ -3136,7 +3136,7 @@
|
|
|
3136
3136
|
"references": {
|
|
3137
3137
|
"PopupType": {
|
|
3138
3138
|
"location": "local",
|
|
3139
|
-
"path": "/Users/
|
|
3139
|
+
"path": "/Users/andreylechev/Projects/le-kit/src/components/le-popup/le-popup.tsx",
|
|
3140
3140
|
"id": "src/components/le-popup/le-popup.tsx::PopupType"
|
|
3141
3141
|
}
|
|
3142
3142
|
}
|
|
@@ -3199,7 +3199,7 @@
|
|
|
3199
3199
|
},
|
|
3200
3200
|
"PopupResult": {
|
|
3201
3201
|
"location": "local",
|
|
3202
|
-
"path": "/Users/
|
|
3202
|
+
"path": "/Users/andreylechev/Projects/le-kit/src/components/le-popup/le-popup.tsx",
|
|
3203
3203
|
"id": "src/components/le-popup/le-popup.tsx::PopupResult"
|
|
3204
3204
|
}
|
|
3205
3205
|
},
|
|
@@ -3232,7 +3232,7 @@
|
|
|
3232
3232
|
},
|
|
3233
3233
|
"PopupResult": {
|
|
3234
3234
|
"location": "local",
|
|
3235
|
-
"path": "/Users/
|
|
3235
|
+
"path": "/Users/andreylechev/Projects/le-kit/src/components/le-popup/le-popup.tsx",
|
|
3236
3236
|
"id": "src/components/le-popup/le-popup.tsx::PopupResult"
|
|
3237
3237
|
}
|
|
3238
3238
|
},
|
|
@@ -3255,7 +3255,7 @@
|
|
|
3255
3255
|
"references": {
|
|
3256
3256
|
"PopupResult": {
|
|
3257
3257
|
"location": "local",
|
|
3258
|
-
"path": "/Users/
|
|
3258
|
+
"path": "/Users/andreylechev/Projects/le-kit/src/components/le-popup/le-popup.tsx",
|
|
3259
3259
|
"id": "src/components/le-popup/le-popup.tsx::PopupResult"
|
|
3260
3260
|
}
|
|
3261
3261
|
}
|
|
@@ -3275,7 +3275,7 @@
|
|
|
3275
3275
|
"references": {
|
|
3276
3276
|
"PopupResult": {
|
|
3277
3277
|
"location": "local",
|
|
3278
|
-
"path": "/Users/
|
|
3278
|
+
"path": "/Users/andreylechev/Projects/le-kit/src/components/le-popup/le-popup.tsx",
|
|
3279
3279
|
"id": "src/components/le-popup/le-popup.tsx::PopupResult"
|
|
3280
3280
|
}
|
|
3281
3281
|
}
|
|
@@ -3295,7 +3295,7 @@
|
|
|
3295
3295
|
"references": {
|
|
3296
3296
|
"PopupResult": {
|
|
3297
3297
|
"location": "local",
|
|
3298
|
-
"path": "/Users/
|
|
3298
|
+
"path": "/Users/andreylechev/Projects/le-kit/src/components/le-popup/le-popup.tsx",
|
|
3299
3299
|
"id": "src/components/le-popup/le-popup.tsx::PopupResult"
|
|
3300
3300
|
}
|
|
3301
3301
|
}
|