@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
|
@@ -1,976 +1,62 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* Props passed to custom filter input renderer
|
|
13
|
-
*/
|
|
14
|
-
interface CustomFilterInputRendererProps<Q extends ObjectTypeDefinition, State extends BaseFilterState> {
|
|
15
|
-
objectType: Q;
|
|
16
|
-
objectSet?: ObjectSet<Q>;
|
|
17
|
-
filterState: State;
|
|
18
|
-
onFilterStateChanged: (newState: State) => void;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Props passed to custom filter item renderer
|
|
22
|
-
* Includes full item context in addition to input renderer props
|
|
23
|
-
*/
|
|
24
|
-
interface CustomFilterItemRendererProps<Q extends ObjectTypeDefinition, State extends BaseFilterState> extends CustomFilterInputRendererProps<Q, State> {
|
|
25
|
-
label: string;
|
|
26
|
-
onRemove?: () => void;
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* Filter definition for custom filters
|
|
30
|
-
* Provides full control over rendering and filter logic
|
|
31
|
-
*/
|
|
32
|
-
interface CustomFilterDefinition<Q extends ObjectTypeDefinition, State extends BaseFilterState = CustomFilterState> extends FilterDefinitionControls {
|
|
33
|
-
type: "CUSTOM";
|
|
34
|
-
/**
|
|
35
|
-
* Unique key for this custom filter
|
|
36
|
-
*/
|
|
37
|
-
key: string;
|
|
38
|
-
label?: string;
|
|
39
|
-
filterComponent: "CUSTOM";
|
|
40
|
-
/**
|
|
41
|
-
* Seeds the filter's state on mount, FilterList owns the state from then on
|
|
42
|
-
*
|
|
43
|
-
* @default undefined (filter starts empty)
|
|
44
|
-
*/
|
|
45
|
-
defaultFilterState?: State;
|
|
46
|
-
/**
|
|
47
|
-
* @deprecated Rename to `defaultFilterState`.
|
|
48
|
-
*/
|
|
49
|
-
filterState?: State;
|
|
50
|
-
/**
|
|
51
|
-
* Render the input portion of the filter
|
|
52
|
-
* Used when rendering within a filter item wrapper
|
|
53
|
-
*/
|
|
54
|
-
renderInput?: (props: CustomFilterInputRendererProps<Q, State>) => ReactNode;
|
|
55
|
-
/**
|
|
56
|
-
* Render the complete filter item
|
|
57
|
-
* Used when you need full control over the item appearance
|
|
58
|
-
*/
|
|
59
|
-
renderItem?: (props: CustomFilterItemRendererProps<Q, State>) => ReactNode;
|
|
60
|
-
/**
|
|
61
|
-
* Convert filter state to a WhereClause for filtering
|
|
62
|
-
* Required for the filter to affect the object set
|
|
63
|
-
*/
|
|
64
|
-
toWhereClause: (state: State) => WhereClause<Q> | undefined;
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
/**
|
|
68
|
-
* Keys of string properties on an object type
|
|
69
|
-
*/
|
|
70
|
-
type StringPropertyKeys<Q extends ObjectTypeDefinition> = PropertyKeys.Filtered<Q, "string">;
|
|
71
|
-
/**
|
|
72
|
-
* State for keyword search filter
|
|
73
|
-
*/
|
|
74
|
-
interface KeywordSearchFilterState extends BaseFilterState {
|
|
75
|
-
type: "keywordSearch";
|
|
76
|
-
searchTerm: string;
|
|
77
|
-
/**
|
|
78
|
-
* How multiple terms are combined
|
|
79
|
-
* - "AND": All terms must match
|
|
80
|
-
* - "OR": Any term must match
|
|
81
|
-
*/
|
|
82
|
-
operator: "AND" | "OR";
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* Filter definition for keyword search across string properties
|
|
86
|
-
*/
|
|
87
|
-
interface KeywordSearchFilterDefinition<Q extends ObjectTypeDefinition, K extends StringPropertyKeys<Q> = StringPropertyKeys<Q>> extends FilterDefinitionControls {
|
|
88
|
-
type: "KEYWORD_SEARCH";
|
|
89
|
-
/**
|
|
90
|
-
* Properties to search within
|
|
91
|
-
* - "all": Search all string properties
|
|
92
|
-
* - K[]: Search specific string properties
|
|
93
|
-
*/
|
|
94
|
-
properties: "all" | K[];
|
|
95
|
-
label?: string;
|
|
96
|
-
/**
|
|
97
|
-
* Seeds the filter's state on mount, FilterList owns the state from then on
|
|
98
|
-
*
|
|
99
|
-
* @default undefined (filter starts empty)
|
|
100
|
-
*/
|
|
101
|
-
defaultFilterState?: KeywordSearchFilterState;
|
|
102
|
-
/**
|
|
103
|
-
* @deprecated Has no effect, remove it.
|
|
104
|
-
*/
|
|
105
|
-
filterState?: KeywordSearchFilterState;
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
/**
|
|
109
|
-
* Runtime representation of an active link-traversing filter
|
|
110
|
-
*/
|
|
111
|
-
type LinkedFilter<Q extends ObjectTypeDefinition> = {
|
|
112
|
-
[L in LinkNames<Q>]: {
|
|
113
|
-
/** The filter definition's `getFilterKey` value. */
|
|
114
|
-
id: string;
|
|
115
|
-
linkName: L;
|
|
116
|
-
/**
|
|
117
|
-
* Predicate the linked objects must match to be counted.
|
|
118
|
-
*/
|
|
119
|
-
innerWhere?: WhereClause<LinkedType<Q, L>>;
|
|
120
|
-
/**
|
|
121
|
-
* When true, keep source rows whose match-count is zero.
|
|
122
|
-
*/
|
|
123
|
-
isExcluding?: boolean;
|
|
124
|
-
};
|
|
125
|
-
}[LinkNames<Q>];
|
|
126
|
-
/**
|
|
127
|
-
* State for "has link" filter
|
|
128
|
-
*/
|
|
129
|
-
interface HasLinkFilterState extends BaseFilterState {
|
|
130
|
-
type: "hasLink";
|
|
131
|
-
hasLink: boolean;
|
|
132
|
-
}
|
|
133
|
-
/**
|
|
134
|
-
* State for linked property filter
|
|
135
|
-
* Wraps the filter state of the linked property
|
|
136
|
-
*/
|
|
137
|
-
interface LinkedPropertyFilterState<S extends FilterState = FilterState> extends BaseFilterState {
|
|
138
|
-
type: "linkedProperty";
|
|
139
|
-
linkedFilterState: S;
|
|
140
|
-
}
|
|
141
|
-
/**
|
|
142
|
-
* Filter definition for "Has Link" filter
|
|
143
|
-
* Filters objects based on whether they have any linked objects of the specified
|
|
144
|
-
* type. Filters `objectSet` and is emitted via `onEffectiveObjectSet`; link
|
|
145
|
-
* presence has no filter-clause form, so it never appears in
|
|
146
|
-
* `onFilterClauseChanged`.
|
|
147
|
-
*/
|
|
148
|
-
interface HasLinkFilterDefinition<Q extends ObjectTypeDefinition, L extends LinkNames<Q> = LinkNames<Q>> extends FilterDefinitionControls {
|
|
149
|
-
type: "HAS_LINK";
|
|
150
|
-
linkName: L;
|
|
151
|
-
label?: string;
|
|
152
|
-
/**
|
|
153
|
-
* Seeds the filter's state on mount, FilterList owns the state from then on
|
|
154
|
-
*
|
|
155
|
-
* @default undefined (filter starts empty)
|
|
156
|
-
*/
|
|
157
|
-
defaultFilterState?: HasLinkFilterState;
|
|
158
|
-
/**
|
|
159
|
-
* @deprecated Has no effect, remove it.
|
|
160
|
-
*/
|
|
161
|
-
filterState?: HasLinkFilterState;
|
|
162
|
-
}
|
|
163
|
-
/**
|
|
164
|
-
* Filter definition for filtering on a property of linked objects
|
|
165
|
-
*/
|
|
166
|
-
interface LinkedPropertyFilterDefinition<Q extends ObjectTypeDefinition, L extends LinkNames<Q>, LinkedQ extends ObjectTypeDefinition = LinkedType<Q, L>, LinkedK extends PropertyKeys<LinkedQ> = PropertyKeys<LinkedQ>, LinkedC extends ValidComponentsForPropertyType<PropertyTypeFromKey<LinkedQ, LinkedK>> = ValidComponentsForPropertyType<PropertyTypeFromKey<LinkedQ, LinkedK>>> extends FilterDefinitionControls {
|
|
167
|
-
type: "LINKED_PROPERTY";
|
|
168
|
-
linkName: L;
|
|
169
|
-
/**
|
|
170
|
-
* @deprecated Has no effect, remove it.
|
|
171
|
-
*/
|
|
172
|
-
reverseLinkName?: LinkNames<LinkedQ>;
|
|
173
|
-
linkedPropertyKey: LinkedK;
|
|
174
|
-
/**
|
|
175
|
-
* The filter component to render for the linked property. Must be
|
|
176
|
-
* compatible with the linked property's type, see
|
|
177
|
-
* ValidComponentsForPropertyType.
|
|
178
|
-
*
|
|
179
|
-
* Required in practice — a definition that sets neither this nor
|
|
180
|
-
* `linkedFilterComponent` renders as unsupported.
|
|
181
|
-
*/
|
|
182
|
-
filterComponent?: LinkedC;
|
|
183
|
-
/**
|
|
184
|
-
* @deprecated Rename to `filterComponent`.
|
|
185
|
-
*/
|
|
186
|
-
linkedFilterComponent?: LinkedC;
|
|
187
|
-
/**
|
|
188
|
-
* Seeds the state of the filter on the *linked* property. FilterList owns the
|
|
189
|
-
* state from then on. `onFilterStateChanged` fires with the wrapper.
|
|
190
|
-
*
|
|
191
|
-
* @default undefined (filter starts empty)
|
|
192
|
-
*/
|
|
193
|
-
defaultFilterState?: FilterStateByComponentType[LinkedC];
|
|
194
|
-
/**
|
|
195
|
-
* @deprecated Rename to `defaultFilterState`.
|
|
196
|
-
*/
|
|
197
|
-
defaultLinkedFilterState?: FilterStateByComponentType[LinkedC];
|
|
198
|
-
/**
|
|
199
|
-
* @deprecated Has no effect, remove it.
|
|
200
|
-
*/
|
|
201
|
-
linkedFilterState?: FilterStateByComponentType[LinkedC];
|
|
202
|
-
/**
|
|
203
|
-
* @deprecated Has no effect, remove it.
|
|
204
|
-
*/
|
|
205
|
-
filterState?: LinkedPropertyFilterState<FilterStateByComponentType[LinkedC]>;
|
|
206
|
-
label?: string;
|
|
207
|
-
/**
|
|
208
|
-
* Show aggregation counts next to filter option values.
|
|
209
|
-
* Applies to LISTOGRAM, SINGLE_SELECT, and MULTI_SELECT linked components.
|
|
210
|
-
* @default true for LISTOGRAM and MULTI_SELECT, false for SINGLE_SELECT
|
|
211
|
-
*/
|
|
212
|
-
showCount?: boolean;
|
|
213
|
-
/**
|
|
214
|
-
* Custom display function for filter values.
|
|
215
|
-
* Replaces the default string display in dropdown items, chips, and listogram rows.
|
|
216
|
-
* When the function returns a string, that string is also used for search matching
|
|
217
|
-
* within filter dropdowns. When it returns a non-string `ReactNode`, search falls
|
|
218
|
-
* back to the raw value.
|
|
219
|
-
*/
|
|
220
|
-
renderValue?: (value: string) => ReactNode;
|
|
221
|
-
}
|
|
222
|
-
|
|
223
|
-
/**
|
|
224
|
-
* Helper type to extract the property type from an ObjectTypeDefinition given a property key
|
|
225
|
-
*/
|
|
226
|
-
type PropertyTypeFromKey<Q extends ObjectTypeDefinition, K extends PropertyKeys<Q>> = CompileTimeMetadata<Q>["properties"][K]["type"];
|
|
227
|
-
/**
|
|
228
|
-
* Fields shared by every filter definition, regardless of kind.
|
|
229
|
-
*/
|
|
230
|
-
interface FilterDefinitionControls {
|
|
231
|
-
/**
|
|
232
|
-
* When `false`, the header monocle (search-values icon) is hidden even for
|
|
233
|
-
* filter components that ordinarily support in-filter search. Useful for
|
|
234
|
-
* `MULTI_SELECT`, which already has its own inline search field.
|
|
235
|
-
*
|
|
236
|
-
* @default true
|
|
237
|
-
*/
|
|
238
|
-
searchField?: boolean;
|
|
239
|
-
/**
|
|
240
|
-
* Optional unique identifier for stable keying across filter reorders.
|
|
241
|
-
* Set it explicitly when that derived value would collide, e.g. two filters on the
|
|
242
|
-
* same property.
|
|
243
|
-
*
|
|
244
|
-
* This is the key used in `defaultFilterStates`; `getFilterKey(definition)`
|
|
245
|
-
* returns it.
|
|
246
|
-
*
|
|
247
|
-
* @default a value derived from the definition (its `key`, or its link and property names)
|
|
248
|
-
*/
|
|
249
|
-
id?: string;
|
|
250
|
-
/**
|
|
251
|
-
* Controls whether this filter is rendered.
|
|
252
|
-
* When false, the filter is hidden but its state is preserved.
|
|
253
|
-
* @default true
|
|
254
|
-
*/
|
|
255
|
-
isVisible?: boolean;
|
|
256
|
-
}
|
|
257
|
-
/**
|
|
258
|
-
* All available filter component types
|
|
259
|
-
*/
|
|
260
|
-
type FilterComponentType = "LISTOGRAM" | "DATE_RANGE" | "NUMBER_RANGE" | "TEXT_TAGS" | "CONTAINS_TEXT" | "SINGLE_SELECT" | "MULTI_SELECT" | "SINGLE_DATE" | "MULTI_DATE" | "TIMELINE" | "TOGGLE";
|
|
261
|
-
/**
|
|
262
|
-
* Gets valid component types for a given property type
|
|
263
|
-
*/
|
|
264
|
-
type ValidComponentsForPropertyType<P extends WirePropertyTypes> = P extends "boolean" ? "LISTOGRAM" | "SINGLE_SELECT" | "TOGGLE" : P extends "string" ? "LISTOGRAM" | "TEXT_TAGS" | "CONTAINS_TEXT" | "SINGLE_SELECT" | "MULTI_SELECT" : P extends "datetime" | "timestamp" ? "DATE_RANGE" | "SINGLE_DATE" | "MULTI_DATE" | "TIMELINE" : P extends "double" | "integer" | "long" | "float" | "short" | "byte" | "decimal" ? "NUMBER_RANGE" | "SINGLE_SELECT" | "MULTI_SELECT" : never;
|
|
265
|
-
/**
|
|
266
|
-
* Union of all possible filter states
|
|
267
|
-
*/
|
|
268
|
-
type FilterState = ExactMatchFilterState<string | boolean> | DateRangeFilterState | ContainsTextFilterState | NumberRangeFilterState | SelectFilterState<string | boolean | number> | SelectFilterState<Date> | TimelineFilterState | ToggleFilterState | HasLinkFilterState | LinkedPropertyFilterState | KeywordSearchFilterState | CustomFilterState;
|
|
269
|
-
/**
|
|
270
|
-
* Maps component types to their corresponding state types
|
|
271
|
-
*/
|
|
272
|
-
interface FilterStateByComponentType {
|
|
273
|
-
LISTOGRAM: ExactMatchFilterState<string | boolean>;
|
|
274
|
-
DATE_RANGE: DateRangeFilterState;
|
|
275
|
-
TEXT_TAGS: ExactMatchFilterState<string>;
|
|
276
|
-
CONTAINS_TEXT: ContainsTextFilterState;
|
|
277
|
-
NUMBER_RANGE: NumberRangeFilterState;
|
|
278
|
-
SINGLE_SELECT: SelectFilterState<string | boolean | number>;
|
|
279
|
-
MULTI_SELECT: SelectFilterState<string | boolean | number>;
|
|
280
|
-
SINGLE_DATE: SelectFilterState<Date>;
|
|
281
|
-
MULTI_DATE: SelectFilterState<Date>;
|
|
282
|
-
TIMELINE: TimelineFilterState;
|
|
283
|
-
TOGGLE: ToggleFilterState;
|
|
284
|
-
}
|
|
285
|
-
/**
|
|
286
|
-
* All filter state discriminator types
|
|
287
|
-
*/
|
|
288
|
-
type FilterStateType = "EXACT_MATCH" | "DATE_RANGE" | "NUMBER_RANGE" | "CONTAINS_TEXT" | "SELECT" | "TIMELINE" | "TOGGLE" | "hasLink" | "linkedProperty" | "keywordSearch" | "custom";
|
|
289
|
-
/**
|
|
290
|
-
* Base interface for all filter states
|
|
291
|
-
* Contains common properties shared across all filter types
|
|
292
|
-
*/
|
|
293
|
-
interface BaseFilterState {
|
|
294
|
-
/**
|
|
295
|
-
* The type of filter component
|
|
296
|
-
*/
|
|
297
|
-
type: FilterStateType;
|
|
298
|
-
/**
|
|
299
|
-
* If true, the objects satisfying the filter are excluded
|
|
300
|
-
* @default false
|
|
301
|
-
*/
|
|
302
|
-
isExcluding?: boolean;
|
|
303
|
-
/**
|
|
304
|
-
* If true, include objects that have no value
|
|
305
|
-
* @default false
|
|
306
|
-
*/
|
|
307
|
-
includeNull?: boolean;
|
|
308
|
-
}
|
|
309
|
-
interface ExactMatchFilterState<T = string | boolean> extends BaseFilterState {
|
|
310
|
-
type: "EXACT_MATCH";
|
|
311
|
-
values: T[];
|
|
312
|
-
}
|
|
313
|
-
interface DateRangeFilterState extends BaseFilterState {
|
|
314
|
-
type: "DATE_RANGE";
|
|
315
|
-
/**
|
|
316
|
-
* The earliest date the user can select
|
|
317
|
-
*/
|
|
318
|
-
minValue?: Date;
|
|
319
|
-
/**
|
|
320
|
-
* The latest date the user can select
|
|
321
|
-
*/
|
|
322
|
-
maxValue?: Date;
|
|
323
|
-
}
|
|
324
|
-
interface ContainsTextFilterState extends BaseFilterState {
|
|
325
|
-
type: "CONTAINS_TEXT";
|
|
326
|
-
value?: string;
|
|
327
|
-
}
|
|
328
|
-
interface NumberRangeFilterState extends BaseFilterState {
|
|
329
|
-
type: "NUMBER_RANGE";
|
|
330
|
-
/**
|
|
331
|
-
* Minimum numeric value (inclusive)
|
|
332
|
-
*/
|
|
333
|
-
minValue?: number;
|
|
334
|
-
/**
|
|
335
|
-
* Maximum numeric value (inclusive)
|
|
336
|
-
*/
|
|
337
|
-
maxValue?: number;
|
|
338
|
-
}
|
|
339
|
-
/**
|
|
340
|
-
* Consolidated state type for select-based filters.
|
|
341
|
-
* Used by SINGLE_SELECT, MULTI_SELECT, SINGLE_DATE, and MULTI_DATE.
|
|
342
|
-
*/
|
|
343
|
-
interface SelectFilterState<T = string | boolean | number | Date> extends BaseFilterState {
|
|
344
|
-
type: "SELECT";
|
|
345
|
-
selectedValues: T[];
|
|
346
|
-
}
|
|
347
|
-
interface TimelineFilterState extends BaseFilterState {
|
|
348
|
-
type: "TIMELINE";
|
|
349
|
-
startDate?: Date;
|
|
350
|
-
endDate?: Date;
|
|
351
|
-
granularity?: "day" | "week" | "month" | "quarter" | "year";
|
|
352
|
-
}
|
|
353
|
-
interface ToggleFilterState extends BaseFilterState {
|
|
354
|
-
type: "TOGGLE";
|
|
355
|
-
enabled: boolean;
|
|
356
|
-
}
|
|
357
|
-
/**
|
|
358
|
-
* Optional date display formatter. Mixed into `PropertyFilterDefinition`
|
|
359
|
-
* only when the property is `datetime` or `timestamp` — see
|
|
360
|
-
* {@link PropertyFilterDateExtras}.
|
|
361
|
-
*
|
|
362
|
-
* `formatDate` overrides the displayed string everywhere the filter
|
|
363
|
-
* surfaces a date: the shared `DateRangePicker` / `DatePicker` idle text,
|
|
364
|
-
* the date-range histogram tooltip and period subtitle, the multi-date
|
|
365
|
-
* chip text, and timeline labels. The picker's internal value remains
|
|
366
|
-
* ISO `YYYY-MM-DD` so cross-locale viewers see a consistent input format
|
|
367
|
-
* regardless of `formatDate`.
|
|
368
|
-
*
|
|
369
|
-
* Receives a `Date` in local time. If the property is a UTC ISO string and
|
|
370
|
-
* you want a different timezone, do that conversion inside your callback.
|
|
371
|
-
*/
|
|
372
|
-
interface DateFormattingProps {
|
|
373
|
-
formatDate?: (date: Date) => string;
|
|
374
|
-
}
|
|
375
|
-
/**
|
|
376
|
-
* Conditionally adds `formatDate` to a property filter definition only for
|
|
377
|
-
* `datetime` / `timestamp` properties. For other property types this field
|
|
378
|
-
* is typed as `never` so attempting to set it is a TypeScript error.
|
|
379
|
-
*/
|
|
380
|
-
type PropertyFilterDateExtras<P extends WirePropertyTypes> = P extends "datetime" | "timestamp" ? DateFormattingProps : {
|
|
381
|
-
formatDate?: never;
|
|
382
|
-
};
|
|
383
|
-
interface PropertyFilterDefinitionBase<Q extends ObjectTypeDefinition, K extends PropertyKeys<Q> = PropertyKeys<Q>, C extends ValidComponentsForPropertyType<PropertyTypeFromKey<Q, K>> = ValidComponentsForPropertyType<PropertyTypeFromKey<Q, K>>> extends FilterDefinitionControls {
|
|
384
|
-
/**
|
|
385
|
-
* Discriminator for filter definition type
|
|
386
|
-
*/
|
|
387
|
-
type: "PROPERTY";
|
|
388
|
-
/**
|
|
389
|
-
* The property key to filter on
|
|
390
|
-
*/
|
|
391
|
-
key: K;
|
|
392
|
-
/**
|
|
393
|
-
* Display label for the filter
|
|
394
|
-
*/
|
|
395
|
-
label?: string;
|
|
396
|
-
/**
|
|
397
|
-
* The filter component type to render
|
|
398
|
-
* Must be compatible with the property type derived from the key, see ValidComponentsForPropertyType
|
|
399
|
-
*/
|
|
400
|
-
filterComponent: C;
|
|
401
|
-
/**
|
|
402
|
-
* Seeds the filter's state on mount, FilterList owns the state from then on
|
|
403
|
-
*
|
|
404
|
-
* @default undefined (filter starts empty)
|
|
405
|
-
*/
|
|
406
|
-
defaultFilterState?: FilterStateByComponentType[C];
|
|
407
|
-
/**
|
|
408
|
-
* @deprecated Rename to `defaultFilterState`.
|
|
409
|
-
*/
|
|
410
|
-
filterState?: FilterStateByComponentType[C];
|
|
411
|
-
/**
|
|
412
|
-
* Maps filter values to colors for visual differentiation.
|
|
413
|
-
* Used by LISTOGRAM (per-row bar colors).
|
|
414
|
-
*/
|
|
415
|
-
colorMap?: Record<string, string>;
|
|
416
|
-
/**
|
|
417
|
-
* Configuration for LISTOGRAM display mode.
|
|
418
|
-
* Only applies when filterComponent is "LISTOGRAM".
|
|
419
|
-
*/
|
|
420
|
-
listogramConfig?: {
|
|
421
|
-
displayMode?: "full" | "count" | "minimal";
|
|
422
|
-
/**
|
|
423
|
-
* Number of items shown before "View all" link appears
|
|
424
|
-
* @default 5
|
|
425
|
-
*/
|
|
426
|
-
maxVisibleItems?: number;
|
|
427
|
-
};
|
|
428
|
-
/**
|
|
429
|
-
* Custom display function for filter values.
|
|
430
|
-
* Replaces the default string display in dropdown items, chips, and listogram rows.
|
|
431
|
-
* When the function returns a string, that string is also used for search matching
|
|
432
|
-
* within filter dropdowns. When it returns a non-string `ReactNode`, search falls
|
|
433
|
-
* back to the raw value.
|
|
434
|
-
*/
|
|
435
|
-
renderValue?: (value: string) => ReactNode;
|
|
436
|
-
/**
|
|
437
|
-
* Show aggregation counts next to filter option values.
|
|
438
|
-
* Applies to LISTOGRAM, SINGLE_SELECT, and MULTI_SELECT components.
|
|
439
|
-
* @default true for LISTOGRAM and MULTI_SELECT, false for SINGLE_SELECT
|
|
440
|
-
*/
|
|
441
|
-
showCount?: boolean;
|
|
442
|
-
/**
|
|
443
|
-
* When true, clicking a bar in the histogram replaces the filter range
|
|
444
|
-
* with that bucket's `[min, max]`. Only applies to histogram-rendering
|
|
445
|
-
* filter components (`NUMBER_RANGE` and `DATE_RANGE`); ignored on other
|
|
446
|
-
* component types.
|
|
447
|
-
*
|
|
448
|
-
* Click replaces the current range — clicking a second bar discards the
|
|
449
|
-
* previous selection. Multi-bucket selection / shift+click union is NOT
|
|
450
|
-
* supported in v1.
|
|
451
|
-
*
|
|
452
|
-
* @default false
|
|
453
|
-
*/
|
|
454
|
-
clickToFilter?: boolean;
|
|
455
|
-
}
|
|
456
|
-
/**
|
|
457
|
-
* A property filter definition specifies configuration for filtering on a single property
|
|
458
|
-
*
|
|
459
|
-
* The component type C must be compatible with the property type derived from the key.
|
|
460
|
-
* For example, boolean properties can only use LISTOGRAM or SINGLE_SELECT,
|
|
461
|
-
* while string properties can use LISTOGRAM, TEXT_TAGS, CONTAINS_TEXT, SINGLE_SELECT, or MULTI_SELECT.
|
|
462
|
-
*
|
|
463
|
-
* Date and datetime properties may additionally specify `formatDate` — see
|
|
464
|
-
* {@link PropertyFilterDateExtras}.
|
|
465
|
-
*/
|
|
466
|
-
type PropertyFilterDefinition<Q extends ObjectTypeDefinition, K extends PropertyKeys<Q> = PropertyKeys<Q>, C extends ValidComponentsForPropertyType<PropertyTypeFromKey<Q, K>> = ValidComponentsForPropertyType<PropertyTypeFromKey<Q, K>>> = PropertyFilterDefinitionBase<Q, K, C> & PropertyFilterDateExtras<PropertyTypeFromKey<Q, K>>;
|
|
467
|
-
|
|
468
|
-
type RenderFilterInput<D> = (props: {
|
|
469
|
-
definition: D;
|
|
470
|
-
filterKey: string;
|
|
471
|
-
filterState: FilterState | undefined;
|
|
472
|
-
onFilterStateChanged: (state: FilterState) => void;
|
|
473
|
-
searchQuery?: string;
|
|
474
|
-
excludeRowOpen?: boolean;
|
|
475
|
-
}) => React__default.ReactNode;
|
|
476
|
-
interface BaseFilterListProps<D extends FilterDefinitionControls> {
|
|
477
|
-
filterDefinitions?: Array<D>;
|
|
478
|
-
filterStates: Map<string, FilterState>;
|
|
479
|
-
onFilterStateChanged: (filterKey: string, state: FilterState) => void;
|
|
480
|
-
renderInput: RenderFilterInput<D>;
|
|
481
|
-
getFilterKey: (definition: D) => string;
|
|
482
|
-
getFilterLabel: (definition: D) => string;
|
|
483
|
-
/**
|
|
484
|
-
* Display-only fallback state for a filter that has no stored state, used so
|
|
485
|
-
* capability-driven header controls (overflow … menu, search) render for
|
|
486
|
-
* empty/just-added filters. Never written into the filter-state map.
|
|
487
|
-
*/
|
|
488
|
-
getEmptyDisplayState?: (definition: D) => FilterState | undefined;
|
|
489
|
-
activeFilterCount: number;
|
|
490
|
-
onReset?: () => void;
|
|
491
|
-
onFilterAdded?: () => void;
|
|
492
|
-
onFilterRemoved?: (filterKey: string) => void;
|
|
493
|
-
onOrderChange?: (orderedKeys: string[]) => void;
|
|
494
|
-
/**
|
|
495
|
-
* Whether the collapse/expand control is available. When `false` the panel is
|
|
496
|
-
* always expanded, no collapse control is rendered, and `collapsed` /
|
|
497
|
-
* `defaultCollapsed` are ignored.
|
|
498
|
-
* @default true
|
|
499
|
-
*/
|
|
500
|
-
enableCollapse?: boolean;
|
|
501
|
-
/**
|
|
502
|
-
* Controlled mode. When supplied, this prop is the source of truth for
|
|
503
|
-
* whether the panel is collapsed and the component keeps no internal state;
|
|
504
|
-
* re-render with a new value in response to `onCollapsedChange`.
|
|
505
|
-
*
|
|
506
|
-
* If both `collapsed` and `defaultCollapsed` are provided, `collapsed` takes
|
|
507
|
-
* precedence. Ignored when `enableCollapse` is `false`.
|
|
508
|
-
*/
|
|
509
|
-
collapsed?: boolean;
|
|
510
|
-
/**
|
|
511
|
-
* Uncontrolled mode. Seeds the panel's internal collapsed state; the
|
|
512
|
-
* component continues to own the state after mount, so later changes to this
|
|
513
|
-
* prop are ignored.
|
|
514
|
-
*
|
|
515
|
-
* If both `collapsed` and `defaultCollapsed` are provided, `collapsed` takes
|
|
516
|
-
* precedence. Ignored when `enableCollapse` is `false`.
|
|
517
|
-
* @default false
|
|
518
|
-
*/
|
|
519
|
-
defaultCollapsed?: boolean;
|
|
520
|
-
/**
|
|
521
|
-
* Called whenever the collapsed state changes.
|
|
522
|
-
*
|
|
523
|
-
* @param collapsed The new collapsed state
|
|
524
|
-
*/
|
|
525
|
-
onCollapsedChange?: (collapsed: boolean) => void;
|
|
526
|
-
title?: React__default.ReactNode;
|
|
527
|
-
titleIcon?: React__default.ReactNode;
|
|
528
|
-
showResetButton?: boolean;
|
|
529
|
-
showActiveFilterCount?: boolean;
|
|
530
|
-
/**
|
|
531
|
-
* Whether the reset button is enabled. Hosts compute this from whether the
|
|
532
|
-
* filter and/or visibility state has diverged from its initial snapshot.
|
|
533
|
-
*/
|
|
534
|
-
canReset?: boolean;
|
|
535
|
-
enableSorting?: boolean;
|
|
536
|
-
className?: string;
|
|
537
|
-
renderAddFilterButton?: () => React__default.ReactNode;
|
|
538
|
-
}
|
|
539
|
-
|
|
540
|
-
declare function BaseFilterList<D extends FilterDefinitionControls>(props: BaseFilterListProps<D>): React__default.ReactElement;
|
|
541
|
-
|
|
542
|
-
/**
|
|
543
|
-
* Component types that support static values.
|
|
544
|
-
* These components can display a fixed list of string values without OSDK aggregation.
|
|
545
|
-
*/
|
|
546
|
-
type StaticValuesComponentType = "LISTOGRAM" | "SINGLE_SELECT" | "MULTI_SELECT" | "TEXT_TAGS";
|
|
547
|
-
/**
|
|
548
|
-
* Filter definition for static (non-OSDK) value lists.
|
|
549
|
-
* Renders built-in filter components with user-provided values instead of
|
|
550
|
-
* fetching values via OSDK aggregation queries.
|
|
551
|
-
*/
|
|
552
|
-
interface StaticValuesFilterDefinition<Q extends ObjectTypeDefinition, C extends StaticValuesComponentType = StaticValuesComponentType> extends FilterDefinitionControls {
|
|
553
|
-
type: "STATIC_VALUES";
|
|
554
|
-
/**
|
|
555
|
-
* Key used for state management and auto WHERE clause generation.
|
|
556
|
-
* When `toWhereClause` is not provided, this is used as the property key
|
|
557
|
-
* in the generated WHERE clause.
|
|
558
|
-
*/
|
|
559
|
-
key: string;
|
|
560
|
-
/**
|
|
561
|
-
* Display label for the filter
|
|
562
|
-
*/
|
|
563
|
-
label?: string;
|
|
564
|
-
/**
|
|
565
|
-
* The filter component type to render
|
|
566
|
-
*/
|
|
567
|
-
filterComponent: C;
|
|
568
|
-
/**
|
|
569
|
-
* Seeds the filter's state on mount, FilterList owns the state from then on
|
|
570
|
-
*
|
|
571
|
-
* @default undefined (filter starts empty)
|
|
572
|
-
*/
|
|
573
|
-
defaultFilterState?: FilterStateByComponentType[C];
|
|
574
|
-
/**
|
|
575
|
-
* @deprecated Rename to `defaultFilterState`.
|
|
576
|
-
*/
|
|
577
|
-
filterState?: FilterStateByComponentType[C];
|
|
578
|
-
/**
|
|
579
|
-
* The static list of values to display in the filter component.
|
|
580
|
-
* These are rendered directly without OSDK aggregation.
|
|
581
|
-
*/
|
|
582
|
-
values: string[];
|
|
583
|
-
/**
|
|
584
|
-
* Custom display function for filter values.
|
|
585
|
-
* Replaces the default string display in dropdown items, chips, and listogram rows.
|
|
586
|
-
* When the function returns a string, that string is also used for search matching
|
|
587
|
-
* within filter dropdowns. When it returns a non-string `ReactNode`, search falls
|
|
588
|
-
* back to the raw value.
|
|
589
|
-
*/
|
|
590
|
-
renderValue?: (value: string) => ReactNode;
|
|
591
|
-
/**
|
|
592
|
-
* Show aggregation counts next to filter option values.
|
|
593
|
-
* Applies to LISTOGRAM, SINGLE_SELECT, and MULTI_SELECT components.
|
|
594
|
-
* @default true for LISTOGRAM and MULTI_SELECT, false for SINGLE_SELECT
|
|
595
|
-
*/
|
|
596
|
-
showCount?: boolean;
|
|
597
|
-
/**
|
|
598
|
-
* Maps filter values to colors for visual differentiation.
|
|
599
|
-
* Used by LISTOGRAM (per-row bar colors).
|
|
600
|
-
*/
|
|
601
|
-
colorMap?: Record<string, string>;
|
|
602
|
-
/**
|
|
603
|
-
* Configuration for LISTOGRAM display mode.
|
|
604
|
-
* Only applies when filterComponent is "LISTOGRAM".
|
|
605
|
-
*/
|
|
606
|
-
listogramConfig?: {
|
|
607
|
-
displayMode?: "full" | "count" | "minimal";
|
|
608
|
-
/**
|
|
609
|
-
* Number of items shown before "View all" link appears
|
|
610
|
-
* @default 5
|
|
611
|
-
*/
|
|
612
|
-
maxVisibleItems?: number;
|
|
613
|
-
};
|
|
614
|
-
/**
|
|
615
|
-
* Optional custom WHERE clause generator.
|
|
616
|
-
* When provided, this is used instead of auto-generating a WHERE clause
|
|
617
|
-
* from the `key` and filter state.
|
|
618
|
-
*/
|
|
619
|
-
toWhereClause?: (state: FilterState) => WhereClause<Q> | undefined;
|
|
620
|
-
}
|
|
621
|
-
|
|
622
|
-
/**
|
|
623
|
-
* Distributes LinkedPropertyFilterDefinition over each link name individually,
|
|
624
|
-
* so that LinkedQ/LinkedK/LinkedC defaults resolve correctly per link.
|
|
625
|
-
*/
|
|
626
|
-
type DistributeLinkedProperty<Q extends ObjectTypeDefinition, L extends LinkNames<Q>> = L extends LinkNames<Q> ? LinkedPropertyFilterDefinition<Q, L> : never;
|
|
627
|
-
/**
|
|
628
|
-
* Union type of all filter definition types
|
|
629
|
-
*/
|
|
630
|
-
type FilterDefinitionUnion<Q extends ObjectTypeDefinition> = PropertyFilterDefinition<Q> | HasLinkFilterDefinition<Q> | DistributeLinkedProperty<Q, LinkNames<Q>> | KeywordSearchFilterDefinition<Q> | CustomFilterDefinition<Q> | StaticValuesFilterDefinition<Q>;
|
|
631
|
-
/**
|
|
632
|
-
* The filter state after a change, in one payload.
|
|
633
|
-
*/
|
|
634
|
-
interface FilterChangeSnapshot<Q extends ObjectTypeDefinition> {
|
|
635
|
-
/**
|
|
636
|
-
* The combined clause for all active filters.
|
|
637
|
-
*
|
|
638
|
-
* `HAS_LINK` and `LINKED_PROPERTY` filters are not represented in the clause —
|
|
639
|
-
* read `filteredObjectSet` for those.
|
|
640
|
-
*/
|
|
641
|
-
filterClause: WhereClause<Q>;
|
|
642
|
-
/**
|
|
643
|
-
* The `objectSet` prop filtered by all active filters, including `HAS_LINK`
|
|
644
|
-
* and `LINKED_PROPERTY`, or `undefined` when no `objectSet` was supplied.
|
|
645
|
-
*/
|
|
646
|
-
filteredObjectSet: ObjectSet<Q> | undefined;
|
|
647
|
-
}
|
|
648
|
-
/**
|
|
649
|
-
* What the user did to the filter state.
|
|
650
|
-
*/
|
|
651
|
-
type FilterChangeReason =
|
|
652
|
-
/** A filter's state was set — selected values changed, include/exclude mode toggled, or filter cleared. */
|
|
653
|
-
{
|
|
654
|
-
type: "FILTER_STATE_CHANGED";
|
|
655
|
-
filterKey: string;
|
|
656
|
-
newState: FilterState;
|
|
657
|
-
}
|
|
658
|
-
/** A filter was removed from the list. */
|
|
659
|
-
| {
|
|
660
|
-
type: "FILTER_REMOVED";
|
|
661
|
-
filterKey: string;
|
|
662
|
-
}
|
|
663
|
-
/** Every filter was restored to the state it mounted with. */
|
|
664
|
-
| {
|
|
665
|
-
type: "FILTER_LIST_RESET";
|
|
666
|
-
}
|
|
667
|
-
/** The list mounted, reporting the state it started with. */
|
|
668
|
-
| {
|
|
669
|
-
type: "FILTER_LIST_INITIALIZED";
|
|
670
|
-
};
|
|
671
|
-
/**
|
|
672
|
-
* The payload delivered to `onFilterListChanged`.
|
|
673
|
-
*/
|
|
674
|
-
interface FilterChangeEvent<Q extends ObjectTypeDefinition> {
|
|
675
|
-
/** The filter state the change produced. */
|
|
676
|
-
snapshot: FilterChangeSnapshot<Q>;
|
|
677
|
-
/** What changed. */
|
|
678
|
-
reason: FilterChangeReason;
|
|
679
|
-
}
|
|
680
|
-
interface FilterListProps<Q extends ObjectTypeDefinition> {
|
|
681
|
-
/**
|
|
682
|
-
* The object type definition for the objects being filtered.
|
|
683
|
-
* Used for metadata resolution (property types, display names).
|
|
684
|
-
*/
|
|
685
|
-
objectType: Q;
|
|
686
|
-
/**
|
|
687
|
-
* Optional object set to scope aggregation queries. When omitted,
|
|
688
|
-
* aggregations run against the full object type.
|
|
689
|
-
*
|
|
690
|
-
* Required for `HAS_LINK` and `LINKED_PROPERTY` filters to work.
|
|
691
|
-
*/
|
|
692
|
-
objectSet?: ObjectSet<Q>;
|
|
693
|
-
/**
|
|
694
|
-
* The definition for all supported filter items in the list
|
|
695
|
-
* If not supplied, all filterable properties will be available
|
|
696
|
-
*/
|
|
697
|
-
filterDefinitions?: Array<FilterDefinitionUnion<Q>>;
|
|
698
|
-
/**
|
|
699
|
-
* Seeds filter states from external storage, keyed by `getFilterKey`.
|
|
700
|
-
* Applied over the per-definition `defaultFilterState` seeds on mount, and
|
|
701
|
-
* FilterList owns the states from then on. Also the state the reset button
|
|
702
|
-
* restores to.
|
|
703
|
-
* Use `onFilterStateChanged` to persist changes back out.
|
|
704
|
-
*
|
|
705
|
-
* @default undefined (filters seed from their definitions alone)
|
|
706
|
-
*/
|
|
707
|
-
defaultFilterStates?: Map<string, FilterState>;
|
|
708
|
-
/**
|
|
709
|
-
* @deprecated Rename to `defaultFilterStates`.
|
|
710
|
-
*/
|
|
711
|
-
initialFilterStates?: Map<string, FilterState>;
|
|
712
|
-
/**
|
|
713
|
-
* Called on filter init and when filter state changes.
|
|
714
|
-
*
|
|
715
|
-
* @param event `snapshot` carries the filter state the change produced;
|
|
716
|
-
* `reason` carries what changed.
|
|
717
|
-
*/
|
|
718
|
-
onFilterListChanged?: (event: FilterChangeEvent<Q>) => void;
|
|
719
|
-
/**
|
|
720
|
-
* Called whenever the filter clause changes. FilterList owns filter state;
|
|
721
|
-
* this is how you read it out, e.g. to feed an `ObjectTable`'s `filter`.
|
|
722
|
-
*
|
|
723
|
-
* `HAS_LINK` and `LINKED_PROPERTY` filters are not represented in the clause
|
|
724
|
-
* — use `onEffectiveObjectSet` for those.
|
|
725
|
-
*
|
|
726
|
-
* @param newClause The updated filter clause
|
|
727
|
-
* @deprecated Use `onFilterListChanged`, whose `snapshot` reports the clause
|
|
728
|
-
* alongside the filtered `ObjectSet`.
|
|
729
|
-
*/
|
|
730
|
-
onFilterClauseChanged?: (newClause: WhereClause<Q>) => void;
|
|
731
|
-
/**
|
|
732
|
-
* Called when filter state changes
|
|
733
|
-
*
|
|
734
|
-
* @param definition The filter definition whose state changed
|
|
735
|
-
* @param newState The updated filter state
|
|
736
|
-
* @deprecated Use `onFilterListChanged`, which reports every set / clear / reset
|
|
737
|
-
* with an `event` describing what changed.
|
|
738
|
-
*/
|
|
739
|
-
onFilterStateChanged?: (definition: FilterDefinitionUnion<Q>, newState: FilterState) => void;
|
|
740
|
-
/**
|
|
741
|
-
* Called with the filtered `ObjectSet` whenever filters change. Requires
|
|
742
|
-
* `objectSet` to be set. `HAS_LINK` and `LINKED_PROPERTY` filters apply only
|
|
743
|
-
* here, never through the filter clause.
|
|
744
|
-
*
|
|
745
|
-
* @deprecated Use `onFilterListChanged`, whose `snapshot.filteredObjectSet`
|
|
746
|
-
* reports the same filtered set alongside the clause.
|
|
747
|
-
*/
|
|
748
|
-
onEffectiveObjectSet?: (objectSet: ObjectSet<Q>) => void;
|
|
749
|
-
/**
|
|
750
|
-
* Controls how filter visibility (add/remove) is managed.
|
|
751
|
-
*
|
|
752
|
-
* - `"uncontrolled"` (default): FilterList manages visibility internally.
|
|
753
|
-
* An "Add filter" popover is rendered for filters with `isVisible: false`,
|
|
754
|
-
* and each visible filter shows a remove button.
|
|
755
|
-
* - `"controlled"`: The consumer manages which filters are visible via
|
|
756
|
-
* `filterDefinitions`. Filters with `isVisible: false` are excluded from
|
|
757
|
-
* the rendered list.
|
|
758
|
-
*
|
|
759
|
-
* @default "uncontrolled"
|
|
760
|
-
* @deprecated Going away; visibility will always be managed internally.
|
|
761
|
-
* Seed it with `isVisible` on each `filterDefinitions` entry and observe
|
|
762
|
-
* changes with `onFilterVisibilityChange`.
|
|
763
|
-
*/
|
|
764
|
-
addFilterMode?: "controlled" | "uncontrolled";
|
|
765
|
-
/**
|
|
766
|
-
* Custom render function for the "Add filter" button. Customizes the trigger
|
|
767
|
-
* element for the built-in add-filter popover; the popover behavior is
|
|
768
|
-
* handled automatically.
|
|
769
|
-
*/
|
|
770
|
-
renderAddFilterButton?: () => React__default.ReactNode;
|
|
771
|
-
/**
|
|
772
|
-
* Called after a filter is shown from the built-in "Add filter" popover.
|
|
773
|
-
*
|
|
774
|
-
* @param filterKey The key of the added filter
|
|
775
|
-
* @param newDefinitions Deprecated. The `filterDefinitions` you passed in,
|
|
776
|
-
* unchanged — not the post-add state. Use `onFilterVisibilityChange`.
|
|
777
|
-
*/
|
|
778
|
-
onFilterAdded?: (filterKey: string,
|
|
779
|
-
/** @deprecated Use `onFilterVisibilityChange`. */
|
|
780
|
-
newDefinitions: Array<FilterDefinitionUnion<Q>>) => void;
|
|
781
|
-
/**
|
|
782
|
-
* Called after a filter's remove button is clicked, once the filter is
|
|
783
|
-
* hidden and its state cleared.
|
|
784
|
-
*
|
|
785
|
-
* @param filterKey The key of the removed filter
|
|
786
|
-
*/
|
|
787
|
-
onFilterRemoved?: (filterKey: string) => void;
|
|
788
|
-
/**
|
|
789
|
-
* Enable drag-and-drop reordering of filters. When `true`, drag handles are
|
|
790
|
-
* rendered and filters can be reordered.
|
|
791
|
-
*
|
|
792
|
-
* Reorder state is managed internally; persist `onFilterVisibilityChange` to
|
|
793
|
-
* track order across remounts.
|
|
794
|
-
*
|
|
795
|
-
* @default false
|
|
796
|
-
*/
|
|
797
|
-
enableSorting?: boolean;
|
|
798
|
-
/**
|
|
799
|
-
* Called when filter visibility or ordering changes, i.e. when filters are
|
|
800
|
-
* reordered, added or removed via the built-in show/remove controls, or
|
|
801
|
-
* reset.
|
|
802
|
-
*
|
|
803
|
-
* Visible filters come first, in display order, followed by the hidden ones.
|
|
804
|
-
* Persist this array and feed it back as the order and `isVisible` of
|
|
805
|
-
* `filterDefinitions` to make reordering survive a remount.
|
|
806
|
-
*
|
|
807
|
-
* @param newStates The filters in current display order with their visibility state
|
|
808
|
-
*/
|
|
809
|
-
onFilterVisibilityChange?: (newStates: Array<{
|
|
810
|
-
filterKey: string;
|
|
811
|
-
isVisible: boolean;
|
|
812
|
-
}>) => void;
|
|
813
|
-
/**
|
|
814
|
-
* Whether the collapse/expand control is available. When `false` the panel is
|
|
815
|
-
* always expanded, no collapse control is rendered, and `collapsed` /
|
|
816
|
-
* `defaultCollapsed` are ignored.
|
|
817
|
-
* @default true
|
|
818
|
-
*/
|
|
819
|
-
enableCollapse?: boolean;
|
|
820
|
-
/**
|
|
821
|
-
* Controlled mode. When supplied, this prop is the source of truth for
|
|
822
|
-
* whether the panel is collapsed and the component keeps no internal state;
|
|
823
|
-
* re-render with a new value in response to `onCollapsedChange`.
|
|
824
|
-
*
|
|
825
|
-
* If both `collapsed` and `defaultCollapsed` are provided, `collapsed` takes
|
|
826
|
-
* precedence. Ignored when `enableCollapse` is `false`.
|
|
827
|
-
*/
|
|
828
|
-
collapsed?: boolean;
|
|
829
|
-
/**
|
|
830
|
-
* Uncontrolled mode. Seeds the panel's internal collapsed state; the
|
|
831
|
-
* component continues to own the state after mount, so later changes to this
|
|
832
|
-
* prop are ignored.
|
|
833
|
-
*
|
|
834
|
-
* If both `collapsed` and `defaultCollapsed` are provided, `collapsed` takes
|
|
835
|
-
* precedence. Ignored when `enableCollapse` is `false`.
|
|
836
|
-
* @default false
|
|
837
|
-
*/
|
|
838
|
-
defaultCollapsed?: boolean;
|
|
839
|
-
/**
|
|
840
|
-
* Called whenever the collapsed state changes.
|
|
841
|
-
*
|
|
842
|
-
* @param collapsed The new collapsed state
|
|
843
|
-
*/
|
|
844
|
-
onCollapsedChange?: (collapsed: boolean) => void;
|
|
845
|
-
/**
|
|
846
|
-
* Show reset filters button in header
|
|
847
|
-
*/
|
|
848
|
-
showResetButton?: boolean;
|
|
849
|
-
/**
|
|
850
|
-
* Called when reset button is clicked
|
|
851
|
-
*/
|
|
852
|
-
onReset?: () => void;
|
|
853
|
-
/**
|
|
854
|
-
* Optional title to display in the filter list header
|
|
855
|
-
*/
|
|
856
|
-
title?: ReactNode;
|
|
857
|
-
/**
|
|
858
|
-
* Optional icon to display next to the title
|
|
859
|
-
*/
|
|
860
|
-
titleIcon?: React__default.ReactNode;
|
|
861
|
-
/**
|
|
862
|
-
* Show count of active filters in header
|
|
863
|
-
*/
|
|
864
|
-
showActiveFilterCount?: boolean;
|
|
865
|
-
/**
|
|
866
|
-
* When `true`, facets render greyed-out count=0 rows for values present in
|
|
867
|
-
* the unfiltered data but excluded by other active filters.
|
|
868
|
-
* @default false
|
|
869
|
-
*/
|
|
870
|
-
showFilteredOutValues?: boolean;
|
|
871
|
-
/**
|
|
872
|
-
* Additional CSS class name
|
|
873
|
-
*/
|
|
874
|
-
className?: string;
|
|
875
|
-
}
|
|
876
|
-
|
|
877
|
-
declare function FilterList$1<Q extends ObjectTypeDefinition>(props: FilterListProps<Q>): React__default.ReactElement;
|
|
878
|
-
|
|
879
|
-
declare function serializeFilterStates(states: Map<string, FilterState>): string;
|
|
880
|
-
declare function deserializeFilterStates(json: string): Map<string, FilterState>;
|
|
881
|
-
|
|
882
|
-
interface FilterPopoverProps {
|
|
883
|
-
label: string;
|
|
884
|
-
/** Short summary of the current value; falls back to `placeholder` when empty. */
|
|
885
|
-
summary: string;
|
|
886
|
-
isActive: boolean;
|
|
887
|
-
onRemove?: () => void;
|
|
888
|
-
/** Popup contents — only mounted while the popover is open. */
|
|
889
|
-
children: React__default.ReactNode;
|
|
890
|
-
className?: string;
|
|
891
|
-
placeholder?: string;
|
|
892
|
-
/**
|
|
893
|
-
* Where the label sits relative to the trigger.
|
|
894
|
-
* - `"inline"` (default): label and trigger sit on one row.
|
|
895
|
-
* - `"top"`: label stacks above the trigger.
|
|
896
|
-
*/
|
|
897
|
-
labelPlacement?: "inline" | "top";
|
|
898
|
-
}
|
|
899
|
-
declare const FilterPopover: React__default.NamedExoticComponent<FilterPopoverProps>;
|
|
900
|
-
|
|
901
|
-
/**
|
|
902
|
-
* Layout for the value list:
|
|
903
|
-
* - `"dropdown"` (default): chips inline + portaled Combobox popup. Use when
|
|
904
|
-
* the input drives its own surface (e.g. standalone in a row).
|
|
905
|
-
* - `"inline"`: search input + always-visible value list rendered in flow.
|
|
906
|
-
* Use when wrapping the input in your own popover so the values are
|
|
907
|
-
* immediately visible without an extra inner trigger.
|
|
908
|
-
*/
|
|
909
|
-
type MultiSelectInputLayout = "dropdown" | "inline";
|
|
910
|
-
|
|
911
|
-
interface FilterInputProps<Q extends ObjectTypeDefinition> {
|
|
912
|
-
objectType: Q;
|
|
913
|
-
objectSet?: ObjectSet<Q>;
|
|
914
|
-
definition: FilterDefinitionUnion<Q>;
|
|
915
|
-
filterState: FilterState | undefined;
|
|
916
|
-
onFilterStateChanged: (state: FilterState) => void;
|
|
917
|
-
/** Per-filter excluding-self where clause (direct filters only). */
|
|
918
|
-
whereClause: WhereClause<Q>;
|
|
919
|
-
/** Per-filter excluding-self linked-filter records. */
|
|
920
|
-
linkedFilters?: ReadonlyArray<LinkedFilter<Q>>;
|
|
921
|
-
showFilteredOutValues?: boolean;
|
|
922
|
-
searchQuery?: string;
|
|
923
|
-
excludeRowOpen?: boolean;
|
|
924
|
-
/**
|
|
925
|
-
* Layout for `MULTI_SELECT` filter components. Pass `"inline"` when this
|
|
926
|
-
* input renders inside a popover (or any container where chips would feel
|
|
927
|
-
* redundant) so the value list is always visible. Defaults to `"dropdown"`,
|
|
928
|
-
* which renders chips + a portaled Combobox popup. Ignored by other
|
|
929
|
-
* filter components.
|
|
930
|
-
*/
|
|
931
|
-
layout?: MultiSelectInputLayout;
|
|
932
|
-
}
|
|
933
|
-
declare function FilterInputInner<Q extends ObjectTypeDefinition>({ objectType, objectSet, definition, filterState, onFilterStateChanged, whereClause, linkedFilters, showFilteredOutValues, searchQuery, excludeRowOpen, layout, }: FilterInputProps<Q>): React__default.ReactElement;
|
|
934
|
-
declare const FilterInput: typeof FilterInputInner;
|
|
935
|
-
|
|
936
|
-
interface UseFilterListStateResult<Q extends ObjectTypeDefinition> {
|
|
937
|
-
filterStates: Map<string, FilterState>;
|
|
938
|
-
setFilterState: (filterKey: string, state: FilterState) => void;
|
|
939
|
-
clearFilterState: (filterKey: string) => void;
|
|
940
|
-
/** Direct (non-link-traversing) filters combined into a `WhereClause<Q>`. */
|
|
941
|
-
whereClause: WhereClause<Q>;
|
|
942
|
-
/** Active HAS_LINK and LINKED_PROPERTY records */
|
|
943
|
-
linkedFilters: ReadonlyArray<LinkedFilter<Q>>;
|
|
944
|
-
/** Per-filter excluding-self where clauses keyed by `getFilterKey`. */
|
|
945
|
-
perFilterWhereClauses: Map<string, WhereClause<Q>>;
|
|
946
|
-
/** Per-filter excluding-self linked filters keyed by `getFilterKey`. */
|
|
947
|
-
perFilterLinkedFilters: Map<string, ReadonlyArray<LinkedFilter<Q>>>;
|
|
948
|
-
activeFilterCount: number;
|
|
949
|
-
hasChangesFromInitial: boolean;
|
|
950
|
-
reset: () => void;
|
|
951
|
-
}
|
|
952
|
-
declare function useFilterListState<Q extends ObjectTypeDefinition>(props: FilterListProps<Q>): UseFilterListStateResult<Q>;
|
|
953
|
-
|
|
954
|
-
/**
|
|
955
|
-
* Sentinel identity for the "No value" bucket (null/undefined property values).
|
|
956
|
-
*
|
|
957
|
-
* `selectedValues` is a `string[]`, so the null/undefined state needs a string
|
|
958
|
-
* stand-in that cannot collide with a real value. Put `NO_VALUE` in `selectedValues`
|
|
959
|
-
* to filter for objects whose property `$isNull`.
|
|
960
|
-
*/
|
|
961
|
-
declare const NO_VALUE = "__NO_VALUE__";
|
|
962
|
-
/** Check if a filter state has an active (non-empty) value. */
|
|
963
|
-
declare function filterHasActiveState(state: FilterState | undefined): boolean;
|
|
964
|
-
|
|
965
|
-
declare function getFilterKey<Q extends ObjectTypeDefinition>(definition: FilterDefinitionUnion<Q>): string;
|
|
966
|
-
|
|
967
|
-
declare function getFilterLabel<Q extends ObjectTypeDefinition>(definition: FilterDefinitionUnion<Q>): string;
|
|
968
|
-
|
|
969
|
-
/** Short summary of a filter's current value for rendering inside a `FilterPopover` trigger. */
|
|
970
|
-
declare function summarizeFilterValue<Q extends ObjectTypeDefinition>(definition: FilterDefinitionUnion<Q>, state: FilterState | undefined): string;
|
|
971
|
-
|
|
972
|
-
declare function narrowObjectSet<Q extends ObjectTypeDefinition>(objectSet: ObjectSet<Q>, whereClause: WhereClause<Q>, linkedFilters: ReadonlyArray<LinkedFilter<Q>>): ObjectSet<Q>;
|
|
973
|
-
|
|
1
|
+
import * as Api from '@osdk/api';
|
|
2
|
+
import { B as BaseFilterList$1, F as FilterDefinitionControls$1, a as BaseFilterListProps$1, b as FilterChangeEvent$1, c as FilterChangeReason$1, d as FilterChangeSnapshot$1, e as FilterComponentType$1, f as FilterDefinitionUnion$1, g as FilterInput$1, h as FilterInputProps$1, i as FilterList$1, j as FilterListProps$1, k as FilterPopover$1, l as FilterPopoverProps$1, m as FilterState$1, L as LinkedFilter$1, N as NO_VALUE$1, V as ValidComponentsForPropertyType, P as PropertyTypeFromKey, n as PropertyFilterDefinition$1, R as RenderFilterInput$1, U as UseFilterListStateResult$1, o as deserializeFilterStates$1, p as filterHasActiveState$1, q as getFilterKey$1, r as getFilterLabel$1, s as narrowObjectSet$1, t as serializeFilterStates$1, u as summarizeFilterValue$1, v as useFilterListState$1 } from '../../filter-list-CraygbR8.cjs';
|
|
3
|
+
import 'react';
|
|
4
|
+
|
|
5
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
6
|
+
declare const BaseFilterList: typeof BaseFilterList$1;
|
|
7
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
8
|
+
type BaseFilterListProps<D extends FilterDefinitionControls$1> = BaseFilterListProps$1<D>;
|
|
9
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
10
|
+
type RenderFilterInput<D> = RenderFilterInput$1<D>;
|
|
11
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
974
12
|
declare const FilterList: typeof FilterList$1;
|
|
13
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
14
|
+
type FilterChangeEvent<Q extends Api.ObjectTypeDefinition> = FilterChangeEvent$1<Q>;
|
|
15
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
16
|
+
type FilterChangeReason = FilterChangeReason$1;
|
|
17
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
18
|
+
type FilterChangeSnapshot<Q extends Api.ObjectTypeDefinition> = FilterChangeSnapshot$1<Q>;
|
|
19
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
20
|
+
type FilterDefinitionUnion<Q extends Api.ObjectTypeDefinition> = FilterDefinitionUnion$1<Q>;
|
|
21
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
22
|
+
type FilterListProps<Q extends Api.ObjectTypeDefinition> = FilterListProps$1<Q>;
|
|
23
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
24
|
+
type FilterComponentType = FilterComponentType$1;
|
|
25
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
26
|
+
type FilterDefinitionControls = FilterDefinitionControls$1;
|
|
27
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
28
|
+
type FilterState = FilterState$1;
|
|
29
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
30
|
+
type PropertyFilterDefinition<Q extends Api.ObjectTypeDefinition, K extends Api.PropertyKeys<Q> = Api.PropertyKeys<Q>, C extends ValidComponentsForPropertyType<PropertyTypeFromKey<Q, K>> = ValidComponentsForPropertyType<PropertyTypeFromKey<Q, K>>> = PropertyFilterDefinition$1<Q, K, C>;
|
|
31
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
32
|
+
declare const deserializeFilterStates: typeof deserializeFilterStates$1;
|
|
33
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
34
|
+
declare const serializeFilterStates: typeof serializeFilterStates$1;
|
|
35
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
36
|
+
declare const FilterPopover: typeof FilterPopover$1;
|
|
37
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
38
|
+
type FilterPopoverProps = FilterPopoverProps$1;
|
|
39
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
40
|
+
declare const FilterInput: typeof FilterInput$1;
|
|
41
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
42
|
+
type FilterInputProps<Q extends Api.ObjectTypeDefinition> = FilterInputProps$1<Q>;
|
|
43
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
44
|
+
declare const useFilterListState: typeof useFilterListState$1;
|
|
45
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
46
|
+
type UseFilterListStateResult<Q extends Api.ObjectTypeDefinition> = UseFilterListStateResult$1<Q>;
|
|
47
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
48
|
+
declare const filterHasActiveState: typeof filterHasActiveState$1;
|
|
49
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
50
|
+
declare const NO_VALUE: typeof NO_VALUE$1;
|
|
51
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
52
|
+
declare const getFilterKey: typeof getFilterKey$1;
|
|
53
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
54
|
+
declare const getFilterLabel: typeof getFilterLabel$1;
|
|
55
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
56
|
+
declare const summarizeFilterValue: typeof summarizeFilterValue$1;
|
|
57
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
58
|
+
type LinkedFilter<Q extends Api.ObjectTypeDefinition> = LinkedFilter$1<Q>;
|
|
59
|
+
/** @deprecated Import from `@osdk/react-components/filter-list` instead. */
|
|
60
|
+
declare const narrowObjectSet: typeof narrowObjectSet$1;
|
|
975
61
|
|
|
976
62
|
export { BaseFilterList, type BaseFilterListProps, type FilterChangeEvent, type FilterChangeReason, type FilterChangeSnapshot, type FilterComponentType, type FilterDefinitionControls, type FilterDefinitionUnion, FilterInput, type FilterInputProps, FilterList, type FilterListProps, FilterPopover, type FilterPopoverProps, type FilterState, type LinkedFilter, NO_VALUE, type PropertyFilterDefinition, type RenderFilterInput, type UseFilterListStateResult, deserializeFilterStates, filterHasActiveState, getFilterKey, getFilterLabel, narrowObjectSet, serializeFilterStates, summarizeFilterValue, useFilterListState };
|