@tsed/react-formio 3.0.0-alpha.12 → 3.0.0-alpha.13

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 (131) hide show
  1. package/dist/all.d.ts +0 -0
  2. package/dist/all.js +38 -0
  3. package/dist/all.js.map +1 -0
  4. package/dist/chunks/_commonjsHelpers.js +30 -3
  5. package/dist/chunks/_commonjsHelpers.js.map +1 -1
  6. package/dist/chunks/index2.js +56953 -0
  7. package/dist/chunks/index2.js.map +1 -0
  8. package/dist/contexts/FormioContext.d.ts +20 -0
  9. package/dist/contexts/FormioContext.js +40 -0
  10. package/dist/contexts/FormioContext.js.map +1 -0
  11. package/dist/hooks/useFormioContext.d.ts +10 -0
  12. package/dist/hooks/useFormioContext.js +12 -0
  13. package/dist/hooks/useFormioContext.js.map +1 -0
  14. package/dist/hooks/useI18n.d.ts +4 -0
  15. package/dist/hooks/useI18n.js +9 -0
  16. package/dist/hooks/useI18n.js.map +1 -0
  17. package/dist/index.d.ts +1 -6
  18. package/dist/index.js +18 -13
  19. package/dist/index.js.map +1 -1
  20. package/dist/interfaces/ComponentType.d.ts +6 -2
  21. package/dist/interfaces/FormBuilderOptions.d.ts +7 -0
  22. package/dist/interfaces/FormBuilderOptions.js +2 -0
  23. package/dist/interfaces/FormBuilderOptions.js.map +1 -0
  24. package/dist/interfaces/FormOptions.d.ts +6 -13
  25. package/dist/interfaces/FormType.d.ts +4 -11
  26. package/dist/interfaces/SubmissionType.d.ts +5 -10
  27. package/dist/interfaces/index.d.ts +1 -0
  28. package/dist/molecules/forms/input-tags/components/ChoicesTags.d.ts +19 -19
  29. package/dist/molecules/forms/input-tags/components/ChoicesTags.js +16 -16
  30. package/dist/molecules/forms/input-tags/components/ChoicesTags.js.map +1 -1
  31. package/dist/molecules/forms/select/components/ChoicesSelect.js.map +1 -1
  32. package/dist/molecules/modal/Modal.js +6 -6
  33. package/dist/molecules/modal/Modal.js.map +1 -1
  34. package/dist/molecules/pagination/Pagination.d.ts +2 -1
  35. package/dist/molecules/pagination/Pagination.js +24 -24
  36. package/dist/molecules/pagination/Pagination.js.map +1 -1
  37. package/dist/molecules/table/Table.js +27 -27
  38. package/dist/molecules/table/Table.js.map +1 -1
  39. package/dist/molecules/table/hooks/useTable.d.ts +3 -3
  40. package/dist/molecules/table/hooks/useTable.js +13 -12
  41. package/dist/molecules/table/hooks/useTable.js.map +1 -1
  42. package/dist/molecules/table/utils/mapFormToColumns.js +22 -22
  43. package/dist/molecules/table/utils/mapFormToColumns.js.map +1 -1
  44. package/dist/molecules/tabs/TabsLegacy.d.ts +3 -2
  45. package/dist/molecules/tabs/TabsLegacy.js +30 -30
  46. package/dist/molecules/tabs/TabsLegacy.js.map +1 -1
  47. package/dist/organisms/form/access/FormAccess.schema.js +1 -0
  48. package/dist/organisms/form/access/FormAccess.schema.js.map +1 -1
  49. package/dist/organisms/form/actions/FormAction.js +14 -11
  50. package/dist/organisms/form/actions/FormAction.js.map +1 -1
  51. package/dist/organisms/form/builder/FormEdit.d.ts +4 -3
  52. package/dist/organisms/form/builder/FormEdit.js +36 -36
  53. package/dist/organisms/form/builder/FormEdit.js.map +1 -1
  54. package/dist/organisms/form/builder/FormEditCtas.d.ts +2 -2
  55. package/dist/organisms/form/builder/FormEditCtas.js +14 -13
  56. package/dist/organisms/form/builder/FormEditCtas.js.map +1 -1
  57. package/dist/organisms/form/builder/useFormBuilder.d.ts +4 -4
  58. package/dist/organisms/form/builder/useFormBuilder.js +12 -12
  59. package/dist/organisms/form/builder/useFormBuilder.js.map +1 -1
  60. package/dist/organisms/form/builder/useFormEdit.d.ts +1 -1
  61. package/dist/organisms/form/exports/FormExport.d.ts +3 -2
  62. package/dist/organisms/form/exports/FormExport.js +21 -20
  63. package/dist/organisms/form/exports/FormExport.js.map +1 -1
  64. package/dist/organisms/form/preview/FormPreview.d.ts +3 -3
  65. package/dist/organisms/form/preview/FormPreview.js +5 -4
  66. package/dist/organisms/form/preview/FormPreview.js.map +1 -1
  67. package/dist/organisms/form/settings/FormSettings.js +21 -21
  68. package/dist/organisms/form/settings/FormSettings.js.map +1 -1
  69. package/dist/organisms/form/useForm.d.ts +2 -1
  70. package/dist/organisms/form/useForm.js +2 -2
  71. package/dist/organisms/form/useForm.js.map +1 -1
  72. package/dist/organisms/table/actions/ActionsTable.d.ts +2 -1
  73. package/dist/organisms/table/actions/ActionsTable.js +10 -9
  74. package/dist/organisms/table/actions/ActionsTable.js.map +1 -1
  75. package/dist/organisms/table/forms/FormsTable.d.ts +1 -1
  76. package/dist/organisms/table/forms/FormsTable.js +9 -8
  77. package/dist/organisms/table/forms/FormsTable.js.map +1 -1
  78. package/dist/organisms/table/forms/components/FormsCell.js +10 -10
  79. package/dist/organisms/views/FormViews.d.ts +3 -3
  80. package/dist/organisms/views/FormViews.js +47 -46
  81. package/dist/organisms/views/FormViews.js.map +1 -1
  82. package/dist/utils/iconClass.js +4 -5
  83. package/dist/utils/iconClass.js.map +1 -1
  84. package/package.json +3 -3
  85. package/src/all.ts +34 -0
  86. package/src/contexts/FormioContext.tsx +96 -0
  87. package/src/hooks/useFormioContext.ts +13 -0
  88. package/src/hooks/useI18n.ts +9 -0
  89. package/src/index.ts +17 -13
  90. package/src/interfaces/ComponentType.ts +2 -2
  91. package/src/interfaces/FormBuilderOptions.ts +9 -0
  92. package/src/interfaces/FormOptions.ts +7 -13
  93. package/src/interfaces/FormType.ts +5 -11
  94. package/src/interfaces/SubmissionType.ts +9 -8
  95. package/src/interfaces/index.ts +1 -0
  96. package/src/molecules/forms/form-control/FormControl.spec.tsx +5 -2
  97. package/src/molecules/forms/input-tags/components/ChoicesTags.tsx +4 -4
  98. package/src/molecules/forms/select/components/ChoicesSelect.tsx +2 -2
  99. package/src/molecules/pagination/Pagination.tsx +10 -9
  100. package/src/molecules/table/Table.stories.tsx +6 -6
  101. package/src/molecules/table/Table.tsx +1 -1
  102. package/src/molecules/table/hooks/useTable.tsx +7 -6
  103. package/src/molecules/table/utils/mapFormToColumns.tsx +6 -5
  104. package/src/molecules/tabs/TabsLegacy.stories.tsx +1 -1
  105. package/src/molecules/tabs/TabsLegacy.tsx +5 -3
  106. package/src/organisms/form/Form.stories.tsx +4 -0
  107. package/src/organisms/form/access/FormAccess.schema.ts +1 -0
  108. package/src/organisms/form/access/FormAccess.stories.tsx +3 -1
  109. package/src/organisms/form/actions/FormAction.stories.tsx +5 -1
  110. package/src/organisms/form/actions/FormAction.tsx +2 -2
  111. package/src/organisms/form/builder/FormEdit.stories.tsx +10 -6
  112. package/src/organisms/form/builder/FormEdit.tsx +6 -6
  113. package/src/organisms/form/builder/FormEditCtas.tsx +10 -10
  114. package/src/organisms/form/builder/useFormBuilder.ts +7 -6
  115. package/src/organisms/form/exports/FormExport.stories.tsx +8 -11
  116. package/src/organisms/form/exports/FormExport.tsx +12 -9
  117. package/src/organisms/form/preview/FormPreview.stories.tsx +6 -9
  118. package/src/organisms/form/preview/FormPreview.tsx +7 -5
  119. package/src/organisms/form/settings/FormSettings.component.spec.tsx +3 -1
  120. package/src/organisms/form/settings/FormSettings.stories.tsx +1 -1
  121. package/src/organisms/form/settings/FormSettings.tsx +6 -6
  122. package/src/organisms/form/useForm.ts +2 -3
  123. package/src/organisms/table/actions/ActionsTable.tsx +7 -5
  124. package/src/organisms/table/forms/FormsTable.tsx +6 -5
  125. package/src/organisms/table/submissions/SubmissionsTable.stories.tsx +10 -13
  126. package/src/organisms/views/FormViews.stories.tsx +13 -16
  127. package/src/organisms/views/FormViews.tsx +18 -16
  128. package/src/utils/iconClass.ts +1 -3
  129. package/dist/typings.d.js +0 -2
  130. package/dist/typings.d.js.map +0 -1
  131. package/src/typings.d.ts +0 -3
@@ -1 +1 @@
1
- {"version":3,"file":"FormExport.js","sources":["../../../../src/organisms/form/exports/FormExport.tsx"],"sourcesContent":["import { Icon } from \"../../../atoms/icon/Icon.js\";\nimport type { Card } from \"../../../molecules/card/Card.js\";\nimport { getComponent } from \"../../../registries/components.js\";\n\nexport interface FormExportProps {\n i18n?: (key: string) => string;\n onClick?: (action: \"export:form\" | \"export:submissions\", format: \"json\" | \"csv\") => void;\n}\n\nexport function FormExport({ i18n = (f: string) => f, onClick }: FormExportProps) {\n const FCard = getComponent<typeof Card>(\"Card\");\n\n return (\n <div>\n <div className={\"flex gap-3\"}>\n <div className={\"sm:w-1/2\"}>\n <FCard\n label={\n (\n <span className={\"flex items-center\"}>\n <Icon name={\"detail\"} className={\"mr-1 text-secondary\"} /> {i18n(`Export schema`)}\n </span>\n ) as any\n }\n >\n <p className={\"mb-5\"}>{i18n(\"Export the formIO schema:\")}</p>\n <div className={\"flex items-center justify-center\"}>\n <button className={\"btn btn-primary\"} onClick={() => onClick?.(\"export:form\", \"json\")}>\n <Icon name={\"code\"} className={\"mr-1\"} /> {i18n(`Json`)}\n </button>\n </div>\n </FCard>\n </div>\n <div className={\"sm:w-1/2\"}>\n <FCard\n label={\n (\n <span className={\"flex items-center\"}>\n <Icon name={\"data\"} className={\"mr-1 text-secondary\"} /> {i18n(`Export submissions`)}\n </span>\n ) as any\n }\n >\n <p className={\"mb-5\"}>{i18n(\"Export all submission as JSON or CSV:\")}</p>\n <div className={\"flex items-center justify-center\"}>\n <button className={\"btn btn-primary mr-4\"} onClick={() => onClick?.(\"export:submissions\", \"json\")}>\n <Icon name={\"code\"} className={\"mr-1\"} /> {i18n(`Json`)}\n </button>\n <button className={\"btn btn-primary\"} onClick={() => onClick?.(\"export:submissions\", \"csv\")}>\n <Icon name={\"spreadsheet\"} className={\"mr-1\"} /> {i18n(`Csv`)}\n </button>\n </div>\n </FCard>\n </div>\n </div>\n </div>\n );\n}\n"],"names":["FormExport","i18n","f","onClick","FCard","getComponent","jsx","jsxs","Icon"],"mappings":";;;AASO,SAASA,EAAW,EAAE,MAAAC,IAAO,CAACC,MAAcA,GAAG,SAAAC,KAA4B;AAChF,QAAMC,IAAQC,EAA0B,MAAM;AAE9C,SACE,gBAAAC,EAAC,OAAA,EACC,UAAA,gBAAAC,EAAC,OAAA,EAAI,WAAW,cACd,UAAA;AAAA,IAAA,gBAAAD,EAAC,OAAA,EAAI,WAAW,YACd,UAAA,gBAAAC;AAAA,MAACH;AAAA,MAAA;AAAA,QACC,OAEI,gBAAAG,EAAC,QAAA,EAAK,WAAW,qBACf,UAAA;AAAA,UAAA,gBAAAD,EAACE,GAAA,EAAK,MAAM,UAAU,WAAW,uBAAuB;AAAA,UAAE;AAAA,UAAEP,EAAK,eAAe;AAAA,QAAA,GAClF;AAAA,QAIJ,UAAA;AAAA,UAAA,gBAAAK,EAAC,KAAA,EAAE,WAAW,QAAS,UAAAL,EAAK,2BAA2B,GAAE;AAAA,UACzD,gBAAAK,EAAC,OAAA,EAAI,WAAW,oCACd,UAAA,gBAAAC,EAAC,UAAA,EAAO,WAAW,mBAAmB,SAAS,MAAMJ,IAAU,eAAe,MAAM,GAClF,UAAA;AAAA,YAAA,gBAAAG,EAACE,GAAA,EAAK,MAAM,QAAQ,WAAW,QAAQ;AAAA,YAAE;AAAA,YAAEP,EAAK,MAAM;AAAA,UAAA,EAAA,CACxD,EAAA,CACF;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA,GAEJ;AAAA,IACA,gBAAAK,EAAC,OAAA,EAAI,WAAW,YACd,UAAA,gBAAAC;AAAA,MAACH;AAAA,MAAA;AAAA,QACC,OAEI,gBAAAG,EAAC,QAAA,EAAK,WAAW,qBACf,UAAA;AAAA,UAAA,gBAAAD,EAACE,GAAA,EAAK,MAAM,QAAQ,WAAW,uBAAuB;AAAA,UAAE;AAAA,UAAEP,EAAK,oBAAoB;AAAA,QAAA,GACrF;AAAA,QAIJ,UAAA;AAAA,UAAA,gBAAAK,EAAC,KAAA,EAAE,WAAW,QAAS,UAAAL,EAAK,uCAAuC,GAAE;AAAA,UACrE,gBAAAM,EAAC,OAAA,EAAI,WAAW,oCACd,UAAA;AAAA,YAAA,gBAAAA,EAAC,UAAA,EAAO,WAAW,wBAAwB,SAAS,MAAMJ,IAAU,sBAAsB,MAAM,GAC9F,UAAA;AAAA,cAAA,gBAAAG,EAACE,GAAA,EAAK,MAAM,QAAQ,WAAW,QAAQ;AAAA,cAAE;AAAA,cAAEP,EAAK,MAAM;AAAA,YAAA,GACxD;AAAA,YACA,gBAAAM,EAAC,YAAO,WAAW,mBAAmB,SAAS,MAAMJ,IAAU,sBAAsB,KAAK,GACxF,UAAA;AAAA,cAAA,gBAAAG,EAACE,GAAA,EAAK,MAAM,eAAe,WAAW,QAAQ;AAAA,cAAE;AAAA,cAAEP,EAAK,KAAK;AAAA,YAAA,EAAA,CAC9D;AAAA,UAAA,EAAA,CACF;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA,EACF,CACF;AAAA,EAAA,EAAA,CACF,EAAA,CACF;AAEJ;"}
1
+ {"version":3,"file":"FormExport.js","sources":["../../../../src/organisms/form/exports/FormExport.tsx"],"sourcesContent":["import { Icon } from \"../../../atoms/icon/Icon.js\";\nimport { useI18n } from \"../../../hooks/useI18n.js\";\nimport { FormOptions } from \"../../../interfaces/FormOptions.js\";\nimport type { Card } from \"../../../molecules/card/Card.js\";\nimport { getComponent } from \"../../../registries/components.js\";\n\nexport interface FormExportProps {\n i18n?: FormOptions[\"i18n\"];\n onClick?: (action: \"export:form\" | \"export:submissions\", format: \"json\" | \"csv\") => void;\n}\n\nexport function FormExport({ onClick, ...props }: FormExportProps) {\n const FCard = getComponent<typeof Card>(\"Card\");\n const { t } = useI18n(props?.i18n);\n\n return (\n <div>\n <div className={\"flex gap-3\"}>\n <div className={\"sm:w-1/2\"}>\n <FCard\n label={\n (\n <span className={\"flex items-center\"}>\n <Icon name={\"detail\"} className={\"mr-1 text-secondary\"} /> {t(`Export schema`)}\n </span>\n ) as any\n }\n >\n <p className={\"mb-5\"}>{t(\"Export the formIO schema:\")}</p>\n <div className={\"flex items-center justify-center\"}>\n <button className={\"btn btn-primary\"} onClick={() => onClick?.(\"export:form\", \"json\")}>\n <Icon name={\"code\"} className={\"mr-1\"} /> {t(`Json`)}\n </button>\n </div>\n </FCard>\n </div>\n <div className={\"sm:w-1/2\"}>\n <FCard\n label={\n (\n <span className={\"flex items-center\"}>\n <Icon name={\"data\"} className={\"mr-1 text-secondary\"} /> {t(`Export submissions`)}\n </span>\n ) as any\n }\n >\n <p className={\"mb-5\"}>{t(\"Export all submission as JSON or CSV:\")}</p>\n <div className={\"flex items-center justify-center\"}>\n <button className={\"btn btn-primary mr-4\"} onClick={() => onClick?.(\"export:submissions\", \"json\")}>\n <Icon name={\"code\"} className={\"mr-1\"} /> {t(`Json`)}\n </button>\n <button className={\"btn btn-primary\"} onClick={() => onClick?.(\"export:submissions\", \"csv\")}>\n <Icon name={\"spreadsheet\"} className={\"mr-1\"} /> {t(`Csv`)}\n </button>\n </div>\n </FCard>\n </div>\n </div>\n </div>\n );\n}\n"],"names":["FormExport","onClick","props","FCard","getComponent","t","useI18n","jsx","jsxs","Icon"],"mappings":";;;;AAWO,SAASA,EAAW,EAAE,SAAAC,GAAS,GAAGC,KAA0B;AACjE,QAAMC,IAAQC,EAA0B,MAAM,GACxC,EAAE,GAAAC,EAAA,IAAMC,EAAQJ,GAAO,IAAI;AAEjC,SACE,gBAAAK,EAAC,OAAA,EACC,UAAA,gBAAAC,EAAC,OAAA,EAAI,WAAW,cACd,UAAA;AAAA,IAAA,gBAAAD,EAAC,OAAA,EAAI,WAAW,YACd,UAAA,gBAAAC;AAAA,MAACL;AAAA,MAAA;AAAA,QACC,OAEI,gBAAAK,EAAC,QAAA,EAAK,WAAW,qBACf,UAAA;AAAA,UAAA,gBAAAD,EAACE,GAAA,EAAK,MAAM,UAAU,WAAW,uBAAuB;AAAA,UAAE;AAAA,UAAEJ,EAAE,eAAe;AAAA,QAAA,GAC/E;AAAA,QAIJ,UAAA;AAAA,UAAA,gBAAAE,EAAC,KAAA,EAAE,WAAW,QAAS,UAAAF,EAAE,2BAA2B,GAAE;AAAA,UACtD,gBAAAE,EAAC,OAAA,EAAI,WAAW,oCACd,UAAA,gBAAAC,EAAC,UAAA,EAAO,WAAW,mBAAmB,SAAS,MAAMP,IAAU,eAAe,MAAM,GAClF,UAAA;AAAA,YAAA,gBAAAM,EAACE,GAAA,EAAK,MAAM,QAAQ,WAAW,QAAQ;AAAA,YAAE;AAAA,YAAEJ,EAAE,MAAM;AAAA,UAAA,EAAA,CACrD,EAAA,CACF;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA,GAEJ;AAAA,IACA,gBAAAE,EAAC,OAAA,EAAI,WAAW,YACd,UAAA,gBAAAC;AAAA,MAACL;AAAA,MAAA;AAAA,QACC,OAEI,gBAAAK,EAAC,QAAA,EAAK,WAAW,qBACf,UAAA;AAAA,UAAA,gBAAAD,EAACE,GAAA,EAAK,MAAM,QAAQ,WAAW,uBAAuB;AAAA,UAAE;AAAA,UAAEJ,EAAE,oBAAoB;AAAA,QAAA,GAClF;AAAA,QAIJ,UAAA;AAAA,UAAA,gBAAAE,EAAC,KAAA,EAAE,WAAW,QAAS,UAAAF,EAAE,uCAAuC,GAAE;AAAA,UAClE,gBAAAG,EAAC,OAAA,EAAI,WAAW,oCACd,UAAA;AAAA,YAAA,gBAAAA,EAAC,UAAA,EAAO,WAAW,wBAAwB,SAAS,MAAMP,IAAU,sBAAsB,MAAM,GAC9F,UAAA;AAAA,cAAA,gBAAAM,EAACE,GAAA,EAAK,MAAM,QAAQ,WAAW,QAAQ;AAAA,cAAE;AAAA,cAAEJ,EAAE,MAAM;AAAA,YAAA,GACrD;AAAA,YACA,gBAAAG,EAAC,YAAO,WAAW,mBAAmB,SAAS,MAAMP,IAAU,sBAAsB,KAAK,GACxF,UAAA;AAAA,cAAA,gBAAAM,EAACE,GAAA,EAAK,MAAM,eAAe,WAAW,QAAQ;AAAA,cAAE;AAAA,cAAEJ,EAAE,KAAK;AAAA,YAAA,EAAA,CAC3D;AAAA,UAAA,EAAA,CACF;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA,EACF,CACF;AAAA,EAAA,EAAA,CACF,EAAA,CACF;AAEJ;"}
@@ -1,6 +1,6 @@
1
- import { FormType } from '../../../interfaces/index.js';
1
+ import { FormOptions, FormType } from '../../../interfaces/index.js';
2
2
  export interface FormPreviewProps {
3
3
  form: FormType;
4
- i18n?: (key: string) => string;
4
+ i18n?: FormOptions["i18n"];
5
5
  }
6
- export declare function FormPreview({ form, i18n }: FormPreviewProps): import("react/jsx-runtime").JSX.Element;
6
+ export declare function FormPreview({ form, ...props }: FormPreviewProps): import("react/jsx-runtime").JSX.Element;
@@ -1,11 +1,12 @@
1
1
  import { jsx as o } from "react/jsx-runtime";
2
+ import { useI18n as e } from "../../../hooks/useI18n.js";
2
3
  import { getComponent as m } from "../../../registries/components.js";
3
4
  import { Form as a } from "../Form.js";
4
- function l({ form: e, i18n: t = (r) => r }) {
5
- const r = m("Card");
6
- return /* @__PURE__ */ o("div", { className: "p-10 bg-gray-500", children: /* @__PURE__ */ o(r, { label: t(e.title || ""), className: "shadow", children: /* @__PURE__ */ o(a, { form: e, options: { i18n: t } }) }) });
5
+ function p({ form: r, ...t }) {
6
+ const { t: i } = e(t?.i18n), n = m("Card");
7
+ return /* @__PURE__ */ o("div", { className: "p-10 bg-gray-500", children: /* @__PURE__ */ o(n, { label: i(r.title || ""), className: "shadow", children: /* @__PURE__ */ o(a, { form: r, options: { i18n: t.i18n } }) }) });
7
8
  }
8
9
  export {
9
- l as FormPreview
10
+ p as FormPreview
10
11
  };
11
12
  //# sourceMappingURL=FormPreview.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FormPreview.js","sources":["../../../../src/organisms/form/preview/FormPreview.tsx"],"sourcesContent":["import type { FormType } from \"../../../interfaces/index.js\";\nimport type { Card } from \"../../../molecules/card/Card.js\";\nimport { getComponent } from \"../../../registries/components.js\";\nimport { Form } from \"../Form.js\";\n\nexport interface FormPreviewProps {\n form: FormType;\n i18n?: (key: string) => string;\n}\n\nexport function FormPreview({ form, i18n = (f) => f }: FormPreviewProps) {\n const FCard = getComponent<typeof Card>(\"Card\");\n\n return (\n <div className='p-10 bg-gray-500'>\n <FCard label={i18n(form.title || \"\")} className={\"shadow\"}>\n <Form form={form} options={{ i18n }} />\n </FCard>\n </div>\n );\n}\n"],"names":["FormPreview","form","i18n","f","FCard","getComponent","jsx","Form"],"mappings":";;;AAUO,SAASA,EAAY,EAAE,MAAAC,GAAM,MAAAC,IAAO,CAACC,MAAMA,KAAuB;AACvE,QAAMC,IAAQC,EAA0B,MAAM;AAE9C,SACE,gBAAAC,EAAC,SAAI,WAAU,oBACb,4BAACF,GAAA,EAAM,OAAOF,EAAKD,EAAK,SAAS,EAAE,GAAG,WAAW,UAC/C,4BAACM,GAAA,EAAK,MAAAN,GAAY,SAAS,EAAE,MAAAC,EAAA,GAAQ,EAAA,CACvC,EAAA,CACF;AAEJ;"}
1
+ {"version":3,"file":"FormPreview.js","sources":["../../../../src/organisms/form/preview/FormPreview.tsx"],"sourcesContent":["import { useI18n } from \"../../../hooks/useI18n.js\";\nimport type { FormOptions, FormType } from \"../../../interfaces/index.js\";\nimport type { Card } from \"../../../molecules/card/Card.js\";\nimport { getComponent } from \"../../../registries/components.js\";\nimport { Form } from \"../Form.js\";\n\nexport interface FormPreviewProps {\n form: FormType;\n i18n?: FormOptions[\"i18n\"];\n}\n\nexport function FormPreview({ form, ...props }: FormPreviewProps) {\n const { t } = useI18n(props?.i18n);\n const FCard = getComponent<typeof Card>(\"Card\");\n\n return (\n <div className='p-10 bg-gray-500'>\n <FCard label={t(form.title || \"\")} className={\"shadow\"}>\n <Form form={form} options={{ i18n: props.i18n }} />\n </FCard>\n </div>\n );\n}\n"],"names":["FormPreview","form","props","t","useI18n","FCard","getComponent","jsx","Form"],"mappings":";;;;AAWO,SAASA,EAAY,EAAE,MAAAC,GAAM,GAAGC,KAA2B;AAChE,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAQF,GAAO,IAAI,GAC3BG,IAAQC,EAA0B,MAAM;AAE9C,SACE,gBAAAC,EAAC,OAAA,EAAI,WAAU,oBACb,UAAA,gBAAAA,EAACF,KAAM,OAAOF,EAAEF,EAAK,SAAS,EAAE,GAAG,WAAW,UAC5C,UAAA,gBAAAM,EAACC,GAAA,EAAK,MAAAP,GAAY,SAAS,EAAE,MAAMC,EAAM,KAAA,EAAK,CAAG,EAAA,CACnD,EAAA,CACF;AAEJ;"}
@@ -1,35 +1,35 @@
1
- import { jsxs as S, jsx as p } from "react/jsx-runtime";
2
- import g from "lodash/isEqual";
3
- import l from "lodash/noop";
4
- import { useState as d, useEffect as f } from "react";
1
+ import { jsxs as b, jsx as a } from "react/jsx-runtime";
2
+ import S from "lodash/isEqual";
3
+ import g from "lodash/noop";
4
+ import { useState as c, useEffect as l } from "react";
5
+ import { useI18n as f } from "../../../hooks/useI18n.js";
5
6
  import { Form as h } from "../Form.js";
6
7
  import { getFormSettingsSchema as F } from "./FormSettings.schema.js";
7
- import { formSettingsToSubmission as b, submissionToFormSettings as y } from "./FormSettings.utils.js";
8
- function x({ form: t, onSubmit: r = l, options: e }) {
9
- const o = F(), [u, i] = d(!0), [s, m] = d(() => b(t)), a = ({ data: n, isValid: c }) => {
10
- c && m({ data: n }), i(c);
8
+ import { formSettingsToSubmission as d, submissionToFormSettings as y } from "./FormSettings.utils.js";
9
+ function x({ form: t, onSubmit: n = g }) {
10
+ const r = F(), [e, o] = c(!0), [s, i] = c(() => d(t)), p = ({ data: m, isValid: u }) => {
11
+ u && i({ data: m }), o(u);
11
12
  };
12
- return f(() => {
13
- const n = b(t);
14
- t?._id && !g(s.data, n.data) && m(n);
13
+ return l(() => {
14
+ const m = d(t);
15
+ t?._id && !S(s.data, m.data) && i(m);
15
16
  }, [t?._id]), {
16
- options: e,
17
- form: o,
17
+ form: r,
18
18
  type: t.type,
19
19
  submission: s,
20
- onChange: a,
21
- isValid: u,
22
- setIsValid: i,
20
+ onChange: p,
21
+ isValid: e,
22
+ setIsValid: o,
23
23
  onSubmit: () => {
24
- r(y(t, s));
24
+ n(y(t, s));
25
25
  }
26
26
  };
27
27
  }
28
28
  function k(t) {
29
- const { form: r, submission: e, options: o = {}, onChange: u, onSubmit: i, isValid: s } = x(t), m = o.i18n || ((a) => a);
30
- return /* @__PURE__ */ S("div", { children: [
31
- /* @__PURE__ */ p(h, { form: r, submission: e, onChange: u, options: o }),
32
- /* @__PURE__ */ p("button", { "data-testid": "submit", disabled: !s, className: "mt-5 btn btn-primary", onClick: i, type: "submit", children: m("Save settings") })
29
+ const { form: n, submission: r, onChange: e, onSubmit: o, isValid: s } = x(t), { t: i } = f(t?.options?.i18n);
30
+ return /* @__PURE__ */ b("div", { children: [
31
+ /* @__PURE__ */ a(h, { form: n, submission: r, onChange: e, options: t.options }),
32
+ /* @__PURE__ */ a("button", { "data-testid": "submit", disabled: !s, className: "mt-5 btn btn-primary", onClick: o, type: "submit", children: i("Save settings") })
33
33
  ] });
34
34
  }
35
35
  export {
@@ -1 +1 @@
1
- {"version":3,"file":"FormSettings.js","sources":["../../../../src/organisms/form/settings/FormSettings.tsx"],"sourcesContent":["import isEqual from \"lodash/isEqual\";\nimport noop from \"lodash/noop\";\nimport { useEffect, useState } from \"react\";\n\nimport type { ChangedSubmission, FormOptions, FormType } from \"../../../interfaces\";\nimport { Form } from \"../../form/Form\";\nimport { getFormSettingsSchema } from \"./FormSettings.schema\";\nimport { formSettingsToSubmission, FormSettingsType, submissionToFormSettings } from \"./FormSettings.utils\";\n\nexport interface FormSettingsProps {\n form: Partial<FormType>;\n onSubmit?: Function;\n options?: FormOptions;\n}\n\nfunction useFormSettings({ form: formDefinition, onSubmit = noop, options }: FormSettingsProps) {\n const form = getFormSettingsSchema();\n const [isValid, setIsValid] = useState(true);\n const [submission, setSubmission] = useState(() => formSettingsToSubmission(formDefinition));\n\n const onChange = ({ data, isValid }: ChangedSubmission<FormSettingsType>) => {\n if (isValid) {\n setSubmission({ data });\n }\n setIsValid(isValid);\n };\n\n useEffect(() => {\n const input = formSettingsToSubmission(formDefinition);\n if (formDefinition?._id && !isEqual(submission.data, input.data)) {\n setSubmission(input);\n }\n }, [formDefinition?._id]);\n\n return {\n options,\n form,\n type: formDefinition.type,\n submission,\n onChange,\n isValid,\n setIsValid,\n onSubmit: () => {\n onSubmit(submissionToFormSettings(formDefinition, submission));\n }\n };\n}\n\nexport function FormSettings(props: FormSettingsProps) {\n const { form, submission, options = {}, onChange, onSubmit, isValid } = useFormSettings(props);\n\n const i18n = options.i18n || ((f: string) => f);\n\n return (\n <div>\n <Form<FormSettingsType> form={form} submission={submission} onChange={onChange} options={options} />\n\n <button data-testid='submit' disabled={!isValid} className={\"mt-5 btn btn-primary\"} onClick={onSubmit} type={\"submit\"}>\n {i18n(\"Save settings\")}\n </button>\n </div>\n );\n}\n"],"names":["useFormSettings","formDefinition","onSubmit","noop","options","form","getFormSettingsSchema","isValid","setIsValid","useState","submission","setSubmission","formSettingsToSubmission","onChange","data","useEffect","input","isEqual","submissionToFormSettings","FormSettings","props","i18n","f","jsx","Form"],"mappings":";;;;;;;AAeA,SAASA,EAAgB,EAAE,MAAMC,GAAgB,UAAAC,IAAWC,GAAM,SAAAC,KAA8B;AAC9F,QAAMC,IAAOC,EAAA,GACP,CAACC,GAASC,CAAU,IAAIC,EAAS,EAAI,GACrC,CAACC,GAAYC,CAAa,IAAIF,EAAS,MAAMG,EAAyBX,CAAc,CAAC,GAErFY,IAAW,CAAC,EAAE,MAAAC,GAAM,SAAAP,QAAmD;AAC3E,IAAIA,KACFI,EAAc,EAAE,MAAAG,GAAM,GAExBN,EAAWD,CAAO;AAAA,EACpB;AAEA,SAAAQ,EAAU,MAAM;AACd,UAAMC,IAAQJ,EAAyBX,CAAc;AACrD,IAAIA,GAAgB,OAAO,CAACgB,EAAQP,EAAW,MAAMM,EAAM,IAAI,KAC7DL,EAAcK,CAAK;AAAA,EAEvB,GAAG,CAACf,GAAgB,GAAG,CAAC,GAEjB;AAAA,IACL,SAAAG;AAAA,IACA,MAAAC;AAAA,IACA,MAAMJ,EAAe;AAAA,IACrB,YAAAS;AAAA,IACA,UAAAG;AAAA,IACA,SAAAN;AAAA,IACA,YAAAC;AAAA,IACA,UAAU,MAAM;AACd,MAAAN,EAASgB,EAAyBjB,GAAgBS,CAAU,CAAC;AAAA,IAC/D;AAAA,EAAA;AAEJ;AAEO,SAASS,EAAaC,GAA0B;AACrD,QAAM,EAAE,MAAAf,GAAM,YAAAK,GAAY,SAAAN,IAAU,CAAA,GAAI,UAAAS,GAAU,UAAAX,GAAU,SAAAK,EAAA,IAAYP,EAAgBoB,CAAK,GAEvFC,IAAOjB,EAAQ,SAAS,CAACkB,MAAcA;AAE7C,2BACG,OAAA,EACC,UAAA;AAAA,IAAA,gBAAAC,EAACC,GAAA,EAAuB,MAAAnB,GAAY,YAAAK,GAAwB,UAAAG,GAAoB,SAAAT,GAAkB;AAAA,IAElG,gBAAAmB,EAAC,UAAA,EAAO,eAAY,UAAS,UAAU,CAAChB,GAAS,WAAW,wBAAwB,SAASL,GAAU,MAAM,UAC1G,UAAAmB,EAAK,eAAe,EAAA,CACvB;AAAA,EAAA,GACF;AAEJ;"}
1
+ {"version":3,"file":"FormSettings.js","sources":["../../../../src/organisms/form/settings/FormSettings.tsx"],"sourcesContent":["import isEqual from \"lodash/isEqual\";\nimport noop from \"lodash/noop\";\nimport { useEffect, useState } from \"react\";\n\nimport { useI18n } from \"../../../hooks/useI18n.js\";\nimport type { ChangedSubmission, FormOptions, FormType } from \"../../../interfaces\";\nimport { Form } from \"../../form/Form\";\nimport { getFormSettingsSchema } from \"./FormSettings.schema\";\nimport { formSettingsToSubmission, FormSettingsType, submissionToFormSettings } from \"./FormSettings.utils\";\n\nexport interface FormSettingsProps {\n form: Partial<FormType>;\n onSubmit?: Function;\n options?: FormOptions;\n}\n\nfunction useFormSettings({ form: formDefinition, onSubmit = noop }: FormSettingsProps) {\n const form = getFormSettingsSchema();\n const [isValid, setIsValid] = useState(true);\n const [submission, setSubmission] = useState(() => formSettingsToSubmission(formDefinition));\n\n const onChange = ({ data, isValid }: ChangedSubmission<FormSettingsType>) => {\n if (isValid) {\n setSubmission({ data });\n }\n setIsValid(isValid);\n };\n\n useEffect(() => {\n const input = formSettingsToSubmission(formDefinition);\n if (formDefinition?._id && !isEqual(submission.data, input.data)) {\n setSubmission(input);\n }\n }, [formDefinition?._id]);\n\n return {\n form,\n type: formDefinition.type,\n submission,\n onChange,\n isValid,\n setIsValid,\n onSubmit: () => {\n onSubmit(submissionToFormSettings(formDefinition, submission));\n }\n };\n}\n\nexport function FormSettings(props: FormSettingsProps) {\n const { form, submission, onChange, onSubmit, isValid } = useFormSettings(props);\n\n const { t } = useI18n(props?.options?.i18n);\n\n return (\n <div>\n <Form<FormSettingsType> form={form} submission={submission} onChange={onChange} options={props.options} />\n\n <button data-testid='submit' disabled={!isValid} className={\"mt-5 btn btn-primary\"} onClick={onSubmit} type={\"submit\"}>\n {t(\"Save settings\")}\n </button>\n </div>\n );\n}\n"],"names":["useFormSettings","formDefinition","onSubmit","noop","form","getFormSettingsSchema","isValid","setIsValid","useState","submission","setSubmission","formSettingsToSubmission","onChange","data","useEffect","input","isEqual","submissionToFormSettings","FormSettings","props","t","useI18n","jsx","Form"],"mappings":";;;;;;;;AAgBA,SAASA,EAAgB,EAAE,MAAMC,GAAgB,UAAAC,IAAWC,KAA2B;AACrF,QAAMC,IAAOC,EAAA,GACP,CAACC,GAASC,CAAU,IAAIC,EAAS,EAAI,GACrC,CAACC,GAAYC,CAAa,IAAIF,EAAS,MAAMG,EAAyBV,CAAc,CAAC,GAErFW,IAAW,CAAC,EAAE,MAAAC,GAAM,SAAAP,QAAmD;AAC3E,IAAIA,KACFI,EAAc,EAAE,MAAAG,GAAM,GAExBN,EAAWD,CAAO;AAAA,EACpB;AAEA,SAAAQ,EAAU,MAAM;AACd,UAAMC,IAAQJ,EAAyBV,CAAc;AACrD,IAAIA,GAAgB,OAAO,CAACe,EAAQP,EAAW,MAAMM,EAAM,IAAI,KAC7DL,EAAcK,CAAK;AAAA,EAEvB,GAAG,CAACd,GAAgB,GAAG,CAAC,GAEjB;AAAA,IACL,MAAAG;AAAA,IACA,MAAMH,EAAe;AAAA,IACrB,YAAAQ;AAAA,IACA,UAAAG;AAAA,IACA,SAAAN;AAAA,IACA,YAAAC;AAAA,IACA,UAAU,MAAM;AACd,MAAAL,EAASe,EAAyBhB,GAAgBQ,CAAU,CAAC;AAAA,IAC/D;AAAA,EAAA;AAEJ;AAEO,SAASS,EAAaC,GAA0B;AACrD,QAAM,EAAE,MAAAf,GAAM,YAAAK,GAAY,UAAAG,GAAU,UAAAV,GAAU,SAAAI,EAAA,IAAYN,EAAgBmB,CAAK,GAEzE,EAAE,GAAAC,EAAA,IAAMC,EAAQF,GAAO,SAAS,IAAI;AAE1C,2BACG,OAAA,EACC,UAAA;AAAA,IAAA,gBAAAG,EAACC,KAAuB,MAAAnB,GAAY,YAAAK,GAAwB,UAAAG,GAAoB,SAASO,EAAM,SAAS;AAAA,IAExG,gBAAAG,EAAC,UAAA,EAAO,eAAY,UAAS,UAAU,CAAChB,GAAS,WAAW,wBAAwB,SAASJ,GAAU,MAAM,UAC1G,UAAAkB,EAAE,eAAe,EAAA,CACpB;AAAA,EAAA,GACF;AAEJ;"}
@@ -1,3 +1,4 @@
1
+ import { Form } from '@formio/js';
1
2
  import { MutableRefObject } from 'react';
2
3
  import { ChangedSubmission, ComponentType, FormOptions, FormType, JSON, SubmissionType } from '../../interfaces';
3
4
  import { FormCustomEvent } from './types';
@@ -17,7 +18,7 @@ export interface UseFormProps<Data extends {
17
18
  form?: FormType;
18
19
  submission?: SubmissionType<Data>;
19
20
  options?: FormOptions;
20
- FormClass?: any;
21
+ FormClass?: typeof Form;
21
22
  onFormReady?: (instance: Webform) => void;
22
23
  onPrevPage?: (page: number, submission: SubmissionType<Data>) => void;
23
24
  onNextPage?: (page: number, submission: SubmissionType<Data>) => void;
@@ -1,4 +1,4 @@
1
- import { Form as ae } from "formiojs";
1
+ import { c as ae } from "../../chunks/index2.js";
2
2
  import { useRef as ee, useState as le, useEffect as G } from "react";
3
3
  var J = { exports: {} };
4
4
  /*!
@@ -711,7 +711,7 @@ const he = async (g, _, h, b = {}) => {
711
711
  return x.toJSON = () => ({ __WEBFORM__: !0 }), x;
712
712
  };
713
713
  function ve(g) {
714
- const { FormClass: _ = ae, form: h, src: b, url: L, options: x, submission: F, onFormReady: T, onAsyncSubmit: A, ...S } = g;
714
+ const { FormClass: _ = ae.Form, form: h, src: b, url: L, options: x, submission: F, onFormReady: T, onAsyncSubmit: A, ...S } = g;
715
715
  return {
716
716
  FormClass: _,
717
717
  formSource: h !== void 0 ? h : b,