@rebasepro/studio 0.4.0 → 0.6.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 (378) hide show
  1. package/README.md +73 -140
  2. package/dist/ApiExplorer-CdIwR9Ga.js +963 -0
  3. package/dist/ApiExplorer-CdIwR9Ga.js.map +1 -0
  4. package/dist/AuthSimulationSelector-iEZ-Or_1.js +56 -0
  5. package/dist/AuthSimulationSelector-iEZ-Or_1.js.map +1 -0
  6. package/dist/BranchesView-DncIRcZt.js +461 -0
  7. package/dist/BranchesView-DncIRcZt.js.map +1 -0
  8. package/dist/CronJobsView-4gdtJvoe.js +500 -0
  9. package/dist/CronJobsView-4gdtJvoe.js.map +1 -0
  10. package/dist/JSEditor-BhAbEjCP.js +1573 -0
  11. package/dist/JSEditor-BhAbEjCP.js.map +1 -0
  12. package/dist/LogsExplorer-CqtKILj8.js +240 -0
  13. package/dist/LogsExplorer-CqtKILj8.js.map +1 -0
  14. package/dist/MonacoEditor-COZqrIJ1.js +246 -0
  15. package/dist/MonacoEditor-COZqrIJ1.js.map +1 -0
  16. package/dist/RLSEditor-CTxYbBdW.js +1362 -0
  17. package/dist/RLSEditor-CTxYbBdW.js.map +1 -0
  18. package/dist/SQLEditor-BLuq_zDM.js +1964 -0
  19. package/dist/SQLEditor-BLuq_zDM.js.map +1 -0
  20. package/dist/SchemaVisualizer-BJK2u3C0.js +1068 -0
  21. package/dist/SchemaVisualizer-BJK2u3C0.js.map +1 -0
  22. package/dist/StorageView-nDaC2foF.js +1382 -0
  23. package/dist/StorageView-nDaC2foF.js.map +1 -0
  24. package/dist/{studio/src/components → components}/ApiExplorer/ApiExplorer.d.ts +2 -1
  25. package/dist/{studio/src/components → components}/ApiExplorer/EndpointDetail.d.ts +2 -1
  26. package/dist/{studio/src/components → components}/ApiExplorer/TryItPanel.d.ts +2 -1
  27. package/dist/{studio/src/components → components}/AuthSimulationSelector.d.ts +2 -1
  28. package/dist/components/Branches/BranchesView.d.ts +2 -0
  29. package/dist/components/CronJobs/CronJobsView.d.ts +2 -0
  30. package/dist/components/JSEditor/JSEditor.d.ts +2 -0
  31. package/dist/{studio/src/components → components}/JSEditor/JSEditorSidebar.d.ts +2 -1
  32. package/dist/{studio/src/components → components}/JSEditor/JSMonacoEditor.d.ts +2 -1
  33. package/dist/components/LogsExplorer/LogsExplorer.d.ts +2 -0
  34. package/dist/{studio/src/components → components}/RLSEditor/PolicyEditor.d.ts +2 -1
  35. package/dist/{studio/src/components → components}/RLSEditor/RLSEditor.d.ts +2 -7
  36. package/dist/{studio/src/components → components}/SQLEditor/MonacoEditor.d.ts +2 -1
  37. package/dist/{studio/src/components → components}/SQLEditor/SQLEditor.d.ts +2 -1
  38. package/dist/{studio/src/components → components}/SQLEditor/SQLEditorSidebar.d.ts +2 -1
  39. package/dist/{studio/src/components → components}/SQLEditor/SchemaBrowser.d.ts +2 -1
  40. package/dist/{studio/src/components → components}/SchemaVisualizer/RelationEdge.d.ts +1 -1
  41. package/dist/components/SchemaVisualizer/SchemaVisualizer.d.ts +3 -0
  42. package/dist/{studio/src/components → components}/SchemaVisualizer/TableNode.d.ts +1 -1
  43. package/dist/{studio/src/components → components}/SchemaVisualizer/schema-visualizer.utils.d.ts +0 -8
  44. package/dist/components/StorageView/StorageView.d.ts +2 -0
  45. package/dist/{studio/src/components → components}/StudioHomePage.d.ts +1 -1
  46. package/dist/index.es.js +688 -746
  47. package/dist/index.es.js.map +1 -1
  48. package/dist/index.umd.js +10303 -9572
  49. package/dist/index.umd.js.map +1 -1
  50. package/dist/{studio/src/utils → utils}/pgColumnToProperty.d.ts +1 -1
  51. package/package.json +22 -22
  52. package/src/components/ApiExplorer/TryItPanel.tsx +15 -18
  53. package/src/components/CronJobs/CronJobsView.tsx +1 -1
  54. package/src/components/JSEditor/JSEditor.tsx +10 -15
  55. package/src/components/LogsExplorer/LogsExplorer.tsx +6 -3
  56. package/src/components/RLSEditor/PolicyEditor.tsx +0 -1
  57. package/src/components/RLSEditor/RLSEditor.tsx +1 -1
  58. package/src/components/SQLEditor/SQLEditor.tsx +40 -30
  59. package/src/components/SchemaVisualizer/schema-visualizer.utils.ts +3 -3
  60. package/src/components/SchemaVisualizer/useSchemaGraph.ts +2 -2
  61. package/src/components/StorageView/StorageView.tsx +22 -11
  62. package/src/components/StudioHomePage.tsx +51 -15
  63. package/src/utils/parseSpec.test.ts +41 -20
  64. package/src/utils/pgColumnToProperty.ts +23 -20
  65. package/src/utils/sql_utils.ts +1 -1
  66. package/dist/ApiExplorer-CGHEF1uL.js +0 -1052
  67. package/dist/ApiExplorer-CGHEF1uL.js.map +0 -1
  68. package/dist/AuthSimulationSelector-DGoXkWSg.js +0 -105
  69. package/dist/AuthSimulationSelector-DGoXkWSg.js.map +0 -1
  70. package/dist/BranchesView-BiTEwIhd.js +0 -291
  71. package/dist/BranchesView-BiTEwIhd.js.map +0 -1
  72. package/dist/CronJobsView-3PM_qR8v.js +0 -472
  73. package/dist/CronJobsView-3PM_qR8v.js.map +0 -1
  74. package/dist/JSEditor-BCSoElPg.js +0 -1297
  75. package/dist/JSEditor-BCSoElPg.js.map +0 -1
  76. package/dist/LogsExplorer-_4sZadKn.js +0 -162
  77. package/dist/LogsExplorer-_4sZadKn.js.map +0 -1
  78. package/dist/MonacoEditor-CMYEjiRf.js +0 -161
  79. package/dist/MonacoEditor-CMYEjiRf.js.map +0 -1
  80. package/dist/RLSEditor-CHEExeSB.js +0 -1871
  81. package/dist/RLSEditor-CHEExeSB.js.map +0 -1
  82. package/dist/SQLEditor-BC0IOUQu.js +0 -1797
  83. package/dist/SQLEditor-BC0IOUQu.js.map +0 -1
  84. package/dist/SchemaVisualizer-BGpmzyXT.js +0 -1069
  85. package/dist/SchemaVisualizer-BGpmzyXT.js.map +0 -1
  86. package/dist/StorageView-B7AsN2qX.js +0 -869
  87. package/dist/StorageView-B7AsN2qX.js.map +0 -1
  88. package/dist/common/src/collections/CollectionRegistry.d.ts +0 -56
  89. package/dist/common/src/collections/default-collections.d.ts +0 -9
  90. package/dist/common/src/collections/index.d.ts +0 -2
  91. package/dist/common/src/data/buildRebaseData.d.ts +0 -14
  92. package/dist/common/src/data/query_builder.d.ts +0 -55
  93. package/dist/common/src/index.d.ts +0 -4
  94. package/dist/common/src/util/builders.d.ts +0 -57
  95. package/dist/common/src/util/callbacks.d.ts +0 -6
  96. package/dist/common/src/util/collections.d.ts +0 -11
  97. package/dist/common/src/util/common.d.ts +0 -2
  98. package/dist/common/src/util/conditions.d.ts +0 -26
  99. package/dist/common/src/util/entities.d.ts +0 -58
  100. package/dist/common/src/util/enums.d.ts +0 -3
  101. package/dist/common/src/util/index.d.ts +0 -16
  102. package/dist/common/src/util/navigation_from_path.d.ts +0 -34
  103. package/dist/common/src/util/navigation_utils.d.ts +0 -20
  104. package/dist/common/src/util/parent_references_from_path.d.ts +0 -6
  105. package/dist/common/src/util/paths.d.ts +0 -14
  106. package/dist/common/src/util/permissions.d.ts +0 -6
  107. package/dist/common/src/util/references.d.ts +0 -2
  108. package/dist/common/src/util/relations.d.ts +0 -22
  109. package/dist/common/src/util/resolutions.d.ts +0 -72
  110. package/dist/common/src/util/storage.d.ts +0 -24
  111. package/dist/core/src/components/AIIcon.d.ts +0 -16
  112. package/dist/core/src/components/BootstrapAdminBanner.d.ts +0 -4
  113. package/dist/core/src/components/ConfirmationDialog.d.ts +0 -9
  114. package/dist/core/src/components/Debug/UIReferenceView.d.ts +0 -1
  115. package/dist/core/src/components/Debug/UIStyleGuide.d.ts +0 -1
  116. package/dist/core/src/components/ErrorTooltip.d.ts +0 -2
  117. package/dist/core/src/components/ErrorView.d.ts +0 -21
  118. package/dist/core/src/components/LanguageToggle.d.ts +0 -1
  119. package/dist/core/src/components/LoginView/LoginView.d.ts +0 -109
  120. package/dist/core/src/components/LoginView/index.d.ts +0 -2
  121. package/dist/core/src/components/NotFoundPage.d.ts +0 -1
  122. package/dist/core/src/components/RebaseAuth.d.ts +0 -10
  123. package/dist/core/src/components/RebaseLogo.d.ts +0 -7
  124. package/dist/core/src/components/UnsavedChangesDialog.d.ts +0 -9
  125. package/dist/core/src/components/UserDisplay.d.ts +0 -7
  126. package/dist/core/src/components/UserSelectPopover.d.ts +0 -62
  127. package/dist/core/src/components/UserSettingsView.d.ts +0 -1
  128. package/dist/core/src/components/common/index.d.ts +0 -6
  129. package/dist/core/src/components/common/table_height.d.ts +0 -5
  130. package/dist/core/src/components/common/types.d.ts +0 -66
  131. package/dist/core/src/components/common/useColumnsIds.d.ts +0 -9
  132. package/dist/core/src/components/common/useDataTableController.d.ts +0 -45
  133. package/dist/core/src/components/common/useDebouncedData.d.ts +0 -9
  134. package/dist/core/src/components/common/useScrollRestoration.d.ts +0 -14
  135. package/dist/core/src/components/index.d.ts +0 -17
  136. package/dist/core/src/contexts/AdminModeController.d.ts +0 -4
  137. package/dist/core/src/contexts/AnalyticsContext.d.ts +0 -3
  138. package/dist/core/src/contexts/AuthControllerContext.d.ts +0 -3
  139. package/dist/core/src/contexts/CustomizationControllerContext.d.ts +0 -3
  140. package/dist/core/src/contexts/DataDriverContext.d.ts +0 -3
  141. package/dist/core/src/contexts/DatabaseAdminContext.d.ts +0 -3
  142. package/dist/core/src/contexts/DialogsProvider.d.ts +0 -4
  143. package/dist/core/src/contexts/EffectiveRoleController.d.ts +0 -4
  144. package/dist/core/src/contexts/InternalUserManagementContext.d.ts +0 -3
  145. package/dist/core/src/contexts/ModeController.d.ts +0 -4
  146. package/dist/core/src/contexts/RebaseClientInstanceContext.d.ts +0 -6
  147. package/dist/core/src/contexts/RebaseDataContext.d.ts +0 -3
  148. package/dist/core/src/contexts/SnackbarProvider.d.ts +0 -2
  149. package/dist/core/src/contexts/StorageSourceContext.d.ts +0 -3
  150. package/dist/core/src/contexts/UserConfigurationPersistenceContext.d.ts +0 -3
  151. package/dist/core/src/contexts/index.d.ts +0 -13
  152. package/dist/core/src/core/PluginLifecycleManager.d.ts +0 -17
  153. package/dist/core/src/core/PluginProviderStack.d.ts +0 -21
  154. package/dist/core/src/core/Rebase.d.ts +0 -14
  155. package/dist/core/src/core/RebaseProps.d.ts +0 -147
  156. package/dist/core/src/core/RebaseRouter.d.ts +0 -4
  157. package/dist/core/src/core/RebaseRoutes.d.ts +0 -17
  158. package/dist/core/src/core/index.d.ts +0 -4
  159. package/dist/core/src/hooks/ApiConfigContext.d.ts +0 -24
  160. package/dist/core/src/hooks/data/delete.d.ts +0 -31
  161. package/dist/core/src/hooks/data/save.d.ts +0 -34
  162. package/dist/core/src/hooks/data/useCollectionFetch.d.ts +0 -62
  163. package/dist/core/src/hooks/data/useData.d.ts +0 -13
  164. package/dist/core/src/hooks/data/useDataOrder.d.ts +0 -12
  165. package/dist/core/src/hooks/data/useEntityFetch.d.ts +0 -43
  166. package/dist/core/src/hooks/data/useRelationSelector.d.ts +0 -52
  167. package/dist/core/src/hooks/data/useUserSelector.d.ts +0 -31
  168. package/dist/core/src/hooks/index.d.ts +0 -37
  169. package/dist/core/src/hooks/useAdminModeController.d.ts +0 -19
  170. package/dist/core/src/hooks/useAnalyticsController.d.ts +0 -5
  171. package/dist/core/src/hooks/useAuthController.d.ts +0 -11
  172. package/dist/core/src/hooks/useAuthSubscription.d.ts +0 -2
  173. package/dist/core/src/hooks/useBackendStorageSource.d.ts +0 -30
  174. package/dist/core/src/hooks/useBridgeRegistration.d.ts +0 -18
  175. package/dist/core/src/hooks/useBrowserTitleAndIcon.d.ts +0 -6
  176. package/dist/core/src/hooks/useBuildAdminModeController.d.ts +0 -6
  177. package/dist/core/src/hooks/useBuildEffectiveRoleController.d.ts +0 -8
  178. package/dist/core/src/hooks/useBuildLocalConfigurationPersistence.d.ts +0 -2
  179. package/dist/core/src/hooks/useBuildModeController.d.ts +0 -6
  180. package/dist/core/src/hooks/useClipboard.d.ts +0 -57
  181. package/dist/core/src/hooks/useCollapsedGroups.d.ts +0 -27
  182. package/dist/core/src/hooks/useCustomizationController.d.ts +0 -11
  183. package/dist/core/src/hooks/useDialogsController.d.ts +0 -11
  184. package/dist/core/src/hooks/useEffectiveRoleController.d.ts +0 -7
  185. package/dist/core/src/hooks/useInternalUserManagementController.d.ts +0 -12
  186. package/dist/core/src/hooks/useLargeLayout.d.ts +0 -1
  187. package/dist/core/src/hooks/useModeController.d.ts +0 -19
  188. package/dist/core/src/hooks/usePermissions.d.ts +0 -12
  189. package/dist/core/src/hooks/useRebaseClient.d.ts +0 -5
  190. package/dist/core/src/hooks/useRebaseContext.d.ts +0 -11
  191. package/dist/core/src/hooks/useRebaseRegistry.d.ts +0 -34
  192. package/dist/core/src/hooks/useResolvedComponent.d.ts +0 -47
  193. package/dist/core/src/hooks/useSlot.d.ts +0 -18
  194. package/dist/core/src/hooks/useSnackbarController.d.ts +0 -20
  195. package/dist/core/src/hooks/useStorageSource.d.ts +0 -7
  196. package/dist/core/src/hooks/useStudioBridge.d.ts +0 -91
  197. package/dist/core/src/hooks/useTranslation.d.ts +0 -17
  198. package/dist/core/src/hooks/useUnsavedChangesDialog.d.ts +0 -12
  199. package/dist/core/src/hooks/useUserConfigurationPersistence.d.ts +0 -8
  200. package/dist/core/src/i18n/RebaseI18nProvider.d.ts +0 -33
  201. package/dist/core/src/index.d.ts +0 -15
  202. package/dist/core/src/internal/common.d.ts +0 -3
  203. package/dist/core/src/internal/useRestoreScroll.d.ts +0 -6
  204. package/dist/core/src/locales/de.d.ts +0 -2
  205. package/dist/core/src/locales/en.d.ts +0 -10
  206. package/dist/core/src/locales/es.d.ts +0 -10
  207. package/dist/core/src/locales/fr.d.ts +0 -2
  208. package/dist/core/src/locales/hi.d.ts +0 -2
  209. package/dist/core/src/locales/it.d.ts +0 -2
  210. package/dist/core/src/locales/pt.d.ts +0 -7
  211. package/dist/core/src/util/constants.d.ts +0 -1
  212. package/dist/core/src/util/createFormexStub.d.ts +0 -2
  213. package/dist/core/src/util/entity_cache.d.ts +0 -22
  214. package/dist/core/src/util/enums.d.ts +0 -5
  215. package/dist/core/src/util/icon_list.d.ts +0 -5
  216. package/dist/core/src/util/icons.d.ts +0 -20
  217. package/dist/core/src/util/index.d.ts +0 -8
  218. package/dist/core/src/util/previews.d.ts +0 -4
  219. package/dist/core/src/util/useStorageUploadController.d.ts +0 -38
  220. package/dist/formex/src/Field.d.ts +0 -52
  221. package/dist/formex/src/Formex.d.ts +0 -7
  222. package/dist/formex/src/index.d.ts +0 -5
  223. package/dist/formex/src/types.d.ts +0 -40
  224. package/dist/formex/src/useCreateFormex.d.ts +0 -14
  225. package/dist/formex/src/utils.d.ts +0 -16
  226. package/dist/studio/src/components/Branches/BranchesView.d.ts +0 -1
  227. package/dist/studio/src/components/CronJobs/CronJobsView.d.ts +0 -1
  228. package/dist/studio/src/components/JSEditor/JSEditor.d.ts +0 -1
  229. package/dist/studio/src/components/LogsExplorer/LogsExplorer.d.ts +0 -1
  230. package/dist/studio/src/components/SchemaVisualizer/SchemaVisualizer.d.ts +0 -2
  231. package/dist/studio/src/components/SchemaVisualizer/index.d.ts +0 -5
  232. package/dist/studio/src/components/StorageView/StorageView.d.ts +0 -1
  233. package/dist/studio/src/utils/entities.d.ts +0 -0
  234. package/dist/types/src/controllers/analytics_controller.d.ts +0 -7
  235. package/dist/types/src/controllers/auth.d.ts +0 -104
  236. package/dist/types/src/controllers/client.d.ts +0 -168
  237. package/dist/types/src/controllers/collection_registry.d.ts +0 -46
  238. package/dist/types/src/controllers/customization_controller.d.ts +0 -60
  239. package/dist/types/src/controllers/data.d.ts +0 -207
  240. package/dist/types/src/controllers/data_driver.d.ts +0 -218
  241. package/dist/types/src/controllers/database_admin.d.ts +0 -11
  242. package/dist/types/src/controllers/dialogs_controller.d.ts +0 -36
  243. package/dist/types/src/controllers/effective_role.d.ts +0 -4
  244. package/dist/types/src/controllers/email.d.ts +0 -36
  245. package/dist/types/src/controllers/index.d.ts +0 -18
  246. package/dist/types/src/controllers/local_config_persistence.d.ts +0 -20
  247. package/dist/types/src/controllers/navigation.d.ts +0 -225
  248. package/dist/types/src/controllers/registry.d.ts +0 -63
  249. package/dist/types/src/controllers/side_dialogs_controller.d.ts +0 -67
  250. package/dist/types/src/controllers/side_entity_controller.d.ts +0 -97
  251. package/dist/types/src/controllers/snackbar.d.ts +0 -24
  252. package/dist/types/src/controllers/storage.d.ts +0 -171
  253. package/dist/types/src/index.d.ts +0 -4
  254. package/dist/types/src/rebase_context.d.ts +0 -122
  255. package/dist/types/src/types/auth_adapter.d.ts +0 -301
  256. package/dist/types/src/types/backend.d.ts +0 -536
  257. package/dist/types/src/types/backend_hooks.d.ts +0 -172
  258. package/dist/types/src/types/builders.d.ts +0 -15
  259. package/dist/types/src/types/chips.d.ts +0 -5
  260. package/dist/types/src/types/collections.d.ts +0 -941
  261. package/dist/types/src/types/component_ref.d.ts +0 -47
  262. package/dist/types/src/types/cron.d.ts +0 -102
  263. package/dist/types/src/types/data_source.d.ts +0 -64
  264. package/dist/types/src/types/database_adapter.d.ts +0 -94
  265. package/dist/types/src/types/entities.d.ts +0 -145
  266. package/dist/types/src/types/entity_actions.d.ts +0 -104
  267. package/dist/types/src/types/entity_callbacks.d.ts +0 -173
  268. package/dist/types/src/types/entity_link_builder.d.ts +0 -7
  269. package/dist/types/src/types/entity_overrides.d.ts +0 -10
  270. package/dist/types/src/types/entity_views.d.ts +0 -87
  271. package/dist/types/src/types/export_import.d.ts +0 -21
  272. package/dist/types/src/types/formex.d.ts +0 -40
  273. package/dist/types/src/types/index.d.ts +0 -28
  274. package/dist/types/src/types/locales.d.ts +0 -4
  275. package/dist/types/src/types/modify_collections.d.ts +0 -5
  276. package/dist/types/src/types/plugins.d.ts +0 -282
  277. package/dist/types/src/types/properties.d.ts +0 -1181
  278. package/dist/types/src/types/property_config.d.ts +0 -74
  279. package/dist/types/src/types/relations.d.ts +0 -336
  280. package/dist/types/src/types/slots.d.ts +0 -262
  281. package/dist/types/src/types/translations.d.ts +0 -900
  282. package/dist/types/src/types/user_management_delegate.d.ts +0 -86
  283. package/dist/types/src/types/websockets.d.ts +0 -78
  284. package/dist/types/src/users/index.d.ts +0 -1
  285. package/dist/types/src/users/user.d.ts +0 -50
  286. package/dist/ui/src/components/Alert.d.ts +0 -12
  287. package/dist/ui/src/components/Autocomplete.d.ts +0 -21
  288. package/dist/ui/src/components/Avatar.d.ts +0 -11
  289. package/dist/ui/src/components/Badge.d.ts +0 -8
  290. package/dist/ui/src/components/BooleanSwitch.d.ts +0 -14
  291. package/dist/ui/src/components/BooleanSwitchWithLabel.d.ts +0 -17
  292. package/dist/ui/src/components/Button.d.ts +0 -14
  293. package/dist/ui/src/components/Card.d.ts +0 -8
  294. package/dist/ui/src/components/CenteredView.d.ts +0 -9
  295. package/dist/ui/src/components/Checkbox.d.ts +0 -13
  296. package/dist/ui/src/components/Chip.d.ts +0 -26
  297. package/dist/ui/src/components/CircularProgress.d.ts +0 -5
  298. package/dist/ui/src/components/CircularProgressCenter.d.ts +0 -11
  299. package/dist/ui/src/components/Collapse.d.ts +0 -9
  300. package/dist/ui/src/components/ColorPicker.d.ts +0 -30
  301. package/dist/ui/src/components/Container.d.ts +0 -8
  302. package/dist/ui/src/components/DateTimeField.d.ts +0 -24
  303. package/dist/ui/src/components/DebouncedTextField.d.ts +0 -2
  304. package/dist/ui/src/components/Dialog.d.ts +0 -39
  305. package/dist/ui/src/components/DialogActions.d.ts +0 -7
  306. package/dist/ui/src/components/DialogContent.d.ts +0 -7
  307. package/dist/ui/src/components/DialogTitle.d.ts +0 -10
  308. package/dist/ui/src/components/ErrorBoundary.d.ts +0 -33
  309. package/dist/ui/src/components/ExpandablePanel.d.ts +0 -12
  310. package/dist/ui/src/components/FileUpload.d.ts +0 -23
  311. package/dist/ui/src/components/FilterChip.d.ts +0 -34
  312. package/dist/ui/src/components/IconButton.d.ts +0 -12
  313. package/dist/ui/src/components/InfoLabel.d.ts +0 -5
  314. package/dist/ui/src/components/InputLabel.d.ts +0 -11
  315. package/dist/ui/src/components/Label.d.ts +0 -7
  316. package/dist/ui/src/components/LoadingButton.d.ts +0 -7
  317. package/dist/ui/src/components/Markdown.d.ts +0 -10
  318. package/dist/ui/src/components/Menu.d.ts +0 -23
  319. package/dist/ui/src/components/Menubar.d.ts +0 -80
  320. package/dist/ui/src/components/MultiSelect.d.ts +0 -48
  321. package/dist/ui/src/components/Paper.d.ts +0 -6
  322. package/dist/ui/src/components/Popover.d.ts +0 -24
  323. package/dist/ui/src/components/RadioGroup.d.ts +0 -28
  324. package/dist/ui/src/components/ResizablePanels.d.ts +0 -18
  325. package/dist/ui/src/components/SearchBar.d.ts +0 -26
  326. package/dist/ui/src/components/Select.d.ts +0 -43
  327. package/dist/ui/src/components/Separator.d.ts +0 -5
  328. package/dist/ui/src/components/Sheet.d.ts +0 -22
  329. package/dist/ui/src/components/Skeleton.d.ts +0 -6
  330. package/dist/ui/src/components/Slider.d.ts +0 -21
  331. package/dist/ui/src/components/Table.d.ts +0 -34
  332. package/dist/ui/src/components/Tabs.d.ts +0 -19
  333. package/dist/ui/src/components/TextField.d.ts +0 -58
  334. package/dist/ui/src/components/TextareaAutosize.d.ts +0 -43
  335. package/dist/ui/src/components/ToggleButtonGroup.d.ts +0 -30
  336. package/dist/ui/src/components/Tooltip.d.ts +0 -19
  337. package/dist/ui/src/components/Typography.d.ts +0 -36
  338. package/dist/ui/src/components/VirtualTable/VirtualTable.d.ts +0 -11
  339. package/dist/ui/src/components/VirtualTable/VirtualTableCell.d.ts +0 -21
  340. package/dist/ui/src/components/VirtualTable/VirtualTableHeader.d.ts +0 -29
  341. package/dist/ui/src/components/VirtualTable/VirtualTableHeaderRow.d.ts +0 -2
  342. package/dist/ui/src/components/VirtualTable/VirtualTableProps.d.ts +0 -249
  343. package/dist/ui/src/components/VirtualTable/VirtualTableRow.d.ts +0 -3
  344. package/dist/ui/src/components/VirtualTable/index.d.ts +0 -3
  345. package/dist/ui/src/components/VirtualTable/types.d.ts +0 -38
  346. package/dist/ui/src/components/common/SelectInputLabel.d.ts +0 -5
  347. package/dist/ui/src/components/index.d.ts +0 -58
  348. package/dist/ui/src/hooks/PortalContainerContext.d.ts +0 -31
  349. package/dist/ui/src/hooks/index.d.ts +0 -6
  350. package/dist/ui/src/hooks/useDebounceCallback.d.ts +0 -1
  351. package/dist/ui/src/hooks/useDebounceValue.d.ts +0 -1
  352. package/dist/ui/src/hooks/useDebouncedCallback.d.ts +0 -1
  353. package/dist/ui/src/hooks/useInjectStyles.d.ts +0 -7
  354. package/dist/ui/src/hooks/useOutsideAlerter.d.ts +0 -5
  355. package/dist/ui/src/icons/GitHubIcon.d.ts +0 -2
  356. package/dist/ui/src/icons/HandleIcon.d.ts +0 -1
  357. package/dist/ui/src/icons/Icon.d.ts +0 -20
  358. package/dist/ui/src/icons/cool_icon_keys.d.ts +0 -1
  359. package/dist/ui/src/icons/icon_keys.d.ts +0 -1
  360. package/dist/ui/src/icons/index.d.ts +0 -8
  361. package/dist/ui/src/index.d.ts +0 -5
  362. package/dist/ui/src/styles.d.ts +0 -12
  363. package/dist/ui/src/util/chip_colors.d.ts +0 -4
  364. package/dist/ui/src/util/cls.d.ts +0 -2
  365. package/dist/ui/src/util/debounce.d.ts +0 -10
  366. package/dist/ui/src/util/hash.d.ts +0 -1
  367. package/dist/ui/src/util/index.d.ts +0 -4
  368. package/dist/ui/src/util/key_to_icon_component.d.ts +0 -1
  369. package/src/components/SchemaVisualizer/index.ts +0 -5
  370. package/src/utils/entities.ts +0 -2
  371. /package/dist/{studio/src/components → components}/ApiExplorer/parseSpec.d.ts +0 -0
  372. /package/dist/{studio/src/components → components}/ApiExplorer/types.d.ts +0 -0
  373. /package/dist/{studio/src/components → components}/RLSEditor/index.d.ts +0 -0
  374. /package/dist/{studio/src/components → components}/RebaseStudio.d.ts +0 -0
  375. /package/dist/{studio/src/components → components}/SQLEditor/ExplainVisualizer.d.ts +0 -0
  376. /package/dist/{studio/src/components → components}/SchemaVisualizer/useSchemaGraph.d.ts +0 -0
  377. /package/dist/{studio/src/index.d.ts → index.d.ts} +0 -0
  378. /package/dist/{studio/src/utils → utils}/sql_utils.d.ts +0 -0
@@ -4,7 +4,7 @@ import { Card, cls, Container, Typography } from "@rebasepro/ui";
4
4
  import { ArrowRightIcon, iconSize } from "@rebasepro/ui";
5
5
  import { IconForView, useRebaseContext, useRestoreScroll, useSlot } from "@rebasepro/core";
6
6
  import { useNavigate } from "react-router-dom";
7
- import { useStudioBreadcrumbs, BootstrapAdminBanner } from "@rebasepro/core";
7
+ import { useStudioBreadcrumbs, SchemaDriftBanner } from "@rebasepro/core";
8
8
 
9
9
  /* ═══════════════════════════════════════════════════════════════
10
10
  Static studio tool definitions
@@ -30,12 +30,30 @@ const SECTIONS: StudioSection[] = [
30
30
  dotColor: "bg-emerald-400",
31
31
  iconColor: "text-emerald-400",
32
32
  tools: [
33
- { path: "/schema", name: "Collections", description: "Define and manage your data model and collection schemas", icon: "LayoutList" },
34
- { path: "/schema-visualizer", name: "Schema Visualizer", description: "Interactive ERD showing tables, columns, and relationships", icon: "Network" },
35
- { path: "/sql", name: "SQL Console", description: "Execute raw SQL queries directly against your database", icon: "terminal" },
36
- { path: "/branches", name: "Branches", description: "Create and manage isolated database copies for development", icon: "GitBranch" },
37
- { path: "/rls", name: "RLS Policies", description: "Configure Row Level Security for fine-grained data access", icon: "ShieldCheck" },
38
- { path: "/logs", name: "Logs Explorer", description: "Real-time system, query, and authentication logs", icon: "Activity" }
33
+ { path: "/schema",
34
+ name: "Collections",
35
+ description: "Define and manage your data model and collection schemas",
36
+ icon: "LayoutList" },
37
+ { path: "/schema-visualizer",
38
+ name: "Schema Visualizer",
39
+ description: "Interactive ERD showing tables, columns, and relationships",
40
+ icon: "Network" },
41
+ { path: "/sql",
42
+ name: "SQL Console",
43
+ description: "Execute raw SQL queries directly against your database",
44
+ icon: "terminal" },
45
+ { path: "/branches",
46
+ name: "Branches",
47
+ description: "Create and manage isolated database copies for development",
48
+ icon: "GitBranch" },
49
+ { path: "/rls",
50
+ name: "RLS Policies",
51
+ description: "Configure Row Level Security for fine-grained data access",
52
+ icon: "ShieldCheck" },
53
+ { path: "/logs",
54
+ name: "Logs Explorer",
55
+ description: "Real-time system, query, and authentication logs",
56
+ icon: "Activity" }
39
57
  ]
40
58
  },
41
59
  {
@@ -43,8 +61,14 @@ const SECTIONS: StudioSection[] = [
43
61
  dotColor: "bg-blue-400",
44
62
  iconColor: "text-blue-400",
45
63
  tools: [
46
- { path: "/js", name: "JS Console", description: "Run JavaScript with the Rebase SDK in a live sandbox", icon: "code" },
47
- { path: "/cron", name: "Cron Jobs", description: "Monitor and manage scheduled background tasks", icon: "Clock" }
64
+ { path: "/js",
65
+ name: "JS Console",
66
+ description: "Run JavaScript with the Rebase SDK in a live sandbox",
67
+ icon: "code" },
68
+ { path: "/cron",
69
+ name: "Cron Jobs",
70
+ description: "Monitor and manage scheduled background tasks",
71
+ icon: "Clock" }
48
72
  ]
49
73
  },
50
74
  {
@@ -52,7 +76,10 @@ const SECTIONS: StudioSection[] = [
52
76
  dotColor: "bg-violet-400",
53
77
  iconColor: "text-violet-400",
54
78
  tools: [
55
- { path: "/api", name: "API Explorer", description: "Interactive API documentation with live request testing", icon: "BookOpen" }
79
+ { path: "/api",
80
+ name: "API Explorer",
81
+ description: "Interactive API documentation with live request testing",
82
+ icon: "BookOpen" }
56
83
  ]
57
84
  },
58
85
  {
@@ -60,7 +87,10 @@ const SECTIONS: StudioSection[] = [
60
87
  dotColor: "bg-amber-400",
61
88
  iconColor: "text-amber-400",
62
89
  tools: [
63
- { path: "/storage", name: "Storage", description: "Browse, upload, and manage files in your storage bucket", icon: "HardDrive" }
90
+ { path: "/storage",
91
+ name: "Storage",
92
+ description: "Browse, upload, and manage files in your storage bucket",
93
+ icon: "HardDrive" }
64
94
  ]
65
95
  },
66
96
  {
@@ -68,8 +98,14 @@ const SECTIONS: StudioSection[] = [
68
98
  dotColor: "bg-rose-400",
69
99
  iconColor: "text-rose-400",
70
100
  tools: [
71
- { path: "/users", name: "Users", description: "Manage developers and assign roles in your workspace", icon: "group" },
72
- { path: "/roles", name: "Roles", description: "Create and configure fine-grained access permissions", icon: "ShieldEllipsis" }
101
+ { path: "/users",
102
+ name: "Users",
103
+ description: "Manage developers and assign roles in your workspace",
104
+ icon: "group" },
105
+ { path: "/roles",
106
+ name: "Roles",
107
+ description: "Create and configure fine-grained access permissions",
108
+ icon: "ShieldEllipsis" }
73
109
  ]
74
110
  }
75
111
  ];
@@ -106,8 +142,8 @@ export function StudioHomePage({
106
142
  return (
107
143
  <div ref={containerRef} className="py-2 overflow-auto h-full w-full">
108
144
  <Container maxWidth="6xl">
109
- <div className="mb-4">
110
- <BootstrapAdminBanner />
145
+ <div className="mb-4 flex flex-col gap-2">
146
+ <SchemaDriftBanner />
111
147
  </div>
112
148
 
113
149
  {(additionalActions || pluginActions) && (
@@ -38,10 +38,12 @@ describe("parseOpenApiSpec", () => {
38
38
  const spec = makeSpec({
39
39
  paths: {
40
40
  "/api/data/users": {
41
- get: { tags: ["Users"], summary: "List users" }
41
+ get: { tags: ["Users"],
42
+ summary: "List users" }
42
43
  },
43
44
  "/api/data/posts": {
44
- get: { tags: ["Posts"], summary: "List posts" }
45
+ get: { tags: ["Posts"],
46
+ summary: "List posts" }
45
47
  }
46
48
  }
47
49
  });
@@ -67,7 +69,8 @@ describe("parseOpenApiSpec", () => {
67
69
  const spec = makeSpec({
68
70
  paths: {
69
71
  "/api/data/users": {
70
- get: { tags: ["Users"], summary: "List" }
72
+ get: { tags: ["Users"],
73
+ summary: "List" }
71
74
  }
72
75
  }
73
76
  });
@@ -79,7 +82,8 @@ describe("parseOpenApiSpec", () => {
79
82
  const spec = makeSpec({
80
83
  paths: {
81
84
  "/api/data": {
82
- get: { tags: ["Root"], summary: "Root" }
85
+ get: { tags: ["Root"],
86
+ summary: "Root" }
83
87
  }
84
88
  }
85
89
  });
@@ -91,12 +95,16 @@ describe("parseOpenApiSpec", () => {
91
95
  const spec = makeSpec({
92
96
  paths: {
93
97
  "/api/data/users": {
94
- delete: { tags: ["Users"], summary: "Delete" },
95
- get: { tags: ["Users"], summary: "List" },
96
- post: { tags: ["Users"], summary: "Create" }
98
+ delete: { tags: ["Users"],
99
+ summary: "Delete" },
100
+ get: { tags: ["Users"],
101
+ summary: "List" },
102
+ post: { tags: ["Users"],
103
+ summary: "Create" }
97
104
  },
98
105
  "/api/data/users/{id}": {
99
- get: { tags: ["Users"], summary: "Get one" }
106
+ get: { tags: ["Users"],
107
+ summary: "Get one" }
100
108
  }
101
109
  }
102
110
  });
@@ -111,15 +119,19 @@ describe("parseOpenApiSpec", () => {
111
119
  it("respects tag order from spec.tags", () => {
112
120
  const spec = makeSpec({
113
121
  tags: [
114
- { name: "Posts", description: "Blog posts" },
115
- { name: "Users", description: "User management" }
122
+ { name: "Posts",
123
+ description: "Blog posts" },
124
+ { name: "Users",
125
+ description: "User management" }
116
126
  ],
117
127
  paths: {
118
128
  "/api/data/users": {
119
- get: { tags: ["Users"], summary: "List users" }
129
+ get: { tags: ["Users"],
130
+ summary: "List users" }
120
131
  },
121
132
  "/api/data/posts": {
122
- get: { tags: ["Posts"], summary: "List posts" }
133
+ get: { tags: ["Posts"],
134
+ summary: "List posts" }
123
135
  }
124
136
  }
125
137
  });
@@ -131,11 +143,13 @@ describe("parseOpenApiSpec", () => {
131
143
  it("includes tag descriptions from spec.tags", () => {
132
144
  const spec = makeSpec({
133
145
  tags: [
134
- { name: "Users", description: "User management endpoints" }
146
+ { name: "Users",
147
+ description: "User management endpoints" }
135
148
  ],
136
149
  paths: {
137
150
  "/api/data/users": {
138
- get: { tags: ["Users"], summary: "List" }
151
+ get: { tags: ["Users"],
152
+ summary: "List" }
139
153
  }
140
154
  }
141
155
  });
@@ -144,7 +158,9 @@ describe("parseOpenApiSpec", () => {
144
158
  });
145
159
 
146
160
  it("extracts parameters and requestBody", () => {
147
- const params = [{ name: "id", in: "path", required: true }];
161
+ const params = [{ name: "id",
162
+ in: "path",
163
+ required: true }];
148
164
  const requestBody = { content: { "application/json": { schema: {} } } };
149
165
  const spec = makeSpec({
150
166
  paths: {
@@ -166,8 +182,10 @@ describe("parseOpenApiSpec", () => {
166
182
  const spec = makeSpec({
167
183
  paths: {
168
184
  "/api/data/users": {
169
- get: { tags: ["Users"], summary: "List" },
170
- post: { tags: ["Users"], summary: "Create" }
185
+ get: { tags: ["Users"],
186
+ summary: "List" },
187
+ post: { tags: ["Users"],
188
+ summary: "Create" }
171
189
  }
172
190
  }
173
191
  });
@@ -181,8 +199,10 @@ describe("parseOpenApiSpec", () => {
181
199
  const spec = makeSpec({
182
200
  paths: {
183
201
  "/api/data/users": {
184
- get: { tags: ["Users"], summary: "List" },
185
- options: { tags: ["Users"], summary: "Options" },
202
+ get: { tags: ["Users"],
203
+ summary: "List" },
204
+ options: { tags: ["Users"],
205
+ summary: "Options" },
186
206
  parameters: [{ name: "test" }] as unknown as Record<string, unknown>
187
207
  } as unknown as Record<string, never>
188
208
  }
@@ -245,7 +265,8 @@ describe("resolveRef", () => {
245
265
  const spec = makeSpec({
246
266
  components: {
247
267
  schemas: {
248
- Author: { type: "object", properties: { name: { type: "string" } } }
268
+ Author: { type: "object",
269
+ properties: { name: { type: "string" } } }
249
270
  }
250
271
  }
251
272
  });
@@ -1,4 +1,4 @@
1
- import { EntityCollection, Property, StringProperty, NumberProperty, ArrayProperty, TableColumnInfo, TableMetadata } from "@rebasepro/types";
1
+ import type { EntityCollection, Property, StringProperty, NumberProperty, ArrayProperty, TableColumnInfo, TableMetadata, SecurityOperation, SecurityRule } from "@rebasepro/types";
2
2
 
3
3
  /**
4
4
  * Maps a PostgreSQL column data type to a Rebase property type.
@@ -212,13 +212,7 @@ export function buildCollectionFromTableMetadata(
212
212
  localKey?: string;
213
213
  through?: { table: string; sourceColumn: string; targetColumn: string };
214
214
  }> = [];
215
- const securityRules: Array<{
216
- name: string;
217
- operations: string[];
218
- roles: string[];
219
- qual: string | null | undefined;
220
- with_check: string | null | undefined;
221
- }> = [];
215
+ const securityRules: SecurityRule[] = [];
222
216
 
223
217
  // Parse columns
224
218
  for (const column of metadata.columns) {
@@ -271,22 +265,31 @@ export function buildCollectionFromTableMetadata(
271
265
  for (const policy of metadata.policies) {
272
266
  // Attempt to map typical cmds to operations.
273
267
  // Postgres cmd: SELECT, INSERT, UPDATE, DELETE, ALL
274
- let operations: string[] = [];
268
+ let operations: SecurityOperation[] = [];
275
269
  switch (policy.cmd) {
276
- case "ALL": operations = ["read", "create", "update", "delete"]; break;
277
- case "SELECT": operations = ["read"]; break;
278
- case "INSERT": operations = ["create"]; break;
270
+ case "ALL": operations = ["all"]; break;
271
+ case "SELECT": operations = ["select"]; break;
272
+ case "INSERT": operations = ["insert"]; break;
279
273
  case "UPDATE": operations = ["update"]; break;
280
274
  case "DELETE": operations = ["delete"]; break;
281
275
  }
282
- securityRules.push({
283
- name: policy.policy_name,
284
- operations,
285
- // roles is string[] e.g., ["public", "authenticated"]
286
- roles: policy.roles ?? [],
287
- qual: policy.qual,
288
- with_check: policy.with_check
289
- });
276
+ const qual = policy.qual ?? undefined;
277
+ const withCheck = policy.with_check ?? undefined;
278
+ if (qual) {
279
+ securityRules.push({
280
+ name: policy.policy_name,
281
+ operations,
282
+ roles: policy.roles ?? [],
283
+ using: qual,
284
+ ...(withCheck ? { withCheck } : {})
285
+ });
286
+ } else {
287
+ securityRules.push({
288
+ name: policy.policy_name,
289
+ operations,
290
+ roles: policy.roles ?? []
291
+ });
292
+ }
290
293
  }
291
294
  }
292
295
 
@@ -105,7 +105,7 @@ export function resolveQueryCollections(
105
105
  for (const table of tables) {
106
106
  // Match table name against collection table or slug->snake_case
107
107
  const matched = collections.find(c => {
108
- const tableName = (c as EntityCollection & { table?: string }).table || toSnakeCase(c.slug);
108
+ const tableName = ("table" in c ? c.table : undefined) || toSnakeCase(c.slug);
109
109
  return tableName === table.name;
110
110
  });
111
111