@firecms/core 3.0.0-3.0.0-beta.4.pre.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (503) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +174 -0
  3. package/dist/components/ArrayContainer.d.ts +40 -0
  4. package/dist/components/CircularProgressCenter.d.ts +11 -0
  5. package/dist/components/DeleteConfirmationDialog.d.ts +9 -0
  6. package/dist/components/DeleteEntityDialog.d.ts +12 -0
  7. package/dist/components/EntityCollectionTable/EntityCollectionRowActions.d.ts +31 -0
  8. package/dist/components/EntityCollectionTable/EntityCollectionTable.d.ts +27 -0
  9. package/dist/components/EntityCollectionTable/EntityCollectionTableProps.d.ts +99 -0
  10. package/dist/components/EntityCollectionTable/PropertyTableCell.d.ts +18 -0
  11. package/dist/components/EntityCollectionTable/column_utils.d.ts +16 -0
  12. package/dist/components/EntityCollectionTable/fields/TableReferenceField.d.ts +19 -0
  13. package/dist/components/EntityCollectionTable/fields/TableStorageUpload.d.ts +33 -0
  14. package/dist/components/EntityCollectionTable/index.d.ts +6 -0
  15. package/dist/components/EntityCollectionTable/internal/CollectionTableToolbar.d.ts +18 -0
  16. package/dist/components/EntityCollectionTable/internal/EntityTableCell.d.ts +26 -0
  17. package/dist/components/EntityCollectionTable/internal/EntityTableCellActions.d.ts +9 -0
  18. package/dist/components/EntityCollectionTable/internal/common.d.ts +4 -0
  19. package/dist/components/EntityCollectionTable/internal/default_entity_actions.d.ts +6 -0
  20. package/dist/components/EntityCollectionTable/internal/popup_field/ElementResizeListener.d.ts +5 -0
  21. package/dist/components/EntityCollectionTable/internal/popup_field/PopupFormField.d.ts +23 -0
  22. package/dist/components/EntityCollectionTable/internal/popup_field/useDraggable.d.ts +13 -0
  23. package/dist/components/EntityCollectionTable/internal/popup_field/useWindowSize.d.ts +6 -0
  24. package/dist/components/EntityCollectionView/EntityCollectionView.d.ts +36 -0
  25. package/dist/components/EntityCollectionView/EntityCollectionViewActions.d.ts +14 -0
  26. package/dist/components/EntityCollectionView/useSelectionController.d.ts +2 -0
  27. package/dist/components/EntityPreview.d.ts +29 -0
  28. package/dist/components/EntityView.d.ts +11 -0
  29. package/dist/components/ErrorBoundary.d.ts +11 -0
  30. package/dist/components/ErrorTooltip.d.ts +2 -0
  31. package/dist/components/ErrorView.d.ts +19 -0
  32. package/dist/components/FieldCaption.d.ts +4 -0
  33. package/dist/components/FireCMSAppBar.d.ts +26 -0
  34. package/dist/components/FireCMSLogo.d.ts +7 -0
  35. package/dist/components/HomePage/DefaultHomePage.d.ts +21 -0
  36. package/dist/components/HomePage/FavouritesView.d.ts +3 -0
  37. package/dist/components/HomePage/NavigationCard.d.ts +8 -0
  38. package/dist/components/HomePage/NavigationCardBinding.d.ts +17 -0
  39. package/dist/components/HomePage/NavigationGroup.d.ts +4 -0
  40. package/dist/components/HomePage/SmallNavigationCard.d.ts +6 -0
  41. package/dist/components/HomePage/index.d.ts +5 -0
  42. package/dist/components/NotFoundPage.d.ts +1 -0
  43. package/dist/components/PropertyConfigBadge.d.ts +4 -0
  44. package/dist/components/PropertyIdCopyTooltipContent.d.ts +3 -0
  45. package/dist/components/ReferenceTable/ReferenceSelectionTable.d.ts +58 -0
  46. package/dist/components/ReferenceWidget.d.ts +28 -0
  47. package/dist/components/SearchIconsView.d.ts +5 -0
  48. package/dist/components/SelectableTable/SelectableTable.d.ts +75 -0
  49. package/dist/components/SelectableTable/SelectableTableContext.d.ts +4 -0
  50. package/dist/components/SelectableTable/filters/BooleanFilterField.d.ts +9 -0
  51. package/dist/components/SelectableTable/filters/DateTimeFilterField.d.ts +11 -0
  52. package/dist/components/SelectableTable/filters/ReferenceFilterField.d.ts +14 -0
  53. package/dist/components/SelectableTable/filters/StringNumberFilterField.d.ts +13 -0
  54. package/dist/components/VirtualTable/VirtualTable.d.ts +11 -0
  55. package/dist/components/VirtualTable/VirtualTableCell.d.ts +14 -0
  56. package/dist/components/VirtualTable/VirtualTableHeader.d.ts +27 -0
  57. package/dist/components/VirtualTable/VirtualTableHeaderRow.d.ts +2 -0
  58. package/dist/components/VirtualTable/VirtualTableProps.d.ts +214 -0
  59. package/dist/components/VirtualTable/VirtualTableRow.d.ts +3 -0
  60. package/dist/components/VirtualTable/common.d.ts +2 -0
  61. package/dist/components/VirtualTable/fields/VirtualTableDateField.d.ts +11 -0
  62. package/dist/components/VirtualTable/fields/VirtualTableInput.d.ts +8 -0
  63. package/dist/components/VirtualTable/fields/VirtualTableNumberInput.d.ts +8 -0
  64. package/dist/components/VirtualTable/fields/VirtualTableSelect.d.ts +15 -0
  65. package/dist/components/VirtualTable/fields/VirtualTableSwitch.d.ts +7 -0
  66. package/dist/components/VirtualTable/index.d.ts +2 -0
  67. package/dist/components/VirtualTable/types.d.ts +34 -0
  68. package/dist/components/common/index.d.ts +5 -0
  69. package/dist/components/common/types.d.ts +60 -0
  70. package/dist/components/common/useColumnsIds.d.ts +4 -0
  71. package/dist/components/common/useDataSourceEntityCollectionTableController.d.ts +32 -0
  72. package/dist/components/common/useDebouncedData.d.ts +9 -0
  73. package/dist/components/common/useTableSearchHelper.d.ts +12 -0
  74. package/dist/components/index.d.ts +25 -0
  75. package/dist/contexts/AnalyticsContext.d.ts +3 -0
  76. package/dist/contexts/AuthControllerContext.d.ts +3 -0
  77. package/dist/contexts/CustomizationControllerContext.d.ts +3 -0
  78. package/dist/contexts/DataSourceContext.d.ts +3 -0
  79. package/dist/contexts/DialogsProvider.d.ts +4 -0
  80. package/dist/contexts/ModeController.d.ts +4 -0
  81. package/dist/contexts/NavigationContext.d.ts +3 -0
  82. package/dist/contexts/SideDialogsControllerContext.d.ts +3 -0
  83. package/dist/contexts/SideEntityControllerContext.d.ts +3 -0
  84. package/dist/contexts/SnackbarProvider.d.ts +2 -0
  85. package/dist/contexts/StorageSourceContext.d.ts +3 -0
  86. package/dist/contexts/UserConfigurationPersistenceContext.d.ts +3 -0
  87. package/dist/contexts/index.d.ts +3 -0
  88. package/dist/core/Drawer.d.ts +23 -0
  89. package/dist/core/EntityEditView.d.ts +22 -0
  90. package/dist/core/EntitySidePanel.d.ts +10 -0
  91. package/dist/core/FireCMS.d.ts +14 -0
  92. package/dist/core/NavigationRoutes.d.ts +21 -0
  93. package/dist/core/Scaffold.d.ts +55 -0
  94. package/dist/core/SideDialogs.d.ts +23 -0
  95. package/dist/core/SideEntityView.d.ts +7 -0
  96. package/dist/core/field_configs.d.ts +7 -0
  97. package/dist/core/index.d.ts +8 -0
  98. package/dist/form/EntityForm.d.ts +77 -0
  99. package/dist/form/PropertyFieldBinding.d.ts +30 -0
  100. package/dist/form/components/CustomIdField.d.ts +10 -0
  101. package/dist/form/components/ErrorFocus.d.ts +4 -0
  102. package/dist/form/components/FieldHelperText.d.ts +12 -0
  103. package/dist/form/components/FormikArrayContainer.d.ts +18 -0
  104. package/dist/form/components/LabelWithIcon.d.ts +14 -0
  105. package/dist/form/components/StorageItemPreview.d.ts +14 -0
  106. package/dist/form/components/StorageUploadProgress.d.ts +10 -0
  107. package/dist/form/components/index.d.ts +3 -0
  108. package/dist/form/field_bindings/ArrayCustomShapedFieldBinding.d.ts +9 -0
  109. package/dist/form/field_bindings/ArrayOfReferencesFieldBinding.d.ts +11 -0
  110. package/dist/form/field_bindings/BlockFieldBinding.d.ts +10 -0
  111. package/dist/form/field_bindings/DateTimeFieldBinding.d.ts +11 -0
  112. package/dist/form/field_bindings/KeyValueFieldBinding.d.ts +7 -0
  113. package/dist/form/field_bindings/MapFieldBinding.d.ts +9 -0
  114. package/dist/form/field_bindings/MarkdownFieldBinding.d.ts +9 -0
  115. package/dist/form/field_bindings/MultiSelectBinding.d.ts +9 -0
  116. package/dist/form/field_bindings/ReadOnlyFieldBinding.d.ts +10 -0
  117. package/dist/form/field_bindings/ReferenceFieldBinding.d.ts +9 -0
  118. package/dist/form/field_bindings/RepeatFieldBinding.d.ts +10 -0
  119. package/dist/form/field_bindings/SelectFieldBinding.d.ts +12 -0
  120. package/dist/form/field_bindings/StorageUploadFieldBinding.d.ts +29 -0
  121. package/dist/form/field_bindings/SwitchFieldBinding.d.ts +12 -0
  122. package/dist/form/field_bindings/TextFieldBinding.d.ts +12 -0
  123. package/dist/form/index.d.ts +21 -0
  124. package/dist/form/useClearRestoreValue.d.ts +13 -0
  125. package/dist/form/validation.d.ts +25 -0
  126. package/dist/hooks/data/delete.d.ts +37 -0
  127. package/dist/hooks/data/save.d.ts +42 -0
  128. package/dist/hooks/data/useCollectionFetch.d.ts +50 -0
  129. package/dist/hooks/data/useDataOrder.d.ts +12 -0
  130. package/dist/hooks/data/useDataSource.d.ts +6 -0
  131. package/dist/hooks/data/useEntityFetch.d.ts +28 -0
  132. package/dist/hooks/index.d.ts +22 -0
  133. package/dist/hooks/useAnalyticsController.d.ts +5 -0
  134. package/dist/hooks/useAuthController.d.ts +11 -0
  135. package/dist/hooks/useBrowserTitleAndIcon.d.ts +6 -0
  136. package/dist/hooks/useBuildLocalConfigurationPersistence.d.ts +2 -0
  137. package/dist/hooks/useBuildModeController.d.ts +6 -0
  138. package/dist/hooks/useBuildNavigationController.d.ts +24 -0
  139. package/dist/hooks/useClipboard.d.ts +57 -0
  140. package/dist/hooks/useCustomizationController.d.ts +11 -0
  141. package/dist/hooks/useDialogsController.d.ts +11 -0
  142. package/dist/hooks/useFireCMSContext.d.ts +11 -0
  143. package/dist/hooks/useLargeLayout.d.ts +1 -0
  144. package/dist/hooks/useModeController.d.ts +20 -0
  145. package/dist/hooks/useNavigationController.d.ts +9 -0
  146. package/dist/hooks/useProjectLog.d.ts +8 -0
  147. package/dist/hooks/useReferenceDialog.d.ts +18 -0
  148. package/dist/hooks/useResolvedNavigationFrom.d.ts +72 -0
  149. package/dist/hooks/useSideDialogsController.d.ts +18 -0
  150. package/dist/hooks/useSideEntityController.d.ts +12 -0
  151. package/dist/hooks/useSnackbarController.d.ts +42 -0
  152. package/dist/hooks/useStorageSource.d.ts +6 -0
  153. package/dist/hooks/useUserConfigurationPersistence.d.ts +8 -0
  154. package/dist/index.d.ts +8 -0
  155. package/dist/index.es.js +16602 -0
  156. package/dist/index.es.js.map +1 -0
  157. package/dist/index.umd.js +589 -0
  158. package/dist/index.umd.js.map +1 -0
  159. package/dist/internal/common.d.ts +3 -0
  160. package/dist/internal/useBuildCustomizationController.d.ts +2 -0
  161. package/dist/internal/useBuildDataSource.d.ts +26 -0
  162. package/dist/internal/useBuildSideDialogsController.d.ts +2 -0
  163. package/dist/internal/useBuildSideEntityController.d.ts +4 -0
  164. package/dist/internal/useLocaleConfig.d.ts +1 -0
  165. package/dist/internal/useRestoreScroll.d.ts +6 -0
  166. package/dist/internal/useUnsavedChangesDialog.d.ts +14 -0
  167. package/dist/preview/PropertyPreview.d.ts +7 -0
  168. package/dist/preview/PropertyPreviewProps.d.ts +43 -0
  169. package/dist/preview/components/ArrayEnumPreview.d.ts +11 -0
  170. package/dist/preview/components/AsyncPreviewComponent.d.ts +11 -0
  171. package/dist/preview/components/BooleanPreview.d.ts +11 -0
  172. package/dist/preview/components/DatePreview.d.ts +7 -0
  173. package/dist/preview/components/EmptyValue.d.ts +4 -0
  174. package/dist/preview/components/EnumValuesChip.d.ts +13 -0
  175. package/dist/preview/components/ImagePreview.d.ts +12 -0
  176. package/dist/preview/components/ReferencePreview.d.ts +16 -0
  177. package/dist/preview/components/StorageThumbnail.d.ts +13 -0
  178. package/dist/preview/components/UrlComponentPreview.d.ts +12 -0
  179. package/dist/preview/index.d.ts +23 -0
  180. package/dist/preview/property_previews/ArrayOfMapsPreview.d.ts +5 -0
  181. package/dist/preview/property_previews/ArrayOfReferencesPreview.d.ts +5 -0
  182. package/dist/preview/property_previews/ArrayOfStorageComponentsPreview.d.ts +5 -0
  183. package/dist/preview/property_previews/ArrayOfStringsPreview.d.ts +5 -0
  184. package/dist/preview/property_previews/ArrayOneOfPreview.d.ts +5 -0
  185. package/dist/preview/property_previews/ArrayPropertyEnumPreview.d.ts +5 -0
  186. package/dist/preview/property_previews/ArrayPropertyPreview.d.ts +5 -0
  187. package/dist/preview/property_previews/MapPropertyPreview.d.ts +8 -0
  188. package/dist/preview/property_previews/NumberPropertyPreview.d.ts +6 -0
  189. package/dist/preview/property_previews/SkeletonPropertyComponent.d.ts +14 -0
  190. package/dist/preview/property_previews/StringPropertyPreview.d.ts +6 -0
  191. package/dist/preview/util.d.ts +7 -0
  192. package/dist/types/analytics.d.ts +1 -0
  193. package/dist/types/analytics_controller.d.ts +7 -0
  194. package/dist/types/appcheck.d.ts +26 -0
  195. package/dist/types/auth.d.ts +47 -0
  196. package/dist/types/collections.d.ts +467 -0
  197. package/dist/types/customization_controller.d.ts +47 -0
  198. package/dist/types/datasource.d.ts +262 -0
  199. package/dist/types/dialogs_controller.d.ts +32 -0
  200. package/dist/types/entities.d.ts +58 -0
  201. package/dist/types/entity_actions.d.ts +35 -0
  202. package/dist/types/entity_callbacks.d.ts +185 -0
  203. package/dist/types/entity_link_builder.d.ts +7 -0
  204. package/dist/types/entity_overrides.d.ts +6 -0
  205. package/dist/types/export_import.d.ts +21 -0
  206. package/dist/types/fields.d.ts +180 -0
  207. package/dist/types/firecms.d.ts +132 -0
  208. package/dist/types/firecms_context.d.ts +70 -0
  209. package/dist/types/index.d.ts +29 -0
  210. package/dist/types/local_config_persistence.d.ts +21 -0
  211. package/dist/types/locales.d.ts +4 -0
  212. package/dist/types/modify_collections.d.ts +5 -0
  213. package/dist/types/navigation.d.ts +179 -0
  214. package/dist/types/permissions.d.ts +67 -0
  215. package/dist/types/plugins.d.ts +171 -0
  216. package/dist/types/properties.d.ts +681 -0
  217. package/dist/types/property_config.d.ts +42 -0
  218. package/dist/types/resolved_entities.d.ts +98 -0
  219. package/dist/types/side_dialogs_controller.d.ts +57 -0
  220. package/dist/types/side_entity_controller.d.ts +83 -0
  221. package/dist/types/storage.d.ts +82 -0
  222. package/dist/types/user.d.ts +36 -0
  223. package/dist/util/arrays.d.ts +1 -0
  224. package/dist/util/builders.d.ts +64 -0
  225. package/dist/util/collections.d.ts +11 -0
  226. package/dist/util/common.d.ts +2 -0
  227. package/dist/util/dates.d.ts +1 -0
  228. package/dist/util/entities.d.ts +28 -0
  229. package/dist/util/enums.d.ts +7 -0
  230. package/dist/util/flatten_object.d.ts +3 -0
  231. package/dist/util/hash.d.ts +1 -0
  232. package/dist/util/icon_list.d.ts +1 -0
  233. package/dist/util/icon_synonyms.d.ts +1950 -0
  234. package/dist/util/icons.d.ts +13 -0
  235. package/dist/util/index.d.ts +23 -0
  236. package/dist/util/join_collections.d.ts +9 -0
  237. package/dist/util/make_properties_editable.d.ts +3 -0
  238. package/dist/util/navigation_from_path.d.ts +24 -0
  239. package/dist/util/navigation_utils.d.ts +20 -0
  240. package/dist/util/objects.d.ts +10 -0
  241. package/dist/util/os.d.ts +2 -0
  242. package/dist/util/parent_references_from_path.d.ts +6 -0
  243. package/dist/util/paths.d.ts +14 -0
  244. package/dist/util/permissions.d.ts +5 -0
  245. package/dist/util/plurals.d.ts +18 -0
  246. package/dist/util/property_utils.d.ts +23 -0
  247. package/dist/util/references.d.ts +4 -0
  248. package/dist/util/regexp.d.ts +7 -0
  249. package/dist/util/resolutions.d.ts +64 -0
  250. package/dist/util/storage.d.ts +3 -0
  251. package/dist/util/strings.d.ts +6 -0
  252. package/dist/util/useDebouncedCallback.d.ts +1 -0
  253. package/dist/util/useStorageUploadController.d.ts +36 -0
  254. package/dist/util/useTraceUpdate.d.ts +1 -0
  255. package/package.json +122 -0
  256. package/src/components/ArrayContainer.tsx +334 -0
  257. package/src/components/CircularProgressCenter.tsx +26 -0
  258. package/src/components/DeleteConfirmationDialog.tsx +47 -0
  259. package/src/components/DeleteEntityDialog.tsx +213 -0
  260. package/src/components/EntityCollectionTable/EntityCollectionRowActions.tsx +170 -0
  261. package/src/components/EntityCollectionTable/EntityCollectionTable.tsx +325 -0
  262. package/src/components/EntityCollectionTable/EntityCollectionTableProps.tsx +145 -0
  263. package/src/components/EntityCollectionTable/PropertyTableCell.tsx +461 -0
  264. package/src/components/EntityCollectionTable/column_utils.tsx +74 -0
  265. package/src/components/EntityCollectionTable/fields/TableReferenceField.tsx +155 -0
  266. package/src/components/EntityCollectionTable/fields/TableStorageUpload.tsx +313 -0
  267. package/src/components/EntityCollectionTable/index.tsx +12 -0
  268. package/src/components/EntityCollectionTable/internal/CollectionTableToolbar.tsx +116 -0
  269. package/src/components/EntityCollectionTable/internal/EntityTableCell.tsx +257 -0
  270. package/src/components/EntityCollectionTable/internal/EntityTableCellActions.tsx +70 -0
  271. package/src/components/EntityCollectionTable/internal/common.tsx +70 -0
  272. package/src/components/EntityCollectionTable/internal/default_entity_actions.tsx +126 -0
  273. package/src/components/EntityCollectionTable/internal/popup_field/ElementResizeListener.tsx +59 -0
  274. package/src/components/EntityCollectionTable/internal/popup_field/PopupFormField.tsx +408 -0
  275. package/src/components/EntityCollectionTable/internal/popup_field/useDraggable.tsx +97 -0
  276. package/src/components/EntityCollectionTable/internal/popup_field/useWindowSize.tsx +20 -0
  277. package/src/components/EntityCollectionView/EntityCollectionView.tsx +804 -0
  278. package/src/components/EntityCollectionView/EntityCollectionViewActions.tsx +132 -0
  279. package/src/components/EntityCollectionView/useSelectionController.tsx +30 -0
  280. package/src/components/EntityPreview.tsx +218 -0
  281. package/src/components/EntityView.tsx +84 -0
  282. package/src/components/ErrorBoundary.tsx +40 -0
  283. package/src/components/ErrorTooltip.tsx +11 -0
  284. package/src/components/ErrorView.tsx +52 -0
  285. package/src/components/FieldCaption.tsx +13 -0
  286. package/src/components/FireCMSAppBar.tsx +165 -0
  287. package/src/components/FireCMSLogo.tsx +73 -0
  288. package/src/components/HomePage/DefaultHomePage.tsx +214 -0
  289. package/src/components/HomePage/FavouritesView.tsx +64 -0
  290. package/src/components/HomePage/NavigationCard.tsx +69 -0
  291. package/src/components/HomePage/NavigationCardBinding.tsx +116 -0
  292. package/src/components/HomePage/NavigationGroup.tsx +39 -0
  293. package/src/components/HomePage/SmallNavigationCard.tsx +45 -0
  294. package/src/components/HomePage/index.tsx +5 -0
  295. package/src/components/NotFoundPage.tsx +25 -0
  296. package/src/components/PropertyConfigBadge.tsx +17 -0
  297. package/src/components/PropertyIdCopyTooltipContent.tsx +28 -0
  298. package/src/components/ReferenceTable/ReferenceSelectionTable.tsx +379 -0
  299. package/src/components/ReferenceWidget.tsx +145 -0
  300. package/src/components/SearchIconsView.tsx +75 -0
  301. package/src/components/SelectableTable/SelectableTable.tsx +329 -0
  302. package/src/components/SelectableTable/SelectableTableContext.tsx +6 -0
  303. package/src/components/SelectableTable/filters/BooleanFilterField.tsx +49 -0
  304. package/src/components/SelectableTable/filters/DateTimeFilterField.tsx +109 -0
  305. package/src/components/SelectableTable/filters/ReferenceFilterField.tsx +179 -0
  306. package/src/components/SelectableTable/filters/StringNumberFilterField.tsx +158 -0
  307. package/src/components/VirtualTable/VirtualTable.tsx +405 -0
  308. package/src/components/VirtualTable/VirtualTableCell.tsx +50 -0
  309. package/src/components/VirtualTable/VirtualTableHeader.tsx +266 -0
  310. package/src/components/VirtualTable/VirtualTableHeaderRow.tsx +131 -0
  311. package/src/components/VirtualTable/VirtualTableProps.tsx +269 -0
  312. package/src/components/VirtualTable/VirtualTableRow.tsx +53 -0
  313. package/src/components/VirtualTable/common.tsx +18 -0
  314. package/src/components/VirtualTable/fields/VirtualTableDateField.tsx +37 -0
  315. package/src/components/VirtualTable/fields/VirtualTableInput.tsx +91 -0
  316. package/src/components/VirtualTable/fields/VirtualTableNumberInput.tsx +82 -0
  317. package/src/components/VirtualTable/fields/VirtualTableSelect.tsx +130 -0
  318. package/src/components/VirtualTable/fields/VirtualTableSwitch.tsx +32 -0
  319. package/src/components/VirtualTable/index.tsx +2 -0
  320. package/src/components/VirtualTable/types.tsx +44 -0
  321. package/src/components/common/index.ts +5 -0
  322. package/src/components/common/types.tsx +63 -0
  323. package/src/components/common/useColumnsIds.tsx +100 -0
  324. package/src/components/common/useDataSourceEntityCollectionTableController.tsx +225 -0
  325. package/src/components/common/useDebouncedData.ts +49 -0
  326. package/src/components/common/useTableSearchHelper.ts +47 -0
  327. package/src/components/index.tsx +36 -0
  328. package/src/contexts/AnalyticsContext.tsx +4 -0
  329. package/src/contexts/AuthControllerContext.tsx +4 -0
  330. package/src/contexts/CustomizationControllerContext.tsx +4 -0
  331. package/src/contexts/DataSourceContext.tsx +4 -0
  332. package/src/contexts/DialogsProvider.tsx +52 -0
  333. package/src/contexts/ModeController.tsx +13 -0
  334. package/src/contexts/NavigationContext.tsx +4 -0
  335. package/src/contexts/SideDialogsControllerContext.tsx +4 -0
  336. package/src/contexts/SideEntityControllerContext.tsx +4 -0
  337. package/src/contexts/SnackbarProvider.tsx +12 -0
  338. package/src/contexts/StorageSourceContext.tsx +4 -0
  339. package/src/contexts/UserConfigurationPersistenceContext.tsx +4 -0
  340. package/src/contexts/index.ts +3 -0
  341. package/src/core/Drawer.tsx +191 -0
  342. package/src/core/EntityEditView.tsx +561 -0
  343. package/src/core/EntitySidePanel.tsx +91 -0
  344. package/src/core/FireCMS.tsx +198 -0
  345. package/src/core/NavigationRoutes.tsx +127 -0
  346. package/src/core/Scaffold.tsx +281 -0
  347. package/src/core/SideDialogs.tsx +156 -0
  348. package/src/core/SideEntityView.tsx +38 -0
  349. package/src/core/field_configs.tsx +400 -0
  350. package/src/core/index.tsx +12 -0
  351. package/src/form/EntityForm.tsx +728 -0
  352. package/src/form/PropertyFieldBinding.tsx +306 -0
  353. package/src/form/components/CustomIdField.tsx +139 -0
  354. package/src/form/components/ErrorFocus.tsx +51 -0
  355. package/src/form/components/FieldHelperText.tsx +58 -0
  356. package/src/form/components/FormikArrayContainer.tsx +44 -0
  357. package/src/form/components/LabelWithIcon.tsx +33 -0
  358. package/src/form/components/StorageItemPreview.tsx +68 -0
  359. package/src/form/components/StorageUploadProgress.tsx +105 -0
  360. package/src/form/components/index.tsx +3 -0
  361. package/src/form/field_bindings/ArrayCustomShapedFieldBinding.tsx +86 -0
  362. package/src/form/field_bindings/ArrayOfReferencesFieldBinding.tsx +149 -0
  363. package/src/form/field_bindings/BlockFieldBinding.tsx +245 -0
  364. package/src/form/field_bindings/DateTimeFieldBinding.tsx +67 -0
  365. package/src/form/field_bindings/KeyValueFieldBinding.tsx +558 -0
  366. package/src/form/field_bindings/MapFieldBinding.tsx +138 -0
  367. package/src/form/field_bindings/MarkdownFieldBinding.tsx +695 -0
  368. package/src/form/field_bindings/MultiSelectBinding.tsx +114 -0
  369. package/src/form/field_bindings/ReadOnlyFieldBinding.tsx +69 -0
  370. package/src/form/field_bindings/ReferenceFieldBinding.tsx +123 -0
  371. package/src/form/field_bindings/RepeatFieldBinding.tsx +105 -0
  372. package/src/form/field_bindings/SelectFieldBinding.tsx +99 -0
  373. package/src/form/field_bindings/StorageUploadFieldBinding.tsx +447 -0
  374. package/src/form/field_bindings/SwitchFieldBinding.tsx +60 -0
  375. package/src/form/field_bindings/TextFieldBinding.tsx +109 -0
  376. package/src/form/index.tsx +43 -0
  377. package/src/form/useClearRestoreValue.tsx +35 -0
  378. package/src/form/validation.ts +412 -0
  379. package/src/hooks/data/delete.ts +101 -0
  380. package/src/hooks/data/save.ts +170 -0
  381. package/src/hooks/data/useCollectionFetch.tsx +162 -0
  382. package/src/hooks/data/useDataOrder.ts +26 -0
  383. package/src/hooks/data/useDataSource.tsx +14 -0
  384. package/src/hooks/data/useEntityFetch.tsx +129 -0
  385. package/src/hooks/index.tsx +27 -0
  386. package/src/hooks/useAnalyticsController.tsx +8 -0
  387. package/src/hooks/useAuthController.tsx +14 -0
  388. package/src/hooks/useBrowserTitleAndIcon.tsx +25 -0
  389. package/src/hooks/useBuildLocalConfigurationPersistence.tsx +67 -0
  390. package/src/hooks/useBuildModeController.tsx +60 -0
  391. package/src/hooks/useBuildNavigationController.tsx +433 -0
  392. package/src/hooks/useClipboard.tsx +158 -0
  393. package/src/hooks/useCustomizationController.tsx +14 -0
  394. package/src/hooks/useDialogsController.tsx +14 -0
  395. package/src/hooks/useFireCMSContext.tsx +99 -0
  396. package/src/hooks/useLargeLayout.tsx +100 -0
  397. package/src/hooks/useModeController.tsx +24 -0
  398. package/src/hooks/useNavigationController.tsx +12 -0
  399. package/src/hooks/useProjectLog.tsx +39 -0
  400. package/src/hooks/useReferenceDialog.tsx +56 -0
  401. package/src/hooks/useResolvedNavigationFrom.tsx +160 -0
  402. package/src/hooks/useSideDialogsController.tsx +21 -0
  403. package/src/hooks/useSideEntityController.tsx +15 -0
  404. package/src/hooks/useSnackbarController.tsx +75 -0
  405. package/src/hooks/useStorageSource.tsx +14 -0
  406. package/src/hooks/useUserConfigurationPersistence.tsx +11 -0
  407. package/src/index.ts +8 -0
  408. package/src/internal/common.tsx +5 -0
  409. package/src/internal/useBuildCustomizationController.tsx +5 -0
  410. package/src/internal/useBuildDataSource.ts +363 -0
  411. package/src/internal/useBuildSideDialogsController.tsx +125 -0
  412. package/src/internal/useBuildSideEntityController.tsx +172 -0
  413. package/src/internal/useLocaleConfig.tsx +18 -0
  414. package/src/internal/useRestoreScroll.tsx +48 -0
  415. package/src/internal/useUnsavedChangesDialog.tsx +106 -0
  416. package/src/preview/PropertyPreview.tsx +225 -0
  417. package/src/preview/PropertyPreviewProps.tsx +59 -0
  418. package/src/preview/components/ArrayEnumPreview.tsx +39 -0
  419. package/src/preview/components/AsyncPreviewComponent.tsx +47 -0
  420. package/src/preview/components/BooleanPreview.tsx +24 -0
  421. package/src/preview/components/DatePreview.tsx +26 -0
  422. package/src/preview/components/EmptyValue.tsx +10 -0
  423. package/src/preview/components/EnumValuesChip.tsx +38 -0
  424. package/src/preview/components/ImagePreview.tsx +106 -0
  425. package/src/preview/components/ReferencePreview.tsx +166 -0
  426. package/src/preview/components/StorageThumbnail.tsx +84 -0
  427. package/src/preview/components/UrlComponentPreview.tsx +79 -0
  428. package/src/preview/index.ts +27 -0
  429. package/src/preview/property_previews/ArrayOfMapsPreview.tsx +82 -0
  430. package/src/preview/property_previews/ArrayOfReferencesPreview.tsx +52 -0
  431. package/src/preview/property_previews/ArrayOfStorageComponentsPreview.tsx +54 -0
  432. package/src/preview/property_previews/ArrayOfStringsPreview.tsx +55 -0
  433. package/src/preview/property_previews/ArrayOneOfPreview.tsx +67 -0
  434. package/src/preview/property_previews/ArrayPropertyEnumPreview.tsx +28 -0
  435. package/src/preview/property_previews/ArrayPropertyPreview.tsx +68 -0
  436. package/src/preview/property_previews/MapPropertyPreview.tsx +146 -0
  437. package/src/preview/property_previews/NumberPropertyPreview.tsx +27 -0
  438. package/src/preview/property_previews/SkeletonPropertyComponent.tsx +283 -0
  439. package/src/preview/property_previews/StringPropertyPreview.tsx +60 -0
  440. package/src/preview/util.ts +31 -0
  441. package/src/types/analytics.ts +35 -0
  442. package/src/types/analytics_controller.tsx +10 -0
  443. package/src/types/appcheck.ts +29 -0
  444. package/src/types/auth.tsx +59 -0
  445. package/src/types/collections.ts +548 -0
  446. package/src/types/customization_controller.tsx +58 -0
  447. package/src/types/datasource.ts +389 -0
  448. package/src/types/dialogs_controller.tsx +33 -0
  449. package/src/types/entities.ts +80 -0
  450. package/src/types/entity_actions.tsx +43 -0
  451. package/src/types/entity_callbacks.ts +229 -0
  452. package/src/types/entity_link_builder.ts +8 -0
  453. package/src/types/entity_overrides.tsx +7 -0
  454. package/src/types/export_import.ts +26 -0
  455. package/src/types/fields.tsx +220 -0
  456. package/src/types/firecms.tsx +153 -0
  457. package/src/types/firecms_context.tsx +83 -0
  458. package/src/types/index.ts +29 -0
  459. package/src/types/local_config_persistence.tsx +23 -0
  460. package/src/types/locales.ts +81 -0
  461. package/src/types/modify_collections.tsx +6 -0
  462. package/src/types/navigation.ts +215 -0
  463. package/src/types/permissions.ts +81 -0
  464. package/src/types/plugins.tsx +207 -0
  465. package/src/types/properties.ts +851 -0
  466. package/src/types/property_config.tsx +72 -0
  467. package/src/types/resolved_entities.ts +148 -0
  468. package/src/types/side_dialogs_controller.tsx +68 -0
  469. package/src/types/side_entity_controller.tsx +97 -0
  470. package/src/types/storage.ts +96 -0
  471. package/src/types/user.ts +37 -0
  472. package/src/util/arrays.ts +3 -0
  473. package/src/util/builders.ts +139 -0
  474. package/src/util/collections.ts +72 -0
  475. package/src/util/common.tsx +2 -0
  476. package/src/util/dates.ts +1 -0
  477. package/src/util/entities.ts +196 -0
  478. package/src/util/enums.ts +56 -0
  479. package/src/util/flatten_object.ts +45 -0
  480. package/src/util/hash.ts +11 -0
  481. package/src/util/icon_list.ts +17 -0
  482. package/src/util/icon_synonyms.ts +1950 -0
  483. package/src/util/icons.tsx +56 -0
  484. package/src/util/index.ts +23 -0
  485. package/src/util/join_collections.ts +172 -0
  486. package/src/util/make_properties_editable.ts +29 -0
  487. package/src/util/navigation_from_path.ts +107 -0
  488. package/src/util/navigation_utils.ts +111 -0
  489. package/src/util/objects.ts +168 -0
  490. package/src/util/os.ts +13 -0
  491. package/src/util/parent_references_from_path.ts +56 -0
  492. package/src/util/paths.ts +27 -0
  493. package/src/util/permissions.ts +83 -0
  494. package/src/util/plurals.ts +190 -0
  495. package/src/util/property_utils.tsx +130 -0
  496. package/src/util/references.ts +51 -0
  497. package/src/util/regexp.ts +32 -0
  498. package/src/util/resolutions.ts +399 -0
  499. package/src/util/storage.ts +92 -0
  500. package/src/util/strings.ts +63 -0
  501. package/src/util/useDebouncedCallback.ts +25 -0
  502. package/src/util/useStorageUploadController.tsx +243 -0
  503. package/src/util/useTraceUpdate.tsx +23 -0
@@ -0,0 +1,36 @@
1
+ import React from "react";
2
+ import { EntityCollection } from "../../types";
3
+ /**
4
+ * @group Components
5
+ */
6
+ export type EntityCollectionViewProps<M extends Record<string, any>> = {
7
+ fullPath: string;
8
+ parentCollectionIds?: string[];
9
+ isSubCollection?: boolean;
10
+ className?: string;
11
+ } & EntityCollection<M>;
12
+ /**
13
+ * This component is in charge of binding a datasource path with an {@link EntityCollection}
14
+ * where it's configuration is defined. It includes an infinite scrolling table
15
+ * and a 'Add' new entities button,
16
+ *
17
+ * This component is the default one used for displaying entity collections
18
+ * and is in charge of generating all the specific actions and customization
19
+ * of the lower level {@link EntityCollectionTable}
20
+ *
21
+ * Please **note** that you only need to use this component if you are building
22
+ * a custom view. If you just need to create a default view you can do it
23
+ * exclusively with config options.
24
+ *
25
+ * If you need a lower level implementation with more granular options, you
26
+ * can use {@link EntityCollectionTable}.
27
+ *
28
+ * If you need a generic table that is not bound to the datasource or entities and
29
+ * properties at all, you can check {@link VirtualTable}
30
+ *
31
+ * @param fullPath
32
+ * @param collection
33
+ * @constructor
34
+ * @group Components
35
+ */
36
+ export declare const EntityCollectionView: React.FunctionComponent<EntityCollectionViewProps<any>>;
@@ -0,0 +1,14 @@
1
+ import { EntityCollection, EntityTableController, SelectionController } from "../../types";
2
+ export type EntityCollectionViewActionsProps<M extends Record<string, any>> = {
3
+ collection: EntityCollection<M>;
4
+ path: string;
5
+ relativePath: string;
6
+ parentCollectionIds: string[];
7
+ selectionEnabled: boolean;
8
+ onNewClick: () => void;
9
+ onMultipleDeleteClick: () => void;
10
+ selectionController: SelectionController<M>;
11
+ tableController: EntityTableController<M>;
12
+ collectionEntitiesCount: number;
13
+ };
14
+ export declare function EntityCollectionViewActions<M extends Record<string, any>>({ collection, relativePath, parentCollectionIds, onNewClick, onMultipleDeleteClick, selectionEnabled, path, selectionController, tableController, collectionEntitiesCount }: EntityCollectionViewActionsProps<M>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import { Entity, SelectionController } from "../../types";
2
+ export declare function useSelectionController<M extends Record<string, any> = any>(onSelectionChange?: (entity: Entity<M>, selected: boolean) => void): SelectionController<M>;
@@ -0,0 +1,29 @@
1
+ import * as React from "react";
2
+ import { Entity, EntityCollection } from "../types";
3
+ import { PreviewSize } from "../preview";
4
+ export type EntityPreviewProps = {
5
+ size: PreviewSize;
6
+ actions?: React.ReactNode;
7
+ collection?: EntityCollection;
8
+ hover?: boolean;
9
+ previewProperties?: string[];
10
+ disabled: undefined | boolean;
11
+ entity: Entity<any>;
12
+ includeEntityNavigation?: boolean;
13
+ onClick?: (e: React.SyntheticEvent) => void;
14
+ };
15
+ /**
16
+ * This view is used to display a preview of an entity.
17
+ * It is used by default in reference fields and whenever a reference is displayed.
18
+ */
19
+ export declare function EntityPreview({ actions, disabled, hover, collection: collectionProp, previewProperties, onClick, size, includeEntityNavigation, entity }: EntityPreviewProps): import("react/jsx-runtime").JSX.Element;
20
+ type EntityPreviewContainerProps = {
21
+ children: React.ReactNode;
22
+ hover?: boolean;
23
+ size: PreviewSize;
24
+ className?: string;
25
+ style?: React.CSSProperties;
26
+ onClick?: (e: React.SyntheticEvent) => void;
27
+ };
28
+ export declare const EntityPreviewContainer: React.FC<EntityPreviewContainerProps>;
29
+ export {};
@@ -0,0 +1,11 @@
1
+ import { Entity, EntityCollection } from "../types";
2
+ /**
3
+ * @group Components
4
+ */
5
+ export interface EntityViewProps<M extends Record<string, any>> {
6
+ entity: Entity<M>;
7
+ collection: EntityCollection<M>;
8
+ path: string;
9
+ className?: string;
10
+ }
11
+ export declare function EntityView<M extends Record<string, any>>({ entity, collection, path, className }: EntityViewProps<M>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,11 @@
1
+ import React, { ErrorInfo, PropsWithChildren } from "react";
2
+ export declare class ErrorBoundary extends React.Component<PropsWithChildren<Record<string, unknown>>, {
3
+ error: Error | null;
4
+ }> {
5
+ constructor(props: any);
6
+ static getDerivedStateFromError(error: Error): {
7
+ error: Error;
8
+ };
9
+ componentDidCatch(error: Error, errorInfo: ErrorInfo): void;
10
+ render(): string | number | boolean | Iterable<React.ReactNode> | import("react/jsx-runtime").JSX.Element | null | undefined;
11
+ }
@@ -0,0 +1,2 @@
1
+ import { TooltipProps } from "@firecms/ui";
2
+ export declare function ErrorTooltip(props: TooltipProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,19 @@
1
+ import React from "react";
2
+ /**
3
+ * @group Components
4
+ */
5
+ export interface ErrorViewProps {
6
+ title?: string;
7
+ error: Error | React.ReactElement | string;
8
+ tooltip?: string;
9
+ }
10
+ /**
11
+ * Generic error view. Displayed for example when an unexpected value comes
12
+ * from the datasource in a collection view.
13
+ * @param title
14
+ * @param error
15
+ * @param tooltip
16
+ * @constructor
17
+ * @group Components
18
+ */
19
+ export declare function ErrorView({ title, error, tooltip }: ErrorViewProps): React.ReactElement;
@@ -0,0 +1,4 @@
1
+ export declare function FieldCaption({ error, children }: {
2
+ error?: boolean;
3
+ children?: React.ReactNode;
4
+ }): import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,26 @@
1
+ import React from "react";
2
+ import { User } from "../types";
3
+ export type FireCMSAppBarProps<ADDITIONAL_PROPS = object> = {
4
+ title: string;
5
+ /**
6
+ * A component that gets rendered on the upper side of the main toolbar
7
+ */
8
+ endAdornment?: React.ReactNode;
9
+ startAdornment?: React.ReactNode;
10
+ dropDownActions?: React.ReactNode;
11
+ includeDrawer?: boolean;
12
+ drawerOpen: boolean;
13
+ className?: string;
14
+ style?: React.CSSProperties;
15
+ user?: User;
16
+ } & ADDITIONAL_PROPS;
17
+ /**
18
+ * This component renders the main app bar of FireCMS.
19
+ * You will likely not need to use this component directly.
20
+ *
21
+ * @param title
22
+ * @param toolbarExtraWidget
23
+ * @param drawerOpen
24
+ * @constructor
25
+ */
26
+ export declare const FireCMSAppBar: ({ title, endAdornment, startAdornment, drawerOpen, dropDownActions, includeDrawer, className, style, user: userProp }: FireCMSAppBarProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,7 @@
1
+ import React from "react";
2
+ export declare function FireCMSLogo({ width, height, className, style }: {
3
+ width?: string;
4
+ height?: string;
5
+ className?: string;
6
+ style?: React.CSSProperties;
7
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,21 @@
1
+ import React from "react";
2
+ /**
3
+ * Default entry view for the CMS. This component renders navigation cards
4
+ * for each collection defined in the navigation.
5
+ * @constructor
6
+ * @group Components
7
+ */
8
+ export declare function DefaultHomePage({ additionalActions, additionalChildrenStart, additionalChildrenEnd }: {
9
+ /**
10
+ * Additional actions to be rendered in the home page, close to the search bar.
11
+ */
12
+ additionalActions?: React.ReactNode;
13
+ /**
14
+ * Additional children to be rendered in the beginning of the home page.
15
+ */
16
+ additionalChildrenStart?: React.ReactNode;
17
+ /**
18
+ * Additional children to be rendered at the end of the home page.
19
+ */
20
+ additionalChildrenEnd?: React.ReactNode;
21
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,3 @@
1
+ export declare function FavouritesView({ hidden }: {
2
+ hidden: boolean;
3
+ }): import("react/jsx-runtime").JSX.Element | null;
@@ -0,0 +1,8 @@
1
+ export type NavigationCardProps = {
2
+ name: string;
3
+ description?: string;
4
+ actions: React.ReactNode;
5
+ icon: React.ReactNode;
6
+ onClick?: () => void;
7
+ };
8
+ export declare function NavigationCard({ name, description, icon, actions, onClick, }: NavigationCardProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,17 @@
1
+ import { TopNavigationEntry } from "../../types";
2
+ /**
3
+ * This is the component used in the home page to render a card for each
4
+ * collection or view.
5
+ * @group Components
6
+ * @param view
7
+ * @param path
8
+ * @param collection
9
+ * @param url
10
+ * @param name
11
+ * @param description
12
+ * @param onClick
13
+ * @constructor
14
+ */
15
+ export declare function NavigationCardBinding({ path, collection, view, url, name, description, onClick, type }: TopNavigationEntry & {
16
+ onClick?: () => void;
17
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,4 @@
1
+ import { PropsWithChildren } from "react";
2
+ export declare function NavigationGroup({ children, group }: PropsWithChildren<{
3
+ group: string | undefined;
4
+ }>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,6 @@
1
+ export type SmallNavigationCardProps = {
2
+ name: string;
3
+ url: string;
4
+ icon: React.ReactElement;
5
+ };
6
+ export declare function SmallNavigationCard({ name, url, icon, }: SmallNavigationCardProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ export * from "./DefaultHomePage";
2
+ export * from "./NavigationCardBinding";
3
+ export * from "./NavigationGroup";
4
+ export * from "./NavigationCard";
5
+ export * from "./SmallNavigationCard";
@@ -0,0 +1 @@
1
+ export declare function NotFoundPage(): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,4 @@
1
+ import { PropertyConfig } from "../types";
2
+ export declare function PropertyConfigBadge({ propertyConfig }: {
3
+ propertyConfig: PropertyConfig | undefined;
4
+ }): React.ReactNode;
@@ -0,0 +1,3 @@
1
+ export declare function PropertyIdCopyTooltipContent({ propertyId }: {
2
+ propertyId: string;
3
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,58 @@
1
+ import React from "react";
2
+ import { Entity, EntityCollection, FilterValues } from "../../types";
3
+ /**
4
+ * @group Components
5
+ */
6
+ export interface ReferenceSelectionInnerProps<M extends Record<string, any>> {
7
+ /**
8
+ * Allow multiple selection of values
9
+ */
10
+ multiselect?: boolean;
11
+ /**
12
+ * Entity collection config
13
+ */
14
+ collection?: EntityCollection<M>;
15
+ /**
16
+ * Absolute path of the collection.
17
+ * May be not set if this hook is being used in a component and the path is
18
+ * dynamic. If not set, the dialog won't open.
19
+ */
20
+ path: string;
21
+ /**
22
+ * If you are opening the dialog for the first time, you can select some
23
+ * entity ids to be displayed first.
24
+ */
25
+ selectedEntityIds?: string[];
26
+ /**
27
+ * If `multiselect` is set to `false`, you will get the selected entity
28
+ * in this callback.
29
+ * @param entity
30
+ * @callback
31
+ */
32
+ onSingleEntitySelected?(entity: Entity<any> | null): void;
33
+ /**
34
+ * If `multiselect` is set to `true`, you will get the selected entities
35
+ * in this callback.
36
+ * @param entities
37
+ * @callback
38
+ */
39
+ onMultipleEntitiesSelected?(entities: Entity<any>[]): void;
40
+ /**
41
+ * Allow selection of entities that pass the given filter only.
42
+ */
43
+ forceFilter?: FilterValues<string>;
44
+ /**
45
+ * Use this description to indicate the user what to do in this dialog.
46
+ */
47
+ description?: React.ReactNode;
48
+ /**
49
+ * Maximum number of entities that can be selected.
50
+ */
51
+ maxSelection?: number;
52
+ }
53
+ /**
54
+ * This component allows to select entities from a given collection.
55
+ * You probably want to open this dialog as a side view using {@link useReferenceDialog}
56
+ * @group Components
57
+ */
58
+ export declare function ReferenceSelectionTable<M extends Record<string, any>>({ onSingleEntitySelected, onMultipleEntitiesSelected, multiselect, collection, path: pathInput, selectedEntityIds: selectedEntityIdsProp, description, forceFilter, maxSelection, }: ReferenceSelectionInnerProps<M>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,28 @@
1
+ import { Entity, EntityReference, FilterValues } from "../types";
2
+ import { PreviewSize } from "../preview";
3
+ export type ReferenceWidgetProps<M extends Record<string, any>> = {
4
+ name?: string;
5
+ multiselect?: boolean;
6
+ value: EntityReference | EntityReference[] | null;
7
+ onReferenceSelected?: (params: {
8
+ reference: EntityReference | null;
9
+ entity: Entity<M> | null;
10
+ }) => void;
11
+ onMultipleReferenceSelected?: (params: {
12
+ references: EntityReference[] | null;
13
+ entities: Entity<M>[] | null;
14
+ }) => void;
15
+ path: string;
16
+ disabled?: boolean;
17
+ previewProperties?: string[];
18
+ /**
19
+ * Allow selection of entities that pass the given filter only.
20
+ */
21
+ forceFilter?: FilterValues<string>;
22
+ size: PreviewSize;
23
+ className?: string;
24
+ };
25
+ /**
26
+ * This field allows selecting reference/s.
27
+ */
28
+ export declare function ReferenceWidget<M extends Record<string, any>>({ name, multiselect, path, disabled, value, onReferenceSelected, onMultipleReferenceSelected, previewProperties, forceFilter, size, className }: ReferenceWidgetProps<M>): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ export interface SearchIconsProps {
2
+ selectedIcon?: string;
3
+ onIconSelected?: (icon: string) => void;
4
+ }
5
+ export declare function SearchIconsView({ selectedIcon, onIconSelected }: SearchIconsProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,75 @@
1
+ import React from "react";
2
+ import { CollectionSize, Entity, EntityTableController, FilterValues } from "../../types";
3
+ import { CellRendererParams, VirtualTableColumn } from "../VirtualTable";
4
+ import { OnCellValueChange, OnColumnResizeParams } from "../common/types";
5
+ export type SelectableTableProps<M extends Record<string, any>> = {
6
+ /**
7
+ * Callback when a cell value changes.
8
+ */
9
+ onValueChange?: OnCellValueChange<any, M>;
10
+ columns: VirtualTableColumn[];
11
+ cellRenderer: React.ComponentType<CellRendererParams<Entity<M>>>;
12
+ /**
13
+ * Builder for creating the buttons in each row
14
+ * @param entity
15
+ * @param size
16
+ */
17
+ tableRowActionsBuilder?: (params: {
18
+ entity: Entity<M>;
19
+ size: CollectionSize;
20
+ width: number;
21
+ frozen?: boolean;
22
+ }) => React.ReactNode;
23
+ /**
24
+ * Callback when anywhere on the table is clicked
25
+ */
26
+ onEntityClick?(entity: Entity<M>): void;
27
+ /**
28
+ * Callback when a column is resized
29
+ */
30
+ onColumnResize?(params: OnColumnResizeParams): void;
31
+ /**
32
+ * Should apply a different style to a row when hovering
33
+ */
34
+ hoverRow?: boolean;
35
+ /**
36
+ * Controller holding the logic for the table
37
+ * {@link useDataSourceEntityCollectionTableController}
38
+ * {@link EntityTableController}
39
+ */
40
+ tableController: EntityTableController<M>;
41
+ filterable?: boolean;
42
+ sortable?: boolean;
43
+ inlineEditing?: boolean;
44
+ forceFilter?: FilterValues<keyof M extends string ? keyof M : never>;
45
+ highlightedRow?: (data: Entity<M>) => boolean;
46
+ size?: CollectionSize;
47
+ emptyComponent?: React.ReactNode;
48
+ endAdornment?: React.ReactNode;
49
+ AddColumnComponent?: React.ComponentType;
50
+ };
51
+ /**
52
+ * This component is in charge of rendering a collection table with a high
53
+ * degree of customization.
54
+ *
55
+ * This component is used internally by {@link EntityCollectionView} and
56
+ * {@link useReferenceDialog}
57
+ *
58
+ * Please note that you only need to use this component if you are building
59
+ * a custom view. If you just need to create a default view you can do it
60
+ * exclusively with config options.
61
+ *
62
+ * If you want to bind a {@link EntityCollection} to a table with the default
63
+ * options you see in collections in the top level navigation, you can
64
+ * check {@link EntityCollectionView}.
65
+ *
66
+ * The data displayed in the table is managed by a {@link EntityTableController}.
67
+ * You can build the default, bound to a path in the datasource, by using the hook
68
+ * {@link useDataSourceEntityCollectionTableController}
69
+ *
70
+ * @see EntityCollectionTableProps
71
+ * @see EntityCollectionView
72
+ * @see VirtualTable
73
+ * @group Components
74
+ */
75
+ export declare const SelectableTable: React.NamedExoticComponent<SelectableTableProps<any>>;
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import { EntityCollectionTableController } from "../common/types";
3
+ export declare const SelectableTableContext: React.Context<EntityCollectionTableController<any>>;
4
+ export declare const useSelectableTableController: () => EntityCollectionTableController<any>;
@@ -0,0 +1,9 @@
1
+ import { VirtualTableWhereFilterOp } from "../../VirtualTable";
2
+ interface BooleanFieldProps {
3
+ name: string;
4
+ value?: [op: VirtualTableWhereFilterOp, fieldValue: any];
5
+ setValue: (value?: [op: VirtualTableWhereFilterOp, newValue: any]) => void;
6
+ title?: string;
7
+ }
8
+ export declare function BooleanFilterField({ name, title, value, setValue }: BooleanFieldProps): import("react/jsx-runtime").JSX.Element;
9
+ export {};
@@ -0,0 +1,11 @@
1
+ import { VirtualTableWhereFilterOp } from "../../VirtualTable";
2
+ interface DateTimeFilterFieldProps {
3
+ name: string;
4
+ mode?: "date" | "date_time";
5
+ value?: [op: VirtualTableWhereFilterOp, fieldValue: any];
6
+ setValue: (value?: [op: VirtualTableWhereFilterOp, newValue: any]) => void;
7
+ isArray?: boolean;
8
+ title?: string;
9
+ }
10
+ export declare function DateTimeFilterField({ name, isArray, mode, value, setValue, title }: DateTimeFilterFieldProps): import("react/jsx-runtime").JSX.Element;
11
+ export {};
@@ -0,0 +1,14 @@
1
+ import { VirtualTableWhereFilterOp } from "../../VirtualTable";
2
+ interface ReferenceFilterFieldProps {
3
+ name: string;
4
+ value?: [op: VirtualTableWhereFilterOp, fieldValue: any];
5
+ setValue: (filterValue?: [VirtualTableWhereFilterOp, any]) => void;
6
+ isArray?: boolean;
7
+ path?: string;
8
+ title?: string;
9
+ previewProperties?: string[];
10
+ hidden: boolean;
11
+ setHidden: (hidden: boolean) => void;
12
+ }
13
+ export declare function ReferenceFilterField({ name, value, setValue, isArray, path, title, previewProperties, setHidden }: ReferenceFilterFieldProps): import("react/jsx-runtime").JSX.Element;
14
+ export {};
@@ -0,0 +1,13 @@
1
+ import { VirtualTableWhereFilterOp } from "../../VirtualTable";
2
+ import { EnumValueConfig } from "../../../types";
3
+ interface StringNumberFilterFieldProps {
4
+ name: string;
5
+ dataType: "string" | "number";
6
+ value?: [op: VirtualTableWhereFilterOp, fieldValue: any];
7
+ setValue: (value?: [op: VirtualTableWhereFilterOp, newValue: any]) => void;
8
+ isArray?: boolean;
9
+ enumValues?: EnumValueConfig[];
10
+ title?: string;
11
+ }
12
+ export declare function StringNumberFilterField({ name, value, setValue, dataType, isArray, enumValues, title }: StringNumberFilterFieldProps): import("react/jsx-runtime").JSX.Element;
13
+ export {};
@@ -0,0 +1,11 @@
1
+ import React from "react";
2
+ import { VirtualTableProps } from "./VirtualTableProps";
3
+ /**
4
+ * This is a Table component that allows displaying arbitrary data, not
5
+ * necessarily related to entities or properties. It is the component
6
+ * that powers the entity collections but has a generic API, so it
7
+ * can be reused.
8
+ *
9
+ * @group Components
10
+ */
11
+ export declare const VirtualTable: React.NamedExoticComponent<VirtualTableProps<any>>;
@@ -0,0 +1,14 @@
1
+ import React from "react";
2
+ import { CellRendererParams, VirtualTableColumn } from "./VirtualTableProps";
3
+ type VirtualTableCellProps<T extends any> = {
4
+ dataKey: string;
5
+ column: VirtualTableColumn;
6
+ columns: VirtualTableColumn[];
7
+ rowData: any;
8
+ cellData: any;
9
+ rowIndex: any;
10
+ columnIndex: number;
11
+ cellRenderer: React.ComponentType<CellRendererParams<T>>;
12
+ };
13
+ export declare const VirtualTableCell: React.NamedExoticComponent<VirtualTableCellProps<any>>;
14
+ export {};
@@ -0,0 +1,27 @@
1
+ import React, { RefObject } from "react";
2
+ import { VirtualTableColumn, VirtualTableSort, VirtualTableWhereFilterOp } from "./VirtualTableProps";
3
+ export type FilterFormFieldProps<CustomProps> = {
4
+ id: React.Key;
5
+ filterValue: [VirtualTableWhereFilterOp, any] | undefined;
6
+ setFilterValue: (filterValue?: [VirtualTableWhereFilterOp, any]) => void;
7
+ column: VirtualTableColumn<CustomProps>;
8
+ hidden: boolean;
9
+ setHidden: (hidden: boolean) => void;
10
+ };
11
+ type VirtualTableHeaderProps<M extends Record<string, any>> = {
12
+ resizeHandleRef: RefObject<HTMLDivElement>;
13
+ columnIndex: number;
14
+ isResizingIndex: number;
15
+ column: VirtualTableColumn<any>;
16
+ onColumnSort: (key: Extract<keyof M, string>) => void;
17
+ filter?: [VirtualTableWhereFilterOp, any];
18
+ sort: VirtualTableSort;
19
+ onFilterUpdate: (column: VirtualTableColumn, filterForProperty?: [VirtualTableWhereFilterOp, any]) => void;
20
+ onClickResizeColumn?: (columnIndex: number, column: VirtualTableColumn) => void;
21
+ createFilterField?: (props: FilterFormFieldProps<any>) => React.ReactNode;
22
+ AdditionalHeaderWidget?: (props: {
23
+ onHover: boolean;
24
+ }) => React.ReactNode;
25
+ };
26
+ export declare const VirtualTableHeader: React.FunctionComponent<VirtualTableHeaderProps<any>>;
27
+ export {};
@@ -0,0 +1,2 @@
1
+ import { VirtualTableContextProps } from "./types";
2
+ export declare const VirtualTableHeaderRow: ({ columns, currentSort, onColumnSort, onFilterUpdate, sortByProperty, filter, onColumnResize, onColumnResizeEnd, createFilterField, AddColumnComponent }: VirtualTableContextProps<any>) => import("react/jsx-runtime").JSX.Element;