@fxhash/params 0.0.4 → 0.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.
Files changed (194) hide show
  1. package/dist/BaseInput.cjs +13 -0
  2. package/dist/BaseInput.cjs.map +1 -0
  3. package/dist/BaseInput.css +112 -0
  4. package/dist/BaseInput.css.map +1 -0
  5. package/dist/BaseInput.d.ts +12 -0
  6. package/dist/BaseInput.js +13 -0
  7. package/dist/BaseInput.js.map +1 -0
  8. package/dist/Context.cjs +49 -0
  9. package/dist/Context.cjs.map +1 -0
  10. package/dist/Context.d.ts +19 -0
  11. package/dist/Context.js +49 -0
  12. package/dist/Context.js.map +1 -0
  13. package/dist/Controller/BigInt.cjs +10 -0
  14. package/dist/Controller/BigInt.cjs.map +1 -0
  15. package/dist/Controller/BigInt.css +183 -0
  16. package/dist/Controller/BigInt.css.map +1 -0
  17. package/dist/Controller/BigInt.d.ts +8 -0
  18. package/dist/Controller/BigInt.js +10 -0
  19. package/dist/Controller/BigInt.js.map +1 -0
  20. package/dist/Controller/Boolean.cjs +9 -0
  21. package/dist/Controller/Boolean.cjs.map +1 -0
  22. package/dist/Controller/Boolean.css +183 -0
  23. package/dist/Controller/Boolean.css.map +1 -0
  24. package/dist/Controller/Boolean.d.ts +8 -0
  25. package/dist/Controller/Boolean.js +9 -0
  26. package/dist/Controller/Boolean.js.map +1 -0
  27. package/dist/Controller/Bytes.cjs +9 -0
  28. package/dist/Controller/Bytes.cjs.map +1 -0
  29. package/dist/Controller/Bytes.css +191 -0
  30. package/dist/Controller/Bytes.css.map +1 -0
  31. package/dist/Controller/Bytes.d.ts +8 -0
  32. package/dist/Controller/Bytes.js +9 -0
  33. package/dist/Controller/Bytes.js.map +1 -0
  34. package/dist/Controller/Color.cjs +10 -0
  35. package/dist/Controller/Color.cjs.map +1 -0
  36. package/dist/Controller/Color.css +227 -0
  37. package/dist/Controller/Color.css.map +1 -0
  38. package/dist/Controller/Color.d.ts +8 -0
  39. package/dist/Controller/Color.js +10 -0
  40. package/dist/Controller/Color.js.map +1 -0
  41. package/dist/Controller/Controller.cjs +14 -0
  42. package/dist/Controller/Controller.cjs.map +1 -0
  43. package/dist/Controller/Controller.css +183 -0
  44. package/dist/Controller/Controller.css.map +1 -0
  45. package/dist/Controller/Controller.d.ts +41 -0
  46. package/dist/Controller/Controller.js +14 -0
  47. package/dist/Controller/Controller.js.map +1 -0
  48. package/dist/Controller/Invalid.cjs +7 -0
  49. package/dist/Controller/Invalid.cjs.map +1 -0
  50. package/dist/Controller/Invalid.css +48 -0
  51. package/dist/Controller/Invalid.css.map +1 -0
  52. package/dist/Controller/Invalid.d.ts +11 -0
  53. package/dist/Controller/Invalid.js +7 -0
  54. package/dist/Controller/Invalid.js.map +1 -0
  55. package/dist/Controller/Number.cjs +9 -0
  56. package/dist/Controller/Number.cjs.map +1 -0
  57. package/dist/Controller/Number.css +183 -0
  58. package/dist/Controller/Number.css.map +1 -0
  59. package/dist/Controller/Number.d.ts +8 -0
  60. package/dist/Controller/Number.js +9 -0
  61. package/dist/Controller/Number.js.map +1 -0
  62. package/dist/Controller/Param.cjs +21 -0
  63. package/dist/Controller/Param.cjs.map +1 -0
  64. package/dist/Controller/Param.css +283 -0
  65. package/dist/Controller/Param.css.map +1 -0
  66. package/dist/Controller/Param.d.ts +25 -0
  67. package/dist/Controller/Param.js +21 -0
  68. package/dist/Controller/Param.js.map +1 -0
  69. package/dist/Controller/Select.cjs +9 -0
  70. package/dist/Controller/Select.cjs.map +1 -0
  71. package/dist/Controller/Select.css +183 -0
  72. package/dist/Controller/Select.css.map +1 -0
  73. package/dist/Controller/Select.d.ts +8 -0
  74. package/dist/Controller/Select.js +9 -0
  75. package/dist/Controller/Select.js.map +1 -0
  76. package/dist/Controller/String.cjs +9 -0
  77. package/dist/Controller/String.cjs.map +1 -0
  78. package/dist/Controller/String.css +183 -0
  79. package/dist/Controller/String.css.map +1 -0
  80. package/dist/Controller/String.d.ts +8 -0
  81. package/dist/Controller/String.js +9 -0
  82. package/dist/Controller/String.js.map +1 -0
  83. package/dist/Controls.cjs +102 -0
  84. package/dist/Controls.cjs.map +1 -0
  85. package/dist/Controls.css +304 -0
  86. package/dist/Controls.css.map +1 -0
  87. package/dist/Controls.d.ts +17 -0
  88. package/dist/Controls.js +102 -0
  89. package/dist/Controls.js.map +1 -0
  90. package/dist/LockButton/LockButton.cjs +8 -0
  91. package/dist/LockButton/LockButton.cjs.map +1 -0
  92. package/dist/LockButton/LockButton.css +117 -0
  93. package/dist/LockButton/LockButton.css.map +1 -0
  94. package/dist/LockButton/LockButton.d.ts +11 -0
  95. package/dist/LockButton/LockButton.js +8 -0
  96. package/dist/LockButton/LockButton.js.map +1 -0
  97. package/dist/ParamsHistory.cjs +89 -0
  98. package/dist/ParamsHistory.cjs.map +1 -0
  99. package/dist/ParamsHistory.d.ts +22 -0
  100. package/dist/ParamsHistory.js +89 -0
  101. package/dist/ParamsHistory.js.map +1 -0
  102. package/dist/RuntimeContext.cjs +10 -0
  103. package/dist/RuntimeContext.cjs.map +1 -0
  104. package/dist/RuntimeContext.d.ts +44 -0
  105. package/dist/RuntimeContext.js +10 -0
  106. package/dist/RuntimeContext.js.map +1 -0
  107. package/dist/chunk-2BHABOFI.js +43 -0
  108. package/dist/chunk-2BHABOFI.js.map +1 -0
  109. package/dist/chunk-2QIAF3U7.js +39 -0
  110. package/dist/chunk-2QIAF3U7.js.map +1 -0
  111. package/dist/chunk-2QU65L2O.cjs +399 -0
  112. package/dist/chunk-2QU65L2O.cjs.map +1 -0
  113. package/dist/chunk-4FX3ATAX.js +110 -0
  114. package/dist/chunk-4FX3ATAX.js.map +1 -0
  115. package/dist/chunk-4OV7OX5A.js +37 -0
  116. package/dist/chunk-4OV7OX5A.js.map +1 -0
  117. package/dist/chunk-6VMIOQSE.js +34 -0
  118. package/dist/chunk-6VMIOQSE.js.map +1 -0
  119. package/dist/chunk-7NOMBXLG.js +120 -0
  120. package/dist/chunk-7NOMBXLG.js.map +1 -0
  121. package/dist/chunk-CE3TPOSO.js +135 -0
  122. package/dist/chunk-CE3TPOSO.js.map +1 -0
  123. package/dist/chunk-D4RVVQC7.cjs +23 -0
  124. package/dist/chunk-D4RVVQC7.cjs.map +1 -0
  125. package/dist/chunk-DP5CBORY.cjs +46 -0
  126. package/dist/chunk-DP5CBORY.cjs.map +1 -0
  127. package/dist/chunk-EACKNC6C.cjs +103 -0
  128. package/dist/chunk-EACKNC6C.cjs.map +1 -0
  129. package/dist/chunk-EIQHQNZJ.js +115 -0
  130. package/dist/chunk-EIQHQNZJ.js.map +1 -0
  131. package/dist/chunk-FDUCXROE.cjs +120 -0
  132. package/dist/chunk-FDUCXROE.cjs.map +1 -0
  133. package/dist/chunk-H5IMTNFG.js +44 -0
  134. package/dist/chunk-H5IMTNFG.js.map +1 -0
  135. package/dist/chunk-HJBHIE5T.cjs +135 -0
  136. package/dist/chunk-HJBHIE5T.cjs.map +1 -0
  137. package/dist/chunk-JAU4ONF2.cjs +24 -0
  138. package/dist/chunk-JAU4ONF2.cjs.map +1 -0
  139. package/dist/chunk-K4EW6YY3.cjs +34 -0
  140. package/dist/chunk-K4EW6YY3.cjs.map +1 -0
  141. package/dist/chunk-MWP7SJWC.js +103 -0
  142. package/dist/chunk-MWP7SJWC.js.map +1 -0
  143. package/dist/chunk-OFUKQ2TB.cjs +43 -0
  144. package/dist/chunk-OFUKQ2TB.cjs.map +1 -0
  145. package/dist/chunk-PTXBICTZ.js +67 -0
  146. package/dist/chunk-PTXBICTZ.js.map +1 -0
  147. package/dist/chunk-QM6EKPI6.cjs +67 -0
  148. package/dist/chunk-QM6EKPI6.cjs.map +1 -0
  149. package/dist/chunk-SDPENM2L.js +399 -0
  150. package/dist/chunk-SDPENM2L.js.map +1 -0
  151. package/dist/chunk-TKKYM77A.cjs +44 -0
  152. package/dist/chunk-TKKYM77A.cjs.map +1 -0
  153. package/dist/chunk-VED7SCYX.cjs +39 -0
  154. package/dist/chunk-VED7SCYX.cjs.map +1 -0
  155. package/dist/chunk-WQVPKBSN.cjs +110 -0
  156. package/dist/chunk-WQVPKBSN.cjs.map +1 -0
  157. package/dist/chunk-X4O42D2P.cjs +37 -0
  158. package/dist/chunk-X4O42D2P.cjs.map +1 -0
  159. package/dist/chunk-YBV33YPC.cjs +115 -0
  160. package/dist/chunk-YBV33YPC.cjs.map +1 -0
  161. package/dist/chunk-YOS2HCIS.js +23 -0
  162. package/dist/chunk-YOS2HCIS.js.map +1 -0
  163. package/dist/chunk-YYEIYDDF.js +24 -0
  164. package/dist/chunk-YYEIYDDF.js.map +1 -0
  165. package/dist/chunk-ZUITF5XX.js +46 -0
  166. package/dist/chunk-ZUITF5XX.js.map +1 -0
  167. package/dist/hooks.cjs +29 -0
  168. package/dist/hooks.cjs.map +1 -0
  169. package/dist/hooks.d.ts +6 -0
  170. package/dist/hooks.js +29 -0
  171. package/dist/hooks.js.map +1 -0
  172. package/dist/index.cjs +7 -0
  173. package/dist/index.cjs.map +1 -0
  174. package/dist/index.css +112 -0
  175. package/dist/index.css.map +1 -0
  176. package/dist/index.d.ts +3 -0
  177. package/dist/index.js +7 -0
  178. package/dist/index.js.map +1 -0
  179. package/dist/types.cjs +1 -0
  180. package/dist/types.cjs.map +1 -0
  181. package/dist/types.d.ts +100 -0
  182. package/dist/types.js +1 -0
  183. package/dist/types.js.map +1 -0
  184. package/dist/utils.cjs +33 -0
  185. package/dist/utils.cjs.map +1 -0
  186. package/dist/utils.d.ts +50 -0
  187. package/dist/utils.js +33 -0
  188. package/dist/utils.js.map +1 -0
  189. package/dist/validation.cjs +9 -0
  190. package/dist/validation.cjs.map +1 -0
  191. package/dist/validation.d.ts +241 -0
  192. package/dist/validation.js +9 -0
  193. package/dist/validation.js.map +1 -0
  194. package/package.json +1 -1
@@ -0,0 +1,110 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+ var _chunkTKKYM77Acjs = require('./chunk-TKKYM77A.cjs');
4
+
5
+
6
+ var _chunkK4EW6YY3cjs = require('./chunk-K4EW6YY3.cjs');
7
+
8
+
9
+ var _chunkJAU4ONF2cjs = require('./chunk-JAU4ONF2.cjs');
10
+
11
+
12
+ var _chunkEACKNC6Ccjs = require('./chunk-EACKNC6C.cjs');
13
+
14
+
15
+ var _chunkDP5CBORYcjs = require('./chunk-DP5CBORY.cjs');
16
+
17
+
18
+ var _chunkD4RVVQC7cjs = require('./chunk-D4RVVQC7.cjs');
19
+
20
+
21
+ var _chunkVED7SCYXcjs = require('./chunk-VED7SCYX.cjs');
22
+
23
+
24
+ var _chunkFDUCXROEcjs = require('./chunk-FDUCXROE.cjs');
25
+
26
+
27
+ var _chunkQM6EKPI6cjs = require('./chunk-QM6EKPI6.cjs');
28
+
29
+ // src/Controller/Param.tsx
30
+ var _react = require('react');
31
+ var _jsxruntime = require('react/jsx-runtime');
32
+ var controllerDefinitions = {
33
+ number: {
34
+ type: "number",
35
+ controller: _chunkTKKYM77Acjs.NumberController,
36
+ handler: (e) => Number(e.target.value)
37
+ },
38
+ bigint: {
39
+ type: "bigint",
40
+ controller: _chunkDP5CBORYcjs.BigIntController,
41
+ handler: (e) => BigInt(e.target.value)
42
+ },
43
+ string: {
44
+ type: "string",
45
+ controller: _chunkJAU4ONF2cjs.StringController,
46
+ handler: (e) => e.target.value
47
+ },
48
+ bytes: {
49
+ type: "bytes",
50
+ controller: _chunkVED7SCYXcjs.BytesController,
51
+ handler: (e) => e.target.value
52
+ },
53
+ boolean: {
54
+ type: "boolean",
55
+ controller: _chunkD4RVVQC7cjs.BooleanController,
56
+ handler: (e) => e.target.checked
57
+ },
58
+ color: {
59
+ type: "color",
60
+ controller: _chunkFDUCXROEcjs.ColorController,
61
+ handler: (v) => v
62
+ },
63
+ select: {
64
+ type: "select",
65
+ controller: _chunkK4EW6YY3cjs.SelectController,
66
+ handler: (e) => e.target.value
67
+ }
68
+ };
69
+ function ParameterController(props) {
70
+ const { parameter, onChange, parsed } = props;
71
+ const parsedDefinition = _react.useMemo.call(void 0,
72
+ () => parsed || _chunkEACKNC6Ccjs.validateParameterDefinition.call(void 0, parameter),
73
+ [parameter, parsed]
74
+ );
75
+ const { controller: Controller, handler } = _react.useMemo.call(void 0,
76
+ () => controllerDefinitions[parameter.type],
77
+ [parameter.type]
78
+ );
79
+ const handleChangeParam = (e) => {
80
+ const value = handler(e);
81
+ onChange(parameter.id, value);
82
+ };
83
+ if (parsedDefinition && parsedDefinition.success === false) {
84
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
85
+ _chunkQM6EKPI6cjs.ControllerInvalid,
86
+ {
87
+ definition: parameter,
88
+ error: parsedDefinition.error
89
+ }
90
+ );
91
+ }
92
+ const isCodeDriven = parameter.update === "code-driven";
93
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
94
+ Controller,
95
+ {
96
+ id: parameter.id,
97
+ label: parameter.name,
98
+ value: props.value,
99
+ onChange: handleChangeParam,
100
+ options: parameter.options,
101
+ isCodeDriven
102
+ }
103
+ );
104
+ }
105
+
106
+
107
+
108
+
109
+ exports.controllerDefinitions = controllerDefinitions; exports.ParameterController = ParameterController;
110
+ //# sourceMappingURL=chunk-WQVPKBSN.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/Controller/Param.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,SAAS,eAA6B;AA6FhC;AAlEC,IAAM,wBAAsD;AAAA,EACjE,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,YAAY;AAAA,IACZ,SAAS,CAAC,MAAM,OAAO,EAAE,OAAO,KAAK;AAAA,EACvC;AAAA,EACA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,YAAY;AAAA,IACZ,SAAS,CAAC,MAAM,OAAO,EAAE,OAAO,KAAK;AAAA,EACvC;AAAA,EACA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,YAAY;AAAA,IACZ,SAAS,CAAC,MAAM,EAAE,OAAO;AAAA,EAC3B;AAAA,EACA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,YAAY;AAAA,IACZ,SAAS,CAAC,MAAM,EAAE,OAAO;AAAA,EAC3B;AAAA,EACA,SAAS;AAAA,IACP,MAAM;AAAA,IACN,YAAY;AAAA,IACZ,SAAS,CAAC,MAAO,EAA0C,OAAO;AAAA,EACpE;AAAA,EACA,OAAO;AAAA,IACL,MAAM;AAAA,IACN,YAAY;AAAA,IACZ,SAAS,CAAC,MAAM;AAAA,EAClB;AAAA,EACA,QAAQ;AAAA,IACN,MAAM;AAAA,IACN,YAAY;AAAA,IACZ,SAAS,CAAC,MAAM,EAAE,OAAO;AAAA,EAC3B;AACF;AAWO,SAAS,oBAAoB,OAAiC;AACnE,QAAM,EAAE,WAAW,UAAU,OAAO,IAAI;AAExC,QAAM,mBAAmB;AAAA,IACvB,MAAM,UAAU,4BAA4B,SAAS;AAAA,IACrD,CAAC,WAAW,MAAM;AAAA,EACpB;AACA,QAAM,EAAE,YAAY,YAAY,QAAQ,IAAI;AAAA,IAC1C,MAAM,sBAAsB,UAAU,IAAI;AAAA,IAC1C,CAAC,UAAU,IAAI;AAAA,EACjB;AAEA,QAAM,oBAAoB,CAAC,MAAW;AACpC,UAAM,QAAQ,QAAQ,CAAC;AACvB,aAAS,UAAU,IAAI,KAAK;AAAA,EAC9B;AAEA,MAAI,oBAAoB,iBAAiB,YAAY,OAAO;AAC1D,WACE;AAAA,MAAC;AAAA;AAAA,QACC,YAAY;AAAA,QACZ,OAAO,iBAAiB;AAAA;AAAA,IAC1B;AAAA,EAEJ;AAEA,QAAM,eAAe,UAAU,WAAW;AAE1C,SACE;AAAA,IAAC;AAAA;AAAA,MACC,IAAI,UAAU;AAAA,MACd,OAAO,UAAU;AAAA,MACjB,OAAO,MAAM;AAAA,MACb,UAAU;AAAA,MAEV,SAAS,UAAU;AAAA,MACnB;AAAA;AAAA,EACF;AAEJ","sourcesContent":["import { useMemo, ReactElement } from \"react\"\nimport { FxParamDefinition, FxParamType } from \"../types\"\nimport { FxParamInputChangeHandler, FxParamControllerProps } from \"./Controller\"\nimport { BooleanController } from \"./Boolean\"\nimport { ColorController } from \"./Color\"\nimport { NumberController } from \"./Number\"\nimport { BigIntController } from \"./BigInt\"\nimport { SelectController } from \"./Select\"\nimport { StringController } from \"./String\"\nimport {\n validateParameterDefinition,\n ControllerDefinitionSchemaType,\n} from \"../validation\"\nimport { SafeParseError, SafeParseSuccess, z } from \"zod\"\nimport { ControllerInvalid } from \"./Invalid\"\nimport { BytesController } from \"./Bytes\"\n\ninterface FxParamControllerDefiniton<Type extends FxParamType> {\n type: Type\n controller: (props: FxParamControllerProps<Type>) => ReactElement\n handler: FxParamInputChangeHandler\n}\n\nexport type FxParamControllerDefinitions = {\n [T in FxParamType]: FxParamControllerDefiniton<T>\n}\n\nexport const controllerDefinitions: FxParamControllerDefinitions = {\n number: {\n type: \"number\",\n controller: NumberController,\n handler: (e) => Number(e.target.value),\n },\n bigint: {\n type: \"bigint\",\n controller: BigIntController,\n handler: (e) => BigInt(e.target.value),\n },\n string: {\n type: \"string\",\n controller: StringController,\n handler: (e) => e.target.value,\n },\n bytes: {\n type: \"bytes\",\n controller: BytesController,\n handler: (e) => e.target.value,\n },\n boolean: {\n type: \"boolean\",\n controller: BooleanController,\n handler: (e) => (e as React.ChangeEvent<HTMLInputElement>).target.checked,\n },\n color: {\n type: \"color\",\n controller: ColorController,\n handler: (v) => v,\n },\n select: {\n type: \"select\",\n controller: SelectController,\n handler: (e) => e.target.value,\n },\n}\n\nexport interface ParameterControllerProps {\n parameter: FxParamDefinition<FxParamType>\n value: any\n onChange: (id: string, value: any) => void\n parsed?:\n | SafeParseError<ControllerDefinitionSchemaType>\n | SafeParseSuccess<ControllerDefinitionSchemaType>\n}\n\nexport function ParameterController(props: ParameterControllerProps) {\n const { parameter, onChange, parsed } = props\n\n const parsedDefinition = useMemo(\n () => parsed || validateParameterDefinition(parameter),\n [parameter, parsed]\n )\n const { controller: Controller, handler } = useMemo(\n () => controllerDefinitions[parameter.type],\n [parameter.type]\n )\n\n const handleChangeParam = (e: any) => {\n const value = handler(e)\n onChange(parameter.id, value)\n }\n\n if (parsedDefinition && parsedDefinition.success === false) {\n return (\n <ControllerInvalid\n definition={parameter}\n error={parsedDefinition.error}\n />\n )\n }\n\n const isCodeDriven = parameter.update === \"code-driven\"\n\n return (\n <Controller\n id={parameter.id}\n label={parameter.name}\n value={props.value}\n onChange={handleChangeParam}\n // TODO: This should be properly casted\n options={parameter.options as any}\n isCodeDriven={isCodeDriven}\n />\n )\n}\n"]}
@@ -0,0 +1,37 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
2
+
3
+ var _chunkOFUKQ2TBcjs = require('./chunk-OFUKQ2TB.cjs');
4
+
5
+ // src/LockButton/LockButton.tsx
6
+ var _reactfontawesome = require('@fortawesome/react-fontawesome');
7
+
8
+ // src/LockButton/LockButton.module.scss
9
+ var LockButton_module_default = {
10
+ "lockButton": "_lockButton_1bbiz_1"
11
+ };
12
+
13
+ // src/LockButton/LockButton.tsx
14
+ var _freesolidsvgicons = require('@fortawesome/free-solid-svg-icons');
15
+ var _classnames = require('classnames'); var _classnames2 = _interopRequireDefault(_classnames);
16
+ var _jsxruntime = require('react/jsx-runtime');
17
+ function LockButton(props) {
18
+ const { isLocked, className, ...rest } = props;
19
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
20
+ _chunkOFUKQ2TBcjs.IconButton,
21
+ {
22
+ color: "secondary",
23
+ className: _classnames2.default.call(void 0,
24
+ LockButton_module_default.lockButton,
25
+ { [LockButton_module_default.isOpen]: !isLocked },
26
+ className
27
+ ),
28
+ ...rest,
29
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _reactfontawesome.FontAwesomeIcon, { icon: isLocked ? _freesolidsvgicons.faLock : _freesolidsvgicons.faLockOpen })
30
+ }
31
+ );
32
+ }
33
+
34
+
35
+
36
+ exports.LockButton = LockButton;
37
+ //# sourceMappingURL=chunk-X4O42D2P.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/LockButton/LockButton.tsx","../src/LockButton/LockButton.module.scss"],"names":[],"mappings":";;;;;AAAA,SAAS,uBAAuB;;;ACAyB,IAAO,4BAAQ;AAAA,EACtE,cAAc;AAChB;;;ADCA,SAAS,QAAQ,kBAAkB;AACnC,OAAO,QAAQ;AAkBT;AAZC,SAAS,WAAW,OAAwB;AACjD,QAAM,EAAE,UAAU,WAAW,GAAG,KAAK,IAAI;AACzC,SACE;AAAA,IAAC;AAAA;AAAA,MACC,OAAM;AAAA,MACN,WAAW;AAAA,QACT,0BAAQ;AAAA,QACR,EAAE,CAAC,0BAAQ,MAAM,GAAG,CAAC,SAAS;AAAA,QAC9B;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEJ,8BAAC,mBAAgB,MAAM,WAAW,SAAS,YAAY;AAAA;AAAA,EACzD;AAEJ","sourcesContent":["import { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\"\nimport { BaseButtonProps, IconButton } from \"../BaseInput\"\nimport classes from \"./LockButton.module.scss\"\nimport { faLock, faLockOpen } from \"@fortawesome/free-solid-svg-icons\"\nimport cx from \"classnames\"\ninterface LockButtonProps extends BaseButtonProps {\n isLocked?: boolean\n className?: string\n}\n\nexport function LockButton(props: LockButtonProps) {\n const { isLocked, className, ...rest } = props\n return (\n <IconButton\n color=\"secondary\"\n className={cx(\n classes.lockButton,\n { [classes.isOpen]: !isLocked },\n className\n )}\n {...rest}\n >\n <FontAwesomeIcon icon={isLocked ? faLock : faLockOpen} />\n </IconButton>\n )\n}\n","import 'css-chunk:src/LockButton/LockButton.module.scss';export default {\n \"lockButton\": \"_lockButton_1bbiz_1\"\n};"]}
@@ -0,0 +1,115 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
+
3
+
4
+ var _chunk2QU65L2Ocjs = require('./chunk-2QU65L2O.cjs');
5
+
6
+ // src/RuntimeContext.tsx
7
+ var _react = require('react');
8
+
9
+ var _sha1 = require('sha1'); var _sha12 = _interopRequireDefault(_sha1);
10
+ var _jsxruntime = require('react/jsx-runtime');
11
+ function hashRuntimeState(state) {
12
+ return _sha12.default.call(void 0, _chunk2QU65L2Ocjs.jsonStringifyBigint.call(void 0, state));
13
+ }
14
+ function hashRuntimeHardState(state, definition) {
15
+ const staticParams = {};
16
+ for (const id in state.params) {
17
+ const def = _optionalChain([definition, 'optionalAccess', _ => _.find, 'call', _2 => _2((def2) => def2.id === id)]);
18
+ if (!def || !def.update || def.update === "page-reload") {
19
+ staticParams[id] = state.params[id];
20
+ }
21
+ }
22
+ return hashRuntimeState({
23
+ ...state,
24
+ params: staticParams
25
+ });
26
+ }
27
+ var defaultRuntimeContext = {
28
+ state: {
29
+ hash: "",
30
+ minter: "",
31
+ params: {},
32
+ update: () => {
33
+ },
34
+ iteration: 1,
35
+ context: "standalone"
36
+ },
37
+ definition: {
38
+ params: null,
39
+ version: null,
40
+ update: () => {
41
+ }
42
+ },
43
+ details: {
44
+ paramsByteSize: 0,
45
+ stateHash: {
46
+ soft: "",
47
+ hard: ""
48
+ }
49
+ }
50
+ };
51
+ var RuntimeContext = _react.createContext.call(void 0, defaultRuntimeContext);
52
+ function RuntimeProvider({ children }) {
53
+ const [state, setState] = _react.useState.call(void 0, {
54
+ hash: "",
55
+ minter: "",
56
+ params: {},
57
+ iteration: 1,
58
+ context: new URLSearchParams(window.location.search).get(
59
+ "fxcontext"
60
+ ) || "standalone"
61
+ });
62
+ const [definition, setDefinition] = _react.useState.call(void 0, {
63
+ params: null,
64
+ version: null
65
+ });
66
+ const update = (data) => {
67
+ setState((lastState) => ({
68
+ ...lastState,
69
+ ...data
70
+ }));
71
+ };
72
+ const updateDefinition = (data) => {
73
+ setDefinition((lastDefinition) => ({
74
+ ...lastDefinition,
75
+ ...data
76
+ }));
77
+ };
78
+ const definitionEnhanced = _react.useMemo.call(void 0,
79
+ () => ({
80
+ ...definition,
81
+ params: _optionalChain([definition, 'access', _3 => _3.params, 'optionalAccess', _4 => _4.map, 'call', _5 => _5((p) => ({
82
+ ...p,
83
+ version: definition.version || "0"
84
+ }))]) || null
85
+ }),
86
+ [definition]
87
+ );
88
+ const ctx = {
89
+ state: {
90
+ ...state,
91
+ update
92
+ },
93
+ definition: {
94
+ ...definitionEnhanced,
95
+ update: updateDefinition
96
+ },
97
+ details: _react.useMemo.call(void 0,
98
+ () => ({
99
+ paramsByteSize: _chunk2QU65L2Ocjs.sumBytesParams.call(void 0, definition.params || []),
100
+ stateHash: {
101
+ soft: hashRuntimeState(state),
102
+ hard: hashRuntimeHardState(state, definition.params)
103
+ }
104
+ }),
105
+ [state, definition.params]
106
+ )
107
+ };
108
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, RuntimeContext.Provider, { value: ctx, children });
109
+ }
110
+
111
+
112
+
113
+
114
+ exports.RuntimeContext = RuntimeContext; exports.RuntimeProvider = RuntimeProvider;
115
+ //# sourceMappingURL=chunk-YBV33YPC.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/RuntimeContext.tsx"],"names":["def"],"mappings":";;;;;;AAKA,SAA4B,SAAS,gBAAgB;AACrD,SAAS,qBAAqB;AAC9B,OAAO,UAAU;AAwKb;AAtIJ,SAAS,iBAAiB,OAA6B;AACrD,SAAO,KAAK,oBAAoB,KAAK,CAAC;AACxC;AAQA,SAAS,qBACP,OACA,YACQ;AACR,QAAM,eAA6B,CAAC;AACpC,aAAW,MAAM,MAAM,QAAQ;AAC7B,UAAM,MAAM,YAAY,KAAK,CAACA,SAAQA,KAAI,OAAO,EAAE;AAEnD,QAAI,CAAC,OAAO,CAAC,IAAI,UAAU,IAAI,WAAW,eAAe;AACvD,mBAAa,EAAE,IAAI,MAAM,OAAO,EAAE;AAAA,IACpC;AAAA,EACF;AACA,SAAO,iBAAiB;AAAA,IACtB,GAAG;AAAA,IACH,QAAQ;AAAA,EACV,CAAC;AACH;AAiBA,IAAM,wBAAyC;AAAA,EAC7C,OAAO;AAAA,IACL,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ,CAAC;AAAA,IACT,QAAQ,MAAM;AAAA,IAAC;AAAA,IACf,WAAW;AAAA,IACX,SAAS;AAAA,EACX;AAAA,EACA,YAAY;AAAA,IACV,QAAQ;AAAA,IACR,SAAS;AAAA,IACT,QAAQ,MAAM;AAAA,IAAC;AAAA,EACjB;AAAA,EACA,SAAS;AAAA,IACP,gBAAgB;AAAA,IAChB,WAAW;AAAA,MACT,MAAM;AAAA,MACN,MAAM;AAAA,IACR;AAAA,EACF;AACF;AAEO,IAAM,iBAAiB,cAAc,qBAAqB;AAG1D,SAAS,gBAAgB,EAAE,SAAS,GAAU;AACnD,QAAM,CAAC,OAAO,QAAQ,IAAI,SAAuB;AAAA,IAC/C,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,QAAQ,CAAC;AAAA,IACT,WAAW;AAAA,IACX,SACG,IAAI,gBAAgB,OAAO,SAAS,MAAM,EAAE;AAAA,MAC3C;AAAA,IACF,KAA2B;AAAA,EAC/B,CAAC;AACD,QAAM,CAAC,YAAY,aAAa,IAAI,SAA4B;AAAA,IAC9D,QAAQ;AAAA,IACR,SAAS;AAAA,EACX,CAAC;AAED,QAAM,SAAuC,CAAC,SAAS;AACrD,aAAS,CAAC,eAAe;AAAA,MACvB,GAAG;AAAA,MACH,GAAG;AAAA,IACL,EAAE;AAAA,EACJ;AAEA,QAAM,mBAAsD,CAAC,SAAS;AACpE,kBAAc,CAAC,oBAAoB;AAAA,MACjC,GAAG;AAAA,MACH,GAAG;AAAA,IACL,EAAE;AAAA,EACJ;AAGA,QAAM,qBAAqB;AAAA,IACzB,OAAO;AAAA,MACL,GAAG;AAAA,MACH,QACE,WAAW,QAAQ,IAAI,CAAC,OAAuC;AAAA,QAC7D,GAAG;AAAA,QACH,SAAS,WAAW,WAAW;AAAA,MACjC,EAAE,KAAK;AAAA,IACX;AAAA,IACA,CAAC,UAAU;AAAA,EACb;AAEA,QAAM,MAAuB;AAAA,IAC3B,OAAO;AAAA,MACL,GAAG;AAAA,MACH;AAAA,IACF;AAAA,IACA,YAAY;AAAA,MACV,GAAG;AAAA,MACH,QAAQ;AAAA,IACV;AAAA,IACA,SAAS;AAAA,MACP,OAAO;AAAA,QACL,gBAAgB,eAAe,WAAW,UAAU,CAAC,CAAC;AAAA,QACtD,WAAW;AAAA,UACT,MAAM,iBAAiB,KAAK;AAAA,UAC5B,MAAM,qBAAqB,OAAO,WAAW,MAAM;AAAA,QACrD;AAAA,MACF;AAAA,MACA,CAAC,OAAO,WAAW,MAAM;AAAA,IAC3B;AAAA,EACF;AAEA,SACE,oBAAC,eAAe,UAAf,EAAwB,OAAO,KAAM,UAAS;AAEnD","sourcesContent":["import {\n FxParamDefinition,\n FxParamType,\n FxParamsData,\n} from \"types\"\nimport { PropsWithChildren, useMemo, useState } from \"react\"\nimport { createContext } from \"react\"\nimport sha1 from \"sha1\"\nimport { jsonStringifyBigint, sumBytesParams } from \"utils\"\n\nexport type TUpdateStateFn<T> = (data: Partial<T>) => void\n\nexport type TUpdateableState<T> = T & {\n update: TUpdateStateFn<T>\n}\n/**\n * The Runtime Context is responsible for managing the state of a project ran\n * in a frame. It centralizes any source of data to derive the project and\n * facilitate their manipulation from the outside.\n *\n * See comments on IRuntimeContext for more details.\n */\n\nexport type TExecutionContext = \"minting\" | \"standalone\" | \"capture\"\n\nexport interface RuntimeState {\n hash: string\n minter: string\n params: FxParamsData\n iteration: number\n context: TExecutionContext\n}\n\nexport interface RuntimeDefinition {\n params: FxParamDefinition<FxParamType>[] | null\n version: string | null\n}\n\n/**\n * Hashes a runtime state using sha1\n */\nfunction hashRuntimeState(state: RuntimeState): string {\n return sha1(jsonStringifyBigint(state))\n}\n\n/**\n * Hashes the hard-refresh properties of a runtime state:\n * - hash\n * - minter address\n * - params in update mode \"page-reload\"\n */\nfunction hashRuntimeHardState(\n state: RuntimeState,\n definition: FxParamDefinition<FxParamType>[] | null\n): string {\n const staticParams: FxParamsData = {}\n for (const id in state.params) {\n const def = definition?.find((def) => def.id === id)\n // if no definition, or update == \"page-reload\" (which is default value)\n if (!def || !def.update || def.update === \"page-reload\") {\n staticParams[id] = state.params[id]\n }\n }\n return hashRuntimeState({\n ...state,\n params: staticParams,\n })\n}\n\nexport interface IRuntimeContext {\n // the base state of the runtime\n state: TUpdateableState<RuntimeState>\n // definitions, used to manipulate the state\n definition: TUpdateableState<RuntimeDefinition>\n // extra details derived from the state & definition\n details: {\n paramsByteSize: number\n stateHash: {\n soft: string\n hard: string\n }\n }\n}\n\nconst defaultRuntimeContext: IRuntimeContext = {\n state: {\n hash: \"\",\n minter: \"\",\n params: {},\n update: () => {},\n iteration: 1,\n context: \"standalone\",\n },\n definition: {\n params: null,\n version: null,\n update: () => {},\n },\n details: {\n paramsByteSize: 0,\n stateHash: {\n soft: \"\",\n hard: \"\",\n },\n },\n}\n\nexport const RuntimeContext = createContext(defaultRuntimeContext)\n\ntype Props = PropsWithChildren<any>\nexport function RuntimeProvider({ children }: Props) {\n const [state, setState] = useState<RuntimeState>({\n hash: \"\",\n minter: \"\",\n params: {},\n iteration: 1,\n context:\n (new URLSearchParams(window.location.search).get(\n \"fxcontext\"\n ) as TExecutionContext) || \"standalone\",\n })\n const [definition, setDefinition] = useState<RuntimeDefinition>({\n params: null,\n version: null,\n })\n\n const update: TUpdateStateFn<RuntimeState> = (data) => {\n setState((lastState) => ({\n ...lastState,\n ...data,\n }))\n }\n\n const updateDefinition: TUpdateStateFn<RuntimeDefinition> = (data) => {\n setDefinition((lastDefinition) => ({\n ...lastDefinition,\n ...data,\n }))\n }\n\n // enhance each param definition with the version (useful for serialization)\n const definitionEnhanced = useMemo(\n () => ({\n ...definition,\n params:\n definition.params?.map((p: FxParamDefinition<FxParamType>) => ({\n ...p,\n version: definition.version || \"0\",\n })) || null,\n }),\n [definition]\n )\n\n const ctx: IRuntimeContext = {\n state: {\n ...state,\n update,\n },\n definition: {\n ...definitionEnhanced,\n update: updateDefinition,\n },\n details: useMemo(\n () => ({\n paramsByteSize: sumBytesParams(definition.params || []),\n stateHash: {\n soft: hashRuntimeState(state),\n hard: hashRuntimeHardState(state, definition.params),\n },\n }),\n [state, definition.params]\n ),\n }\n\n return (\n <RuntimeContext.Provider value={ctx}>{children}</RuntimeContext.Provider>\n )\n}\n"]}
@@ -0,0 +1,23 @@
1
+ import {
2
+ HTMLInputController
3
+ } from "./chunk-CE3TPOSO.js";
4
+
5
+ // src/Controller/Boolean.tsx
6
+ import { jsx } from "react/jsx-runtime";
7
+ function BooleanController(props) {
8
+ const { ...rest } = props;
9
+ return /* @__PURE__ */ jsx(
10
+ HTMLInputController,
11
+ {
12
+ type: "checkbox",
13
+ layout: "box",
14
+ inputProps: { checked: props.value },
15
+ ...rest
16
+ }
17
+ );
18
+ }
19
+
20
+ export {
21
+ BooleanController
22
+ };
23
+ //# sourceMappingURL=chunk-YOS2HCIS.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/Controller/Boolean.tsx"],"sourcesContent":["import { FxParamControllerProps, HTMLInputController } from \"./Controller\"\nimport classes from \"./Controller.module.scss\"\n\nexport function BooleanController(props: FxParamControllerProps<\"boolean\">) {\n const { ...rest } = props\n return (\n <HTMLInputController\n type=\"checkbox\"\n layout=\"box\"\n inputProps={{ checked: props.value }}\n {...rest}\n />\n )\n}\n"],"mappings":";;;;;AAMI;AAHG,SAAS,kBAAkB,OAA0C;AAC1E,QAAM,EAAE,GAAG,KAAK,IAAI;AACpB,SACE;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MACL,QAAO;AAAA,MACP,YAAY,EAAE,SAAS,MAAM,MAAM;AAAA,MAClC,GAAG;AAAA;AAAA,EACN;AAEJ;","names":[]}
@@ -0,0 +1,24 @@
1
+ import {
2
+ HTMLInputController
3
+ } from "./chunk-CE3TPOSO.js";
4
+
5
+ // src/Controller/String.tsx
6
+ import { jsx } from "react/jsx-runtime";
7
+ function StringController(props) {
8
+ const { options } = props;
9
+ const minLength = Number(options?.minLength) || 0;
10
+ const maxLength = Number(options?.maxLength) || 64;
11
+ return /* @__PURE__ */ jsx(
12
+ HTMLInputController,
13
+ {
14
+ type: "text",
15
+ inputProps: { minLength, maxLength },
16
+ ...props
17
+ }
18
+ );
19
+ }
20
+
21
+ export {
22
+ StringController
23
+ };
24
+ //# sourceMappingURL=chunk-YYEIYDDF.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/Controller/String.tsx"],"sourcesContent":["import { FxParamControllerProps, HTMLInputController } from \"./Controller\"\n\nexport function StringController(props: FxParamControllerProps<\"string\">) {\n const { options } = props\n const minLength = Number(options?.minLength) || 0\n const maxLength = Number(options?.maxLength) || 64\n\n return (\n <HTMLInputController\n type=\"text\"\n inputProps={{ minLength, maxLength }}\n {...props}\n />\n )\n}\n"],"mappings":";;;;;AAQI;AANG,SAAS,iBAAiB,OAAyC;AACxE,QAAM,EAAE,QAAQ,IAAI;AACpB,QAAM,YAAY,OAAO,SAAS,SAAS,KAAK;AAChD,QAAM,YAAY,OAAO,SAAS,SAAS,KAAK;AAEhD,SACE;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MACL,YAAY,EAAE,WAAW,UAAU;AAAA,MAClC,GAAG;AAAA;AAAA,EACN;AAEJ;","names":[]}
@@ -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-SDPENM2L.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-ZUITF5XX.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":[]}
package/dist/hooks.cjs ADDED
@@ -0,0 +1,29 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }// src/hooks.ts
2
+ var _react = require('react');
3
+ function useMessageListener(eventId, listener) {
4
+ _react.useEffect.call(void 0, () => {
5
+ const _listener = (e) => {
6
+ if (e.data.id === eventId)
7
+ listener(e);
8
+ };
9
+ window.addEventListener("message", _listener, false);
10
+ return () => {
11
+ window.removeEventListener("message", _listener, false);
12
+ };
13
+ }, [listener]);
14
+ }
15
+ function usePostMessageListener(iframe, eventId, listener) {
16
+ useMessageListener(eventId, listener);
17
+ _react.useEffect.call(void 0, () => {
18
+ if (!iframe.current)
19
+ return;
20
+ iframe.current.addEventListener("load", () => {
21
+ _optionalChain([iframe, 'access', _ => _.current, 'optionalAccess', _2 => _2.contentWindow, 'optionalAccess', _3 => _3.postMessage, 'call', _4 => _4(eventId, "*")]);
22
+ });
23
+ }, [iframe, eventId]);
24
+ }
25
+
26
+
27
+
28
+ exports.useMessageListener = useMessageListener; exports.usePostMessageListener = usePostMessageListener;
29
+ //# sourceMappingURL=hooks.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/hooks.ts"],"names":[],"mappings":";AAAA,SAAoB,iBAAiB;AAE9B,SAAS,mBACd,SACA,UACA;AACA,YAAU,MAAM;AACd,UAAM,YAAY,CAAC,MAAW;AAC5B,UAAI,EAAE,KAAK,OAAO;AAAS,iBAAS,CAAC;AAAA,IACvC;AAEA,WAAO,iBAAiB,WAAW,WAAW,KAAK;AAEnD,WAAO,MAAM;AACX,aAAO,oBAAoB,WAAW,WAAW,KAAK;AAAA,IACxD;AAAA,EACF,GAAG,CAAC,QAAQ,CAAC;AACf;AAEO,SAAS,uBACd,QACA,SACA,UACA;AACA,qBAAmB,SAAS,QAAQ;AACpC,YAAU,MAAM;AACd,QAAI,CAAC,OAAO;AAAS;AACrB,WAAO,QAAQ,iBAAiB,QAAQ,MAAM;AAC5C,aAAO,SAAS,eAAe,YAAY,SAAS,GAAG;AAAA,IACzD,CAAC;AAAA,EACH,GAAG,CAAC,QAAQ,OAAO,CAAC;AACtB","sourcesContent":["import { RefObject, useEffect } from \"react\"\n\nexport function useMessageListener(\n eventId: string,\n listener: (e: any) => void\n) {\n useEffect(() => {\n const _listener = (e: any) => {\n if (e.data.id === eventId) listener(e)\n }\n\n window.addEventListener(\"message\", _listener, false)\n\n return () => {\n window.removeEventListener(\"message\", _listener, false)\n }\n }, [listener])\n}\n\nexport function usePostMessageListener(\n iframe: RefObject<HTMLIFrameElement>,\n eventId: string,\n listener: (e: any) => void\n) {\n useMessageListener(eventId, listener)\n useEffect(() => {\n if (!iframe.current) return\n iframe.current.addEventListener(\"load\", () => {\n iframe.current?.contentWindow?.postMessage(eventId, \"*\")\n })\n }, [iframe, eventId])\n}\n"]}
@@ -0,0 +1,6 @@
1
+ import { RefObject } from 'react';
2
+
3
+ declare function useMessageListener(eventId: string, listener: (e: any) => void): void;
4
+ declare function usePostMessageListener(iframe: RefObject<HTMLIFrameElement>, eventId: string, listener: (e: any) => void): void;
5
+
6
+ export { useMessageListener, usePostMessageListener };
package/dist/hooks.js ADDED
@@ -0,0 +1,29 @@
1
+ // src/hooks.ts
2
+ import { useEffect } from "react";
3
+ function useMessageListener(eventId, listener) {
4
+ useEffect(() => {
5
+ const _listener = (e) => {
6
+ if (e.data.id === eventId)
7
+ listener(e);
8
+ };
9
+ window.addEventListener("message", _listener, false);
10
+ return () => {
11
+ window.removeEventListener("message", _listener, false);
12
+ };
13
+ }, [listener]);
14
+ }
15
+ function usePostMessageListener(iframe, eventId, listener) {
16
+ useMessageListener(eventId, listener);
17
+ useEffect(() => {
18
+ if (!iframe.current)
19
+ return;
20
+ iframe.current.addEventListener("load", () => {
21
+ iframe.current?.contentWindow?.postMessage(eventId, "*");
22
+ });
23
+ }, [iframe, eventId]);
24
+ }
25
+ export {
26
+ useMessageListener,
27
+ usePostMessageListener
28
+ };
29
+ //# sourceMappingURL=hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/hooks.ts"],"sourcesContent":["import { RefObject, useEffect } from \"react\"\n\nexport function useMessageListener(\n eventId: string,\n listener: (e: any) => void\n) {\n useEffect(() => {\n const _listener = (e: any) => {\n if (e.data.id === eventId) listener(e)\n }\n\n window.addEventListener(\"message\", _listener, false)\n\n return () => {\n window.removeEventListener(\"message\", _listener, false)\n }\n }, [listener])\n}\n\nexport function usePostMessageListener(\n iframe: RefObject<HTMLIFrameElement>,\n eventId: string,\n listener: (e: any) => void\n) {\n useMessageListener(eventId, listener)\n useEffect(() => {\n if (!iframe.current) return\n iframe.current.addEventListener(\"load\", () => {\n iframe.current?.contentWindow?.postMessage(eventId, \"*\")\n })\n }, [iframe, eventId])\n}\n"],"mappings":";AAAA,SAAoB,iBAAiB;AAE9B,SAAS,mBACd,SACA,UACA;AACA,YAAU,MAAM;AACd,UAAM,YAAY,CAAC,MAAW;AAC5B,UAAI,EAAE,KAAK,OAAO;AAAS,iBAAS,CAAC;AAAA,IACvC;AAEA,WAAO,iBAAiB,WAAW,WAAW,KAAK;AAEnD,WAAO,MAAM;AACX,aAAO,oBAAoB,WAAW,WAAW,KAAK;AAAA,IACxD;AAAA,EACF,GAAG,CAAC,QAAQ,CAAC;AACf;AAEO,SAAS,uBACd,QACA,SACA,UACA;AACA,qBAAmB,SAAS,QAAQ;AACpC,YAAU,MAAM;AACd,QAAI,CAAC,OAAO;AAAS;AACrB,WAAO,QAAQ,iBAAiB,QAAQ,MAAM;AAC5C,aAAO,SAAS,eAAe,YAAY,SAAS,GAAG;AAAA,IACzD,CAAC;AAAA,EACH,GAAG,CAAC,QAAQ,OAAO,CAAC;AACtB;","names":[]}
package/dist/index.cjs ADDED
@@ -0,0 +1,7 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+ var _chunkOFUKQ2TBcjs = require('./chunk-OFUKQ2TB.cjs');
4
+
5
+
6
+ exports.BaseInput = _chunkOFUKQ2TBcjs.BaseInput;
7
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":""}
package/dist/index.css ADDED
@@ -0,0 +1,112 @@
1
+ /* esbuild-sass-plugin:css-chunk:src/BaseInput.module.scss */
2
+ ._baseInput_jtvfw_1,
3
+ ._baseSelect_jtvfw_1,
4
+ ._baseButton_jtvfw_1 {
5
+ font-family: var(--fxl-font-family);
6
+ font-size: var(--fxl-font-size-regular);
7
+ height: 30px;
8
+ color: var(--fxl-color-text-primary);
9
+ background: var(--fxl-color-background2);
10
+ border: 1px solid var(--fxl-color-light2);
11
+ padding: 0 var(--fxl-spacing-xxs);
12
+ outline-offset: -1px;
13
+ }
14
+ ._baseInput_jtvfw_1:hover,
15
+ ._baseSelect_jtvfw_1:hover,
16
+ ._baseButton_jtvfw_1:hover {
17
+ background: var(--fxl-color-background3);
18
+ }
19
+ ._baseInput_jtvfw_1:focus-visible,
20
+ ._baseSelect_jtvfw_1:focus-visible,
21
+ ._baseButton_jtvfw_1:focus-visible {
22
+ outline: 1px solid var(--fxl-color-primary);
23
+ }
24
+ ._baseInput_jtvfw_1:disabled,
25
+ ._baseSelect_jtvfw_1:disabled,
26
+ ._baseButton_jtvfw_1:disabled {
27
+ opacity: 0.6;
28
+ pointer-events: none;
29
+ }
30
+ ._baseButton_jtvfw_1 {
31
+ cursor: pointer;
32
+ background: var(--fxl-color-background2);
33
+ color: var(--fxl-color-text-primary);
34
+ font-weight: 700;
35
+ }
36
+ ._baseButton_jtvfw_1:hover {
37
+ background: var(--fxl-color-background3);
38
+ color: var(--fxl-color-light);
39
+ outline: 1px solid var(--fxl-color-primary);
40
+ }
41
+ ._baseButton_jtvfw_1:focus-visible {
42
+ outline: 1px solid var(--fxl-color-primary);
43
+ outline-offset: 2px;
44
+ }
45
+ ._baseButton_jtvfw_1._color-secondary_jtvfw_37 {
46
+ background: var(--fxl-color-dark1);
47
+ color: var(--fxl-color-light);
48
+ }
49
+ ._baseButton_jtvfw_1._color-secondary_jtvfw_37:hover {
50
+ background: var(--fxl-color-dark2);
51
+ color: var(--fxl-color-light);
52
+ outline: 1px solid var(--fxl-color-primary);
53
+ }
54
+ ._iconButton_jtvfw_47 {
55
+ width: 30px !important;
56
+ cursor: pointer;
57
+ padding: 0;
58
+ display: flex;
59
+ align-items: center;
60
+ justify-content: center;
61
+ flex-grow: 0;
62
+ flex-shrink: 0;
63
+ }
64
+ ._baseInput_jtvfw_1[type=range] {
65
+ -webkit-appearance: none;
66
+ appearance: none;
67
+ height: 3px !important;
68
+ background: var(--fxl-color-light2);
69
+ outline: none;
70
+ padding: 0 !important;
71
+ border: none;
72
+ }
73
+ ._baseInput_jtvfw_1[type=range]::-webkit-slider-thumb {
74
+ -webkit-appearance: none;
75
+ appearance: none;
76
+ cursor: pointer;
77
+ width: 15px;
78
+ height: 15px;
79
+ background: var(--fxl-color-primary);
80
+ border-radius: 50%;
81
+ }
82
+ ._baseInput_jtvfw_1[type=range]::-webkit-slider-thumb:hover {
83
+ transform: scale(1.1);
84
+ }
85
+ ._baseInput_jtvfw_1[type=range]::-moz-range-thumb {
86
+ cursor: pointer;
87
+ width: 15px;
88
+ height: 15px;
89
+ background: var(--fxl-color-primary);
90
+ border-radius: 50%;
91
+ }
92
+ ._baseInput_jtvfw_1[type=checkbox] {
93
+ -webkit-appearance: none;
94
+ appearance: none;
95
+ cursor: pointer;
96
+ width: 30px !important;
97
+ height: 30px !important;
98
+ margin: 0;
99
+ padding: 0;
100
+ position: relative;
101
+ }
102
+ ._baseInput_jtvfw_1[type=checkbox]:checked:after {
103
+ content: "";
104
+ width: 15px;
105
+ height: 15px;
106
+ position: absolute;
107
+ top: 50%;
108
+ left: 50%;
109
+ transform: translate(-50%, -50%);
110
+ background: var(--fxl-color-primary);
111
+ }
112
+ /*# sourceMappingURL=index.css.map */
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["esbuild-sass-plugin:css-chunk:src/BaseInput.module.scss"],"sourcesContent":["._baseInput_jtvfw_1, ._baseSelect_jtvfw_1, ._baseButton_jtvfw_1 {\n font-family: var(--fxl-font-family);\n font-size: var(--fxl-font-size-regular);\n height: 30px;\n color: var(--fxl-color-text-primary);\n background: var(--fxl-color-background2);\n border: 1px solid var(--fxl-color-light2);\n padding: 0 var(--fxl-spacing-xxs);\n outline-offset: -1px;\n}\n._baseInput_jtvfw_1:hover, ._baseSelect_jtvfw_1:hover, ._baseButton_jtvfw_1:hover {\n background: var(--fxl-color-background3);\n}\n._baseInput_jtvfw_1:focus-visible, ._baseSelect_jtvfw_1:focus-visible, ._baseButton_jtvfw_1:focus-visible {\n outline: 1px solid var(--fxl-color-primary);\n}\n._baseInput_jtvfw_1:disabled, ._baseSelect_jtvfw_1:disabled, ._baseButton_jtvfw_1:disabled {\n opacity: 0.6;\n pointer-events: none;\n}\n\n._baseButton_jtvfw_1 {\n cursor: pointer;\n background: var(--fxl-color-background2);\n color: var(--fxl-color-text-primary);\n font-weight: 700;\n}\n._baseButton_jtvfw_1:hover {\n background: var(--fxl-color-background3);\n color: var(--fxl-color-light);\n outline: 1px solid var(--fxl-color-primary);\n}\n._baseButton_jtvfw_1:focus-visible {\n outline: 1px solid var(--fxl-color-primary);\n outline-offset: 2px;\n}\n._baseButton_jtvfw_1._color-secondary_jtvfw_37 {\n background: var(--fxl-color-dark1);\n color: var(--fxl-color-light);\n}\n._baseButton_jtvfw_1._color-secondary_jtvfw_37:hover {\n background: var(--fxl-color-dark2);\n color: var(--fxl-color-light);\n outline: 1px solid var(--fxl-color-primary);\n}\n\n._iconButton_jtvfw_47 {\n width: 30px !important;\n cursor: pointer;\n padding: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-grow: 0;\n flex-shrink: 0;\n}\n\n._baseInput_jtvfw_1[type=range] {\n -webkit-appearance: none;\n appearance: none;\n height: 3px !important;\n background: var(--fxl-color-light2);\n outline: none;\n padding: 0 !important;\n border: none;\n}\n\n._baseInput_jtvfw_1[type=range]::-webkit-slider-thumb {\n -webkit-appearance: none; /* Override default look */\n appearance: none;\n cursor: pointer;\n width: 15px;\n height: 15px;\n background: var(--fxl-color-primary);\n border-radius: 50%;\n}\n._baseInput_jtvfw_1[type=range]::-webkit-slider-thumb:hover {\n transform: scale(1.1);\n}\n\n._baseInput_jtvfw_1[type=range]::-moz-range-thumb {\n cursor: pointer;\n width: 15px;\n height: 15px;\n background: var(--fxl-color-primary);\n border-radius: 50%;\n}\n\n._baseInput_jtvfw_1[type=checkbox] {\n -webkit-appearance: none;\n appearance: none;\n cursor: pointer;\n width: 30px !important;\n height: 30px !important;\n margin: 0;\n padding: 0;\n position: relative;\n}\n._baseInput_jtvfw_1[type=checkbox]:checked:after {\n content: \"\";\n width: 15px;\n height: 15px;\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n background: var(--fxl-color-primary);\n}"],"mappings":";AAAA;AAAA;AAAA;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAEF;AAAA;AAAA;AACE;AAAA;AAEF;AAAA;AAAA;AACE;AAAA;AAEF;AAAA;AAAA;AACE;AACA;AAAA;AAGF;AACE;AACA;AACA;AACA;AAAA;AAEF;AACE;AACA;AACA;AAAA;AAEF;AACE;AACA;AAAA;AAEF;AACE;AACA;AAAA;AAEF;AACE;AACA;AACA;AAAA;AAGF;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAGF;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAGF;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAEF;AACE;AAAA;AAGF;AACE;AACA;AACA;AACA;AACA;AAAA;AAGF;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAEF;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;","names":[]}
@@ -0,0 +1,3 @@
1
+ export { BaseInput } from './BaseInput.js';
2
+ import 'react/jsx-runtime';
3
+ import 'react';
package/dist/index.js ADDED
@@ -0,0 +1,7 @@
1
+ import {
2
+ BaseInput
3
+ } from "./chunk-2BHABOFI.js";
4
+ export {
5
+ BaseInput
6
+ };
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
package/dist/types.cjs ADDED
@@ -0,0 +1 @@
1
+ "use strict";//# sourceMappingURL=types.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":""}