@osdk/react-components 0.2.0-beta.19 → 0.2.0-beta.20
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/CHANGELOG.md +18 -0
- package/build/browser/action-form/ActionForm.js +5 -1
- package/build/browser/action-form/ActionForm.js.map +1 -1
- package/build/browser/action-form/BaseForm.js +4 -8
- package/build/browser/action-form/BaseForm.js.map +1 -1
- package/build/browser/action-form/FormFieldApi.js.map +1 -1
- package/build/browser/action-form/fields/DropdownField.js +104 -0
- package/build/browser/action-form/fields/DropdownField.js.map +1 -0
- package/build/browser/action-form/fields/FormFieldRenderer.js +23 -12
- package/build/browser/action-form/fields/FormFieldRenderer.js.map +1 -1
- package/build/browser/action-form/fields/TextInputField.js +8 -9
- package/build/browser/action-form/fields/TextInputField.js.map +1 -1
- package/build/browser/base-components/combobox/Combobox.js +25 -3
- package/build/browser/base-components/combobox/Combobox.js.map +1 -1
- package/build/browser/base-components/combobox/Combobox.module.css +226 -46
- package/build/browser/base-components/combobox/Combobox.module.css.js +1 -0
- package/build/browser/base-components/select/Select.js +7 -1
- package/build/browser/base-components/select/Select.js.map +1 -1
- package/build/browser/base-components/select/Select.module.css +132 -35
- package/build/browser/base-components/select/Select.module.css.js +2 -0
- package/build/browser/base-components/skeleton/SkeletonBar.js +36 -0
- package/build/browser/base-components/skeleton/SkeletonBar.js.map +1 -0
- package/build/browser/base-components/skeleton/SkeletonBar.module.css +39 -0
- package/build/browser/base-components/skeleton/SkeletonBar.module.css.js +7 -0
- package/build/browser/filter-list/FilterList.js +42 -5
- package/build/browser/filter-list/FilterList.js.map +1 -1
- package/build/browser/filter-list/FilterListApi.js.map +1 -1
- package/build/browser/filter-list/base/AddFilterPopover.js +45 -0
- package/build/browser/filter-list/base/AddFilterPopover.js.map +1 -0
- package/build/browser/filter-list/base/AddFilterPopover.module.css +83 -0
- package/build/browser/filter-list/base/AddFilterPopover.module.css.js +9 -0
- package/build/browser/filter-list/base/inputs/CheckboxListInput.js +16 -27
- package/build/browser/filter-list/base/inputs/CheckboxListInput.js.map +1 -1
- package/build/browser/filter-list/base/inputs/CheckboxListInput.module.css +15 -5
- package/build/browser/filter-list/base/inputs/CheckboxListSkeleton.js +46 -0
- package/build/browser/filter-list/base/inputs/CheckboxListSkeleton.js.map +1 -0
- package/build/browser/filter-list/base/inputs/CheckboxListSkeleton.module.css +32 -0
- package/build/browser/filter-list/base/inputs/CheckboxListSkeleton.module.css.js +8 -0
- package/build/browser/filter-list/base/inputs/ListogramInput.js +21 -12
- package/build/browser/filter-list/base/inputs/ListogramInput.js.map +1 -1
- package/build/browser/filter-list/base/inputs/ListogramInput.module.css +13 -1
- package/build/browser/filter-list/base/inputs/ListogramSkeleton.js +45 -0
- package/build/browser/filter-list/base/inputs/ListogramSkeleton.js.map +1 -0
- package/build/browser/filter-list/base/inputs/ListogramSkeleton.module.css +32 -0
- package/build/browser/filter-list/base/inputs/ListogramSkeleton.module.css.js +8 -0
- package/build/browser/filter-list/base/inputs/MultiSelectInput.js +1 -1
- package/build/browser/filter-list/base/inputs/MultiSelectInput.js.map +1 -1
- package/build/browser/filter-list/base/inputs/RangeInput.js +13 -13
- package/build/browser/filter-list/base/inputs/RangeInput.js.map +1 -1
- package/build/browser/filter-list/base/inputs/RangeInput.module.css +23 -0
- package/build/browser/filter-list/base/inputs/TextTagsInput.js +1 -1
- package/build/browser/filter-list/base/inputs/TextTagsInput.js.map +1 -1
- package/build/browser/filter-list/base/inputs/useStaleData.js +29 -0
- package/build/browser/filter-list/base/inputs/useStaleData.js.map +1 -0
- package/build/browser/filter-list/hooks/useFilterVisibility.js +68 -0
- package/build/browser/filter-list/hooks/useFilterVisibility.js.map +1 -0
- package/build/browser/object-table/DefaultCellRenderer.js +13 -3
- package/build/browser/object-table/DefaultCellRenderer.js.map +1 -1
- package/build/browser/object-table/EditableCell.js +7 -6
- package/build/browser/object-table/EditableCell.js.map +1 -1
- package/build/browser/object-table/LoadingCell.js +6 -3
- package/build/browser/object-table/LoadingCell.js.map +1 -1
- package/build/browser/object-table/LoadingRow.js +2 -1
- package/build/browser/object-table/LoadingRow.js.map +1 -1
- package/build/browser/object-table/ObjectTableApi.js.map +1 -1
- package/build/browser/object-table/Table.js.map +1 -1
- package/build/browser/object-table/TableCell.module.css +1 -0
- package/build/browser/object-table/components/AsyncValueCell.js +35 -0
- package/build/browser/object-table/components/AsyncValueCell.js.map +1 -0
- package/build/browser/object-table/hooks/useColumnDefs.js +3 -1
- package/build/browser/object-table/hooks/useColumnDefs.js.map +1 -1
- package/build/browser/object-table/hooks/useFunctionColumnsData.js +270 -0
- package/build/browser/object-table/hooks/useFunctionColumnsData.js.map +1 -0
- package/build/browser/object-table/hooks/useObjectTableData.js +34 -13
- package/build/browser/object-table/hooks/useObjectTableData.js.map +1 -1
- package/build/browser/object-table/utils/AsyncCellData.js +30 -0
- package/build/browser/object-table/utils/AsyncCellData.js.map +1 -0
- package/build/browser/object-table/utils/constants.js +1 -0
- package/build/browser/object-table/utils/constants.js.map +1 -1
- package/build/browser/pdf-viewer/PdfRenderer.js +88 -0
- package/build/browser/pdf-viewer/PdfRenderer.js.map +1 -0
- package/build/browser/pdf-viewer/PdfViewer.js +197 -0
- package/build/browser/pdf-viewer/PdfViewer.js.map +1 -0
- package/build/browser/pdf-viewer/PdfViewer.module.css +95 -0
- package/build/browser/pdf-viewer/PdfViewer.module.css.js +16 -0
- package/build/browser/pdf-viewer/PdfViewerAnnotationLayer.js +74 -0
- package/build/browser/pdf-viewer/PdfViewerAnnotationLayer.js.map +1 -0
- package/build/browser/pdf-viewer/PdfViewerAnnotationLayer.module.css +65 -0
- package/build/browser/pdf-viewer/PdfViewerAnnotationLayer.module.css.js +11 -0
- package/build/browser/pdf-viewer/PdfViewerSearchBar.js +84 -0
- package/build/browser/pdf-viewer/PdfViewerSearchBar.js.map +1 -0
- package/build/browser/pdf-viewer/PdfViewerSearchBar.module.css +65 -0
- package/build/browser/pdf-viewer/PdfViewerSearchBar.module.css.js +10 -0
- package/build/browser/pdf-viewer/PdfViewerSidebar.js +74 -0
- package/build/browser/pdf-viewer/PdfViewerSidebar.js.map +1 -0
- package/build/browser/pdf-viewer/PdfViewerSidebar.module.css +46 -0
- package/build/browser/pdf-viewer/PdfViewerSidebar.module.css.js +11 -0
- package/build/browser/pdf-viewer/PdfViewerThumbnail.js +100 -0
- package/build/browser/pdf-viewer/PdfViewerThumbnail.js.map +1 -0
- package/build/browser/pdf-viewer/PdfViewerThumbnail.module.css +26 -0
- package/build/browser/pdf-viewer/PdfViewerThumbnail.module.css.js +8 -0
- package/build/browser/pdf-viewer/PdfViewerToolbar.js +167 -0
- package/build/browser/pdf-viewer/PdfViewerToolbar.js.map +1 -0
- package/build/browser/pdf-viewer/PdfViewerToolbar.module.css +86 -0
- package/build/browser/pdf-viewer/PdfViewerToolbar.module.css.js +12 -0
- package/build/browser/pdf-viewer/constants.js +43 -0
- package/build/browser/pdf-viewer/constants.js.map +1 -0
- package/build/browser/pdf-viewer/hooks/usePdfAnnotationPortals.js +54 -0
- package/build/browser/pdf-viewer/hooks/usePdfAnnotationPortals.js.map +1 -0
- package/build/browser/pdf-viewer/hooks/usePdfDocument.js +67 -0
- package/build/browser/pdf-viewer/hooks/usePdfDocument.js.map +1 -0
- package/build/browser/pdf-viewer/hooks/usePdfViewer.js +69 -0
- package/build/browser/pdf-viewer/hooks/usePdfViewer.js.map +1 -0
- package/build/browser/pdf-viewer/hooks/usePdfViewerSearch.js +106 -0
- package/build/browser/pdf-viewer/hooks/usePdfViewerSearch.js.map +1 -0
- package/build/browser/pdf-viewer/hooks/usePdfViewerSync.js +71 -0
- package/build/browser/pdf-viewer/hooks/usePdfViewerSync.js.map +1 -0
- package/build/browser/pdf-viewer/types.js +2 -0
- package/build/browser/pdf-viewer/types.js.map +1 -0
- package/build/browser/public/experimental.js +4 -0
- package/build/browser/public/experimental.js.map +1 -1
- package/build/browser/styles.css +1008 -87
- package/build/cjs/public/experimental.cjs +2311 -895
- package/build/cjs/public/experimental.cjs.map +1 -1
- package/build/cjs/public/experimental.css +678 -153
- package/build/cjs/public/experimental.css.map +1 -1
- package/build/cjs/public/experimental.d.cts +114 -13
- package/build/esm/action-form/ActionForm.js +5 -1
- package/build/esm/action-form/ActionForm.js.map +1 -1
- package/build/esm/action-form/BaseForm.js +4 -8
- package/build/esm/action-form/BaseForm.js.map +1 -1
- package/build/esm/action-form/FormFieldApi.js.map +1 -1
- package/build/esm/action-form/fields/DropdownField.js +104 -0
- package/build/esm/action-form/fields/DropdownField.js.map +1 -0
- package/build/esm/action-form/fields/FormFieldRenderer.js +23 -12
- package/build/esm/action-form/fields/FormFieldRenderer.js.map +1 -1
- package/build/esm/action-form/fields/TextInputField.js +8 -9
- package/build/esm/action-form/fields/TextInputField.js.map +1 -1
- package/build/esm/base-components/combobox/Combobox.js +25 -3
- package/build/esm/base-components/combobox/Combobox.js.map +1 -1
- package/build/esm/base-components/combobox/Combobox.module.css +226 -46
- package/build/esm/base-components/select/Select.js +7 -1
- package/build/esm/base-components/select/Select.js.map +1 -1
- package/build/esm/base-components/select/Select.module.css +132 -35
- package/build/esm/base-components/skeleton/SkeletonBar.js +36 -0
- package/build/esm/base-components/skeleton/SkeletonBar.js.map +1 -0
- package/build/esm/base-components/skeleton/SkeletonBar.module.css +39 -0
- package/build/esm/filter-list/FilterList.js +42 -5
- package/build/esm/filter-list/FilterList.js.map +1 -1
- package/build/esm/filter-list/FilterListApi.js.map +1 -1
- package/build/esm/filter-list/base/AddFilterPopover.js +45 -0
- package/build/esm/filter-list/base/AddFilterPopover.js.map +1 -0
- package/build/esm/filter-list/base/AddFilterPopover.module.css +83 -0
- package/build/esm/filter-list/base/inputs/CheckboxListInput.js +16 -27
- package/build/esm/filter-list/base/inputs/CheckboxListInput.js.map +1 -1
- package/build/esm/filter-list/base/inputs/CheckboxListInput.module.css +15 -5
- package/build/esm/filter-list/base/inputs/CheckboxListSkeleton.js +46 -0
- package/build/esm/filter-list/base/inputs/CheckboxListSkeleton.js.map +1 -0
- package/build/esm/filter-list/base/inputs/CheckboxListSkeleton.module.css +32 -0
- package/build/esm/filter-list/base/inputs/ListogramInput.js +21 -12
- package/build/esm/filter-list/base/inputs/ListogramInput.js.map +1 -1
- package/build/esm/filter-list/base/inputs/ListogramInput.module.css +13 -1
- package/build/esm/filter-list/base/inputs/ListogramSkeleton.js +45 -0
- package/build/esm/filter-list/base/inputs/ListogramSkeleton.js.map +1 -0
- package/build/esm/filter-list/base/inputs/ListogramSkeleton.module.css +32 -0
- package/build/esm/filter-list/base/inputs/MultiSelectInput.js +1 -1
- package/build/esm/filter-list/base/inputs/MultiSelectInput.js.map +1 -1
- package/build/esm/filter-list/base/inputs/RangeInput.js +13 -13
- package/build/esm/filter-list/base/inputs/RangeInput.js.map +1 -1
- package/build/esm/filter-list/base/inputs/RangeInput.module.css +23 -0
- package/build/esm/filter-list/base/inputs/TextTagsInput.js +1 -1
- package/build/esm/filter-list/base/inputs/TextTagsInput.js.map +1 -1
- package/build/esm/filter-list/base/inputs/useStaleData.js +29 -0
- package/build/esm/filter-list/base/inputs/useStaleData.js.map +1 -0
- package/build/esm/filter-list/hooks/useFilterVisibility.js +68 -0
- package/build/esm/filter-list/hooks/useFilterVisibility.js.map +1 -0
- package/build/esm/object-table/DefaultCellRenderer.js +13 -3
- package/build/esm/object-table/DefaultCellRenderer.js.map +1 -1
- package/build/esm/object-table/EditableCell.js +7 -6
- package/build/esm/object-table/EditableCell.js.map +1 -1
- package/build/esm/object-table/LoadingCell.js +6 -3
- package/build/esm/object-table/LoadingCell.js.map +1 -1
- package/build/esm/object-table/LoadingRow.js +2 -1
- package/build/esm/object-table/LoadingRow.js.map +1 -1
- package/build/esm/object-table/ObjectTableApi.js.map +1 -1
- package/build/esm/object-table/Table.js.map +1 -1
- package/build/esm/object-table/TableCell.module.css +1 -0
- package/build/esm/object-table/components/AsyncValueCell.js +35 -0
- package/build/esm/object-table/components/AsyncValueCell.js.map +1 -0
- package/build/esm/object-table/hooks/useColumnDefs.js +3 -1
- package/build/esm/object-table/hooks/useColumnDefs.js.map +1 -1
- package/build/esm/object-table/hooks/useFunctionColumnsData.js +270 -0
- package/build/esm/object-table/hooks/useFunctionColumnsData.js.map +1 -0
- package/build/esm/object-table/hooks/useObjectTableData.js +34 -13
- package/build/esm/object-table/hooks/useObjectTableData.js.map +1 -1
- package/build/esm/object-table/utils/AsyncCellData.js +30 -0
- package/build/esm/object-table/utils/AsyncCellData.js.map +1 -0
- package/build/esm/object-table/utils/constants.js +1 -0
- package/build/esm/object-table/utils/constants.js.map +1 -1
- package/build/esm/pdf-viewer/PdfRenderer.js +88 -0
- package/build/esm/pdf-viewer/PdfRenderer.js.map +1 -0
- package/build/esm/pdf-viewer/PdfViewer.js +197 -0
- package/build/esm/pdf-viewer/PdfViewer.js.map +1 -0
- package/build/esm/pdf-viewer/PdfViewer.module.css +95 -0
- package/build/esm/pdf-viewer/PdfViewerAnnotationLayer.js +74 -0
- package/build/esm/pdf-viewer/PdfViewerAnnotationLayer.js.map +1 -0
- package/build/esm/pdf-viewer/PdfViewerAnnotationLayer.module.css +65 -0
- package/build/esm/pdf-viewer/PdfViewerSearchBar.js +84 -0
- package/build/esm/pdf-viewer/PdfViewerSearchBar.js.map +1 -0
- package/build/esm/pdf-viewer/PdfViewerSearchBar.module.css +65 -0
- package/build/esm/pdf-viewer/PdfViewerSidebar.js +74 -0
- package/build/esm/pdf-viewer/PdfViewerSidebar.js.map +1 -0
- package/build/esm/pdf-viewer/PdfViewerSidebar.module.css +46 -0
- package/build/esm/pdf-viewer/PdfViewerThumbnail.js +100 -0
- package/build/esm/pdf-viewer/PdfViewerThumbnail.js.map +1 -0
- package/build/esm/pdf-viewer/PdfViewerThumbnail.module.css +26 -0
- package/build/esm/pdf-viewer/PdfViewerToolbar.js +167 -0
- package/build/esm/pdf-viewer/PdfViewerToolbar.js.map +1 -0
- package/build/esm/pdf-viewer/PdfViewerToolbar.module.css +86 -0
- package/build/esm/pdf-viewer/constants.js +43 -0
- package/build/esm/pdf-viewer/constants.js.map +1 -0
- package/build/esm/pdf-viewer/hooks/usePdfAnnotationPortals.js +54 -0
- package/build/esm/pdf-viewer/hooks/usePdfAnnotationPortals.js.map +1 -0
- package/build/esm/pdf-viewer/hooks/usePdfDocument.js +67 -0
- package/build/esm/pdf-viewer/hooks/usePdfDocument.js.map +1 -0
- package/build/esm/pdf-viewer/hooks/usePdfViewer.js +69 -0
- package/build/esm/pdf-viewer/hooks/usePdfViewer.js.map +1 -0
- package/build/esm/pdf-viewer/hooks/usePdfViewerSearch.js +106 -0
- package/build/esm/pdf-viewer/hooks/usePdfViewerSearch.js.map +1 -0
- package/build/esm/pdf-viewer/hooks/usePdfViewerSync.js +71 -0
- package/build/esm/pdf-viewer/hooks/usePdfViewerSync.js.map +1 -0
- package/build/esm/pdf-viewer/types.js +2 -0
- package/build/esm/pdf-viewer/types.js.map +1 -0
- package/build/esm/public/experimental.js +4 -0
- package/build/esm/public/experimental.js.map +1 -1
- package/build/types/action-form/FormFieldApi.d.ts +48 -37
- package/build/types/action-form/FormFieldApi.d.ts.map +1 -1
- package/build/types/action-form/fields/DropdownField.d.ts +6 -0
- package/build/types/action-form/fields/DropdownField.d.ts.map +1 -0
- package/build/types/action-form/fields/FormFieldRenderer.d.ts.map +1 -1
- package/build/types/action-form/fields/TextInputField.d.ts +3 -1
- package/build/types/action-form/fields/TextInputField.d.ts.map +1 -1
- package/build/types/base-components/combobox/Combobox.d.ts +9 -1
- package/build/types/base-components/combobox/Combobox.d.ts.map +1 -1
- package/build/types/base-components/select/Select.d.ts +8 -2
- package/build/types/base-components/select/Select.d.ts.map +1 -1
- package/build/types/base-components/skeleton/SkeletonBar.d.ts +9 -0
- package/build/types/base-components/skeleton/SkeletonBar.d.ts.map +1 -0
- package/build/types/filter-list/FilterList.d.ts.map +1 -1
- package/build/types/filter-list/FilterListApi.d.ts +24 -6
- package/build/types/filter-list/FilterListApi.d.ts.map +1 -1
- package/build/types/filter-list/base/AddFilterPopover.d.ts +12 -0
- package/build/types/filter-list/base/AddFilterPopover.d.ts.map +1 -0
- package/build/types/filter-list/base/inputs/CheckboxListInput.d.ts +2 -1
- package/build/types/filter-list/base/inputs/CheckboxListInput.d.ts.map +1 -1
- package/build/types/filter-list/base/inputs/CheckboxListSkeleton.d.ts +2 -0
- package/build/types/filter-list/base/inputs/CheckboxListSkeleton.d.ts.map +1 -0
- package/build/types/filter-list/base/inputs/ListogramInput.d.ts +2 -1
- package/build/types/filter-list/base/inputs/ListogramInput.d.ts.map +1 -1
- package/build/types/filter-list/base/inputs/ListogramSkeleton.d.ts +2 -0
- package/build/types/filter-list/base/inputs/ListogramSkeleton.d.ts.map +1 -0
- package/build/types/filter-list/base/inputs/RangeInput.d.ts.map +1 -1
- package/build/types/filter-list/base/inputs/useStaleData.d.ts +1 -0
- package/build/types/filter-list/base/inputs/useStaleData.d.ts.map +1 -0
- package/build/types/filter-list/hooks/useFilterVisibility.d.ts +8 -0
- package/build/types/filter-list/hooks/useFilterVisibility.d.ts.map +1 -0
- package/build/types/object-table/DefaultCellRenderer.d.ts.map +1 -1
- package/build/types/object-table/EditableCell.d.ts.map +1 -1
- package/build/types/object-table/LoadingCell.d.ts +1 -0
- package/build/types/object-table/LoadingCell.d.ts.map +1 -1
- package/build/types/object-table/LoadingRow.d.ts.map +1 -1
- package/build/types/object-table/ObjectTableApi.d.ts +51 -15
- package/build/types/object-table/ObjectTableApi.d.ts.map +1 -1
- package/build/types/object-table/Table.d.ts +1 -0
- package/build/types/object-table/Table.d.ts.map +1 -1
- package/build/types/object-table/components/AsyncValueCell.d.ts +5 -0
- package/build/types/object-table/components/AsyncValueCell.d.ts.map +1 -0
- package/build/types/object-table/hooks/useFunctionColumnsData.d.ts +13 -0
- package/build/types/object-table/hooks/useFunctionColumnsData.d.ts.map +1 -0
- package/build/types/object-table/hooks/useObjectTableData.d.ts +8 -1
- package/build/types/object-table/hooks/useObjectTableData.d.ts.map +1 -1
- package/build/types/object-table/utils/AsyncCellData.d.ts +8 -0
- package/build/types/object-table/utils/AsyncCellData.d.ts.map +1 -0
- package/build/types/object-table/utils/constants.d.ts +1 -0
- package/build/types/object-table/utils/constants.d.ts.map +1 -1
- package/build/types/pdf-viewer/PdfRenderer.d.ts +8 -0
- package/build/types/pdf-viewer/PdfRenderer.d.ts.map +1 -0
- package/build/types/pdf-viewer/PdfViewer.d.ts +4 -0
- package/build/types/pdf-viewer/PdfViewer.d.ts.map +1 -0
- package/build/types/pdf-viewer/PdfViewerAnnotationLayer.d.ts +10 -0
- package/build/types/pdf-viewer/PdfViewerAnnotationLayer.d.ts.map +1 -0
- package/build/types/pdf-viewer/PdfViewerSearchBar.d.ts +12 -0
- package/build/types/pdf-viewer/PdfViewerSearchBar.d.ts.map +1 -0
- package/build/types/pdf-viewer/PdfViewerSidebar.d.ts +10 -0
- package/build/types/pdf-viewer/PdfViewerSidebar.d.ts.map +1 -0
- package/build/types/pdf-viewer/PdfViewerThumbnail.d.ts +10 -0
- package/build/types/pdf-viewer/PdfViewerThumbnail.d.ts.map +1 -0
- package/build/types/pdf-viewer/PdfViewerToolbar.d.ts +14 -0
- package/build/types/pdf-viewer/PdfViewerToolbar.d.ts.map +1 -0
- package/build/types/pdf-viewer/constants.d.ts +17 -0
- package/build/types/pdf-viewer/constants.d.ts.map +1 -0
- package/build/types/pdf-viewer/hooks/usePdfAnnotationPortals.d.ts +10 -0
- package/build/types/pdf-viewer/hooks/usePdfAnnotationPortals.d.ts.map +1 -0
- package/build/types/pdf-viewer/hooks/usePdfDocument.d.ts +9 -0
- package/build/types/pdf-viewer/hooks/usePdfDocument.d.ts.map +1 -0
- package/build/types/pdf-viewer/hooks/usePdfViewer.d.ts +9 -0
- package/build/types/pdf-viewer/hooks/usePdfViewer.d.ts.map +1 -0
- package/build/types/pdf-viewer/hooks/usePdfViewerSearch.d.ts +15 -0
- package/build/types/pdf-viewer/hooks/usePdfViewerSearch.d.ts.map +1 -0
- package/build/types/pdf-viewer/hooks/usePdfViewerSync.d.ts +15 -0
- package/build/types/pdf-viewer/hooks/usePdfViewerSync.d.ts.map +1 -0
- package/build/types/pdf-viewer/types.d.ts +44 -0
- package/build/types/pdf-viewer/types.d.ts.map +1 -0
- package/build/types/public/experimental.d.ts +4 -1
- package/build/types/public/experimental.d.ts.map +1 -1
- package/package.json +5 -4
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2025 Palantir Technologies, Inc. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
import { useCallback, useEffect, useState } from "react";
|
|
18
|
+
import { EMPTY_STRING, FIND_EVENT, UPDATE_FIND_CONTROL_STATE_EVENT, UPDATE_FIND_MATCHES_COUNT_EVENT } from "../constants.js";
|
|
19
|
+
export function usePdfViewerSearch(eventBusRef, findControllerRef, document) {
|
|
20
|
+
const [query, setQueryState] = useState(EMPTY_STRING);
|
|
21
|
+
const [totalMatches, setTotalMatches] = useState(0);
|
|
22
|
+
const [currentMatchIndex, setCurrentMatchIndex] = useState(0);
|
|
23
|
+
const [isSearchOpen, setIsSearchOpen] = useState(false);
|
|
24
|
+
const dispatchFind = useCallback((queryString, findPrevious) => {
|
|
25
|
+
eventBusRef.current?.dispatch(FIND_EVENT, {
|
|
26
|
+
source: undefined,
|
|
27
|
+
type: "",
|
|
28
|
+
query: queryString,
|
|
29
|
+
caseSensitive: false,
|
|
30
|
+
highlightAll: true,
|
|
31
|
+
phraseSearch: true,
|
|
32
|
+
findPrevious
|
|
33
|
+
});
|
|
34
|
+
}, [eventBusRef]);
|
|
35
|
+
const dispatchFindAgain = useCallback(findPrevious => {
|
|
36
|
+
eventBusRef.current?.dispatch(FIND_EVENT, {
|
|
37
|
+
source: undefined,
|
|
38
|
+
type: "again",
|
|
39
|
+
query,
|
|
40
|
+
caseSensitive: false,
|
|
41
|
+
highlightAll: true,
|
|
42
|
+
phraseSearch: true,
|
|
43
|
+
findPrevious
|
|
44
|
+
});
|
|
45
|
+
}, [eventBusRef, query]);
|
|
46
|
+
const setQuery = useCallback(input => {
|
|
47
|
+
setQueryState(input);
|
|
48
|
+
if (input === EMPTY_STRING) {
|
|
49
|
+
setTotalMatches(0);
|
|
50
|
+
setCurrentMatchIndex(0);
|
|
51
|
+
// Dispatch empty query to clear highlights
|
|
52
|
+
dispatchFind(EMPTY_STRING, false);
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
dispatchFind(input, false);
|
|
56
|
+
}, [dispatchFind]);
|
|
57
|
+
const nextMatch = useCallback(() => {
|
|
58
|
+
dispatchFindAgain(false);
|
|
59
|
+
}, [dispatchFindAgain]);
|
|
60
|
+
const prevMatch = useCallback(() => {
|
|
61
|
+
dispatchFindAgain(true);
|
|
62
|
+
}, [dispatchFindAgain]);
|
|
63
|
+
const openSearch = useCallback(() => {
|
|
64
|
+
setIsSearchOpen(true);
|
|
65
|
+
}, []);
|
|
66
|
+
const closeSearch = useCallback(() => {
|
|
67
|
+
setIsSearchOpen(false);
|
|
68
|
+
setQueryState(EMPTY_STRING);
|
|
69
|
+
setTotalMatches(0);
|
|
70
|
+
setCurrentMatchIndex(0);
|
|
71
|
+
// Clear highlights
|
|
72
|
+
dispatchFind(EMPTY_STRING, false);
|
|
73
|
+
}, [dispatchFind]);
|
|
74
|
+
useEffect(function () {
|
|
75
|
+
const eventBus = eventBusRef.current;
|
|
76
|
+
if (eventBus == null) {
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
const handleMatchesCount = evt => {
|
|
80
|
+
setTotalMatches(evt.matchesCount.total);
|
|
81
|
+
setCurrentMatchIndex(evt.matchesCount.current > 0 ? evt.matchesCount.current - 1 : 0);
|
|
82
|
+
};
|
|
83
|
+
const handleControlState = evt => {
|
|
84
|
+
setTotalMatches(evt.matchesCount.total);
|
|
85
|
+
setCurrentMatchIndex(evt.matchesCount.current > 0 ? evt.matchesCount.current - 1 : 0);
|
|
86
|
+
};
|
|
87
|
+
eventBus.on(UPDATE_FIND_MATCHES_COUNT_EVENT, handleMatchesCount);
|
|
88
|
+
eventBus.on(UPDATE_FIND_CONTROL_STATE_EVENT, handleControlState);
|
|
89
|
+
return () => {
|
|
90
|
+
eventBus.off(UPDATE_FIND_MATCHES_COUNT_EVENT, handleMatchesCount);
|
|
91
|
+
eventBus.off(UPDATE_FIND_CONTROL_STATE_EVENT, handleControlState);
|
|
92
|
+
};
|
|
93
|
+
}, [eventBusRef, findControllerRef, document]);
|
|
94
|
+
return {
|
|
95
|
+
query,
|
|
96
|
+
totalMatches,
|
|
97
|
+
currentMatchIndex,
|
|
98
|
+
isSearchOpen,
|
|
99
|
+
setQuery,
|
|
100
|
+
nextMatch,
|
|
101
|
+
prevMatch,
|
|
102
|
+
openSearch,
|
|
103
|
+
closeSearch
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=usePdfViewerSearch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePdfViewerSearch.js","names":["useCallback","useEffect","useState","EMPTY_STRING","FIND_EVENT","UPDATE_FIND_CONTROL_STATE_EVENT","UPDATE_FIND_MATCHES_COUNT_EVENT","usePdfViewerSearch","eventBusRef","findControllerRef","document","query","setQueryState","totalMatches","setTotalMatches","currentMatchIndex","setCurrentMatchIndex","isSearchOpen","setIsSearchOpen","dispatchFind","queryString","findPrevious","current","dispatch","source","undefined","type","caseSensitive","highlightAll","phraseSearch","dispatchFindAgain","setQuery","input","nextMatch","prevMatch","openSearch","closeSearch","eventBus","handleMatchesCount","evt","matchesCount","total","handleControlState","on","off"],"sources":["usePdfViewerSearch.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { PDFDocumentProxy } from \"pdfjs-dist\";\nimport type {\n EventBus,\n PDFFindController,\n} from \"pdfjs-dist/web/pdf_viewer.mjs\";\nimport type { RefObject } from \"react\";\nimport { useCallback, useEffect, useState } from \"react\";\nimport {\n EMPTY_STRING,\n FIND_EVENT,\n UPDATE_FIND_CONTROL_STATE_EVENT,\n UPDATE_FIND_MATCHES_COUNT_EVENT,\n} from \"../constants.js\";\n\nexport interface UsePdfViewerSearchResult {\n query: string;\n totalMatches: number;\n currentMatchIndex: number;\n isSearchOpen: boolean;\n setQuery: (query: string) => void;\n nextMatch: () => void;\n prevMatch: () => void;\n openSearch: () => void;\n closeSearch: () => void;\n}\n\nexport function usePdfViewerSearch(\n eventBusRef: RefObject<EventBus | null>,\n findControllerRef: RefObject<PDFFindController | null>,\n document: PDFDocumentProxy | undefined,\n): UsePdfViewerSearchResult {\n const [query, setQueryState] = useState(EMPTY_STRING);\n const [totalMatches, setTotalMatches] = useState(0);\n const [currentMatchIndex, setCurrentMatchIndex] = useState(0);\n const [isSearchOpen, setIsSearchOpen] = useState(false);\n\n const dispatchFind = useCallback(\n (queryString: string, findPrevious: boolean) => {\n eventBusRef.current?.dispatch(FIND_EVENT, {\n source: undefined,\n type: \"\",\n query: queryString,\n caseSensitive: false,\n highlightAll: true,\n phraseSearch: true,\n findPrevious,\n });\n },\n [eventBusRef],\n );\n\n const dispatchFindAgain = useCallback(\n (findPrevious: boolean) => {\n eventBusRef.current?.dispatch(FIND_EVENT, {\n source: undefined,\n type: \"again\",\n query,\n caseSensitive: false,\n highlightAll: true,\n phraseSearch: true,\n findPrevious,\n });\n },\n [eventBusRef, query],\n );\n\n const setQuery = useCallback(\n (input: string) => {\n setQueryState(input);\n\n if (input === EMPTY_STRING) {\n setTotalMatches(0);\n setCurrentMatchIndex(0);\n // Dispatch empty query to clear highlights\n dispatchFind(EMPTY_STRING, false);\n return;\n }\n\n dispatchFind(input, false);\n },\n [dispatchFind],\n );\n\n const nextMatch = useCallback(() => {\n dispatchFindAgain(false);\n }, [dispatchFindAgain]);\n\n const prevMatch = useCallback(() => {\n dispatchFindAgain(true);\n }, [dispatchFindAgain]);\n\n const openSearch = useCallback(() => {\n setIsSearchOpen(true);\n }, []);\n\n const closeSearch = useCallback(() => {\n setIsSearchOpen(false);\n setQueryState(EMPTY_STRING);\n setTotalMatches(0);\n setCurrentMatchIndex(0);\n // Clear highlights\n dispatchFind(EMPTY_STRING, false);\n }, [dispatchFind]);\n\n useEffect(function subscribeSearchEvents() {\n const eventBus = eventBusRef.current;\n if (eventBus == null) {\n return;\n }\n\n const handleMatchesCount = (evt: {\n matchesCount: { current: number; total: number };\n }) => {\n setTotalMatches(evt.matchesCount.total);\n setCurrentMatchIndex(\n evt.matchesCount.current > 0 ? evt.matchesCount.current - 1 : 0,\n );\n };\n\n const handleControlState = (evt: {\n state: number;\n matchesCount: { current: number; total: number };\n }) => {\n setTotalMatches(evt.matchesCount.total);\n setCurrentMatchIndex(\n evt.matchesCount.current > 0 ? evt.matchesCount.current - 1 : 0,\n );\n };\n\n eventBus.on(UPDATE_FIND_MATCHES_COUNT_EVENT, handleMatchesCount);\n eventBus.on(UPDATE_FIND_CONTROL_STATE_EVENT, handleControlState);\n\n return () => {\n eventBus.off(UPDATE_FIND_MATCHES_COUNT_EVENT, handleMatchesCount);\n eventBus.off(UPDATE_FIND_CONTROL_STATE_EVENT, handleControlState);\n };\n }, [eventBusRef, findControllerRef, document]);\n\n return {\n query,\n totalMatches,\n currentMatchIndex,\n isSearchOpen,\n setQuery,\n nextMatch,\n prevMatch,\n openSearch,\n closeSearch,\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2025 Palantir Technologies, Inc. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
import { useCallback, useEffect, useRef } from "react";
|
|
18
|
+
import { PAGE_CHANGING_EVENT, SCALE_CHANGING_EVENT } from "../constants.js";
|
|
19
|
+
export function usePdfViewerSync({
|
|
20
|
+
pdfViewerRef,
|
|
21
|
+
eventBusRef,
|
|
22
|
+
document,
|
|
23
|
+
scale,
|
|
24
|
+
onScaleChange,
|
|
25
|
+
onPageChange
|
|
26
|
+
}) {
|
|
27
|
+
const lastScaleRef = useRef(scale);
|
|
28
|
+
|
|
29
|
+
// Sync React scale → PDFViewer
|
|
30
|
+
useEffect(function () {
|
|
31
|
+
const pdfViewer = pdfViewerRef.current;
|
|
32
|
+
if (pdfViewer == null) {
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
if (Math.abs(lastScaleRef.current - scale) > 0.001) {
|
|
36
|
+
lastScaleRef.current = scale;
|
|
37
|
+
pdfViewer.currentScale = scale;
|
|
38
|
+
}
|
|
39
|
+
}, [pdfViewerRef, scale]);
|
|
40
|
+
|
|
41
|
+
// Listen to PDFViewer events → React state
|
|
42
|
+
useEffect(function () {
|
|
43
|
+
const eventBus = eventBusRef.current;
|
|
44
|
+
if (eventBus == null) {
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
const handlePageChanging = evt => {
|
|
48
|
+
onPageChange(evt.pageNumber);
|
|
49
|
+
};
|
|
50
|
+
const handleScaleChanging = evt => {
|
|
51
|
+
lastScaleRef.current = evt.scale;
|
|
52
|
+
onScaleChange(evt.scale);
|
|
53
|
+
};
|
|
54
|
+
eventBus.on(PAGE_CHANGING_EVENT, handlePageChanging);
|
|
55
|
+
eventBus.on(SCALE_CHANGING_EVENT, handleScaleChanging);
|
|
56
|
+
return () => {
|
|
57
|
+
eventBus.off(PAGE_CHANGING_EVENT, handlePageChanging);
|
|
58
|
+
eventBus.off(SCALE_CHANGING_EVENT, handleScaleChanging);
|
|
59
|
+
};
|
|
60
|
+
}, [eventBusRef, document, onPageChange, onScaleChange]);
|
|
61
|
+
const scrollToPage = useCallback(page => {
|
|
62
|
+
const pdfViewer = pdfViewerRef.current;
|
|
63
|
+
if (pdfViewer != null) {
|
|
64
|
+
pdfViewer.currentPageNumber = page;
|
|
65
|
+
}
|
|
66
|
+
}, [pdfViewerRef]);
|
|
67
|
+
return {
|
|
68
|
+
scrollToPage
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=usePdfViewerSync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usePdfViewerSync.js","names":["useCallback","useEffect","useRef","PAGE_CHANGING_EVENT","SCALE_CHANGING_EVENT","usePdfViewerSync","pdfViewerRef","eventBusRef","document","scale","onScaleChange","onPageChange","lastScaleRef","pdfViewer","current","Math","abs","currentScale","eventBus","handlePageChanging","evt","pageNumber","handleScaleChanging","on","off","scrollToPage","page","currentPageNumber"],"sources":["usePdfViewerSync.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { PDFDocumentProxy } from \"pdfjs-dist\";\nimport type { EventBus, PDFViewer } from \"pdfjs-dist/web/pdf_viewer.mjs\";\nimport type { RefObject } from \"react\";\nimport { useCallback, useEffect, useRef } from \"react\";\nimport { PAGE_CHANGING_EVENT, SCALE_CHANGING_EVENT } from \"../constants.js\";\n\ninterface UsePdfViewerSyncOptions {\n pdfViewerRef: RefObject<PDFViewer | null>;\n eventBusRef: RefObject<EventBus | null>;\n document: PDFDocumentProxy | undefined;\n scale: number;\n onScaleChange: (scale: number) => void;\n onPageChange: (page: number) => void;\n}\n\nexport function usePdfViewerSync({\n pdfViewerRef,\n eventBusRef,\n document,\n scale,\n onScaleChange,\n onPageChange,\n}: UsePdfViewerSyncOptions): {\n scrollToPage: (page: number) => void;\n} {\n const lastScaleRef = useRef(scale);\n\n // Sync React scale → PDFViewer\n useEffect(function syncScaleToViewer() {\n const pdfViewer = pdfViewerRef.current;\n if (pdfViewer == null) {\n return;\n }\n if (Math.abs(lastScaleRef.current - scale) > 0.001) {\n lastScaleRef.current = scale;\n pdfViewer.currentScale = scale;\n }\n }, [pdfViewerRef, scale]);\n\n // Listen to PDFViewer events → React state\n useEffect(function subscribeViewerEvents() {\n const eventBus = eventBusRef.current;\n if (eventBus == null) {\n return;\n }\n\n const handlePageChanging = (evt: { pageNumber: number }) => {\n onPageChange(evt.pageNumber);\n };\n\n const handleScaleChanging = (evt: { scale: number }) => {\n lastScaleRef.current = evt.scale;\n onScaleChange(evt.scale);\n };\n\n eventBus.on(PAGE_CHANGING_EVENT, handlePageChanging);\n eventBus.on(SCALE_CHANGING_EVENT, handleScaleChanging);\n\n return () => {\n eventBus.off(PAGE_CHANGING_EVENT, handlePageChanging);\n eventBus.off(SCALE_CHANGING_EVENT, handleScaleChanging);\n };\n }, [eventBusRef, document, onPageChange, onScaleChange]);\n\n const scrollToPage = useCallback(\n (page: number) => {\n const pdfViewer = pdfViewerRef.current;\n if (pdfViewer != null) {\n pdfViewer.currentPageNumber = page;\n }\n },\n [pdfViewerRef],\n );\n\n return { scrollToPage };\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAKA,SAASA,WAAW,EAAEC,SAAS,EAAEC,MAAM,QAAQ,OAAO;AACtD,SAASC,mBAAmB,EAAEC,oBAAoB,QAAQ,iBAAiB;AAW3E,OAAO,SAASC,gBAAgBA,CAAC;EAC/BC,YAAY;EACZC,WAAW;EACXC,QAAQ;EACRC,KAAK;EACLC,aAAa;EACbC;AACuB,CAAC,EAExB;EACA,MAAMC,YAAY,GAAGV,MAAM,CAACO,KAAK,CAAC;;EAElC;EACAR,SAAS,CAAC,YAA6B;IACrC,MAAMY,SAAS,GAAGP,YAAY,CAACQ,OAAO;IACtC,IAAID,SAAS,IAAI,IAAI,EAAE;MACrB;IACF;IACA,IAAIE,IAAI,CAACC,GAAG,CAACJ,YAAY,CAACE,OAAO,GAAGL,KAAK,CAAC,GAAG,KAAK,EAAE;MAClDG,YAAY,CAACE,OAAO,GAAGL,KAAK;MAC5BI,SAAS,CAACI,YAAY,GAAGR,KAAK;IAChC;EACF,CAAC,EAAE,CAACH,YAAY,EAAEG,KAAK,CAAC,CAAC;;EAEzB;EACAR,SAAS,CAAC,YAAiC;IACzC,MAAMiB,QAAQ,GAAGX,WAAW,CAACO,OAAO;IACpC,IAAII,QAAQ,IAAI,IAAI,EAAE;MACpB;IACF;IAEA,MAAMC,kBAAkB,GAAIC,GAA2B,IAAK;MAC1DT,YAAY,CAACS,GAAG,CAACC,UAAU,CAAC;IAC9B,CAAC;IAED,MAAMC,mBAAmB,GAAIF,GAAsB,IAAK;MACtDR,YAAY,CAACE,OAAO,GAAGM,GAAG,CAACX,KAAK;MAChCC,aAAa,CAACU,GAAG,CAACX,KAAK,CAAC;IAC1B,CAAC;IAEDS,QAAQ,CAACK,EAAE,CAACpB,mBAAmB,EAAEgB,kBAAkB,CAAC;IACpDD,QAAQ,CAACK,EAAE,CAACnB,oBAAoB,EAAEkB,mBAAmB,CAAC;IAEtD,OAAO,MAAM;MACXJ,QAAQ,CAACM,GAAG,CAACrB,mBAAmB,EAAEgB,kBAAkB,CAAC;MACrDD,QAAQ,CAACM,GAAG,CAACpB,oBAAoB,EAAEkB,mBAAmB,CAAC;IACzD,CAAC;EACH,CAAC,EAAE,CAACf,WAAW,EAAEC,QAAQ,EAAEG,YAAY,EAAED,aAAa,CAAC,CAAC;EAExD,MAAMe,YAAY,GAAGzB,WAAW,CAC7B0B,IAAY,IAAK;IAChB,MAAMb,SAAS,GAAGP,YAAY,CAACQ,OAAO;IACtC,IAAID,SAAS,IAAI,IAAI,EAAE;MACrBA,SAAS,CAACc,iBAAiB,GAAGD,IAAI;IACpC;EACF,CAAC,EACD,CAACpB,YAAY,CACf,CAAC;EAED,OAAO;IAAEmB;EAAa,CAAC;AACzB","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","names":[],"sources":["types.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/** The visual style of an annotation rendered on the PDF. */\nexport type AnnotationType = \"highlight\" | \"underline\" | \"comment\" | \"pin\";\n\n/** A single annotation positioned on a specific page of the PDF. */\nexport interface PdfAnnotation {\n /** Unique identifier for this annotation */\n id: string;\n /** The type of annotation to render */\n type: AnnotationType;\n /** Page number (1-indexed) */\n page: number;\n /** Coordinates in PDF points (origin: bottom-left of page) */\n rect: { x: number; y: number; width: number; height: number };\n /** Optional label or tooltip text */\n label?: string;\n /** Optional color override (CSS color string) */\n color?: string;\n}\n\n/** Props for the {@link PdfViewer} component. */\nexport interface PdfViewerProps {\n /** PDF source — URL string or ArrayBuffer */\n src: string | ArrayBuffer;\n /** Annotations to overlay on the PDF, keyed by page number (1-indexed) */\n annotations?: Record<number, PdfAnnotation[]>;\n /**\n * Callback fired when an annotation is clicked.\n *\n * @param annotation - The annotation that was clicked\n * @returns void\n */\n onAnnotationClick?: (annotation: PdfAnnotation) => void;\n /** Initial page number (1-indexed, default 1) */\n initialPage?: number;\n /** Initial zoom scale (default 1.0) */\n initialScale?: number;\n /** Whether the sidebar is initially open (default false) */\n initialSidebarOpen?: boolean;\n /** Additional CSS class name for the root element */\n className?: string;\n}\n"],"mappings":"","ignoreList":[]}
|
|
@@ -25,4 +25,8 @@ export { ObjectTable } from "../object-table/ObjectTable.js";
|
|
|
25
25
|
|
|
26
26
|
export { BaseTable } from "../object-table/Table.js";
|
|
27
27
|
export { ColumnConfigDialog } from "../object-table/ColumnConfigDialog.js";
|
|
28
|
+
// PdfViewer
|
|
29
|
+
export { BasePdfViewer } from "../pdf-viewer/PdfViewer.js";
|
|
30
|
+
// PdfRenderer
|
|
31
|
+
export { PdfRenderer } from "../pdf-viewer/PdfRenderer.js";
|
|
28
32
|
//# sourceMappingURL=experimental.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"experimental.js","names":["BaseFilterList","FilterList","deserializeFilterStates","serializeFilterStates","ObjectTable","BaseTable","ColumnConfigDialog"],"sources":["experimental.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport { BaseFilterList } from \"../filter-list/base/BaseFilterList.js\";\nexport type {\n BaseFilterListProps,\n RenderFilterInput,\n} from \"../filter-list/base/BaseFilterListApi.js\";\nexport { FilterList } from \"../filter-list/FilterList.js\";\n\nexport type {\n FilterDefinitionUnion,\n FilterListProps,\n} from \"../filter-list/FilterListApi.js\";\nexport type {\n FilterComponentType,\n FilterListItemProps,\n FilterState,\n PropertyFilterDefinition,\n} from \"../filter-list/FilterListItemApi.js\";\nexport {\n deserializeFilterStates,\n serializeFilterStates,\n} from \"../filter-list/utils/filterStateSerialization.js\";\n\n// ObjectTable that loads and displays data for a given objectSet\nexport { ObjectTable } from \"../object-table/ObjectTable.js\";\nexport type {\n ColumnDefinition,\n ColumnDefinitionLocator,\n ObjectTableProps,\n} from \"../object-table/ObjectTableApi.js\";\nexport type { CellEditInfo } from \"../object-table/utils/types.js\";\n\n// BaseTable that does not handle data fetching\nexport type { BaseTableProps } from \"../object-table/Table.js\";\nexport { BaseTable } from \"../object-table/Table.js\";\n\nexport { ColumnConfigDialog } from \"../object-table/ColumnConfigDialog.js\";\nexport type {\n ColumnConfigDialogProps,\n ColumnConfigOptions,\n} from \"../object-table/ColumnConfigDialog.js\";\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,cAAc,QAAQ,uCAAuC;AAKtE,SAASC,UAAU,QAAQ,8BAA8B;AAYzD,SACEC,uBAAuB,EACvBC,qBAAqB,QAChB,kDAAkD;;AAEzD;AACA,SAASC,WAAW,QAAQ,gCAAgC;;
|
|
1
|
+
{"version":3,"file":"experimental.js","names":["BaseFilterList","FilterList","deserializeFilterStates","serializeFilterStates","ObjectTable","BaseTable","ColumnConfigDialog","BasePdfViewer","PdfRenderer"],"sources":["experimental.ts"],"sourcesContent":["/*\n * Copyright 2025 Palantir Technologies, Inc. All rights reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nexport { BaseFilterList } from \"../filter-list/base/BaseFilterList.js\";\nexport type {\n BaseFilterListProps,\n RenderFilterInput,\n} from \"../filter-list/base/BaseFilterListApi.js\";\nexport { FilterList } from \"../filter-list/FilterList.js\";\n\nexport type {\n FilterDefinitionUnion,\n FilterListProps,\n} from \"../filter-list/FilterListApi.js\";\nexport type {\n FilterComponentType,\n FilterListItemProps,\n FilterState,\n PropertyFilterDefinition,\n} from \"../filter-list/FilterListItemApi.js\";\nexport {\n deserializeFilterStates,\n serializeFilterStates,\n} from \"../filter-list/utils/filterStateSerialization.js\";\n\n// ObjectTable that loads and displays data for a given objectSet\nexport { ObjectTable } from \"../object-table/ObjectTable.js\";\nexport type {\n ColumnDefinition,\n ColumnDefinitionLocator,\n CustomColumnLocator,\n FunctionColumnLocator,\n ObjectTableProps,\n PropertyColumnLocator,\n RdpColumnLocator,\n} from \"../object-table/ObjectTableApi.js\";\nexport type { CellEditInfo } from \"../object-table/utils/types.js\";\n\n// BaseTable that does not handle data fetching\nexport type { BaseTableProps } from \"../object-table/Table.js\";\nexport { BaseTable } from \"../object-table/Table.js\";\n\nexport { ColumnConfigDialog } from \"../object-table/ColumnConfigDialog.js\";\nexport type {\n ColumnConfigDialogProps,\n ColumnConfigOptions,\n} from \"../object-table/ColumnConfigDialog.js\";\n\n// PdfViewer\nexport { BasePdfViewer } from \"../pdf-viewer/PdfViewer.js\";\nexport type {\n AnnotationType,\n PdfAnnotation,\n PdfViewerProps,\n} from \"../pdf-viewer/types.js\";\n\n// PdfRenderer\nexport {\n PdfRenderer,\n type PdfRendererProps,\n} from \"../pdf-viewer/PdfRenderer.js\";\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,cAAc,QAAQ,uCAAuC;AAKtE,SAASC,UAAU,QAAQ,8BAA8B;AAYzD,SACEC,uBAAuB,EACvBC,qBAAqB,QAChB,kDAAkD;;AAEzD;AACA,SAASC,WAAW,QAAQ,gCAAgC;;AAY5D;;AAEA,SAASC,SAAS,QAAQ,0BAA0B;AAEpD,SAASC,kBAAkB,QAAQ,uCAAuC;AAM1E;AACA,SAASC,aAAa,QAAQ,4BAA4B;AAO1D;AACA,SACEC,WAAW,QAEN,8BAA8B","ignoreList":[]}
|
|
@@ -90,7 +90,6 @@ export interface FormFieldPropsByType {
|
|
|
90
90
|
* Datetime picker field props
|
|
91
91
|
*/
|
|
92
92
|
export interface DatetimePickerFieldProps extends BaseFormFieldProps<Date> {
|
|
93
|
-
fieldComponent: "DATETIME_PICKER";
|
|
94
93
|
/**
|
|
95
94
|
* The earliest date the user can select
|
|
96
95
|
* If provided, this will be added to the field validation
|
|
@@ -111,28 +110,46 @@ export interface DatetimePickerFieldProps extends BaseFormFieldProps<Date> {
|
|
|
111
110
|
formatDate?: (date: Date) => string;
|
|
112
111
|
}
|
|
113
112
|
/**
|
|
114
|
-
* Dropdown field props with selectable
|
|
113
|
+
* Dropdown field props with selectable items
|
|
115
114
|
*/
|
|
116
115
|
export interface DropdownFieldProps<
|
|
117
116
|
V,
|
|
118
|
-
|
|
119
|
-
> extends BaseFormFieldProps<
|
|
120
|
-
fieldComponent: "DROPDOWN";
|
|
117
|
+
Multiple extends boolean = false
|
|
118
|
+
> extends BaseFormFieldProps<Multiple extends true ? V[] : V> {
|
|
121
119
|
/**
|
|
122
|
-
* Available
|
|
120
|
+
* Available items for the dropdown
|
|
123
121
|
*/
|
|
124
|
-
|
|
122
|
+
items: V[];
|
|
123
|
+
/**
|
|
124
|
+
* Converts an item to a display string. Defaults to `String()`.
|
|
125
|
+
*/
|
|
126
|
+
itemToStringLabel?: (item: V) => string;
|
|
125
127
|
/**
|
|
126
|
-
*
|
|
128
|
+
* Returns a unique string key for a list item. Used as the React `key`.
|
|
129
|
+
* Falls back to the item's index when not provided.
|
|
130
|
+
*/
|
|
131
|
+
itemToKey?: (item: V) => string;
|
|
132
|
+
/**
|
|
133
|
+
* Custom equality check for item values. Defaults to `Object.is`.
|
|
134
|
+
* Required when items are objects to ensure correct selection matching.
|
|
135
|
+
*/
|
|
136
|
+
isItemEqual?: (a: V, b: V) => boolean;
|
|
137
|
+
/**
|
|
138
|
+
* Whether the dropdown allows searching/filtering.
|
|
139
|
+
* When true, renders a Combobox with a search input.
|
|
140
|
+
* When false (default), renders a Select dropdown.
|
|
127
141
|
*/
|
|
128
142
|
isSearchable?: boolean;
|
|
129
143
|
/**
|
|
144
|
+
* Placeholder text shown when no value is selected.
|
|
145
|
+
*/
|
|
146
|
+
placeholder?: string;
|
|
147
|
+
/**
|
|
130
148
|
* Whether multiple values can be selected
|
|
131
149
|
*/
|
|
132
|
-
|
|
150
|
+
isMultiple?: Multiple;
|
|
133
151
|
}
|
|
134
152
|
export interface FilePickerProps extends BaseFormFieldProps<File | File[]> {
|
|
135
|
-
fieldComponent: "FILE_PICKER";
|
|
136
153
|
/**
|
|
137
154
|
* Whether multiple files can be selected
|
|
138
155
|
*/
|
|
@@ -149,31 +166,25 @@ export interface FilePickerProps extends BaseFormFieldProps<File | File[]> {
|
|
|
149
166
|
/**
|
|
150
167
|
* Text area field props
|
|
151
168
|
*/
|
|
152
|
-
export interface TextAreaFieldProps extends BaseFormFieldProps<string>, Pick<React.TextareaHTMLAttributes<HTMLTextAreaElement>, "rows" | "wrap" | "minLength" | "maxLength"> {
|
|
153
|
-
fieldComponent: "TEXT_AREA";
|
|
154
|
-
}
|
|
169
|
+
export interface TextAreaFieldProps extends BaseFormFieldProps<string>, Pick<React.TextareaHTMLAttributes<HTMLTextAreaElement>, "rows" | "wrap" | "minLength" | "maxLength"> {}
|
|
155
170
|
export interface TextInputFieldProps extends BaseFormFieldProps<string>, Pick<React.InputHTMLAttributes<HTMLInputElement>, "minLength" | "maxLength"> {
|
|
156
|
-
fieldComponent: "TEXT_INPUT";
|
|
157
171
|
placeholder?: string;
|
|
158
172
|
}
|
|
159
173
|
/**
|
|
160
174
|
* Number input field props
|
|
161
175
|
*/
|
|
162
|
-
export interface NumberInputFieldProps extends BaseFormFieldProps<number>, Pick<React.InputHTMLAttributes<HTMLInputElement>, "min" | "max" | "step"> {
|
|
163
|
-
fieldComponent: "NUMBER_INPUT";
|
|
164
|
-
}
|
|
176
|
+
export interface NumberInputFieldProps extends BaseFormFieldProps<number>, Pick<React.InputHTMLAttributes<HTMLInputElement>, "min" | "max" | "step"> {}
|
|
165
177
|
/**
|
|
166
178
|
* Radio buttons field props
|
|
167
179
|
*/
|
|
168
180
|
export interface RadioButtonsFieldProps<V> extends BaseFormFieldProps<V> {
|
|
169
|
-
fieldComponent: "RADIO_BUTTONS";
|
|
170
181
|
/**
|
|
171
182
|
* Available options for radio buttons
|
|
172
183
|
*/
|
|
173
184
|
options: Option<V>[];
|
|
174
185
|
}
|
|
175
186
|
/**
|
|
176
|
-
* Option interface for
|
|
187
|
+
* Option interface for radio button options
|
|
177
188
|
*/
|
|
178
189
|
export interface Option<V> {
|
|
179
190
|
label: string;
|
|
@@ -182,14 +193,11 @@ export interface Option<V> {
|
|
|
182
193
|
/**
|
|
183
194
|
* Object set field displays the summary of the count of the given object set
|
|
184
195
|
*/
|
|
185
|
-
export interface ObjectSetFieldProps<T extends ObjectTypeDefinition> extends BaseFormFieldProps<ObjectSet<T>> {
|
|
186
|
-
fieldComponent: "OBJECT_SET";
|
|
187
|
-
}
|
|
196
|
+
export interface ObjectSetFieldProps<T extends ObjectTypeDefinition> extends BaseFormFieldProps<ObjectSet<T>> {}
|
|
188
197
|
/**
|
|
189
198
|
* Custom field props for user-defined renderers
|
|
190
199
|
*/
|
|
191
200
|
export interface CustomFieldProps<V> extends BaseFormFieldProps<V> {
|
|
192
|
-
fieldComponent: "CUSTOM";
|
|
193
201
|
/**
|
|
194
202
|
* Custom renderer function
|
|
195
203
|
*/
|
|
@@ -199,7 +207,7 @@ export interface BaseFormFieldProps<V> {
|
|
|
199
207
|
/**
|
|
200
208
|
* The value of the form field
|
|
201
209
|
*/
|
|
202
|
-
value: V;
|
|
210
|
+
value: V | null;
|
|
203
211
|
/**
|
|
204
212
|
* Called when the field value changes.
|
|
205
213
|
*
|
|
@@ -213,7 +221,7 @@ export interface BaseFormFieldProps<V> {
|
|
|
213
221
|
*
|
|
214
222
|
* @param value The new value of the form field
|
|
215
223
|
*/
|
|
216
|
-
onChange?: (value
|
|
224
|
+
onChange?: (value: V | null) => void;
|
|
217
225
|
}
|
|
218
226
|
export type FieldKey<Q extends ActionDefinition<unknown>> = keyof ActionParameters<Q>;
|
|
219
227
|
/**
|
|
@@ -261,19 +269,22 @@ export type FieldType = "boolean" | "string" | "integer" | "long" | "double" | "
|
|
|
261
269
|
* An OSDK-agnostic field definition used by BaseForm and FormFieldRenderer.
|
|
262
270
|
* Contains only the information needed to render a single field — no generics,
|
|
263
271
|
* no compile-time parameter constraints.
|
|
272
|
+
*
|
|
273
|
+
* Implemented as a distributed mapped type: switching on `fieldComponent`
|
|
274
|
+
* narrows `fieldComponentProps` to the correct props type automatically.
|
|
264
275
|
*/
|
|
265
|
-
export
|
|
266
|
-
fieldKey: string
|
|
267
|
-
fieldComponent:
|
|
268
|
-
fieldType?: FieldType
|
|
269
|
-
label?: string
|
|
270
|
-
defaultValue?: unknown
|
|
271
|
-
isRequired?: boolean
|
|
272
|
-
placeholder?: string
|
|
273
|
-
helperText?: string
|
|
274
|
-
helperTextPlacement?: "bottom" | "tooltip"
|
|
275
|
-
fieldComponentProps?:
|
|
276
|
-
}
|
|
276
|
+
export type RendererFieldDefinition = { [K in FieldComponent] : {
|
|
277
|
+
fieldKey: string
|
|
278
|
+
fieldComponent: K
|
|
279
|
+
fieldType?: FieldType
|
|
280
|
+
label?: string
|
|
281
|
+
defaultValue?: unknown
|
|
282
|
+
isRequired?: boolean
|
|
283
|
+
placeholder?: string
|
|
284
|
+
helperText?: string
|
|
285
|
+
helperTextPlacement?: "bottom" | "tooltip"
|
|
286
|
+
fieldComponentProps?: Omit<FormFieldPropsByType[K], "value" | "onChange">
|
|
287
|
+
} }[FieldComponent];
|
|
277
288
|
/**
|
|
278
289
|
* Gets valid form field types for a given property type
|
|
279
290
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAgBA,cACE,kBACA,gBACA,aACA,qBACA,uBACA,WACA,4BACK,WAAY;AACnB,YAAY,WAAW,OAAQ;;;;AAK/B,iBAAiB;CACf,UAAU;CACV,UAAU,SAAS,KAAK,SAAS;EACjC;;;;CAIA,UAAU;;;;;CAMV;;;;CAKA,eAAe,eAAe,GAAG;;;;CAKjC,gBAAgB,8BAA8B,oBAAoB,GAAG;;;;CAKrE;;;;CAKA;;;;;CAMA;;;;;;CAOA,sBAAsB,WAAW;;;;CAKjC;;;;;;;CAQA,qBAAqBA,OAAO;;;;;;;CAQ5B,YAAYC,OAAO,eAAe,GAAG,OAAO;;;;;CAM5C,sBAAsB,KACpB,qBACE,
|
|
1
|
+
{"mappings":"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","names":["error: ValidationError","value: FieldValueType<Q, K>","date: Date","item: V","a: V","b: V","props: BaseFormFieldProps<V>","value: V | null"],"sources":["../../../src/action-form/FormFieldApi.ts"],"version":3,"file":"FormFieldApi.d.ts"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import type { DropdownFieldProps } from "../FormFieldApi.js";
|
|
3
|
+
export declare function DropdownField<
|
|
4
|
+
V,
|
|
5
|
+
Multiple extends boolean = false
|
|
6
|
+
>({ isSearchable, itemToStringLabel, itemToKey,...rest }: DropdownFieldProps<V, Multiple>): React.ReactElement;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"mappings":"AAgBA,OAAO,WAA4B,OAAQ;AAI3C,cAAc,0BAA0B,oBAAqB;AAS7D,OAAO,iBAAS;CAAc;CAAG,2BAA2B;EAAO,EACjE,cACA,mBACA,UACA,GAAG,MAC6B,EAA/B,mBAAmB,GAAG,YAAY,MAAM","names":[],"sources":["../../../../src/action-form/fields/DropdownField.tsx"],"version":3,"file":"DropdownField.d.ts"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAgBA,OAAO,WAAqB,OAAQ;AACpC,cAAc,+BAA+B,oBAAqB;
|
|
1
|
+
{"mappings":"AAgBA,OAAO,WAAqB,OAAQ;AACpC,cAAc,+BAA+B,oBAAqB;AAMlE,iBAAiB,uBAAuB;CACtC,iBAAiB;CACjB;CACA,qBAAqBA;AACtB;AAED,OAAO,cAAMC,mBAAmB,MAAM,GAAG","names":["value: unknown","FormFieldRenderer: React.FC<FormFieldRendererProps>"],"sources":["../../../../src/action-form/fields/FormFieldRenderer.tsx"],"version":3,"file":"FormFieldRenderer.d.ts"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import type { TextInputFieldProps } from "../FormFieldApi.js";
|
|
3
|
-
export declare function TextInputField({ value, onChange, placeholder, minLength, maxLength }: TextInputFieldProps
|
|
3
|
+
export declare function TextInputField({ id, value, onChange, placeholder, minLength, maxLength }: TextInputFieldProps & {
|
|
4
|
+
id?: string
|
|
5
|
+
}): React.ReactElement;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"
|
|
1
|
+
{"mappings":"AAiBA,OAAO,WAAW,OAAQ;AAC1B,cAAc,2BAA2B,oBAAqB;AAE9D,OAAO,iBAAS,eAAe,EAC7B,IACA,OACA,UACA,aACA,WACA,WACsC,EAArC,sBAAsB;CAAE;AAAa,IAAG,MAAM","names":[],"sources":["../../../../src/action-form/fields/TextInputField.tsx"],"version":3,"file":"TextInputField.d.ts"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { Combobox as BaseUICombobox, type ComboboxChipProps, type ComboboxChipRemoveProps, type ComboboxClearProps, type ComboboxInputProps, type ComboboxItemProps, type ComboboxPopupProps, type ComboboxPositionerProps } from "@base-ui/react/combobox";
|
|
1
|
+
import { Combobox as BaseUICombobox, type ComboboxChipProps, type ComboboxChipRemoveProps, type ComboboxClearProps, type ComboboxInputProps, type ComboboxItemProps, type ComboboxListProps, type ComboboxPopupProps, type ComboboxPositionerProps } from "@base-ui/react/combobox";
|
|
2
2
|
import React from "react";
|
|
3
3
|
interface ComboboxInputComponentProps extends Omit<ComboboxInputProps, "className"> {
|
|
4
4
|
className?: string;
|
|
5
5
|
}
|
|
6
|
+
declare function ComboboxSearchInput({ className,...rest }: ComboboxInputComponentProps): React.ReactElement;
|
|
6
7
|
declare function ComboboxInput({ className,...rest }: ComboboxInputComponentProps): React.ReactElement;
|
|
7
8
|
interface ComboboxPositionerComponentProps extends Omit<ComboboxPositionerProps, "className"> {
|
|
8
9
|
className?: string;
|
|
@@ -36,17 +37,24 @@ declare function ComboboxEmpty({ children, className }: {
|
|
|
36
37
|
children: React.ReactNode
|
|
37
38
|
className?: string
|
|
38
39
|
}): React.ReactElement;
|
|
40
|
+
interface ComboboxListComponentProps extends Omit<ComboboxListProps, "className"> {
|
|
41
|
+
className?: string;
|
|
42
|
+
}
|
|
43
|
+
declare function ComboboxList({ className, children,...rest }: ComboboxListComponentProps): React.ReactElement;
|
|
39
44
|
export declare const Combobox: {
|
|
40
45
|
Root: typeof BaseUICombobox.Root
|
|
46
|
+
SearchInput: typeof ComboboxSearchInput
|
|
41
47
|
Input: typeof ComboboxInput
|
|
42
48
|
Portal: typeof BaseUICombobox.Portal
|
|
43
49
|
Positioner: typeof ComboboxPositioner
|
|
44
50
|
Popup: typeof ComboboxPopup
|
|
51
|
+
List: typeof ComboboxList
|
|
45
52
|
Item: typeof ComboboxItem
|
|
46
53
|
Chips: typeof ComboboxChips
|
|
47
54
|
Chip: typeof ComboboxChip
|
|
48
55
|
ChipRemove: typeof ComboboxChipRemove
|
|
49
56
|
Clear: typeof ComboboxClear
|
|
50
57
|
Empty: typeof ComboboxEmpty
|
|
58
|
+
Value: typeof BaseUICombobox.Value
|
|
51
59
|
};
|
|
52
60
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAgBA,SACE,YAAY,qBACP,wBACA,8BACA,yBACA,yBACA,wBACA,yBACA,+BACA,yBAA0B;AAGjC,OAAO,WAAW,OAAQ;UAGhB,oCACA,KAAK,oBAAoB,aACnC;CACE;AACD;AAED,iBAAS,cAAc,EACrB,UACA,GAAG,MACyB,EAA3B,8BAA8B,MAAM;
|
|
1
|
+
{"mappings":"AAgBA,SACE,YAAY,qBACP,wBACA,8BACA,yBACA,yBACA,wBACA,wBACA,yBACA,+BACA,yBAA0B;AAGjC,OAAO,WAAW,OAAQ;UAGhB,oCACA,KAAK,oBAAoB,aACnC;CACE;AACD;AAED,iBAAS,oBAAoB,EAC3B,UACA,GAAG,MACyB,EAA3B,8BAA8B,MAAM;AASvC,iBAAS,cAAc,EACrB,UACA,GAAG,MACyB,EAA3B,8BAA8B,MAAM;UAS7B,yCACA,KAAK,yBAAyB,aACxC;CACE;AACD;AAED,iBAAS,mBAAmB,EAC1B,WACA,SACA,GAAG,MAC8B,EAAhC,mCAAmC,MAAM;UAYlC,oCACA,KAAK,oBAAoB,aACnC;CACE;AACD;AAED,iBAAS,cAAc,EACrB,WACA,SACA,GAAG,MACyB,EAA3B,8BAA8B,MAAM;UAW7B,mCACA,KAAK,mBAAmB,aAClC;CACE;AACD;AAED,iBAAS,aAAa,EACpB,WACA,SACA,GAAG,MACwB,EAA1B,6BAA6B,MAAM;AAWtC,iBAAS,cAAc,EACrB,UACA,WAID,EAHE;CACD,UAAU,MAAM;CAChB;AACD,IAAG,MAAM;UAiBA,mCACA,KAAK,mBAAmB,aAClC;CACE;AACD;AAED,iBAAS,aAAa,EACpB,WACA,SACA,GAAG,MACwB,EAA1B,6BAA6B,MAAM;UAW5B,yCACA,KAAK,yBAAyB,aACxC;CACE;AACD;AAED,iBAAS,mBAAmB,EAC1B,UACA,GAAG,MAC8B,EAAhC,mCAAmC,MAAM;UAYlC,oCACA,KAAK,oBAAoB,aACnC;CACE;AACD;AAED,iBAAS,cAAc,EACrB,UACA,GAAG,MACyB,EAA3B,8BAA8B,MAAM;AAYvC,iBAAS,cAAc,EACrB,UACA,WAID,EAHE;CACD,UAAU,MAAM;CAChB;AACD,IAAG,MAAM;UAUA,mCACA,KAAK,mBAAmB,aAClC;CACE;AACD;AAED,iBAAS,aAAa,EACpB,WACA,SACA,GAAG,MACwB,EAA1B,6BAA6B,MAAM;AAWtC,OAAO,cAAMA,UAAU;CACrB,aAAa,eAAe;CAC5B,oBAAoB;CACpB,cAAc;CACd,eAAe,eAAe;CAC9B,mBAAmB;CACnB,cAAc;CACd,aAAa;CACb,aAAa;CACb,cAAc;CACd,aAAa;CACb,mBAAmB;CACnB,cAAc;CACd,cAAc;CACd,cAAc,eAAe;AAC9B","names":["Combobox: {\n Root: typeof BaseUICombobox.Root;\n SearchInput: typeof ComboboxSearchInput;\n Input: typeof ComboboxInput;\n Portal: typeof BaseUICombobox.Portal;\n Positioner: typeof ComboboxPositioner;\n Popup: typeof ComboboxPopup;\n List: typeof ComboboxList;\n Item: typeof ComboboxItem;\n Chips: typeof ComboboxChips;\n Chip: typeof ComboboxChip;\n ChipRemove: typeof ComboboxChipRemove;\n Clear: typeof ComboboxClear;\n Empty: typeof ComboboxEmpty;\n Value: typeof BaseUICombobox.Value;\n}"],"sources":["../../../../src/base-components/combobox/Combobox.tsx"],"version":3,"file":"Combobox.d.ts"}
|
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
import { Select as BaseUISelect, type SelectItemProps, type SelectPopupProps, type SelectPositionerProps, type SelectRootProps, type SelectTriggerProps, type SelectValueProps } from "@base-ui/react/select";
|
|
2
2
|
import React from "react";
|
|
3
|
-
export interface SelectProps<
|
|
4
|
-
|
|
3
|
+
export interface SelectProps<
|
|
4
|
+
Value,
|
|
5
|
+
Multiple extends boolean = false
|
|
6
|
+
> extends Omit<SelectRootProps<Value, Multiple>, "className"> {}
|
|
7
|
+
declare function SelectRoot<
|
|
8
|
+
Value,
|
|
9
|
+
Multiple extends boolean = false
|
|
10
|
+
>({ children,...rest }: SelectProps<Value, Multiple>): React.ReactElement;
|
|
5
11
|
interface SelectTriggerComponentProps extends Omit<SelectTriggerProps, "className"> {
|
|
6
12
|
className?: string;
|
|
7
13
|
placeholder?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAgBA,SACE,UAAU,mBACL,sBACA,uBACA,4BACA,sBACA,yBACA,wBACA,uBAAwB;AAG/B,OAAO,WAAW,OAAQ;AAG1B,iBAAiB,
|
|
1
|
+
{"mappings":"AAgBA,SACE,UAAU,mBACL,sBACA,uBACA,4BACA,sBACA,yBACA,wBACA,uBAAwB;AAG/B,OAAO,WAAW,OAAQ;AAG1B,iBAAiB;CAAY;CAAO,2BAA2B;UACrD,KAAK,gBAAgB,OAAO,WAAW,aACjD,CAAE;AAEF,iBAAS;CAAW;CAAO,2BAA2B;EAAO,EAC3D,SACA,GAAG,MAC0B,EAA5B,YAAY,OAAO,YAAY,MAAM;UAM9B,oCACA,KAAK,oBAAoB,aACnC;CACE;CACA;AACD;AAED,iBAAS,cAAc,EACrB,WACA,aACA,SACA,GAAG,MACyB,EAA3B,8BAA8B,MAAM;AAyBvC,iBAAS,YACPA,OAAO,KAAK,kBAAkB,eAAe;CAAE;AAAoB,IAClE,MAAM;UAUC,uCACA,KAAK,uBAAuB,aACtC;CACE;AACD;AAED,iBAAS,iBAAiB,EACxB,WACA,SACA,GAAG,MAC4B,EAA9B,iCAAiC,MAAM;UAYhC,kCACA,KAAK,kBAAkB,aACjC;CACE;AACD;AAED,iBAAS,YAAY,EACnB,WACA,SACA,GAAG,MACuB,EAAzB,4BAA4B,MAAM;UAW3B,iCAAiC,KAAK,iBAAiB,aAAa;CAC5E;AACD;AAED,iBAAS,WAAW,EAClB,WACA,SACA,GAAG,MACsB,EAAxB,2BAA2B,MAAM;AAWpC,OAAO,cAAMC,QAAQ;CACnB,aAAa;CACb,gBAAgB;CAChB,cAAc;CACd,eAAe,aAAa;CAC5B,mBAAmB;CACnB,cAAc;CACd,aAAa;AACd","names":["props: Omit<SelectValueProps, \"className\"> & { className?: string }","Select: {\n Root: typeof SelectRoot;\n Trigger: typeof SelectTrigger;\n Value: typeof SelectValue;\n Portal: typeof BaseUISelect.Portal;\n Positioner: typeof SelectPositioner;\n Popup: typeof SelectPopup;\n Item: typeof SelectItem;\n}"],"sources":["../../../../src/base-components/select/Select.tsx"],"version":3,"file":"Select.d.ts"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
interface SkeletonBarProps {
|
|
3
|
+
width?: string | number;
|
|
4
|
+
height?: string | number;
|
|
5
|
+
maxWidth?: string | number;
|
|
6
|
+
className?: string;
|
|
7
|
+
}
|
|
8
|
+
export declare function SkeletonBar({ width, height, maxWidth, className }: SkeletonBarProps): React.ReactElement;
|
|
9
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"mappings":"AAiBA,OAAO,WAAW,OAAQ;UAGhB,iBAAiB;CACzB;CACA;CACA;CACA;AACD;AAED,OAAO,iBAAS,YAAY,EAC1B,OACA,QACA,UACA,WACiB,EAAhB,mBAAmB,MAAM","names":[],"sources":["../../../../src/base-components/skeleton/SkeletonBar.tsx"],"version":3,"file":"SkeletonBar.d.ts"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAgBA,cAAc,4BAAyC,WAAY;AACnE,OAAO,WAAqC,OAAQ;
|
|
1
|
+
{"mappings":"AAgBA,cAAc,4BAAyC,WAAY;AACnE,OAAO,WAAqC,OAAQ;AAKpD,cAEE,uBACK,oBAAqB;AAM5B,OAAO,iBAAS,WAAW,UAAU,sBACnCA,OAAO,gBAAgB,KACtB,MAAM","names":["props: FilterListProps<Q>"],"sources":["../../../src/filter-list/FilterList.tsx"],"version":3,"file":"FilterList.d.ts"}
|
|
@@ -72,16 +72,33 @@ export interface FilterListProps<Q extends ObjectTypeDefinition> {
|
|
|
72
72
|
*/
|
|
73
73
|
onFilterStateChanged?: (definition: FilterDefinitionUnion<Q>, newState: FilterStateType) => void;
|
|
74
74
|
/**
|
|
75
|
-
*
|
|
76
|
-
*
|
|
75
|
+
* Controls how filter visibility (add/remove) is managed.
|
|
76
|
+
*
|
|
77
|
+
* - `"controlled"` (default): The consumer manages which filters are
|
|
78
|
+
* visible via `filterDefinitions`. Filters with `isVisible: false` are
|
|
79
|
+
* excluded from the rendered list.
|
|
80
|
+
* - `"uncontrolled"`: FilterList manages visibility internally. An "Add
|
|
81
|
+
* filter" popover is rendered for filters with `isVisible: false`, and
|
|
82
|
+
* each visible filter shows a remove button.
|
|
83
|
+
*
|
|
84
|
+
* @default "controlled"
|
|
85
|
+
*/
|
|
86
|
+
addFilterMode?: "controlled" | "uncontrolled";
|
|
87
|
+
/**
|
|
88
|
+
* Called when a filter is added (shown).
|
|
89
|
+
*
|
|
90
|
+
* In uncontrolled mode, this fires when a user selects a hidden filter
|
|
91
|
+
* from the "Add filter" popover.
|
|
77
92
|
*
|
|
78
93
|
* @param filterKey The key of the added filter
|
|
79
|
-
* @param newDefinitions The filter
|
|
94
|
+
* @param newDefinitions The current filter definitions array
|
|
80
95
|
*/
|
|
81
96
|
onFilterAdded?: (filterKey: FilterKey<Q>, newDefinitions: Array<FilterDefinitionUnion<Q>>) => void;
|
|
82
97
|
/**
|
|
83
|
-
* Called when a filter is removed
|
|
84
|
-
*
|
|
98
|
+
* Called when a filter is removed (hidden).
|
|
99
|
+
*
|
|
100
|
+
* In uncontrolled mode, this fires as a notification after the filter
|
|
101
|
+
* is hidden internally.
|
|
85
102
|
*
|
|
86
103
|
* @param filterKey The key of the removed filter
|
|
87
104
|
*/
|
|
@@ -125,7 +142,8 @@ export interface FilterListProps<Q extends ObjectTypeDefinition> {
|
|
|
125
142
|
className?: string;
|
|
126
143
|
/**
|
|
127
144
|
* Custom render function for the "Add filter" button.
|
|
128
|
-
*
|
|
145
|
+
* Only used in controlled mode. In uncontrolled mode, the built-in
|
|
146
|
+
* AddFilterPopover is rendered automatically.
|
|
129
147
|
*/
|
|
130
148
|
renderAddFilterButton?: () => React.ReactNode;
|
|
131
149
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"AAgBA,cACE,WACA,WACA,sBACA,mBACK,WAAY;AACnB,YAAY,WAAW,OAAQ;AAC/B,cACE,eAAe,iBACf,gCACK,wBAAyB;AAChC,cAAc,8BAA8B,gCAAiC;AAC7E,cAAc,qCAAqC,+BAAgC;AACnF,cACE,yBACA,sCACK,8BAA+B;;;;AAKtC,YAAY,sBAAsB,UAAU,wBACxC,yBAAyB,KACzB,wBAAwB,KACxB,+BAA+B,GAAG,UAAU,MAC5C,8BAA8B,KAC9B,uBAAuB;;;;AAK3B,YAAY,UAAU,UAAU,wBAC9B,sBAAsB,iBAAiB,IAAI,UAAU;CAAE,WAAW;AAAG,IAAG,IACpE,UAAU;CAAE,gBAAgB;AAAG,IAAG;;;;AAOxC,YAAY,YAAY,UAAU,wBAChC,sBAAsB,iBAAiB,IACnC,UAAU;CAAE,mBAAmB;AAAG,IAAG;;;;;AAQ3C,YAAY,gBAAgB,UAAU,wBAAwB,IAC5D,sBAAsB,IACtB;AAGF,iBAAiB,gBAAgB,UAAU,sBAAsB;;;;CAI/D,WAAW,UAAU;;;;CAKrB;;;;CAKA,YAAY,MAAM;;;;;CAMlB,oBAAoB,MAAM,sBAAsB;;;;;CAMhD,eAAe,YAAY;;;;;;;;CAS3B,yBAAyBA,WAAW,YAAY;;;;;;CAOhD,iBAAiB,QAAQ;;;;;;;CAQzB,wBACEC,YAAY,sBAAsB,IAClCC,UAAU
|
|
1
|
+
{"mappings":"AAgBA,cACE,WACA,WACA,sBACA,mBACK,WAAY;AACnB,YAAY,WAAW,OAAQ;AAC/B,cACE,eAAe,iBACf,gCACK,wBAAyB;AAChC,cAAc,8BAA8B,gCAAiC;AAC7E,cAAc,qCAAqC,+BAAgC;AACnF,cACE,yBACA,sCACK,8BAA+B;;;;AAKtC,YAAY,sBAAsB,UAAU,wBACxC,yBAAyB,KACzB,wBAAwB,KACxB,+BAA+B,GAAG,UAAU,MAC5C,8BAA8B,KAC9B,uBAAuB;;;;AAK3B,YAAY,UAAU,UAAU,wBAC9B,sBAAsB,iBAAiB,IAAI,UAAU;CAAE,WAAW;AAAG,IAAG,IACpE,UAAU;CAAE,gBAAgB;AAAG,IAAG;;;;AAOxC,YAAY,YAAY,UAAU,wBAChC,sBAAsB,iBAAiB,IACnC,UAAU;CAAE,mBAAmB;AAAG,IAAG;;;;;AAQ3C,YAAY,gBAAgB,UAAU,wBAAwB,IAC5D,sBAAsB,IACtB;AAGF,iBAAiB,gBAAgB,UAAU,sBAAsB;;;;CAI/D,WAAW,UAAU;;;;CAKrB;;;;CAKA,YAAY,MAAM;;;;;CAMlB,oBAAoB,MAAM,sBAAsB;;;;;CAMhD,eAAe,YAAY;;;;;;;;CAS3B,yBAAyBA,WAAW,YAAY;;;;;;CAOhD,iBAAiB,QAAQ;;;;;;;CAQzB,wBACEC,YAAY,sBAAsB,IAClCC,UAAU;;;;;;;;;;;;;CAeZ,gBAAgB,eAAe;;;;;;;;;;CAW/B,iBACEC,WAAW,UAAU,IACrBC,gBAAgB,MAAM,sBAAsB;;;;;;;;;CAW9C,mBAAmBD,WAAW,UAAU;;;;;;;CAQxC;;;;CAKA;;;;CAKA,qBAAqBE;;;;;;CAOrB,sBAAsB,YAAY;;;;CAKlC;;;;CAKA;;;;CAKA;;;;CAKA;;;;;;CAOA,8BAA8B,MAAM;AACrC","names":["newClause: WhereClause<Q>","definition: FilterDefinitionUnion<Q>","newState: FilterStateType","filterKey: FilterKey<Q>","newDefinitions: Array<FilterDefinitionUnion<Q>>","collapsed: boolean"],"sources":["../../../src/filter-list/FilterListApi.ts"],"version":3,"file":"FilterListApi.d.ts"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
interface HiddenFilterItem {
|
|
3
|
+
key: string;
|
|
4
|
+
label: string;
|
|
5
|
+
}
|
|
6
|
+
interface AddFilterPopoverProps {
|
|
7
|
+
hiddenDefinitions: Array<HiddenFilterItem>;
|
|
8
|
+
onShowFilter: (key: string) => void;
|
|
9
|
+
}
|
|
10
|
+
declare function AddFilterPopoverInner({ hiddenDefinitions, onShowFilter }: AddFilterPopoverProps): React.ReactElement;
|
|
11
|
+
export declare const AddFilterPopover: React.MemoExoticComponent<typeof AddFilterPopoverInner>;
|
|
12
|
+
export {};
|