@easy-editor/setters 0.0.2
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/LICENSE +9 -0
- package/README.md +256 -0
- package/dist/basic/color-setter/index.d.ts +6 -0
- package/dist/basic/node-id-setter/index.d.ts +5 -0
- package/dist/basic/number-setter/index.d.ts +7 -0
- package/dist/basic/rect-setter/index.d.ts +5 -0
- package/dist/basic/string-setter/index.d.ts +7 -0
- package/dist/basic/switch-setter/index.d.ts +5 -0
- package/dist/basic/upload-setter/index.d.ts +17 -0
- package/dist/components/ui/button.d.ts +13 -0
- package/dist/components/ui/collapsible.d.ts +5 -0
- package/dist/components/ui/dropdown-menu.d.ts +25 -0
- package/dist/components/ui/input.d.ts +3 -0
- package/dist/components/ui/label.d.ts +4 -0
- package/dist/components/ui/popover.d.ts +7 -0
- package/dist/components/ui/switch.d.ts +4 -0
- package/dist/components/ui/tabs.d.ts +7 -0
- package/dist/custom-field-item.d.ts +3 -0
- package/dist/group/collapse-setter/index.d.ts +7 -0
- package/dist/group/tab-setter/index.d.ts +11 -0
- package/dist/index.cjs +3768 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +38 -0
- package/dist/index.esm.js +3701 -0
- package/dist/index.esm.js.map +1 -0
- package/dist/index.js +3764 -0
- package/dist/index.js.map +1 -0
- package/dist/index.min.js +2 -0
- package/dist/index.min.js.map +1 -0
- package/dist/lib/utils.d.ts +2 -0
- package/dist/styles.css +1 -0
- package/dist/types.d.ts +50 -0
- package/package.json +92 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright © 2025-PRESENT JinSo <https://github.com/JinSooo>
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
|
6
|
+
|
|
7
|
+
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
|
8
|
+
|
|
9
|
+
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,256 @@
|
|
|
1
|
+
# @easy-editor/setters
|
|
2
|
+
|
|
3
|
+
Official setters library for EasyEditor - A collection of property setter components for the visual low-code editor.
|
|
4
|
+
|
|
5
|
+
## 📦 Included Setters
|
|
6
|
+
|
|
7
|
+
### Basic Setters
|
|
8
|
+
- **StringSetter** - Text input setter
|
|
9
|
+
- **NumberSetter** - Number input setter with min/max/step support
|
|
10
|
+
- **ColorSetter** - Color picker setter
|
|
11
|
+
- **NodeIdSetter** - Display node ID and component title
|
|
12
|
+
- **RectSetter** - Rectangle position and size setter (X, Y, W, H)
|
|
13
|
+
- **SwitchSetter** - Boolean toggle switch
|
|
14
|
+
- **UploadSetter** - File upload setter with preview
|
|
15
|
+
|
|
16
|
+
### Group Setters
|
|
17
|
+
- **CollapseSetter** - Collapsible group container
|
|
18
|
+
- **TabSetter** - Tabbed group container
|
|
19
|
+
|
|
20
|
+
## 🚀 Installation
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
npm install @easy-editor/setters
|
|
24
|
+
# or
|
|
25
|
+
pnpm add @easy-editor/setters
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## 📖 Usage
|
|
29
|
+
|
|
30
|
+
### Import All Setters
|
|
31
|
+
|
|
32
|
+
```typescript
|
|
33
|
+
import { setterMap } from '@easy-editor/setters'
|
|
34
|
+
|
|
35
|
+
// Register all setters at once
|
|
36
|
+
Object.entries(setterMap).forEach(([name, setter]) => {
|
|
37
|
+
editor.setters.register(name, setter)
|
|
38
|
+
})
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
### Import Individual Setters
|
|
42
|
+
|
|
43
|
+
```typescript
|
|
44
|
+
import { StringSetter, NumberSetter, ColorSetter } from '@easy-editor/setters'
|
|
45
|
+
|
|
46
|
+
// Register individually
|
|
47
|
+
editor.setters.register('StringSetter', StringSetter)
|
|
48
|
+
editor.setters.register('NumberSetter', NumberSetter)
|
|
49
|
+
editor.setters.register('ColorSetter', ColorSetter)
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
### Import Specific Setter
|
|
53
|
+
|
|
54
|
+
```typescript
|
|
55
|
+
import StringSetter from '@easy-editor/setters/StringSetter'
|
|
56
|
+
|
|
57
|
+
editor.setters.register('StringSetter', StringSetter)
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
### Via CDN (UMD)
|
|
61
|
+
|
|
62
|
+
```html
|
|
63
|
+
<script src="https://unpkg.com/@easy-editor/setters@latest/dist/index.min.js"></script>
|
|
64
|
+
<script>
|
|
65
|
+
// All setters are available at window.$EasyEditor.setters
|
|
66
|
+
const { StringSetter, NumberSetter, ColorSetter } = window.$EasyEditor.setters
|
|
67
|
+
|
|
68
|
+
// Or use the setterMap
|
|
69
|
+
const setterMap = window.$EasyEditor.setters.setterMap
|
|
70
|
+
</script>
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
## 🎨 Setter Examples
|
|
74
|
+
|
|
75
|
+
### StringSetter
|
|
76
|
+
|
|
77
|
+
```typescript
|
|
78
|
+
{
|
|
79
|
+
name: 'title',
|
|
80
|
+
title: 'Title',
|
|
81
|
+
setter: 'StringSetter',
|
|
82
|
+
extraProps: {
|
|
83
|
+
placeholder: 'Enter title...',
|
|
84
|
+
suffix: 'px',
|
|
85
|
+
},
|
|
86
|
+
}
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### NumberSetter
|
|
90
|
+
|
|
91
|
+
```typescript
|
|
92
|
+
{
|
|
93
|
+
name: 'fontSize',
|
|
94
|
+
title: 'Font Size',
|
|
95
|
+
setter: 'NumberSetter',
|
|
96
|
+
extraProps: {
|
|
97
|
+
min: 12,
|
|
98
|
+
max: 72,
|
|
99
|
+
step: 2,
|
|
100
|
+
suffix: 'px',
|
|
101
|
+
},
|
|
102
|
+
}
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
### ColorSetter
|
|
106
|
+
|
|
107
|
+
```typescript
|
|
108
|
+
{
|
|
109
|
+
name: 'color',
|
|
110
|
+
title: 'Color',
|
|
111
|
+
setter: 'ColorSetter',
|
|
112
|
+
extraProps: {
|
|
113
|
+
disableAlpha: false,
|
|
114
|
+
},
|
|
115
|
+
}
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
### RectSetter
|
|
119
|
+
|
|
120
|
+
```typescript
|
|
121
|
+
{
|
|
122
|
+
name: 'rect',
|
|
123
|
+
title: 'Position & Size',
|
|
124
|
+
setter: 'RectSetter',
|
|
125
|
+
extraProps: {
|
|
126
|
+
getValue(target) {
|
|
127
|
+
return target.getExtraPropValue('$dashboard.rect')
|
|
128
|
+
},
|
|
129
|
+
setValue(target, value) {
|
|
130
|
+
target.setExtraPropValue('$dashboard.rect', value)
|
|
131
|
+
},
|
|
132
|
+
},
|
|
133
|
+
}
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
### SwitchSetter
|
|
137
|
+
|
|
138
|
+
```typescript
|
|
139
|
+
{
|
|
140
|
+
name: 'visible',
|
|
141
|
+
title: 'Visible',
|
|
142
|
+
setter: 'SwitchSetter',
|
|
143
|
+
extraProps: {
|
|
144
|
+
defaultValue: true,
|
|
145
|
+
},
|
|
146
|
+
}
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
### UploadSetter
|
|
150
|
+
|
|
151
|
+
```typescript
|
|
152
|
+
{
|
|
153
|
+
name: 'image',
|
|
154
|
+
title: 'Image',
|
|
155
|
+
setter: 'UploadSetter',
|
|
156
|
+
extraProps: {
|
|
157
|
+
accept: '.jpg,.jpeg,.png,.gif',
|
|
158
|
+
maxSize: 5 * 1024 * 1024, // 5MB
|
|
159
|
+
},
|
|
160
|
+
}
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
### CollapseSetter (Group)
|
|
164
|
+
|
|
165
|
+
```typescript
|
|
166
|
+
{
|
|
167
|
+
type: 'group',
|
|
168
|
+
title: 'Advanced Settings',
|
|
169
|
+
setter: {
|
|
170
|
+
componentName: 'CollapseSetter',
|
|
171
|
+
props: {
|
|
172
|
+
icon: true,
|
|
173
|
+
},
|
|
174
|
+
},
|
|
175
|
+
items: [
|
|
176
|
+
// ... nested field configs
|
|
177
|
+
],
|
|
178
|
+
}
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
### TabSetter (Group)
|
|
182
|
+
|
|
183
|
+
```typescript
|
|
184
|
+
{
|
|
185
|
+
type: 'group',
|
|
186
|
+
title: 'Settings',
|
|
187
|
+
setter: 'TabSetter',
|
|
188
|
+
items: [
|
|
189
|
+
{
|
|
190
|
+
type: 'group',
|
|
191
|
+
key: 'basic',
|
|
192
|
+
title: 'Basic',
|
|
193
|
+
items: [/* ... */],
|
|
194
|
+
},
|
|
195
|
+
{
|
|
196
|
+
type: 'group',
|
|
197
|
+
key: 'advanced',
|
|
198
|
+
title: 'Advanced',
|
|
199
|
+
items: [/* ... */],
|
|
200
|
+
},
|
|
201
|
+
],
|
|
202
|
+
}
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
## 🔧 TypeScript Support
|
|
206
|
+
|
|
207
|
+
All setters are fully typed with TypeScript:
|
|
208
|
+
|
|
209
|
+
```typescript
|
|
210
|
+
import type { StringSetterProps, NumberSetterProps, ColorSetterProps, UploadValue } from '@easy-editor/setters'
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
## 📦 Package Exports
|
|
214
|
+
|
|
215
|
+
The package supports multiple import methods:
|
|
216
|
+
|
|
217
|
+
- **Default**: `import setterMap from '@easy-editor/setters'`
|
|
218
|
+
- **Named**: `import { StringSetter, NumberSetter } from '@easy-editor/setters'`
|
|
219
|
+
- **Specific**: `import StringSetter from '@easy-editor/setters/StringSetter'`
|
|
220
|
+
|
|
221
|
+
## 🌐 CDN Usage
|
|
222
|
+
|
|
223
|
+
### unpkg
|
|
224
|
+
|
|
225
|
+
```html
|
|
226
|
+
<script src="https://unpkg.com/@easy-editor/setters@latest/dist/index.min.js"></script>
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
### jsdelivr
|
|
230
|
+
|
|
231
|
+
```html
|
|
232
|
+
<script src="https://cdn.jsdelivr.net/npm/@easy-editor/setters@latest/dist/index.min.js"></script>
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
## 🎯 Features
|
|
236
|
+
|
|
237
|
+
- ✅ **9 Built-in Setters** - Covers most common property types
|
|
238
|
+
- ✅ **TypeScript Support** - Fully typed with IntelliSense
|
|
239
|
+
- ✅ **Multiple Import Methods** - Use all or individual setters
|
|
240
|
+
- ✅ **CDN Ready** - UMD build for browser usage
|
|
241
|
+
- ✅ **Zero Dependencies** - Only peer dependencies (React, @easy-editor/core)
|
|
242
|
+
- ✅ **Lightweight** - Small bundle size with tree-shaking support
|
|
243
|
+
- ✅ **Customizable** - Pure inline styles, no CSS dependencies
|
|
244
|
+
|
|
245
|
+
## 📄 License
|
|
246
|
+
|
|
247
|
+
MIT © JinSo
|
|
248
|
+
|
|
249
|
+
## 🔗 Related Projects
|
|
250
|
+
|
|
251
|
+
- [EasyEditor](https://github.com/Easy-Editor/EasyEditor) - Core editor
|
|
252
|
+
- [EasyMaterials](https://github.com/Easy-Editor/EasyMaterials) - Official materials library
|
|
253
|
+
|
|
254
|
+
## 💬 Support
|
|
255
|
+
|
|
256
|
+
If you have any questions or suggestions, please submit an [Issue](https://github.com/Easy-Editor/EasySetters/issues).
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { SetterProps } from '@easy-editor/core';
|
|
2
|
+
export interface NumberSetterProps extends SetterProps<number> {
|
|
3
|
+
placeholder?: string;
|
|
4
|
+
suffix?: string;
|
|
5
|
+
}
|
|
6
|
+
declare const NumberSetter: (props: NumberSetterProps) => import("react").JSX.Element;
|
|
7
|
+
export default NumberSetter;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { SetterProps } from '@easy-editor/core';
|
|
2
|
+
export interface StringSetterProps extends SetterProps<string> {
|
|
3
|
+
placeholder?: string;
|
|
4
|
+
suffix?: string;
|
|
5
|
+
}
|
|
6
|
+
declare const StringSetter: (props: StringSetterProps) => import("react").JSX.Element;
|
|
7
|
+
export default StringSetter;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { SetterProps } from '@easy-editor/core';
|
|
2
|
+
export interface UploadValue {
|
|
3
|
+
raw: {
|
|
4
|
+
name: string;
|
|
5
|
+
size: number;
|
|
6
|
+
type: string;
|
|
7
|
+
width: number;
|
|
8
|
+
height: number;
|
|
9
|
+
};
|
|
10
|
+
base64: string;
|
|
11
|
+
}
|
|
12
|
+
export interface UploadSetterProps extends SetterProps<UploadValue | null> {
|
|
13
|
+
accept?: string;
|
|
14
|
+
maxSize?: number;
|
|
15
|
+
}
|
|
16
|
+
declare const UploadSetter: (props: UploadSetterProps) => import("react").JSX.Element;
|
|
17
|
+
export default UploadSetter;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { type VariantProps } from "class-variance-authority";
|
|
3
|
+
declare const buttonVariants: (props?: ({
|
|
4
|
+
variant?: "link" | "default" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
|
|
5
|
+
size?: "default" | "sm" | "lg" | "icon" | "icon-sm" | "icon-lg" | null | undefined;
|
|
6
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
7
|
+
declare const Button: React.ForwardRefExoticComponent<Omit<React.ClassAttributes<HTMLButtonElement> & React.ButtonHTMLAttributes<HTMLButtonElement> & VariantProps<(props?: ({
|
|
8
|
+
variant?: "link" | "default" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
|
|
9
|
+
size?: "default" | "sm" | "lg" | "icon" | "icon-sm" | "icon-lg" | null | undefined;
|
|
10
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string> & {
|
|
11
|
+
asChild?: boolean;
|
|
12
|
+
}, "ref"> & React.RefAttributes<HTMLButtonElement>>;
|
|
13
|
+
export { Button, buttonVariants };
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import * as CollapsiblePrimitive from "@radix-ui/react-collapsible";
|
|
2
|
+
declare function Collapsible({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.Root>): import("react").JSX.Element;
|
|
3
|
+
declare function CollapsibleTrigger({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleTrigger>): import("react").JSX.Element;
|
|
4
|
+
declare function CollapsibleContent({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleContent>): import("react").JSX.Element;
|
|
5
|
+
export { Collapsible, CollapsibleTrigger, CollapsibleContent };
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
|
|
3
|
+
declare function DropdownMenu({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Root>): React.JSX.Element;
|
|
4
|
+
declare function DropdownMenuPortal({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Portal>): React.JSX.Element;
|
|
5
|
+
declare function DropdownMenuTrigger({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Trigger>): React.JSX.Element;
|
|
6
|
+
declare function DropdownMenuContent({ className, sideOffset, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Content>): React.JSX.Element;
|
|
7
|
+
declare function DropdownMenuGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Group>): React.JSX.Element;
|
|
8
|
+
declare function DropdownMenuItem({ className, inset, variant, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Item> & {
|
|
9
|
+
inset?: boolean;
|
|
10
|
+
variant?: "default" | "destructive";
|
|
11
|
+
}): React.JSX.Element;
|
|
12
|
+
declare function DropdownMenuCheckboxItem({ className, children, checked, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>): React.JSX.Element;
|
|
13
|
+
declare function DropdownMenuRadioGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>): React.JSX.Element;
|
|
14
|
+
declare function DropdownMenuRadioItem({ className, children, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioItem>): React.JSX.Element;
|
|
15
|
+
declare function DropdownMenuLabel({ className, inset, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Label> & {
|
|
16
|
+
inset?: boolean;
|
|
17
|
+
}): React.JSX.Element;
|
|
18
|
+
declare function DropdownMenuSeparator({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Separator>): React.JSX.Element;
|
|
19
|
+
declare function DropdownMenuShortcut({ className, ...props }: React.ComponentProps<"span">): React.JSX.Element;
|
|
20
|
+
declare function DropdownMenuSub({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Sub>): React.JSX.Element;
|
|
21
|
+
declare function DropdownMenuSubTrigger({ className, inset, children, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {
|
|
22
|
+
inset?: boolean;
|
|
23
|
+
}): React.JSX.Element;
|
|
24
|
+
declare function DropdownMenuSubContent({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.SubContent>): React.JSX.Element;
|
|
25
|
+
export { DropdownMenu, DropdownMenuPortal, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuGroup, DropdownMenuLabel, DropdownMenuItem, DropdownMenuCheckboxItem, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubTrigger, DropdownMenuSubContent, };
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import * as PopoverPrimitive from "@radix-ui/react-popover";
|
|
3
|
+
declare function Popover({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Root>): React.JSX.Element;
|
|
4
|
+
declare function PopoverTrigger({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Trigger>): React.JSX.Element;
|
|
5
|
+
declare function PopoverContent({ className, align, sideOffset, ...props }: React.ComponentProps<typeof PopoverPrimitive.Content>): React.JSX.Element;
|
|
6
|
+
declare function PopoverAnchor({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Anchor>): React.JSX.Element;
|
|
7
|
+
export { Popover, PopoverTrigger, PopoverContent, PopoverAnchor };
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import * as TabsPrimitive from "@radix-ui/react-tabs";
|
|
3
|
+
declare function Tabs({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.Root>): React.JSX.Element;
|
|
4
|
+
declare function TabsList({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.List>): React.JSX.Element;
|
|
5
|
+
declare function TabsTrigger({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.Trigger>): React.JSX.Element;
|
|
6
|
+
declare function TabsContent({ className, ...props }: React.ComponentProps<typeof TabsPrimitive.Content>): React.JSX.Element;
|
|
7
|
+
export { Tabs, TabsList, TabsTrigger, TabsContent };
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { SetterProps } from '@easy-editor/core';
|
|
2
|
+
import type { PropsWithChildren } from 'react';
|
|
3
|
+
export interface CollapseSetterProps extends SetterProps<boolean>, PropsWithChildren {
|
|
4
|
+
icon?: boolean;
|
|
5
|
+
}
|
|
6
|
+
declare const CollapseSetter: (props: CollapseSetterProps) => import("react").JSX.Element;
|
|
7
|
+
export default CollapseSetter;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { SetterProps } from '@easy-editor/core';
|
|
2
|
+
import type { PropsWithChildren } from 'react';
|
|
3
|
+
import React from 'react';
|
|
4
|
+
export interface TabSetterProps extends SetterProps<string>, PropsWithChildren {
|
|
5
|
+
tabs?: {
|
|
6
|
+
label: string;
|
|
7
|
+
value: string;
|
|
8
|
+
}[];
|
|
9
|
+
}
|
|
10
|
+
declare const TabSetter: (props: TabSetterProps) => React.JSX.Element;
|
|
11
|
+
export default TabSetter;
|