@osdk/react-components 0.56.0 → 0.57.0-main-9c5a7b17bd0a71c88bf2d3ed29847e6f87975bbf
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/AGENTS.md +19 -14
- package/CHANGELOG.md +55 -0
- package/README.md +3 -3
- package/action-form.d.ts +17 -0
- package/build/browser/pdf-viewer/BasePdfViewer.js +12 -8
- package/build/browser/pdf-viewer/BasePdfViewer.js.map +1 -1
- package/build/browser/pdf-viewer/PdfViewerApi.js.map +1 -1
- package/build/browser/pdf-viewer/PdfViewerContext.js +4 -0
- package/build/browser/pdf-viewer/PdfViewerContext.js.map +1 -1
- package/build/browser/pdf-viewer/components/PdfViewerContent.js +6 -2
- package/build/browser/pdf-viewer/components/PdfViewerContent.js.map +1 -1
- package/build/browser/pdf-viewer/hooks/usePdfViewerCore.js +10 -4
- package/build/browser/pdf-viewer/hooks/usePdfViewerCore.js.map +1 -1
- package/build/browser/pdf-viewer/hooks/usePdfViewerState.js +9 -1
- package/build/browser/pdf-viewer/hooks/usePdfViewerState.js.map +1 -1
- package/build/browser/public/action-form.js +21 -0
- package/build/browser/public/action-form.js.map +1 -0
- package/build/browser/public/document-viewer.js +22 -0
- package/build/browser/public/document-viewer.js.map +1 -0
- package/build/browser/public/email-viewer.js +23 -0
- package/build/browser/public/email-viewer.js.map +1 -0
- package/build/browser/public/experimental/action-form.js +60 -5
- package/build/browser/public/experimental/action-form.js.map +1 -1
- package/build/browser/public/experimental/document-viewer.js +11 -5
- package/build/browser/public/experimental/document-viewer.js.map +1 -1
- package/build/browser/public/experimental/email-viewer.js +15 -6
- package/build/browser/public/experimental/email-viewer.js.map +1 -1
- package/build/browser/public/experimental/filter-list.js +71 -14
- package/build/browser/public/experimental/filter-list.js.map +1 -1
- package/build/browser/public/experimental/image-viewer.js +11 -6
- package/build/browser/public/experimental/image-viewer.js.map +1 -1
- package/build/browser/public/experimental/markdown-renderer.js +11 -17
- package/build/browser/public/experimental/markdown-renderer.js.map +1 -1
- package/build/browser/public/experimental/object-table.js +152 -37
- package/build/browser/public/experimental/object-table.js.map +1 -1
- package/build/browser/public/experimental/pdf-viewer.js +134 -34
- package/build/browser/public/experimental/pdf-viewer.js.map +1 -1
- package/build/browser/public/experimental/spreadsheet-viewer.js +15 -6
- package/build/browser/public/experimental/spreadsheet-viewer.js.map +1 -1
- package/build/browser/public/experimental/tiff-renderer.js +11 -17
- package/build/browser/public/experimental/tiff-renderer.js.map +1 -1
- package/build/browser/public/experimental/video-viewer.js +11 -6
- package/build/browser/public/experimental/video-viewer.js.map +1 -1
- package/build/browser/public/experimental/xml-viewer.js +11 -6
- package/build/browser/public/experimental/xml-viewer.js.map +1 -1
- package/build/browser/public/filter-list.js +30 -0
- package/build/browser/public/filter-list.js.map +1 -0
- package/build/browser/public/image-viewer.js +23 -0
- package/build/browser/public/image-viewer.js.map +1 -0
- package/build/browser/public/markdown-viewer.js +24 -0
- package/build/browser/public/markdown-viewer.js.map +1 -0
- package/build/browser/public/object-table.js +65 -0
- package/build/browser/public/object-table.js.map +1 -0
- package/build/browser/public/pdf-viewer.js +50 -0
- package/build/browser/public/pdf-viewer.js.map +1 -0
- package/build/browser/public/spreadsheet-viewer.js +23 -0
- package/build/browser/public/spreadsheet-viewer.js.map +1 -0
- package/build/browser/public/tiff-viewer.js +24 -0
- package/build/browser/public/tiff-viewer.js.map +1 -0
- package/build/browser/public/video-viewer.js +23 -0
- package/build/browser/public/video-viewer.js.map +1 -0
- package/build/browser/public/xml-viewer.js +23 -0
- package/build/browser/public/xml-viewer.js.map +1 -0
- package/build/browser/util/UserAgent.js +1 -1
- package/build/browser/util/UserAgent.js.map +1 -1
- package/build/cjs/{PdfViewerApi-CQJlwPUl.d.cts → PdfViewerApi-CIpvxxUo.d.cts} +9 -1
- package/build/cjs/action-form-4OvVNZ6i.d.cts +791 -0
- package/build/cjs/chunk-36QJAKOY.cjs +13 -0
- package/build/cjs/chunk-36QJAKOY.cjs.map +1 -0
- package/build/cjs/{chunk-HVJTECCC.cjs → chunk-4KHF42ZL.cjs} +34 -15
- package/build/cjs/chunk-4KHF42ZL.cjs.map +1 -0
- package/build/cjs/chunk-5KVF4DSH.cjs +53 -0
- package/build/cjs/chunk-5KVF4DSH.cjs.map +1 -0
- package/build/cjs/{chunk-L2FCT7HW.cjs → chunk-6YNO7HDC.cjs} +4 -4
- package/build/cjs/{chunk-L2FCT7HW.cjs.map → chunk-6YNO7HDC.cjs.map} +1 -1
- package/build/cjs/{chunk-JHKAQXRZ.cjs → chunk-7IP4YOC6.cjs} +5 -5
- package/build/cjs/chunk-7IP4YOC6.cjs.map +1 -0
- package/build/cjs/chunk-A3GEXM7R.cjs +48 -0
- package/build/cjs/chunk-A3GEXM7R.cjs.map +1 -0
- package/build/cjs/chunk-AWSDHTVF.cjs +11 -0
- package/build/cjs/chunk-AWSDHTVF.cjs.map +1 -0
- package/build/cjs/chunk-BPRRM7TQ.cjs +12 -0
- package/build/cjs/chunk-BPRRM7TQ.cjs.map +1 -0
- package/build/cjs/chunk-DZLFOD3V.cjs +12 -0
- package/build/cjs/chunk-DZLFOD3V.cjs.map +1 -0
- package/build/cjs/{chunk-DJNKQI5C.cjs → chunk-GCAQEFD6.cjs} +35 -27
- package/build/cjs/chunk-GCAQEFD6.cjs.map +1 -0
- package/build/cjs/chunk-IBDBFMEQ.cjs +13 -0
- package/build/cjs/chunk-IBDBFMEQ.cjs.map +1 -0
- package/build/cjs/chunk-IFBNWYYC.cjs +11 -0
- package/build/cjs/chunk-IFBNWYYC.cjs.map +1 -0
- package/build/cjs/chunk-JCCZWVY3.cjs +13 -0
- package/build/cjs/chunk-JCCZWVY3.cjs.map +1 -0
- package/build/cjs/{chunk-BBXX42YT.cjs → chunk-L4PLQPV2.cjs} +12 -12
- package/build/cjs/chunk-L4PLQPV2.cjs.map +1 -0
- package/build/cjs/chunk-MDVEVGFJ.cjs +11 -0
- package/build/cjs/chunk-MDVEVGFJ.cjs.map +1 -0
- package/build/cjs/chunk-OJTBEZKG.cjs +11 -0
- package/build/cjs/chunk-OJTBEZKG.cjs.map +1 -0
- package/build/cjs/{chunk-ABT6IGXN.cjs → chunk-RPEXVMQG.cjs} +7 -7
- package/build/cjs/chunk-RPEXVMQG.cjs.map +1 -0
- package/build/cjs/{chunk-RDJK72SG.cjs → chunk-RZOLA2GI.cjs} +10 -10
- package/build/cjs/chunk-RZOLA2GI.cjs.map +1 -0
- package/build/cjs/{chunk-6RCVPIW5.cjs → chunk-U7FYMS5T.cjs} +3 -3
- package/build/cjs/chunk-U7FYMS5T.cjs.map +1 -0
- package/build/cjs/chunk-UAKUGVQW.cjs +17 -0
- package/build/cjs/chunk-UAKUGVQW.cjs.map +1 -0
- package/build/cjs/chunk-UQGEGHHQ.cjs +34 -0
- package/build/cjs/chunk-UQGEGHHQ.cjs.map +1 -0
- package/build/cjs/chunk-VLADVYGE.cjs +13 -0
- package/build/cjs/chunk-VLADVYGE.cjs.map +1 -0
- package/build/cjs/chunk-VYLMJUGV.cjs +17 -0
- package/build/cjs/chunk-VYLMJUGV.cjs.map +1 -0
- package/build/cjs/chunk-VZ2OSX6A.cjs +11 -0
- package/build/cjs/chunk-VZ2OSX6A.cjs.map +1 -0
- package/build/cjs/chunk-XE7JD6LH.cjs +13 -0
- package/build/cjs/chunk-XE7JD6LH.cjs.map +1 -0
- package/build/cjs/chunk-XQHT3TQO.cjs +11 -0
- package/build/cjs/chunk-XQHT3TQO.cjs.map +1 -0
- package/build/cjs/chunk-YE6XEEAZ.cjs +11 -0
- package/build/cjs/chunk-YE6XEEAZ.cjs.map +1 -0
- package/build/cjs/filter-list-CraygbR8.d.cts +976 -0
- package/build/cjs/public/action-form.cjs +27 -0
- package/build/cjs/public/action-form.cjs.map +1 -0
- package/build/cjs/public/action-form.css +1668 -0
- package/build/cjs/public/action-form.css.map +1 -0
- package/build/cjs/public/action-form.d.cts +3 -0
- package/build/cjs/public/document-viewer.cjs +28 -0
- package/build/cjs/public/document-viewer.cjs.map +1 -0
- package/build/cjs/public/document-viewer.css +914 -0
- package/build/cjs/public/document-viewer.css.map +1 -0
- package/build/cjs/public/document-viewer.d.cts +57 -0
- package/build/cjs/public/email-viewer.cjs +20 -0
- package/build/cjs/public/email-viewer.cjs.map +1 -0
- package/build/cjs/public/email-viewer.css +81 -0
- package/build/cjs/public/email-viewer.css.map +1 -0
- package/build/cjs/public/email-viewer.d.cts +37 -0
- package/build/cjs/public/experimental/action-form.cjs +7 -6
- package/build/cjs/public/experimental/action-form.d.cts +58 -787
- package/build/cjs/public/experimental/cbac-picker.cjs +12 -12
- package/build/cjs/public/experimental/document-viewer.cjs +10 -9
- package/build/cjs/public/experimental/document-viewer.d.cts +14 -53
- package/build/cjs/public/experimental/email-viewer.cjs +8 -7
- package/build/cjs/public/experimental/email-viewer.d.cts +14 -33
- package/build/cjs/public/experimental/filter-list.cjs +17 -16
- package/build/cjs/public/experimental/filter-list.d.cts +59 -973
- package/build/cjs/public/experimental/image-viewer.cjs +8 -7
- package/build/cjs/public/experimental/image-viewer.d.cts +11 -7
- package/build/cjs/public/experimental/markdown-renderer.cjs +11 -10
- package/build/cjs/public/experimental/markdown-renderer.d.cts +13 -20
- package/build/cjs/public/experimental/object-table.cjs +28 -27
- package/build/cjs/public/experimental/object-table.d.cts +148 -1228
- package/build/cjs/public/experimental/pdf-viewer.cjs +38 -37
- package/build/cjs/public/experimental/pdf-viewer.d.cts +115 -344
- package/build/cjs/public/experimental/spreadsheet-viewer.cjs +8 -7
- package/build/cjs/public/experimental/spreadsheet-viewer.d.cts +14 -30
- package/build/cjs/public/experimental/tiff-renderer.cjs +11 -10
- package/build/cjs/public/experimental/tiff-renderer.d.cts +14 -10
- package/build/cjs/public/experimental/video-viewer.cjs +8 -7
- package/build/cjs/public/experimental/video-viewer.d.cts +11 -7
- package/build/cjs/public/experimental/xml-viewer.cjs +8 -7
- package/build/cjs/public/experimental/xml-viewer.d.cts +11 -19
- package/build/cjs/public/experimental.cjs +221 -209
- package/build/cjs/public/experimental.d.cts +21 -9
- package/build/cjs/public/filter-list.cjs +71 -0
- package/build/cjs/public/filter-list.cjs.map +1 -0
- package/build/cjs/public/filter-list.css +2414 -0
- package/build/cjs/public/filter-list.css.map +1 -0
- package/build/cjs/public/filter-list.d.cts +3 -0
- package/build/cjs/public/image-viewer.cjs +20 -0
- package/build/cjs/public/image-viewer.cjs.map +1 -0
- package/build/cjs/public/image-viewer.css +30 -0
- package/build/cjs/public/image-viewer.css.map +1 -0
- package/build/cjs/public/image-viewer.d.cts +11 -0
- package/build/cjs/public/markdown-viewer.cjs +20 -0
- package/build/cjs/public/markdown-viewer.cjs.map +1 -0
- package/build/cjs/public/markdown-viewer.css +117 -0
- package/build/cjs/public/markdown-viewer.css.map +1 -0
- package/build/cjs/public/markdown-viewer.d.cts +21 -0
- package/build/cjs/public/object-table.cjs +101 -0
- package/build/cjs/public/object-table.cjs.map +1 -0
- package/build/cjs/public/object-table.css +2201 -0
- package/build/cjs/public/object-table.css.map +1 -0
- package/build/cjs/public/object-table.d.cts +1231 -0
- package/build/cjs/public/pdf-viewer.cjs +99 -0
- package/build/cjs/public/pdf-viewer.cjs.map +1 -0
- package/build/cjs/public/pdf-viewer.css +442 -0
- package/build/cjs/public/pdf-viewer.css.map +1 -0
- package/build/cjs/public/pdf-viewer.d.cts +360 -0
- package/build/cjs/public/primitives.cjs +1 -1
- package/build/cjs/public/spreadsheet-viewer.cjs +20 -0
- package/build/cjs/public/spreadsheet-viewer.cjs.map +1 -0
- package/build/cjs/public/spreadsheet-viewer.css +122 -0
- package/build/cjs/public/spreadsheet-viewer.css.map +1 -0
- package/build/cjs/public/spreadsheet-viewer.d.cts +34 -0
- package/build/cjs/public/tiff-viewer.cjs +20 -0
- package/build/cjs/public/tiff-viewer.cjs.map +1 -0
- package/build/cjs/public/tiff-viewer.css +23 -0
- package/build/cjs/public/tiff-viewer.css.map +1 -0
- package/build/cjs/public/tiff-viewer.d.cts +11 -0
- package/build/cjs/public/video-viewer.cjs +20 -0
- package/build/cjs/public/video-viewer.cjs.map +1 -0
- package/build/cjs/public/video-viewer.css +29 -0
- package/build/cjs/public/video-viewer.css.map +1 -0
- package/build/cjs/public/video-viewer.d.cts +11 -0
- package/build/cjs/public/xml-viewer.cjs +20 -0
- package/build/cjs/public/xml-viewer.cjs.map +1 -0
- package/build/cjs/public/xml-viewer.css +38 -0
- package/build/cjs/public/xml-viewer.css.map +1 -0
- package/build/cjs/public/xml-viewer.d.cts +22 -0
- package/build/esm/pdf-viewer/BasePdfViewer.js +12 -8
- package/build/esm/pdf-viewer/BasePdfViewer.js.map +1 -1
- package/build/esm/pdf-viewer/PdfViewerApi.js.map +1 -1
- package/build/esm/pdf-viewer/PdfViewerContext.js +4 -0
- package/build/esm/pdf-viewer/PdfViewerContext.js.map +1 -1
- package/build/esm/pdf-viewer/components/PdfViewerContent.js +6 -2
- package/build/esm/pdf-viewer/components/PdfViewerContent.js.map +1 -1
- package/build/esm/pdf-viewer/hooks/usePdfViewerCore.js +10 -4
- package/build/esm/pdf-viewer/hooks/usePdfViewerCore.js.map +1 -1
- package/build/esm/pdf-viewer/hooks/usePdfViewerState.js +9 -1
- package/build/esm/pdf-viewer/hooks/usePdfViewerState.js.map +1 -1
- package/build/esm/public/action-form.js +21 -0
- package/build/esm/public/action-form.js.map +1 -0
- package/build/esm/public/document-viewer.js +22 -0
- package/build/esm/public/document-viewer.js.map +1 -0
- package/build/esm/public/email-viewer.js +23 -0
- package/build/esm/public/email-viewer.js.map +1 -0
- package/build/esm/public/experimental/action-form.js +60 -5
- package/build/esm/public/experimental/action-form.js.map +1 -1
- package/build/esm/public/experimental/document-viewer.js +11 -5
- package/build/esm/public/experimental/document-viewer.js.map +1 -1
- package/build/esm/public/experimental/email-viewer.js +15 -6
- package/build/esm/public/experimental/email-viewer.js.map +1 -1
- package/build/esm/public/experimental/filter-list.js +71 -14
- package/build/esm/public/experimental/filter-list.js.map +1 -1
- package/build/esm/public/experimental/image-viewer.js +11 -6
- package/build/esm/public/experimental/image-viewer.js.map +1 -1
- package/build/esm/public/experimental/markdown-renderer.js +11 -17
- package/build/esm/public/experimental/markdown-renderer.js.map +1 -1
- package/build/esm/public/experimental/object-table.js +152 -37
- package/build/esm/public/experimental/object-table.js.map +1 -1
- package/build/esm/public/experimental/pdf-viewer.js +134 -34
- package/build/esm/public/experimental/pdf-viewer.js.map +1 -1
- package/build/esm/public/experimental/spreadsheet-viewer.js +15 -6
- package/build/esm/public/experimental/spreadsheet-viewer.js.map +1 -1
- package/build/esm/public/experimental/tiff-renderer.js +11 -17
- package/build/esm/public/experimental/tiff-renderer.js.map +1 -1
- package/build/esm/public/experimental/video-viewer.js +11 -6
- package/build/esm/public/experimental/video-viewer.js.map +1 -1
- package/build/esm/public/experimental/xml-viewer.js +11 -6
- package/build/esm/public/experimental/xml-viewer.js.map +1 -1
- package/build/esm/public/filter-list.js +30 -0
- package/build/esm/public/filter-list.js.map +1 -0
- package/build/esm/public/image-viewer.js +23 -0
- package/build/esm/public/image-viewer.js.map +1 -0
- package/build/esm/public/markdown-viewer.js +24 -0
- package/build/esm/public/markdown-viewer.js.map +1 -0
- package/build/esm/public/object-table.js +65 -0
- package/build/esm/public/object-table.js.map +1 -0
- package/build/esm/public/pdf-viewer.js +50 -0
- package/build/esm/public/pdf-viewer.js.map +1 -0
- package/build/esm/public/spreadsheet-viewer.js +23 -0
- package/build/esm/public/spreadsheet-viewer.js.map +1 -0
- package/build/esm/public/tiff-viewer.js +24 -0
- package/build/esm/public/tiff-viewer.js.map +1 -0
- package/build/esm/public/video-viewer.js +23 -0
- package/build/esm/public/video-viewer.js.map +1 -0
- package/build/esm/public/xml-viewer.js +23 -0
- package/build/esm/public/xml-viewer.js.map +1 -0
- package/build/esm/util/UserAgent.js +1 -1
- package/build/esm/util/UserAgent.js.map +1 -1
- package/build/types/pdf-viewer/PdfViewerApi.d.ts +9 -1
- package/build/types/pdf-viewer/PdfViewerApi.d.ts.map +1 -1
- package/build/types/pdf-viewer/components/PdfViewerContent.d.ts +5 -1
- package/build/types/pdf-viewer/components/PdfViewerContent.d.ts.map +1 -1
- package/build/types/pdf-viewer/hooks/usePdfViewerCore.d.ts +7 -1
- package/build/types/pdf-viewer/hooks/usePdfViewerCore.d.ts.map +1 -1
- package/build/types/pdf-viewer/hooks/usePdfViewerState.d.ts +3 -1
- package/build/types/pdf-viewer/hooks/usePdfViewerState.d.ts.map +1 -1
- package/build/types/public/action-form.d.ts +5 -0
- package/build/types/public/action-form.d.ts.map +1 -0
- package/build/types/public/document-viewer.d.ts +4 -0
- package/build/types/public/document-viewer.d.ts.map +1 -0
- package/build/types/public/email-viewer.d.ts +4 -0
- package/build/types/public/email-viewer.d.ts.map +1 -0
- package/build/types/public/experimental/action-form.d.ts +68 -5
- package/build/types/public/experimental/action-form.d.ts.map +1 -1
- package/build/types/public/experimental/document-viewer.d.ts +9 -4
- package/build/types/public/experimental/document-viewer.d.ts.map +1 -1
- package/build/types/public/experimental/email-viewer.d.ts +13 -4
- package/build/types/public/experimental/email-viewer.d.ts.map +1 -1
- package/build/types/public/experimental/filter-list.d.ts +63 -19
- package/build/types/public/experimental/filter-list.d.ts.map +1 -1
- package/build/types/public/experimental/image-viewer.d.ts +9 -4
- package/build/types/public/experimental/image-viewer.d.ts.map +1 -1
- package/build/types/public/experimental/markdown-renderer.d.ts +12 -9
- package/build/types/public/experimental/markdown-renderer.d.ts.map +1 -1
- package/build/types/public/experimental/object-table.d.ts +235 -29
- package/build/types/public/experimental/object-table.d.ts.map +1 -1
- package/build/types/public/experimental/pdf-viewer.d.ts +111 -25
- package/build/types/public/experimental/pdf-viewer.d.ts.map +1 -1
- package/build/types/public/experimental/spreadsheet-viewer.d.ts +13 -4
- package/build/types/public/experimental/spreadsheet-viewer.d.ts.map +1 -1
- package/build/types/public/experimental/tiff-renderer.d.ts +12 -9
- package/build/types/public/experimental/tiff-renderer.d.ts.map +1 -1
- package/build/types/public/experimental/video-viewer.d.ts +9 -4
- package/build/types/public/experimental/video-viewer.d.ts.map +1 -1
- package/build/types/public/experimental/xml-viewer.d.ts +9 -4
- package/build/types/public/experimental/xml-viewer.d.ts.map +1 -1
- package/build/types/public/filter-list.d.ts +19 -0
- package/build/types/public/filter-list.d.ts.map +1 -0
- package/build/types/public/image-viewer.d.ts +4 -0
- package/build/types/public/image-viewer.d.ts.map +1 -0
- package/build/types/public/markdown-viewer.d.ts +4 -0
- package/build/types/public/markdown-viewer.d.ts.map +1 -0
- package/build/types/public/object-table.d.ts +29 -0
- package/build/types/public/object-table.d.ts.map +1 -0
- package/build/types/public/pdf-viewer.d.ts +25 -0
- package/build/types/public/pdf-viewer.d.ts.map +1 -0
- package/build/types/public/spreadsheet-viewer.d.ts +4 -0
- package/build/types/public/spreadsheet-viewer.d.ts.map +1 -0
- package/build/types/public/tiff-viewer.d.ts +4 -0
- package/build/types/public/tiff-viewer.d.ts.map +1 -0
- package/build/types/public/video-viewer.d.ts +4 -0
- package/build/types/public/video-viewer.d.ts.map +1 -0
- package/build/types/public/xml-viewer.d.ts +4 -0
- package/build/types/public/xml-viewer.d.ts.map +1 -0
- package/docs/ActionForm.md +3 -3
- package/docs/ActionFormOverview.md +3 -3
- package/docs/DocumentViewer.md +3 -3
- package/docs/DocumentViewerOverview.md +8 -8
- package/docs/EmailViewer.md +3 -3
- package/docs/FilterList.md +6 -6
- package/docs/FilterListOverview.md +3 -3
- package/docs/GettingStarted.md +1 -1
- package/docs/ImageViewer.md +3 -3
- package/docs/MarkdownViewer.md +3 -3
- package/docs/ObjectTable.md +23 -23
- package/docs/ObjectTableOverview.md +3 -3
- package/docs/PdfViewer.md +16 -19
- package/docs/SpreadsheetViewer.md +3 -3
- package/docs/TiffViewer.md +3 -6
- package/docs/VideoViewer.md +3 -3
- package/docs/Welcome.md +2 -2
- package/docs/XmlViewer.md +3 -6
- package/document-viewer.d.ts +17 -0
- package/email-viewer.d.ts +17 -0
- package/filter-list.d.ts +17 -0
- package/image-viewer.d.ts +17 -0
- package/markdown-viewer.d.ts +17 -0
- package/object-table.d.ts +17 -0
- package/package.json +116 -8
- package/pdf-viewer.d.ts +17 -0
- package/spreadsheet-viewer.d.ts +17 -0
- package/tiff-viewer.d.ts +17 -0
- package/video-viewer.d.ts +17 -0
- package/xml-viewer.d.ts +17 -0
- package/build/cjs/chunk-2UJNMXVL.cjs +0 -15
- package/build/cjs/chunk-2UJNMXVL.cjs.map +0 -1
- package/build/cjs/chunk-4F5VJN66.cjs +0 -11
- package/build/cjs/chunk-4F5VJN66.cjs.map +0 -1
- package/build/cjs/chunk-6RCVPIW5.cjs.map +0 -1
- package/build/cjs/chunk-A5ZKDZH4.cjs +0 -11
- package/build/cjs/chunk-A5ZKDZH4.cjs.map +0 -1
- package/build/cjs/chunk-ABT6IGXN.cjs.map +0 -1
- package/build/cjs/chunk-BBXX42YT.cjs.map +0 -1
- package/build/cjs/chunk-CR5S7BJM.cjs +0 -11
- package/build/cjs/chunk-CR5S7BJM.cjs.map +0 -1
- package/build/cjs/chunk-DJNKQI5C.cjs.map +0 -1
- package/build/cjs/chunk-HVJTECCC.cjs.map +0 -1
- package/build/cjs/chunk-JDKKKXMF.cjs +0 -15
- package/build/cjs/chunk-JDKKKXMF.cjs.map +0 -1
- package/build/cjs/chunk-JHKAQXRZ.cjs.map +0 -1
- package/build/cjs/chunk-RDJK72SG.cjs.map +0 -1
- package/build/cjs/chunk-S4DLEUUJ.cjs +0 -11
- package/build/cjs/chunk-S4DLEUUJ.cjs.map +0 -1
- package/build/cjs/chunk-ULVTAKJF.cjs +0 -11
- package/build/cjs/chunk-ULVTAKJF.cjs.map +0 -1
|
@@ -0,0 +1,791 @@
|
|
|
1
|
+
import { ObjectTypeDefinition, Osdk, ObjectSet, ActionDefinition, CompileTimeMetadata, ActionMetadata, ActionParam, DataValueClientToWire, ActionEditResponse, ActionValidationResponse } from '@osdk/api';
|
|
2
|
+
import React__default from 'react';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Element that receives a portal — accepts an HTMLElement, ShadowRoot, a
|
|
6
|
+
* ref to either, `null` for default body-attachment, or `undefined`.
|
|
7
|
+
*/
|
|
8
|
+
type PortalContainer = HTMLElement | ShadowRoot | null | React__default.RefObject<HTMLElement | ShadowRoot | null>;
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Props for the shared DatePicker. Used directly by filter-list and
|
|
12
|
+
* object-table; wrapped by action-form's FormFieldRenderer for the
|
|
13
|
+
* `DATETIME_PICKER` field kind. `id` and `error` are optional so non-form
|
|
14
|
+
* callers can omit them.
|
|
15
|
+
*
|
|
16
|
+
* When `formatDate` is omitted, ISO-like format is used (YYYY-MM-DD /
|
|
17
|
+
* YYYY-MM-DD HH:mm).
|
|
18
|
+
*/
|
|
19
|
+
interface DatePickerProps {
|
|
20
|
+
/**
|
|
21
|
+
* The HTML `id` attribute for the input element. Used for `<label htmlFor>`
|
|
22
|
+
* association in form contexts. Optional in non-form contexts.
|
|
23
|
+
*/
|
|
24
|
+
id?: string;
|
|
25
|
+
/**
|
|
26
|
+
* Visual error state for the input. Set by form validation in
|
|
27
|
+
* action-form contexts; non-form callers typically omit it.
|
|
28
|
+
*/
|
|
29
|
+
error?: string;
|
|
30
|
+
/** The currently-selected Date, or `null` for empty. */
|
|
31
|
+
value: Date | null;
|
|
32
|
+
/** Called when the user selects or types a new date. */
|
|
33
|
+
onChange?: (value: Date | null) => void;
|
|
34
|
+
/** Whether the picker is disabled. */
|
|
35
|
+
disabled?: boolean;
|
|
36
|
+
/** The earliest date the user can select. */
|
|
37
|
+
min?: Date;
|
|
38
|
+
/** The latest date the user can select. */
|
|
39
|
+
max?: Date;
|
|
40
|
+
/** Whether to show a time picker alongside the date. */
|
|
41
|
+
showTime?: boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Whether to close the popover after selecting a date.
|
|
44
|
+
* @default true when `showTime` is false, false when `showTime` is true
|
|
45
|
+
*/
|
|
46
|
+
closeOnSelection?: boolean;
|
|
47
|
+
/** Placeholder text shown when no value is selected. */
|
|
48
|
+
placeholder?: string;
|
|
49
|
+
/**
|
|
50
|
+
* Formats a Date for display in the input field when not editing.
|
|
51
|
+
* When typing, the input shows the parsable format (YYYY-MM-DD or
|
|
52
|
+
* YYYY-MM-DD HH:mm). Provide a matching `parseDate` if using a custom
|
|
53
|
+
* format.
|
|
54
|
+
*/
|
|
55
|
+
formatDate?: (date: Date) => string;
|
|
56
|
+
/**
|
|
57
|
+
* Parses a user-typed string back into a Date. Must be the inverse of
|
|
58
|
+
* `formatDate` — if `formatDate(d)` produces string `s`, then
|
|
59
|
+
* `parseDate(s)` must return an equivalent Date. When omitted, defaults
|
|
60
|
+
* to parsing "YYYY-MM-DD" (date-only) or "YYYY-MM-DD HH:mm" (with time).
|
|
61
|
+
*/
|
|
62
|
+
parseDate?: (text: string) => Date | undefined;
|
|
63
|
+
/**
|
|
64
|
+
* Ref forwarded to the portal container element. Used to track portaled
|
|
65
|
+
* content for click-outside detection.
|
|
66
|
+
*/
|
|
67
|
+
portalRef?: React__default.Ref<HTMLDivElement>;
|
|
68
|
+
/**
|
|
69
|
+
* Element that receives the date picker portal. Use this when rendering
|
|
70
|
+
* inside modal dialogs so popovers stay in the dialog's stacking and
|
|
71
|
+
* focus context instead of being appended directly to document.body.
|
|
72
|
+
*/
|
|
73
|
+
portalContainer?: PortalContainer;
|
|
74
|
+
/**
|
|
75
|
+
* Accessible label for the input when there is no adjacent `<label>`
|
|
76
|
+
* element.
|
|
77
|
+
*/
|
|
78
|
+
ariaLabel?: string;
|
|
79
|
+
/**
|
|
80
|
+
* Popover modality. Defaults to `"trap-focus"`, which traps Tab cycling
|
|
81
|
+
* inside the calendar and renders a transparent dismiss layer over the
|
|
82
|
+
* page. Pass `false` when nesting this picker inside another popover so
|
|
83
|
+
* the inner dismiss layer doesn't intercept clicks intended for the
|
|
84
|
+
* outer popover and base-ui's default outside-click handles dismissal
|
|
85
|
+
* instead.
|
|
86
|
+
*/
|
|
87
|
+
modal?: "trap-focus" | false;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* A date range represented as a start/end tuple. Either element may be
|
|
92
|
+
* `null` when the range is partially selected.
|
|
93
|
+
*/
|
|
94
|
+
type DateRange = readonly [Date | null, Date | null];
|
|
95
|
+
/**
|
|
96
|
+
* Props for the shared DateRangePicker. Used by filter-list's date-range
|
|
97
|
+
* histogram and action-form's `DATE_RANGE_INPUT` field kind. `id` and
|
|
98
|
+
* `error` are optional so non-form callers can omit them.
|
|
99
|
+
*
|
|
100
|
+
* Renders two text inputs (start / end) with a shared calendar popover
|
|
101
|
+
* supporting range selection.
|
|
102
|
+
*/
|
|
103
|
+
interface DateRangePickerProps {
|
|
104
|
+
/**
|
|
105
|
+
* The HTML `id` attribute for the start input element. Used for
|
|
106
|
+
* `<label htmlFor>` association in form contexts.
|
|
107
|
+
*/
|
|
108
|
+
id?: string;
|
|
109
|
+
/**
|
|
110
|
+
* Visual error state for the inputs. Set by form validation in
|
|
111
|
+
* action-form contexts; non-form callers typically omit it.
|
|
112
|
+
*/
|
|
113
|
+
error?: string;
|
|
114
|
+
/** The currently-selected range, or `null` for empty. */
|
|
115
|
+
value: DateRange | null;
|
|
116
|
+
/** Called when the user selects or types a new range. */
|
|
117
|
+
onChange?: (value: DateRange | null) => void;
|
|
118
|
+
/** Whether the picker is disabled. */
|
|
119
|
+
disabled?: boolean;
|
|
120
|
+
/** The earliest selectable date. */
|
|
121
|
+
min?: Date;
|
|
122
|
+
/** The latest selectable date. */
|
|
123
|
+
max?: Date;
|
|
124
|
+
/** Whether to show time pickers for both dates. */
|
|
125
|
+
showTime?: boolean;
|
|
126
|
+
/** Placeholder text for the start date input. */
|
|
127
|
+
placeholderStart?: string;
|
|
128
|
+
/** Placeholder text for the end date input. */
|
|
129
|
+
placeholderEnd?: string;
|
|
130
|
+
/** Whether to allow start and end on the same day. @default true */
|
|
131
|
+
allowSingleDayRange?: boolean;
|
|
132
|
+
/** Formats a Date for display. Defaults to "YYYY-MM-DD". */
|
|
133
|
+
formatDate?: (date: Date) => string;
|
|
134
|
+
/** Parses a user-typed string back into a Date. */
|
|
135
|
+
parseDate?: (text: string) => Date | undefined;
|
|
136
|
+
/**
|
|
137
|
+
* Element that receives the date range picker portal. Use this when
|
|
138
|
+
* rendering inside modal dialogs so popovers stay in the dialog's
|
|
139
|
+
* stacking and focus context instead of being appended directly to
|
|
140
|
+
* document.body.
|
|
141
|
+
*/
|
|
142
|
+
portalContainer?: PortalContainer;
|
|
143
|
+
/**
|
|
144
|
+
* Popover modality. Defaults to `"trap-focus"`, which traps Tab cycling
|
|
145
|
+
* inside the calendar and renders a transparent dismiss layer over the
|
|
146
|
+
* page. Pass `false` when nesting this picker inside another popover so
|
|
147
|
+
* the inner dismiss layer doesn't intercept clicks intended for the
|
|
148
|
+
* outer popover and base-ui's default outside-click handles dismissal
|
|
149
|
+
* instead.
|
|
150
|
+
*/
|
|
151
|
+
modal?: "trap-focus" | false;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
/**
|
|
155
|
+
* A form field definition specifies configuration for a single field.
|
|
156
|
+
* Implemented as a distributed mapped type so `fieldComponent` narrows
|
|
157
|
+
* `fieldComponentProps` to the matching component prop type.
|
|
158
|
+
*/
|
|
159
|
+
type FormFieldDefinition<Q extends ActionDefinition<unknown>, K extends FieldKey<Q> = FieldKey<Q>> = K extends unknown ? {
|
|
160
|
+
[C in ValidFormFieldForPropertyType<FieldDescriptorType<Q, K>>]: {
|
|
161
|
+
/**
|
|
162
|
+
* The field's unique key
|
|
163
|
+
*/
|
|
164
|
+
fieldKey: K;
|
|
165
|
+
/**
|
|
166
|
+
* Display label for the field
|
|
167
|
+
*/
|
|
168
|
+
label: string;
|
|
169
|
+
/**
|
|
170
|
+
* Default value of the field
|
|
171
|
+
*/
|
|
172
|
+
defaultValue?: FieldValueType<Q, K>;
|
|
173
|
+
/**
|
|
174
|
+
* Whether the field is required
|
|
175
|
+
*/
|
|
176
|
+
isRequired?: boolean;
|
|
177
|
+
/**
|
|
178
|
+
* Placeholder text
|
|
179
|
+
*/
|
|
180
|
+
placeholder?: string;
|
|
181
|
+
/**
|
|
182
|
+
* Additional information to display on this field.
|
|
183
|
+
* Accepts plain text or rich content (e.g. JSX with links or formatting).
|
|
184
|
+
* Rendered as a tooltip icon next to the label by default, or below the
|
|
185
|
+
* label when helperTextPlacement is "bottom".
|
|
186
|
+
*/
|
|
187
|
+
helperText?: React__default.ReactNode;
|
|
188
|
+
/**
|
|
189
|
+
* The placement of the helper text either below the field or in a tooltip
|
|
190
|
+
*
|
|
191
|
+
* @default "tooltip"
|
|
192
|
+
*/
|
|
193
|
+
helperTextPlacement?: "bottom" | "tooltip";
|
|
194
|
+
/**
|
|
195
|
+
* Whether the field is disabled
|
|
196
|
+
*/
|
|
197
|
+
disabled?: boolean;
|
|
198
|
+
/**
|
|
199
|
+
* A callback to customize error messages when a built-in validation rule fails.
|
|
200
|
+
* Receives a discriminated union with the constraint data (e.g., the min value
|
|
201
|
+
* that was exceeded) so the message can reference the threshold.
|
|
202
|
+
*
|
|
203
|
+
* Return a string to override the default message, or `undefined` to keep it.
|
|
204
|
+
*/
|
|
205
|
+
onValidationError?: (error: ValidationError) => string | undefined;
|
|
206
|
+
/**
|
|
207
|
+
* Additional function to validate the field.
|
|
208
|
+
*
|
|
209
|
+
* Return `undefined` if valid, or an error message string if invalid.
|
|
210
|
+
*/
|
|
211
|
+
validate?: (value: FieldValueType<Q, K>) => Promise<string | undefined>;
|
|
212
|
+
/**
|
|
213
|
+
* The form field component type to render
|
|
214
|
+
*/
|
|
215
|
+
fieldComponent: C;
|
|
216
|
+
/**
|
|
217
|
+
* The component props for the form field.
|
|
218
|
+
* Excludes runtime props (value, onChange) which are managed by ActionForm.
|
|
219
|
+
*/
|
|
220
|
+
fieldComponentProps: DistributiveOmit<FormFieldPropsByType[C], FormManagedProps<C>>;
|
|
221
|
+
};
|
|
222
|
+
}[ValidFormFieldForPropertyType<FieldDescriptorType<Q, K>>] : never;
|
|
223
|
+
/**
|
|
224
|
+
* A discriminated union describing which validation rule failed and the
|
|
225
|
+
* constraint data the user needs to build a meaningful error message.
|
|
226
|
+
*/
|
|
227
|
+
type ValidationError = {
|
|
228
|
+
type: "required";
|
|
229
|
+
} | {
|
|
230
|
+
type: "min";
|
|
231
|
+
min: number | Date;
|
|
232
|
+
} | {
|
|
233
|
+
type: "max";
|
|
234
|
+
max: number | Date;
|
|
235
|
+
} | {
|
|
236
|
+
type: "minLength";
|
|
237
|
+
minLength: number;
|
|
238
|
+
} | {
|
|
239
|
+
type: "maxLength";
|
|
240
|
+
maxLength: number;
|
|
241
|
+
} | {
|
|
242
|
+
type: "maxSize";
|
|
243
|
+
maxSize: number;
|
|
244
|
+
} | {
|
|
245
|
+
type: "validate";
|
|
246
|
+
message: string;
|
|
247
|
+
};
|
|
248
|
+
/**
|
|
249
|
+
* Maps field types to their corresponding props
|
|
250
|
+
*/
|
|
251
|
+
interface FormFieldPropsByType {
|
|
252
|
+
DATE_RANGE_INPUT: DateRangePickerProps;
|
|
253
|
+
DATETIME_PICKER: DatePickerProps;
|
|
254
|
+
DROPDOWN: DropdownFieldProps<unknown, boolean>;
|
|
255
|
+
FILE_PICKER: FilePickerProps;
|
|
256
|
+
NUMBER_INPUT: NumberInputFieldProps;
|
|
257
|
+
OBJECT_SELECT: ObjectSelectFieldProps<ObjectTypeDefinition>;
|
|
258
|
+
OBJECT_SET: ObjectSetFieldProps<ObjectTypeDefinition>;
|
|
259
|
+
RADIO_BUTTONS: RadioButtonsFieldProps<unknown>;
|
|
260
|
+
SWITCH: SwitchFieldProps;
|
|
261
|
+
TEXT_AREA: TextAreaFieldProps;
|
|
262
|
+
TEXT_INPUT: TextInputFieldProps;
|
|
263
|
+
CUSTOM: CustomFieldProps<unknown>;
|
|
264
|
+
UNSUPPORTED: UnsupportedFieldProps;
|
|
265
|
+
}
|
|
266
|
+
/**
|
|
267
|
+
* Dropdown field props with selectable items
|
|
268
|
+
*/
|
|
269
|
+
interface DropdownFieldProps<V, Multiple extends boolean = false> extends BaseFormFieldProps<Multiple extends true ? V[] : V> {
|
|
270
|
+
/**
|
|
271
|
+
* Available items for the dropdown
|
|
272
|
+
*/
|
|
273
|
+
items: V[];
|
|
274
|
+
/**
|
|
275
|
+
* Converts an item to searchable text and the default visual label. Defaults to `String()`.
|
|
276
|
+
* Use `renderItemLabel` when the visible label needs rich React content.
|
|
277
|
+
*/
|
|
278
|
+
itemToStringLabel?: (item: V) => string;
|
|
279
|
+
/**
|
|
280
|
+
* Renders an item label with custom React content.
|
|
281
|
+
* `itemToStringLabel` is still used for search, accessibility, and fallback keys.
|
|
282
|
+
*/
|
|
283
|
+
renderItemLabel?: (item: V) => React__default.ReactNode;
|
|
284
|
+
/**
|
|
285
|
+
* Returns a unique string key for a list item. Used as the React `key`.
|
|
286
|
+
* Falls back to the item's index when not provided.
|
|
287
|
+
*/
|
|
288
|
+
itemToKey?: (item: V) => string;
|
|
289
|
+
/**
|
|
290
|
+
* Custom equality check for item values. Defaults to `Object.is`.
|
|
291
|
+
* Required when items are objects to ensure correct selection matching.
|
|
292
|
+
*/
|
|
293
|
+
isItemEqual?: (a: V, b: V) => boolean;
|
|
294
|
+
/**
|
|
295
|
+
* Whether the dropdown allows searching/filtering.
|
|
296
|
+
* When true, renders a Combobox with a search input.
|
|
297
|
+
* When false (default), renders a Select dropdown.
|
|
298
|
+
*/
|
|
299
|
+
isSearchable?: boolean;
|
|
300
|
+
/**
|
|
301
|
+
* Placeholder text shown when no value is selected.
|
|
302
|
+
*/
|
|
303
|
+
placeholder?: string;
|
|
304
|
+
/**
|
|
305
|
+
* Whether multiple values can be selected
|
|
306
|
+
*/
|
|
307
|
+
isMultiple?: Multiple;
|
|
308
|
+
/**
|
|
309
|
+
* Ref forwarded to the portal container element.
|
|
310
|
+
* Used to track portaled content for click-outside detection.
|
|
311
|
+
*/
|
|
312
|
+
portalRef?: React__default.Ref<HTMLDivElement>;
|
|
313
|
+
/**
|
|
314
|
+
* Element that receives the dropdown portal. Use this when rendering inside
|
|
315
|
+
* modal dialogs so popups stay in the dialog's stacking and focus context
|
|
316
|
+
* instead of being appended directly to document.body.
|
|
317
|
+
*/
|
|
318
|
+
portalContainer?: PortalContainer;
|
|
319
|
+
/**
|
|
320
|
+
* Controlled search input value. Must be provided together with `onQueryChange`.
|
|
321
|
+
*/
|
|
322
|
+
query?: string;
|
|
323
|
+
/**
|
|
324
|
+
* Callback when the search input value changes.
|
|
325
|
+
* Can be used standalone as an event listener or together with `query`
|
|
326
|
+
* for fully controlled search state.
|
|
327
|
+
*/
|
|
328
|
+
onQueryChange?: (query: string) => void;
|
|
329
|
+
/**
|
|
330
|
+
* When true, disables the combobox's built-in client-side filtering.
|
|
331
|
+
* Use when items are already filtered server-side (e.g. via `onQueryChange`).
|
|
332
|
+
*
|
|
333
|
+
* @default false
|
|
334
|
+
*/
|
|
335
|
+
disableClientSideFiltering?: boolean;
|
|
336
|
+
/**
|
|
337
|
+
* Status message rendered below the search input and above the item list
|
|
338
|
+
* inside the popup. Use for loading/error/empty messages.
|
|
339
|
+
*/
|
|
340
|
+
popupStatus?: React__default.ReactNode;
|
|
341
|
+
/**
|
|
342
|
+
* A React node to render after the item list.
|
|
343
|
+
* Use for infinite scroll sentinels, "load more" buttons, etc.
|
|
344
|
+
*/
|
|
345
|
+
trailingItem?: React__default.ReactNode;
|
|
346
|
+
/**
|
|
347
|
+
* Whether the dropdown locks page scroll and renders a full-viewport
|
|
348
|
+
* dismiss layer when open. Set to `false` when the dropdown is not
|
|
349
|
+
* inside a `<label>` to allow normal page scrolling.
|
|
350
|
+
*
|
|
351
|
+
* @default true
|
|
352
|
+
*/
|
|
353
|
+
modal?: boolean;
|
|
354
|
+
}
|
|
355
|
+
interface FilePickerProps extends BaseFormFieldProps<File | File[]> {
|
|
356
|
+
/**
|
|
357
|
+
* Whether multiple files can be selected
|
|
358
|
+
*/
|
|
359
|
+
isMulti?: boolean;
|
|
360
|
+
/**
|
|
361
|
+
* Accepted file types (e.g., "image/*", ".pdf")
|
|
362
|
+
*/
|
|
363
|
+
accept?: string | string[];
|
|
364
|
+
/**
|
|
365
|
+
* Maximum file size in bytes
|
|
366
|
+
*/
|
|
367
|
+
maxSize?: number;
|
|
368
|
+
/**
|
|
369
|
+
* The text displayed when no file is selected.
|
|
370
|
+
*
|
|
371
|
+
* @default "No file chosen"
|
|
372
|
+
*/
|
|
373
|
+
text?: string;
|
|
374
|
+
/**
|
|
375
|
+
* The text displayed on the browse button.
|
|
376
|
+
*
|
|
377
|
+
* @default "Browse"
|
|
378
|
+
*/
|
|
379
|
+
buttonText?: string;
|
|
380
|
+
}
|
|
381
|
+
/**
|
|
382
|
+
* Text area field props
|
|
383
|
+
*/
|
|
384
|
+
interface TextAreaFieldProps extends BaseFormFieldProps<string>, Pick<React__default.TextareaHTMLAttributes<HTMLTextAreaElement>, "rows" | "wrap"
|
|
385
|
+
/**
|
|
386
|
+
* If provided, this will be added to the field validation
|
|
387
|
+
*/
|
|
388
|
+
| "minLength"
|
|
389
|
+
/**
|
|
390
|
+
* If provided, this will be added to the field validation
|
|
391
|
+
*/
|
|
392
|
+
| "maxLength"> {
|
|
393
|
+
placeholder?: string;
|
|
394
|
+
}
|
|
395
|
+
interface TextInputFieldProps extends BaseFormFieldProps<string>, Pick<React__default.InputHTMLAttributes<HTMLInputElement>,
|
|
396
|
+
/**
|
|
397
|
+
* If provided, this will be added to the field validation
|
|
398
|
+
*/
|
|
399
|
+
"minLength"
|
|
400
|
+
/**
|
|
401
|
+
* If provided, this will be added to the field validation
|
|
402
|
+
*/
|
|
403
|
+
| "maxLength"> {
|
|
404
|
+
placeholder?: string;
|
|
405
|
+
}
|
|
406
|
+
/**
|
|
407
|
+
* Number input field props
|
|
408
|
+
*/
|
|
409
|
+
interface NumberInputFieldProps extends BaseFormFieldProps<number> {
|
|
410
|
+
/**
|
|
411
|
+
* Minimum allowed value.
|
|
412
|
+
*/
|
|
413
|
+
min?: number;
|
|
414
|
+
/**
|
|
415
|
+
* Maximum allowed value.
|
|
416
|
+
*/
|
|
417
|
+
max?: number;
|
|
418
|
+
/**
|
|
419
|
+
* Step increment for the input. Used by the stepper buttons and ArrowUp/ArrowDown keyboard stepping.
|
|
420
|
+
*
|
|
421
|
+
* @default 1
|
|
422
|
+
*/
|
|
423
|
+
step?: number;
|
|
424
|
+
/**
|
|
425
|
+
* Placeholder text shown when the input is empty.
|
|
426
|
+
*/
|
|
427
|
+
placeholder?: string;
|
|
428
|
+
}
|
|
429
|
+
/**
|
|
430
|
+
* Radio buttons field props
|
|
431
|
+
*/
|
|
432
|
+
interface RadioButtonsFieldProps<V> extends BaseFormFieldProps<V> {
|
|
433
|
+
/**
|
|
434
|
+
* Available options for radio buttons.
|
|
435
|
+
*
|
|
436
|
+
* Values are compared by reference equality (`===`). When options contain
|
|
437
|
+
* non-primitive values, pass the same object references for `value` and
|
|
438
|
+
* the corresponding option entry.
|
|
439
|
+
*/
|
|
440
|
+
options: Option<V>[];
|
|
441
|
+
/**
|
|
442
|
+
* Controls the layout direction of the radio buttons.
|
|
443
|
+
*
|
|
444
|
+
* - `"vertical"` (default): options are stacked in a column
|
|
445
|
+
* - `"horizontal"`: options are laid out in a row, wrapping when needed
|
|
446
|
+
*/
|
|
447
|
+
orientation?: "horizontal" | "vertical";
|
|
448
|
+
}
|
|
449
|
+
/**
|
|
450
|
+
* Switch field props for boolean values.
|
|
451
|
+
*/
|
|
452
|
+
type SwitchFieldProps = BaseFormFieldProps<boolean>;
|
|
453
|
+
/**
|
|
454
|
+
* Option interface for radio button options
|
|
455
|
+
*/
|
|
456
|
+
interface Option<V> {
|
|
457
|
+
label: string;
|
|
458
|
+
value: V;
|
|
459
|
+
}
|
|
460
|
+
/**
|
|
461
|
+
* Object set field displays the summary of the count of the given object set
|
|
462
|
+
*/
|
|
463
|
+
interface ObjectSetFieldProps<T extends ObjectTypeDefinition> extends Pick<BaseFormFieldProps<ObjectSet<T>>, "id" | "value" | "disabled"> {
|
|
464
|
+
/**
|
|
465
|
+
* Message displayed when no object set is provided.
|
|
466
|
+
*
|
|
467
|
+
* @default "Object set is not defined"
|
|
468
|
+
*/
|
|
469
|
+
emptyMessage?: string;
|
|
470
|
+
}
|
|
471
|
+
type ObjectSelectDataSource<Q extends ObjectTypeDefinition> = {
|
|
472
|
+
/**
|
|
473
|
+
* The object type definition to search across.
|
|
474
|
+
*/
|
|
475
|
+
objectType: Q;
|
|
476
|
+
objectSet?: never;
|
|
477
|
+
} | {
|
|
478
|
+
/**
|
|
479
|
+
* A pre-scoped object set to search within.
|
|
480
|
+
*
|
|
481
|
+
* Use this when selectable options should be limited to a subset of
|
|
482
|
+
* objects. User-entered search text is applied within this set.
|
|
483
|
+
*/
|
|
484
|
+
objectSet: ObjectSet<Q>;
|
|
485
|
+
objectType?: never;
|
|
486
|
+
};
|
|
487
|
+
/**
|
|
488
|
+
* Object select field props for selecting object instances from the ontology.
|
|
489
|
+
* Used for action parameters that accept a single object or multiple objects.
|
|
490
|
+
*
|
|
491
|
+
* Extends DropdownFieldProps with props that ObjectSelectField
|
|
492
|
+
* manages internally (items, search, filtering) omitted from the public surface.
|
|
493
|
+
*/
|
|
494
|
+
type ObjectSelectFieldProps<Q extends ObjectTypeDefinition = ObjectTypeDefinition> = Omit<DropdownFieldProps<Osdk.Instance<Q>>, "items" | "itemToStringLabel" | "itemToKey" | "isItemEqual" | "isSearchable" | "query" | "onQueryChange" | "disableClientSideFiltering" | "renderItemList"> & ObjectSelectDataSource<Q>;
|
|
495
|
+
/**
|
|
496
|
+
* Custom field props for user-defined renderers
|
|
497
|
+
*/
|
|
498
|
+
interface CustomFieldProps<V> extends BaseFormFieldProps<V> {
|
|
499
|
+
/**
|
|
500
|
+
* Custom renderer function
|
|
501
|
+
*/
|
|
502
|
+
customRenderer: (props: BaseFormFieldProps<V>) => React__default.ReactNode;
|
|
503
|
+
}
|
|
504
|
+
interface UnsupportedFieldProps extends Pick<BaseFormFieldProps<string>, "id" | "error"> {
|
|
505
|
+
}
|
|
506
|
+
interface BaseFormFieldProps<V> {
|
|
507
|
+
/**
|
|
508
|
+
* The HTML `id` attribute for the field input element.
|
|
509
|
+
* Used for `<label htmlFor>` association.
|
|
510
|
+
*/
|
|
511
|
+
id?: string;
|
|
512
|
+
/**
|
|
513
|
+
* The validation error message for this field, if any.
|
|
514
|
+
* When set, the field should display a visual error state.
|
|
515
|
+
*/
|
|
516
|
+
error?: string;
|
|
517
|
+
/**
|
|
518
|
+
* The value of the form field
|
|
519
|
+
*/
|
|
520
|
+
value: V | null;
|
|
521
|
+
/**
|
|
522
|
+
* The default value of the form field.
|
|
523
|
+
*/
|
|
524
|
+
defaultValue?: V;
|
|
525
|
+
/**
|
|
526
|
+
* Whether the field is disabled.
|
|
527
|
+
*
|
|
528
|
+
* Disabled fields keep their current value in form state and submit payloads,
|
|
529
|
+
* but built-in renderers block user edits and remove disabled controls from
|
|
530
|
+
* keyboard navigation.
|
|
531
|
+
*/
|
|
532
|
+
disabled?: boolean;
|
|
533
|
+
/**
|
|
534
|
+
* Called when the field value changes.
|
|
535
|
+
*
|
|
536
|
+
* ActionForm internally wraps this to pass the key to `onFieldValueChange`:
|
|
537
|
+
* ```
|
|
538
|
+
* <DropdownField
|
|
539
|
+
* {...fieldDef}
|
|
540
|
+
* onChange={(value) => onFieldValueChange(fieldDef.key, value)}
|
|
541
|
+
* />
|
|
542
|
+
* ```
|
|
543
|
+
*
|
|
544
|
+
* @param value The new value of the form field
|
|
545
|
+
*/
|
|
546
|
+
onChange?: (value: V | null) => void;
|
|
547
|
+
}
|
|
548
|
+
type FieldKey<Q extends ActionDefinition<unknown>> = keyof ActionParameters<Q>;
|
|
549
|
+
/**
|
|
550
|
+
* Extracts parameters from an ActionDefinition
|
|
551
|
+
*/
|
|
552
|
+
type ActionParameters<Q extends ActionDefinition<unknown>> = CompileTimeMetadata<Q>["parameters"];
|
|
553
|
+
/**
|
|
554
|
+
* Extracts the value type for a specific parameter
|
|
555
|
+
*/
|
|
556
|
+
type FieldValueType<Q extends ActionDefinition<unknown>, K extends keyof ActionParameters<Q> = keyof ActionParameters<Q>> = ActionParameters<Q>[K]["type"] extends ActionMetadata.DataType.Object<infer T> ? ActionParam.ObjectType<T> : ActionParameters<Q>[K]["type"] extends ActionMetadata.DataType.ObjectSet<infer T> ? ActionParam.ObjectSetType<T> : ActionParameters<Q>[K]["type"] extends ActionMetadata.DataType.Interface<infer T> ? ActionParam.InterfaceType<T> : ActionParameters<Q>[K]["type"] extends ActionMetadata.DataType.Struct<infer T> ? ActionParam.StructType<T> : ActionParameters<Q>[K]["type"] extends keyof DataValueClientToWire ? DataValueClientToWire[ActionParameters<Q>[K]["type"]] : never;
|
|
557
|
+
/**
|
|
558
|
+
* Extracts the parameter type descriptor for a specific action parameter.
|
|
559
|
+
*/
|
|
560
|
+
type FieldDescriptorType<Q extends ActionDefinition<unknown> = ActionDefinition<unknown>, K extends keyof ActionParameters<Q> = keyof ActionParameters<Q>> = ActionParameters<Q>[K]["type"];
|
|
561
|
+
/**
|
|
562
|
+
* Available form field component types
|
|
563
|
+
*/
|
|
564
|
+
type FieldComponent = "DATE_RANGE_INPUT" | "DATETIME_PICKER" | "DROPDOWN" | "FILE_PICKER" | "NUMBER_INPUT" | "OBJECT_SELECT" | "OBJECT_SET" | "RADIO_BUTTONS" | "SWITCH" | "TEXT_AREA" | "TEXT_INPUT" | "CUSTOM" | "UNSUPPORTED";
|
|
565
|
+
/**
|
|
566
|
+
* Describes the data type of a form field, independent of OSDK.
|
|
567
|
+
* Mirrors ActionMetadata.DataType to keep the rendering layer OSDK-agnostic.
|
|
568
|
+
*/
|
|
569
|
+
type FieldType = "boolean" | "string" | "integer" | "long" | "double" | "datetime" | "timestamp" | "attachment" | "marking" | "mediaReference" | "objectType" | "geoshape" | "geohash" | "scenarioReference" | {
|
|
570
|
+
type: "object";
|
|
571
|
+
object: string;
|
|
572
|
+
} | {
|
|
573
|
+
type: "objectSet";
|
|
574
|
+
objectSet: string;
|
|
575
|
+
} | {
|
|
576
|
+
type: "interface";
|
|
577
|
+
interface: string;
|
|
578
|
+
} | {
|
|
579
|
+
type: "struct";
|
|
580
|
+
struct: Record<string, string>;
|
|
581
|
+
};
|
|
582
|
+
/**
|
|
583
|
+
* Props managed by form state infrastructure (FieldBridge / RHF).
|
|
584
|
+
* Fields with onChange participate in form state → value and onChange are managed
|
|
585
|
+
* externally. Read-only fields (no onChange, e.g. ObjectSetField) keep value in
|
|
586
|
+
* fieldComponentProps so it bypasses form state cloning.
|
|
587
|
+
*/
|
|
588
|
+
type FormManagedProps<K extends FieldComponent> = "onChange" extends keyof FormFieldPropsByType[K] ? "value" | "onChange" | "disabled" : "onChange" | "disabled";
|
|
589
|
+
type DistributiveOmit<T, K extends PropertyKey> = T extends unknown ? Omit<T, Extract<keyof T, K>> : never;
|
|
590
|
+
/**
|
|
591
|
+
* An OSDK-agnostic field definition used by BaseForm and FormFieldRenderer.
|
|
592
|
+
* Contains only the information needed to render a single field — no generics,
|
|
593
|
+
* no compile-time parameter constraints.
|
|
594
|
+
*
|
|
595
|
+
* Implemented as a distributed mapped type: switching on `fieldComponent`
|
|
596
|
+
* narrows `fieldComponentProps` to the correct props type automatically.
|
|
597
|
+
*/
|
|
598
|
+
type RendererFieldDefinition = {
|
|
599
|
+
[K in FieldComponent]: {
|
|
600
|
+
fieldKey: string;
|
|
601
|
+
fieldComponent: K;
|
|
602
|
+
fieldType?: FieldType;
|
|
603
|
+
label: string;
|
|
604
|
+
isRequired?: boolean;
|
|
605
|
+
placeholder?: string;
|
|
606
|
+
helperText?: React__default.ReactNode;
|
|
607
|
+
helperTextPlacement?: "bottom" | "tooltip";
|
|
608
|
+
disabled?: boolean;
|
|
609
|
+
validate?: (value: unknown) => Promise<string | undefined>;
|
|
610
|
+
onValidationError?: (error: ValidationError) => string | undefined;
|
|
611
|
+
fieldComponentProps: DistributiveOmit<FormFieldPropsByType[K], FormManagedProps<K>>;
|
|
612
|
+
};
|
|
613
|
+
}[FieldComponent];
|
|
614
|
+
/**
|
|
615
|
+
* Gets valid form field types for a given property type
|
|
616
|
+
*/
|
|
617
|
+
type ValidFormFieldForPropertyType<P extends FieldDescriptorType> = "CUSTOM" | (P extends {
|
|
618
|
+
type: "objectSet";
|
|
619
|
+
} ? "OBJECT_SET" : P extends {
|
|
620
|
+
type: "object";
|
|
621
|
+
} ? "OBJECT_SELECT" : P extends {
|
|
622
|
+
type: "interface";
|
|
623
|
+
} ? "UNSUPPORTED" : P extends {
|
|
624
|
+
type: "struct";
|
|
625
|
+
} ? "UNSUPPORTED" : P extends "mediaReference" | "attachment" ? "FILE_PICKER" : P extends "boolean" ? "RADIO_BUTTONS" | "DROPDOWN" | "SWITCH" : P extends "string" ? "TEXT_INPUT" | "TEXT_AREA" : P extends "datetime" | "timestamp" ? "DATETIME_PICKER" : P extends "marking" | "geohash" | "geoshape" | "objectType" ? "UNSUPPORTED" : P extends "double" | "integer" | "long" | "float" | "short" | "byte" | "decimal" ? "NUMBER_INPUT" : never);
|
|
626
|
+
|
|
627
|
+
/**
|
|
628
|
+
* Props for the ActionForm component.
|
|
629
|
+
*
|
|
630
|
+
* A discriminated union ensures that controlled mode (formState provided)
|
|
631
|
+
* always requires onFormStateChange, and uncontrolled mode makes `onFormStateChange` optional
|
|
632
|
+
*/
|
|
633
|
+
type ActionFormProps<Q extends ActionDefinition<unknown>> = (ActionFormConfigProps<Q> & {
|
|
634
|
+
/**
|
|
635
|
+
* The current form values.
|
|
636
|
+
* If provided, the form state is controlled.
|
|
637
|
+
*/
|
|
638
|
+
formState: FormState<Q>;
|
|
639
|
+
/**
|
|
640
|
+
* Called when a field value changes, with a state updater.
|
|
641
|
+
* Required when the form state is controlled; also fires in
|
|
642
|
+
* uncontrolled mode so callers can observe changes.
|
|
643
|
+
*/
|
|
644
|
+
onFormStateChange: (updater: (prevState: FormState<Q>) => FormState<Q>) => void;
|
|
645
|
+
}) | (ActionFormConfigProps<Q> & {
|
|
646
|
+
formState?: undefined;
|
|
647
|
+
onFormStateChange?: (updater: (prevState: FormState<Q>) => FormState<Q>) => void;
|
|
648
|
+
});
|
|
649
|
+
interface ActionFormConfigProps<Q extends ActionDefinition<unknown>> extends Pick<BaseFormProps, "formTitle" | "isSubmitDisabled"> {
|
|
650
|
+
/**
|
|
651
|
+
* The OSDK action definition. Its parameters drive the rendered fields
|
|
652
|
+
* and the submission.
|
|
653
|
+
*/
|
|
654
|
+
actionDefinition: Q;
|
|
655
|
+
/**
|
|
656
|
+
* Whether to show the form title.
|
|
657
|
+
*
|
|
658
|
+
* @default false
|
|
659
|
+
*/
|
|
660
|
+
showFormTitle?: boolean;
|
|
661
|
+
/**
|
|
662
|
+
* If not supplied, field definitions are constructed from action metadata.
|
|
663
|
+
*/
|
|
664
|
+
formFieldDefinitions?: ReadonlyArray<FormFieldDefinition<Q>>;
|
|
665
|
+
/**
|
|
666
|
+
* If supplied, this will override the default submit action.
|
|
667
|
+
* By default, the action's applyAction will be called.
|
|
668
|
+
*
|
|
669
|
+
* @param formState all field values when onSubmit is called
|
|
670
|
+
* @param applyAction the function to execute the action
|
|
671
|
+
* @returns a promise of the submission response
|
|
672
|
+
*/
|
|
673
|
+
onSubmit?: (formState: FormState<Q>, applyAction: (formState: FormState<Q>) => Promise<ActionEditResponse | undefined>) => Promise<unknown> | void;
|
|
674
|
+
/**
|
|
675
|
+
* Called when the validation response is returned from a validateOnly submission
|
|
676
|
+
*
|
|
677
|
+
* @param results the validation response
|
|
678
|
+
*/
|
|
679
|
+
onValidationResponse?: (results: ActionValidationResponse) => void;
|
|
680
|
+
/**
|
|
681
|
+
* Called when the action is successfully executed from a non-validateOnly submission
|
|
682
|
+
*
|
|
683
|
+
* @param results the submission response
|
|
684
|
+
*/
|
|
685
|
+
onSuccess?: (results: ActionEditResponse | undefined) => void;
|
|
686
|
+
/**
|
|
687
|
+
* Called when action metadata fails to load or form submission fails.
|
|
688
|
+
*
|
|
689
|
+
* @param error the error that occurred
|
|
690
|
+
*/
|
|
691
|
+
onError?: (error: FormError) => void;
|
|
692
|
+
}
|
|
693
|
+
/**
|
|
694
|
+
* Form values mapping parameter names to their values
|
|
695
|
+
*/
|
|
696
|
+
type FormState<Q extends ActionDefinition<unknown>> = {
|
|
697
|
+
[K in FieldKey<Q>]?: FieldValueType<Q, K>;
|
|
698
|
+
};
|
|
699
|
+
/**
|
|
700
|
+
* Form error discriminated union
|
|
701
|
+
*/
|
|
702
|
+
type FormError = {
|
|
703
|
+
type: "submission";
|
|
704
|
+
error: unknown;
|
|
705
|
+
} | {
|
|
706
|
+
type: "unknown";
|
|
707
|
+
error: unknown;
|
|
708
|
+
};
|
|
709
|
+
/**
|
|
710
|
+
* A single item in the form content array — either a standalone field
|
|
711
|
+
* or a section that groups multiple fields.
|
|
712
|
+
*/
|
|
713
|
+
type FormContentItem = {
|
|
714
|
+
type: "field";
|
|
715
|
+
definition: RendererFieldDefinition;
|
|
716
|
+
} | {
|
|
717
|
+
type: "section";
|
|
718
|
+
key: string;
|
|
719
|
+
definition: FormSectionDefinition;
|
|
720
|
+
};
|
|
721
|
+
/**
|
|
722
|
+
* Configuration for a form section — a visual group of fields with
|
|
723
|
+
* optional title bar, collapse behavior, and multi-column layout.
|
|
724
|
+
*/
|
|
725
|
+
interface FormSectionDefinition {
|
|
726
|
+
title: string;
|
|
727
|
+
description?: string;
|
|
728
|
+
fields: ReadonlyArray<RendererFieldDefinition>;
|
|
729
|
+
/** Whether the section starts collapsed. Default `false`. */
|
|
730
|
+
collapsedByDefault?: boolean;
|
|
731
|
+
/** Whether to show the title bar. Default `true`. */
|
|
732
|
+
showTitleBar?: boolean;
|
|
733
|
+
/** Number of columns for fields. Default `1`. */
|
|
734
|
+
columnCount?: 1 | 2;
|
|
735
|
+
/** Visual style. `"box"` = bordered card, `"minimal"` = heading only. Default `"box"`. */
|
|
736
|
+
style?: "box" | "minimal";
|
|
737
|
+
}
|
|
738
|
+
/**
|
|
739
|
+
* Props for the `BaseForm` component, which renders a form without
|
|
740
|
+
* OSDK data fetching.
|
|
741
|
+
*
|
|
742
|
+
* Uses a discriminated union so that controlled mode (`formState` provided)
|
|
743
|
+
* always requires `onFieldValueChange`; uncontrolled mode omits `formState`
|
|
744
|
+
* (`onFieldValueChange` stays optional).
|
|
745
|
+
* `onSubmit` receives the current form state so callers can access values
|
|
746
|
+
* even in uncontrolled mode.
|
|
747
|
+
*/
|
|
748
|
+
type BaseFormProps = BaseFormCommonProps & ({
|
|
749
|
+
/**
|
|
750
|
+
* The current field values keyed by field key.
|
|
751
|
+
* If provided, the form state is controlled.
|
|
752
|
+
*/
|
|
753
|
+
formState: Record<string, unknown>;
|
|
754
|
+
/**
|
|
755
|
+
* Called when a field value changes.
|
|
756
|
+
* Required when the form state is controlled; also fires in
|
|
757
|
+
* uncontrolled mode so callers can observe changes.
|
|
758
|
+
*/
|
|
759
|
+
onFieldValueChange: (fieldKey: string, value: unknown) => void;
|
|
760
|
+
} | {
|
|
761
|
+
formState?: undefined;
|
|
762
|
+
onFieldValueChange?: (fieldKey: string, value: unknown) => void;
|
|
763
|
+
});
|
|
764
|
+
interface BaseFormCommonProps {
|
|
765
|
+
/** Title shown in the form header. Omit to hide the header. */
|
|
766
|
+
formTitle?: string;
|
|
767
|
+
/** The fields and sections to render, in order. */
|
|
768
|
+
formContent: ReadonlyArray<FormContentItem>;
|
|
769
|
+
/** Called when the form is submitted with valid values. Receives the current form state. */
|
|
770
|
+
onSubmit: (formState: Record<string, unknown>) => Promise<void> | void;
|
|
771
|
+
/** Whether the submit button is disabled. Default `false`. */
|
|
772
|
+
isSubmitDisabled?: boolean;
|
|
773
|
+
/** Whether a submission is in progress. Shows the submit button in a pending state. Default `false`. */
|
|
774
|
+
isPending?: boolean;
|
|
775
|
+
/** Whether the form is loading its fields. Shows a skeleton placeholder. Default `false`. */
|
|
776
|
+
isLoading?: boolean;
|
|
777
|
+
/** Additional CSS class name for the root element. */
|
|
778
|
+
className?: string;
|
|
779
|
+
/** Label for the submit button. Default `"Submit"`. */
|
|
780
|
+
submitButtonText?: string;
|
|
781
|
+
/** Visual variant of the submit button. Default `"primary"`. */
|
|
782
|
+
submitButtonVariant?: "primary" | "secondary";
|
|
783
|
+
}
|
|
784
|
+
|
|
785
|
+
declare const ActionForm$1: <Q extends ActionDefinition<unknown>>(props: ActionFormProps<Q>) => React__default.ReactElement;
|
|
786
|
+
|
|
787
|
+
declare const BaseForm: React__default.FC<BaseFormProps>;
|
|
788
|
+
|
|
789
|
+
declare const ActionForm: typeof ActionForm$1;
|
|
790
|
+
|
|
791
|
+
export { ActionForm as A, BaseForm as B, type CustomFieldProps as C, type DropdownFieldProps as D, type FieldComponent as F, type NumberInputFieldProps as N, type ObjectSelectFieldProps as O, type PortalContainer as P, type RadioButtonsFieldProps as R, type TextAreaFieldProps as T, type UnsupportedFieldProps as U, type ValidationError as V, type ActionFormProps as a, type ActionParameters as b, type BaseFormFieldProps as c, type BaseFormProps as d, type FieldValueType as e, type FilePickerProps as f, type FormContentItem as g, type FormError as h, type FieldKey as i, type FormFieldDefinition as j, type FormFieldPropsByType as k, type FormSectionDefinition as l, type FormState as m, type ObjectSetFieldProps as n, type Option as o, type RendererFieldDefinition as p, type TextInputFieldProps as q };
|