@dwidge/json-forms-expo 0.0.2
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/LICENSE +23 -0
- package/README.md +30 -0
- package/dist/cjs/FileAttachment/AttachmentEdit.js +14 -0
- package/dist/cjs/FileAttachment/AttachmentEdit.js.map +1 -0
- package/dist/cjs/FileAttachment/AttachmentListEdit.js +21 -0
- package/dist/cjs/FileAttachment/AttachmentListEdit.js.map +1 -0
- package/dist/cjs/FileAttachment/AttachmentListView.js +13 -0
- package/dist/cjs/FileAttachment/AttachmentListView.js.map +1 -0
- package/dist/cjs/FileAttachment/AttachmentScreen.js +14 -0
- package/dist/cjs/FileAttachment/AttachmentScreen.js.map +1 -0
- package/dist/cjs/FileAttachment/AttachmentView.js +14 -0
- package/dist/cjs/FileAttachment/AttachmentView.js.map +1 -0
- package/dist/cjs/FileAttachment/index.js +24 -0
- package/dist/cjs/FileAttachment/index.js.map +1 -0
- package/dist/cjs/FileAttachment/useFileAttachmentUrl.js +12 -0
- package/dist/cjs/FileAttachment/useFileAttachmentUrl.js.map +1 -0
- package/dist/cjs/FileAttachment/useFileUrl.js +11 -0
- package/dist/cjs/FileAttachment/useFileUrl.js.map +1 -0
- package/dist/cjs/Form/EditFormAttachmentScreen.js +61 -0
- package/dist/cjs/Form/EditFormAttachmentScreen.js.map +1 -0
- package/dist/cjs/Form/FormEdit.js +12 -0
- package/dist/cjs/Form/FormEdit.js.map +1 -0
- package/dist/cjs/Form/FormEditScreen.js +29 -0
- package/dist/cjs/Form/FormEditScreen.js.map +1 -0
- package/dist/cjs/Form/FormListEdit.js +22 -0
- package/dist/cjs/Form/FormListEdit.js.map +1 -0
- package/dist/cjs/Form/FormListScreen.js +28 -0
- package/dist/cjs/Form/FormListScreen.js.map +1 -0
- package/dist/cjs/Form/FormListView.js +18 -0
- package/dist/cjs/Form/FormListView.js.map +1 -0
- package/dist/cjs/Form/FormSelectScreen.js +21 -0
- package/dist/cjs/Form/FormSelectScreen.js.map +1 -0
- package/dist/cjs/Form/FormSelectView.js +16 -0
- package/dist/cjs/Form/FormSelectView.js.map +1 -0
- package/dist/cjs/Form/FormView.js +12 -0
- package/dist/cjs/Form/FormView.js.map +1 -0
- package/dist/cjs/Form/index.js +26 -0
- package/dist/cjs/Form/index.js.map +1 -0
- package/dist/cjs/FormAttachment/FormAttachmentEdit.js +30 -0
- package/dist/cjs/FormAttachment/FormAttachmentEdit.js.map +1 -0
- package/dist/cjs/FormAttachment/FormAttachmentEditScreen.js +15 -0
- package/dist/cjs/FormAttachment/FormAttachmentEditScreen.js.map +1 -0
- package/dist/cjs/FormAttachment/FormAttachmentListEdit.js +27 -0
- package/dist/cjs/FormAttachment/FormAttachmentListEdit.js.map +1 -0
- package/dist/cjs/FormAttachment/FormAttachmentListScreen.js +31 -0
- package/dist/cjs/FormAttachment/FormAttachmentListScreen.js.map +1 -0
- package/dist/cjs/FormAttachment/FormAttachmentListView.js +21 -0
- package/dist/cjs/FormAttachment/FormAttachmentListView.js.map +1 -0
- package/dist/cjs/FormAttachment/FormAttachmentView.js +15 -0
- package/dist/cjs/FormAttachment/FormAttachmentView.js.map +1 -0
- package/dist/cjs/FormAttachment/index.js +23 -0
- package/dist/cjs/FormAttachment/index.js.map +1 -0
- package/dist/cjs/hooks/FileApi.js +15 -0
- package/dist/cjs/hooks/FileApi.js.map +1 -0
- package/dist/cjs/hooks/FileAttachmentApi.js +13 -0
- package/dist/cjs/hooks/FileAttachmentApi.js.map +1 -0
- package/dist/cjs/hooks/FormApi.js +13 -0
- package/dist/cjs/hooks/FormApi.js.map +1 -0
- package/dist/cjs/hooks/FormAttachmentApi.js +12 -0
- package/dist/cjs/hooks/FormAttachmentApi.js.map +1 -0
- package/dist/cjs/hooks/FormsContext.js +30 -0
- package/dist/cjs/hooks/FormsContext.js.map +1 -0
- package/dist/cjs/hooks/createApi.js +40 -0
- package/dist/cjs/hooks/createApi.js.map +1 -0
- package/dist/cjs/hooks/index.js +27 -0
- package/dist/cjs/hooks/index.js.map +1 -0
- package/dist/cjs/hooks/useCreateBlankAttachment.js +21 -0
- package/dist/cjs/hooks/useCreateBlankAttachment.js.map +1 -0
- package/dist/cjs/hooks/useCreateBlankForm.js +12 -0
- package/dist/cjs/hooks/useCreateBlankForm.js.map +1 -0
- package/dist/cjs/hooks/useCreateBlankFormAttachment.js +14 -0
- package/dist/cjs/hooks/useCreateBlankFormAttachment.js.map +1 -0
- package/dist/cjs/hooks/useParams.js +8 -0
- package/dist/cjs/hooks/useParams.js.map +1 -0
- package/dist/cjs/index.js +22 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/package.json +3 -0
- package/dist/cjs/types/File2.js +3 -0
- package/dist/cjs/types/File2.js.map +1 -0
- package/dist/cjs/types/FileAttachment.js +3 -0
- package/dist/cjs/types/FileAttachment.js.map +1 -0
- package/dist/cjs/types/Form1.js +3 -0
- package/dist/cjs/types/Form1.js.map +1 -0
- package/dist/cjs/types/FormAttachment.js +3 -0
- package/dist/cjs/types/FormAttachment.js.map +1 -0
- package/dist/cjs/types/index.js +21 -0
- package/dist/cjs/types/index.js.map +1 -0
- package/dist/esm/FileAttachment/AttachmentEdit.js +10 -0
- package/dist/esm/FileAttachment/AttachmentEdit.js.map +1 -0
- package/dist/esm/FileAttachment/AttachmentListEdit.js +14 -0
- package/dist/esm/FileAttachment/AttachmentListEdit.js.map +1 -0
- package/dist/esm/FileAttachment/AttachmentListView.js +9 -0
- package/dist/esm/FileAttachment/AttachmentListView.js.map +1 -0
- package/dist/esm/FileAttachment/AttachmentScreen.js +10 -0
- package/dist/esm/FileAttachment/AttachmentScreen.js.map +1 -0
- package/dist/esm/FileAttachment/AttachmentView.js +10 -0
- package/dist/esm/FileAttachment/AttachmentView.js.map +1 -0
- package/dist/esm/FileAttachment/index.js +8 -0
- package/dist/esm/FileAttachment/index.js.map +1 -0
- package/dist/esm/FileAttachment/useFileAttachmentUrl.js +8 -0
- package/dist/esm/FileAttachment/useFileAttachmentUrl.js.map +1 -0
- package/dist/esm/FileAttachment/useFileUrl.js +7 -0
- package/dist/esm/FileAttachment/useFileUrl.js.map +1 -0
- package/dist/esm/Form/EditFormAttachmentScreen.js +57 -0
- package/dist/esm/Form/EditFormAttachmentScreen.js.map +1 -0
- package/dist/esm/Form/FormEdit.js +8 -0
- package/dist/esm/Form/FormEdit.js.map +1 -0
- package/dist/esm/Form/FormEditScreen.js +25 -0
- package/dist/esm/Form/FormEditScreen.js.map +1 -0
- package/dist/esm/Form/FormListEdit.js +15 -0
- package/dist/esm/Form/FormListEdit.js.map +1 -0
- package/dist/esm/Form/FormListScreen.js +24 -0
- package/dist/esm/Form/FormListScreen.js.map +1 -0
- package/dist/esm/Form/FormListView.js +11 -0
- package/dist/esm/Form/FormListView.js.map +1 -0
- package/dist/esm/Form/FormSelectScreen.js +17 -0
- package/dist/esm/Form/FormSelectScreen.js.map +1 -0
- package/dist/esm/Form/FormSelectView.js +12 -0
- package/dist/esm/Form/FormSelectView.js.map +1 -0
- package/dist/esm/Form/FormView.js +8 -0
- package/dist/esm/Form/FormView.js.map +1 -0
- package/dist/esm/Form/index.js +10 -0
- package/dist/esm/Form/index.js.map +1 -0
- package/dist/esm/FormAttachment/FormAttachmentEdit.js +26 -0
- package/dist/esm/FormAttachment/FormAttachmentEdit.js.map +1 -0
- package/dist/esm/FormAttachment/FormAttachmentEditScreen.js +11 -0
- package/dist/esm/FormAttachment/FormAttachmentEditScreen.js.map +1 -0
- package/dist/esm/FormAttachment/FormAttachmentListEdit.js +20 -0
- package/dist/esm/FormAttachment/FormAttachmentListEdit.js.map +1 -0
- package/dist/esm/FormAttachment/FormAttachmentListScreen.js +27 -0
- package/dist/esm/FormAttachment/FormAttachmentListScreen.js.map +1 -0
- package/dist/esm/FormAttachment/FormAttachmentListView.js +14 -0
- package/dist/esm/FormAttachment/FormAttachmentListView.js.map +1 -0
- package/dist/esm/FormAttachment/FormAttachmentView.js +11 -0
- package/dist/esm/FormAttachment/FormAttachmentView.js.map +1 -0
- package/dist/esm/FormAttachment/index.js +7 -0
- package/dist/esm/FormAttachment/index.js.map +1 -0
- package/dist/esm/hooks/FileApi.js +12 -0
- package/dist/esm/hooks/FileApi.js.map +1 -0
- package/dist/esm/hooks/FileAttachmentApi.js +10 -0
- package/dist/esm/hooks/FileAttachmentApi.js.map +1 -0
- package/dist/esm/hooks/FormApi.js +10 -0
- package/dist/esm/hooks/FormApi.js.map +1 -0
- package/dist/esm/hooks/FormAttachmentApi.js +9 -0
- package/dist/esm/hooks/FormAttachmentApi.js.map +1 -0
- package/dist/esm/hooks/FormsContext.js +26 -0
- package/dist/esm/hooks/FormsContext.js.map +1 -0
- package/dist/esm/hooks/createApi.js +36 -0
- package/dist/esm/hooks/createApi.js.map +1 -0
- package/dist/esm/hooks/index.js +11 -0
- package/dist/esm/hooks/index.js.map +1 -0
- package/dist/esm/hooks/useCreateBlankAttachment.js +14 -0
- package/dist/esm/hooks/useCreateBlankAttachment.js.map +1 -0
- package/dist/esm/hooks/useCreateBlankForm.js +8 -0
- package/dist/esm/hooks/useCreateBlankForm.js.map +1 -0
- package/dist/esm/hooks/useCreateBlankFormAttachment.js +10 -0
- package/dist/esm/hooks/useCreateBlankFormAttachment.js.map +1 -0
- package/dist/esm/hooks/useParams.js +4 -0
- package/dist/esm/hooks/useParams.js.map +1 -0
- package/dist/esm/index.js +6 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/package.json +3 -0
- package/dist/esm/types/File2.js +2 -0
- package/dist/esm/types/File2.js.map +1 -0
- package/dist/esm/types/FileAttachment.js +2 -0
- package/dist/esm/types/FileAttachment.js.map +1 -0
- package/dist/esm/types/Form1.js +2 -0
- package/dist/esm/types/Form1.js.map +1 -0
- package/dist/esm/types/FormAttachment.js +2 -0
- package/dist/esm/types/FormAttachment.js.map +1 -0
- package/dist/esm/types/index.js +5 -0
- package/dist/esm/types/index.js.map +1 -0
- package/dist/tsconfig.cjs.tsbuildinfo +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/types/FileAttachment/AttachmentEdit.d.ts +6 -0
- package/dist/types/FileAttachment/AttachmentEdit.d.ts.map +1 -0
- package/dist/types/FileAttachment/AttachmentListEdit.d.ts +9 -0
- package/dist/types/FileAttachment/AttachmentListEdit.d.ts.map +1 -0
- package/dist/types/FileAttachment/AttachmentListView.d.ts +9 -0
- package/dist/types/FileAttachment/AttachmentListView.d.ts.map +1 -0
- package/dist/types/FileAttachment/AttachmentScreen.d.ts +8 -0
- package/dist/types/FileAttachment/AttachmentScreen.d.ts.map +1 -0
- package/dist/types/FileAttachment/AttachmentView.d.ts +6 -0
- package/dist/types/FileAttachment/AttachmentView.d.ts.map +1 -0
- package/dist/types/FileAttachment/index.d.ts +8 -0
- package/dist/types/FileAttachment/index.d.ts.map +1 -0
- package/dist/types/FileAttachment/useFileAttachmentUrl.d.ts +2 -0
- package/dist/types/FileAttachment/useFileAttachmentUrl.d.ts.map +1 -0
- package/dist/types/FileAttachment/useFileUrl.d.ts +2 -0
- package/dist/types/FileAttachment/useFileUrl.d.ts.map +1 -0
- package/dist/types/Form/EditFormAttachmentScreen.d.ts +40 -0
- package/dist/types/Form/EditFormAttachmentScreen.d.ts.map +1 -0
- package/dist/types/Form/FormEdit.d.ts +4 -0
- package/dist/types/Form/FormEdit.d.ts.map +1 -0
- package/dist/types/Form/FormEditScreen.d.ts +4 -0
- package/dist/types/Form/FormEditScreen.d.ts.map +1 -0
- package/dist/types/Form/FormListEdit.d.ts +6 -0
- package/dist/types/Form/FormListEdit.d.ts.map +1 -0
- package/dist/types/Form/FormListScreen.d.ts +8 -0
- package/dist/types/Form/FormListScreen.d.ts.map +1 -0
- package/dist/types/Form/FormListView.d.ts +5 -0
- package/dist/types/Form/FormListView.d.ts.map +1 -0
- package/dist/types/Form/FormSelectScreen.d.ts +6 -0
- package/dist/types/Form/FormSelectScreen.d.ts.map +1 -0
- package/dist/types/Form/FormSelectView.d.ts +8 -0
- package/dist/types/Form/FormSelectView.d.ts.map +1 -0
- package/dist/types/Form/FormView.d.ts +5 -0
- package/dist/types/Form/FormView.d.ts.map +1 -0
- package/dist/types/Form/index.d.ts +10 -0
- package/dist/types/Form/index.d.ts.map +1 -0
- package/dist/types/FormAttachment/FormAttachmentEdit.d.ts +9 -0
- package/dist/types/FormAttachment/FormAttachmentEdit.d.ts.map +1 -0
- package/dist/types/FormAttachment/FormAttachmentEditScreen.d.ts +5 -0
- package/dist/types/FormAttachment/FormAttachmentEditScreen.d.ts.map +1 -0
- package/dist/types/FormAttachment/FormAttachmentListEdit.d.ts +11 -0
- package/dist/types/FormAttachment/FormAttachmentListEdit.d.ts.map +1 -0
- package/dist/types/FormAttachment/FormAttachmentListScreen.d.ts +7 -0
- package/dist/types/FormAttachment/FormAttachmentListScreen.d.ts.map +1 -0
- package/dist/types/FormAttachment/FormAttachmentListView.d.ts +5 -0
- package/dist/types/FormAttachment/FormAttachmentListView.d.ts.map +1 -0
- package/dist/types/FormAttachment/FormAttachmentView.d.ts +6 -0
- package/dist/types/FormAttachment/FormAttachmentView.d.ts.map +1 -0
- package/dist/types/FormAttachment/index.d.ts +7 -0
- package/dist/types/FormAttachment/index.d.ts.map +1 -0
- package/dist/types/hooks/FileApi.d.ts +35 -0
- package/dist/types/hooks/FileApi.d.ts.map +1 -0
- package/dist/types/hooks/FileAttachmentApi.d.ts +35 -0
- package/dist/types/hooks/FileAttachmentApi.d.ts.map +1 -0
- package/dist/types/hooks/FormApi.d.ts +35 -0
- package/dist/types/hooks/FormApi.d.ts.map +1 -0
- package/dist/types/hooks/FormAttachmentApi.d.ts +35 -0
- package/dist/types/hooks/FormAttachmentApi.d.ts.map +1 -0
- package/dist/types/hooks/FormsContext.d.ts +20 -0
- package/dist/types/hooks/FormsContext.d.ts.map +1 -0
- package/dist/types/hooks/createApi.d.ts +36 -0
- package/dist/types/hooks/createApi.d.ts.map +1 -0
- package/dist/types/hooks/index.d.ts +11 -0
- package/dist/types/hooks/index.d.ts.map +1 -0
- package/dist/types/hooks/useCreateBlankAttachment.d.ts +10 -0
- package/dist/types/hooks/useCreateBlankAttachment.d.ts.map +1 -0
- package/dist/types/hooks/useCreateBlankForm.d.ts +6 -0
- package/dist/types/hooks/useCreateBlankForm.d.ts.map +1 -0
- package/dist/types/hooks/useCreateBlankFormAttachment.d.ts +13 -0
- package/dist/types/hooks/useCreateBlankFormAttachment.d.ts.map +1 -0
- package/dist/types/hooks/useParams.d.ts +7 -0
- package/dist/types/hooks/useParams.d.ts.map +1 -0
- package/dist/types/index.d.ts +6 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/types/File2.d.ts +16 -0
- package/dist/types/types/File2.d.ts.map +1 -0
- package/dist/types/types/FileAttachment.d.ts +10 -0
- package/dist/types/types/FileAttachment.d.ts.map +1 -0
- package/dist/types/types/Form1.d.ts +14 -0
- package/dist/types/types/Form1.d.ts.map +1 -0
- package/dist/types/types/FormAttachment.d.ts +13 -0
- package/dist/types/types/FormAttachment.d.ts.map +1 -0
- package/dist/types/types/index.d.ts +5 -0
- package/dist/types/types/index.d.ts.map +1 -0
- package/package.json +73 -0
- package/src/FileAttachment/AttachmentEdit.tsx +14 -0
- package/src/FileAttachment/AttachmentListEdit.tsx +45 -0
- package/src/FileAttachment/AttachmentListView.tsx +12 -0
- package/src/FileAttachment/AttachmentScreen.tsx +21 -0
- package/src/FileAttachment/AttachmentView.tsx +14 -0
- package/src/FileAttachment/index.ts +7 -0
- package/src/FileAttachment/useFileAttachmentUrl.ts +15 -0
- package/src/FileAttachment/useFileUrl.ts +12 -0
- package/src/Form/EditFormAttachmentScreen.tsx +101 -0
- package/src/Form/FormEdit.tsx +15 -0
- package/src/Form/FormEditScreen.tsx +54 -0
- package/src/Form/FormListEdit.tsx +32 -0
- package/src/Form/FormListScreen.tsx +54 -0
- package/src/Form/FormListView.tsx +23 -0
- package/src/Form/FormSelectScreen.tsx +49 -0
- package/src/Form/FormSelectView.tsx +31 -0
- package/src/Form/FormView.tsx +11 -0
- package/src/Form/index.ts +9 -0
- package/src/FormAttachment/FormAttachmentEdit.tsx +72 -0
- package/src/FormAttachment/FormAttachmentEditScreen.tsx +21 -0
- package/src/FormAttachment/FormAttachmentListEdit.tsx +40 -0
- package/src/FormAttachment/FormAttachmentListScreen.tsx +62 -0
- package/src/FormAttachment/FormAttachmentListView.tsx +30 -0
- package/src/FormAttachment/FormAttachmentView.tsx +25 -0
- package/src/FormAttachment/index.ts +6 -0
- package/src/hooks/FileApi.ts +13 -0
- package/src/hooks/FileAttachmentApi.ts +11 -0
- package/src/hooks/FormApi.ts +11 -0
- package/src/hooks/FormAttachmentApi.ts +10 -0
- package/src/hooks/FormsContext.ts +29 -0
- package/src/hooks/createApi.ts +65 -0
- package/src/hooks/index.ts +10 -0
- package/src/hooks/useCreateBlankAttachment.ts +24 -0
- package/src/hooks/useCreateBlankForm.ts +12 -0
- package/src/hooks/useCreateBlankFormAttachment.ts +20 -0
- package/src/hooks/useParams.ts +9 -0
- package/src/index.ts +5 -0
- package/src/types/File2.ts +19 -0
- package/src/types/FileAttachment.ts +9 -0
- package/src/types/Form1.ts +17 -0
- package/src/types/FormAttachment.ts +19 -0
- package/src/types/index.ts +4 -0
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export * from "./AttachmentEdit";
|
|
2
|
+
export * from "./AttachmentListEdit";
|
|
3
|
+
export * from "./AttachmentListView";
|
|
4
|
+
export * from "./AttachmentScreen";
|
|
5
|
+
export * from "./AttachmentView";
|
|
6
|
+
export * from "./useFileAttachmentUrl";
|
|
7
|
+
export * from "./useFileUrl";
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/FileAttachment/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AACvC,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
// Copyright DWJ 2024.
|
|
2
|
+
// Distributed under the Boost Software License, Version 1.0.
|
|
3
|
+
// https://www.boost.org/LICENSE_1_0.txt
|
|
4
|
+
import { FileApi } from "../hooks/FileApi";
|
|
5
|
+
import { FileAttachmentApi } from "../hooks/FileAttachmentApi";
|
|
6
|
+
export const useFileAttachmentUrl = (attachmentId) => useFileAttachmentUrlInternal(attachmentId);
|
|
7
|
+
const useFileAttachmentUrlInternal = (attachmentId, attachment = FileAttachmentApi.useGetItem(attachmentId), file = FileApi.useGetItem(attachment?.FileId)) => file?.getUrl;
|
|
8
|
+
//# sourceMappingURL=useFileAttachmentUrl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useFileAttachmentUrl.js","sourceRoot":"","sources":["../../../src/FileAttachment/useFileAttachmentUrl.ts"],"names":[],"mappings":"AAAA,sBAAsB;AACtB,6DAA6D;AAC7D,wCAAwC;AAExC,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAE/D,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,YAAqB,EACM,EAAE,CAAC,4BAA4B,CAAC,YAAY,CAAC,CAAC;AAC3E,MAAM,4BAA4B,GAAG,CACnC,YAAqB,EACrB,UAAU,GAAG,iBAAiB,CAAC,UAAU,CAAC,YAAY,CAAC,EACvD,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,UAAU,EAAE,MAAM,CAAC,EAC7C,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
// Copyright DWJ 2024.
|
|
2
|
+
// Distributed under the Boost Software License, Version 1.0.
|
|
3
|
+
// https://www.boost.org/LICENSE_1_0.txt
|
|
4
|
+
import { FileApi } from "../hooks/FileApi";
|
|
5
|
+
export const useFileUrl = (fileId) => useFileUrlInternal(fileId);
|
|
6
|
+
const useFileUrlInternal = (fileId, file = FileApi.useGetItem(fileId)) => file?.getUrl;
|
|
7
|
+
//# sourceMappingURL=useFileUrl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useFileUrl.js","sourceRoot":"","sources":["../../../src/FileAttachment/useFileUrl.ts"],"names":[],"mappings":"AAAA,sBAAsB;AACtB,6DAA6D;AAC7D,wCAAwC;AAExC,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAE3C,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,MAAe,EAA6B,EAAE,CACvE,kBAAkB,CAAC,MAAM,CAAC,CAAC;AAC7B,MAAM,kBAAkB,GAAG,CACzB,MAAe,EACf,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EACjC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
// Copyright DWJ 2024.
|
|
3
|
+
// Distributed under the Boost Software License, Version 1.0.
|
|
4
|
+
// https://www.boost.org/LICENSE_1_0.txt
|
|
5
|
+
import { StyledHeader } from "@dwidge/components-expo";
|
|
6
|
+
import { CenterView, ScreenView, ScrollView, StyledText, } from "@dwidge/components-rnw";
|
|
7
|
+
import { JSONSchemaForm } from "@dwidge/json-schema-form-rnw";
|
|
8
|
+
import { useState } from "react";
|
|
9
|
+
import { z } from "zod";
|
|
10
|
+
const useFormId = () => "123";
|
|
11
|
+
const useForm = (id) => useState({
|
|
12
|
+
title: "untitled",
|
|
13
|
+
fields: [],
|
|
14
|
+
});
|
|
15
|
+
const formSchema = {
|
|
16
|
+
type: "object",
|
|
17
|
+
properties: {
|
|
18
|
+
title: {
|
|
19
|
+
type: "string",
|
|
20
|
+
title: "Name",
|
|
21
|
+
},
|
|
22
|
+
fields: {
|
|
23
|
+
type: "array",
|
|
24
|
+
title: "Fields",
|
|
25
|
+
items: {
|
|
26
|
+
type: "object",
|
|
27
|
+
properties: {
|
|
28
|
+
title: {
|
|
29
|
+
type: "string",
|
|
30
|
+
title: "Name",
|
|
31
|
+
},
|
|
32
|
+
type: {
|
|
33
|
+
type: "string",
|
|
34
|
+
enum: ["string", "number", "boolean"],
|
|
35
|
+
title: "Type",
|
|
36
|
+
},
|
|
37
|
+
required: {
|
|
38
|
+
type: "boolean",
|
|
39
|
+
title: "Required",
|
|
40
|
+
},
|
|
41
|
+
},
|
|
42
|
+
required: ["title", "type", "required"],
|
|
43
|
+
},
|
|
44
|
+
},
|
|
45
|
+
},
|
|
46
|
+
required: ["title", "fields"],
|
|
47
|
+
};
|
|
48
|
+
const JsonFormSchema = z.object({
|
|
49
|
+
jsonSchema: z.string(),
|
|
50
|
+
uiSchema: z.string(),
|
|
51
|
+
});
|
|
52
|
+
const Form = z.object({
|
|
53
|
+
id: z.string(),
|
|
54
|
+
schema: JsonFormSchema,
|
|
55
|
+
});
|
|
56
|
+
export const EditFormAttachmentScreen = ({ form: [form, setForm] = useForm(useFormId()), }) => (_jsxs(ScreenView, { children: [_jsx(StyledHeader, { title: "Edit Form" }), form == null || !form ? (_jsx(CenterView, { children: _jsx(StyledText, { children: form === null ? "The form does not exist." : "Loading..." }) })) : (_jsx(ScrollView, { flex: true, gap: true, wide: true, pad: true, selfcenter: true, children: _jsx(JSONSchemaForm, { name: "FormSchema", schema: formSchema, value: form, onChange: setForm }) }))] }));
|
|
57
|
+
//# sourceMappingURL=EditFormAttachmentScreen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EditFormAttachmentScreen.js","sourceRoot":"","sources":["../../../src/Form/EditFormAttachmentScreen.tsx"],"names":[],"mappings":";AAAA,sBAAsB;AACtB,6DAA6D;AAC7D,wCAAwC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EACL,UAAU,EACV,UAAU,EACV,UAAU,EACV,UAAU,GACX,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE9D,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,KAAK,CAAC;AAC9B,MAAM,OAAO,GAAG,CAAC,EAAW,EAAE,EAAE,CAC9B,QAAQ,CAA0B;IAChC,KAAK,EAAE,UAAU;IACjB,MAAM,EAAE,EAAE;CACX,CAAC,CAAC;AAaL,MAAM,UAAU,GAA6B;IAC3C,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,KAAK,EAAE;YACL,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,MAAM;SACd;QACD,MAAM,EAAE;YACN,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,QAAQ;YACf,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,KAAK,EAAE,MAAM;qBACd;oBACD,IAAI,EAAE;wBACJ,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC;wBACrC,KAAK,EAAE,MAAM;qBACd;oBACD,QAAQ,EAAE;wBACR,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,UAAU;qBAClB;iBACF;gBACD,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC;aACxC;SACF;KACF;IACD,QAAQ,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;CAC9B,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;CACrB,CAAC,CAAC;AAEH,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC;IACpB,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,MAAM,EAAE,cAAc;CACvB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,EACvC,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,GAC7C,EAAE,EAAE,CAAC,CACJ,MAAC,UAAU,eACT,KAAC,YAAY,IAAC,KAAK,EAAC,WAAW,GAAG,EACjC,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CACvB,KAAC,UAAU,cACT,KAAC,UAAU,cACR,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,YAAY,GAC/C,GACF,CACd,CAAC,CAAC,CAAC,CACF,KAAC,UAAU,IAAC,IAAI,QAAC,GAAG,QAAC,IAAI,QAAC,GAAG,QAAC,UAAU,kBACtC,KAAC,cAAc,IACb,IAAI,EAAC,YAAY,EACjB,MAAM,EAAE,UAAU,EAClB,KAAK,EAAE,IAAI,EACX,QAAQ,EAAE,OAAO,GACjB,GACS,CACd,IACU,CACd,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
// Copyright DWJ 2024.
|
|
3
|
+
// Distributed under the Boost Software License, Version 1.0.
|
|
4
|
+
// https://www.boost.org/LICENSE_1_0.txt
|
|
5
|
+
import { StyledLoader, StyledText, StyledView } from "@dwidge/components-rnw";
|
|
6
|
+
import { FormApi } from "../hooks/FormApi";
|
|
7
|
+
export const FormCard = ({ form = FormApi.useGetItem() }) => form ? (_jsx(StyledView, { flex: true, card: true, row: true, children: _jsx(StyledText, { children: form.name ?? "untitled" }) })) : (_jsx(StyledLoader, {}));
|
|
8
|
+
//# sourceMappingURL=FormEdit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormEdit.js","sourceRoot":"","sources":["../../../src/Form/FormEdit.tsx"],"names":[],"mappings":";AAAA,sBAAsB;AACtB,6DAA6D;AAC7D,wCAAwC;AAExC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC9E,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAE3C,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,UAAU,EAAE,EAAE,EAAE,EAAE,CAC1D,IAAI,CAAC,CAAC,CAAC,CACL,KAAC,UAAU,IAAC,IAAI,QAAC,IAAI,QAAC,GAAG,kBACvB,KAAC,UAAU,cAAE,IAAI,CAAC,IAAI,IAAI,UAAU,GAAc,GACvC,CACd,CAAC,CAAC,CAAC,CACF,KAAC,YAAY,KAAG,CACjB,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
// Copyright DWJ 2024.
|
|
3
|
+
// Distributed under the Boost Software License, Version 1.0.
|
|
4
|
+
// https://www.boost.org/LICENSE_1_0.txt
|
|
5
|
+
import { StyledHeader } from "@dwidge/components-expo";
|
|
6
|
+
import { CenterView, ScreenView, ScrollView, StyledText, } from "@dwidge/components-rnw";
|
|
7
|
+
import { defaultFormSchemaString, FormDesigner, FormSchema, } from "@dwidge/json-forms-designer";
|
|
8
|
+
import { FormApi } from "../hooks/FormApi";
|
|
9
|
+
import { useParams } from "../hooks/useParams";
|
|
10
|
+
export const FormEditScreen = ({ form: [form, setForm] = FormApi.useItem(useParams().FormId), }) => (_jsxs(ScreenView, { children: [_jsx(StyledHeader, { title: ["Form", form?.name].filter(Boolean).join(" - ") }), form == null || !form ? (_jsx(CenterView, { children: _jsx(StyledText, { children: form === null ? "The form does not exist." : "Loading..." }) })) : (_jsx(ScrollView, { flex: true, gap: true, wide: true, pad: true, selfcenter: true, children: _jsx(FormDesigner, { schemaString: [
|
|
11
|
+
form.schema ?? defaultFormSchemaString,
|
|
12
|
+
setForm &&
|
|
13
|
+
((updater) => {
|
|
14
|
+
const next = typeof updater === "function"
|
|
15
|
+
? updater(form.schema ?? defaultFormSchemaString)
|
|
16
|
+
: updater;
|
|
17
|
+
const parsed = FormSchema.parse(JSON.parse(next));
|
|
18
|
+
setForm?.((prev) => ({
|
|
19
|
+
...prev,
|
|
20
|
+
name: parsed.schema.title,
|
|
21
|
+
schema: next,
|
|
22
|
+
}));
|
|
23
|
+
}),
|
|
24
|
+
] }) }))] }));
|
|
25
|
+
//# sourceMappingURL=FormEditScreen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormEditScreen.js","sourceRoot":"","sources":["../../../src/Form/FormEditScreen.tsx"],"names":[],"mappings":";AAAA,sBAAsB;AACtB,6DAA6D;AAC7D,wCAAwC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EACL,UAAU,EACV,UAAU,EACV,UAAU,EACV,UAAU,GACX,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,uBAAuB,EACvB,YAAY,EACZ,UAAU,GACX,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAC7B,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,GAC5D,EAAE,EAAE,CAAC,CACJ,MAAC,UAAU,eACT,KAAC,YAAY,IAAC,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAI,EACxE,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CACvB,KAAC,UAAU,cACT,KAAC,UAAU,cACR,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,YAAY,GAC/C,GACF,CACd,CAAC,CAAC,CAAC,CACF,KAAC,UAAU,IAAC,IAAI,QAAC,GAAG,QAAC,IAAI,QAAC,GAAG,QAAC,UAAU,kBACtC,KAAC,YAAY,IACX,YAAY,EAAE;oBACZ,IAAI,CAAC,MAAM,IAAI,uBAAuB;oBACtC,OAAO;wBACL,CAAC,CAAC,OAAO,EAAE,EAAE;4BACX,MAAM,IAAI,GACR,OAAO,OAAO,KAAK,UAAU;gCAC3B,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,uBAAuB,CAAC;gCACjD,CAAC,CAAC,OAAO,CAAC;4BACd,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;4BAClD,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gCACnB,GAAG,IAAI;gCACP,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK;gCACzB,MAAM,EAAE,IAAI;6BACb,CAAC,CAAC,CAAC;wBACN,CAAC,CAAC;iBACL,GACD,GACS,CACd,IACU,CACd,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
// Copyright DWJ 2024.
|
|
3
|
+
// Distributed under the Boost Software License, Version 1.0.
|
|
4
|
+
// https://www.boost.org/LICENSE_1_0.txt
|
|
5
|
+
import { UnstyledList, viewStyles } from "@dwidge/components-rnw";
|
|
6
|
+
import { useNavAction2 } from "@dwidge/hooks-expo";
|
|
7
|
+
import assert from "assert";
|
|
8
|
+
import { useState } from "react";
|
|
9
|
+
import { FormApi } from "../hooks/FormApi";
|
|
10
|
+
import { useNavRoutes } from "../hooks/FormsContext";
|
|
11
|
+
import { FormCard } from "./FormEdit";
|
|
12
|
+
export const FormListEdit = ({ elements = FormApi.useGetList(), selection: [selection, setSelection] = useState([]), onPress = useNavAction2(useNavRoutes().FORM_EDIT_SCREEN, async (id) => ({
|
|
13
|
+
FormId: id,
|
|
14
|
+
})), }) => (_jsx(UnstyledList, { items: elements, keyExtractor: (item) => (assert(item.id), item.id), selection: [selection, setSelection], render: (item) => _jsx(FormCard, { form: item }), selectStyle: viewStyles.select, style: viewStyles.unselect, onPress: onPress }));
|
|
15
|
+
//# sourceMappingURL=FormListEdit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormListEdit.js","sourceRoot":"","sources":["../../../src/Form/FormListEdit.tsx"],"names":[],"mappings":";AAAA,sBAAsB;AACtB,6DAA6D;AAC7D,wCAAwC;AAExC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAC3B,QAAQ,GAAG,OAAO,CAAC,UAAU,EAAE,EAC/B,SAAS,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAW,EAAE,CAAC,EAC7D,OAAO,GAAG,aAAa,CACrB,YAAY,EAAE,CAAC,gBAAgB,EAC/B,KAAK,EAAE,EAAU,EAAE,EAAE,CAAC,CAAC;IACrB,MAAM,EAAE,EAAE;CACX,CAAC,CACH,GACF,EAAE,EAAE,CAAC,CACJ,KAAC,YAAY,IACX,KAAK,EAAE,QAAQ,EACf,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,EAClD,SAAS,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC,EACpC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,KAAC,QAAQ,IAAC,IAAI,EAAE,IAAI,GAAI,EAC1C,WAAW,EAAE,UAAU,CAAC,MAAM,EAC9B,KAAK,EAAE,UAAU,CAAC,QAAQ,EAC1B,OAAO,EAAE,OAAO,GAChB,CACH,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
// Copyright DWJ 2024.
|
|
3
|
+
// Distributed under the Boost Software License, Version 1.0.
|
|
4
|
+
// https://www.boost.org/LICENSE_1_0.txt
|
|
5
|
+
import { StyledHeader } from "@dwidge/components-expo";
|
|
6
|
+
import { CenterView, ScreenView, ScrollView, StyledFontAwesome, StyledView, } from "@dwidge/components-rnw";
|
|
7
|
+
import { useMemoState } from "@dwidge/hooks-react";
|
|
8
|
+
import { TouchableOpacity } from "react-native";
|
|
9
|
+
import { FormApi } from "../hooks/FormApi";
|
|
10
|
+
import { FormListEdit } from "./FormListEdit";
|
|
11
|
+
import { useCreateBlankForm } from "../hooks/useCreateBlankForm";
|
|
12
|
+
export const FormListScreen = ({ onCreate = useCreateBlankForm(), onDeleteList = FormApi.useDeleteList(), selection = useMemoState([]), }) => (_jsxs(ScreenView, { children: [_jsx(StyledHeader, { title: "Forms", actions: [
|
|
13
|
+
{
|
|
14
|
+
icon: "remove-circle",
|
|
15
|
+
onPress: onDeleteList && selection[0].length
|
|
16
|
+
? () => onDeleteList(selection[0].map((id) => ({ id })))
|
|
17
|
+
: undefined,
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
icon: "add-circle",
|
|
21
|
+
onPress: onCreate,
|
|
22
|
+
},
|
|
23
|
+
] }), _jsx(ScrollView, { gap: true, pad: true, children: _jsxs(StyledView, { flex: true, column: true, children: [_jsx(StyledView, { children: _jsx(FormListEdit, { selection: selection }) }), _jsx(TouchableOpacity, { style: { flex: 1 }, onPress: onCreate, children: _jsx(CenterView, { row: true, gap: true, children: _jsx(StyledFontAwesome, { name: "plus", size: 30 }) }) })] }) })] }));
|
|
24
|
+
//# sourceMappingURL=FormListScreen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormListScreen.js","sourceRoot":"","sources":["../../../src/Form/FormListScreen.tsx"],"names":[],"mappings":";AAAA,sBAAsB;AACtB,6DAA6D;AAC7D,wCAAwC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EACL,UAAU,EACV,UAAU,EACV,UAAU,EACV,iBAAiB,EACjB,UAAU,GACX,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEjE,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAC7B,QAAQ,GAAG,kBAAkB,EAAE,EAC/B,YAAY,GAAG,OAAO,CAAC,aAAa,EAAE,EACtC,SAAS,GAAG,YAAY,CAAW,EAAE,CAAC,GACvC,EAAE,EAAE,CAAC,CACJ,MAAC,UAAU,eACT,KAAC,YAAY,IACX,KAAK,EAAC,OAAO,EACb,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,eAAe;oBACrB,OAAO,EACL,YAAY,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM;wBACjC,CAAC,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;wBACxD,CAAC,CAAC,SAAS;iBAChB;gBACD;oBACE,IAAI,EAAE,YAAY;oBAClB,OAAO,EAAE,QAAQ;iBAClB;aACF,GACD,EACF,KAAC,UAAU,IAAC,GAAG,QAAC,GAAG,kBACjB,MAAC,UAAU,IAAC,IAAI,QAAC,MAAM,mBACrB,KAAC,UAAU,cACT,KAAC,YAAY,IAAC,SAAS,EAAE,SAAS,GAAI,GAC3B,EACb,KAAC,gBAAgB,IAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,QAAQ,YACrD,KAAC,UAAU,IAAC,GAAG,QAAC,GAAG,kBACjB,KAAC,iBAAiB,IAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAE,EAAE,GAAI,GAChC,GACI,IACR,GACF,IACF,CACd,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
// Copyright DWJ 2024.
|
|
3
|
+
// Distributed under the Boost Software License, Version 1.0.
|
|
4
|
+
// https://www.boost.org/LICENSE_1_0.txt
|
|
5
|
+
import { UnstyledList, viewStyles } from "@dwidge/components-rnw";
|
|
6
|
+
import assert from "assert";
|
|
7
|
+
import { useState } from "react";
|
|
8
|
+
import { FormApi } from "../hooks/FormApi";
|
|
9
|
+
import { FormView } from "./FormView";
|
|
10
|
+
export const FormListView = ({ elements = FormApi.useGetList(), selection: [selection, setSelection] = useState([]), }) => (_jsx(UnstyledList, { items: elements, keyExtractor: (item) => (assert(item.id), item.id), selection: [selection, setSelection], render: (item) => _jsx(FormView, { form: item }), selectStyle: viewStyles.select, style: viewStyles.unselect }));
|
|
11
|
+
//# sourceMappingURL=FormListView.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormListView.js","sourceRoot":"","sources":["../../../src/Form/FormListView.tsx"],"names":[],"mappings":";AAAA,sBAAsB;AACtB,6DAA6D;AAC7D,wCAAwC;AAExC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAC3B,QAAQ,GAAG,OAAO,CAAC,UAAU,EAAE,EAC/B,SAAS,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAW,EAAE,CAAC,GAC9D,EAAE,EAAE,CAAC,CACJ,KAAC,YAAY,IACX,KAAK,EAAE,QAAQ,EACf,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,EAClD,SAAS,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC,EACpC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,KAAC,QAAQ,IAAC,IAAI,EAAE,IAAI,GAAI,EAC1C,WAAW,EAAE,UAAU,CAAC,MAAM,EAC9B,KAAK,EAAE,UAAU,CAAC,QAAQ,GAC1B,CACH,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
// Copyright DWJ 2024.
|
|
3
|
+
// Distributed under the Boost Software License, Version 1.0.
|
|
4
|
+
// https://www.boost.org/LICENSE_1_0.txt
|
|
5
|
+
import { useState } from "react";
|
|
6
|
+
import { ScreenView, ScrollView, StyledText, StyledView, } from "@dwidge/components-rnw";
|
|
7
|
+
import { useNavAction2 } from "@dwidge/hooks-expo";
|
|
8
|
+
import { StyledButton } from "@dwidge/components-rnw";
|
|
9
|
+
import { FormSelectView } from "./FormSelectView";
|
|
10
|
+
import { useNavRoutes } from "../hooks/FormsContext";
|
|
11
|
+
import { StyledHeader } from "@dwidge/components-expo";
|
|
12
|
+
import { useCreateBlankFormAttachment } from "../hooks/useCreateBlankFormAttachment";
|
|
13
|
+
const useOnSelectForm = () => useNavAction2(useNavRoutes().FORM_ATTACHMENT_EDIT_SCREEN, useCreateBlankFormAttachment({}));
|
|
14
|
+
export const FormSelectScreen = ({ onSelectForm = useOnSelectForm(), selected: [selected, setSelected] = useState([]), }) => (_jsxs(ScreenView, { children: [_jsx(StyledHeader, { title: "Select Form" }), _jsxs(ScrollView, { gap: true, pad: true, children: [_jsx(StyledView, { children: _jsx(StyledText, { center: true, children: "Select from the list of forms below, or use the search option above." }) }), _jsx(FormSelectView, { selected: [selected, setSelected] }), _jsx(StyledButton, { onPress: selected.length > 0 && onSelectForm
|
|
15
|
+
? () => onSelectForm(selected.map((id) => ({ id })))
|
|
16
|
+
: undefined, children: "Select Form" })] })] }));
|
|
17
|
+
//# sourceMappingURL=FormSelectScreen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormSelectScreen.js","sourceRoot":"","sources":["../../../src/Form/FormSelectScreen.tsx"],"names":[],"mappings":";AAAA,sBAAsB;AACtB,6DAA6D;AAC7D,wCAAwC;AAExC,OAAc,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EACL,UAAU,EACV,UAAU,EACV,UAAU,EACV,UAAU,GACX,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAErF,MAAM,eAAe,GAAG,GAAG,EAAE,CAC3B,aAAa,CACX,YAAY,EAAE,CAAC,2BAA2B,EAC1C,4BAA4B,CAAC,EAAE,CAAC,CACjC,CAAC;AAEJ,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,EAC/B,YAAY,GAAG,eAAe,EAAE,EAChC,QAAQ,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAW,EAAE,CAAC,GAC3D,EAAE,EAAE,CAAC,CACJ,MAAC,UAAU,eACT,KAAC,YAAY,IAAC,KAAK,EAAC,aAAa,GAAG,EACpC,MAAC,UAAU,IAAC,GAAG,QAAC,GAAG,mBACjB,KAAC,UAAU,cACT,KAAC,UAAU,IAAC,MAAM,2FAEL,GACF,EACb,KAAC,cAAc,IAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAI,EACrD,KAAC,YAAY,IACX,OAAO,EACL,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,YAAY;wBACjC,CAAC,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;wBACpD,CAAC,CAAC,SAAS,4BAIF,IACJ,IACF,CACd,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
// Copyright DWJ 2024.
|
|
3
|
+
// Distributed under the Boost Software License, Version 1.0.
|
|
4
|
+
// https://www.boost.org/LICENSE_1_0.txt
|
|
5
|
+
import { StyledButton } from "@dwidge/components-rnw";
|
|
6
|
+
import { useState } from "react";
|
|
7
|
+
import { FormApi } from "../hooks/FormApi";
|
|
8
|
+
import { FormListView } from "./FormListView";
|
|
9
|
+
export const FormSelectView = ({ formList = FormApi.useGetList(), selected: [selected, setSelected] = useState([]), searchValue: [searchValue, setSearchValue] = useState(""), createFormList = FormApi.useCreateList(), }) => (_jsxs(_Fragment, { children: [_jsx(FormListView, { elements: searchValue
|
|
10
|
+
? formList?.filter((form) => form.name?.toLowerCase().includes(searchValue.toLowerCase()))
|
|
11
|
+
: formList, selection: [selected, setSelected] }), _jsx(StyledButton, { onPress: createFormList && (() => createFormList([{}])), children: "Create New Form" })] }));
|
|
12
|
+
//# sourceMappingURL=FormSelectView.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormSelectView.js","sourceRoot":"","sources":["../../../src/Form/FormSelectView.tsx"],"names":[],"mappings":";AAAA,sBAAsB;AACtB,6DAA6D;AAC7D,wCAAwC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAa,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAC7B,QAAQ,GAAG,OAAO,CAAC,UAAU,EAAE,EAC/B,QAAQ,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAW,EAAE,CAAC,EAC1D,WAAW,EAAE,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,EACzD,cAAc,GAAG,OAAO,CAAC,aAAa,EAAE,GACzC,EAAa,EAAE,CAAC,CACf,8BACE,KAAC,YAAY,IACX,QAAQ,EACN,WAAW;gBACT,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CACxB,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAC7D;gBACH,CAAC,CAAC,QAAQ,EAEd,SAAS,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,GAClC,EACF,KAAC,YAAY,IAAC,OAAO,EAAE,cAAc,IAAI,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gCAEtD,IACd,CACJ,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
// Copyright DWJ 2024.
|
|
3
|
+
// Distributed under the Boost Software License, Version 1.0.
|
|
4
|
+
// https://www.boost.org/LICENSE_1_0.txt
|
|
5
|
+
import { StyledText } from "@dwidge/components-rnw";
|
|
6
|
+
import { FormApi } from "../hooks/FormApi";
|
|
7
|
+
export const FormView = ({ form = FormApi.useGetItem(), onPress = () => { }, }) => _jsx(StyledText, { children: form?.name || "untitled" });
|
|
8
|
+
//# sourceMappingURL=FormView.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormView.js","sourceRoot":"","sources":["../../../src/Form/FormView.tsx"],"names":[],"mappings":";AAAA,sBAAsB;AACtB,6DAA6D;AAC7D,wCAAwC;AAExC,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAE3C,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,EACvB,IAAI,GAAG,OAAO,CAAC,UAAU,EAAE,EAC3B,OAAO,GAAG,GAAG,EAAE,GAAE,CAAC,GACnB,EAAE,EAAE,CAAC,KAAC,UAAU,cAAE,IAAI,EAAE,IAAI,IAAI,UAAU,GAAc,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export * from "./EditFormAttachmentScreen";
|
|
2
|
+
export * from "./FormEdit";
|
|
3
|
+
export * from "./FormEditScreen";
|
|
4
|
+
export * from "./FormListEdit";
|
|
5
|
+
export * from "./FormListScreen";
|
|
6
|
+
export * from "./FormListView";
|
|
7
|
+
export * from "./FormSelectScreen";
|
|
8
|
+
export * from "./FormSelectView";
|
|
9
|
+
export * from "./FormView";
|
|
10
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/Form/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
// Copyright DWJ 2024.
|
|
3
|
+
// Distributed under the Boost Software License, Version 1.0.
|
|
4
|
+
// https://www.boost.org/LICENSE_1_0.txt
|
|
5
|
+
import { StyledButton, StyledLoader, StyledText } from "@dwidge/components-rnw";
|
|
6
|
+
import { useNavAction2 } from "@dwidge/hooks-expo";
|
|
7
|
+
import { defaultFormSchemaString, defaultJsonFormDataString, FormSubmit, } from "@dwidge/json-forms-designer";
|
|
8
|
+
import { useContext } from "react";
|
|
9
|
+
import { AttachmentListEdit } from "../FileAttachment/AttachmentListEdit";
|
|
10
|
+
import { FormApi } from "../hooks/FormApi";
|
|
11
|
+
import { FormAttachmentApi } from "../hooks/FormAttachmentApi";
|
|
12
|
+
import { FormsContext } from "../hooks/FormsContext";
|
|
13
|
+
import { useParams } from "../hooks/useParams";
|
|
14
|
+
export const FormAttachmentEdit = ({ id = useParams().FormAttachmentId, formAttachment: [formAttachment, setFormAttachment,] = FormAttachmentApi.useItem(id), form = FormApi.useGetItem(formAttachment?.FormId), onEditForm = useNavAction2(useContext(FormsContext).routes.FORM_EDIT_SCREEN, async (key) => ({
|
|
15
|
+
FormId: key,
|
|
16
|
+
})), onSaveForm = useNavAction2(useContext(FormsContext).routes.FORM_ATTACHMENT_LIST_SCREEN, async () => ({})), }) => formAttachment === undefined || form === undefined ? (_jsx(StyledLoader, {})) : formAttachment === null || form === null ? (_jsx(StyledText, { children: "No form" })) : form.schema ? (_jsxs(_Fragment, { children: [_jsx(FormSubmit, { dataString: [
|
|
17
|
+
formAttachment.data ?? defaultJsonFormDataString,
|
|
18
|
+
setFormAttachment &&
|
|
19
|
+
((data) => setFormAttachment((prev) => ({
|
|
20
|
+
...prev,
|
|
21
|
+
data: typeof data === "function"
|
|
22
|
+
? data(prev?.data ?? defaultJsonFormDataString)
|
|
23
|
+
: data,
|
|
24
|
+
}))),
|
|
25
|
+
], schemaString: [form.schema ?? defaultFormSchemaString] }), _jsx(AttachmentListEdit, { ids: { FormAttachmentId: formAttachment.id } }), _jsx(StyledButton, { onPress: onSaveForm, children: "Save" })] })) : (_jsxs(_Fragment, { children: [_jsx(StyledText, { children: "This form has not been created yet." }), onEditForm && (_jsx(StyledButton, { onPress: () => onEditForm(form.id), children: "Edit Form" }))] }));
|
|
26
|
+
//# sourceMappingURL=FormAttachmentEdit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormAttachmentEdit.js","sourceRoot":"","sources":["../../../src/FormAttachment/FormAttachmentEdit.tsx"],"names":[],"mappings":";AAAA,sBAAsB;AACtB,6DAA6D;AAC7D,wCAAwC;AAExC,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,UAAU,GACX,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAI/C,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EACjC,EAAE,GAAG,SAAS,EAAE,CAAC,gBAAgB,EACjC,cAAc,EAAE,CACd,cAAc,EACd,iBAAiB,EAClB,GAAG,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC,EACjC,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,cAAc,EAAE,MAAM,CAAC,EACjD,UAAU,GAAG,aAAa,CACxB,UAAU,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,gBAAgB,EAChD,KAAK,EAAE,GAAW,EAAE,EAAE,CAAC,CAAC;IACtB,MAAM,EAAE,GAAG;CACZ,CAAC,CACH,EACD,UAAU,GAAG,aAAa,CACxB,UAAU,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,2BAA2B,EAC3D,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CACjB,GACF,EAAE,EAAE,CACH,cAAc,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CACnD,KAAC,YAAY,KAAG,CACjB,CAAC,CAAC,CAAC,cAAc,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,CAC7C,KAAC,UAAU,0BAAqB,CACjC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAChB,8BACE,KAAC,UAAU,IACT,UAAU,EAAE;gBACV,cAAc,CAAC,IAAI,IAAI,yBAAyB;gBAChD,iBAAiB;oBACf,CAAC,CAAC,IAAI,EAAE,EAAE,CACR,iBAAiB,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;wBAC3B,GAAG,IAAI;wBACP,IAAI,EACF,OAAO,IAAI,KAAK,UAAU;4BACxB,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,yBAAyB,CAAC;4BAC/C,CAAC,CAAC,IAAI;qBACX,CAAC,CAAC,CAAC;aACT,EACD,YAAY,EAAE,CAAC,IAAI,CAAC,MAAM,IAAI,uBAAuB,CAAC,GACtD,EACF,KAAC,kBAAkB,IAAC,GAAG,EAAE,EAAE,gBAAgB,EAAE,cAAc,CAAC,EAAE,EAAE,GAAI,EACpE,KAAC,YAAY,IAAC,OAAO,EAAE,UAAU,qBAAqB,IACrD,CACJ,CAAC,CAAC,CAAC,CACF,8BACE,KAAC,UAAU,sDAAiD,EAC3D,UAAU,IAAI,CACb,KAAC,YAAY,IAAC,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAG,CAAC,0BAElC,CAChB,IACA,CACJ,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
// Copyright DWJ 2024.
|
|
3
|
+
// Distributed under the Boost Software License, Version 1.0.
|
|
4
|
+
// https://www.boost.org/LICENSE_1_0.txt
|
|
5
|
+
import { StyledHeader } from "@dwidge/components-expo";
|
|
6
|
+
import { ScreenView, ScrollView } from "@dwidge/components-rnw";
|
|
7
|
+
import { FormApi } from "../hooks/FormApi";
|
|
8
|
+
import { FormAttachmentApi } from "../hooks/FormAttachmentApi";
|
|
9
|
+
import { FormAttachmentEdit } from "./FormAttachmentEdit";
|
|
10
|
+
export const FormAttachmentEditScreen = ({ formAttachment = FormAttachmentApi.useGetItem(), form = FormApi.useGetItem(formAttachment?.FormId), }) => (_jsxs(ScreenView, { children: [_jsx(StyledHeader, { title: ["Form", form?.name].filter(Boolean).join(" - ") }), _jsx(ScrollView, { flex: true, gap: true, pad: true, children: _jsx(FormAttachmentEdit, {}) })] }));
|
|
11
|
+
//# sourceMappingURL=FormAttachmentEditScreen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormAttachmentEditScreen.js","sourceRoot":"","sources":["../../../src/FormAttachment/FormAttachmentEditScreen.tsx"],"names":[],"mappings":";AAAA,sBAAsB;AACtB,6DAA6D;AAC7D,wCAAwC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,EACvC,cAAc,GAAG,iBAAiB,CAAC,UAAU,EAAE,EAC/C,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,cAAc,EAAE,MAAM,CAAC,GAClD,EAAE,EAAE,CAAC,CACJ,MAAC,UAAU,eACT,KAAC,YAAY,IAAC,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAI,EACzE,KAAC,UAAU,IAAC,IAAI,QAAC,GAAG,QAAC,GAAG,kBACtB,KAAC,kBAAkB,KAAG,GACX,IACF,CACd,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
// Copyright DWJ 2024.
|
|
3
|
+
// Distributed under the Boost Software License, Version 1.0.
|
|
4
|
+
// https://www.boost.org/LICENSE_1_0.txt
|
|
5
|
+
import { StyledView, UnstyledList, viewStyles } from "@dwidge/components-rnw";
|
|
6
|
+
import { useNavAction2 } from "@dwidge/hooks-expo";
|
|
7
|
+
import { useMemoState } from "@dwidge/hooks-react";
|
|
8
|
+
import assert from "assert";
|
|
9
|
+
import { useParams } from "../hooks";
|
|
10
|
+
import { FormAttachmentApi } from "../hooks/FormAttachmentApi";
|
|
11
|
+
import { useNavRoutes } from "../hooks/FormsContext";
|
|
12
|
+
import { FormAttachmentView } from "./FormAttachmentView";
|
|
13
|
+
export const FormAttachmentListEdit = ({ ids = useParams(), elements = FormAttachmentApi.useGetList({
|
|
14
|
+
id: undefined,
|
|
15
|
+
data: undefined,
|
|
16
|
+
...ids,
|
|
17
|
+
}), selection: [selection, setSelection] = useMemoState([]), onPress = useNavAction2(useNavRoutes().FORM_ATTACHMENT_EDIT_SCREEN, async (id) => ({
|
|
18
|
+
FormAttachmentId: id,
|
|
19
|
+
})), }) => (_jsx(StyledView, { column: true, children: _jsx(UnstyledList, { items: elements, keyExtractor: (item) => (assert(item.id), item.id), selection: [selection, setSelection], render: (item) => _jsx(FormAttachmentView, { id: item.id }), selectStyle: viewStyles.select, style: viewStyles.unselect, onPress: onPress }) }));
|
|
20
|
+
//# sourceMappingURL=FormAttachmentListEdit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormAttachmentListEdit.js","sourceRoot":"","sources":["../../../src/FormAttachment/FormAttachmentListEdit.tsx"],"names":[],"mappings":";AAAA,sBAAsB;AACtB,6DAA6D;AAC7D,wCAAwC;AAExC,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,EACrC,GAAG,GAAG,SAAS,EAAE,EACjB,QAAQ,GAAG,iBAAiB,CAAC,UAAU,CAAC;IACtC,EAAE,EAAE,SAAS;IACb,IAAI,EAAE,SAAS;IACf,GAAG,GAAG;CACP,CAAC,EACF,SAAS,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,YAAY,CAAW,EAAE,CAAC,EACjE,OAAO,GAAG,aAAa,CACrB,YAAY,EAAE,CAAC,2BAA2B,EAC1C,KAAK,EAAE,EAAU,EAAE,EAAE,CAAC,CAAC;IACrB,gBAAgB,EAAE,EAAE;CACrB,CAAC,CACH,GACF,EAAE,EAAE,CAAC,CACJ,KAAC,UAAU,IAAC,MAAM,kBAChB,KAAC,YAAY,IACX,KAAK,EAAE,QAAQ,EACf,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,EAClD,SAAS,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC,EACpC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,KAAC,kBAAkB,IAAC,EAAE,EAAE,IAAI,CAAC,EAAE,GAAI,EACrD,WAAW,EAAE,UAAU,CAAC,MAAM,EAC9B,KAAK,EAAE,UAAU,CAAC,QAAQ,EAC1B,OAAO,EAAE,OAAO,GAChB,GACS,CACd,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
// Copyright DWJ 2024.
|
|
3
|
+
// Distributed under the Boost Software License, Version 1.0.
|
|
4
|
+
// https://www.boost.org/LICENSE_1_0.txt
|
|
5
|
+
import { StyledHeader } from "@dwidge/components-expo";
|
|
6
|
+
import { CenterView, ScreenView, ScrollView, StyledFontAwesome, } from "@dwidge/components-rnw";
|
|
7
|
+
import { useNavAction2 } from "@dwidge/hooks-expo";
|
|
8
|
+
import { useMemoState } from "@dwidge/hooks-react";
|
|
9
|
+
import { TouchableOpacity } from "react-native";
|
|
10
|
+
import { FormAttachmentApi } from "../hooks/FormAttachmentApi";
|
|
11
|
+
import { useNavRoutes } from "../hooks/FormsContext";
|
|
12
|
+
import { FormAttachmentListEdit } from "./FormAttachmentListEdit";
|
|
13
|
+
export const FormAttachmentListScreen = ({ onCreateAttachment = useNavAction2(useNavRoutes().FORM_SELECT_SCREEN, async () => ({})), onEditAttachment = useNavAction2(useNavRoutes().FORM_ATTACHMENT_EDIT_SCREEN, async (key) => ({
|
|
14
|
+
FormAttachmentId: key,
|
|
15
|
+
})), onDeleteAttachmentList = FormAttachmentApi.useDeleteList(), selection = useMemoState([]), }) => (_jsxs(ScreenView, { children: [_jsx(StyledHeader, { title: "Manage Forms", actions: [
|
|
16
|
+
{
|
|
17
|
+
icon: "remove-circle",
|
|
18
|
+
onPress: onDeleteAttachmentList && selection[0].length
|
|
19
|
+
? () => onDeleteAttachmentList(selection[0].map((id) => ({ id })))
|
|
20
|
+
: undefined,
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
icon: "add-circle",
|
|
24
|
+
onPress: onCreateAttachment,
|
|
25
|
+
},
|
|
26
|
+
] }), _jsxs(ScrollView, { gap: true, children: [_jsx(FormAttachmentListEdit, { selection: selection, onPress: onEditAttachment }), _jsx(TouchableOpacity, { style: { flex: 1 }, onPress: onCreateAttachment, children: _jsx(CenterView, { row: true, gap: true, children: _jsx(StyledFontAwesome, { name: "plus", size: 30 }) }) })] })] }));
|
|
27
|
+
//# sourceMappingURL=FormAttachmentListScreen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormAttachmentListScreen.js","sourceRoot":"","sources":["../../../src/FormAttachment/FormAttachmentListScreen.tsx"],"names":[],"mappings":";AAAA,sBAAsB;AACtB,6DAA6D;AAC7D,wCAAwC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EACL,UAAU,EACV,UAAU,EACV,UAAU,EACV,iBAAiB,GAClB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,EACvC,kBAAkB,GAAG,aAAa,CAChC,YAAY,EAAE,CAAC,kBAAkB,EACjC,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CACjB,EACD,gBAAgB,GAAG,aAAa,CAC9B,YAAY,EAAE,CAAC,2BAA2B,EAC1C,KAAK,EAAE,GAAW,EAAE,EAAE,CAAC,CAAC;IACtB,gBAAgB,EAAE,GAAG;CACtB,CAAC,CACH,EACD,sBAAsB,GAAG,iBAAiB,CAAC,aAAa,EAAE,EAC1D,SAAS,GAAG,YAAY,CAAW,EAAE,CAAC,GACvC,EAAE,EAAE,CAAC,CACJ,MAAC,UAAU,eACT,KAAC,YAAY,IACX,KAAK,EAAC,cAAc,EACpB,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,eAAe;oBACrB,OAAO,EACL,sBAAsB,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM;wBAC3C,CAAC,CAAC,GAAG,EAAE,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;wBAClE,CAAC,CAAC,SAAS;iBAChB;gBACD;oBACE,IAAI,EAAE,YAAY;oBAClB,OAAO,EAAE,kBAAkB;iBAC5B;aACF,GACD,EACF,MAAC,UAAU,IAAC,GAAG,mBACb,KAAC,sBAAsB,IACrB,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,gBAAgB,GACzB,EACF,KAAC,gBAAgB,IAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,kBAAkB,YAC/D,KAAC,UAAU,IAAC,GAAG,QAAC,GAAG,kBACjB,KAAC,iBAAiB,IAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAE,EAAE,GAAI,GAChC,GACI,IACR,IACF,CACd,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
// Copyright DWJ 2024.
|
|
3
|
+
// Distributed under the Boost Software License, Version 1.0.
|
|
4
|
+
// https://www.boost.org/LICENSE_1_0.txt
|
|
5
|
+
import { UnstyledList, viewStyles } from "@dwidge/components-rnw";
|
|
6
|
+
import { useNavAction2 } from "@dwidge/hooks-expo";
|
|
7
|
+
import assert from "assert";
|
|
8
|
+
import { FormAttachmentApi } from "../hooks/FormAttachmentApi";
|
|
9
|
+
import { useNavRoutes } from "../hooks/FormsContext";
|
|
10
|
+
import { FormAttachmentView } from "./FormAttachmentView";
|
|
11
|
+
export const FormAttachmentListView = ({ attachments = FormAttachmentApi.useGetList({}), onPressItem = useNavAction2(useNavRoutes().FORM_ATTACHMENT_EDIT_SCREEN, async (id) => ({
|
|
12
|
+
FormAttachmentId: id,
|
|
13
|
+
})), }) => (_jsx(UnstyledList, { items: attachments, keyExtractor: (item) => (assert(item.id), item.id), selection: [[], () => { }], render: (item) => _jsx(FormAttachmentView, { id: item.id }), selectStyle: viewStyles.select, style: viewStyles.unselect, onPress: onPressItem }));
|
|
14
|
+
//# sourceMappingURL=FormAttachmentListView.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormAttachmentListView.js","sourceRoot":"","sources":["../../../src/FormAttachment/FormAttachmentListView.tsx"],"names":[],"mappings":";AAAA,sBAAsB;AACtB,6DAA6D;AAC7D,wCAAwC;AAExC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,EACrC,WAAW,GAAG,iBAAiB,CAAC,UAAU,CAAC,EAAE,CAAC,EAC9C,WAAW,GAAG,aAAa,CACzB,YAAY,EAAE,CAAC,2BAA2B,EAC1C,KAAK,EAAE,EAAU,EAAE,EAAE,CAAC,CAAC;IACrB,gBAAgB,EAAE,EAAE;CACrB,CAAC,CACH,GACF,EAAE,EAAE,CAAC,CACJ,KAAC,YAAY,IACX,KAAK,EAAE,WAAW,EAClB,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,EAClD,SAAS,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,EACzB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,KAAC,kBAAkB,IAAC,EAAE,EAAE,IAAI,CAAC,EAAE,GAAI,EACrD,WAAW,EAAE,UAAU,CAAC,MAAM,EAC9B,KAAK,EAAE,UAAU,CAAC,QAAQ,EAC1B,OAAO,EAAE,WAAW,GACpB,CACH,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
// Copyright DWJ 2024.
|
|
3
|
+
// Distributed under the Boost Software License, Version 1.0.
|
|
4
|
+
// https://www.boost.org/LICENSE_1_0.txt
|
|
5
|
+
import { StyledDate } from "@dwidge/components-expo";
|
|
6
|
+
import { StyledLoader, StyledText, StyledView } from "@dwidge/components-rnw";
|
|
7
|
+
import { FormApi } from "../hooks/FormApi";
|
|
8
|
+
import { FormAttachmentApi } from "../hooks/FormAttachmentApi";
|
|
9
|
+
import { useParams } from "../hooks/useParams";
|
|
10
|
+
export const FormAttachmentView = ({ id = useParams().FormAttachmentId, attachment: [attachment, setAttachment] = FormAttachmentApi.useItem(id), form = FormApi.useGetItem(attachment?.FormId), }) => attachment && form ? (_jsxs(StyledView, { space: true, outline: true, gap: true, pad: true, flex: true, children: [_jsx(StyledText, { children: form.name || "untitled" }), attachment.createdAt && (_jsx(StyledDate, { children: attachment.createdAt * 1000 }))] })) : (_jsx(StyledLoader, {}));
|
|
11
|
+
//# sourceMappingURL=FormAttachmentView.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormAttachmentView.js","sourceRoot":"","sources":["../../../src/FormAttachment/FormAttachmentView.tsx"],"names":[],"mappings":";AAAA,sBAAsB;AACtB,6DAA6D;AAC7D,wCAAwC;AAExC,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC9E,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EACjC,EAAE,GAAG,SAAS,EAAE,CAAC,gBAAgB,EACjC,UAAU,EAAE,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC,EACvE,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,UAAU,EAAE,MAAM,CAAC,GAC9C,EAAE,EAAE,CACH,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,CACnB,MAAC,UAAU,IAAC,KAAK,QAAC,OAAO,QAAC,GAAG,QAAC,GAAG,QAAC,IAAI,mBACpC,KAAC,UAAU,cAAE,IAAI,CAAC,IAAI,IAAI,UAAU,GAAc,EACjD,UAAU,CAAC,SAAS,IAAI,CACvB,KAAC,UAAU,cAAE,UAAU,CAAC,SAAS,GAAG,IAAI,GAAc,CACvD,IACU,CACd,CAAC,CAAC,CAAC,CACF,KAAC,YAAY,KAAG,CACjB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * from "./FormAttachmentEdit";
|
|
2
|
+
export * from "./FormAttachmentEditScreen";
|
|
3
|
+
export * from "./FormAttachmentListEdit";
|
|
4
|
+
export * from "./FormAttachmentListScreen";
|
|
5
|
+
export * from "./FormAttachmentListView";
|
|
6
|
+
export * from "./FormAttachmentView";
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/FormAttachment/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { createApi } from "./createApi.js";
|
|
2
|
+
export const FileApi = createApi({
|
|
3
|
+
id: undefined,
|
|
4
|
+
createdAt: undefined,
|
|
5
|
+
createdBy: undefined,
|
|
6
|
+
size: undefined,
|
|
7
|
+
mime: undefined,
|
|
8
|
+
sha256: undefined,
|
|
9
|
+
putUrl: undefined,
|
|
10
|
+
getUrl: undefined,
|
|
11
|
+
});
|
|
12
|
+
//# sourceMappingURL=FileApi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FileApi.js","sourceRoot":"","sources":["../../../src/hooks/FileApi.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,MAAM,CAAC,MAAM,OAAO,GAAG,SAAS,CAAQ;IACtC,EAAE,EAAE,SAAS;IACb,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,SAAS;CAClB,CAAC,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { createApi } from "./createApi.js";
|
|
2
|
+
export const FileAttachmentApi = createApi({
|
|
3
|
+
id: undefined,
|
|
4
|
+
createdAt: undefined,
|
|
5
|
+
createdBy: undefined,
|
|
6
|
+
FileId: undefined,
|
|
7
|
+
FormId: undefined,
|
|
8
|
+
FormAttachmentId: undefined,
|
|
9
|
+
});
|
|
10
|
+
//# sourceMappingURL=FileAttachmentApi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FileAttachmentApi.js","sourceRoot":"","sources":["../../../src/hooks/FileAttachmentApi.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,MAAM,CAAC,MAAM,iBAAiB,GAAG,SAAS,CAAiB;IACzD,EAAE,EAAE,SAAS;IACb,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,SAAS;IACjB,gBAAgB,EAAE,SAAS;CAC5B,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormApi.js","sourceRoot":"","sources":["../../../src/hooks/FormApi.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,MAAM,CAAC,MAAM,OAAO,GAAG,SAAS,CAAQ;IACtC,EAAE,EAAE,SAAS;IACb,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,SAAS;CAClB,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormAttachmentApi.js","sourceRoot":"","sources":["../../../src/hooks/FormAttachmentApi.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,MAAM,CAAC,MAAM,iBAAiB,GAAG,SAAS,CAAkB;IAC1D,EAAE,EAAE,SAAS;IACb,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,MAAM,EAAE,SAAS;IACjB,IAAI,EAAE,SAAS;CAChB,CAAC,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
// Copyright DWJ 2024.
|
|
2
|
+
// Distributed under the Boost Software License, Version 1.0.
|
|
3
|
+
// https://www.boost.org/LICENSE_1_0.txt
|
|
4
|
+
import { useLocalSearchParams } from "expo-router";
|
|
5
|
+
import { createContext, useContext } from "react";
|
|
6
|
+
import { z } from "zod";
|
|
7
|
+
export const FormsContext = createContext({
|
|
8
|
+
routes: {
|
|
9
|
+
FORM_ATTACHMENT_LIST_SCREEN: "",
|
|
10
|
+
FORM_ATTACHMENT_EDIT_SCREEN: "",
|
|
11
|
+
FORM_EDIT_SCREEN: "",
|
|
12
|
+
FORM_SELECT_SCREEN: "",
|
|
13
|
+
},
|
|
14
|
+
useParams: () => z
|
|
15
|
+
.object({
|
|
16
|
+
FormId: z.coerce.string().nullable(),
|
|
17
|
+
FormAttachmentId: z.coerce.string().nullable(),
|
|
18
|
+
AttachmentId: z.coerce.string().nullable(),
|
|
19
|
+
})
|
|
20
|
+
.partial()
|
|
21
|
+
.parse({
|
|
22
|
+
...useLocalSearchParams(),
|
|
23
|
+
}),
|
|
24
|
+
});
|
|
25
|
+
export const useNavRoutes = () => useContext(FormsContext).routes;
|
|
26
|
+
//# sourceMappingURL=FormsContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormsContext.js","sourceRoot":"","sources":["../../../src/hooks/FormsContext.ts"],"names":[],"mappings":"AAAA,sBAAsB;AACtB,6DAA6D;AAC7D,wCAAwC;AAExC,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,YAAY,GAAG,aAAa,CAAC;IACxC,MAAM,EAAE;QACN,2BAA2B,EAAE,EAAE;QAC/B,2BAA2B,EAAE,EAAE;QAC/B,gBAAgB,EAAE,EAAE;QACpB,kBAAkB,EAAE,EAAE;KACvB;IACD,SAAS,EAAE,GAAG,EAAE,CACd,CAAC;SACE,MAAM,CAAC;QACN,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QACpC,gBAAgB,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC9C,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KAC3C,CAAC;SACD,OAAO,EAAE;SACT,KAAK,CAAC;QACL,GAAG,oBAAoB,EAAE;KAC1B,CAAkD;CACxD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { useAsyncSaveState } from "@dwidge/hooks-react";
|
|
2
|
+
import { createContext, useContext } from "react";
|
|
3
|
+
import { useParams } from "./useParams";
|
|
4
|
+
export const createApi = (defaultFilter = {}) => {
|
|
5
|
+
getList: (filter) => Promise;
|
|
6
|
+
setList: (list) => Promise;
|
|
7
|
+
createList: (list) => Promise;
|
|
8
|
+
updateList: (list) => Promise;
|
|
9
|
+
deleteList: (list) => Promise;
|
|
10
|
+
getItem: (item) => Promise;
|
|
11
|
+
updateItem: (item) => Promise;
|
|
12
|
+
deleteItem: (item) => Promise;
|
|
13
|
+
const message = "createApiW1: Please wrap App with <Context.Provider value={{}}></Context.Provider>";
|
|
14
|
+
const Context = createContext({
|
|
15
|
+
useGetList: () => (console.warn(message), undefined),
|
|
16
|
+
useCreateList: () => (console.warn(message), undefined),
|
|
17
|
+
useDeleteList: () => (console.warn(message), undefined),
|
|
18
|
+
useGetItem: () => (console.warn(message), undefined),
|
|
19
|
+
useItem: () => (console.warn(message), []),
|
|
20
|
+
});
|
|
21
|
+
const useGetList = (filter = {}, ids = useParams()) => useContext(Context).useGetList({ ...ids, ...defaultFilter, ...filter });
|
|
22
|
+
const useCreateList = () => useContext(Context).useCreateList();
|
|
23
|
+
const useDeleteList = () => useContext(Context).useDeleteList();
|
|
24
|
+
const useGetItem = (id, ids = useParams()) => useContext(Context).useGetItem(id ? { ...ids, ...defaultFilter, id } : undefined);
|
|
25
|
+
const useItem = (id, ids = useParams()) => useAsyncSaveState(useContext(Context).useItem(id ? { ...ids, ...defaultFilter, id } : undefined));
|
|
26
|
+
return {
|
|
27
|
+
Context,
|
|
28
|
+
Provider: Context.Provider,
|
|
29
|
+
useGetList,
|
|
30
|
+
useGetItem,
|
|
31
|
+
useItem,
|
|
32
|
+
useCreateList,
|
|
33
|
+
useDeleteList,
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
//# sourceMappingURL=createApi.js.map
|