@firecms/core 3.0.0-alpha.8 → 3.0.0-alpha.80

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 (470) hide show
  1. package/README.md +1 -1
  2. package/dist/components/ArrayContainer.d.ts +42 -0
  3. package/dist/components/CircularProgressCenter.d.ts +11 -0
  4. package/dist/components/DeleteConfirmationDialog.d.ts +9 -0
  5. package/dist/components/DeleteEntityDialog.d.ts +12 -0
  6. package/dist/components/EntityCollectionTable/EntityCollectionRowActions.d.ts +35 -0
  7. package/dist/components/EntityCollectionTable/EntityCollectionTable.d.ts +30 -0
  8. package/dist/components/EntityCollectionTable/EntityCollectionTableProps.d.ts +106 -0
  9. package/dist/components/EntityCollectionTable/PropertyTableCell.d.ts +18 -0
  10. package/dist/components/EntityCollectionTable/SimpleEntityCollectionTable.d.ts +95 -0
  11. package/dist/components/EntityCollectionTable/column_utils.d.ts +16 -0
  12. package/dist/components/EntityCollectionTable/fields/TableReferenceField.d.ts +15 -0
  13. package/dist/components/EntityCollectionTable/fields/TableStorageUpload.d.ts +33 -0
  14. package/dist/components/EntityCollectionTable/filters/BooleanFilterField.d.ts +9 -0
  15. package/dist/components/EntityCollectionTable/filters/DateTimeFilterField.d.ts +11 -0
  16. package/dist/components/EntityCollectionTable/filters/ReferenceFilterField.d.ts +14 -0
  17. package/dist/components/EntityCollectionTable/filters/StringNumberFilterField.d.ts +13 -0
  18. package/dist/components/EntityCollectionTable/index.d.ts +8 -0
  19. package/dist/components/EntityCollectionTable/internal/CollectionTableToolbar.d.ts +18 -0
  20. package/dist/components/EntityCollectionTable/internal/EntityTableCell.d.ts +26 -0
  21. package/dist/components/EntityCollectionTable/internal/EntityTableCellActions.d.ts +9 -0
  22. package/dist/components/EntityCollectionTable/internal/common.d.ts +4 -0
  23. package/dist/components/EntityCollectionTable/internal/default_entity_actions.d.ts +6 -0
  24. package/dist/components/EntityCollectionTable/internal/popup_field/ElementResizeListener.d.ts +5 -0
  25. package/dist/components/EntityCollectionTable/internal/popup_field/PopupFormField.d.ts +23 -0
  26. package/dist/components/EntityCollectionTable/internal/popup_field/useDraggable.d.ts +13 -0
  27. package/dist/components/EntityCollectionTable/internal/popup_field/useWindowSize.d.ts +6 -0
  28. package/dist/components/EntityCollectionTable/types.d.ts +53 -0
  29. package/dist/components/EntityCollectionTable/useDataSourceEntityCollectionTableController.d.ts +32 -0
  30. package/dist/components/EntityCollectionTable/useDebouncedData.d.ts +9 -0
  31. package/dist/components/EntityCollectionView/EntityCollectionView.d.ts +37 -0
  32. package/dist/components/EntityCollectionView/EntityCollectionViewActions.d.ts +14 -0
  33. package/dist/components/EntityCollectionView/useColumnsIds.d.ts +4 -0
  34. package/dist/components/EntityPreview.d.ts +11 -0
  35. package/dist/components/ErrorBoundary.d.ts +11 -0
  36. package/dist/components/ErrorTooltip.d.ts +2 -0
  37. package/dist/components/ErrorView.d.ts +19 -0
  38. package/dist/components/FieldConfigBadge.d.ts +4 -0
  39. package/dist/components/FireCMSAppBar.d.ts +26 -0
  40. package/dist/components/FireCMSLogo.d.ts +7 -0
  41. package/dist/components/HomePage/DefaultHomePage.d.ts +21 -0
  42. package/dist/components/HomePage/FavouritesView.d.ts +3 -0
  43. package/dist/components/HomePage/NavigationCollectionCard.d.ts +17 -0
  44. package/dist/components/HomePage/NavigationGroup.d.ts +4 -0
  45. package/dist/components/HomePage/index.d.ts +3 -0
  46. package/dist/components/LabelWithIcon.d.ts +14 -0
  47. package/dist/components/NotFoundPage.d.ts +1 -0
  48. package/dist/components/ReferenceSelectionInner.d.ts +58 -0
  49. package/dist/components/ReferenceWidget.d.ts +28 -0
  50. package/dist/components/SearchIconsView.d.ts +5 -0
  51. package/dist/components/VirtualTable/VirtualTable.d.ts +11 -0
  52. package/dist/components/VirtualTable/VirtualTableCell.d.ts +14 -0
  53. package/dist/components/VirtualTable/VirtualTableHeader.d.ts +27 -0
  54. package/dist/components/VirtualTable/VirtualTableHeaderRow.d.ts +2 -0
  55. package/dist/components/VirtualTable/VirtualTableProps.d.ts +214 -0
  56. package/dist/components/VirtualTable/VirtualTableRow.d.ts +3 -0
  57. package/dist/components/VirtualTable/common.d.ts +2 -0
  58. package/dist/components/VirtualTable/fields/VirtualTableDateField.d.ts +11 -0
  59. package/dist/components/VirtualTable/fields/VirtualTableInput.d.ts +8 -0
  60. package/dist/components/VirtualTable/fields/VirtualTableNumberInput.d.ts +8 -0
  61. package/dist/components/VirtualTable/fields/VirtualTableSelect.d.ts +15 -0
  62. package/dist/components/VirtualTable/fields/VirtualTableSwitch.d.ts +7 -0
  63. package/dist/components/VirtualTable/index.d.ts +2 -0
  64. package/dist/components/VirtualTable/types.d.ts +34 -0
  65. package/dist/components/index.d.ts +21 -0
  66. package/dist/contexts/AuthControllerContext.d.ts +3 -0
  67. package/dist/contexts/DataSourceContext.d.ts +3 -0
  68. package/dist/contexts/DialogsProvider.d.ts +4 -0
  69. package/dist/contexts/ModeController.d.ts +4 -0
  70. package/dist/contexts/NavigationContext.d.ts +3 -0
  71. package/dist/contexts/SideDialogsControllerContext.d.ts +3 -0
  72. package/dist/contexts/SideEntityControllerContext.d.ts +3 -0
  73. package/dist/contexts/SnackbarProvider.d.ts +2 -0
  74. package/dist/contexts/StorageSourceContext.d.ts +3 -0
  75. package/dist/contexts/UserConfigurationPersistenceContext.d.ts +3 -0
  76. package/dist/contexts/index.d.ts +3 -0
  77. package/dist/core/Drawer.d.ts +23 -0
  78. package/dist/core/EntitySidePanel.d.ts +10 -0
  79. package/dist/core/FireCMS.d.ts +14 -0
  80. package/dist/core/NavigationRoutes.d.ts +21 -0
  81. package/dist/core/Scaffold.d.ts +52 -0
  82. package/dist/core/SideDialogs.d.ts +23 -0
  83. package/dist/core/field_configs.d.ts +7 -0
  84. package/dist/core/index.d.ts +10 -0
  85. package/dist/core/useBuildLocalConfigurationPersistence.d.ts +2 -0
  86. package/dist/core/useBuildModeController.d.ts +6 -0
  87. package/dist/form/EntityForm.d.ts +75 -0
  88. package/dist/form/PropertyFieldBinding.d.ts +30 -0
  89. package/dist/form/components/CustomIdField.d.ts +9 -0
  90. package/dist/form/components/ErrorFocus.d.ts +4 -0
  91. package/dist/form/components/FieldHelperText.d.ts +12 -0
  92. package/dist/form/components/FormikArrayContainer.d.ts +18 -0
  93. package/dist/form/components/StorageItemPreview.d.ts +13 -0
  94. package/dist/form/components/StorageUploadProgress.d.ts +10 -0
  95. package/dist/form/components/SubmitListener.d.ts +1 -0
  96. package/dist/form/components/SwitchControl.d.ts +8 -0
  97. package/dist/form/components/index.d.ts +3 -0
  98. package/dist/form/field_bindings/ArrayCustomShapedFieldBinding.d.ts +9 -0
  99. package/dist/form/field_bindings/ArrayOfReferencesFieldBinding.d.ts +11 -0
  100. package/dist/form/field_bindings/BlockFieldBinding.d.ts +10 -0
  101. package/dist/form/field_bindings/DateTimeFieldBinding.d.ts +11 -0
  102. package/dist/form/field_bindings/KeyValueFieldBinding.d.ts +7 -0
  103. package/dist/form/field_bindings/MapFieldBinding.d.ts +9 -0
  104. package/dist/form/field_bindings/MarkdownFieldBinding.d.ts +9 -0
  105. package/dist/form/field_bindings/MultiSelectBinding.d.ts +9 -0
  106. package/dist/form/field_bindings/ReadOnlyFieldBinding.d.ts +10 -0
  107. package/dist/form/field_bindings/ReferenceFieldBinding.d.ts +9 -0
  108. package/dist/form/field_bindings/RepeatFieldBinding.d.ts +10 -0
  109. package/dist/form/field_bindings/SelectFieldBinding.d.ts +12 -0
  110. package/dist/form/field_bindings/StorageUploadFieldBinding.d.ts +28 -0
  111. package/dist/form/field_bindings/SwitchFieldBinding.d.ts +12 -0
  112. package/dist/form/field_bindings/TextFieldBinding.d.ts +12 -0
  113. package/dist/form/index.d.ts +20 -0
  114. package/dist/form/useClearRestoreValue.d.ts +13 -0
  115. package/dist/form/validation.d.ts +25 -0
  116. package/dist/hooks/data/delete.d.ts +37 -0
  117. package/dist/hooks/data/save.d.ts +42 -0
  118. package/dist/hooks/data/useCollectionFetch.d.ts +50 -0
  119. package/dist/hooks/data/useDataOrder.d.ts +12 -0
  120. package/dist/hooks/data/useDataSource.d.ts +6 -0
  121. package/dist/hooks/data/useEntityFetch.d.ts +28 -0
  122. package/dist/hooks/index.d.ts +19 -0
  123. package/dist/hooks/useAuthController.d.ts +11 -0
  124. package/dist/hooks/useBrowserTitleAndIcon.d.ts +6 -0
  125. package/dist/hooks/useClipboard.d.ts +57 -0
  126. package/dist/hooks/useDialogsController.d.ts +11 -0
  127. package/dist/hooks/useFireCMSContext.d.ts +12 -0
  128. package/dist/hooks/useLargeLayout.d.ts +1 -0
  129. package/dist/hooks/useModeController.d.ts +20 -0
  130. package/dist/hooks/useNavigationController.d.ts +9 -0
  131. package/dist/hooks/useReferenceDialog.d.ts +18 -0
  132. package/dist/hooks/useResolvedNavigationFrom.d.ts +72 -0
  133. package/dist/hooks/useSideDialogsController.d.ts +18 -0
  134. package/dist/hooks/useSideEntityController.d.ts +12 -0
  135. package/dist/hooks/useSnackbarController.d.ts +41 -0
  136. package/dist/hooks/useStorageSource.d.ts +6 -0
  137. package/dist/hooks/useUserConfigurationPersistence.d.ts +8 -0
  138. package/dist/hooks/useVerifyLicense.d.ts +0 -0
  139. package/dist/index.d.ts +8 -0
  140. package/dist/index.es.js +15810 -26791
  141. package/dist/index.es.js.map +1 -1
  142. package/dist/index.umd.js +5 -1027
  143. package/dist/index.umd.js.map +1 -1
  144. package/dist/internal/EntityView.d.ts +22 -0
  145. package/dist/internal/common.d.ts +3 -0
  146. package/dist/internal/useBuildDataSource.d.ts +22 -0
  147. package/dist/internal/useBuildNavigationController.d.ts +14 -0
  148. package/dist/internal/useBuildSideDialogsController.d.ts +2 -0
  149. package/dist/internal/useBuildSideEntityController.d.ts +4 -0
  150. package/dist/internal/useLocaleConfig.d.ts +1 -0
  151. package/dist/internal/useRestoreScroll.d.ts +6 -0
  152. package/dist/internal/useUnsavedChangesDialog.d.ts +14 -0
  153. package/dist/preview/PropertyPreview.d.ts +7 -0
  154. package/dist/preview/PropertyPreviewProps.d.ts +43 -0
  155. package/dist/preview/components/ArrayEnumPreview.d.ts +11 -0
  156. package/dist/preview/components/AsyncPreviewComponent.d.ts +11 -0
  157. package/dist/preview/components/BooleanPreview.d.ts +7 -0
  158. package/dist/preview/components/DatePreview.d.ts +7 -0
  159. package/dist/preview/components/EmptyValue.d.ts +4 -0
  160. package/dist/preview/components/EnumValuesChip.d.ts +13 -0
  161. package/dist/preview/components/ImagePreview.d.ts +12 -0
  162. package/dist/preview/components/ReferencePreview.d.ts +22 -0
  163. package/dist/preview/components/StorageThumbnail.d.ts +13 -0
  164. package/dist/preview/components/UrlComponentPreview.d.ts +12 -0
  165. package/dist/preview/index.d.ts +23 -0
  166. package/dist/preview/property_previews/ArrayOfMapsPreview.d.ts +5 -0
  167. package/dist/preview/property_previews/ArrayOfReferencesPreview.d.ts +5 -0
  168. package/dist/preview/property_previews/ArrayOfStorageComponentsPreview.d.ts +5 -0
  169. package/dist/preview/property_previews/ArrayOfStringsPreview.d.ts +5 -0
  170. package/dist/preview/property_previews/ArrayOneOfPreview.d.ts +5 -0
  171. package/dist/preview/property_previews/ArrayPropertyEnumPreview.d.ts +5 -0
  172. package/dist/preview/property_previews/ArrayPropertyPreview.d.ts +5 -0
  173. package/dist/preview/property_previews/MapPropertyPreview.d.ts +8 -0
  174. package/dist/preview/property_previews/NumberPropertyPreview.d.ts +6 -0
  175. package/dist/preview/property_previews/SkeletonPropertyComponent.d.ts +14 -0
  176. package/dist/preview/property_previews/StringPropertyPreview.d.ts +6 -0
  177. package/dist/preview/util.d.ts +7 -0
  178. package/dist/types/analytics.d.ts +1 -0
  179. package/dist/types/appcheck.d.ts +26 -0
  180. package/dist/types/auth.d.ts +40 -0
  181. package/dist/types/collections.d.ts +451 -0
  182. package/dist/types/datasource.d.ts +262 -0
  183. package/dist/types/dialogs_controller.d.ts +32 -0
  184. package/dist/types/entities.d.ts +57 -0
  185. package/dist/types/entity_actions.d.ts +35 -0
  186. package/dist/types/entity_callbacks.d.ts +171 -0
  187. package/dist/types/entity_link_builder.d.ts +7 -0
  188. package/dist/types/export_import.d.ts +21 -0
  189. package/dist/types/fields.d.ts +181 -0
  190. package/dist/types/firecms.d.ts +151 -0
  191. package/dist/types/firecms_context.d.ts +110 -0
  192. package/dist/types/index.d.ts +26 -0
  193. package/dist/types/local_config_persistence.d.ts +21 -0
  194. package/dist/types/locales.d.ts +4 -0
  195. package/dist/types/modify_collections.d.ts +5 -0
  196. package/dist/types/navigation.d.ts +178 -0
  197. package/dist/types/permissions.d.ts +63 -0
  198. package/dist/types/plugins.d.ts +181 -0
  199. package/dist/types/properties.d.ts +681 -0
  200. package/dist/types/property_config.d.ts +42 -0
  201. package/dist/types/resolved_entities.d.ts +98 -0
  202. package/dist/types/side_dialogs_controller.d.ts +57 -0
  203. package/dist/types/side_entity_controller.d.ts +83 -0
  204. package/dist/types/storage.d.ts +82 -0
  205. package/dist/types/user.d.ts +36 -0
  206. package/dist/util/arrays.d.ts +1 -0
  207. package/dist/util/builders.d.ts +64 -0
  208. package/dist/util/collections.d.ts +3 -0
  209. package/dist/util/common.d.ts +2 -0
  210. package/dist/util/dates.d.ts +1 -0
  211. package/dist/util/entities.d.ts +28 -0
  212. package/dist/util/enums.d.ts +7 -0
  213. package/dist/util/flatten_object.d.ts +3 -0
  214. package/dist/util/hash.d.ts +1 -0
  215. package/dist/util/icon_list.d.ts +1 -0
  216. package/dist/util/icon_synonyms.d.ts +1950 -0
  217. package/dist/util/icons.d.ts +4 -0
  218. package/dist/util/index.d.ts +22 -0
  219. package/dist/util/join_collections.d.ts +9 -0
  220. package/dist/util/make_properties_editable.d.ts +3 -0
  221. package/dist/util/navigation_from_path.d.ts +24 -0
  222. package/dist/util/navigation_utils.d.ts +20 -0
  223. package/dist/util/objects.d.ts +10 -0
  224. package/dist/util/os.d.ts +2 -0
  225. package/dist/util/parent_references_from_path.d.ts +6 -0
  226. package/dist/util/paths.d.ts +14 -0
  227. package/dist/util/permissions.d.ts +5 -0
  228. package/dist/util/plurals.d.ts +18 -0
  229. package/dist/util/property_utils.d.ts +23 -0
  230. package/dist/util/references.d.ts +2 -0
  231. package/dist/util/regexp.d.ts +7 -0
  232. package/dist/util/resolutions.d.ts +64 -0
  233. package/dist/util/storage.d.ts +3 -0
  234. package/dist/util/strings.d.ts +6 -0
  235. package/dist/util/useDebounce.d.ts +1 -0
  236. package/dist/util/useStorageUploadController.d.ts +36 -0
  237. package/dist/util/useTraceUpdate.d.ts +1 -0
  238. package/package.json +112 -142
  239. package/src/components/ArrayContainer.tsx +369 -0
  240. package/src/components/CircularProgressCenter.tsx +26 -0
  241. package/src/components/DeleteConfirmationDialog.tsx +47 -0
  242. package/src/components/DeleteEntityDialog.tsx +207 -0
  243. package/src/components/EntityCollectionTable/EntityCollectionRowActions.tsx +174 -0
  244. package/src/components/EntityCollectionTable/EntityCollectionTable.tsx +496 -0
  245. package/src/components/EntityCollectionTable/EntityCollectionTableProps.tsx +150 -0
  246. package/src/components/EntityCollectionTable/PropertyTableCell.tsx +461 -0
  247. package/src/components/EntityCollectionTable/SimpleEntityCollectionTable.tsx +369 -0
  248. package/src/components/EntityCollectionTable/column_utils.tsx +74 -0
  249. package/src/components/EntityCollectionTable/fields/TableReferenceField.tsx +159 -0
  250. package/src/components/EntityCollectionTable/fields/TableStorageUpload.tsx +313 -0
  251. package/src/components/EntityCollectionTable/filters/BooleanFilterField.tsx +49 -0
  252. package/src/components/EntityCollectionTable/filters/DateTimeFilterField.tsx +109 -0
  253. package/src/components/EntityCollectionTable/filters/ReferenceFilterField.tsx +187 -0
  254. package/src/components/EntityCollectionTable/filters/StringNumberFilterField.tsx +159 -0
  255. package/src/components/EntityCollectionTable/index.tsx +20 -0
  256. package/src/components/EntityCollectionTable/internal/CollectionTableToolbar.tsx +113 -0
  257. package/src/components/EntityCollectionTable/internal/EntityTableCell.tsx +257 -0
  258. package/src/components/EntityCollectionTable/internal/EntityTableCellActions.tsx +70 -0
  259. package/src/components/EntityCollectionTable/internal/common.tsx +70 -0
  260. package/src/components/EntityCollectionTable/internal/default_entity_actions.tsx +122 -0
  261. package/src/components/EntityCollectionTable/internal/popup_field/ElementResizeListener.tsx +59 -0
  262. package/src/components/EntityCollectionTable/internal/popup_field/PopupFormField.tsx +401 -0
  263. package/src/components/EntityCollectionTable/internal/popup_field/useDraggable.tsx +97 -0
  264. package/src/components/EntityCollectionTable/internal/popup_field/useWindowSize.tsx +20 -0
  265. package/src/components/EntityCollectionTable/types.tsx +58 -0
  266. package/src/components/EntityCollectionTable/useDataSourceEntityCollectionTableController.tsx +225 -0
  267. package/src/components/EntityCollectionTable/useDebouncedData.ts +49 -0
  268. package/src/components/EntityCollectionView/EntityCollectionView.tsx +815 -0
  269. package/src/components/EntityCollectionView/EntityCollectionViewActions.tsx +131 -0
  270. package/src/components/EntityCollectionView/useColumnsIds.tsx +100 -0
  271. package/src/components/EntityPreview.tsx +83 -0
  272. package/src/components/ErrorBoundary.tsx +40 -0
  273. package/src/components/ErrorTooltip.tsx +11 -0
  274. package/src/components/ErrorView.tsx +52 -0
  275. package/src/components/FieldConfigBadge.tsx +17 -0
  276. package/src/components/FireCMSAppBar.tsx +157 -0
  277. package/src/components/FireCMSLogo.tsx +73 -0
  278. package/src/components/HomePage/DefaultHomePage.tsx +209 -0
  279. package/src/components/HomePage/FavouritesView.tsx +64 -0
  280. package/src/components/HomePage/NavigationCollectionCard.tsx +145 -0
  281. package/src/components/HomePage/NavigationGroup.tsx +39 -0
  282. package/src/components/HomePage/index.tsx +3 -0
  283. package/src/components/LabelWithIcon.tsx +33 -0
  284. package/src/components/NotFoundPage.tsx +25 -0
  285. package/src/components/ReferenceSelectionInner.tsx +364 -0
  286. package/src/components/ReferenceWidget.tsx +145 -0
  287. package/src/components/SearchIconsView.tsx +75 -0
  288. package/src/components/VirtualTable/VirtualTable.tsx +402 -0
  289. package/src/components/VirtualTable/VirtualTableCell.tsx +32 -0
  290. package/src/components/VirtualTable/VirtualTableHeader.tsx +260 -0
  291. package/src/components/VirtualTable/VirtualTableHeaderRow.tsx +131 -0
  292. package/src/components/VirtualTable/VirtualTableProps.tsx +269 -0
  293. package/src/components/VirtualTable/VirtualTableRow.tsx +53 -0
  294. package/src/components/VirtualTable/common.tsx +18 -0
  295. package/src/components/VirtualTable/fields/VirtualTableDateField.tsx +37 -0
  296. package/src/components/VirtualTable/fields/VirtualTableInput.tsx +91 -0
  297. package/src/components/VirtualTable/fields/VirtualTableNumberInput.tsx +82 -0
  298. package/src/components/VirtualTable/fields/VirtualTableSelect.tsx +130 -0
  299. package/src/components/VirtualTable/fields/VirtualTableSwitch.tsx +32 -0
  300. package/src/components/VirtualTable/index.tsx +2 -0
  301. package/src/components/VirtualTable/types.tsx +44 -0
  302. package/src/components/index.tsx +31 -0
  303. package/src/contexts/AuthControllerContext.tsx +4 -0
  304. package/src/contexts/DataSourceContext.tsx +4 -0
  305. package/src/contexts/DialogsProvider.tsx +52 -0
  306. package/src/contexts/ModeController.tsx +13 -0
  307. package/src/contexts/NavigationContext.tsx +4 -0
  308. package/src/contexts/SideDialogsControllerContext.tsx +4 -0
  309. package/src/contexts/SideEntityControllerContext.tsx +4 -0
  310. package/src/contexts/SnackbarProvider.tsx +12 -0
  311. package/src/contexts/StorageSourceContext.tsx +4 -0
  312. package/src/contexts/UserConfigurationPersistenceContext.tsx +4 -0
  313. package/src/contexts/index.ts +3 -0
  314. package/src/core/Drawer.tsx +161 -0
  315. package/src/core/EntitySidePanel.tsx +89 -0
  316. package/src/core/FireCMS.tsx +184 -0
  317. package/src/core/NavigationRoutes.tsx +118 -0
  318. package/src/core/Scaffold.tsx +278 -0
  319. package/src/core/SideDialogs.tsx +156 -0
  320. package/src/core/field_configs.tsx +400 -0
  321. package/src/core/index.tsx +14 -0
  322. package/src/core/useBuildLocalConfigurationPersistence.tsx +67 -0
  323. package/src/core/useBuildModeController.tsx +60 -0
  324. package/src/form/EntityForm.tsx +646 -0
  325. package/src/form/PropertyFieldBinding.tsx +313 -0
  326. package/src/form/components/CustomIdField.tsx +124 -0
  327. package/src/form/components/ErrorFocus.tsx +51 -0
  328. package/src/form/components/FieldHelperText.tsx +58 -0
  329. package/src/form/components/FormikArrayContainer.tsx +44 -0
  330. package/src/form/components/StorageItemPreview.tsx +66 -0
  331. package/src/form/components/StorageUploadProgress.tsx +104 -0
  332. package/src/form/components/SubmitListener.tsx +32 -0
  333. package/src/form/components/SwitchControl.tsx +39 -0
  334. package/src/form/components/index.tsx +3 -0
  335. package/src/form/field_bindings/ArrayCustomShapedFieldBinding.tsx +88 -0
  336. package/src/form/field_bindings/ArrayOfReferencesFieldBinding.tsx +153 -0
  337. package/src/form/field_bindings/BlockFieldBinding.tsx +245 -0
  338. package/src/form/field_bindings/DateTimeFieldBinding.tsx +67 -0
  339. package/src/form/field_bindings/KeyValueFieldBinding.tsx +560 -0
  340. package/src/form/field_bindings/MapFieldBinding.tsx +136 -0
  341. package/src/form/field_bindings/MarkdownFieldBinding.tsx +696 -0
  342. package/src/form/field_bindings/MultiSelectBinding.tsx +115 -0
  343. package/src/form/field_bindings/ReadOnlyFieldBinding.tsx +70 -0
  344. package/src/form/field_bindings/ReferenceFieldBinding.tsx +122 -0
  345. package/src/form/field_bindings/RepeatFieldBinding.tsx +103 -0
  346. package/src/form/field_bindings/SelectFieldBinding.tsx +100 -0
  347. package/src/form/field_bindings/StorageUploadFieldBinding.tsx +438 -0
  348. package/src/form/field_bindings/SwitchFieldBinding.tsx +61 -0
  349. package/src/form/field_bindings/TextFieldBinding.tsx +108 -0
  350. package/src/form/index.tsx +42 -0
  351. package/src/form/useClearRestoreValue.tsx +35 -0
  352. package/src/form/validation.ts +413 -0
  353. package/src/hooks/data/delete.ts +101 -0
  354. package/src/hooks/data/save.ts +165 -0
  355. package/src/hooks/data/useCollectionFetch.tsx +162 -0
  356. package/src/hooks/data/useDataOrder.ts +26 -0
  357. package/src/hooks/data/useDataSource.tsx +9 -0
  358. package/src/hooks/data/useEntityFetch.tsx +129 -0
  359. package/src/hooks/index.tsx +23 -0
  360. package/src/hooks/useAuthController.tsx +14 -0
  361. package/src/hooks/useBrowserTitleAndIcon.tsx +25 -0
  362. package/src/hooks/useClipboard.tsx +158 -0
  363. package/src/hooks/useDialogsController.tsx +14 -0
  364. package/src/hooks/useFireCMSContext.tsx +50 -0
  365. package/src/hooks/useLargeLayout.tsx +97 -0
  366. package/src/hooks/useModeController.tsx +24 -0
  367. package/src/hooks/useNavigationController.tsx +12 -0
  368. package/src/hooks/useReferenceDialog.tsx +56 -0
  369. package/src/hooks/useResolvedNavigationFrom.tsx +160 -0
  370. package/src/hooks/useSideDialogsController.tsx +21 -0
  371. package/src/hooks/useSideEntityController.tsx +15 -0
  372. package/src/hooks/useSnackbarController.tsx +76 -0
  373. package/src/hooks/useStorageSource.tsx +9 -0
  374. package/src/hooks/useUserConfigurationPersistence.tsx +11 -0
  375. package/src/hooks/useVerifyLicense.tsx +1 -0
  376. package/src/index.ts +8 -0
  377. package/src/internal/EntityView.tsx +576 -0
  378. package/src/internal/common.tsx +5 -0
  379. package/src/internal/useBuildDataSource.ts +358 -0
  380. package/src/internal/useBuildNavigationController.tsx +371 -0
  381. package/src/internal/useBuildSideDialogsController.tsx +126 -0
  382. package/src/internal/useBuildSideEntityController.tsx +172 -0
  383. package/src/internal/useLocaleConfig.tsx +18 -0
  384. package/src/internal/useRestoreScroll.tsx +48 -0
  385. package/src/internal/useUnsavedChangesDialog.tsx +106 -0
  386. package/src/preview/PropertyPreview.tsx +222 -0
  387. package/src/preview/PropertyPreviewProps.tsx +59 -0
  388. package/src/preview/components/ArrayEnumPreview.tsx +39 -0
  389. package/src/preview/components/AsyncPreviewComponent.tsx +47 -0
  390. package/src/preview/components/BooleanPreview.tsx +11 -0
  391. package/src/preview/components/DatePreview.tsx +27 -0
  392. package/src/preview/components/EmptyValue.tsx +10 -0
  393. package/src/preview/components/EnumValuesChip.tsx +38 -0
  394. package/src/preview/components/ImagePreview.tsx +106 -0
  395. package/src/preview/components/ReferencePreview.tsx +249 -0
  396. package/src/preview/components/StorageThumbnail.tsx +84 -0
  397. package/src/preview/components/UrlComponentPreview.tsx +79 -0
  398. package/src/preview/index.ts +27 -0
  399. package/src/preview/property_previews/ArrayOfMapsPreview.tsx +82 -0
  400. package/src/preview/property_previews/ArrayOfReferencesPreview.tsx +52 -0
  401. package/src/preview/property_previews/ArrayOfStorageComponentsPreview.tsx +54 -0
  402. package/src/preview/property_previews/ArrayOfStringsPreview.tsx +55 -0
  403. package/src/preview/property_previews/ArrayOneOfPreview.tsx +67 -0
  404. package/src/preview/property_previews/ArrayPropertyEnumPreview.tsx +28 -0
  405. package/src/preview/property_previews/ArrayPropertyPreview.tsx +68 -0
  406. package/src/preview/property_previews/MapPropertyPreview.tsx +146 -0
  407. package/src/preview/property_previews/NumberPropertyPreview.tsx +27 -0
  408. package/src/preview/property_previews/SkeletonPropertyComponent.tsx +283 -0
  409. package/src/preview/property_previews/StringPropertyPreview.tsx +59 -0
  410. package/src/preview/util.ts +31 -0
  411. package/src/types/analytics.ts +34 -0
  412. package/src/types/appcheck.ts +29 -0
  413. package/src/types/auth.tsx +49 -0
  414. package/src/types/collections.ts +530 -0
  415. package/src/types/datasource.ts +389 -0
  416. package/src/types/dialogs_controller.tsx +33 -0
  417. package/src/types/entities.ts +76 -0
  418. package/src/types/entity_actions.tsx +39 -0
  419. package/src/types/entity_callbacks.ts +209 -0
  420. package/src/types/entity_link_builder.ts +8 -0
  421. package/src/types/export_import.ts +26 -0
  422. package/src/types/fields.tsx +220 -0
  423. package/src/types/firecms.tsx +175 -0
  424. package/src/types/firecms_context.tsx +128 -0
  425. package/src/types/index.ts +26 -0
  426. package/src/types/local_config_persistence.tsx +23 -0
  427. package/src/types/locales.ts +81 -0
  428. package/src/types/modify_collections.tsx +6 -0
  429. package/src/types/navigation.ts +214 -0
  430. package/src/types/permissions.ts +76 -0
  431. package/src/types/plugins.tsx +219 -0
  432. package/src/types/properties.ts +851 -0
  433. package/src/types/property_config.tsx +72 -0
  434. package/src/types/resolved_entities.ts +148 -0
  435. package/src/types/side_dialogs_controller.tsx +68 -0
  436. package/src/types/side_entity_controller.tsx +96 -0
  437. package/src/types/storage.ts +96 -0
  438. package/src/types/user.ts +37 -0
  439. package/src/util/arrays.ts +3 -0
  440. package/src/util/builders.ts +139 -0
  441. package/src/util/collections.ts +50 -0
  442. package/src/util/common.tsx +2 -0
  443. package/src/util/dates.ts +1 -0
  444. package/src/util/entities.ts +196 -0
  445. package/src/util/enums.ts +56 -0
  446. package/src/util/flatten_object.ts +45 -0
  447. package/src/util/hash.ts +11 -0
  448. package/src/util/icon_list.ts +17 -0
  449. package/src/util/icon_synonyms.ts +1950 -0
  450. package/src/util/icons.tsx +45 -0
  451. package/src/util/index.ts +22 -0
  452. package/src/util/join_collections.ts +172 -0
  453. package/src/util/make_properties_editable.ts +29 -0
  454. package/src/util/navigation_from_path.ts +107 -0
  455. package/src/util/navigation_utils.ts +111 -0
  456. package/src/util/objects.ts +168 -0
  457. package/src/util/os.ts +13 -0
  458. package/src/util/parent_references_from_path.ts +56 -0
  459. package/src/util/paths.ts +27 -0
  460. package/src/util/permissions.ts +80 -0
  461. package/src/util/plurals.ts +190 -0
  462. package/src/util/property_utils.tsx +130 -0
  463. package/src/util/references.ts +20 -0
  464. package/src/util/regexp.ts +32 -0
  465. package/src/util/resolutions.ts +399 -0
  466. package/src/util/storage.ts +92 -0
  467. package/src/util/strings.ts +62 -0
  468. package/src/util/useDebounce.ts +25 -0
  469. package/src/util/useStorageUploadController.tsx +243 -0
  470. package/src/util/useTraceUpdate.tsx +23 -0
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ import { CMSView, EntityCollection } from "../types";
3
+ export declare function getIcon(iconKey?: string, className?: string): React.ReactElement | undefined;
4
+ export declare function getIconForView(collectionOrView: EntityCollection | CMSView, className?: string): React.ReactElement;
@@ -0,0 +1,22 @@
1
+ export * from "./collections";
2
+ export * from "./entities";
3
+ export * from "./strings";
4
+ export * from "./dates";
5
+ export * from "./enums";
6
+ export * from "./objects";
7
+ export * from "./paths";
8
+ export * from "./regexp";
9
+ export * from "./navigation_utils";
10
+ export * from "./useDebounce";
11
+ export * from "./property_utils";
12
+ export * from "./resolutions";
13
+ export * from "./permissions";
14
+ export * from "./icon_list";
15
+ export * from "./icon_synonyms";
16
+ export * from "./icons";
17
+ export * from "./plurals";
18
+ export * from "./references";
19
+ export * from "./flatten_object";
20
+ export * from "./make_properties_editable";
21
+ export * from "./join_collections";
22
+ export * from "./builders";
@@ -0,0 +1,9 @@
1
+ import { EntityCollection, ModifyCollectionProps } from "../types";
2
+ /**
3
+ *
4
+ */
5
+ export declare function joinCollectionLists(targetCollections: EntityCollection[], sourceCollections: EntityCollection[] | undefined, parentPaths?: string[], modifyCollection?: (props: ModifyCollectionProps) => EntityCollection | void): EntityCollection[];
6
+ /**
7
+ *
8
+ */
9
+ export declare function mergeCollection(target: EntityCollection, source: EntityCollection, parentPaths?: string[], modifyCollection?: (props: ModifyCollectionProps) => EntityCollection | void): EntityCollection;
@@ -0,0 +1,3 @@
1
+ import { Properties, PropertiesOrBuilders } from "../types";
2
+ export declare function makePropertiesEditable(properties: Properties): Properties<any>;
3
+ export declare function makePropertiesNonEditable(properties: PropertiesOrBuilders): PropertiesOrBuilders;
@@ -0,0 +1,24 @@
1
+ import { EntityCollection, EntityCustomView } from "../types";
2
+ export type NavigationViewInternal<M extends Record<string, any> = any> = NavigationViewEntityInternal<M> | NavigationViewCollectionInternal<M> | NavigationViewEntityCustomInternal<M>;
3
+ export interface NavigationViewEntityInternal<M extends Record<string, any>> {
4
+ type: "entity";
5
+ entityId: string;
6
+ path: string;
7
+ parentCollection: EntityCollection<M>;
8
+ }
9
+ export interface NavigationViewCollectionInternal<M extends Record<string, any>> {
10
+ type: "collection";
11
+ path: string;
12
+ collection: EntityCollection<M>;
13
+ }
14
+ export interface NavigationViewEntityCustomInternal<M extends Record<string, any>> {
15
+ type: "custom_view";
16
+ path: string;
17
+ view: EntityCustomView<M>;
18
+ }
19
+ export declare function getNavigationEntriesFromPathInternal(props: {
20
+ path: string;
21
+ collections: EntityCollection[] | undefined;
22
+ currentFullPath?: string;
23
+ contextEntityViews?: EntityCustomView<any>[];
24
+ }): NavigationViewInternal[];
@@ -0,0 +1,20 @@
1
+ import { EntityCollection } from "../types";
2
+ export declare function removeInitialAndTrailingSlashes(s: string): string;
3
+ export declare function removeInitialSlash(s: string): string;
4
+ export declare function removeTrailingSlash(s: string): string;
5
+ export declare function addInitialSlash(s: string): string;
6
+ export declare function getLastSegment(path: string): string;
7
+ export declare function resolveCollectionPathIds(path: string, allCollections: EntityCollection[]): string;
8
+ /**
9
+ * Find the corresponding view at any depth for a given path.
10
+ * Note that path or segments of the paths can be collection aliases.
11
+ * @param pathOrAlias
12
+ * @param collections
13
+ */
14
+ export declare function getCollectionByPathOrId(pathOrAlias: string, collections: EntityCollection[]): EntityCollection | undefined;
15
+ /**
16
+ * Get the subcollection combinations from a path:
17
+ * "sites/es/locales" => ["sites/es/locales", "sites"]
18
+ * @param subpaths
19
+ */
20
+ export declare function getCollectionPathsCombinations(subpaths: string[]): string[];
@@ -0,0 +1,10 @@
1
+ export declare const pick: <T>(obj: T, ...args: any[]) => T;
2
+ export declare function isObject(item: any): any;
3
+ export declare function mergeDeep<T extends object>(target: T, source: any): T;
4
+ export declare function getValueInPath(o: object | undefined, path: string): any;
5
+ export declare function removeInPath(o: object, path: string): object | undefined;
6
+ export declare function removeFunctions(o: object | undefined): any;
7
+ export declare function getHashValue<T>(v: T): any;
8
+ export declare function removeUndefined(value: any, removeEmptyStrings?: boolean): any;
9
+ export declare function isEmptyObject(obj: object): boolean;
10
+ export declare function removePropsIfExisting(source: any, comparison: any): any;
@@ -0,0 +1,2 @@
1
+ export declare function getOS(): string;
2
+ export declare function getAltSymbol(): "Alt" | "⌥";
@@ -0,0 +1,6 @@
1
+ import { EntityCollection, EntityReference } from "../types";
2
+ export declare function getParentReferencesFromPath(props: {
3
+ path: string;
4
+ collections: EntityCollection[] | undefined;
5
+ currentFullPath?: string;
6
+ }): EntityReference[];
@@ -0,0 +1,14 @@
1
+ export declare const COLLECTION_PATH_SEPARATOR = "::";
2
+ /**
3
+ * Remove the entity ids from a given path
4
+ * `products/B44RG6APH/locales` => `products::locales`
5
+ * @param path
6
+ */
7
+ export declare function stripCollectionPath(path: string): string;
8
+ export declare function segmentsToStrippedPath(paths: string[]): string;
9
+ /**
10
+ * Extract the collection path routes
11
+ * `products/B44RG6APH/locales` => [`products`, `locales`]
12
+ * @param path
13
+ */
14
+ export declare function fullPathToCollectionSegments(path: string): string[];
@@ -0,0 +1,5 @@
1
+ import { AuthController, Entity, EntityCollection, Permissions, User } from "../types";
2
+ export declare function resolvePermissions<M extends Record<string, any>, UserType extends User>(collection: EntityCollection<M>, authController: AuthController<UserType>, pathSegments: string[], entity: Entity<M> | null): Permissions;
3
+ export declare function canEditEntity<M extends Record<string, any>, UserType extends User>(collection: EntityCollection<M>, authController: AuthController<UserType>, paths: string[], entity: Entity<M> | null): boolean;
4
+ export declare function canCreateEntity<M extends Record<string, any>, UserType extends User>(collection: EntityCollection<M>, authController: AuthController<UserType>, paths: string[], entity: Entity<M> | null): boolean;
5
+ export declare function canDeleteEntity<M extends Record<string, any>, UserType extends User>(collection: EntityCollection<M>, authController: AuthController<UserType>, paths: string[], entity: Entity<M> | null): boolean;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Returns the plural of an English word.
3
+ *
4
+ * @export
5
+ * @param {string} word
6
+ * @param {number} [amount]
7
+ * @returns {string}
8
+ */
9
+ export declare function plural(word: string, amount?: number): string;
10
+ /**
11
+ * Returns the singular of an English word.
12
+ *
13
+ * @export
14
+ * @param {string} word
15
+ * @param {number} [amount]
16
+ * @returns {string}
17
+ */
18
+ export declare function singular(word: string, amount?: number): string;
@@ -0,0 +1,23 @@
1
+ import React from "react";
2
+ import { EntityCollection, PropertiesOrBuilders, PropertyConfig, PropertyOrBuilder, ResolvedProperty } from "../types";
3
+ export declare function isReferenceProperty(propertyOrBuilder: PropertyOrBuilder, fields: Record<string, PropertyConfig>): boolean | null;
4
+ export declare function getIdIcon(size: "small" | "medium" | "large"): React.ReactNode;
5
+ export declare function getIconForWidget(widget: PropertyConfig | undefined, size: "small" | "medium" | "large"): import("react/jsx-runtime").JSX.Element;
6
+ export declare function getIconForProperty(property: PropertyOrBuilder | ResolvedProperty, size?: "small" | "medium" | "large", fields?: Record<string, PropertyConfig>): React.ReactNode;
7
+ export declare function getColorForProperty(property: PropertyOrBuilder, fields: Record<string, PropertyConfig>): string;
8
+ /**
9
+ * Get a property in a property tree from a path like
10
+ * `address.street`
11
+ * @param properties
12
+ * @param path
13
+ */
14
+ export declare function getPropertyInPath<M extends Record<string, any>>(properties: PropertiesOrBuilders<M>, path: string): PropertyOrBuilder<any, M> | undefined;
15
+ export declare function getResolvedPropertyInPath(properties: Record<string, ResolvedProperty>, path: string): ResolvedProperty | undefined;
16
+ export declare function getBracketNotation(path: string): string;
17
+ /**
18
+ * Get properties exclusively indexed by their order
19
+ * @param properties
20
+ * @param propertiesOrder
21
+ */
22
+ export declare function getPropertiesWithPropertiesOrder<M extends Record<string, any>>(properties: PropertiesOrBuilders<M>, propertiesOrder?: Extract<keyof M, string>[]): PropertiesOrBuilders<M>;
23
+ export declare function getDefaultPropertiesOrder(collection: EntityCollection<any>): string[];
@@ -0,0 +1,2 @@
1
+ import { EntityCollection, PropertyConfig } from "../types";
2
+ export declare function getReferencePreviewKeys(targetCollection: EntityCollection<any>, fields: Record<string, PropertyConfig>, previewProperties?: string[], limit?: number): string[];
@@ -0,0 +1,7 @@
1
+ export declare function serializeRegExp(input: RegExp): string;
2
+ /**
3
+ * Get a RegExp out of a serialized string
4
+ * @param input
5
+ */
6
+ export declare function hydrateRegExp(input?: string): RegExp | undefined;
7
+ export declare function isValidRegExp(input: string): boolean;
@@ -0,0 +1,64 @@
1
+ import { ArrayProperty, CMSType, EntityCollection, EntityCustomView, EntityValues, EnumValueConfig, EnumValues, NumberProperty, PropertiesOrBuilders, PropertyConfig, PropertyOrBuilder, ResolvedArrayProperty, ResolvedEntityCollection, ResolvedNumberProperty, ResolvedProperties, ResolvedProperty, ResolvedStringProperty, StringProperty, UserConfigurationPersistence } from "../types";
2
+ export declare const resolveCollection: <M extends Record<string, any>>({ collection, path, entityId, values, previousValues, userConfigPersistence, fields }: {
3
+ collection: EntityCollection<M, import("../types").User> | ResolvedEntityCollection<M>;
4
+ path: string;
5
+ entityId?: string | undefined;
6
+ values?: Partial<M> | undefined;
7
+ previousValues?: Partial<M> | undefined;
8
+ userConfigPersistence?: UserConfigurationPersistence | undefined;
9
+ fields?: Record<string, PropertyConfig> | undefined;
10
+ }) => ResolvedEntityCollection<M>;
11
+ /**
12
+ * Resolve property builders, enums and arrays.
13
+ * @param propertyOrBuilder
14
+ * @param propertyValue
15
+ * @param values
16
+ */
17
+ export declare function resolveProperty<T extends CMSType = CMSType, M extends Record<string, any> = any>({ propertyOrBuilder, propertyValue, fromBuilder, ...props }: {
18
+ propertyKey?: string;
19
+ propertyOrBuilder: PropertyOrBuilder<T, M> | ResolvedProperty<T>;
20
+ propertyValue?: unknown;
21
+ values?: Partial<M>;
22
+ previousValues?: Partial<M>;
23
+ path?: string;
24
+ entityId?: string;
25
+ index?: number;
26
+ fromBuilder?: boolean;
27
+ fields?: Record<string, PropertyConfig<any>>;
28
+ }): ResolvedProperty<T> | null;
29
+ export declare function resolveArrayProperty<T extends any[], M>({ propertyKey, property, propertyValue, ...props }: {
30
+ propertyKey?: string;
31
+ property: ArrayProperty<T> | ResolvedArrayProperty<T>;
32
+ propertyValue: any;
33
+ values?: Partial<M>;
34
+ previousValues?: Partial<M>;
35
+ path?: string;
36
+ entityId?: string;
37
+ index?: number;
38
+ fromBuilder?: boolean;
39
+ fields?: Record<string, PropertyConfig>;
40
+ }): ResolvedArrayProperty;
41
+ /**
42
+ * Resolve enums and arrays for properties
43
+ * @param properties
44
+ * @param value
45
+ */
46
+ export declare function resolveProperties<M extends Record<string, any>>({ properties, propertyValue, ...props }: {
47
+ properties: PropertiesOrBuilders<M>;
48
+ propertyValue: unknown;
49
+ values?: Partial<M>;
50
+ previousValues?: Partial<M>;
51
+ path?: string;
52
+ entityId?: string;
53
+ index?: number;
54
+ fromBuilder?: boolean;
55
+ fields?: Record<string, PropertyConfig>;
56
+ }): ResolvedProperties<M>;
57
+ /**
58
+ * Resolve enum aliases for a string or number property
59
+ * @param property
60
+ * @param fromBuilder
61
+ */
62
+ export declare function resolvePropertyEnum(property: StringProperty | NumberProperty, fromBuilder?: boolean): ResolvedStringProperty | ResolvedNumberProperty;
63
+ export declare function resolveEnumValues(input: EnumValues): EnumValueConfig[] | undefined;
64
+ export declare function resolveEntityView(entityView: string | EntityCustomView<any>, contextEntityViews?: EntityCustomView<any>[]): EntityCustomView<any> | undefined;
@@ -0,0 +1,3 @@
1
+ import { EntityValues, ResolvedArrayProperty, ResolvedStringProperty, StorageConfig, UploadedFileContext } from "../types";
2
+ export declare function resolveFilenameString<M extends object>(input: string | ((context: UploadedFileContext) => Promise<string> | string), storage: StorageConfig, values: EntityValues<M>, entityId: string, path: string, property: ResolvedStringProperty | ResolvedArrayProperty<string[]>, file: File, propertyKey: string): Promise<string>;
3
+ export declare function resolveStoragePathString<M extends object>(input: string | ((context: UploadedFileContext) => string), storage: StorageConfig, values: EntityValues<M>, entityId: string, path: string, property: ResolvedStringProperty | ResolvedArrayProperty<string[]>, file: File, propertyKey: string): string;
@@ -0,0 +1,6 @@
1
+ export declare const toKebabCase: (str: string) => string;
2
+ export declare const toSnakeCase: (str: string) => string;
3
+ export declare function randomString(strLength?: number): string;
4
+ export declare function randomColor(): string;
5
+ export declare function slugify(text?: string, separator?: string, lowercase?: boolean): string;
6
+ export declare function unslugify(slug: string): string;
@@ -0,0 +1 @@
1
+ export declare function useDebounce<T>(value: T, callback: () => void, immediate: boolean, timeoutMs?: number): void;
@@ -0,0 +1,36 @@
1
+ import { EntityValues, ResolvedArrayProperty, ResolvedStringProperty, StorageConfig, StorageSource } from "../types";
2
+ import { PreviewSize } from "../preview";
3
+ /**
4
+ * Internal representation of an item in the storage
5
+ * It can have two states, having a storagePathOrDownloadUrl set,
6
+ * which means the file has been uploaded, and it is rendered as a preview
7
+ * Or have a pending file being uploaded.
8
+ */
9
+ export interface StorageFieldItem {
10
+ id: number;
11
+ storagePathOrDownloadUrl?: string;
12
+ file?: File;
13
+ fileName?: string;
14
+ metadata?: any;
15
+ size: PreviewSize;
16
+ }
17
+ export declare function useStorageUploadController<M extends object>({ entityId, entityValues, path, value, property, propertyKey, storageSource, disabled, onChange }: {
18
+ entityId: string;
19
+ entityValues: EntityValues<M>;
20
+ value: string | string[] | null;
21
+ path: string;
22
+ propertyKey: string;
23
+ property: ResolvedStringProperty | ResolvedArrayProperty<string[]>;
24
+ storageSource: StorageSource;
25
+ disabled: boolean;
26
+ onChange: (value: string | string[] | null) => void;
27
+ }): {
28
+ internalValue: StorageFieldItem[];
29
+ setInternalValue: import("react").Dispatch<import("react").SetStateAction<StorageFieldItem[]>>;
30
+ storage: StorageConfig;
31
+ fileNameBuilder: (file: File) => Promise<string>;
32
+ storagePathBuilder: (file: File) => string;
33
+ onFileUploadComplete: (uploadedPath: string, entry: StorageFieldItem, metadata?: any) => Promise<void>;
34
+ onFilesAdded: (acceptedFiles: File[]) => Promise<void>;
35
+ multipleFilesSupported: boolean;
36
+ };
@@ -0,0 +1 @@
1
+ export declare function useTraceUpdate(props: any): void;
package/package.json CHANGED
@@ -1,144 +1,114 @@
1
1
  {
2
- "name": "@firecms/core",
3
- "version": "3.0.0-alpha.8",
4
- "description": "Awesome Firebase/Firestore-based headless open-source CMS",
5
- "funding": {
6
- "url": "https://github.com/sponsors/firecmsco"
7
- },
8
- "author": "FireCMS",
9
- "license": "MIT",
10
- "repository": "git@github.com:FireCMSco/firecms.git",
11
- "main": "./dist/index.umd.js",
12
- "module": "./dist/index.es.js",
13
- "types": "./dist/index.d.ts",
14
- "source": "src/index.ts",
15
- "engines": {
16
- "node": ">=14"
17
- },
18
- "exports": {
19
- ".": {
20
- "import": "./dist/index.es.js",
21
- "require": "./dist/index.umd.js",
22
- "types": "./dist/index.d.ts"
23
- },
24
- "./components": {
25
- "import": "./dist/components/index.es.js",
26
- "require": "./dist/components/index.umd.js",
27
- "types": "./dist/components/index.d.ts"
28
- }
29
- },
30
- "keywords": [
31
- "firebase",
32
- "cms",
33
- "admin",
34
- "admin panel",
35
- "firebase panel",
36
- "firestore",
37
- "headless",
38
- "headless cms",
39
- "content manager"
40
- ],
41
- "scripts": {
42
- "watch": "vite build --watch",
43
- "build": "vite build",
44
- "prepublishOnly": "run-s build",
45
- "createTag": "PACKAGE_VERSION=$(cat package.json | grep version | head -1 | awk -F: '{ print $2 }' | sed 's/[\",]//g' | tr -d '[[:space:]]') && git tag v$PACKAGE_VERSION && git push --tags",
46
- "test:lint": "eslint \"src/**\" --quiet",
47
- "test": "jest",
48
- "generateIcons": "ts-node --esm src/icons/generateIcons.ts"
49
- },
50
- "dependencies": {
51
- "@date-io/date-fns": "^2.16.0",
52
- "@fontsource/ibm-plex-mono": "^4.5.13",
53
- "@fontsource/roboto": "^5.0.3",
54
- "@hello-pangea/dnd": "^16.2.0",
55
- "@material-design-icons/font": "latest",
56
- "@radix-ui/react-checkbox": "^1.0.4",
57
- "@radix-ui/react-collapsible": "^1.0.3",
58
- "@radix-ui/react-dialog": "^1.0.4",
59
- "@radix-ui/react-dropdown-menu": "^2.0.5",
60
- "@radix-ui/react-popover": "^1.0.6",
61
- "@radix-ui/react-portal": "^1.0.3",
62
- "@radix-ui/react-scroll-area": "^1.0.4",
63
- "@radix-ui/react-select": "^1.2.2",
64
- "@radix-ui/react-switch": "^1.0.3",
65
- "@radix-ui/react-tabs": "^1.0.4",
66
- "@radix-ui/react-tooltip": "^1.0.6",
67
- "cmdk": "^0.2.0",
68
- "date-fns": "^2.30.0",
69
- "formik": "^2.4.1",
70
- "history": "^5.3.0",
71
- "js-search": "^2.0.1",
72
- "markdown-it": "^13.0.1",
73
- "notistack": "^3.0.1",
74
- "object-hash": "^3.0.0",
75
- "react-datepicker": "^4.16.0",
76
- "react-dropzone": "^14.2.3",
77
- "react-fast-compare": "^3.2.2",
78
- "react-image-file-resizer": "^0.4.8",
79
- "react-markdown-editor-lite": "^1.3.4",
80
- "react-transition-group": "^4.4.5",
81
- "react-use-measure": "^2.1.1",
82
- "react-window": "^1.8.9",
83
- "tailwind-merge": "^1.14.0",
84
- "typeface-rubik": "^1.1.13",
85
- "yup": "^0.32.11"
86
- },
87
- "peerDependencies": {
88
- "algoliasearch": "^4.13.0",
89
- "firebase": "^10.4.0",
90
- "react": "^18.0.0",
91
- "react-dom": "^18.0.0",
92
- "react-router": "^6.2.0",
93
- "react-router-dom": "^6.2.0"
94
- },
95
- "eslintConfig": {
96
- "extends": [
97
- "react-app",
98
- "react-app/jest"
99
- ]
100
- },
101
- "devDependencies": {
102
- "@jest/globals": "^29.7.0",
103
- "@testing-library/jest-dom": "^5.16.5",
104
- "@testing-library/react": "^14.0.0",
105
- "@testing-library/user-event": "^14.4.3",
106
- "@types/jest": "^29.5.2",
107
- "@types/node": "^18.16.16",
108
- "@types/object-hash": "^3.0.2",
109
- "@types/react": "^18.2.8",
110
- "@types/react-dom": "^18.2.4",
111
- "@types/react-measure": "^2.0.8",
112
- "@typescript-eslint/eslint-plugin": "^5.59.11",
113
- "@typescript-eslint/parser": "^5.59.11",
114
- "@vitejs/plugin-react": "^4.0.0",
115
- "algoliasearch": "^4.17.1",
116
- "cross-env": "^7.0.3",
117
- "eslint": "^8.42.0",
118
- "eslint-config-standard": "^17.1.0",
119
- "eslint-plugin-import": "^2.27.5",
120
- "eslint-plugin-n": "^15.7.0",
121
- "eslint-plugin-promise": "^6.1.1",
122
- "eslint-plugin-react": "^7.32.2",
123
- "eslint-plugin-react-hooks": "^4.6.0",
124
- "firebase": "^10.4.0",
125
- "jest": "^29.7.0",
126
- "npm-run-all": "^4.1.5",
127
- "react": "^18.2.0",
128
- "react-dom": "^18.2.0",
129
- "react-router": "^6.12.0",
130
- "react-router-dom": "^6.12.0",
131
- "ts-jest": "^29.1.1",
132
- "ts-node": "^10.9.1",
133
- "tsd": "^0.28.1",
134
- "typescript": "^5.2.2",
135
- "vite": "^4.3.9"
136
- },
137
- "files": [
138
- "dist"
139
- ],
140
- "gitHead": "85611c918afa8321f1710b05ddc15f7a5354d077",
141
- "publishConfig": {
142
- "access": "public"
143
- }
2
+ "name": "@firecms/core",
3
+ "type": "module",
4
+ "version": "3.0.0-alpha.80",
5
+ "description": "Awesome Firebase/Firestore-based headless open-source CMS",
6
+ "funding": {
7
+ "url": "https://github.com/sponsors/firecmsco"
8
+ },
9
+ "author": "FireCMS",
10
+ "license": "MIT",
11
+ "repository": "git@github.com:FireCMSco/firecms.git",
12
+ "main": "./dist/index.umd.js",
13
+ "module": "./dist/index.es.js",
14
+ "types": "./dist/index.d.ts",
15
+ "source": "src/index.ts",
16
+ "engines": {
17
+ "node": ">=14"
18
+ },
19
+ "keywords": [
20
+ "firebase",
21
+ "cms",
22
+ "admin",
23
+ "admin panel",
24
+ "firebase panel",
25
+ "firestore",
26
+ "headless",
27
+ "headless cms",
28
+ "content manager"
29
+ ],
30
+ "scripts": {
31
+ "watch": "vite build --watch",
32
+ "build": "vite build && tsc --emitDeclarationOnly -p tsconfig.prod.json",
33
+ "prepublishOnly": "run-s build",
34
+ "createTag": "PACKAGE_VERSION=$(cat package.json | grep version | head -1 | awk -F: '{ print $2 }' | sed 's/[\",]//g' | tr -d '[[:space:]]') && git tag v$PACKAGE_VERSION && git push --tags",
35
+ "test:lint": "eslint \"src/**\" --quiet",
36
+ "test": "jest",
37
+ "clean": "rm -rf dist && find ./src -name '*.js' -type f | xargs rm -f",
38
+ "generateIcons": "ts-node --esm src/icons/generateIcons.ts"
39
+ },
40
+ "dependencies": {
41
+ "@firecms/ui": "^3.0.0-alpha.80",
42
+ "@fontsource/ibm-plex-mono": "^5.0.8",
43
+ "@fontsource/roboto": "^5.0.8",
44
+ "@hello-pangea/dnd": "^16.5.0",
45
+ "date-fns": "^3.0.6",
46
+ "formik": "^2.4.5",
47
+ "history": "^5.3.0",
48
+ "js-search": "^2.0.1",
49
+ "markdown-it": "^13.0.2",
50
+ "notistack": "^3.0.1",
51
+ "object-hash": "^3.0.0",
52
+ "react-image-file-resizer": "^0.4.8",
53
+ "react-markdown-editor-lite": "^1.3.4",
54
+ "react-transition-group": "^4.4.5",
55
+ "react-use-measure": "^2.1.1",
56
+ "react-window": "^1.8.10",
57
+ "typeface-rubik": "^1.1.13",
58
+ "yup": "^0.32.11"
59
+ },
60
+ "peerDependencies": {
61
+ "firebase": "^10.5.2",
62
+ "react": "^18.2.0",
63
+ "react-dom": "^18.2.0",
64
+ "react-router": "^6.2.0",
65
+ "react-router-dom": "^6.2.0"
66
+ },
67
+ "eslintConfig": {
68
+ "extends": [
69
+ "react-app",
70
+ "react-app/jest"
71
+ ]
72
+ },
73
+ "devDependencies": {
74
+ "@jest/globals": "^29.7.0",
75
+ "@testing-library/jest-dom": "^5.17.0",
76
+ "@testing-library/react": "^14.0.0",
77
+ "@testing-library/user-event": "^14.5.1",
78
+ "@types/jest": "^29.5.6",
79
+ "@types/node": "^20.8.9",
80
+ "@types/object-hash": "^3.0.6",
81
+ "@types/react": "^18.2.45",
82
+ "@types/react-dom": "^18.2.17",
83
+ "@types/react-measure": "^2.0.12",
84
+ "@typescript-eslint/eslint-plugin": "^5.62.0",
85
+ "@typescript-eslint/parser": "^5.62.0",
86
+ "@vitejs/plugin-react": "^4.2.1",
87
+ "cross-env": "^7.0.3",
88
+ "eslint": "^8.55.0",
89
+ "eslint-config-standard": "^17.1.0",
90
+ "eslint-plugin-import": "^2.29.1",
91
+ "eslint-plugin-n": "^15.7.0",
92
+ "eslint-plugin-promise": "^6.1.1",
93
+ "eslint-plugin-react": "^7.33.2",
94
+ "eslint-plugin-react-hooks": "^4.6.0",
95
+ "firebase": "^10.7.1",
96
+ "jest": "^29.7.0",
97
+ "npm-run-all": "^4.1.5",
98
+ "react-router": "^6.21.0",
99
+ "react-router-dom": "^6.21.0",
100
+ "ts-jest": "^29.1.1",
101
+ "ts-node": "^10.9.2",
102
+ "tsd": "^0.28.1",
103
+ "typescript": "^5.3.3",
104
+ "vite": "^4.5.1"
105
+ },
106
+ "files": [
107
+ "dist",
108
+ "src"
109
+ ],
110
+ "gitHead": "60fbe594a5ad36fa5a47ba279ef3f55014fe823f",
111
+ "publishConfig": {
112
+ "access": "public"
113
+ }
144
114
  }