@dynamic-field-kit/core 1.0.5 → 1.0.7
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/index.d.mts +7 -1
- package/dist/index.d.ts +7 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +3 -3
- package/dist/index.mjs.map +1 -1
- package/package.json +16 -3
package/dist/index.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { JSX } from 'react';
|
|
1
|
+
import { ReactNode, JSX } from 'react';
|
|
2
2
|
|
|
3
3
|
type FieldTypeKey = keyof FieldTypeMap & string;
|
|
4
4
|
interface FieldTypeMap {
|
|
@@ -8,12 +8,18 @@ interface FieldRendererProps<T = any> {
|
|
|
8
8
|
value?: T;
|
|
9
9
|
onValueChange?: (value: T) => void;
|
|
10
10
|
label?: string;
|
|
11
|
+
options?: Properties[];
|
|
12
|
+
className?: string;
|
|
13
|
+
description?: ReactNode;
|
|
11
14
|
}
|
|
12
15
|
interface FieldDescription<T extends FieldTypeKey = FieldTypeKey> {
|
|
13
16
|
name: string;
|
|
14
17
|
type: T;
|
|
15
18
|
label?: string;
|
|
16
19
|
appearCondition?: (data: Properties) => boolean;
|
|
20
|
+
options?: Properties[];
|
|
21
|
+
className?: string;
|
|
22
|
+
description?: ReactNode;
|
|
17
23
|
}
|
|
18
24
|
|
|
19
25
|
type FieldRenderer<T = any> = (props: FieldRendererProps<T>) => JSX.Element;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { JSX } from 'react';
|
|
1
|
+
import { ReactNode, JSX } from 'react';
|
|
2
2
|
|
|
3
3
|
type FieldTypeKey = keyof FieldTypeMap & string;
|
|
4
4
|
interface FieldTypeMap {
|
|
@@ -8,12 +8,18 @@ interface FieldRendererProps<T = any> {
|
|
|
8
8
|
value?: T;
|
|
9
9
|
onValueChange?: (value: T) => void;
|
|
10
10
|
label?: string;
|
|
11
|
+
options?: Properties[];
|
|
12
|
+
className?: string;
|
|
13
|
+
description?: ReactNode;
|
|
11
14
|
}
|
|
12
15
|
interface FieldDescription<T extends FieldTypeKey = FieldTypeKey> {
|
|
13
16
|
name: string;
|
|
14
17
|
type: T;
|
|
15
18
|
label?: string;
|
|
16
19
|
appearCondition?: (data: Properties) => boolean;
|
|
20
|
+
options?: Properties[];
|
|
21
|
+
className?: string;
|
|
22
|
+
description?: ReactNode;
|
|
17
23
|
}
|
|
18
24
|
|
|
19
25
|
type FieldRenderer<T = any> = (props: FieldRendererProps<T>) => JSX.Element;
|
package/dist/index.js
CHANGED
|
@@ -25,13 +25,13 @@ __export(index_exports, {
|
|
|
25
25
|
});
|
|
26
26
|
module.exports = __toCommonJS(index_exports);
|
|
27
27
|
|
|
28
|
-
// src/
|
|
28
|
+
// src/FieldRegistry.ts
|
|
29
29
|
var FieldRegistry = class {
|
|
30
30
|
constructor() {
|
|
31
|
-
// ❗ INTERNAL = string,
|
|
31
|
+
// ❗ INTERNAL = string, not constrain
|
|
32
32
|
this.registry = {};
|
|
33
33
|
}
|
|
34
|
-
// ✅ Type safety
|
|
34
|
+
// ✅ Type safety API
|
|
35
35
|
register(type, renderer) {
|
|
36
36
|
this.registry[type] = renderer;
|
|
37
37
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/FieldRegistry.ts"],"sourcesContent":["export * from \"./types\"\r\nexport * from \"./FieldRegistry\"\r\n","import { JSX } from \"react\"\r\nimport type { FieldRendererProps, FieldTypeMap } from \"./types\"\r\n\r\nexport type FieldRenderer<T = any> = (props: FieldRendererProps<T>) => JSX.Element\r\n\r\nexport class FieldRegistry {\r\n // ❗ INTERNAL = string, not constrain\r\n private registry: Record<string, FieldRenderer<any>> = {}\r\n\r\n // ✅ Type safety API\r\n register<K extends keyof FieldTypeMap>(\r\n type: K,\r\n renderer: FieldRenderer<FieldTypeMap[K]>\r\n ) {\r\n this.registry[type as string] = renderer\r\n }\r\n\r\n get<K extends keyof FieldTypeMap>(\r\n type: K\r\n ): FieldRenderer<FieldTypeMap[K]> | undefined {\r\n return this.registry[type as string]\r\n }\r\n}\r\n\r\nexport const fieldRegistry = new FieldRegistry()\r\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACKO,IAAM,gBAAN,MAAoB;AAAA,EAApB;AAEH;AAAA,SAAQ,WAA+C,CAAC;AAAA;AAAA;AAAA,EAGxD,SACI,MACA,UACF;AACE,SAAK,SAAS,IAAc,IAAI;AAAA,EACpC;AAAA,EAEA,IACI,MAC0C;AAC1C,WAAO,KAAK,SAAS,IAAc;AAAA,EACvC;AACJ;AAEO,IAAM,gBAAgB,IAAI,cAAc;","names":[]}
|
package/dist/index.mjs
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
// src/
|
|
1
|
+
// src/FieldRegistry.ts
|
|
2
2
|
var FieldRegistry = class {
|
|
3
3
|
constructor() {
|
|
4
|
-
// ❗ INTERNAL = string,
|
|
4
|
+
// ❗ INTERNAL = string, not constrain
|
|
5
5
|
this.registry = {};
|
|
6
6
|
}
|
|
7
|
-
// ✅ Type safety
|
|
7
|
+
// ✅ Type safety API
|
|
8
8
|
register(type, renderer) {
|
|
9
9
|
this.registry[type] = renderer;
|
|
10
10
|
}
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/
|
|
1
|
+
{"version":3,"sources":["../src/FieldRegistry.ts"],"sourcesContent":["import { JSX } from \"react\"\r\nimport type { FieldRendererProps, FieldTypeMap } from \"./types\"\r\n\r\nexport type FieldRenderer<T = any> = (props: FieldRendererProps<T>) => JSX.Element\r\n\r\nexport class FieldRegistry {\r\n // ❗ INTERNAL = string, not constrain\r\n private registry: Record<string, FieldRenderer<any>> = {}\r\n\r\n // ✅ Type safety API\r\n register<K extends keyof FieldTypeMap>(\r\n type: K,\r\n renderer: FieldRenderer<FieldTypeMap[K]>\r\n ) {\r\n this.registry[type as string] = renderer\r\n }\r\n\r\n get<K extends keyof FieldTypeMap>(\r\n type: K\r\n ): FieldRenderer<FieldTypeMap[K]> | undefined {\r\n return this.registry[type as string]\r\n }\r\n}\r\n\r\nexport const fieldRegistry = new FieldRegistry()\r\n"],"mappings":";AAKO,IAAM,gBAAN,MAAoB;AAAA,EAApB;AAEH;AAAA,SAAQ,WAA+C,CAAC;AAAA;AAAA;AAAA,EAGxD,SACI,MACA,UACF;AACE,SAAK,SAAS,IAAc,IAAI;AAAA,EACpC;AAAA,EAEA,IACI,MAC0C;AAC1C,WAAO,KAAK,SAAS,IAAc;AAAA,EACvC;AACJ;AAEO,IAAM,gBAAgB,IAAI,cAAc;","names":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-field-kit/core",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.7",
|
|
4
4
|
"description": "Core types and field registry for dynamic-field-kit",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "dist/index.cjs",
|
|
@@ -19,6 +19,19 @@
|
|
|
19
19
|
},
|
|
20
20
|
"scripts": {
|
|
21
21
|
"build": "tsup",
|
|
22
|
-
"clean": "rm -rf dist"
|
|
23
|
-
|
|
22
|
+
"clean": "rm -rf dist",
|
|
23
|
+
"prepublishOnly": "npm run clean && npm run build",
|
|
24
|
+
"release:patch": "npm version patch && npm publish",
|
|
25
|
+
"release:minor": "npm version minor && npm publish",
|
|
26
|
+
"release:major": "npm version major && npm publish"
|
|
27
|
+
},
|
|
28
|
+
"repository": {
|
|
29
|
+
"type": "git",
|
|
30
|
+
"url": "git+https://github.com/vannt-dev/dynamic-field-kit.git"
|
|
31
|
+
},
|
|
32
|
+
"keywords": [
|
|
33
|
+
"dynamic-field",
|
|
34
|
+
"dynamic-field-kit",
|
|
35
|
+
"dynamic-field-kit/core"
|
|
36
|
+
]
|
|
24
37
|
}
|