@fewbox/den-web 0.2.0-preview.4 → 0.2.0-preview.40
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/engine.js +2 -0
- package/engine.js.map +1 -0
- package/{index-constants.d.ts → index-engine.d.ts} +15 -22
- package/index.css +1 -1
- package/index.js +1 -1
- package/index.js.map +1 -1
- package/package.json +6 -8
- package/scripts/generate-packages.js +5 -8
- package/server.js +71 -0
- package/src/components/Engine/Base/index.d.ts +3 -3
- package/src/components/Engine/index.d.ts +21 -14
- package/src/components/Layout/Dock/DockPopoverOverlay/index.d.ts +13 -0
- package/src/components/Layout/Dock/DockPortalOverlay/index.d.ts +11 -0
- package/src/components/Layout/Dock/index.d.ts +8 -26
- package/src/components/Layout/Dock/types.d.ts +39 -0
- package/src/components/View/VAside/index.d.ts +5 -0
- package/src/components/View/VErrorBoundary/index.d.ts +1 -1
- package/src/components/View/VForm/index.d.ts +1 -0
- package/src/components/View/VInput/VDropdown/index.d.ts +2 -0
- package/src/components/View/VInput/VFile/index.d.ts +2 -1
- package/src/components/View/VNav/index.d.ts +5 -0
- package/src/components/View/VTextArea/index.d.ts +1 -4
- package/src/components/View/VTooltip/index.d.ts +2 -5
- package/src/components/View/VTree/Block/index.d.ts +1 -1
- package/src/components/View/VTree/index.d.ts +2 -6
- package/src/components/View/VTree/types.d.ts +6 -0
- package/src/components/core.d.ts +3 -1
- package/templates/.claude/skills/fewbox-den/SKILL.md +471 -434
- package/templates/FEWBOX.md +12 -35
- package/templates/style/_core.scss +12 -0
- package/templates/style/_root-properties.scss +4 -1
- package/templates/style/_variables.scss +13 -1
- package/tsconfig.app.tsbuildinfo +1 -1
- package/constants.js +0 -2
- package/constants.js.map +0 -1
- package/src/components/View/VDynamic/index.d.ts +0 -7
- package/src/components/app.d.ts +0 -21
- package/src/fewbox/index.d.ts +0 -42
- package/src/language/index.d.ts +0 -13
- package/src/network/FormHeaders.d.ts +0 -4
- package/src/network/IGraphQL.d.ts +0 -6
- package/src/network/JsonHeaders.d.ts +0 -5
- package/src/network/Network.d.ts +0 -45
- package/src/network/NetworkObservableBase.d.ts +0 -14
- package/src/network/StreamObservableBase.d.ts +0 -11
- package/src/network/UploadHeaders.d.ts +0 -4
- package/src/network/WS.d.ts +0 -11
- package/src/network/ajax/default/Delete.d.ts +0 -5
- package/src/network/ajax/default/DeleteText.d.ts +0 -5
- package/src/network/ajax/default/Get.d.ts +0 -5
- package/src/network/ajax/default/GetLocal.d.ts +0 -5
- package/src/network/ajax/default/GetText.d.ts +0 -5
- package/src/network/ajax/default/NetworkObservableAjax.d.ts +0 -7
- package/src/network/ajax/default/Patch.d.ts +0 -5
- package/src/network/ajax/default/PatchText.d.ts +0 -5
- package/src/network/ajax/default/Post.d.ts +0 -5
- package/src/network/ajax/default/PostText.d.ts +0 -5
- package/src/network/ajax/default/Put.d.ts +0 -5
- package/src/network/ajax/default/PutText.d.ts +0 -5
- package/src/network/ajax/external/DeleteExternal.d.ts +0 -5
- package/src/network/ajax/external/DeleteTextExternal.d.ts +0 -5
- package/src/network/ajax/external/GetExternal.d.ts +0 -5
- package/src/network/ajax/external/GetTextExternal.d.ts +0 -5
- package/src/network/ajax/external/NetworkObservableAjaxExternal.d.ts +0 -8
- package/src/network/ajax/external/PatchExternal.d.ts +0 -5
- package/src/network/ajax/external/PatchTextExternal.d.ts +0 -5
- package/src/network/ajax/external/PostExternal.d.ts +0 -5
- package/src/network/ajax/external/PostTextExternal.d.ts +0 -5
- package/src/network/ajax/external/PutExternal.d.ts +0 -5
- package/src/network/ajax/external/PutTextExternal.d.ts +0 -5
- package/src/network/fetch/default/DeleteFetch.d.ts +0 -5
- package/src/network/fetch/default/GetFetch.d.ts +0 -5
- package/src/network/fetch/default/NetworkObservableFetch.d.ts +0 -7
- package/src/network/fetch/default/PatchFetch.d.ts +0 -5
- package/src/network/fetch/default/PostFetch.d.ts +0 -5
- package/src/network/fetch/default/PutFetch.d.ts +0 -5
- package/src/network/fetch/external/DeleteFetchExternal.d.ts +0 -5
- package/src/network/fetch/external/GetFetchExternal.d.ts +0 -5
- package/src/network/fetch/external/NetworkObservableFetchExternal.d.ts +0 -8
- package/src/network/fetch/external/PatchFetchExternal.d.ts +0 -5
- package/src/network/fetch/external/PostFetchExternal.d.ts +0 -5
- package/src/network/fetch/external/PutFetchExternal.d.ts +0 -5
- package/src/network/graphql/default/GQL.d.ts +0 -6
- package/src/network/graphql/default/GQLUpload.d.ts +0 -5
- package/src/network/graphql/default/NetworkObservableGQL.d.ts +0 -7
- package/src/network/graphql/external/GQLExternal.d.ts +0 -6
- package/src/network/graphql/external/GQLExternalUpload.d.ts +0 -6
- package/src/network/graphql/external/NetworkObservableGQLExternal.d.ts +0 -7
- package/src/network/index.d.ts +0 -50
- package/src/network/sse/default/GetSSE.d.ts +0 -5
- package/src/network/sse/default/PostSSE.d.ts +0 -5
- package/src/network/sse/default/StreamObservableSSE.d.ts +0 -5
- package/src/network/sse/external/GetSSEExternal.d.ts +0 -5
- package/src/network/sse/external/PostSSEExternal.d.ts +0 -5
- package/src/network/sse/external/StreamObservableSSEExternal.d.ts +0 -6
- package/src/network/util.d.ts +0 -5
package/templates/FEWBOX.md
CHANGED
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
```shell
|
|
4
4
|
yarn add sass -D
|
|
5
5
|
yarn add jwt-decode
|
|
6
|
-
yarn add react-intl
|
|
7
6
|
|
|
8
7
|
```
|
|
9
8
|
```typescript
|
|
@@ -19,54 +18,32 @@ $body-color: #e1e1e1;
|
|
|
19
18
|
|
|
20
19
|
## 3. Use
|
|
21
20
|
```tsx
|
|
22
|
-
import {
|
|
23
|
-
|
|
21
|
+
import { VLabel, ColorType } from '@fewbox/den-web'; // @fewbox/den-app
|
|
22
|
+
|
|
23
|
+
<VLabel frontColor={ColorType.Primary} caption='Hello, FewBox!' />
|
|
24
24
|
```
|
|
25
25
|
|
|
26
26
|
## 4. Custom Component
|
|
27
27
|
```tsx
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
import {
|
|
31
|
-
import './index.scss';
|
|
32
|
-
|
|
33
|
-
export interface IClassComponentProps extends Den.Interface.IBaseProps {
|
|
34
|
-
message: string;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
export interface IClassComponentStates extends Den.Interface.IBaseStates {
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
export default class ClassComponent extends Den.Components.BaseComponent<IClassComponentProps, IClassComponentStates> {
|
|
41
|
-
render(): React.ReactNode {
|
|
42
|
-
return <Den.Components.VBoundary {...this.props} className={this.getClassName('class-component')} style={this.getStyle()}>
|
|
43
|
-
<Den.Components.VLabel caption={this.props.message} />
|
|
44
|
-
</Den.Components.VBoundary>;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
// Function Component
|
|
48
|
-
|
|
49
|
-
import { Den } from '@fewbox/den-web'; // @fewbox/den-app
|
|
28
|
+
import React from 'react';
|
|
29
|
+
import { Base, VBoundary, VLabel } from '@fewbox/den-web'; // @fewbox/den-app
|
|
30
|
+
import type { IBaseProps } from '@fewbox/den-web';
|
|
50
31
|
import './index.scss';
|
|
51
32
|
|
|
52
|
-
export interface IFunctionComponentProps extends
|
|
53
|
-
isSelected: boolean;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
export interface IFunctionComponentStates extends Den.Interface.IBaseStates {
|
|
33
|
+
export interface IFunctionComponentProps extends IBaseProps {
|
|
57
34
|
isSelected: boolean;
|
|
58
35
|
}
|
|
59
36
|
|
|
60
37
|
const FunctionComponent = (props: IFunctionComponentProps) => {
|
|
61
|
-
const { ...rest } = props;
|
|
62
|
-
const _base =
|
|
63
|
-
const [
|
|
38
|
+
const { isSelected, ...rest } = props;
|
|
39
|
+
const _base = Base(rest);
|
|
40
|
+
const [selected, setSelected] = React.useState(isSelected);
|
|
64
41
|
return (
|
|
65
|
-
<div className={_base.getClassName(`function-component${
|
|
42
|
+
<div className={_base.getClassName(`function-component${selected ? ' selected' : ''}`)} style={_base.getStyle()} {..._base.getProps('div').html}>
|
|
66
43
|
Click Me
|
|
67
44
|
</div>
|
|
68
45
|
);
|
|
69
46
|
}
|
|
70
47
|
|
|
71
48
|
export default FunctionComponent;
|
|
72
|
-
```
|
|
49
|
+
```
|
|
@@ -296,6 +296,18 @@ $border-positions: "all", "top", "right", "bottom", "left", "except-top", "excep
|
|
|
296
296
|
font-weight: var(#{v.$var-prefix}font-weight-#{$font-weight});
|
|
297
297
|
}
|
|
298
298
|
}
|
|
299
|
+
/* gap */
|
|
300
|
+
@each $gap, $value in v.$gaps {
|
|
301
|
+
.gap-#{$gap} {
|
|
302
|
+
gap: var(#{v.$var-prefix}gap-#{$gap});
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
/* letter-spacing */
|
|
306
|
+
@each $letter-spacing, $value in v.$letter-spacings {
|
|
307
|
+
.letter-spacing-#{$letter-spacing} {
|
|
308
|
+
letter-spacing: var(#{v.$var-prefix}letter-spacing-#{$letter-spacing});
|
|
309
|
+
}
|
|
310
|
+
}
|
|
299
311
|
/* padding */
|
|
300
312
|
@each $padding, $value in v.$paddings {
|
|
301
313
|
.padding-#{$padding} {
|
|
@@ -75,6 +75,9 @@
|
|
|
75
75
|
#{v.$var-prefix}font-size: #{v.$font-size};
|
|
76
76
|
#{v.$var-prefix}line-height: #{v.$line-height};
|
|
77
77
|
#{v.$var-prefix}letter-spacing: #{v.$letter-spacing};
|
|
78
|
+
@each $letter-spacing, $value in v.$letter-spacings {
|
|
79
|
+
#{v.$var-prefix}letter-spacing-#{$letter-spacing}: #{$value};
|
|
80
|
+
}
|
|
78
81
|
#{v.$var-prefix}padding: #{v.$padding};
|
|
79
82
|
#{v.$var-prefix}margin: #{v.$margin};
|
|
80
83
|
#{v.$var-prefix}box-sizing: #{v.$box-sizing};
|
|
@@ -93,7 +96,7 @@
|
|
|
93
96
|
#{v.$var-prefix}v-image-size: #{v.$v-image-size};
|
|
94
97
|
#{v.$var-prefix}v-svg-size: #{v.$v-svg-size};
|
|
95
98
|
#{v.$var-prefix}v-window--size: #{v.$v-window-size};
|
|
96
|
-
|
|
99
|
+
#{v.$var-prefix}position-offset: #{v.$position-offset};
|
|
97
100
|
|
|
98
101
|
*,
|
|
99
102
|
::before,
|
|
@@ -129,7 +129,7 @@ $margins: (
|
|
|
129
129
|
"extra-large": $margin-extra-large,
|
|
130
130
|
);
|
|
131
131
|
//left right top bottom offset
|
|
132
|
-
$
|
|
132
|
+
$position-offset: 1em;
|
|
133
133
|
//border
|
|
134
134
|
$border-radius-normal: 0.4rem;
|
|
135
135
|
$border-radius-extra-small: $border-radius-normal * 0.25;
|
|
@@ -252,6 +252,18 @@ $scrollbar-radius: 8px;
|
|
|
252
252
|
/*------------------*/
|
|
253
253
|
$line-height: 1.4;
|
|
254
254
|
$letter-spacing: 0.01em;
|
|
255
|
+
$letter-spacing-normal: 0.05em;
|
|
256
|
+
$letter-spacing-extra-small: $letter-spacing-normal * 0.5;
|
|
257
|
+
$letter-spacing-small: $letter-spacing-normal * 0.8;
|
|
258
|
+
$letter-spacing-large: $letter-spacing-normal * 1.4;
|
|
259
|
+
$letter-spacing-extra-large: $letter-spacing-normal * 2.4;
|
|
260
|
+
$letter-spacings: (
|
|
261
|
+
"normal": $letter-spacing-normal,
|
|
262
|
+
"extra-small": $letter-spacing-extra-small,
|
|
263
|
+
"small": $letter-spacing-small,
|
|
264
|
+
"large": $letter-spacing-large,
|
|
265
|
+
"extra-large": $letter-spacing-extra-large,
|
|
266
|
+
);
|
|
255
267
|
$font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji",
|
|
256
268
|
"Segoe UI Emoji", "Segoe UI Symbol";
|
|
257
269
|
$font-size: 1em; // 16px * 0.875 = 14px;
|