@rebasepro/admin 0.0.1-canary.eae7889 → 0.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.
- package/dist/{CollectionEditorDialog-B2M9lCyL.js → CollectionEditorDialog-MbvXGzEq.js} +42 -31
- package/dist/CollectionEditorDialog-MbvXGzEq.js.map +1 -0
- package/dist/{CollectionsStudioView-WG6soyfs.js → CollectionsStudioView-D9X6aiAr.js} +12 -12
- package/dist/CollectionsStudioView-D9X6aiAr.js.map +1 -0
- package/dist/{ContentHomePage-CDF_a6Lp.js → ContentHomePage-CfVB1eUo.js} +26 -26
- package/dist/ContentHomePage-CfVB1eUo.js.map +1 -0
- package/dist/{ExportCollectionAction-Dc0VOWMN.js → ExportCollectionAction-CUwJg4F9.js} +2 -2
- package/dist/{ExportCollectionAction-Dc0VOWMN.js.map → ExportCollectionAction-CUwJg4F9.js.map} +1 -1
- package/dist/{ImportCollectionAction-DpCagAOy.js → ImportCollectionAction-DGa_SF_8.js} +2 -2
- package/dist/{ImportCollectionAction-DpCagAOy.js.map → ImportCollectionAction-DGa_SF_8.js.map} +1 -1
- package/dist/{PropertyEditView-DS67DxoT.js → PropertyEditView-C4nlYmAc.js} +82 -104
- package/dist/PropertyEditView-C4nlYmAc.js.map +1 -0
- package/dist/{RolesView-CIuYBimF.js → RolesView-CNWxnR8e.js} +7 -5
- package/dist/RolesView-CNWxnR8e.js.map +1 -0
- package/dist/{UsersView-B5zelXnH.js → UsersView-YiTIcXkA.js} +14 -35
- package/dist/UsersView-YiTIcXkA.js.map +1 -0
- package/dist/collection_editor/ConfigControllerProvider.d.ts +0 -4
- package/dist/collection_editor/types/collection_editor_controller.d.ts +6 -3
- package/dist/collection_editor/types/config_controller.d.ts +14 -7
- package/dist/collection_editor/ui/AddKanbanColumnAction.d.ts +3 -2
- package/dist/collection_editor/ui/CollectionViewHeaderAction.d.ts +3 -2
- package/dist/collection_editor/ui/EditorCollectionAction.d.ts +1 -1
- package/dist/collection_editor/ui/EditorCollectionActionStart.d.ts +1 -1
- package/dist/collection_editor/ui/EditorEntityAction.d.ts +1 -1
- package/dist/collection_editor/ui/KanbanSetupAction.d.ts +3 -2
- package/dist/collection_editor/ui/PropertyAddColumnComponent.d.ts +3 -2
- package/dist/collection_editor/ui/collection_editor/CollectionDetailsForm.d.ts +3 -4
- package/dist/collection_editor/ui/collection_editor/CollectionEditorDialog.d.ts +2 -3
- package/dist/collection_editor/ui/collection_editor/CollectionPropertiesEditorForm.d.ts +1 -2
- package/dist/collection_editor/ui/collection_editor/SubcollectionsEditTab.d.ts +3 -2
- package/dist/collection_editor_ui.js +3 -3
- package/dist/components/EntityCollectionTable/EntityCollectionTable.d.ts +1 -1
- package/dist/components/EntityCollectionTable/EntityCollectionTableProps.d.ts +1 -1
- package/dist/components/EntityCollectionTable/column_utils.d.ts +2 -2
- package/dist/components/EntityCollectionTable/fields/TableMultipleRelationField.d.ts +1 -1
- package/dist/components/EntityCollectionTable/fields/TableReferenceField.d.ts +1 -1
- package/dist/components/EntityCollectionTable/fields/TableRelationField.d.ts +1 -1
- package/dist/components/EntityCollectionTable/fields/TableRelationSelectorField.d.ts +2 -2
- package/dist/components/EntityCollectionTable/internal/CollectionTableToolbar.d.ts +5 -1
- package/dist/components/EntityCollectionView/EntityCollectionBoardView.d.ts +3 -2
- package/dist/components/EntityCollectionView/EntityCollectionView.d.ts +2 -1
- package/dist/components/EntityCollectionView/EntityCollectionViewActions.d.ts +4 -2
- package/dist/components/EntityCollectionView/EntityCollectionViewStartActions.d.ts +4 -2
- package/dist/components/EntityCollectionView/FiltersDialog.d.ts +2 -2
- package/dist/components/EntityCollectionView/SplitListView.d.ts +3 -2
- package/dist/components/EntityEditView.d.ts +9 -2
- package/dist/components/RebaseCMS.d.ts +1 -1
- package/dist/components/ReferenceTable/EntitySelectionTable.d.ts +2 -2
- package/dist/components/ReferenceWidget.d.ts +2 -2
- package/dist/components/RelationSelector.d.ts +1 -1
- package/dist/components/SelectableTable/SelectableTable.d.ts +2 -2
- package/dist/editor.js +2 -2
- package/dist/editor.js.map +1 -1
- package/dist/hooks/navigation/useNavigationRegistry.d.ts +2 -1
- package/dist/hooks/useEntityHistory.d.ts +1 -1
- package/dist/{index-CHxgwt6E.js → index-CtzpHzMQ.js} +11 -4
- package/dist/index-CtzpHzMQ.js.map +1 -0
- package/dist/{index-Dey5WJpO.js → index-DKlrVD1m.js} +3 -3
- package/dist/index-DKlrVD1m.js.map +1 -0
- package/dist/{index-CBhrgpR7.js → index-kHJXfLNI.js} +3 -3
- package/dist/index-kHJXfLNI.js.map +1 -0
- package/dist/index.js +79 -63
- package/dist/index.js.map +1 -1
- package/dist/{useEntityHistory-Dcj4zhGj.js → useEntityHistory-UVsSclfZ.js} +3 -1
- package/dist/useEntityHistory-UVsSclfZ.js.map +1 -0
- package/dist/util/navigation_utils.d.ts +10 -1
- package/dist/{util-BQ82ySL3.js → util-CwLmSpGp.js} +1653 -1257
- package/dist/util-CwLmSpGp.js.map +1 -0
- package/package.json +9 -17
- package/src/collection_editor/ConfigControllerProvider.tsx +19 -28
- package/src/collection_editor/types/collection_editor_controller.tsx +3 -3
- package/src/collection_editor/types/config_controller.tsx +7 -7
- package/src/collection_editor/ui/AddKanbanColumnAction.tsx +4 -4
- package/src/collection_editor/ui/CollectionViewHeaderAction.tsx +3 -3
- package/src/collection_editor/ui/EditorCollectionAction.tsx +3 -3
- package/src/collection_editor/ui/EditorCollectionActionStart.tsx +7 -7
- package/src/collection_editor/ui/EditorEntityAction.tsx +3 -3
- package/src/collection_editor/ui/HomePageEditorCollectionAction.tsx +4 -2
- package/src/collection_editor/ui/KanbanSetupAction.tsx +4 -3
- package/src/collection_editor/ui/MissingReferenceWidget.tsx +3 -2
- package/src/collection_editor/ui/NewCollectionButton.tsx +2 -1
- package/src/collection_editor/ui/NewCollectionCard.tsx +2 -1
- package/src/collection_editor/ui/PropertyAddColumnComponent.tsx +3 -3
- package/src/collection_editor/ui/collection_editor/CollectionDetailsForm.tsx +5 -50
- package/src/collection_editor/ui/collection_editor/CollectionEditorDialog.tsx +12 -20
- package/src/collection_editor/ui/collection_editor/CollectionPropertiesEditorForm.tsx +1 -3
- package/src/collection_editor/ui/collection_editor/CollectionRLSTab.tsx +17 -2
- package/src/collection_editor/ui/collection_editor/CollectionRelationsTab.tsx +3 -3
- package/src/collection_editor/ui/collection_editor/CollectionStudioView.tsx +2 -1
- package/src/collection_editor/ui/collection_editor/CollectionsStudioView.tsx +18 -12
- package/src/collection_editor/ui/collection_editor/DisplaySettingsForm.tsx +1 -2
- package/src/collection_editor/ui/collection_editor/GetCodeDialog.tsx +1 -2
- package/src/collection_editor/ui/collection_editor/PropertyFieldPreview.tsx +6 -6
- package/src/collection_editor/ui/collection_editor/SubcollectionsEditTab.tsx +4 -4
- package/src/collection_editor/ui/collection_editor/properties/MapPropertyField.tsx +2 -2
- package/src/collection_editor/ui/collection_editor/properties/ReferencePropertyField.tsx +15 -49
- package/src/collection_editor/ui/collection_editor/properties/advanced/AdvancedPropertyValidation.tsx +4 -5
- package/src/collection_editor/ui/collection_editor/templates/pages_template.ts +1 -1
- package/src/collection_editor/ui/collection_editor/templates/products_template.ts +2 -2
- package/src/components/DefaultAppBar.tsx +2 -2
- package/src/components/DefaultDrawer.tsx +25 -17
- package/src/components/DrawerNavigationGroup.tsx +4 -4
- package/src/components/DrawerNavigationItem.tsx +6 -6
- package/src/components/EntityCollectionTable/EntityCollectionTable.tsx +4 -4
- package/src/components/EntityCollectionTable/EntityCollectionTableProps.tsx +1 -1
- package/src/components/EntityCollectionTable/PropertyTableCell.tsx +4 -4
- package/src/components/EntityCollectionTable/column_utils.tsx +3 -3
- package/src/components/EntityCollectionTable/fields/TableMultipleRelationField.tsx +3 -3
- package/src/components/EntityCollectionTable/fields/TableReferenceField.tsx +3 -3
- package/src/components/EntityCollectionTable/fields/TableRelationField.tsx +4 -4
- package/src/components/EntityCollectionTable/fields/TableRelationSelectorField.tsx +3 -3
- package/src/components/EntityCollectionTable/internal/CollectionTableToolbar.tsx +8 -2
- package/src/components/EntityCollectionTable/internal/EntityTableCell.tsx +1 -1
- package/src/components/EntityCollectionTable/internal/common.tsx +5 -5
- package/src/components/EntityCollectionTable/internal/popup_field/PopupFormField.tsx +1 -1
- package/src/components/EntityCollectionTable/table_bindings.tsx +45 -35
- package/src/components/EntityCollectionView/EntityBoardCard.tsx +18 -19
- package/src/components/EntityCollectionView/EntityCard.tsx +2 -2
- package/src/components/EntityCollectionView/EntityCollectionBoardView.tsx +42 -14
- package/src/components/EntityCollectionView/EntityCollectionCardView.tsx +4 -3
- package/src/components/EntityCollectionView/EntityCollectionListView.tsx +157 -54
- package/src/components/EntityCollectionView/EntityCollectionView.tsx +169 -75
- package/src/components/EntityCollectionView/EntityCollectionViewActions.tsx +23 -13
- package/src/components/EntityCollectionView/EntityCollectionViewStartActions.tsx +21 -12
- package/src/components/EntityCollectionView/FiltersDialog.tsx +7 -7
- package/src/components/EntityCollectionView/SplitListView.tsx +24 -8
- package/src/components/EntityCollectionView/useEntityPreviewSlots.ts +33 -5
- package/src/components/EntityEditView.tsx +85 -85
- package/src/components/EntitySidePanel.tsx +18 -10
- package/src/components/HomePage/ContentHomePage.tsx +24 -15
- package/src/components/HomePage/NavigationCard.tsx +4 -4
- package/src/components/HomePage/NavigationGroup.tsx +2 -2
- package/src/components/RebaseAuthGate.tsx +2 -0
- package/src/components/RebaseCMS.tsx +4 -3
- package/src/components/RebaseNavigation.tsx +8 -5
- package/src/components/ReferenceTable/EntitySelectionTable.tsx +4 -4
- package/src/components/ReferenceWidget.tsx +3 -3
- package/src/components/RelationSelector.tsx +33 -5
- package/src/components/SelectableTable/SelectableTable.tsx +6 -6
- package/src/components/UserSelector.tsx +1 -1
- package/src/components/admin/RolesView.tsx +10 -3
- package/src/components/admin/UsersView.tsx +13 -25
- package/src/components/app/Scaffold.tsx +4 -4
- package/src/components/field_configs.tsx +29 -32
- package/src/components/history/EntityHistoryView.tsx +12 -1
- package/src/editor/editor.tsx +2 -2
- package/src/form/EntityForm.tsx +5 -4
- package/src/form/PropertyFieldBinding.tsx +14 -10
- package/src/form/components/FieldHelperText.tsx +1 -1
- package/src/form/field_bindings/ArrayCustomShapedFieldBinding.tsx +3 -3
- package/src/form/field_bindings/ArrayOfReferencesFieldBinding.tsx +5 -5
- package/src/form/field_bindings/BlockFieldBinding.tsx +4 -4
- package/src/form/field_bindings/DateTimeFieldBinding.tsx +1 -1
- package/src/form/field_bindings/KeyValueFieldBinding.tsx +1 -1
- package/src/form/field_bindings/MapFieldBinding.tsx +7 -7
- package/src/form/field_bindings/MarkdownEditorFieldBinding.tsx +1 -1
- package/src/form/field_bindings/MultipleRelationFieldBinding.tsx +3 -3
- package/src/form/field_bindings/ReferenceAsStringFieldBinding.tsx +7 -7
- package/src/form/field_bindings/ReferenceFieldBinding.tsx +2 -2
- package/src/form/field_bindings/RelationFieldBinding.tsx +4 -4
- package/src/form/field_bindings/RepeatFieldBinding.tsx +5 -5
- package/src/form/field_bindings/SelectFieldBinding.tsx +1 -1
- package/src/form/field_bindings/StorageUploadFieldBinding.tsx +1 -1
- package/src/form/field_bindings/SwitchFieldBinding.tsx +1 -1
- package/src/form/field_bindings/TextFieldBinding.tsx +7 -7
- package/src/form/field_bindings/UserSelectFieldBinding.tsx +1 -1
- package/src/form/useClearRestoreValue.tsx +1 -1
- package/src/form/validation.ts +1 -1
- package/src/hooks/navigation/contexts/CollectionRegistryContext.tsx +2 -1
- package/src/hooks/navigation/useBuildCollectionRegistryController.tsx +15 -3
- package/src/hooks/navigation/useNavigationRegistry.ts +14 -3
- package/src/hooks/navigation/useResolvedViews.tsx +1 -3
- package/src/hooks/navigation/useTopLevelNavigation.ts +1 -1
- package/src/hooks/navigation/utils.ts +1 -1
- package/src/hooks/useEntityHistory.ts +7 -2
- package/src/preview/PropertyPreview.tsx +27 -23
- package/src/preview/components/StorageThumbnail.tsx +4 -1
- package/src/preview/property_previews/ArrayOfMapsPreview.tsx +1 -1
- package/src/preview/property_previews/ArrayOfReferencesPreview.tsx +1 -1
- package/src/preview/property_previews/ArrayOfRelationsPreview.tsx +1 -1
- package/src/preview/property_previews/SkeletonPropertyComponent.tsx +3 -3
- package/src/preview/property_previews/StringPropertyPreview.tsx +3 -3
- package/src/routes/RebaseRoute.tsx +57 -11
- package/src/util/navigation_utils.ts +21 -2
- package/src/util/previews.ts +15 -6
- package/src/util/property_utils.tsx +3 -3
- package/dist/CollectionEditorDialog-B2M9lCyL.js.map +0 -1
- package/dist/CollectionsStudioView-WG6soyfs.js.map +0 -1
- package/dist/ContentHomePage-CDF_a6Lp.js.map +0 -1
- package/dist/PropertyEditView-DS67DxoT.js.map +0 -1
- package/dist/RolesView-CIuYBimF.js.map +0 -1
- package/dist/UsersView-B5zelXnH.js.map +0 -1
- package/dist/index-CBhrgpR7.js.map +0 -1
- package/dist/index-CHxgwt6E.js.map +0 -1
- package/dist/index-Dey5WJpO.js.map +0 -1
- package/dist/useEntityHistory-Dcj4zhGj.js.map +0 -1
- package/dist/util-BQ82ySL3.js.map +0 -1
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rebasepro/admin",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.1.0",
|
|
5
5
|
"description": "Rebase CMS — content management views, forms, and routing",
|
|
6
6
|
"funding": {
|
|
7
7
|
"url": "https://github.com/sponsors/rebaseco"
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"@radix-ui/react-portal": "^1.1.10",
|
|
53
53
|
"@radix-ui/react-slot": "^1.2.4",
|
|
54
54
|
"date-fns": "^3.6.0",
|
|
55
|
-
"fast-equals": "
|
|
55
|
+
"fast-equals": "6.0.0",
|
|
56
56
|
"fractional-indexing": "3.2.0",
|
|
57
57
|
"json5": "^2.2.3",
|
|
58
58
|
"markdown-it": "^14.1.0",
|
|
@@ -75,16 +75,15 @@
|
|
|
75
75
|
"prosemirror-view": "^1.33.8",
|
|
76
76
|
"react-dropzone": "^14.3.8",
|
|
77
77
|
"react-use-measure": "^2.1.7",
|
|
78
|
-
"react-window": "^1.8.11",
|
|
79
78
|
"xlsx": "https://cdn.sheetjs.com/xlsx-0.20.2/xlsx-0.20.2.tgz",
|
|
80
79
|
"zod": "^3.25.0",
|
|
81
|
-
"@rebasepro/
|
|
82
|
-
"@rebasepro/
|
|
83
|
-
"@rebasepro/formex": "0.
|
|
84
|
-
"@rebasepro/
|
|
85
|
-
"@rebasepro/
|
|
86
|
-
"@rebasepro/utils": "0.
|
|
87
|
-
"@rebasepro/
|
|
80
|
+
"@rebasepro/core": "0.1.0",
|
|
81
|
+
"@rebasepro/common": "0.1.0",
|
|
82
|
+
"@rebasepro/formex": "0.1.0",
|
|
83
|
+
"@rebasepro/ui": "0.1.0",
|
|
84
|
+
"@rebasepro/types": "0.1.0",
|
|
85
|
+
"@rebasepro/utils": "0.1.0",
|
|
86
|
+
"@rebasepro/schema-inference": "0.1.0"
|
|
88
87
|
},
|
|
89
88
|
"peerDependencies": {
|
|
90
89
|
"react": ">=19.0.0",
|
|
@@ -95,24 +94,17 @@
|
|
|
95
94
|
"devDependencies": {
|
|
96
95
|
"@jest/globals": "^30.2.0",
|
|
97
96
|
"@testing-library/react": "^16.3.0",
|
|
98
|
-
"@testing-library/user-event": "^14.6.1",
|
|
99
97
|
"@types/jest": "^29.5.14",
|
|
100
98
|
"@types/node": "^20.19.17",
|
|
101
99
|
"@types/react": "^19.0.8",
|
|
102
100
|
"@types/react-dom": "^19.0.3",
|
|
103
101
|
"@types/react-measure": "^2.0.12",
|
|
104
102
|
"@vitejs/plugin-react": "^4.3.4",
|
|
105
|
-
"babel-plugin-react-compiler": "beta",
|
|
106
|
-
"cross-env": "^7.0.3",
|
|
107
103
|
"eslint-plugin-react-compiler": "^19.1.0-rc.2",
|
|
108
104
|
"jest": "^29.7.0",
|
|
109
|
-
"jest-environment-jsdom": "^30.2.0",
|
|
110
|
-
"npm-run-all": "^4.1.5",
|
|
111
105
|
"react-router": "^7.0.0",
|
|
112
106
|
"react-router-dom": "^7.0.0",
|
|
113
107
|
"ts-jest": "^29.4.5",
|
|
114
|
-
"ts-node": "^10.9.2",
|
|
115
|
-
"tsd": "^0.31.2",
|
|
116
108
|
"typescript": "^5.9.3",
|
|
117
109
|
"vite": "^7.2.4"
|
|
118
110
|
},
|
|
@@ -32,11 +32,6 @@ export interface ConfigControllerProviderProps {
|
|
|
32
32
|
*/
|
|
33
33
|
configPermissions?: CollectionEditorPermissionsBuilder;
|
|
34
34
|
|
|
35
|
-
/**
|
|
36
|
-
* Groups that cannot be used to create new collections.
|
|
37
|
-
*/
|
|
38
|
-
reservedGroups?: string[];
|
|
39
|
-
|
|
40
35
|
extraView?: {
|
|
41
36
|
View: React.ComponentType<{
|
|
42
37
|
path: string
|
|
@@ -65,7 +60,6 @@ export const ConfigControllerProvider = React.memo(
|
|
|
65
60
|
children,
|
|
66
61
|
collectionConfigController,
|
|
67
62
|
configPermissions,
|
|
68
|
-
reservedGroups,
|
|
69
63
|
collectionInference,
|
|
70
64
|
extraView,
|
|
71
65
|
getUser,
|
|
@@ -102,10 +96,9 @@ export const ConfigControllerProvider = React.memo(
|
|
|
102
96
|
parentCollection?: EntityCollection,
|
|
103
97
|
editedCollectionId?: string,
|
|
104
98
|
path?: string,
|
|
105
|
-
|
|
99
|
+
parentCollectionSlugs: string[], parentEntityIds: string[],
|
|
106
100
|
initialValues?: {
|
|
107
101
|
path?: string,
|
|
108
|
-
group?: string,
|
|
109
102
|
name?: string
|
|
110
103
|
},
|
|
111
104
|
copyFrom?: EntityCollection,
|
|
@@ -124,7 +117,7 @@ export const ConfigControllerProvider = React.memo(
|
|
|
124
117
|
currentPropertiesOrder?: string[],
|
|
125
118
|
editedCollectionId: string,
|
|
126
119
|
path?: string,
|
|
127
|
-
|
|
120
|
+
parentCollectionSlugs: string[], parentEntityIds: string[],
|
|
128
121
|
|
|
129
122
|
existingEntities?: Entity[];
|
|
130
123
|
collection?: EntityCollection;
|
|
@@ -139,7 +132,7 @@ export const ConfigControllerProvider = React.memo(
|
|
|
139
132
|
const editCollection = useCallback(({
|
|
140
133
|
id,
|
|
141
134
|
path,
|
|
142
|
-
|
|
135
|
+
parentCollectionSlugs, parentEntityIds,
|
|
143
136
|
parentCollection,
|
|
144
137
|
existingEntities,
|
|
145
138
|
initialView,
|
|
@@ -147,13 +140,13 @@ export const ConfigControllerProvider = React.memo(
|
|
|
147
140
|
}: {
|
|
148
141
|
id?: string,
|
|
149
142
|
path?: string,
|
|
150
|
-
|
|
143
|
+
parentCollectionSlugs: string[], parentEntityIds: string[],
|
|
151
144
|
parentCollection?: EntityCollection,
|
|
152
145
|
existingEntities?: Entity[],
|
|
153
146
|
initialView?: "general" | "display" | "properties",
|
|
154
147
|
expandKanban?: boolean
|
|
155
148
|
}) => {
|
|
156
|
-
console.debug("Edit collection", id, path,
|
|
149
|
+
console.debug("Edit collection", id, path, parentCollectionSlugs, parentEntityIds, parentCollection);
|
|
157
150
|
onAnalyticsEvent?.("edit_collection", {
|
|
158
151
|
id,
|
|
159
152
|
path
|
|
@@ -161,7 +154,7 @@ export const ConfigControllerProvider = React.memo(
|
|
|
161
154
|
setCurrentDialog({
|
|
162
155
|
editedCollectionId: id,
|
|
163
156
|
path,
|
|
164
|
-
|
|
157
|
+
parentCollectionSlugs, parentEntityIds,
|
|
165
158
|
isNewCollection: false,
|
|
166
159
|
parentCollection,
|
|
167
160
|
redirect: false,
|
|
@@ -177,7 +170,7 @@ export const ConfigControllerProvider = React.memo(
|
|
|
177
170
|
property,
|
|
178
171
|
editedCollectionId,
|
|
179
172
|
currentPropertiesOrder,
|
|
180
|
-
|
|
173
|
+
parentCollectionSlugs, parentEntityIds,
|
|
181
174
|
collection,
|
|
182
175
|
existingEntities
|
|
183
176
|
}: {
|
|
@@ -185,11 +178,11 @@ export const ConfigControllerProvider = React.memo(
|
|
|
185
178
|
property?: Property,
|
|
186
179
|
currentPropertiesOrder?: string[],
|
|
187
180
|
editedCollectionId: string,
|
|
188
|
-
|
|
181
|
+
parentCollectionSlugs: string[], parentEntityIds: string[],
|
|
189
182
|
collection: EntityCollection,
|
|
190
183
|
existingEntities?: Entity[]
|
|
191
184
|
}) => {
|
|
192
|
-
console.debug("Edit property", propertyKey, property, editedCollectionId, currentPropertiesOrder,
|
|
185
|
+
console.debug("Edit property", propertyKey, property, editedCollectionId, currentPropertiesOrder, parentCollectionSlugs, parentEntityIds, collection);
|
|
193
186
|
onAnalyticsEvent?.("edit_property", {
|
|
194
187
|
propertyKey,
|
|
195
188
|
editedCollectionId
|
|
@@ -207,7 +200,7 @@ export const ConfigControllerProvider = React.memo(
|
|
|
207
200
|
namespace,
|
|
208
201
|
currentPropertiesOrder,
|
|
209
202
|
editedCollectionId,
|
|
210
|
-
|
|
203
|
+
parentCollectionSlugs, parentEntityIds,
|
|
211
204
|
|
|
212
205
|
existingEntities,
|
|
213
206
|
collection
|
|
@@ -215,17 +208,16 @@ export const ConfigControllerProvider = React.memo(
|
|
|
215
208
|
}, [onAnalyticsEvent]);
|
|
216
209
|
|
|
217
210
|
const createCollection = useCallback(({
|
|
218
|
-
|
|
211
|
+
parentCollectionSlugs, parentEntityIds,
|
|
219
212
|
parentCollection,
|
|
220
213
|
initialValues,
|
|
221
214
|
copyFrom,
|
|
222
215
|
redirect,
|
|
223
216
|
sourceClick
|
|
224
217
|
}: {
|
|
225
|
-
|
|
218
|
+
parentCollectionSlugs: string[], parentEntityIds: string[],
|
|
226
219
|
parentCollection?: EntityCollection
|
|
227
220
|
initialValues?: {
|
|
228
|
-
group?: string,
|
|
229
221
|
path?: string,
|
|
230
222
|
name?: string
|
|
231
223
|
},
|
|
@@ -234,7 +226,7 @@ export const ConfigControllerProvider = React.memo(
|
|
|
234
226
|
sourceClick?: string
|
|
235
227
|
}) => {
|
|
236
228
|
console.debug("Create collection", {
|
|
237
|
-
|
|
229
|
+
parentCollectionSlugs, parentEntityIds,
|
|
238
230
|
parentCollection,
|
|
239
231
|
initialValues,
|
|
240
232
|
copyFrom,
|
|
@@ -242,7 +234,7 @@ export const ConfigControllerProvider = React.memo(
|
|
|
242
234
|
sourceClick
|
|
243
235
|
});
|
|
244
236
|
onAnalyticsEvent?.(copyFrom ? "duplicate_collection" : "create_collection", {
|
|
245
|
-
|
|
237
|
+
parentCollectionSlugs, parentEntityIds,
|
|
246
238
|
parentCollection,
|
|
247
239
|
initialValues,
|
|
248
240
|
redirect,
|
|
@@ -250,7 +242,7 @@ export const ConfigControllerProvider = React.memo(
|
|
|
250
242
|
});
|
|
251
243
|
setCurrentDialog({
|
|
252
244
|
isNewCollection: true,
|
|
253
|
-
|
|
245
|
+
parentCollectionSlugs, parentEntityIds,
|
|
254
246
|
parentCollection,
|
|
255
247
|
initialValues,
|
|
256
248
|
copyFrom,
|
|
@@ -270,7 +262,6 @@ export const ConfigControllerProvider = React.memo(
|
|
|
270
262
|
collectionInference,
|
|
271
263
|
...currentDialog,
|
|
272
264
|
getData,
|
|
273
|
-
reservedGroups,
|
|
274
265
|
extraView,
|
|
275
266
|
getUser,
|
|
276
267
|
generateCollection,
|
|
@@ -279,7 +270,7 @@ export const ConfigControllerProvider = React.memo(
|
|
|
279
270
|
onFetchTableMetadata,
|
|
280
271
|
handleClose: (collection?: EntityCollection) => {
|
|
281
272
|
if (currentDialog?.redirect) {
|
|
282
|
-
if (collection && currentDialog?.isNewCollection && !currentDialog.
|
|
273
|
+
if (collection && currentDialog?.isNewCollection && !currentDialog.parentCollectionSlugs.length) {
|
|
283
274
|
const url = urlController.buildUrlCollectionPath(collection.slug);
|
|
284
275
|
navigate(url);
|
|
285
276
|
}
|
|
@@ -289,7 +280,7 @@ export const ConfigControllerProvider = React.memo(
|
|
|
289
280
|
};
|
|
290
281
|
}, [
|
|
291
282
|
currentDialog, collectionConfigController, collectionInference,
|
|
292
|
-
getData,
|
|
283
|
+
getData, extraView, getUser, generateCollection,
|
|
293
284
|
onAnalyticsEvent, unmappedTables, onFetchTableMetadata,
|
|
294
285
|
urlController, navigate
|
|
295
286
|
]);
|
|
@@ -331,7 +322,7 @@ export const ConfigControllerProvider = React.memo(
|
|
|
331
322
|
propertyKey: id,
|
|
332
323
|
newPropertiesOrder: newProperty && currentPropertyDialog.currentPropertiesOrder ? [...currentPropertyDialog.currentPropertiesOrder, id] : undefined,
|
|
333
324
|
namespace: currentPropertyDialog.namespace,
|
|
334
|
-
|
|
325
|
+
parentCollectionSlugs: currentPropertyDialog.parentCollectionSlugs
|
|
335
326
|
})
|
|
336
327
|
.catch((e: any) => {
|
|
337
328
|
console.error(e);
|
|
@@ -351,7 +342,7 @@ export const ConfigControllerProvider = React.memo(
|
|
|
351
342
|
propertyKey: currentPropertyDialog.propertyKey,
|
|
352
343
|
namespace: currentPropertyDialog.namespace,
|
|
353
344
|
newPropertiesOrder,
|
|
354
|
-
|
|
345
|
+
parentCollectionSlugs: currentPropertyDialog.parentCollectionSlugs
|
|
355
346
|
})
|
|
356
347
|
.then(() => {
|
|
357
348
|
setCurrentPropertyDialog(undefined);
|
|
@@ -11,7 +11,7 @@ export interface CollectionEditorController {
|
|
|
11
11
|
editCollection: (props: {
|
|
12
12
|
id?: string,
|
|
13
13
|
path?: string,
|
|
14
|
-
|
|
14
|
+
parentCollectionSlugs: string[], parentEntityIds: string[],
|
|
15
15
|
parentCollection?: EntityCollection,
|
|
16
16
|
existingEntities?: Entity<any>[],
|
|
17
17
|
/**
|
|
@@ -36,7 +36,7 @@ export interface CollectionEditorController {
|
|
|
36
36
|
* pre-populated with the same properties (but with empty name, path, and id).
|
|
37
37
|
*/
|
|
38
38
|
copyFrom?: EntityCollection,
|
|
39
|
-
|
|
39
|
+
parentCollectionSlugs: string[], parentEntityIds: string[],
|
|
40
40
|
parentCollection?: EntityCollection,
|
|
41
41
|
redirect: boolean,
|
|
42
42
|
sourceClick?: string
|
|
@@ -47,7 +47,7 @@ export interface CollectionEditorController {
|
|
|
47
47
|
property?: Property,
|
|
48
48
|
currentPropertiesOrder?: string[],
|
|
49
49
|
editedCollectionId: string,
|
|
50
|
-
|
|
50
|
+
parentCollectionSlugs: string[], parentEntityIds: string[],
|
|
51
51
|
collection: EntityCollection,
|
|
52
52
|
existingEntities: Entity<any>[]
|
|
53
53
|
}) => void;
|
|
@@ -61,14 +61,14 @@ export type UpdateCollectionParams<M extends Record<string, unknown> = Record<st
|
|
|
61
61
|
id: string,
|
|
62
62
|
collectionData: Partial<EntityCollection<M>>,
|
|
63
63
|
previousId?: string,
|
|
64
|
-
|
|
64
|
+
parentCollectionSlugs?: string[], parentEntityIds?: string[]
|
|
65
65
|
}
|
|
66
66
|
|
|
67
67
|
export type SaveCollectionParams<M extends Record<string, unknown> = Record<string, unknown>> = {
|
|
68
68
|
id: string,
|
|
69
69
|
collectionData: EntityCollection<M>,
|
|
70
70
|
previousId?: string,
|
|
71
|
-
|
|
71
|
+
parentCollectionSlugs?: string[], parentEntityIds?: string[]
|
|
72
72
|
}
|
|
73
73
|
|
|
74
74
|
export type SavePropertyParams = {
|
|
@@ -77,7 +77,7 @@ export type SavePropertyParams = {
|
|
|
77
77
|
namespace?: string,
|
|
78
78
|
newPropertiesOrder?: string[],
|
|
79
79
|
property: Property,
|
|
80
|
-
|
|
80
|
+
parentCollectionSlugs?: string[], parentEntityIds?: string[]
|
|
81
81
|
}
|
|
82
82
|
|
|
83
83
|
export type DeletePropertyParams = {
|
|
@@ -85,24 +85,24 @@ export type DeletePropertyParams = {
|
|
|
85
85
|
propertyKey: string,
|
|
86
86
|
namespace?: string,
|
|
87
87
|
newPropertiesOrder?: string[],
|
|
88
|
-
|
|
88
|
+
parentCollectionSlugs?: string[], parentEntityIds?: string[]
|
|
89
89
|
}
|
|
90
90
|
|
|
91
91
|
export type DeleteCollectionParams = {
|
|
92
92
|
id: string,
|
|
93
|
-
|
|
93
|
+
parentCollectionSlugs?: string[], parentEntityIds?: string[]
|
|
94
94
|
}
|
|
95
95
|
|
|
96
96
|
export type UpdatePropertiesOrderParams = {
|
|
97
97
|
fullPath: string;
|
|
98
|
-
|
|
98
|
+
parentCollectionSlugs: string[], parentEntityIds: string[];
|
|
99
99
|
collection: EntityCollection;
|
|
100
100
|
newPropertiesOrder: string[];
|
|
101
101
|
}
|
|
102
102
|
|
|
103
103
|
export type UpdateKanbanColumnsOrderParams = {
|
|
104
104
|
fullPath: string;
|
|
105
|
-
|
|
105
|
+
parentCollectionSlugs: string[], parentEntityIds: string[];
|
|
106
106
|
collection: EntityCollection;
|
|
107
107
|
kanbanColumnProperty: string;
|
|
108
108
|
newColumnsOrder: string[];
|
|
@@ -20,12 +20,12 @@ import { toSnakeCase } from "@rebasepro/utils";
|
|
|
20
20
|
export function AddKanbanColumnAction({
|
|
21
21
|
collection,
|
|
22
22
|
fullPath,
|
|
23
|
-
|
|
23
|
+
parentCollectionSlugs, parentEntityIds,
|
|
24
24
|
columnProperty
|
|
25
25
|
}: {
|
|
26
26
|
collection: EntityCollection;
|
|
27
27
|
fullPath: string;
|
|
28
|
-
|
|
28
|
+
parentCollectionSlugs: string[], parentEntityIds: string[];
|
|
29
29
|
columnProperty: string;
|
|
30
30
|
}) {
|
|
31
31
|
const [dialogOpen, setDialogOpen] = useState(false);
|
|
@@ -111,7 +111,7 @@ export function AddKanbanColumnAction({
|
|
|
111
111
|
path: fullPath,
|
|
112
112
|
propertyKey: columnProperty,
|
|
113
113
|
property: updatedProperty as StringProperty,
|
|
114
|
-
|
|
114
|
+
parentCollectionSlugs
|
|
115
115
|
});
|
|
116
116
|
|
|
117
117
|
setNewValueLabel("");
|
|
@@ -121,7 +121,7 @@ export function AddKanbanColumnAction({
|
|
|
121
121
|
} finally {
|
|
122
122
|
setSaving(false);
|
|
123
123
|
}
|
|
124
|
-
}, [newValueLabel, configController, collection, columnProperty, fullPath,
|
|
124
|
+
}, [newValueLabel, configController, collection, columnProperty, fullPath, parentCollectionSlugs]);
|
|
125
125
|
|
|
126
126
|
const handleKeyDown = (e: React.KeyboardEvent) => {
|
|
127
127
|
if (e.key === "Enter" && newValueLabel.trim()) {
|
|
@@ -10,7 +10,7 @@ export function CollectionViewHeaderAction({
|
|
|
10
10
|
onHover,
|
|
11
11
|
property,
|
|
12
12
|
path,
|
|
13
|
-
|
|
13
|
+
parentCollectionSlugs, parentEntityIds,
|
|
14
14
|
collection,
|
|
15
15
|
tableController
|
|
16
16
|
}: {
|
|
@@ -18,7 +18,7 @@ export function CollectionViewHeaderAction({
|
|
|
18
18
|
propertyKey: string,
|
|
19
19
|
onHover: boolean,
|
|
20
20
|
path: string,
|
|
21
|
-
|
|
21
|
+
parentCollectionSlugs: string[], parentEntityIds: string[],
|
|
22
22
|
collection: EntityCollection;
|
|
23
23
|
tableController: EntityTableController;
|
|
24
24
|
}) {
|
|
@@ -37,7 +37,7 @@ export function CollectionViewHeaderAction({
|
|
|
37
37
|
propertyKey,
|
|
38
38
|
property,
|
|
39
39
|
editedCollectionId: collection.slug,
|
|
40
|
-
|
|
40
|
+
parentCollectionSlugs, parentEntityIds,
|
|
41
41
|
collection,
|
|
42
42
|
existingEntities: tableController.data ?? []
|
|
43
43
|
});
|
|
@@ -8,7 +8,7 @@ import { useCollectionEditorController } from "../useCollectionEditorController"
|
|
|
8
8
|
|
|
9
9
|
export function EditorCollectionAction({
|
|
10
10
|
path,
|
|
11
|
-
|
|
11
|
+
parentCollectionSlugs, parentEntityIds,
|
|
12
12
|
collection,
|
|
13
13
|
tableController
|
|
14
14
|
}: CollectionActionsProps) {
|
|
@@ -18,7 +18,7 @@ export function EditorCollectionAction({
|
|
|
18
18
|
const collectionEditorController = useCollectionEditorController();
|
|
19
19
|
const { t } = useTranslation();
|
|
20
20
|
|
|
21
|
-
const parentCollection =
|
|
21
|
+
const parentCollection = parentCollectionSlugs.length > 0 ? collectionRegistry.getCollection(parentCollectionSlugs[parentCollectionSlugs.length - 1]) : undefined;
|
|
22
22
|
|
|
23
23
|
const canEditCollection = !collectionEditorController.configController?.readOnly && (collectionEditorController.configPermissions
|
|
24
24
|
? collectionEditorController.configPermissions({
|
|
@@ -42,7 +42,7 @@ export function EditorCollectionAction({
|
|
|
42
42
|
? () => collectionEditorController?.editCollection({
|
|
43
43
|
id: collection.slug,
|
|
44
44
|
path,
|
|
45
|
-
|
|
45
|
+
parentCollectionSlugs, parentEntityIds,
|
|
46
46
|
parentCollection: parentCollection as EntityCollection,
|
|
47
47
|
existingEntities: tableController?.data ?? []
|
|
48
48
|
})
|
|
@@ -15,7 +15,7 @@ import { mergeDeep } from "@rebasepro/utils";
|
|
|
15
15
|
|
|
16
16
|
export function EditorCollectionActionStart({
|
|
17
17
|
path,
|
|
18
|
-
|
|
18
|
+
parentCollectionSlugs, parentEntityIds,
|
|
19
19
|
collection,
|
|
20
20
|
tableController
|
|
21
21
|
}: CollectionActionsProps) {
|
|
@@ -34,7 +34,7 @@ export function EditorCollectionActionStart({
|
|
|
34
34
|
: true;
|
|
35
35
|
|
|
36
36
|
let saveDefaultFilterButton = null;
|
|
37
|
-
if (!equal(getObjectOrNull(tableController.filterValues), getObjectOrNull(collection.
|
|
37
|
+
if (!equal(getObjectOrNull(tableController.filterValues), getObjectOrNull(collection.defaultFilter)) ||
|
|
38
38
|
!equal(getObjectOrNull(tableController.sortBy), getObjectOrNull(collection.sort))) {
|
|
39
39
|
saveDefaultFilterButton = <>
|
|
40
40
|
<Tooltip
|
|
@@ -46,10 +46,10 @@ export function EditorCollectionActionStart({
|
|
|
46
46
|
onClick={() => configController
|
|
47
47
|
?.saveCollection({
|
|
48
48
|
id: collection.slug,
|
|
49
|
-
|
|
49
|
+
parentCollectionSlugs, parentEntityIds,
|
|
50
50
|
collectionData: mergeDeep(collection as EntityCollection,
|
|
51
51
|
{
|
|
52
|
-
|
|
52
|
+
defaultFilter: tableController.filterValues ?? null,
|
|
53
53
|
sort: tableController.sortBy ?? null
|
|
54
54
|
})
|
|
55
55
|
}).then(() => {
|
|
@@ -62,15 +62,15 @@ export function EditorCollectionActionStart({
|
|
|
62
62
|
</Button>
|
|
63
63
|
</Tooltip>
|
|
64
64
|
|
|
65
|
-
{(collection.
|
|
65
|
+
{(collection.defaultFilter || collection.sort) && <Tooltip
|
|
66
66
|
title={t("studio_editor_collection_start_reset_filter")}>
|
|
67
67
|
<Button
|
|
68
68
|
size={"small"}
|
|
69
69
|
variant={"text"}
|
|
70
70
|
onClick={() => {
|
|
71
71
|
tableController.clearFilter?.();
|
|
72
|
-
if (collection?.
|
|
73
|
-
tableController.setFilterValues?.(collection?.
|
|
72
|
+
if (collection?.defaultFilter)
|
|
73
|
+
tableController.setFilterValues?.(collection?.defaultFilter);
|
|
74
74
|
if (collection?.sort)
|
|
75
75
|
tableController.setSortBy?.(collection?.sort);
|
|
76
76
|
}}>
|
|
@@ -8,7 +8,7 @@ import { useCollectionEditorController } from "../useCollectionEditorController"
|
|
|
8
8
|
|
|
9
9
|
export function EditorEntityAction({
|
|
10
10
|
path,
|
|
11
|
-
|
|
11
|
+
parentCollectionSlugs, parentEntityIds,
|
|
12
12
|
collection,
|
|
13
13
|
formContext
|
|
14
14
|
}: PluginFormActionProps) {
|
|
@@ -18,7 +18,7 @@ export function EditorEntityAction({
|
|
|
18
18
|
const collectionEditorController = useCollectionEditorController();
|
|
19
19
|
const { t } = useTranslation();
|
|
20
20
|
|
|
21
|
-
const parentCollection =
|
|
21
|
+
const parentCollection = parentCollectionSlugs.length > 0 ? collectionRegistry.getCollection(parentCollectionSlugs[parentCollectionSlugs.length - 1]) : undefined;
|
|
22
22
|
|
|
23
23
|
const canEditCollection = collectionEditorController.configPermissions
|
|
24
24
|
? collectionEditorController.configPermissions({
|
|
@@ -39,7 +39,7 @@ export function EditorEntityAction({
|
|
|
39
39
|
? () => collectionEditorController?.editCollection({
|
|
40
40
|
id: collection.slug,
|
|
41
41
|
path,
|
|
42
|
-
|
|
42
|
+
parentCollectionSlugs, parentEntityIds,
|
|
43
43
|
parentCollection: parentCollection as EntityCollection
|
|
44
44
|
})
|
|
45
45
|
: undefined}>
|
|
@@ -36,7 +36,8 @@ export function HomePageEditorCollectionAction({
|
|
|
36
36
|
const onEditCollectionClicked = () => {
|
|
37
37
|
collectionEditorController?.editCollection({
|
|
38
38
|
id: collection.slug,
|
|
39
|
-
|
|
39
|
+
parentCollectionSlugs: [],
|
|
40
|
+
parentEntityIds: []
|
|
40
41
|
});
|
|
41
42
|
};
|
|
42
43
|
|
|
@@ -45,7 +46,8 @@ export function HomePageEditorCollectionAction({
|
|
|
45
46
|
// The editor will handle clearing name, path, and id
|
|
46
47
|
collectionEditorController?.createCollection({
|
|
47
48
|
copyFrom: collection,
|
|
48
|
-
|
|
49
|
+
parentCollectionSlugs: [],
|
|
50
|
+
parentEntityIds: [],
|
|
49
51
|
redirect: true,
|
|
50
52
|
sourceClick: "home_page_duplicate"
|
|
51
53
|
});
|
|
@@ -11,11 +11,12 @@ import { useCollectionEditorController } from "../useCollectionEditorController"
|
|
|
11
11
|
export function KanbanSetupAction({
|
|
12
12
|
collection,
|
|
13
13
|
fullPath,
|
|
14
|
-
|
|
14
|
+
parentCollectionSlugs,
|
|
15
|
+
parentEntityIds
|
|
15
16
|
}: {
|
|
16
17
|
collection: EntityCollection;
|
|
17
18
|
fullPath: string;
|
|
18
|
-
|
|
19
|
+
parentCollectionSlugs: string[], parentEntityIds: string[];
|
|
19
20
|
}) {
|
|
20
21
|
const collectionEditorController = useCollectionEditorController();
|
|
21
22
|
const { t } = useTranslation();
|
|
@@ -23,7 +24,7 @@ export function KanbanSetupAction({
|
|
|
23
24
|
const handleConfigureClick = () => {
|
|
24
25
|
collectionEditorController.editCollection({
|
|
25
26
|
id: collection.slug,
|
|
26
|
-
|
|
27
|
+
parentCollectionSlugs, parentEntityIds,
|
|
27
28
|
initialView: "display",
|
|
28
29
|
expandKanban: true
|
|
29
30
|
});
|
|
@@ -10,7 +10,8 @@ export function MissingReferenceWidget({ path: pathProp }: {
|
|
|
10
10
|
}) {
|
|
11
11
|
const registry = useCollectionRegistryController();
|
|
12
12
|
const path = getLastSegment(pathProp);
|
|
13
|
-
const
|
|
13
|
+
const parentCollectionSlugs = registry.getParentCollectionSlugs(pathProp);
|
|
14
|
+
const parentEntityIds = registry.getParentEntityIds(pathProp);
|
|
14
15
|
const collectionEditor = useCollectionEditorController();
|
|
15
16
|
const { t } = useTranslation();
|
|
16
17
|
return <div className={"p-1 flex flex-col items-center"}>
|
|
@@ -21,7 +22,7 @@ export function MissingReferenceWidget({ path: pathProp }: {
|
|
|
21
22
|
collectionEditor.createCollection({
|
|
22
23
|
initialValues: { path,
|
|
23
24
|
name: prettifyIdentifier(path) },
|
|
24
|
-
|
|
25
|
+
parentCollectionSlugs, parentEntityIds,
|
|
25
26
|
redirect: false,
|
|
26
27
|
sourceClick: "missing_reference"
|
|
27
28
|
});
|
|
@@ -16,7 +16,8 @@ export function NewCollectionButton() {
|
|
|
16
16
|
<Button className={"min-w-fit"}
|
|
17
17
|
|
|
18
18
|
onClick={() => collectionEditorController.createCollection({
|
|
19
|
-
|
|
19
|
+
parentCollectionSlugs: [],
|
|
20
|
+
parentEntityIds: [],
|
|
20
21
|
redirect: true,
|
|
21
22
|
sourceClick: "new_collection_button"
|
|
22
23
|
})}>
|
|
@@ -30,7 +30,8 @@ export function NewCollectionCard({
|
|
|
30
30
|
onClick={collectionEditorController && canCreateCollections
|
|
31
31
|
? () => collectionEditorController.createCollection({
|
|
32
32
|
initialValues: group ? { group } : undefined,
|
|
33
|
-
|
|
33
|
+
parentCollectionSlugs: [],
|
|
34
|
+
parentEntityIds: [],
|
|
34
35
|
redirect: true,
|
|
35
36
|
sourceClick: "new_collection_card"
|
|
36
37
|
})
|
|
@@ -10,12 +10,12 @@ import { useCollectionEditorController } from "../useCollectionEditorController"
|
|
|
10
10
|
|
|
11
11
|
export function PropertyAddColumnComponent({
|
|
12
12
|
path,
|
|
13
|
-
|
|
13
|
+
parentCollectionSlugs, parentEntityIds,
|
|
14
14
|
collection,
|
|
15
15
|
tableController
|
|
16
16
|
}: {
|
|
17
17
|
path: string,
|
|
18
|
-
|
|
18
|
+
parentCollectionSlugs: string[], parentEntityIds: string[],
|
|
19
19
|
collection: EntityCollection;
|
|
20
20
|
tableController: EntityTableController;
|
|
21
21
|
}) {
|
|
@@ -40,7 +40,7 @@ export function PropertyAddColumnComponent({
|
|
|
40
40
|
onClick={() => {
|
|
41
41
|
collectionEditorController.editProperty({
|
|
42
42
|
editedCollectionId: collection.slug,
|
|
43
|
-
|
|
43
|
+
parentCollectionSlugs, parentEntityIds,
|
|
44
44
|
currentPropertiesOrder: getDefaultPropertiesOrder(collection),
|
|
45
45
|
collection,
|
|
46
46
|
existingEntities: tableController.data
|