@fewbox/den-web 0.2.0-preview.4 → 0.2.0-preview.41

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/engine.js +2 -0
  2. package/engine.js.map +1 -0
  3. package/{index-constants.d.ts → index-engine.d.ts} +15 -22
  4. package/index.css +1 -1
  5. package/index.js +1 -1
  6. package/index.js.map +1 -1
  7. package/package.json +6 -8
  8. package/scripts/generate-packages.js +5 -8
  9. package/server.js +71 -0
  10. package/src/components/Engine/Base/index.d.ts +3 -3
  11. package/src/components/Engine/index.d.ts +21 -14
  12. package/src/components/Layout/Dock/DockPopoverOverlay/index.d.ts +13 -0
  13. package/src/components/Layout/Dock/DockPortalOverlay/index.d.ts +11 -0
  14. package/src/components/Layout/Dock/index.d.ts +8 -26
  15. package/src/components/Layout/Dock/types.d.ts +39 -0
  16. package/src/components/View/VAside/index.d.ts +5 -0
  17. package/src/components/View/VErrorBoundary/index.d.ts +1 -1
  18. package/src/components/View/VForm/index.d.ts +1 -0
  19. package/src/components/View/VInput/VDropdown/index.d.ts +15 -1
  20. package/src/components/View/VInput/VFile/index.d.ts +2 -1
  21. package/src/components/View/VNav/index.d.ts +5 -0
  22. package/src/components/View/VTextArea/index.d.ts +1 -4
  23. package/src/components/View/VTooltip/index.d.ts +2 -5
  24. package/src/components/View/VTree/Block/index.d.ts +1 -1
  25. package/src/components/View/VTree/index.d.ts +2 -6
  26. package/src/components/View/VTree/types.d.ts +6 -0
  27. package/src/components/core.d.ts +3 -1
  28. package/templates/.claude/skills/fewbox-den/SKILL.md +471 -434
  29. package/templates/FEWBOX.md +12 -35
  30. package/templates/style/_core.scss +12 -0
  31. package/templates/style/_root-properties.scss +4 -1
  32. package/templates/style/_variables.scss +13 -1
  33. package/tsconfig.app.tsbuildinfo +1 -1
  34. package/constants.js +0 -2
  35. package/constants.js.map +0 -1
  36. package/src/components/View/VDynamic/index.d.ts +0 -7
  37. package/src/components/app.d.ts +0 -21
  38. package/src/fewbox/index.d.ts +0 -42
  39. package/src/language/index.d.ts +0 -13
  40. package/src/network/FormHeaders.d.ts +0 -4
  41. package/src/network/IGraphQL.d.ts +0 -6
  42. package/src/network/JsonHeaders.d.ts +0 -5
  43. package/src/network/Network.d.ts +0 -45
  44. package/src/network/NetworkObservableBase.d.ts +0 -14
  45. package/src/network/StreamObservableBase.d.ts +0 -11
  46. package/src/network/UploadHeaders.d.ts +0 -4
  47. package/src/network/WS.d.ts +0 -11
  48. package/src/network/ajax/default/Delete.d.ts +0 -5
  49. package/src/network/ajax/default/DeleteText.d.ts +0 -5
  50. package/src/network/ajax/default/Get.d.ts +0 -5
  51. package/src/network/ajax/default/GetLocal.d.ts +0 -5
  52. package/src/network/ajax/default/GetText.d.ts +0 -5
  53. package/src/network/ajax/default/NetworkObservableAjax.d.ts +0 -7
  54. package/src/network/ajax/default/Patch.d.ts +0 -5
  55. package/src/network/ajax/default/PatchText.d.ts +0 -5
  56. package/src/network/ajax/default/Post.d.ts +0 -5
  57. package/src/network/ajax/default/PostText.d.ts +0 -5
  58. package/src/network/ajax/default/Put.d.ts +0 -5
  59. package/src/network/ajax/default/PutText.d.ts +0 -5
  60. package/src/network/ajax/external/DeleteExternal.d.ts +0 -5
  61. package/src/network/ajax/external/DeleteTextExternal.d.ts +0 -5
  62. package/src/network/ajax/external/GetExternal.d.ts +0 -5
  63. package/src/network/ajax/external/GetTextExternal.d.ts +0 -5
  64. package/src/network/ajax/external/NetworkObservableAjaxExternal.d.ts +0 -8
  65. package/src/network/ajax/external/PatchExternal.d.ts +0 -5
  66. package/src/network/ajax/external/PatchTextExternal.d.ts +0 -5
  67. package/src/network/ajax/external/PostExternal.d.ts +0 -5
  68. package/src/network/ajax/external/PostTextExternal.d.ts +0 -5
  69. package/src/network/ajax/external/PutExternal.d.ts +0 -5
  70. package/src/network/ajax/external/PutTextExternal.d.ts +0 -5
  71. package/src/network/fetch/default/DeleteFetch.d.ts +0 -5
  72. package/src/network/fetch/default/GetFetch.d.ts +0 -5
  73. package/src/network/fetch/default/NetworkObservableFetch.d.ts +0 -7
  74. package/src/network/fetch/default/PatchFetch.d.ts +0 -5
  75. package/src/network/fetch/default/PostFetch.d.ts +0 -5
  76. package/src/network/fetch/default/PutFetch.d.ts +0 -5
  77. package/src/network/fetch/external/DeleteFetchExternal.d.ts +0 -5
  78. package/src/network/fetch/external/GetFetchExternal.d.ts +0 -5
  79. package/src/network/fetch/external/NetworkObservableFetchExternal.d.ts +0 -8
  80. package/src/network/fetch/external/PatchFetchExternal.d.ts +0 -5
  81. package/src/network/fetch/external/PostFetchExternal.d.ts +0 -5
  82. package/src/network/fetch/external/PutFetchExternal.d.ts +0 -5
  83. package/src/network/graphql/default/GQL.d.ts +0 -6
  84. package/src/network/graphql/default/GQLUpload.d.ts +0 -5
  85. package/src/network/graphql/default/NetworkObservableGQL.d.ts +0 -7
  86. package/src/network/graphql/external/GQLExternal.d.ts +0 -6
  87. package/src/network/graphql/external/GQLExternalUpload.d.ts +0 -6
  88. package/src/network/graphql/external/NetworkObservableGQLExternal.d.ts +0 -7
  89. package/src/network/index.d.ts +0 -50
  90. package/src/network/sse/default/GetSSE.d.ts +0 -5
  91. package/src/network/sse/default/PostSSE.d.ts +0 -5
  92. package/src/network/sse/default/StreamObservableSSE.d.ts +0 -5
  93. package/src/network/sse/external/GetSSEExternal.d.ts +0 -5
  94. package/src/network/sse/external/PostSSEExternal.d.ts +0 -5
  95. package/src/network/sse/external/StreamObservableSSEExternal.d.ts +0 -6
  96. package/src/network/util.d.ts +0 -5
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fewbox/den-web",
3
- "version": "0.2.0-preview.4",
3
+ "version": "0.2.0-preview.41",
4
4
  "main": "index.js",
5
5
  "types": "index-web.d.ts",
6
6
  "repository": "https://github.com/FewBox/fewbox-den.git",
@@ -9,14 +9,12 @@
9
9
  "type": "module",
10
10
  "exports": {
11
11
  ".": {
12
- "import": "./index.js",
13
- "types": "./index-web.d.ts"
12
+ "types": "./index-web.d.ts",
13
+ "react-server": "./server.js",
14
+ "default": "./index.js"
14
15
  },
15
- "./constants": {
16
- "import": "./constants.js",
17
- "types": "./index-constants.d.ts"
18
- },
19
- "./index.css": "./index.css"
16
+ "./index.css": "./index.css",
17
+ "./*": "./*"
20
18
  },
21
19
  "scripts": {
22
20
  "postinstall": "node scripts/copy-templates.js"
@@ -12,7 +12,7 @@ for (const registry of registries) {
12
12
  for (const [variant, variantConfig] of Object.entries(variants)) {
13
13
  const pkg = {
14
14
  name: variantConfig.name,
15
- version: common.version,
15
+ version: variantConfig.version || common.version,
16
16
  main: common.main,
17
17
  types: variantConfig.types,
18
18
  repository: common.repository,
@@ -21,18 +21,15 @@ for (const registry of registries) {
21
21
  type: common.type,
22
22
  };
23
23
 
24
- // Add exports map for sub-path imports (constants for Server Component compatibility)
25
- if (variant !== 'append') {
24
+ if (variantConfig.hasServerEntry) {
26
25
  pkg.exports = {
27
26
  '.': {
28
- import: './index.js',
29
27
  types: `./${variantConfig.types}`,
30
- },
31
- './constants': {
32
- import: './constants.js',
33
- types: './index-constants.d.ts',
28
+ 'react-server': './server.js',
29
+ default: './index.js',
34
30
  },
35
31
  './index.css': './index.css',
32
+ './*': './*',
36
33
  };
37
34
  }
38
35
 
package/server.js ADDED
@@ -0,0 +1,71 @@
1
+ // Engine constants
2
+ export {
3
+ ColorType,
4
+ FontSizeType,
5
+ FontWeightType,
6
+ FontFamilyType,
7
+ LineHeightType,
8
+ PaddingType,
9
+ MarginType,
10
+ GapType,
11
+ LetterSpacingType,
12
+ BorderRadiusType,
13
+ BorderStyleType,
14
+ BorderWidthType,
15
+ VisibilityType,
16
+ DisplayType,
17
+ CursorType,
18
+ OverflowType,
19
+ OverflowXType,
20
+ OverflowYType,
21
+ OpacityType,
22
+ ViewSizeType,
23
+ PseudoType,
24
+ DirectionType,
25
+ getGeneratedClassName,
26
+ getWeightValue,
27
+ // Layout constants
28
+ ZoneCategory,
29
+ ScreenSizeType,
30
+ BreakpointCategory,
31
+ BreakpointType,
32
+ DockCategory,
33
+ DockAlignment,
34
+ PositionCategory,
35
+ PositionType,
36
+ PositionAreaCategory,
37
+ FlexDirectionType,
38
+ FlexWrapType,
39
+ FlexJustifyContentType,
40
+ FlexAlignItemsType,
41
+ FlexAlignContentType,
42
+ FlexItemAlignSelfType,
43
+ XCrossType,
44
+ YCrossType,
45
+ // View constants
46
+ BackgroundPositionType,
47
+ HandleSubmitCategory,
48
+ FileCategory,
49
+ SvgCategory,
50
+ HyperlinkCategory,
51
+ ImageCategory,
52
+ LabelCategory,
53
+ LabelType,
54
+ LabelAlignType,
55
+ TextCategory,
56
+ TextAlignType,
57
+ EllipseCategory,
58
+ LineCategory,
59
+ ShadowCategory,
60
+ AnimationCategory,
61
+ AnimationDelay,
62
+ AnimationRepeat,
63
+ AnimationSpeed,
64
+ RootCategory,
65
+ ThemeCategory,
66
+ TooltipCategory,
67
+ // Util
68
+ convertFormDataToJson
69
+ } from './engine.js';
70
+
71
+ export * from './index.js';
@@ -1,4 +1,4 @@
1
- import { DirectionType, FullColorType, PseudoType, FullFontSizeType, FontWeightType, FullBorderRadiusType, FullBorderStyleType, FullBorderWidthType, FullPaddingType, FullMarginType, OpacityType, FullDisplayType, FullVisibilityType, FullCursorType, FullOverflowType, FullOverflowXType, FullOverflowYType } from '..';
1
+ import { DirectionType, FullColorType, PseudoType, FullFontSizeType, FontWeightType, FullBorderRadiusType, FullBorderStyleType, FullBorderWidthType, FullPaddingType, FullMarginType, FullOpacityType, FullLetterSpacingType, FullDisplayType, FullVisibilityType, FullCursorType, FullOverflowType, FullOverflowXType, FullOverflowYType } from '..';
2
2
  import { Property } from 'csstype';
3
3
  export interface IViewProps {
4
4
  className?: string;
@@ -20,7 +20,7 @@ export interface IViewProps {
20
20
  borderWidth?: FullBorderWidthType;
21
21
  padding?: FullPaddingType;
22
22
  margin?: FullMarginType;
23
- opacity?: OpacityType;
23
+ opacity?: FullOpacityType;
24
24
  display?: FullDisplayType;
25
25
  visibility?: FullVisibilityType;
26
26
  cursor?: FullCursorType;
@@ -33,7 +33,7 @@ export interface IViewProps {
33
33
  minWidth?: Property.Width;
34
34
  maxHeight?: Property.Width;
35
35
  maxWidth?: Property.Width;
36
- letterSpacing?: Property.LetterSpacing;
36
+ letterSpacing?: FullLetterSpacingType;
37
37
  lineHeight?: Property.LineHeight;
38
38
  overflowX?: FullOverflowXType;
39
39
  overflowY?: FullOverflowYType;
@@ -80,7 +80,7 @@ export declare const PaddingType: {
80
80
  readonly ExtraLarge: "padding-extra-large";
81
81
  };
82
82
  export type PaddingType = typeof PaddingType[keyof typeof PaddingType];
83
- export type FullPaddingType = PaddingType | string;
83
+ export type FullPaddingType = PaddingType | Property.Padding;
84
84
  export declare const MarginType: {
85
85
  readonly Default: "margin";
86
86
  readonly Normal: "margin-normal";
@@ -90,7 +90,7 @@ export declare const MarginType: {
90
90
  readonly ExtraLarge: "margin-extra-large";
91
91
  };
92
92
  export type MarginType = typeof MarginType[keyof typeof MarginType];
93
- export type FullMarginType = MarginType | string;
93
+ export type FullMarginType = MarginType | Property.Margin;
94
94
  export declare const GapType: {
95
95
  readonly Default: "gap";
96
96
  readonly Normal: "gap-normal";
@@ -103,8 +103,14 @@ export type GapType = typeof GapType[keyof typeof GapType];
103
103
  export type FullGapType = GapType | Property.Gap;
104
104
  export declare const LetterSpacingType: {
105
105
  readonly Default: "letter-spacing";
106
+ readonly Normal: "letter-spacing-normal";
107
+ readonly ExtraSmall: "letter-spacing-extra-small";
108
+ readonly Small: "letter-spacing-small";
109
+ readonly Large: "letter-spacing-large";
110
+ readonly ExtraLarge: "letter-spacing-extra-large";
106
111
  };
107
112
  export type LetterSpacingType = typeof LetterSpacingType[keyof typeof LetterSpacingType];
113
+ export type FullLetterSpacingType = LetterSpacingType | Property.LetterSpacing;
108
114
  export declare const BorderRadiusType: {
109
115
  readonly Default: "border-radius";
110
116
  readonly Normal: "border-radius-normal";
@@ -115,7 +121,7 @@ export declare const BorderRadiusType: {
115
121
  readonly Max: "border-radius-max";
116
122
  };
117
123
  export type BorderRadiusType = typeof BorderRadiusType[keyof typeof BorderRadiusType];
118
- export type FullBorderRadiusType = BorderRadiusType | string;
124
+ export type FullBorderRadiusType = BorderRadiusType | Property.BorderRadius;
119
125
  export declare const BorderStyleType: {
120
126
  readonly None: "border-style-none";
121
127
  readonly Solid: "border-style-solid";
@@ -129,7 +135,7 @@ export declare const BorderStyleType: {
129
135
  readonly Hidden: "border-style-hidden";
130
136
  };
131
137
  export type BorderStyleType = typeof BorderStyleType[keyof typeof BorderStyleType];
132
- export type FullBorderStyleType = BorderStyleType | string;
138
+ export type FullBorderStyleType = BorderStyleType | Property.BorderStyle;
133
139
  export declare const BorderWidthType: {
134
140
  readonly Default: "border-width";
135
141
  readonly Normal: "border-width-normal";
@@ -139,14 +145,14 @@ export declare const BorderWidthType: {
139
145
  readonly ExtraLarge: "border-width-extra-large";
140
146
  };
141
147
  export type BorderWidthType = typeof BorderWidthType[keyof typeof BorderWidthType];
142
- export type FullBorderWidthType = BorderWidthType | string;
148
+ export type FullBorderWidthType = BorderWidthType | Property.BorderWidth;
143
149
  export declare const VisibilityType: {
144
150
  readonly Visible: "visibility-visible";
145
151
  readonly Hidden: "visibility-hidden";
146
152
  readonly Collapse: "visibility-collapse";
147
153
  };
148
154
  export type VisibilityType = typeof VisibilityType[keyof typeof VisibilityType];
149
- export type FullVisibilityType = VisibilityType | string;
155
+ export type FullVisibilityType = VisibilityType | Property.Visibility;
150
156
  export declare const DisplayType: {
151
157
  readonly None: "display-none";
152
158
  readonly Block: "display-block";
@@ -163,7 +169,7 @@ export declare const DisplayType: {
163
169
  readonly FlowRoot: "display-flow-root";
164
170
  };
165
171
  export type DisplayType = typeof DisplayType[keyof typeof DisplayType];
166
- export type FullDisplayType = DisplayType | string;
172
+ export type FullDisplayType = DisplayType | Property.Display;
167
173
  export declare const CursorType: {
168
174
  readonly Auto: "cursor-auto";
169
175
  readonly Default: "cursor-default";
@@ -203,7 +209,7 @@ export declare const CursorType: {
203
209
  readonly ZoomOut: "cursor-zoom-out";
204
210
  };
205
211
  export type CursorType = typeof CursorType[keyof typeof CursorType];
206
- export type FullCursorType = CursorType | string;
212
+ export type FullCursorType = CursorType | Property.Cursor;
207
213
  export declare const OverflowType: {
208
214
  readonly Visible: "overflow-visible";
209
215
  readonly Hidden: "overflow-hidden";
@@ -212,7 +218,7 @@ export declare const OverflowType: {
212
218
  readonly Clip: "overflow-clip";
213
219
  };
214
220
  export type OverflowType = typeof OverflowType[keyof typeof OverflowType];
215
- export type FullOverflowType = OverflowType | string;
221
+ export type FullOverflowType = OverflowType | Property.Overflow;
216
222
  export declare const OverflowXType: {
217
223
  readonly Visible: "overflow-x-visible";
218
224
  readonly Hidden: "overflow-x-hidden";
@@ -221,7 +227,7 @@ export declare const OverflowXType: {
221
227
  readonly Clip: "overflow-x-clip";
222
228
  };
223
229
  export type OverflowXType = typeof OverflowXType[keyof typeof OverflowXType];
224
- export type FullOverflowXType = OverflowXType | string;
230
+ export type FullOverflowXType = OverflowXType | Property.OverflowX;
225
231
  export declare const OverflowYType: {
226
232
  readonly Visible: "overflow-y-visible";
227
233
  readonly Hidden: "overflow-y-hidden";
@@ -230,7 +236,7 @@ export declare const OverflowYType: {
230
236
  readonly Clip: "overflow-y-clip";
231
237
  };
232
238
  export type OverflowYType = typeof OverflowYType[keyof typeof OverflowYType];
233
- export type FullOverflowYType = OverflowYType | string;
239
+ export type FullOverflowYType = OverflowYType | Property.OverflowY;
234
240
  export declare const OpacityType: {
235
241
  readonly _0: "opacity-0";
236
242
  readonly _10: "opacity-10";
@@ -247,6 +253,7 @@ export declare const OpacityType: {
247
253
  readonly _100: "opacity-100";
248
254
  };
249
255
  export type OpacityType = typeof OpacityType[keyof typeof OpacityType];
256
+ export type FullOpacityType = OpacityType | Property.Opacity;
250
257
  export declare const ViewSizeType: {
251
258
  readonly Ellipse: "v-ellipse-size";
252
259
  readonly Rectangle: "v-rectangle-size";
@@ -256,7 +263,7 @@ export declare const ViewSizeType: {
256
263
  };
257
264
  export type ViewSizeType = typeof ViewSizeType[keyof typeof ViewSizeType];
258
265
  export declare const getWeightValue: (weightType: FontWeightType) => number;
259
- export type FullFontSizeType = FontSizeType | string;
266
+ export type FullFontSizeType = FontSizeType | Property.FontSize;
260
267
  export declare const FontSizeType: {
261
268
  readonly Default: "font-size";
262
269
  readonly Normal: "font-size-normal";
@@ -271,7 +278,7 @@ export declare const FontSizeType: {
271
278
  readonly AutoExtraLarge: "auto-font-size-extra-large";
272
279
  };
273
280
  export type FontSizeType = typeof FontSizeType[keyof typeof FontSizeType];
274
- export type FullColorType = ColorType | string;
281
+ export type FullColorType = ColorType | Property.Color;
275
282
  export declare const PseudoType: {
276
283
  readonly All: "all";
277
284
  readonly Before: "before";
@@ -296,4 +303,4 @@ export declare const DirectionType: {
296
303
  readonly LeftRight: "left-right";
297
304
  };
298
305
  export type DirectionType = typeof DirectionType[keyof typeof DirectionType];
299
- export declare const getGeneratedClassName: (className: string, isDefaultValue: boolean | undefined, sizeType?: FullFontSizeType, isAutoSize?: boolean, weightType?: FontWeightType, frontColorType?: FullColorType, backgroundColorType?: FullColorType, borderColorType?: FullColorType, borderDirection?: DirectionType, pseudoType?: PseudoType, pseudoFrontColor?: FullColorType, pseudoBackgroundColor?: FullColorType, pseudoBorderColor?: FullColorType, pseudoBorderDirection?: DirectionType, borderRadius?: FullBorderRadiusType, borderStyle?: FullBorderStyleType, borderWidth?: FullBorderWidthType, padding?: FullPaddingType, margin?: FullMarginType, opacityType?: OpacityType, display?: FullDisplayType, visibility?: FullVisibilityType, cursor?: FullCursorType, overflow?: FullOverflowType, overflowX?: FullOverflowXType, overflowY?: FullOverflowYType) => string;
306
+ export declare const getGeneratedClassName: (className: string, isDefaultValue: boolean | undefined, sizeType?: FullFontSizeType, isAutoSize?: boolean, weightType?: FontWeightType, frontColorType?: FullColorType, backgroundColorType?: FullColorType, borderColorType?: FullColorType, borderDirection?: DirectionType, pseudoType?: PseudoType, pseudoFrontColor?: FullColorType, pseudoBackgroundColor?: FullColorType, pseudoBorderColor?: FullColorType, pseudoBorderDirection?: DirectionType, borderRadius?: FullBorderRadiusType, borderStyle?: FullBorderStyleType, borderWidth?: FullBorderWidthType, padding?: FullPaddingType, margin?: FullMarginType, opacityType?: FullOpacityType, display?: FullDisplayType, visibility?: FullVisibilityType, cursor?: FullCursorType, overflow?: FullOverflowType, overflowX?: FullOverflowXType, overflowY?: FullOverflowYType, letterSpacing?: FullLetterSpacingType) => string;
@@ -0,0 +1,13 @@
1
+ import { Property } from 'csstype';
2
+ import { DockCategory, DockAlignment, DockPopoverMode } from '../types';
3
+ interface IDockPopoverOverlayProps {
4
+ category: DockCategory;
5
+ offset: number;
6
+ zIndex: Property.ZIndex;
7
+ alignment?: DockAlignment;
8
+ popoverMode?: DockPopoverMode;
9
+ onOverlayClose?: () => void;
10
+ renderOverlay: () => React.JSX.Element;
11
+ }
12
+ declare const DockPopoverOverlay: ({ category, offset, zIndex, alignment, popoverMode, onOverlayClose, renderOverlay }: IDockPopoverOverlayProps) => React.JSX.Element;
13
+ export default DockPopoverOverlay;
@@ -0,0 +1,11 @@
1
+ import { Property } from 'csstype';
2
+ import { DockCategory, DockAlignment } from '../types';
3
+ interface IDockPortalOverlayProps {
4
+ category: DockCategory;
5
+ offset: number;
6
+ zIndex: Property.ZIndex;
7
+ alignment?: DockAlignment;
8
+ renderOverlay: () => React.JSX.Element;
9
+ }
10
+ declare const DockPortalOverlay: ({ category, offset, zIndex, alignment, renderOverlay }: IDockPortalOverlayProps) => React.JSX.Element | null;
11
+ export default DockPortalOverlay;
@@ -1,34 +1,16 @@
1
1
  import { IBaseProps } from '../../Engine/Base';
2
2
  import { Property } from 'csstype';
3
- export declare const DockCategory: {
4
- readonly Top: "top";
5
- readonly Right: "right";
6
- readonly Bottom: "bottom";
7
- readonly Left: "left";
8
- readonly LeftTop: "left-top";
9
- readonly RightTop: "right-top";
10
- readonly LeftBottom: "left-bottom";
11
- readonly RightBottom: "right-bottom";
12
- readonly InnerTop: "inner-top";
13
- readonly InnerRight: "inner-right";
14
- readonly InnerBottom: "inner-bottom";
15
- readonly InnerLeft: "inner-left";
16
- readonly InnerLeftTop: "inner-left-top";
17
- readonly InnerRightTop: "inner-right-top";
18
- readonly InnerLeftBottom: "inner-left-bottom";
19
- readonly InnerRightBottom: "inner-right-bottom";
20
- };
21
- export type DockCategory = typeof DockCategory[keyof typeof DockCategory];
22
- export declare const DockAlignment: {
23
- readonly Horizontal: "horizontal";
24
- readonly Vertical: "vertical";
25
- };
26
- export type DockAlignment = typeof DockAlignment[keyof typeof DockAlignment];
27
- type AlignmentCategory = typeof DockCategory.LeftTop | typeof DockCategory.RightTop | typeof DockCategory.RightBottom | typeof DockCategory.LeftBottom;
28
- type NonAlignmentCategory = Exclude<DockCategory, AlignmentCategory>;
3
+ import type { DockAlignment, AlignmentCategory, NonAlignmentCategory } from './types';
4
+ import { DockPopoverMode } from './types';
5
+ export { DockCategory, DockAlignment, DockPopoverMode } from './types';
6
+ export type { AlignmentCategory, NonAlignmentCategory, IDockOverlayProps } from './types';
29
7
  interface IDockBaseProps extends IBaseProps {
30
8
  offset?: number;
31
9
  overlayZIndex?: Property.ZIndex;
10
+ isPortal?: boolean;
11
+ isOverlayVisible?: boolean;
12
+ popoverMode?: DockPopoverMode;
13
+ onOverlayClose?: () => void;
32
14
  renderOverlay: () => React.JSX.Element;
33
15
  }
34
16
  export type IDockProps = ({
@@ -0,0 +1,39 @@
1
+ import { Property } from 'csstype';
2
+ export declare const DockCategory: {
3
+ readonly Top: "top";
4
+ readonly Right: "right";
5
+ readonly Bottom: "bottom";
6
+ readonly Left: "left";
7
+ readonly LeftTop: "left-top";
8
+ readonly RightTop: "right-top";
9
+ readonly LeftBottom: "left-bottom";
10
+ readonly RightBottom: "right-bottom";
11
+ readonly InnerTop: "inner-top";
12
+ readonly InnerRight: "inner-right";
13
+ readonly InnerBottom: "inner-bottom";
14
+ readonly InnerLeft: "inner-left";
15
+ readonly InnerLeftTop: "inner-left-top";
16
+ readonly InnerRightTop: "inner-right-top";
17
+ readonly InnerLeftBottom: "inner-left-bottom";
18
+ readonly InnerRightBottom: "inner-right-bottom";
19
+ };
20
+ export type DockCategory = typeof DockCategory[keyof typeof DockCategory];
21
+ export declare const DockAlignment: {
22
+ readonly Horizontal: "horizontal";
23
+ readonly Vertical: "vertical";
24
+ };
25
+ export type DockAlignment = typeof DockAlignment[keyof typeof DockAlignment];
26
+ export declare const DockPopoverMode: {
27
+ readonly Manual: "manual";
28
+ readonly Auto: "auto";
29
+ };
30
+ export type DockPopoverMode = typeof DockPopoverMode[keyof typeof DockPopoverMode];
31
+ export type AlignmentCategory = typeof DockCategory.LeftTop | typeof DockCategory.RightTop | typeof DockCategory.RightBottom | typeof DockCategory.LeftBottom;
32
+ export type NonAlignmentCategory = Exclude<DockCategory, AlignmentCategory>;
33
+ export interface IDockOverlayProps {
34
+ category: DockCategory;
35
+ offset: number;
36
+ zIndex: Property.ZIndex;
37
+ alignment?: DockAlignment;
38
+ renderOverlay: () => React.JSX.Element;
39
+ }
@@ -0,0 +1,5 @@
1
+ import { IBaseProps } from '../../Engine/Base';
2
+ export interface IVAsideProps extends IBaseProps<'aside'> {
3
+ }
4
+ declare const VAside: (props: IVAsideProps) => React.JSX.Element;
5
+ export default VAside;
@@ -13,6 +13,6 @@ declare class VErrorBoundary extends Component<IVErrorBoundaryProps, IVErrorBoun
13
13
  constructor(props: IVErrorBoundaryProps);
14
14
  static getDerivedStateFromError(error: Error): Partial<IVErrorBoundaryState>;
15
15
  componentDidCatch(error: Error, errorInfo: ErrorInfo): void;
16
- render(): string | number | bigint | boolean | import("react/jsx-runtime").JSX.Element | Iterable<import("react").ReactNode> | Promise<string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<import("react").ReactNode> | null | undefined> | null | undefined;
16
+ render(): string | number | bigint | boolean | Iterable<import("react").ReactNode> | Promise<string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<import("react").ReactNode> | null | undefined> | import("react/jsx-runtime").JSX.Element | null | undefined;
17
17
  }
18
18
  export default VErrorBoundary;
@@ -5,6 +5,7 @@ export declare const HandleSubmitCategory: {
5
5
  };
6
6
  export type HandleSubmitCategory = typeof HandleSubmitCategory[keyof typeof HandleSubmitCategory];
7
7
  export interface IVFormProps extends IBaseProps<'form'> {
8
+ ref?: React.Ref<HTMLFormElement>;
8
9
  handleSubmitCategory?: HandleSubmitCategory;
9
10
  handleSubmit: (data: any) => void;
10
11
  handleValidateError?: (invalidInputs: HTMLInputElement[]) => void;
@@ -1,5 +1,5 @@
1
1
  import { DockAlignment, DockCategory } from "../../../Layout/Dock";
2
- import { ColorType, FontSizeType } from "../../../Engine";
2
+ import { ColorType, FontSizeType, BorderStyleType, BorderWidthType, GapType, PaddingType } from "../../../Engine";
3
3
  import { IBaseProps } from "../../../Engine/Base";
4
4
  import { Property } from "csstype";
5
5
  export interface IDropdownItemData {
@@ -22,6 +22,20 @@ export interface IVDropdownProps extends IBaseProps<'input'> {
22
22
  dockAlignment?: DockAlignment;
23
23
  menuBackgroundColor?: ColorType;
24
24
  menuZIndex?: Property.ZIndex;
25
+ menuGap?: Property.Gap;
26
+ menuPadding?: PaddingType;
27
+ menuBorderRadius?: Property.BorderRadius;
28
+ menuBorderColor?: ColorType;
29
+ menuBorderWidth?: BorderWidthType;
30
+ menuBorderStyle?: BorderStyleType;
31
+ menuItemIconSize?: FontSizeType;
32
+ menuItemPadding?: PaddingType;
33
+ menuItemGap?: GapType;
34
+ menuItemFontSize?: FontSizeType;
35
+ menuItemFrontColor?: ColorType;
36
+ menuItemBackgroundColor?: ColorType;
37
+ menuItemIconColor?: ColorType;
38
+ isSelectOnly?: boolean;
25
39
  overWriteDropdownMenu?: (items: IDropdownItemData[]) => React.JSX.Element;
26
40
  overWriteDropdownItem?: (item: IDropdownItemData) => React.JSX.Element;
27
41
  handleChange?: (value: string) => void;
@@ -20,11 +20,12 @@ export interface IVFileProps extends IBaseInputProps {
20
20
  textLength?: number;
21
21
  autoUpload?: (files: File[], complete: () => void) => void;
22
22
  renderLoader?: () => React.JSX.Element;
23
- renderPreview?: (inputFiles: InputFile[], isLoading: boolean) => React.JSX.Element;
23
+ renderPreview?: (inputFiles: InputFile[], isLoading: boolean, reload: () => void) => React.JSX.Element | Promise<React.JSX.Element>;
24
24
  }
25
25
  export interface IVFileStates {
26
26
  isLoading: boolean;
27
27
  inputFiles: InputFile[];
28
+ previewVersion: number;
28
29
  }
29
30
  declare const VFile: (props: IVFileProps) => React.JSX.Element;
30
31
  export default VFile;
@@ -0,0 +1,5 @@
1
+ import { IBaseProps } from '../../Engine/Base';
2
+ export interface IVNavProps extends IBaseProps<'nav'> {
3
+ }
4
+ declare const VNav: (props: IVNavProps) => React.JSX.Element;
5
+ export default VNav;
@@ -1,4 +1,4 @@
1
- import { IBaseProps, IBaseStates } from '../../Engine/Base';
1
+ import { IBaseProps } from '../../Engine/Base';
2
2
  import { FullColorType } from '../../Engine';
3
3
  export interface IVTextAreaProps extends IBaseProps<'textarea'> {
4
4
  ref?: React.Ref<HTMLTextAreaElement>;
@@ -7,8 +7,5 @@ export interface IVTextAreaProps extends IBaseProps<'textarea'> {
7
7
  setStateHook?: (value: string) => void;
8
8
  placeholderColor?: FullColorType;
9
9
  }
10
- export interface IVTextAreaStates extends IBaseStates {
11
- value?: string | ReadonlyArray<string> | number | undefined;
12
- }
13
10
  declare const VTextArea: (props: IVTextAreaProps) => React.JSX.Element;
14
11
  export default VTextArea;
@@ -1,4 +1,4 @@
1
- import { IBaseProps, IBaseStates } from '../../Engine/Base';
1
+ import { IBaseProps } from '../../Engine/Base';
2
2
  import { DockAlignment, DockCategory } from '../../Layout/Dock';
3
3
  export declare const TooltipCategory: {
4
4
  readonly Hover: "hover";
@@ -9,10 +9,7 @@ export interface IVTooltipProps extends IBaseProps {
9
9
  category?: TooltipCategory;
10
10
  dockCategory: DockCategory;
11
11
  dockAlignment?: DockAlignment;
12
- renderOverlay: () => React.JSX.Element;
13
- }
14
- export interface IVTooltipStates extends IBaseStates {
15
- isShow: boolean;
12
+ renderOverlay: (close: () => void) => React.JSX.Element;
16
13
  }
17
14
  declare const VTooltip: (props: IVTooltipProps) => React.JSX.Element;
18
15
  export default VTooltip;
@@ -1,5 +1,5 @@
1
1
  import { IBaseProps, IBaseStates } from '../../../Engine/Base';
2
- import { IVTreeNode } from '..';
2
+ import { IVTreeNode } from '../types';
3
3
  export interface IVTreeBlockProps extends IBaseProps {
4
4
  node: IVTreeNode;
5
5
  expandIcon?: React.JSX.Element;
@@ -1,10 +1,6 @@
1
1
  import { IBaseProps } from '../../Engine/Base';
2
- export interface IVTreeNode {
3
- key: string;
4
- name: string;
5
- icon?: React.JSX.Element;
6
- children?: IVTreeNode[];
7
- }
2
+ export type { IVTreeNode } from './types';
3
+ import type { IVTreeNode } from './types';
8
4
  export interface IVTreeProps extends IBaseProps {
9
5
  rootNode: IVTreeNode;
10
6
  isExpand?: boolean;
@@ -0,0 +1,6 @@
1
+ export interface IVTreeNode {
2
+ key: string;
3
+ name: string;
4
+ icon?: React.JSX.Element;
5
+ children?: IVTreeNode[];
6
+ }
@@ -5,7 +5,7 @@ export { default as BreakpointDisplay, ScreenSizeType, BreakpointCategory, Break
5
5
  export { default as Responsive } from './Layout/Responsive';
6
6
  export { FontSizeType, FontWeightType, FontFamilyType, BorderRadiusType, BorderStyleType, BorderWidthType, LineHeightType, LetterSpacingType, PaddingType, MarginType, GapType, OpacityType, DisplayType, VisibilityType, CursorType, OverflowType, OverflowXType, OverflowYType, ViewSizeType, ColorType, getGeneratedClassName } from './Engine';
7
7
  export type { FullBorderRadiusType, FullBorderStyleType, FullBorderWidthType, FullPaddingType, FullMarginType, FullGapType, FullDisplayType, FullVisibilityType, FullCursorType, FullOverflowType, FullOverflowXType, FullOverflowYType, FullColorType } from './Engine';
8
- export { default as Dock, DockCategory, DockAlignment } from './Layout/Dock';
8
+ export { default as Dock, DockCategory, DockAlignment, DockPopoverMode } from './Layout/Dock';
9
9
  export { default as Position, PositionCategory, PositionType } from './Layout/Position';
10
10
  export { default as PositionArea, PositionAreaCategory } from './Layout/PositionArea';
11
11
  export { default as Flex, FlexDirectionType, FlexWrapType, FlexJustifyContentType, FlexAlignItemsType, FlexAlignContentType } from './Layout/Flex';
@@ -110,6 +110,8 @@ export { default as VVideo } from './View/VVideo';
110
110
  export { default as VHeader } from './View/VHeader';
111
111
  export { default as VMain } from './View/VMain';
112
112
  export { default as VFooter } from './View/VFooter';
113
+ export { default as VAside } from './View/VAside';
114
+ export { default as VNav } from './View/VNav';
113
115
  export { default as VHR } from './View/VHR';
114
116
  export { default as VSection } from './View/VSection';
115
117
  export { default as VMask } from './View/VMask';