@fxhash/params 0.0.5 → 0.0.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/dist/BaseInput.cjs +13 -0
- package/dist/BaseInput.cjs.map +1 -0
- package/dist/BaseInput.css +112 -0
- package/dist/BaseInput.css.map +1 -0
- package/dist/BaseInput.d.ts +12 -0
- package/dist/BaseInput.js +13 -0
- package/dist/BaseInput.js.map +1 -0
- package/dist/Context.cjs +49 -0
- package/dist/Context.cjs.map +1 -0
- package/dist/Context.d.ts +19 -0
- package/dist/Context.js +49 -0
- package/dist/Context.js.map +1 -0
- package/dist/Controller/BigInt.cjs +10 -0
- package/dist/Controller/BigInt.cjs.map +1 -0
- package/dist/Controller/BigInt.css +183 -0
- package/dist/Controller/BigInt.css.map +1 -0
- package/dist/Controller/BigInt.d.ts +8 -0
- package/dist/Controller/BigInt.js +10 -0
- package/dist/Controller/BigInt.js.map +1 -0
- package/dist/Controller/Boolean.cjs +9 -0
- package/dist/Controller/Boolean.cjs.map +1 -0
- package/dist/Controller/Boolean.css +183 -0
- package/dist/Controller/Boolean.css.map +1 -0
- package/dist/Controller/Boolean.d.ts +8 -0
- package/dist/Controller/Boolean.js +9 -0
- package/dist/Controller/Boolean.js.map +1 -0
- package/dist/Controller/Bytes.cjs +9 -0
- package/dist/Controller/Bytes.cjs.map +1 -0
- package/dist/Controller/Bytes.css +191 -0
- package/dist/Controller/Bytes.css.map +1 -0
- package/dist/Controller/Bytes.d.ts +8 -0
- package/dist/Controller/Bytes.js +9 -0
- package/dist/Controller/Bytes.js.map +1 -0
- package/dist/Controller/Color.cjs +10 -0
- package/dist/Controller/Color.cjs.map +1 -0
- package/dist/Controller/Color.css +227 -0
- package/dist/Controller/Color.css.map +1 -0
- package/dist/Controller/Color.d.ts +8 -0
- package/dist/Controller/Color.js +10 -0
- package/dist/Controller/Color.js.map +1 -0
- package/dist/Controller/Controller.cjs +14 -0
- package/dist/Controller/Controller.cjs.map +1 -0
- package/dist/Controller/Controller.css +183 -0
- package/dist/Controller/Controller.css.map +1 -0
- package/dist/Controller/Controller.d.ts +41 -0
- package/dist/Controller/Controller.js +14 -0
- package/dist/Controller/Controller.js.map +1 -0
- package/dist/Controller/Invalid.cjs +7 -0
- package/dist/Controller/Invalid.cjs.map +1 -0
- package/dist/Controller/Invalid.css +48 -0
- package/dist/Controller/Invalid.css.map +1 -0
- package/dist/Controller/Invalid.d.ts +11 -0
- package/dist/Controller/Invalid.js +7 -0
- package/dist/Controller/Invalid.js.map +1 -0
- package/dist/Controller/Number.cjs +9 -0
- package/dist/Controller/Number.cjs.map +1 -0
- package/dist/Controller/Number.css +183 -0
- package/dist/Controller/Number.css.map +1 -0
- package/dist/Controller/Number.d.ts +8 -0
- package/dist/Controller/Number.js +9 -0
- package/dist/Controller/Number.js.map +1 -0
- package/dist/Controller/Param.cjs +21 -0
- package/dist/Controller/Param.cjs.map +1 -0
- package/dist/Controller/Param.css +283 -0
- package/dist/Controller/Param.css.map +1 -0
- package/dist/Controller/Param.d.ts +25 -0
- package/dist/Controller/Param.js +21 -0
- package/dist/Controller/Param.js.map +1 -0
- package/dist/Controller/Select.cjs +9 -0
- package/dist/Controller/Select.cjs.map +1 -0
- package/dist/Controller/Select.css +183 -0
- package/dist/Controller/Select.css.map +1 -0
- package/dist/Controller/Select.d.ts +8 -0
- package/dist/Controller/Select.js +9 -0
- package/dist/Controller/Select.js.map +1 -0
- package/dist/Controller/String.cjs +9 -0
- package/dist/Controller/String.cjs.map +1 -0
- package/dist/Controller/String.css +183 -0
- package/dist/Controller/String.css.map +1 -0
- package/dist/Controller/String.d.ts +8 -0
- package/dist/Controller/String.js +9 -0
- package/dist/Controller/String.js.map +1 -0
- package/dist/Controls.cjs +102 -0
- package/dist/Controls.cjs.map +1 -0
- package/dist/Controls.css +304 -0
- package/dist/Controls.css.map +1 -0
- package/dist/Controls.d.ts +17 -0
- package/dist/Controls.js +102 -0
- package/dist/Controls.js.map +1 -0
- package/dist/LockButton/LockButton.cjs +8 -0
- package/dist/LockButton/LockButton.cjs.map +1 -0
- package/dist/LockButton/LockButton.css +117 -0
- package/dist/LockButton/LockButton.css.map +1 -0
- package/dist/LockButton/LockButton.d.ts +11 -0
- package/dist/LockButton/LockButton.js +8 -0
- package/dist/LockButton/LockButton.js.map +1 -0
- package/dist/ParamsHistory.cjs +89 -0
- package/dist/ParamsHistory.cjs.map +1 -0
- package/dist/ParamsHistory.d.ts +22 -0
- package/dist/ParamsHistory.js +89 -0
- package/dist/ParamsHistory.js.map +1 -0
- package/dist/RuntimeContext.cjs +10 -0
- package/dist/RuntimeContext.cjs.map +1 -0
- package/dist/RuntimeContext.d.ts +44 -0
- package/dist/RuntimeContext.js +10 -0
- package/dist/RuntimeContext.js.map +1 -0
- package/dist/chunk-2BHABOFI.js +43 -0
- package/dist/chunk-2BHABOFI.js.map +1 -0
- package/dist/chunk-2QIAF3U7.js +39 -0
- package/dist/chunk-2QIAF3U7.js.map +1 -0
- package/dist/chunk-4OV7OX5A.js +37 -0
- package/dist/chunk-4OV7OX5A.js.map +1 -0
- package/dist/chunk-57UENWLF.js +110 -0
- package/dist/chunk-57UENWLF.js.map +1 -0
- package/dist/chunk-6VMIOQSE.js +34 -0
- package/dist/chunk-6VMIOQSE.js.map +1 -0
- package/dist/chunk-C6GTVBY6.cjs +46 -0
- package/dist/chunk-C6GTVBY6.cjs.map +1 -0
- package/dist/chunk-CE3TPOSO.js +135 -0
- package/dist/chunk-CE3TPOSO.js.map +1 -0
- package/dist/chunk-D4RVVQC7.cjs +23 -0
- package/dist/chunk-D4RVVQC7.cjs.map +1 -0
- package/dist/chunk-EACKNC6C.cjs +103 -0
- package/dist/chunk-EACKNC6C.cjs.map +1 -0
- package/dist/chunk-FZWZHHQ2.js +398 -0
- package/dist/chunk-FZWZHHQ2.js.map +1 -0
- package/dist/chunk-H5IMTNFG.js +44 -0
- package/dist/chunk-H5IMTNFG.js.map +1 -0
- package/dist/chunk-HJBHIE5T.cjs +135 -0
- package/dist/chunk-HJBHIE5T.cjs.map +1 -0
- package/dist/chunk-JAU4ONF2.cjs +24 -0
- package/dist/chunk-JAU4ONF2.cjs.map +1 -0
- package/dist/chunk-K4EW6YY3.cjs +34 -0
- package/dist/chunk-K4EW6YY3.cjs.map +1 -0
- package/dist/chunk-KZMSUHQX.cjs +120 -0
- package/dist/chunk-KZMSUHQX.cjs.map +1 -0
- package/dist/chunk-LX23UR4X.cjs +115 -0
- package/dist/chunk-LX23UR4X.cjs.map +1 -0
- package/dist/chunk-MWP7SJWC.js +103 -0
- package/dist/chunk-MWP7SJWC.js.map +1 -0
- package/dist/chunk-OFUKQ2TB.cjs +43 -0
- package/dist/chunk-OFUKQ2TB.cjs.map +1 -0
- package/dist/chunk-P77D7XSP.js +46 -0
- package/dist/chunk-P77D7XSP.js.map +1 -0
- package/dist/chunk-PTXBICTZ.js +67 -0
- package/dist/chunk-PTXBICTZ.js.map +1 -0
- package/dist/chunk-QDLMFMLL.cjs +398 -0
- package/dist/chunk-QDLMFMLL.cjs.map +1 -0
- package/dist/chunk-QM6EKPI6.cjs +67 -0
- package/dist/chunk-QM6EKPI6.cjs.map +1 -0
- package/dist/chunk-TKKYM77A.cjs +44 -0
- package/dist/chunk-TKKYM77A.cjs.map +1 -0
- package/dist/chunk-VED7SCYX.cjs +39 -0
- package/dist/chunk-VED7SCYX.cjs.map +1 -0
- package/dist/chunk-X4O42D2P.cjs +37 -0
- package/dist/chunk-X4O42D2P.cjs.map +1 -0
- package/dist/chunk-YOS2HCIS.js +23 -0
- package/dist/chunk-YOS2HCIS.js.map +1 -0
- package/dist/chunk-YXDLGCFJ.cjs +110 -0
- package/dist/chunk-YXDLGCFJ.cjs.map +1 -0
- package/dist/chunk-YYEIYDDF.js +24 -0
- package/dist/chunk-YYEIYDDF.js.map +1 -0
- package/dist/chunk-Z7K2LNS2.js +115 -0
- package/dist/chunk-Z7K2LNS2.js.map +1 -0
- package/dist/chunk-ZG3OT7LF.js +120 -0
- package/dist/chunk-ZG3OT7LF.js.map +1 -0
- package/dist/hooks.cjs +29 -0
- package/dist/hooks.cjs.map +1 -0
- package/dist/hooks.d.ts +6 -0
- package/dist/hooks.js +29 -0
- package/dist/hooks.js.map +1 -0
- package/dist/index.cjs +7 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.css +112 -0
- package/dist/index.css.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -0
- package/dist/types.cjs +1 -0
- package/dist/types.cjs.map +1 -0
- package/dist/types.d.ts +100 -0
- package/dist/types.js +1 -0
- package/dist/types.js.map +1 -0
- package/dist/utils.cjs +33 -0
- package/dist/utils.cjs.map +1 -0
- package/dist/utils.d.ts +50 -0
- package/dist/utils.js +33 -0
- package/dist/utils.js.map +1 -0
- package/dist/validation.cjs +9 -0
- package/dist/validation.cjs.map +1 -0
- package/dist/validation.d.ts +241 -0
- package/dist/validation.js +9 -0
- package/dist/validation.js.map +1 -0
- package/package.json +1 -1
@@ -0,0 +1,103 @@
|
|
1
|
+
// src/validation.ts
|
2
|
+
import { z } from "zod";
|
3
|
+
var ControllerTypeSchema = z.enum([
|
4
|
+
"number",
|
5
|
+
"bigint",
|
6
|
+
"color",
|
7
|
+
"string",
|
8
|
+
"bytes",
|
9
|
+
"boolean",
|
10
|
+
"select"
|
11
|
+
]);
|
12
|
+
var FxParamOptions_bigintSchema = z.object({
|
13
|
+
min: z.number().or(z.bigint()).optional(),
|
14
|
+
max: z.number().or(z.bigint()).optional()
|
15
|
+
});
|
16
|
+
var FxParamOptions_numberSchema = z.object({
|
17
|
+
min: z.number().gte(Number.MIN_SAFE_INTEGER).optional(),
|
18
|
+
max: z.number().lte(Number.MAX_SAFE_INTEGER).optional(),
|
19
|
+
step: z.number().optional()
|
20
|
+
});
|
21
|
+
var FxParamOptions_stringSchema = z.object({
|
22
|
+
minLength: z.number().gte(0).optional(),
|
23
|
+
maxLength: z.number().optional()
|
24
|
+
});
|
25
|
+
var FxParamOptions_bytesSchema = z.object({
|
26
|
+
length: z.number().gt(0)
|
27
|
+
});
|
28
|
+
var FxParamOptions_selectSchema = z.object({
|
29
|
+
options: z.string().array().nonempty()
|
30
|
+
});
|
31
|
+
var BaseControllerDefinitionSchema = z.object({
|
32
|
+
id: z.string(),
|
33
|
+
name: z.string().optional(),
|
34
|
+
exposedAsFeature: z.boolean().optional()
|
35
|
+
});
|
36
|
+
var StringControllerSchema = BaseControllerDefinitionSchema.extend({
|
37
|
+
type: z.literal(ControllerTypeSchema.enum.string),
|
38
|
+
options: FxParamOptions_stringSchema.optional(),
|
39
|
+
default: z.string().optional()
|
40
|
+
});
|
41
|
+
var BytesControllerSchema = BaseControllerDefinitionSchema.extend({
|
42
|
+
type: z.literal(ControllerTypeSchema.enum.bytes),
|
43
|
+
options: FxParamOptions_bytesSchema,
|
44
|
+
default: z.any().optional(),
|
45
|
+
update: z.literal("code-driven", {
|
46
|
+
invalid_type_error: "Bytes parameters must be code-driven",
|
47
|
+
required_error: "Bytes parameters must be code-driven"
|
48
|
+
})
|
49
|
+
});
|
50
|
+
var NumberControllerSchema = BaseControllerDefinitionSchema.extend({
|
51
|
+
type: z.literal(ControllerTypeSchema.enum.number),
|
52
|
+
options: FxParamOptions_numberSchema.optional(),
|
53
|
+
default: z.number().gte(Number.MIN_SAFE_INTEGER).lte(Number.MAX_SAFE_INTEGER).optional()
|
54
|
+
});
|
55
|
+
var BigIntControllerSchema = BaseControllerDefinitionSchema.extend({
|
56
|
+
type: z.literal(ControllerTypeSchema.enum.bigint),
|
57
|
+
options: FxParamOptions_bigintSchema.optional(),
|
58
|
+
default: z.bigint().optional()
|
59
|
+
});
|
60
|
+
var SelectControllerSchema = BaseControllerDefinitionSchema.extend({
|
61
|
+
type: z.literal(ControllerTypeSchema.enum.select),
|
62
|
+
options: FxParamOptions_selectSchema,
|
63
|
+
default: z.string().optional()
|
64
|
+
});
|
65
|
+
var BooleanControllerSchema = BaseControllerDefinitionSchema.extend({
|
66
|
+
type: z.literal(ControllerTypeSchema.enum.boolean),
|
67
|
+
options: z.undefined(),
|
68
|
+
default: z.boolean().optional()
|
69
|
+
});
|
70
|
+
var ColorControllerSchema = BaseControllerDefinitionSchema.extend({
|
71
|
+
type: z.literal(ControllerTypeSchema.enum.color),
|
72
|
+
options: z.undefined(),
|
73
|
+
default: z.string().optional()
|
74
|
+
});
|
75
|
+
var ControllerDefinitionSchema = z.union([
|
76
|
+
StringControllerSchema,
|
77
|
+
NumberControllerSchema,
|
78
|
+
BigIntControllerSchema,
|
79
|
+
SelectControllerSchema,
|
80
|
+
BytesControllerSchema,
|
81
|
+
BooleanControllerSchema,
|
82
|
+
ColorControllerSchema
|
83
|
+
]);
|
84
|
+
var controllerSchema = {
|
85
|
+
number: NumberControllerSchema,
|
86
|
+
bigint: BigIntControllerSchema,
|
87
|
+
color: ColorControllerSchema,
|
88
|
+
string: StringControllerSchema,
|
89
|
+
bytes: BytesControllerSchema,
|
90
|
+
boolean: BooleanControllerSchema,
|
91
|
+
select: SelectControllerSchema
|
92
|
+
};
|
93
|
+
function validateParameterDefinition(parameterDefinition) {
|
94
|
+
return controllerSchema[parameterDefinition.type]?.safeParse(
|
95
|
+
parameterDefinition
|
96
|
+
);
|
97
|
+
}
|
98
|
+
|
99
|
+
export {
|
100
|
+
BaseControllerDefinitionSchema,
|
101
|
+
validateParameterDefinition
|
102
|
+
};
|
103
|
+
//# sourceMappingURL=chunk-MWP7SJWC.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../src/validation.ts"],"sourcesContent":["import { SafeParseError, SafeParseSuccess, z } from \"zod\"\nimport { FxParamDefinition, FxParamType } from \"./types\"\n\nconst ControllerTypeSchema = z.enum([\n \"number\",\n \"bigint\",\n \"color\",\n \"string\",\n \"bytes\",\n \"boolean\",\n \"select\",\n])\n\nconst FxParamOptions_bigintSchema = z.object({\n min: z.number().or(z.bigint()).optional(),\n max: z.number().or(z.bigint()).optional(),\n})\n\nconst FxParamOptions_numberSchema = z.object({\n min: z.number().gte(Number.MIN_SAFE_INTEGER).optional(),\n max: z.number().lte(Number.MAX_SAFE_INTEGER).optional(),\n step: z.number().optional(),\n})\n\nconst FxParamOptions_stringSchema = z.object({\n minLength: z.number().gte(0).optional(),\n maxLength: z.number().optional(),\n})\n\nconst FxParamOptions_bytesSchema = z.object({\n length: z.number().gt(0),\n})\n\nconst FxParamOptions_selectSchema = z.object({\n options: z.string().array().nonempty(),\n})\n\nexport const BaseControllerDefinitionSchema = z.object({\n id: z.string(),\n name: z.string().optional(),\n exposedAsFeature: z.boolean().optional(),\n})\n\nconst StringControllerSchema = BaseControllerDefinitionSchema.extend({\n type: z.literal(ControllerTypeSchema.enum.string),\n options: FxParamOptions_stringSchema.optional(),\n default: z.string().optional(),\n})\n\nconst BytesControllerSchema = BaseControllerDefinitionSchema.extend({\n type: z.literal(ControllerTypeSchema.enum.bytes),\n options: FxParamOptions_bytesSchema,\n default: z.any().optional(),\n update: z.literal(\"code-driven\", {\n invalid_type_error: \"Bytes parameters must be code-driven\",\n required_error: \"Bytes parameters must be code-driven\",\n }),\n})\n\nconst NumberControllerSchema = BaseControllerDefinitionSchema.extend({\n type: z.literal(ControllerTypeSchema.enum.number),\n options: FxParamOptions_numberSchema.optional(),\n default: z\n .number()\n .gte(Number.MIN_SAFE_INTEGER)\n .lte(Number.MAX_SAFE_INTEGER)\n .optional(),\n})\n\nconst BigIntControllerSchema = BaseControllerDefinitionSchema.extend({\n type: z.literal(ControllerTypeSchema.enum.bigint),\n options: FxParamOptions_bigintSchema.optional(),\n default: z.bigint().optional(),\n})\n\nconst SelectControllerSchema = BaseControllerDefinitionSchema.extend({\n type: z.literal(ControllerTypeSchema.enum.select),\n options: FxParamOptions_selectSchema,\n default: z.string().optional(),\n})\n\nconst BooleanControllerSchema = BaseControllerDefinitionSchema.extend({\n type: z.literal(ControllerTypeSchema.enum.boolean),\n options: z.undefined(),\n default: z.boolean().optional(),\n})\n\nconst ColorControllerSchema = BaseControllerDefinitionSchema.extend({\n type: z.literal(ControllerTypeSchema.enum.color),\n options: z.undefined(),\n default: z.string().optional(),\n})\n\nconst ControllerDefinitionSchema = z.union([\n StringControllerSchema,\n NumberControllerSchema,\n BigIntControllerSchema,\n SelectControllerSchema,\n BytesControllerSchema,\n BooleanControllerSchema,\n ColorControllerSchema,\n])\n\nexport type ControllerDefinitionSchemaType = z.infer<\n typeof ControllerDefinitionSchema\n>\n\nconst controllerSchema = {\n number: NumberControllerSchema,\n bigint: BigIntControllerSchema,\n color: ColorControllerSchema,\n string: StringControllerSchema,\n bytes: BytesControllerSchema,\n boolean: BooleanControllerSchema,\n select: SelectControllerSchema,\n}\n\nexport function validateParameterDefinition(\n parameterDefinition: FxParamDefinition<FxParamType>\n):\n | SafeParseError<ControllerDefinitionSchemaType>\n | SafeParseSuccess<ControllerDefinitionSchemaType>\n | undefined {\n return controllerSchema[parameterDefinition.type]?.safeParse(\n parameterDefinition\n )\n}\n"],"mappings":"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","names":[]}
|
@@ -0,0 +1,43 @@
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }// src/BaseInput.module.scss
|
2
|
+
var BaseInput_module_default = {
|
3
|
+
"baseInput": "_baseInput_jtvfw_1",
|
4
|
+
"baseSelect": "_baseSelect_jtvfw_1",
|
5
|
+
"baseButton": "_baseButton_jtvfw_1",
|
6
|
+
"color-secondary": "_color-secondary_jtvfw_37",
|
7
|
+
"iconButton": "_iconButton_jtvfw_47"
|
8
|
+
};
|
9
|
+
|
10
|
+
// src/BaseInput.tsx
|
11
|
+
var _classnames = require('classnames'); var _classnames2 = _interopRequireDefault(_classnames);
|
12
|
+
var _jsxruntime = require('react/jsx-runtime');
|
13
|
+
function BaseInput(props) {
|
14
|
+
const { className, ...rest } = props;
|
15
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "input", { className: _classnames2.default.call(void 0, BaseInput_module_default.baseInput, className), ...rest });
|
16
|
+
}
|
17
|
+
function BaseSelect(props) {
|
18
|
+
const { className, ...rest } = props;
|
19
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "select", { className: _classnames2.default.call(void 0, BaseInput_module_default.baseSelect, className), ...rest });
|
20
|
+
}
|
21
|
+
function BaseButton(props) {
|
22
|
+
const { className, color = "primary", ...rest } = props;
|
23
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
24
|
+
"button",
|
25
|
+
{
|
26
|
+
type: "button",
|
27
|
+
className: _classnames2.default.call(void 0, BaseInput_module_default.baseButton, BaseInput_module_default[`color-${color}`], className),
|
28
|
+
...rest
|
29
|
+
}
|
30
|
+
);
|
31
|
+
}
|
32
|
+
function IconButton(props) {
|
33
|
+
const { className, ...rest } = props;
|
34
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, BaseButton, { className: _classnames2.default.call(void 0, BaseInput_module_default.iconButton, className), ...rest });
|
35
|
+
}
|
36
|
+
|
37
|
+
|
38
|
+
|
39
|
+
|
40
|
+
|
41
|
+
|
42
|
+
exports.BaseInput = BaseInput; exports.BaseSelect = BaseSelect; exports.BaseButton = BaseButton; exports.IconButton = IconButton;
|
43
|
+
//# sourceMappingURL=chunk-OFUKQ2TB.cjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../src/BaseInput.module.scss","../src/BaseInput.tsx"],"names":[],"mappings":";AAA6C,IAAO,2BAAQ;AAAA,EAC1D,aAAa;AAAA,EACb,cAAc;AAAA,EACd,cAAc;AAAA,EACd,mBAAmB;AAAA,EACnB,cAAc;AAChB;;;ACCA,OAAO,QAAQ;AAIN;AAFF,SAAS,UAAU,OAA8C;AACtE,QAAM,EAAE,WAAW,GAAG,KAAK,IAAI;AAC/B,SAAO,oBAAC,WAAM,WAAW,GAAG,yBAAQ,WAAW,SAAS,GAAI,GAAG,MAAM;AACvE;AAEO,SAAS,WAAW,OAAgD;AACzE,QAAM,EAAE,WAAW,GAAG,KAAK,IAAI;AAC/B,SAAO,oBAAC,YAAO,WAAW,GAAG,yBAAQ,YAAY,SAAS,GAAI,GAAG,MAAM;AACzE;AAOO,SAAS,WAAW,OAAwB;AACjD,QAAM,EAAE,WAAW,QAAQ,WAAW,GAAG,KAAK,IAAI;AAClD,SACE;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MACL,WAAW,GAAG,yBAAQ,YAAY,yBAAQ,SAAS,OAAO,GAAG,SAAS;AAAA,MACrE,GAAG;AAAA;AAAA,EACN;AAEJ;AAEO,SAAS,WAAW,OAAwB;AACjD,QAAM,EAAE,WAAW,GAAG,KAAK,IAAI;AAC/B,SAAO,oBAAC,cAAW,WAAW,GAAG,yBAAQ,YAAY,SAAS,GAAI,GAAG,MAAM;AAC7E","sourcesContent":["import 'css-chunk:src/BaseInput.module.scss';export default {\n \"baseInput\": \"_baseInput_jtvfw_1\",\n \"baseSelect\": \"_baseSelect_jtvfw_1\",\n \"baseButton\": \"_baseButton_jtvfw_1\",\n \"color-secondary\": \"_color-secondary_jtvfw_37\",\n \"iconButton\": \"_iconButton_jtvfw_47\"\n};","import {\n ButtonHTMLAttributes,\n HtmlHTMLAttributes,\n InputHTMLAttributes,\n SelectHTMLAttributes,\n} from \"react\"\nimport classes from \"./BaseInput.module.scss\"\nimport cx from \"classnames\"\n\nexport function BaseInput(props: InputHTMLAttributes<HTMLInputElement>) {\n const { className, ...rest } = props\n return <input className={cx(classes.baseInput, className)} {...rest} />\n}\n\nexport function BaseSelect(props: SelectHTMLAttributes<HTMLSelectElement>) {\n const { className, ...rest } = props\n return <select className={cx(classes.baseSelect, className)} {...rest} />\n}\n\nexport interface BaseButtonProps\n extends ButtonHTMLAttributes<HTMLButtonElement> {\n color?: \"primary\" | \"secondary\" | undefined\n}\n\nexport function BaseButton(props: BaseButtonProps) {\n const { className, color = \"primary\", ...rest } = props\n return (\n <button\n type=\"button\"\n className={cx(classes.baseButton, classes[`color-${color}`], className)}\n {...rest}\n />\n )\n}\n\nexport function IconButton(props: BaseButtonProps) {\n const { className, ...rest } = props\n return <BaseButton className={cx(classes.iconButton, className)} {...rest} />\n}\n"]}
|
@@ -0,0 +1,46 @@
|
|
1
|
+
import {
|
2
|
+
Controller_module_default,
|
3
|
+
HTMLInputControllerWithTextInput
|
4
|
+
} from "./chunk-CE3TPOSO.js";
|
5
|
+
import {
|
6
|
+
MAX_SAFE_INT64,
|
7
|
+
MIN_SAFE_INT64
|
8
|
+
} from "./chunk-FZWZHHQ2.js";
|
9
|
+
|
10
|
+
// src/Controller/BigInt.tsx
|
11
|
+
import { useMemo } from "react";
|
12
|
+
import { jsx } from "react/jsx-runtime";
|
13
|
+
function BigIntController(props) {
|
14
|
+
const { options, value } = props;
|
15
|
+
const min = useMemo(() => {
|
16
|
+
if (typeof options?.min === "undefined")
|
17
|
+
return MIN_SAFE_INT64;
|
18
|
+
return options.min;
|
19
|
+
}, [options?.min]);
|
20
|
+
const max = useMemo(() => {
|
21
|
+
if (typeof options?.max === "undefined")
|
22
|
+
return MAX_SAFE_INT64;
|
23
|
+
return options.max;
|
24
|
+
}, [options?.max]);
|
25
|
+
const stringValue = `${value}`;
|
26
|
+
return /* @__PURE__ */ jsx(
|
27
|
+
HTMLInputControllerWithTextInput,
|
28
|
+
{
|
29
|
+
type: "range",
|
30
|
+
inputProps: { min: `${min}`, max: `${max}` },
|
31
|
+
textInputProps: {
|
32
|
+
type: "number",
|
33
|
+
min: `${min}`,
|
34
|
+
max: `${max}`,
|
35
|
+
className: Controller_module_default.numberInput
|
36
|
+
},
|
37
|
+
...props,
|
38
|
+
value: stringValue
|
39
|
+
}
|
40
|
+
);
|
41
|
+
}
|
42
|
+
|
43
|
+
export {
|
44
|
+
BigIntController
|
45
|
+
};
|
46
|
+
//# sourceMappingURL=chunk-P77D7XSP.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../src/Controller/BigInt.tsx"],"sourcesContent":["import {\n FxParamControllerProps,\n HTMLInputControllerWithTextInput,\n} from \"./Controller\"\nimport classes from \"./Controller.module.scss\"\nimport { MAX_SAFE_INT64, MIN_SAFE_INT64 } from \"../utils\"\nimport { useMemo } from \"react\"\n\nexport function BigIntController(props: FxParamControllerProps<\"bigint\">) {\n const { options, value } = props\n const min = useMemo(() => {\n if (typeof options?.min === \"undefined\") return MIN_SAFE_INT64\n return options.min\n }, [options?.min])\n const max = useMemo(() => {\n if (typeof options?.max === \"undefined\") return MAX_SAFE_INT64\n return options.max\n }, [options?.max])\n const stringValue = `${value}`\n return (\n <HTMLInputControllerWithTextInput\n type=\"range\"\n inputProps={{ min: `${min}`, max: `${max}` }}\n textInputProps={{\n type: \"number\",\n min: `${min}`,\n max: `${max}`,\n className: classes.numberInput,\n }}\n {...props}\n value={stringValue}\n />\n )\n}\n"],"mappings":";;;;;;;;;;AAMA,SAAS,eAAe;AAcpB;AAZG,SAAS,iBAAiB,OAAyC;AACxE,QAAM,EAAE,SAAS,MAAM,IAAI;AAC3B,QAAM,MAAM,QAAQ,MAAM;AACxB,QAAI,OAAO,SAAS,QAAQ;AAAa,aAAO;AAChD,WAAO,QAAQ;AAAA,EACjB,GAAG,CAAC,SAAS,GAAG,CAAC;AACjB,QAAM,MAAM,QAAQ,MAAM;AACxB,QAAI,OAAO,SAAS,QAAQ;AAAa,aAAO;AAChD,WAAO,QAAQ;AAAA,EACjB,GAAG,CAAC,SAAS,GAAG,CAAC;AACjB,QAAM,cAAc,GAAG;AACvB,SACE;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MACL,YAAY,EAAE,KAAK,GAAG,OAAO,KAAK,GAAG,MAAM;AAAA,MAC3C,gBAAgB;AAAA,QACd,MAAM;AAAA,QACN,KAAK,GAAG;AAAA,QACR,KAAK,GAAG;AAAA,QACR,WAAW,0BAAQ;AAAA,MACrB;AAAA,MACC,GAAG;AAAA,MACJ,OAAO;AAAA;AAAA,EACT;AAEJ;","names":[]}
|
@@ -0,0 +1,67 @@
|
|
1
|
+
// src/Controller/Invalid.tsx
|
2
|
+
import { useState } from "react";
|
3
|
+
|
4
|
+
// src/Controller/Invalid.module.scss
|
5
|
+
var Invalid_module_default = {
|
6
|
+
"invalid": "_invalid_9fznv_1",
|
7
|
+
"isOpen": "_isOpen_9fznv_30",
|
8
|
+
"errorsWrapper": "_errorsWrapper_9fznv_34",
|
9
|
+
"attributes": "_attributes_9fznv_40",
|
10
|
+
"issue": "_issue_9fznv_44"
|
11
|
+
};
|
12
|
+
|
13
|
+
// src/Controller/Invalid.tsx
|
14
|
+
import cx from "classnames";
|
15
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
16
|
+
function Issue(props) {
|
17
|
+
const { issue } = props;
|
18
|
+
return /* @__PURE__ */ jsxs("li", { className: Invalid_module_default.issue, children: [
|
19
|
+
/* @__PURE__ */ jsxs("h3", { children: [
|
20
|
+
issue.code,
|
21
|
+
" at ",
|
22
|
+
issue.path.join(".")
|
23
|
+
] }),
|
24
|
+
/* @__PURE__ */ jsx("p", { children: issue.message })
|
25
|
+
] });
|
26
|
+
}
|
27
|
+
function Attribute(props) {
|
28
|
+
const { id, definition } = props;
|
29
|
+
if (!definition[id])
|
30
|
+
return null;
|
31
|
+
return /* @__PURE__ */ jsx("h4", { children: /* @__PURE__ */ jsxs(Fragment, { children: [
|
32
|
+
id,
|
33
|
+
": ",
|
34
|
+
definition[id]
|
35
|
+
] }) });
|
36
|
+
}
|
37
|
+
function ControllerInvalid(props) {
|
38
|
+
const { definition, error } = props;
|
39
|
+
const [showIssues, setShowIssues] = useState(false);
|
40
|
+
const handleToggleShowIssues = () => {
|
41
|
+
setShowIssues(!showIssues);
|
42
|
+
};
|
43
|
+
return /* @__PURE__ */ jsxs("div", { className: cx(Invalid_module_default.invalid), children: [
|
44
|
+
/* @__PURE__ */ jsxs("label", { onClick: handleToggleShowIssues, children: [
|
45
|
+
"Invalid parameter definition",
|
46
|
+
/* @__PURE__ */ jsx("i", { className: cx({ [Invalid_module_default.isOpen]: showIssues }), children: showIssues ? "-" : "+" })
|
47
|
+
] }),
|
48
|
+
showIssues && /* @__PURE__ */ jsxs("div", { className: Invalid_module_default.errorsWrapper, children: [
|
49
|
+
/* @__PURE__ */ jsxs("div", { className: Invalid_module_default.attributes, children: [
|
50
|
+
/* @__PURE__ */ jsx(Attribute, { definition, id: "id" }),
|
51
|
+
/* @__PURE__ */ jsx(Attribute, { definition, id: "name" })
|
52
|
+
] }),
|
53
|
+
/* @__PURE__ */ jsx("ul", { className: cx(Invalid_module_default.issues, { [Invalid_module_default.isOpen]: showIssues }), children: error.issues.map((issue) => /* @__PURE__ */ jsx(
|
54
|
+
Issue,
|
55
|
+
{
|
56
|
+
issue
|
57
|
+
},
|
58
|
+
`${issue.code}-${issue.path.join("-")}`
|
59
|
+
)) })
|
60
|
+
] })
|
61
|
+
] });
|
62
|
+
}
|
63
|
+
|
64
|
+
export {
|
65
|
+
ControllerInvalid
|
66
|
+
};
|
67
|
+
//# sourceMappingURL=chunk-PTXBICTZ.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["../src/Controller/Invalid.tsx","../src/Controller/Invalid.module.scss"],"sourcesContent":["import { useState } from \"react\"\nimport { FxParamDefinition, FxParamType } from \"../types\"\nimport { ZodError, ZodIssue } from \"zod\"\nimport classes from \"./Invalid.module.scss\"\nimport cx from \"classnames\"\n\ninterface IssueProps {\n issue: ZodIssue\n}\n\nfunction Issue(props: IssueProps) {\n const { issue } = props\n return (\n <li className={classes.issue}>\n <h3>\n {issue.code} at {issue.path.join(\".\")}\n </h3>\n <p>{issue.message}</p>\n </li>\n )\n}\n\ninterface AttributeProps {\n id: keyof FxParamDefinition<FxParamType>\n definition: FxParamDefinition<FxParamType>\n}\n\nfunction Attribute(props: AttributeProps) {\n const { id, definition } = props\n if (!definition[id]) return null\n return (\n <h4>\n <>\n {id}: {definition[id]}\n </>\n </h4>\n )\n}\n\nexport interface ControllerInvalidProps {\n definition: FxParamDefinition<FxParamType>\n error: ZodError\n}\n\nexport function ControllerInvalid(props: ControllerInvalidProps) {\n const { definition, error } = props\n\n const [showIssues, setShowIssues] = useState(false)\n\n const handleToggleShowIssues = () => {\n setShowIssues(!showIssues)\n }\n\n return (\n <div className={cx(classes.invalid)}>\n <label onClick={handleToggleShowIssues}>\n Invalid parameter definition\n <i className={cx({ [classes.isOpen]: showIssues })}>\n {showIssues ? \"-\" : \"+\"}\n </i>\n </label>\n {showIssues && (\n <div className={classes.errorsWrapper}>\n <div className={classes.attributes}>\n <Attribute definition={definition} id=\"id\" />\n <Attribute definition={definition} id=\"name\" />\n </div>\n <ul className={cx(classes.issues, { [classes.isOpen]: showIssues })}>\n {error.issues.map((issue) => (\n <Issue\n key={`${issue.code}-${issue.path.join(\"-\")}`}\n issue={issue}\n />\n ))}\n </ul>\n </div>\n )}\n </div>\n )\n}\n","import 'css-chunk:src/Controller/Invalid.module.scss';export default {\n \"invalid\": \"_invalid_9fznv_1\",\n \"isOpen\": \"_isOpen_9fznv_30\",\n \"errorsWrapper\": \"_errorsWrapper_9fznv_34\",\n \"attributes\": \"_attributes_9fznv_40\",\n \"issue\": \"_issue_9fznv_44\"\n};"],"mappings":";AAAA,SAAS,gBAAgB;;;ACA6B,IAAO,yBAAQ;AAAA,EACnE,WAAW;AAAA,EACX,UAAU;AAAA,EACV,iBAAiB;AAAA,EACjB,cAAc;AAAA,EACd,SAAS;AACX;;;ADFA,OAAO,QAAQ;AAUT,SAkBA,UAfA,KAHA;AAJN,SAAS,MAAM,OAAmB;AAChC,QAAM,EAAE,MAAM,IAAI;AAClB,SACE,qBAAC,QAAG,WAAW,uBAAQ,OACrB;AAAA,yBAAC,QACE;AAAA,YAAM;AAAA,MAAK;AAAA,MAAK,MAAM,KAAK,KAAK,GAAG;AAAA,OACtC;AAAA,IACA,oBAAC,OAAG,gBAAM,SAAQ;AAAA,KACpB;AAEJ;AAOA,SAAS,UAAU,OAAuB;AACxC,QAAM,EAAE,IAAI,WAAW,IAAI;AAC3B,MAAI,CAAC,WAAW,EAAE;AAAG,WAAO;AAC5B,SACE,oBAAC,QACC,2CACG;AAAA;AAAA,IAAG;AAAA,IAAG,WAAW,EAAE;AAAA,KACtB,GACF;AAEJ;AAOO,SAAS,kBAAkB,OAA+B;AAC/D,QAAM,EAAE,YAAY,MAAM,IAAI;AAE9B,QAAM,CAAC,YAAY,aAAa,IAAI,SAAS,KAAK;AAElD,QAAM,yBAAyB,MAAM;AACnC,kBAAc,CAAC,UAAU;AAAA,EAC3B;AAEA,SACE,qBAAC,SAAI,WAAW,GAAG,uBAAQ,OAAO,GAChC;AAAA,yBAAC,WAAM,SAAS,wBAAwB;AAAA;AAAA,MAEtC,oBAAC,OAAE,WAAW,GAAG,EAAE,CAAC,uBAAQ,MAAM,GAAG,WAAW,CAAC,GAC9C,uBAAa,MAAM,KACtB;AAAA,OACF;AAAA,IACC,cACC,qBAAC,SAAI,WAAW,uBAAQ,eACtB;AAAA,2BAAC,SAAI,WAAW,uBAAQ,YACtB;AAAA,4BAAC,aAAU,YAAwB,IAAG,MAAK;AAAA,QAC3C,oBAAC,aAAU,YAAwB,IAAG,QAAO;AAAA,SAC/C;AAAA,MACA,oBAAC,QAAG,WAAW,GAAG,uBAAQ,QAAQ,EAAE,CAAC,uBAAQ,MAAM,GAAG,WAAW,CAAC,GAC/D,gBAAM,OAAO,IAAI,CAAC,UACjB;AAAA,QAAC;AAAA;AAAA,UAEC;AAAA;AAAA,QADK,GAAG,MAAM,QAAQ,MAAM,KAAK,KAAK,GAAG;AAAA,MAE3C,CACD,GACH;AAAA,OACF;AAAA,KAEJ;AAEJ;","names":[]}
|