@proteinjs/db-ui 1.5.36 → 1.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,14 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [1.6.1](https://github.com/proteinjs/db/compare/@proteinjs/db-ui@1.6.0...@proteinjs/db-ui@1.6.1) (2026-08-08)
7
+
8
+ **Note:** Version bump only for package @proteinjs/db-ui
9
+
10
+
11
+
12
+
13
+
6
14
  ## [1.5.34](https://github.com/proteinjs/db/compare/@proteinjs/db-ui@1.5.33...@proteinjs/db-ui@1.5.34) (2026-07-28)
7
15
 
8
16
  **Note:** Version bump only for package @proteinjs/db-ui
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2023 Brent Bahry
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -28,7 +28,7 @@ require("react");
28
28
  require("string");
29
29
  require("uuid");
30
30
  /** Generate Source Graph */
31
- var sourceGraph = "{\"options\":{\"directed\":true,\"multigraph\":false,\"compound\":false},\"nodes\":[{\"v\":\"@proteinjs/db-ui/QueryTableLoader\",\"value\":{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"QueryTableLoader\",\"filePath\":\"/Users/brentbahry/repos/farm/n3xa2/packages/proteinjs/packages/db/packages/ui/src/table/QueryTableLoader.ts\",\"qualifiedName\":\"@proteinjs/db-ui/QueryTableLoader\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"rowCountQb\",\"type\":{\"packageName\":\"\",\"name\":\"QueryBuilder<T>\",\"filePath\":null,\"qualifiedName\":\"/QueryBuilder<T>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":true,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"paginationQb\",\"type\":{\"packageName\":\"\",\"name\":\"QueryBuilder<T>\",\"filePath\":null,\"qualifiedName\":\"/QueryBuilder<T>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":true,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"reactQueryKeys\",\"type\":{\"packageName\":\"\",\"name\":\"TableLoader<T>['reactQueryKeys']\",\"filePath\":null,\"qualifiedName\":\"/TableLoader<T>['reactQueryKeys']\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"query\",\"type\":{\"packageName\":\"\",\"name\":\"Query<T>\",\"filePath\":null,\"qualifiedName\":\"/Query<T>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":true,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"sort\",\"type\":{\"packageName\":\"\",\"name\":\"SortCriteria<T>[]\",\"filePath\":null,\"qualifiedName\":\"/SortCriteria<T>[]\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":true,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"queryOptions\",\"type\":{\"packageName\":\"\",\"name\":\"QueryOptions<T>\",\"filePath\":null,\"qualifiedName\":\"/QueryOptions<T>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":true,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"}],\"methods\":[{\"name\":\"load\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<RowWindow<T>>\",\"filePath\":null,\"qualifiedName\":\"/Promise<RowWindow<T>>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"startIndex\",\"type\":{\"packageName\":\"\",\"name\":\"number\",\"filePath\":null,\"qualifiedName\":\"/number\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"endIndex\",\"type\":{\"packageName\":\"\",\"name\":\"number\",\"filePath\":null,\"qualifiedName\":\"/number\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"skipRowCount\",\"type\":{\"packageName\":\"\",\"name\":\"boolean\",\"filePath\":null,\"qualifiedName\":\"/boolean\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[\"/T extends Record\"],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/ui\",\"name\":\"TableLoader\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/TableLoader\",\"properties\":[],\"methods\":[],\"typeParameters\":[\"/T\"],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/ui/TableLoader\"},{\"v\":\"@proteinjs/db-ui/RecordFormCustomization\",\"value\":{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"RecordFormCustomization\",\"filePath\":\"/Users/brentbahry/repos/farm/n3xa2/packages/proteinjs/packages/db/packages/ui/src/form/RecordFormCustomization.tsx\",\"qualifiedName\":\"@proteinjs/db-ui/RecordFormCustomization\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<any>\",\"filePath\":null,\"qualifiedName\":\"/Table<any>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"getFormButtons\",\"returnType\":{\"packageName\":\"\",\"name\":\"FormButtons<any>\",\"filePath\":null,\"qualifiedName\":\"/FormButtons<any>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"record\",\"type\":{\"packageName\":\"\",\"name\":\"any\",\"filePath\":null,\"qualifiedName\":\"/any\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"defaultFormButtons\",\"type\":{\"packageName\":\"\",\"name\":\"FormButtons<any>\",\"filePath\":null,\"qualifiedName\":\"/FormButtons<any>\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/reflection/Loadable\"},{\"v\":\"@proteinjs/db-ui/SpecificTableProps\"},{\"v\":\"@proteinjs/db-ui/hashGeneratorPage\",\"value\":{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"hashGeneratorPage\",\"filePath\":\"/Users/brentbahry/repos/farm/n3xa2/packages/proteinjs/packages/db/packages/ui/src/pages/HashGeneratorPage.tsx\",\"qualifiedName\":\"@proteinjs/db-ui/hashGeneratorPage\",\"type\":{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":null}]},\"isExported\":true,\"isConst\":true,\"sourceType\":0}},{\"v\":\"@proteinjs/ui/Page\"},{\"v\":\"@proteinjs/db-ui/recordFormPage\",\"value\":{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"recordFormPage\",\"filePath\":\"/Users/brentbahry/repos/farm/n3xa2/packages/proteinjs/packages/db/packages/ui/src/pages/RecordFormPage.tsx\",\"qualifiedName\":\"@proteinjs/db-ui/recordFormPage\",\"type\":{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":null}]},\"isExported\":true,\"isConst\":true,\"sourceType\":0}},{\"v\":\"@proteinjs/db-ui/recordTablePage\",\"value\":{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"recordTablePage\",\"filePath\":\"/Users/brentbahry/repos/farm/n3xa2/packages/proteinjs/packages/db/packages/ui/src/pages/RecordTablePage.tsx\",\"qualifiedName\":\"@proteinjs/db-ui/recordTablePage\",\"type\":{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":null}]},\"isExported\":true,\"isConst\":true,\"sourceType\":0}},{\"v\":\"@proteinjs/db-ui/tablesPage\",\"value\":{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"tablesPage\",\"filePath\":\"/Users/brentbahry/repos/farm/n3xa2/packages/proteinjs/packages/db/packages/ui/src/pages/TablesPage.tsx\",\"qualifiedName\":\"@proteinjs/db-ui/tablesPage\",\"type\":{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":null}]},\"isExported\":true,\"isConst\":true,\"sourceType\":0}},{\"v\":\"@proteinjs/db-ui/uuidGeneratorPage\",\"value\":{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"uuidGeneratorPage\",\"filePath\":\"/Users/brentbahry/repos/farm/n3xa2/packages/proteinjs/packages/db/packages/ui/src/pages/UuidGeneratorPage.tsx\",\"qualifiedName\":\"@proteinjs/db-ui/uuidGeneratorPage\",\"type\":{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":null}]},\"isExported\":true,\"isConst\":true,\"sourceType\":0}},{\"v\":\"@proteinjs/db-ui/MigrationRecordFormCustomization\",\"value\":{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"MigrationRecordFormCustomization\",\"filePath\":\"/Users/brentbahry/repos/farm/n3xa2/packages/proteinjs/packages/db/packages/ui/src/form/customizations/MigrationRecordFormCustomization.tsx\",\"qualifiedName\":\"@proteinjs/db-ui/MigrationRecordFormCustomization\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"table\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"getFormButtons\",\"returnType\":{\"packageName\":\"\",\"name\":\"FormButtons<any>\",\"filePath\":null,\"qualifiedName\":\"/FormButtons<any>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"migration\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"Migration\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/Migration\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"defaultFormButtons\",\"type\":{\"packageName\":\"\",\"name\":\"FormButtons<any>\",\"filePath\":null,\"qualifiedName\":\"/FormButtons<any>\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParentInterfaces\":[],\"directParentClasses\":[{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"RecordFormCustomization\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db-ui/RecordFormCustomization\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParentInterfaces\":[],\"directParentClasses\":[]}],\"sourceType\":2}}],\"edges\":[{\"v\":\"@proteinjs/db-ui/QueryTableLoader\",\"w\":\"@proteinjs/ui/TableLoader\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/db-ui/RecordFormCustomization\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/db-ui/hashGeneratorPage\",\"w\":\"@proteinjs/ui/Page\",\"value\":\"has type\"},{\"v\":\"@proteinjs/db-ui/recordFormPage\",\"w\":\"@proteinjs/ui/Page\",\"value\":\"has type\"},{\"v\":\"@proteinjs/db-ui/recordTablePage\",\"w\":\"@proteinjs/ui/Page\",\"value\":\"has type\"},{\"v\":\"@proteinjs/db-ui/tablesPage\",\"w\":\"@proteinjs/ui/Page\",\"value\":\"has type\"},{\"v\":\"@proteinjs/db-ui/uuidGeneratorPage\",\"w\":\"@proteinjs/ui/Page\",\"value\":\"has type\"},{\"v\":\"@proteinjs/db-ui/MigrationRecordFormCustomization\",\"w\":\"@proteinjs/db-ui/RecordFormCustomization\",\"value\":\"extends class\"}]}";
31
+ var sourceGraph = "{\"options\":{\"directed\":true,\"multigraph\":false,\"compound\":false},\"nodes\":[{\"v\":\"@proteinjs/db-ui/QueryTableLoader\",\"value\":{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"QueryTableLoader\",\"filePath\":\"/home/runner/work/db/db/packages/ui/src/table/QueryTableLoader.ts\",\"qualifiedName\":\"@proteinjs/db-ui/QueryTableLoader\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"rowCountQb\",\"type\":{\"packageName\":\"\",\"name\":\"QueryBuilder<T>\",\"filePath\":null,\"qualifiedName\":\"/QueryBuilder<T>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":true,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"paginationQb\",\"type\":{\"packageName\":\"\",\"name\":\"QueryBuilder<T>\",\"filePath\":null,\"qualifiedName\":\"/QueryBuilder<T>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":true,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"reactQueryKeys\",\"type\":{\"packageName\":\"\",\"name\":\"TableLoader<T>['reactQueryKeys']\",\"filePath\":null,\"qualifiedName\":\"/TableLoader<T>['reactQueryKeys']\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"query\",\"type\":{\"packageName\":\"\",\"name\":\"Query<T>\",\"filePath\":null,\"qualifiedName\":\"/Query<T>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":true,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"sort\",\"type\":{\"packageName\":\"\",\"name\":\"SortCriteria<T>[]\",\"filePath\":null,\"qualifiedName\":\"/SortCriteria<T>[]\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":true,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"queryOptions\",\"type\":{\"packageName\":\"\",\"name\":\"QueryOptions<T>\",\"filePath\":null,\"qualifiedName\":\"/QueryOptions<T>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":true,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"}],\"methods\":[{\"name\":\"load\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<RowWindow<T>>\",\"filePath\":null,\"qualifiedName\":\"/Promise<RowWindow<T>>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"startIndex\",\"type\":{\"packageName\":\"\",\"name\":\"number\",\"filePath\":null,\"qualifiedName\":\"/number\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"endIndex\",\"type\":{\"packageName\":\"\",\"name\":\"number\",\"filePath\":null,\"qualifiedName\":\"/number\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"skipRowCount\",\"type\":{\"packageName\":\"\",\"name\":\"boolean\",\"filePath\":null,\"qualifiedName\":\"/boolean\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[\"/T extends Record\"],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/ui\",\"name\":\"TableLoader\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/TableLoader\",\"properties\":[],\"methods\":[],\"typeParameters\":[\"/T\"],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/ui/TableLoader\"},{\"v\":\"@proteinjs/db-ui/RecordFormCustomization\",\"value\":{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"RecordFormCustomization\",\"filePath\":\"/home/runner/work/db/db/packages/ui/src/form/RecordFormCustomization.tsx\",\"qualifiedName\":\"@proteinjs/db-ui/RecordFormCustomization\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<any>\",\"filePath\":null,\"qualifiedName\":\"/Table<any>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"getFormButtons\",\"returnType\":{\"packageName\":\"\",\"name\":\"FormButtons<any>\",\"filePath\":null,\"qualifiedName\":\"/FormButtons<any>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"record\",\"type\":{\"packageName\":\"\",\"name\":\"any\",\"filePath\":null,\"qualifiedName\":\"/any\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"defaultFormButtons\",\"type\":{\"packageName\":\"\",\"name\":\"FormButtons<any>\",\"filePath\":null,\"qualifiedName\":\"/FormButtons<any>\",\"typeParameters\":null,\"directParents\":null}}]},{\"name\":\"getFieldLayout\",\"returnType\":{\"packageName\":\"\",\"name\":\"string[] | string[][]\",\"filePath\":null,\"qualifiedName\":\"/string[] | string[][]\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"record\",\"type\":{\"packageName\":\"\",\"name\":\"any\",\"filePath\":null,\"qualifiedName\":\"/any\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"defaultFieldLayout\",\"type\":{\"packageName\":\"\",\"name\":\"string[] | string[][]\",\"filePath\":null,\"qualifiedName\":\"/string[] | string[][]\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/reflection/Loadable\"},{\"v\":\"@proteinjs/db-ui/hashGeneratorPage\",\"value\":{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"hashGeneratorPage\",\"filePath\":\"/home/runner/work/db/db/packages/ui/src/pages/HashGeneratorPage.tsx\",\"qualifiedName\":\"@proteinjs/db-ui/hashGeneratorPage\",\"type\":{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":null}]},\"isExported\":true,\"isConst\":true,\"sourceType\":0}},{\"v\":\"@proteinjs/ui/Page\"},{\"v\":\"@proteinjs/db-ui/recordFormPage\",\"value\":{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"recordFormPage\",\"filePath\":\"/home/runner/work/db/db/packages/ui/src/pages/RecordFormPage.tsx\",\"qualifiedName\":\"@proteinjs/db-ui/recordFormPage\",\"type\":{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":null}]},\"isExported\":true,\"isConst\":true,\"sourceType\":0}},{\"v\":\"@proteinjs/db-ui/recordTablePage\",\"value\":{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"recordTablePage\",\"filePath\":\"/home/runner/work/db/db/packages/ui/src/pages/RecordTablePage.tsx\",\"qualifiedName\":\"@proteinjs/db-ui/recordTablePage\",\"type\":{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":null}]},\"isExported\":true,\"isConst\":true,\"sourceType\":0}},{\"v\":\"@proteinjs/db-ui/tablesPage\",\"value\":{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"tablesPage\",\"filePath\":\"/home/runner/work/db/db/packages/ui/src/pages/TablesPage.tsx\",\"qualifiedName\":\"@proteinjs/db-ui/tablesPage\",\"type\":{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":null}]},\"isExported\":true,\"isConst\":true,\"sourceType\":0}},{\"v\":\"@proteinjs/db-ui/uuidGeneratorPage\",\"value\":{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"uuidGeneratorPage\",\"filePath\":\"/home/runner/work/db/db/packages/ui/src/pages/UuidGeneratorPage.tsx\",\"qualifiedName\":\"@proteinjs/db-ui/uuidGeneratorPage\",\"type\":{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":null}]},\"isExported\":true,\"isConst\":true,\"sourceType\":0}},{\"v\":\"@proteinjs/db-ui/SpecificTableProps\"},{\"v\":\"@proteinjs/db-ui/MigrationRecordFormCustomization\",\"value\":{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"MigrationRecordFormCustomization\",\"filePath\":\"/home/runner/work/db/db/packages/ui/src/form/customizations/MigrationRecordFormCustomization.tsx\",\"qualifiedName\":\"@proteinjs/db-ui/MigrationRecordFormCustomization\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"table\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"getFormButtons\",\"returnType\":{\"packageName\":\"\",\"name\":\"FormButtons<any>\",\"filePath\":null,\"qualifiedName\":\"/FormButtons<any>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"migration\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"Migration\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/Migration\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"defaultFormButtons\",\"type\":{\"packageName\":\"\",\"name\":\"FormButtons<any>\",\"filePath\":null,\"qualifiedName\":\"/FormButtons<any>\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParentInterfaces\":[],\"directParentClasses\":[{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"RecordFormCustomization\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db-ui/RecordFormCustomization\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParentInterfaces\":[],\"directParentClasses\":[]}],\"sourceType\":2}}],\"edges\":[{\"v\":\"@proteinjs/db-ui/QueryTableLoader\",\"w\":\"@proteinjs/ui/TableLoader\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/db-ui/RecordFormCustomization\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/db-ui/hashGeneratorPage\",\"w\":\"@proteinjs/ui/Page\",\"value\":\"has type\"},{\"v\":\"@proteinjs/db-ui/recordFormPage\",\"w\":\"@proteinjs/ui/Page\",\"value\":\"has type\"},{\"v\":\"@proteinjs/db-ui/recordTablePage\",\"w\":\"@proteinjs/ui/Page\",\"value\":\"has type\"},{\"v\":\"@proteinjs/db-ui/tablesPage\",\"w\":\"@proteinjs/ui/Page\",\"value\":\"has type\"},{\"v\":\"@proteinjs/db-ui/uuidGeneratorPage\",\"w\":\"@proteinjs/ui/Page\",\"value\":\"has type\"},{\"v\":\"@proteinjs/db-ui/MigrationRecordFormCustomization\",\"w\":\"@proteinjs/db-ui/RecordFormCustomization\",\"value\":\"extends class\"}]}";
32
32
  /** Generate Source Links */
33
33
  var QueryTableLoader_1 = require("../src/table/QueryTableLoader");
34
34
  var RecordFormCustomization_1 = require("../src/form/RecordFormCustomization");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../generated/index.ts"],"names":[],"mappings":";AAAA,oCAAoC;;;;;;;;;;;;;;;;AAEpC,0BAAwB;AACxB,2BAAyB;AACzB,+BAA6B;AAC7B,yBAAuB;AACvB,yBAAuB;AACvB,iCAA+B;AAC/B,yBAAuB;AACvB,2BAAyB;AACzB,kBAAgB;AAChB,iBAAe;AACf,kBAAgB;AAChB,gBAAc;AAGd,4BAA4B;AAE5B,IAAM,WAAW,GAAG,quWAAquW,CAAC;AAG1vW,4BAA4B;AAE5B,kEAAiE;AACjE,+EAA8E;AAC9E,oEAAmE;AACnE,8DAA6D;AAC7D,gEAA+D;AAC/D,sDAAqD;AACrD,oEAAmE;AACnE,gHAA+G;AAE/G,IAAM,WAAW,GAAG;IACnB,mCAAmC,EAAE,mCAAgB;IACrD,0CAA0C,EAAE,iDAAuB;IACnE,oCAAoC,EAAE,qCAAiB;IACvD,iCAAiC,EAAE,+BAAc;IACjD,kCAAkC,EAAE,iCAAe;IACnD,6BAA6B,EAAE,uBAAU;IACzC,oCAAoC,EAAE,qCAAiB;IACvD,mDAAmD,EAAE,mEAAgC;CACrF,CAAC;AAGF,kCAAkC;AAElC,oDAAyD;AACzD,6BAAgB,CAAC,KAAK,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;AAGjD,2CAAyB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../generated/index.ts"],"names":[],"mappings":";AAAA,oCAAoC;;;;;;;;;;;;;;;;AAEpC,0BAAwB;AACxB,2BAAyB;AACzB,+BAA6B;AAC7B,yBAAuB;AACvB,yBAAuB;AACvB,iCAA+B;AAC/B,yBAAuB;AACvB,2BAAyB;AACzB,kBAAgB;AAChB,iBAAe;AACf,kBAAgB;AAChB,gBAAc;AAGd,4BAA4B;AAE5B,IAAM,WAAW,GAAG,0lXAA0lX,CAAC;AAG/mX,4BAA4B;AAE5B,kEAAiE;AACjE,+EAA8E;AAC9E,oEAAmE;AACnE,8DAA6D;AAC7D,gEAA+D;AAC/D,sDAAqD;AACrD,oEAAmE;AACnE,gHAA+G;AAE/G,IAAM,WAAW,GAAG;IACnB,mCAAmC,EAAE,mCAAgB;IACrD,0CAA0C,EAAE,iDAAuB;IACnE,oCAAoC,EAAE,qCAAiB;IACvD,iCAAiC,EAAE,+BAAc;IACjD,kCAAkC,EAAE,iCAAe;IACnD,6BAA6B,EAAE,uBAAU;IACzC,oCAAoC,EAAE,qCAAiB;IACvD,mDAAmD,EAAE,mEAAgC;CACrF,CAAC;AAGF,kCAAkC;AAElC,oDAAyD;AACzD,6BAAgB,CAAC,KAAK,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;AAGjD,2CAAyB"}
package/dist/index.d.ts CHANGED
@@ -2,4 +2,6 @@ export * from './src/table/RecordTable';
2
2
  export * from './src/table/QueryTableLoader';
3
3
  export * from './src/form/RecordForm';
4
4
  export * from './src/form/RecordFormCustomization';
5
+ export * from './src/pages/RecordTablePage';
6
+ export * from './src/pages/RecordFormPage';
5
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uBAAuB,CAAC;AACtC,cAAc,oCAAoC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uBAAuB,CAAC;AACtC,cAAc,oCAAoC,CAAC;AACnD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,4BAA4B,CAAC"}
package/dist/index.js CHANGED
@@ -18,4 +18,6 @@ __exportStar(require("./src/table/RecordTable"), exports);
18
18
  __exportStar(require("./src/table/QueryTableLoader"), exports);
19
19
  __exportStar(require("./src/form/RecordForm"), exports);
20
20
  __exportStar(require("./src/form/RecordFormCustomization"), exports);
21
+ __exportStar(require("./src/pages/RecordTablePage"), exports);
22
+ __exportStar(require("./src/pages/RecordFormPage"), exports);
21
23
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAwC;AACxC,+DAA6C;AAC7C,wDAAsC;AACtC,qEAAmD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAwC;AACxC,+DAA6C;AAC7C,wDAAsC;AACtC,qEAAmD;AACnD,8DAA4C;AAC5C,6DAA2C"}
@@ -1 +1 @@
1
- {"version":3,"file":"RecordForm.d.ts","sourceRoot":"","sources":["../../../src/form/RecordForm.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,EACL,KAAK,EACL,MAAM,EASP,MAAM,eAAe,CAAC;AAKvB,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,MAAM,IAAI;IAC9C,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAChB,MAAM,CAAC,EAAE,CAAC,CAAC;CACZ,CAAC;AA4DF,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,eAAe,CAAC,CAAC,CAAC,qBAoOjF"}
1
+ {"version":3,"file":"RecordForm.d.ts","sourceRoot":"","sources":["../../../src/form/RecordForm.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,EACL,KAAK,EACL,MAAM,EASP,MAAM,eAAe,CAAC;AAKvB,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,MAAM,IAAI;IAC9C,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAChB,MAAM,CAAC,EAAE,CAAC,CAAC;CACZ,CAAC;AA4DF,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,eAAe,CAAC,CAAC,CAAC,qBA4OjF"}
@@ -96,7 +96,13 @@ function RecordForm(_a) {
96
96
  var table = _a.table, record = _a.record;
97
97
  var isNewRecord = typeof record === 'undefined';
98
98
  var recordFormCustomization = (0, RecordFormCustomization_1.getRecordFormCustomization)(table.name);
99
- return (react_1.default.createElement(ui_1.Form, { name: (0, string_1.default)(table.name).humanize().s, createFields: createFields(), fieldLayout: fieldLayout(), buttons: (recordFormCustomization === null || recordFormCustomization === void 0 ? void 0 : recordFormCustomization.getFormButtons) ? recordFormCustomization.getFormButtons(record, buttons()) : buttons(), onLoad: onLoad, onLoadProgressMessage: "Loading ".concat((0, string_1.default)(table.name).humanize().s) }));
99
+ var defaultFieldLayout = fieldLayout();
100
+ var defaultFormButtons = buttons();
101
+ return (react_1.default.createElement(ui_1.Form, { name: (0, string_1.default)(table.name).humanize().s, createFields: createFields(), fieldLayout: recordFormCustomization
102
+ ? recordFormCustomization.getFieldLayout(record, defaultFieldLayout)
103
+ : defaultFieldLayout, buttons: recordFormCustomization
104
+ ? recordFormCustomization.getFormButtons(record, defaultFormButtons)
105
+ : defaultFormButtons, onLoad: onLoad, onLoadProgressMessage: "Loading ".concat((0, string_1.default)(table.name).humanize().s) }));
100
106
  function getColumn(columnPropertyName) {
101
107
  return table.columns[columnPropertyName];
102
108
  }
@@ -1 +1 @@
1
- {"version":3,"file":"RecordForm.js","sourceRoot":"","sources":["../../../src/form/RecordForm.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RecordForm.js","sourceRoot":"","sources":["../../../src/form/RecordForm.tsx"],"names":[],"mappings":"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"}
@@ -6,5 +6,11 @@ export declare const getRecordFormCustomization: (tableName: string) => RecordFo
6
6
  export declare abstract class RecordFormCustomization implements Loadable {
7
7
  abstract table: Table<any>;
8
8
  getFormButtons(record: any, defaultFormButtons: FormButtons<any>): FormButtons<any>;
9
+ /**
10
+ * Narrow or reorder the fields the form renders. `record` is undefined when the form is creating a
11
+ * new record, so a customization that replaces the create action with a domain action (ie. sending
12
+ * an invite) can show only the fields that action actually consumes.
13
+ */
14
+ getFieldLayout(record: any, defaultFieldLayout: string[] | string[][]): string[] | string[][];
9
15
  }
10
16
  //# sourceMappingURL=RecordFormCustomization.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RecordFormCustomization.d.ts","sourceRoot":"","sources":["../../../src/form/RecordFormCustomization.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAoB,MAAM,uBAAuB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEtC,eAAO,MAAM,2BAA2B,iCAC6D,CAAC;AAEtG,eAAO,MAAM,0BAA0B,cAAe,MAAM,wCAO3D,CAAC;AAEF,8BAAsB,uBAAwB,YAAW,QAAQ;IAC/D,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,kBAAkB,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC;CAGpF"}
1
+ {"version":3,"file":"RecordFormCustomization.d.ts","sourceRoot":"","sources":["../../../src/form/RecordFormCustomization.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAoB,MAAM,uBAAuB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEtC,eAAO,MAAM,2BAA2B,iCAC6D,CAAC;AAEtG,eAAO,MAAM,0BAA0B,cAAe,MAAM,wCAO3D,CAAC;AAEF,8BAAsB,uBAAwB,YAAW,QAAQ;IAC/D,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IAE3B,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,kBAAkB,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC;IAInF;;;;OAIG;IACH,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,kBAAkB,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE,EAAE;CAG9F"}
@@ -22,6 +22,14 @@ var RecordFormCustomization = /** @class */ (function () {
22
22
  RecordFormCustomization.prototype.getFormButtons = function (record, defaultFormButtons) {
23
23
  return defaultFormButtons;
24
24
  };
25
+ /**
26
+ * Narrow or reorder the fields the form renders. `record` is undefined when the form is creating a
27
+ * new record, so a customization that replaces the create action with a domain action (ie. sending
28
+ * an invite) can show only the fields that action actually consumes.
29
+ */
30
+ RecordFormCustomization.prototype.getFieldLayout = function (record, defaultFieldLayout) {
31
+ return defaultFieldLayout;
32
+ };
25
33
  return RecordFormCustomization;
26
34
  }());
27
35
  exports.RecordFormCustomization = RecordFormCustomization;
@@ -1 +1 @@
1
- {"version":3,"file":"RecordFormCustomization.js","sourceRoot":"","sources":["../../../src/form/RecordFormCustomization.tsx"],"names":[],"mappings":";;;AAAA,oDAAmE;AAI5D,IAAM,2BAA2B,GAAG;IACzC,OAAA,6BAAgB,CAAC,GAAG,EAAE,CAAC,OAAO,CAA0B,0CAA0C,CAAC;AAAnG,CAAmG,CAAC;AADzF,QAAA,2BAA2B,+BAC8D;AAE/F,IAAM,0BAA0B,GAAG,UAAC,SAAiB;IAC1D,IAAM,wBAAwB,GAAG,IAAA,mCAA2B,GAAE,CAAC;IAC/D,KAAsC,UAAwB,EAAxB,qDAAwB,EAAxB,sCAAwB,EAAxB,IAAwB,EAAE;QAA3D,IAAM,uBAAuB,iCAAA;QAChC,IAAI,uBAAuB,CAAC,KAAK,CAAC,IAAI,IAAI,SAAS,EAAE;YACnD,OAAO,uBAAuB,CAAC;SAChC;KACF;AACH,CAAC,CAAC;AAPW,QAAA,0BAA0B,8BAOrC;AAEF;IAAA;IAKA,CAAC;IAHC,gDAAc,GAAd,UAAe,MAAW,EAAE,kBAAoC;QAC9D,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IACH,8BAAC;AAAD,CAAC,AALD,IAKC;AALqB,0DAAuB"}
1
+ {"version":3,"file":"RecordFormCustomization.js","sourceRoot":"","sources":["../../../src/form/RecordFormCustomization.tsx"],"names":[],"mappings":";;;AAAA,oDAAmE;AAI5D,IAAM,2BAA2B,GAAG;IACzC,OAAA,6BAAgB,CAAC,GAAG,EAAE,CAAC,OAAO,CAA0B,0CAA0C,CAAC;AAAnG,CAAmG,CAAC;AADzF,QAAA,2BAA2B,+BAC8D;AAE/F,IAAM,0BAA0B,GAAG,UAAC,SAAiB;IAC1D,IAAM,wBAAwB,GAAG,IAAA,mCAA2B,GAAE,CAAC;IAC/D,KAAsC,UAAwB,EAAxB,qDAAwB,EAAxB,sCAAwB,EAAxB,IAAwB,EAAE;QAA3D,IAAM,uBAAuB,iCAAA;QAChC,IAAI,uBAAuB,CAAC,KAAK,CAAC,IAAI,IAAI,SAAS,EAAE;YACnD,OAAO,uBAAuB,CAAC;SAChC;KACF;AACH,CAAC,CAAC;AAPW,QAAA,0BAA0B,8BAOrC;AAEF;IAAA;IAeA,CAAC;IAZC,gDAAc,GAAd,UAAe,MAAW,EAAE,kBAAoC;QAC9D,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IAED;;;;OAIG;IACH,gDAAc,GAAd,UAAe,MAAW,EAAE,kBAAyC;QACnE,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IACH,8BAAC;AAAD,CAAC,AAfD,IAeC;AAfqB,0DAAuB"}
@@ -94,25 +94,42 @@ var newRecordFormLink = function (tableName) {
94
94
  exports.newRecordFormLink = newRecordFormLink;
95
95
  var DynamicRecordForm = function (_a) {
96
96
  var urlParams = _a.urlParams;
97
+ var recordId = urlParams['record'];
97
98
  var _b = react_1.default.useState(), record = _b[0], setRecord = _b[1];
99
+ /**
100
+ * The form renders differently for a new record than for an existing one (RecordFormCustomization
101
+ * keys its buttons and fields off `record`), so an existing record must not be rendered until it
102
+ * has loaded — otherwise the form briefly shows the create surface for a record that already
103
+ * exists. New-record forms have nothing to wait for and start loaded.
104
+ */
105
+ var _c = react_1.default.useState(!recordId), recordLoaded = _c[0], setRecordLoaded = _c[1];
106
+ var _d = react_1.default.useState(), loadError = _d[0], setLoadError = _d[1];
98
107
  react_1.default.useEffect(function () {
99
108
  var fetchData = function () { return __awaiter(void 0, void 0, void 0, function () {
100
- var table, recordId, fetchedRecord;
101
- return __generator(this, function (_a) {
102
- switch (_a.label) {
109
+ var table, fetchedRecord, _a;
110
+ return __generator(this, function (_b) {
111
+ switch (_b.label) {
103
112
  case 0:
104
113
  table = getTable().table;
105
- if (!table) {
114
+ if (!table || !recordId) {
106
115
  return [2 /*return*/];
107
116
  }
108
- recordId = urlParams['record'];
109
- if (!recordId) {
110
- return [2 /*return*/];
111
- }
112
- return [4 /*yield*/, (0, db_1.getDbService)().get(table, { id: recordId })];
117
+ setRecordLoaded(false);
118
+ setLoadError(undefined);
119
+ _b.label = 1;
113
120
  case 1:
114
- fetchedRecord = _a.sent();
121
+ _b.trys.push([1, 3, , 4]);
122
+ return [4 /*yield*/, (0, db_1.getDbService)().get(table, { id: recordId })];
123
+ case 2:
124
+ fetchedRecord = _b.sent();
115
125
  setRecord(fetchedRecord);
126
+ return [3 /*break*/, 4];
127
+ case 3:
128
+ _a = _b.sent();
129
+ setLoadError("Unable to load ".concat(table.name, " record: ").concat(recordId));
130
+ return [3 /*break*/, 4];
131
+ case 4:
132
+ setRecordLoaded(true);
116
133
  return [2 /*return*/];
117
134
  }
118
135
  });
@@ -142,6 +159,15 @@ var DynamicRecordForm = function (_a) {
142
159
  if (!table) {
143
160
  return react_1.default.createElement("div", null, error);
144
161
  }
162
+ if (loadError) {
163
+ return react_1.default.createElement("div", null, loadError);
164
+ }
165
+ if (!recordLoaded) {
166
+ return null;
167
+ }
168
+ if (recordId && !record) {
169
+ return react_1.default.createElement("div", null, "No ".concat(table.name, " record found: ").concat(recordId));
170
+ }
145
171
  return react_1.default.createElement(RecordForm_1.RecordForm, { table: table, record: record });
146
172
  }
147
173
  return react_1.default.createElement(Form, null);
@@ -1 +1 @@
1
- {"version":3,"file":"RecordFormPage.js","sourceRoot":"","sources":["../../../src/pages/RecordFormPage.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAA0B;AAC1B,oCAAmE;AACnE,oCAA0D;AAC1D,iDAAgD;AAGnC,QAAA,cAAc,GAAS;IAClC,IAAI,EAAE,aAAa;IACnB,IAAI,EAAE,aAAa;IACnB,IAAI,EAAE;QACJ,QAAQ,EAAE,IAAI;KACf;IACD,oBAAoB,EAAE,UAAC,KAAY;QACjC,OAAO;YACL,MAAM,EAAE,OAAO;YACf,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO;SAClD,CAAC;IACJ,CAAC;IACD,SAAS,EAAE,UAAC,EAAY;YAAP,KAAK,cAAV,EAAY,CAAF;QAAO,OAAA,CAC3B,8BAAC,aAAQ;YACP,8BAAC,iBAAiB,eAAK,KAAK,EAAI,CACvB,CACZ,CAAA;KAAA;CACF,CAAC;AAEK,IAAM,cAAc,GAAG,UAAC,SAAiB,EAAE,QAAgB;IAChE,OAAO,WAAI,sBAAc,CAAC,IAAI,oBAAU,SAAS,qBAAW,QAAQ,CAAE,CAAC;AACzE,CAAC,CAAC;AAFW,QAAA,cAAc,kBAEzB;AAEK,IAAM,iBAAiB,GAAG,UAAC,SAAiB;IACjD,OAAO,WAAI,sBAAc,CAAC,IAAI,oBAAU,SAAS,CAAE,CAAC;AACtD,CAAC,CAAC;AAFW,QAAA,iBAAiB,qBAE5B;AAEF,IAAM,iBAAiB,GAAG,UAAC,EAAiC;QAA/B,SAAS,eAAA;IAC9B,IAAA,KAAsB,eAAK,CAAC,QAAQ,EAAE,EAArC,MAAM,QAAA,EAAE,SAAS,QAAoB,CAAC;IAE7C,eAAK,CAAC,SAAS,CAAC;QACd,IAAM,SAAS,GAAG;;;;;wBACR,KAAK,GAAK,QAAQ,EAAE,MAAf,CAAgB;wBAC7B,IAAI,CAAC,KAAK,EAAE;4BACV,sBAAO;yBACR;wBAEK,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;wBACrC,IAAI,CAAC,QAAQ,EAAE;4BACb,sBAAO;yBACR;wBAEqB,qBAAM,IAAA,iBAAY,GAAE,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAA;;wBAAjE,aAAa,GAAG,SAAiD;wBACvE,SAAS,CAAC,aAAa,CAAC,CAAC;;;;aAC1B,CAAC;QAEF,SAAS,EAAE,CAAC;IACd,CAAC,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;IAExC,SAAS,QAAQ;QACf,IAAM,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;QACrC,IAAI,KAAK,CAAC;QACV,IAAI,KAAK,CAAC;QACV,IAAI,SAAS,EAAE;YACb,IAAI;gBACF,KAAK,GAAG,IAAA,gBAAW,EAAC,SAAS,CAAC,CAAC;aAChC;YAAC,OAAO,KAAK,EAAE;gBACd,wCAAwC;gBACxC,KAAK,GAAG,sCAA+B,SAAS,CAAE,CAAC;aACpD;SACF;aAAM;YACL,KAAK,GAAG,mDAAmD,CAAC;SAC7D;QAED,OAAO,EAAE,KAAK,OAAA,EAAE,KAAK,OAAA,EAAE,CAAC;IAC1B,CAAC;IAED,SAAS,IAAI;QACL,IAAA,KAAmB,QAAQ,EAAE,EAA3B,KAAK,WAAA,EAAE,KAAK,WAAe,CAAC;QACpC,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,2CAAM,KAAK,CAAO,CAAC;SAC3B;QAED,OAAO,8BAAC,uBAAU,IAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAI,CAAC;IACtD,CAAC;IAED,OAAO,8BAAC,IAAI,OAAG,CAAC;AAClB,CAAC,CAAC"}
1
+ {"version":3,"file":"RecordFormPage.js","sourceRoot":"","sources":["../../../src/pages/RecordFormPage.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAA0B;AAC1B,oCAAmE;AACnE,oCAA0D;AAC1D,iDAAgD;AAGnC,QAAA,cAAc,GAAS;IAClC,IAAI,EAAE,aAAa;IACnB,IAAI,EAAE,aAAa;IACnB,IAAI,EAAE;QACJ,QAAQ,EAAE,IAAI;KACf;IACD,oBAAoB,EAAE,UAAC,KAAY;QACjC,OAAO;YACL,MAAM,EAAE,OAAO;YACf,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO;SAClD,CAAC;IACJ,CAAC;IACD,SAAS,EAAE,UAAC,EAAY;YAAP,KAAK,cAAV,EAAY,CAAF;QAAO,OAAA,CAC3B,8BAAC,aAAQ;YACP,8BAAC,iBAAiB,eAAK,KAAK,EAAI,CACvB,CACZ,CAAA;KAAA;CACF,CAAC;AAEK,IAAM,cAAc,GAAG,UAAC,SAAiB,EAAE,QAAgB;IAChE,OAAO,WAAI,sBAAc,CAAC,IAAI,oBAAU,SAAS,qBAAW,QAAQ,CAAE,CAAC;AACzE,CAAC,CAAC;AAFW,QAAA,cAAc,kBAEzB;AAEK,IAAM,iBAAiB,GAAG,UAAC,SAAiB;IACjD,OAAO,WAAI,sBAAc,CAAC,IAAI,oBAAU,SAAS,CAAE,CAAC;AACtD,CAAC,CAAC;AAFW,QAAA,iBAAiB,qBAE5B;AAEF,IAAM,iBAAiB,GAAG,UAAC,EAAiC;QAA/B,SAAS,eAAA;IACpC,IAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC/B,IAAA,KAAsB,eAAK,CAAC,QAAQ,EAAE,EAArC,MAAM,QAAA,EAAE,SAAS,QAAoB,CAAC;IAC7C;;;;;OAKG;IACG,IAAA,KAAkC,eAAK,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,EAA1D,YAAY,QAAA,EAAE,eAAe,QAA6B,CAAC;IAC5D,IAAA,KAA4B,eAAK,CAAC,QAAQ,EAAU,EAAnD,SAAS,QAAA,EAAE,YAAY,QAA4B,CAAC;IAE3D,eAAK,CAAC,SAAS,CAAC;QACd,IAAM,SAAS,GAAG;;;;;wBACR,KAAK,GAAK,QAAQ,EAAE,MAAf,CAAgB;wBAC7B,IAAI,CAAC,KAAK,IAAI,CAAC,QAAQ,EAAE;4BACvB,sBAAO;yBACR;wBAED,eAAe,CAAC,KAAK,CAAC,CAAC;wBACvB,YAAY,CAAC,SAAS,CAAC,CAAC;;;;wBAEA,qBAAM,IAAA,iBAAY,GAAE,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAA;;wBAAjE,aAAa,GAAG,SAAiD;wBACvE,SAAS,CAAC,aAAa,CAAC,CAAC;;;;wBAEzB,YAAY,CAAC,yBAAkB,KAAK,CAAC,IAAI,sBAAY,QAAQ,CAAE,CAAC,CAAC;;;wBAEnE,eAAe,CAAC,IAAI,CAAC,CAAC;;;;aACvB,CAAC;QAEF,SAAS,EAAE,CAAC;IACd,CAAC,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;IAExC,SAAS,QAAQ;QACf,IAAM,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;QACrC,IAAI,KAAK,CAAC;QACV,IAAI,KAAK,CAAC;QACV,IAAI,SAAS,EAAE;YACb,IAAI;gBACF,KAAK,GAAG,IAAA,gBAAW,EAAC,SAAS,CAAC,CAAC;aAChC;YAAC,OAAO,KAAK,EAAE;gBACd,wCAAwC;gBACxC,KAAK,GAAG,sCAA+B,SAAS,CAAE,CAAC;aACpD;SACF;aAAM;YACL,KAAK,GAAG,mDAAmD,CAAC;SAC7D;QAED,OAAO,EAAE,KAAK,OAAA,EAAE,KAAK,OAAA,EAAE,CAAC;IAC1B,CAAC;IAED,SAAS,IAAI;QACL,IAAA,KAAmB,QAAQ,EAAE,EAA3B,KAAK,WAAA,EAAE,KAAK,WAAe,CAAC;QACpC,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,2CAAM,KAAK,CAAO,CAAC;SAC3B;QAED,IAAI,SAAS,EAAE;YACb,OAAO,2CAAM,SAAS,CAAO,CAAC;SAC/B;QAED,IAAI,CAAC,YAAY,EAAE;YACjB,OAAO,IAAI,CAAC;SACb;QAED,IAAI,QAAQ,IAAI,CAAC,MAAM,EAAE;YACvB,OAAO,2CAAM,aAAM,KAAK,CAAC,IAAI,4BAAkB,QAAQ,CAAE,CAAO,CAAC;SAClE;QAED,OAAO,8BAAC,uBAAU,IAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAI,CAAC;IACtD,CAAC;IAED,OAAO,8BAAC,IAAI,OAAG,CAAC;AAClB,CAAC,CAAC"}
@@ -13,11 +13,10 @@ import 'react';
13
13
  import 'string';
14
14
  import 'uuid';
15
15
 
16
-
17
16
  /** Generate Source Graph */
18
17
 
19
- const sourceGraph = "{\"options\":{\"directed\":true,\"multigraph\":false,\"compound\":false},\"nodes\":[{\"v\":\"@proteinjs/db-ui/QueryTableLoader\",\"value\":{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"QueryTableLoader\",\"filePath\":\"/Users/brentbahry/repos/farm/n3xa2/packages/proteinjs/packages/db/packages/ui/src/table/QueryTableLoader.ts\",\"qualifiedName\":\"@proteinjs/db-ui/QueryTableLoader\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"rowCountQb\",\"type\":{\"packageName\":\"\",\"name\":\"QueryBuilder<T>\",\"filePath\":null,\"qualifiedName\":\"/QueryBuilder<T>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":true,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"paginationQb\",\"type\":{\"packageName\":\"\",\"name\":\"QueryBuilder<T>\",\"filePath\":null,\"qualifiedName\":\"/QueryBuilder<T>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":true,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"reactQueryKeys\",\"type\":{\"packageName\":\"\",\"name\":\"TableLoader<T>['reactQueryKeys']\",\"filePath\":null,\"qualifiedName\":\"/TableLoader<T>['reactQueryKeys']\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"},{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<T>\",\"filePath\":null,\"qualifiedName\":\"/Table<T>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"query\",\"type\":{\"packageName\":\"\",\"name\":\"Query<T>\",\"filePath\":null,\"qualifiedName\":\"/Query<T>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":true,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"sort\",\"type\":{\"packageName\":\"\",\"name\":\"SortCriteria<T>[]\",\"filePath\":null,\"qualifiedName\":\"/SortCriteria<T>[]\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":true,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"},{\"name\":\"queryOptions\",\"type\":{\"packageName\":\"\",\"name\":\"QueryOptions<T>\",\"filePath\":null,\"qualifiedName\":\"/QueryOptions<T>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":true,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"private\"}],\"methods\":[{\"name\":\"load\",\"returnType\":{\"packageName\":\"\",\"name\":\"Promise<RowWindow<T>>\",\"filePath\":null,\"qualifiedName\":\"/Promise<RowWindow<T>>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":true,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"startIndex\",\"type\":{\"packageName\":\"\",\"name\":\"number\",\"filePath\":null,\"qualifiedName\":\"/number\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"endIndex\",\"type\":{\"packageName\":\"\",\"name\":\"number\",\"filePath\":null,\"qualifiedName\":\"/number\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"skipRowCount\",\"type\":{\"packageName\":\"\",\"name\":\"boolean\",\"filePath\":null,\"qualifiedName\":\"/boolean\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[\"/T extends Record\"],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/ui\",\"name\":\"TableLoader\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/TableLoader\",\"properties\":[],\"methods\":[],\"typeParameters\":[\"/T\"],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/ui/TableLoader\"},{\"v\":\"@proteinjs/db-ui/RecordFormCustomization\",\"value\":{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"RecordFormCustomization\",\"filePath\":\"/Users/brentbahry/repos/farm/n3xa2/packages/proteinjs/packages/db/packages/ui/src/form/RecordFormCustomization.tsx\",\"qualifiedName\":\"@proteinjs/db-ui/RecordFormCustomization\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"table\",\"type\":{\"packageName\":\"\",\"name\":\"Table<any>\",\"filePath\":null,\"qualifiedName\":\"/Table<any>\",\"typeParameters\":null,\"directParents\":null},\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"getFormButtons\",\"returnType\":{\"packageName\":\"\",\"name\":\"FormButtons<any>\",\"filePath\":null,\"qualifiedName\":\"/FormButtons<any>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"record\",\"type\":{\"packageName\":\"\",\"name\":\"any\",\"filePath\":null,\"qualifiedName\":\"/any\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"defaultFormButtons\",\"type\":{\"packageName\":\"\",\"name\":\"FormButtons<any>\",\"filePath\":null,\"qualifiedName\":\"/FormButtons<any>\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParentInterfaces\":[{\"packageName\":\"@proteinjs/reflection\",\"name\":\"Loadable\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/reflection/Loadable\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParents\":[]}],\"directParentClasses\":[],\"sourceType\":2}},{\"v\":\"@proteinjs/reflection/Loadable\"},{\"v\":\"@proteinjs/db-ui/SpecificTableProps\"},{\"v\":\"@proteinjs/db-ui/hashGeneratorPage\",\"value\":{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"hashGeneratorPage\",\"filePath\":\"/Users/brentbahry/repos/farm/n3xa2/packages/proteinjs/packages/db/packages/ui/src/pages/HashGeneratorPage.tsx\",\"qualifiedName\":\"@proteinjs/db-ui/hashGeneratorPage\",\"type\":{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":null}]},\"isExported\":true,\"isConst\":true,\"sourceType\":0}},{\"v\":\"@proteinjs/ui/Page\"},{\"v\":\"@proteinjs/db-ui/recordFormPage\",\"value\":{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"recordFormPage\",\"filePath\":\"/Users/brentbahry/repos/farm/n3xa2/packages/proteinjs/packages/db/packages/ui/src/pages/RecordFormPage.tsx\",\"qualifiedName\":\"@proteinjs/db-ui/recordFormPage\",\"type\":{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":null}]},\"isExported\":true,\"isConst\":true,\"sourceType\":0}},{\"v\":\"@proteinjs/db-ui/recordTablePage\",\"value\":{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"recordTablePage\",\"filePath\":\"/Users/brentbahry/repos/farm/n3xa2/packages/proteinjs/packages/db/packages/ui/src/pages/RecordTablePage.tsx\",\"qualifiedName\":\"@proteinjs/db-ui/recordTablePage\",\"type\":{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":null}]},\"isExported\":true,\"isConst\":true,\"sourceType\":0}},{\"v\":\"@proteinjs/db-ui/tablesPage\",\"value\":{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"tablesPage\",\"filePath\":\"/Users/brentbahry/repos/farm/n3xa2/packages/proteinjs/packages/db/packages/ui/src/pages/TablesPage.tsx\",\"qualifiedName\":\"@proteinjs/db-ui/tablesPage\",\"type\":{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":null}]},\"isExported\":true,\"isConst\":true,\"sourceType\":0}},{\"v\":\"@proteinjs/db-ui/uuidGeneratorPage\",\"value\":{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"uuidGeneratorPage\",\"filePath\":\"/Users/brentbahry/repos/farm/n3xa2/packages/proteinjs/packages/db/packages/ui/src/pages/UuidGeneratorPage.tsx\",\"qualifiedName\":\"@proteinjs/db-ui/uuidGeneratorPage\",\"type\":{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":[{\"packageName\":\"@proteinjs/ui\",\"name\":\"Page\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/ui/Page\",\"typeParameters\":[],\"directParents\":null}]},\"isExported\":true,\"isConst\":true,\"sourceType\":0}},{\"v\":\"@proteinjs/db-ui/MigrationRecordFormCustomization\",\"value\":{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"MigrationRecordFormCustomization\",\"filePath\":\"/Users/brentbahry/repos/farm/n3xa2/packages/proteinjs/packages/db/packages/ui/src/form/customizations/MigrationRecordFormCustomization.tsx\",\"qualifiedName\":\"@proteinjs/db-ui/MigrationRecordFormCustomization\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[{\"name\":\"table\",\"type\":null,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\"}],\"methods\":[{\"name\":\"getFormButtons\",\"returnType\":{\"packageName\":\"\",\"name\":\"FormButtons<any>\",\"filePath\":null,\"qualifiedName\":\"/FormButtons<any>\",\"typeParameters\":null,\"directParents\":null},\"isAsync\":false,\"isOptional\":false,\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"parameters\":[{\"name\":\"migration\",\"type\":{\"packageName\":\"@proteinjs/db\",\"name\":\"Migration\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db/Migration\",\"typeParameters\":null,\"directParents\":null}},{\"name\":\"defaultFormButtons\",\"type\":{\"packageName\":\"\",\"name\":\"FormButtons<any>\",\"filePath\":null,\"qualifiedName\":\"/FormButtons<any>\",\"typeParameters\":null,\"directParents\":null}}]}],\"typeParameters\":[],\"directParentInterfaces\":[],\"directParentClasses\":[{\"packageName\":\"@proteinjs/db-ui\",\"name\":\"RecordFormCustomization\",\"filePath\":null,\"qualifiedName\":\"@proteinjs/db-ui/RecordFormCustomization\",\"isAbstract\":false,\"isStatic\":false,\"visibility\":\"public\",\"properties\":[],\"methods\":[],\"typeParameters\":[],\"directParentInterfaces\":[],\"directParentClasses\":[]}],\"sourceType\":2}}],\"edges\":[{\"v\":\"@proteinjs/db-ui/QueryTableLoader\",\"w\":\"@proteinjs/ui/TableLoader\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/db-ui/RecordFormCustomization\",\"w\":\"@proteinjs/reflection/Loadable\",\"value\":\"implements interface\"},{\"v\":\"@proteinjs/db-ui/hashGeneratorPage\",\"w\":\"@proteinjs/ui/Page\",\"value\":\"has type\"},{\"v\":\"@proteinjs/db-ui/recordFormPage\",\"w\":\"@proteinjs/ui/Page\",\"value\":\"has type\"},{\"v\":\"@proteinjs/db-ui/recordTablePage\",\"w\":\"@proteinjs/ui/Page\",\"value\":\"has type\"},{\"v\":\"@proteinjs/db-ui/tablesPage\",\"w\":\"@proteinjs/ui/Page\",\"value\":\"has type\"},{\"v\":\"@proteinjs/db-ui/uuidGeneratorPage\",\"w\":\"@proteinjs/ui/Page\",\"value\":\"has type\"},{\"v\":\"@proteinjs/db-ui/MigrationRecordFormCustomization\",\"w\":\"@proteinjs/db-ui/RecordFormCustomization\",\"value\":\"extends class\"}]}";
20
-
18
+ const sourceGraph =
19
+ '{"options":{"directed":true,"multigraph":false,"compound":false},"nodes":[{"v":"@proteinjs/db-ui/QueryTableLoader","value":{"packageName":"@proteinjs/db-ui","name":"QueryTableLoader","filePath":"/home/runner/work/db/db/packages/ui/src/table/QueryTableLoader.ts","qualifiedName":"@proteinjs/db-ui/QueryTableLoader","isAbstract":false,"isStatic":false,"visibility":"public","properties":[{"name":"rowCountQb","type":{"packageName":"","name":"QueryBuilder<T>","filePath":null,"qualifiedName":"/QueryBuilder<T>","typeParameters":null,"directParents":null},"isOptional":true,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"paginationQb","type":{"packageName":"","name":"QueryBuilder<T>","filePath":null,"qualifiedName":"/QueryBuilder<T>","typeParameters":null,"directParents":null},"isOptional":true,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"reactQueryKeys","type":{"packageName":"","name":"TableLoader<T>[\'reactQueryKeys\']","filePath":null,"qualifiedName":"/TableLoader<T>[\'reactQueryKeys\']","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"},{"name":"table","type":{"packageName":"","name":"Table<T>","filePath":null,"qualifiedName":"/Table<T>","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"query","type":{"packageName":"","name":"Query<T>","filePath":null,"qualifiedName":"/Query<T>","typeParameters":null,"directParents":null},"isOptional":true,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"sort","type":{"packageName":"","name":"SortCriteria<T>[]","filePath":null,"qualifiedName":"/SortCriteria<T>[]","typeParameters":null,"directParents":null},"isOptional":true,"isAbstract":false,"isStatic":false,"visibility":"private"},{"name":"queryOptions","type":{"packageName":"","name":"QueryOptions<T>","filePath":null,"qualifiedName":"/QueryOptions<T>","typeParameters":null,"directParents":null},"isOptional":true,"isAbstract":false,"isStatic":false,"visibility":"private"}],"methods":[{"name":"load","returnType":{"packageName":"","name":"Promise<RowWindow<T>>","filePath":null,"qualifiedName":"/Promise<RowWindow<T>>","typeParameters":null,"directParents":null},"isAsync":true,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"startIndex","type":{"packageName":"","name":"number","filePath":null,"qualifiedName":"/number","typeParameters":null,"directParents":null}},{"name":"endIndex","type":{"packageName":"","name":"number","filePath":null,"qualifiedName":"/number","typeParameters":null,"directParents":null}},{"name":"skipRowCount","type":{"packageName":"","name":"boolean","filePath":null,"qualifiedName":"/boolean","typeParameters":null,"directParents":null}}]}],"typeParameters":["/T extends Record"],"directParentInterfaces":[{"packageName":"@proteinjs/ui","name":"TableLoader","filePath":null,"qualifiedName":"@proteinjs/ui/TableLoader","properties":[],"methods":[],"typeParameters":["/T"],"directParents":[]}],"directParentClasses":[],"sourceType":2}},{"v":"@proteinjs/ui/TableLoader"},{"v":"@proteinjs/db-ui/RecordFormCustomization","value":{"packageName":"@proteinjs/db-ui","name":"RecordFormCustomization","filePath":"/home/runner/work/db/db/packages/ui/src/form/RecordFormCustomization.tsx","qualifiedName":"@proteinjs/db-ui/RecordFormCustomization","isAbstract":false,"isStatic":false,"visibility":"public","properties":[{"name":"table","type":{"packageName":"","name":"Table<any>","filePath":null,"qualifiedName":"/Table<any>","typeParameters":null,"directParents":null},"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"}],"methods":[{"name":"getFormButtons","returnType":{"packageName":"","name":"FormButtons<any>","filePath":null,"qualifiedName":"/FormButtons<any>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"record","type":{"packageName":"","name":"any","filePath":null,"qualifiedName":"/any","typeParameters":null,"directParents":null}},{"name":"defaultFormButtons","type":{"packageName":"","name":"FormButtons<any>","filePath":null,"qualifiedName":"/FormButtons<any>","typeParameters":null,"directParents":null}}]},{"name":"getFieldLayout","returnType":{"packageName":"","name":"string[] | string[][]","filePath":null,"qualifiedName":"/string[] | string[][]","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"record","type":{"packageName":"","name":"any","filePath":null,"qualifiedName":"/any","typeParameters":null,"directParents":null}},{"name":"defaultFieldLayout","type":{"packageName":"","name":"string[] | string[][]","filePath":null,"qualifiedName":"/string[] | string[][]","typeParameters":null,"directParents":null}}]}],"typeParameters":[],"directParentInterfaces":[{"packageName":"@proteinjs/reflection","name":"Loadable","filePath":null,"qualifiedName":"@proteinjs/reflection/Loadable","properties":[],"methods":[],"typeParameters":[],"directParents":[]}],"directParentClasses":[],"sourceType":2}},{"v":"@proteinjs/reflection/Loadable"},{"v":"@proteinjs/db-ui/hashGeneratorPage","value":{"packageName":"@proteinjs/db-ui","name":"hashGeneratorPage","filePath":"/home/runner/work/db/db/packages/ui/src/pages/HashGeneratorPage.tsx","qualifiedName":"@proteinjs/db-ui/hashGeneratorPage","type":{"packageName":"@proteinjs/ui","name":"Page","filePath":null,"qualifiedName":"@proteinjs/ui/Page","typeParameters":[],"directParents":[{"packageName":"@proteinjs/ui","name":"Page","filePath":null,"qualifiedName":"@proteinjs/ui/Page","typeParameters":[],"directParents":null}]},"isExported":true,"isConst":true,"sourceType":0}},{"v":"@proteinjs/ui/Page"},{"v":"@proteinjs/db-ui/recordFormPage","value":{"packageName":"@proteinjs/db-ui","name":"recordFormPage","filePath":"/home/runner/work/db/db/packages/ui/src/pages/RecordFormPage.tsx","qualifiedName":"@proteinjs/db-ui/recordFormPage","type":{"packageName":"@proteinjs/ui","name":"Page","filePath":null,"qualifiedName":"@proteinjs/ui/Page","typeParameters":[],"directParents":[{"packageName":"@proteinjs/ui","name":"Page","filePath":null,"qualifiedName":"@proteinjs/ui/Page","typeParameters":[],"directParents":null}]},"isExported":true,"isConst":true,"sourceType":0}},{"v":"@proteinjs/db-ui/recordTablePage","value":{"packageName":"@proteinjs/db-ui","name":"recordTablePage","filePath":"/home/runner/work/db/db/packages/ui/src/pages/RecordTablePage.tsx","qualifiedName":"@proteinjs/db-ui/recordTablePage","type":{"packageName":"@proteinjs/ui","name":"Page","filePath":null,"qualifiedName":"@proteinjs/ui/Page","typeParameters":[],"directParents":[{"packageName":"@proteinjs/ui","name":"Page","filePath":null,"qualifiedName":"@proteinjs/ui/Page","typeParameters":[],"directParents":null}]},"isExported":true,"isConst":true,"sourceType":0}},{"v":"@proteinjs/db-ui/tablesPage","value":{"packageName":"@proteinjs/db-ui","name":"tablesPage","filePath":"/home/runner/work/db/db/packages/ui/src/pages/TablesPage.tsx","qualifiedName":"@proteinjs/db-ui/tablesPage","type":{"packageName":"@proteinjs/ui","name":"Page","filePath":null,"qualifiedName":"@proteinjs/ui/Page","typeParameters":[],"directParents":[{"packageName":"@proteinjs/ui","name":"Page","filePath":null,"qualifiedName":"@proteinjs/ui/Page","typeParameters":[],"directParents":null}]},"isExported":true,"isConst":true,"sourceType":0}},{"v":"@proteinjs/db-ui/uuidGeneratorPage","value":{"packageName":"@proteinjs/db-ui","name":"uuidGeneratorPage","filePath":"/home/runner/work/db/db/packages/ui/src/pages/UuidGeneratorPage.tsx","qualifiedName":"@proteinjs/db-ui/uuidGeneratorPage","type":{"packageName":"@proteinjs/ui","name":"Page","filePath":null,"qualifiedName":"@proteinjs/ui/Page","typeParameters":[],"directParents":[{"packageName":"@proteinjs/ui","name":"Page","filePath":null,"qualifiedName":"@proteinjs/ui/Page","typeParameters":[],"directParents":null}]},"isExported":true,"isConst":true,"sourceType":0}},{"v":"@proteinjs/db-ui/SpecificTableProps"},{"v":"@proteinjs/db-ui/MigrationRecordFormCustomization","value":{"packageName":"@proteinjs/db-ui","name":"MigrationRecordFormCustomization","filePath":"/home/runner/work/db/db/packages/ui/src/form/customizations/MigrationRecordFormCustomization.tsx","qualifiedName":"@proteinjs/db-ui/MigrationRecordFormCustomization","isAbstract":false,"isStatic":false,"visibility":"public","properties":[{"name":"table","type":null,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public"}],"methods":[{"name":"getFormButtons","returnType":{"packageName":"","name":"FormButtons<any>","filePath":null,"qualifiedName":"/FormButtons<any>","typeParameters":null,"directParents":null},"isAsync":false,"isOptional":false,"isAbstract":false,"isStatic":false,"visibility":"public","parameters":[{"name":"migration","type":{"packageName":"@proteinjs/db","name":"Migration","filePath":null,"qualifiedName":"@proteinjs/db/Migration","typeParameters":null,"directParents":null}},{"name":"defaultFormButtons","type":{"packageName":"","name":"FormButtons<any>","filePath":null,"qualifiedName":"/FormButtons<any>","typeParameters":null,"directParents":null}}]}],"typeParameters":[],"directParentInterfaces":[],"directParentClasses":[{"packageName":"@proteinjs/db-ui","name":"RecordFormCustomization","filePath":null,"qualifiedName":"@proteinjs/db-ui/RecordFormCustomization","isAbstract":false,"isStatic":false,"visibility":"public","properties":[],"methods":[],"typeParameters":[],"directParentInterfaces":[],"directParentClasses":[]}],"sourceType":2}}],"edges":[{"v":"@proteinjs/db-ui/QueryTableLoader","w":"@proteinjs/ui/TableLoader","value":"implements interface"},{"v":"@proteinjs/db-ui/RecordFormCustomization","w":"@proteinjs/reflection/Loadable","value":"implements interface"},{"v":"@proteinjs/db-ui/hashGeneratorPage","w":"@proteinjs/ui/Page","value":"has type"},{"v":"@proteinjs/db-ui/recordFormPage","w":"@proteinjs/ui/Page","value":"has type"},{"v":"@proteinjs/db-ui/recordTablePage","w":"@proteinjs/ui/Page","value":"has type"},{"v":"@proteinjs/db-ui/tablesPage","w":"@proteinjs/ui/Page","value":"has type"},{"v":"@proteinjs/db-ui/uuidGeneratorPage","w":"@proteinjs/ui/Page","value":"has type"},{"v":"@proteinjs/db-ui/MigrationRecordFormCustomization","w":"@proteinjs/db-ui/RecordFormCustomization","value":"extends class"}]}';
21
20
 
22
21
  /** Generate Source Links */
23
22
 
@@ -31,21 +30,19 @@ import { uuidGeneratorPage } from '../src/pages/UuidGeneratorPage';
31
30
  import { MigrationRecordFormCustomization } from '../src/form/customizations/MigrationRecordFormCustomization';
32
31
 
33
32
  const sourceLinks = {
34
- '@proteinjs/db-ui/QueryTableLoader': QueryTableLoader,
35
- '@proteinjs/db-ui/RecordFormCustomization': RecordFormCustomization,
36
- '@proteinjs/db-ui/hashGeneratorPage': hashGeneratorPage,
37
- '@proteinjs/db-ui/recordFormPage': recordFormPage,
38
- '@proteinjs/db-ui/recordTablePage': recordTablePage,
39
- '@proteinjs/db-ui/tablesPage': tablesPage,
40
- '@proteinjs/db-ui/uuidGeneratorPage': uuidGeneratorPage,
41
- '@proteinjs/db-ui/MigrationRecordFormCustomization': MigrationRecordFormCustomization,
33
+ '@proteinjs/db-ui/QueryTableLoader': QueryTableLoader,
34
+ '@proteinjs/db-ui/RecordFormCustomization': RecordFormCustomization,
35
+ '@proteinjs/db-ui/hashGeneratorPage': hashGeneratorPage,
36
+ '@proteinjs/db-ui/recordFormPage': recordFormPage,
37
+ '@proteinjs/db-ui/recordTablePage': recordTablePage,
38
+ '@proteinjs/db-ui/tablesPage': tablesPage,
39
+ '@proteinjs/db-ui/uuidGeneratorPage': uuidGeneratorPage,
40
+ '@proteinjs/db-ui/MigrationRecordFormCustomization': MigrationRecordFormCustomization,
42
41
  };
43
42
 
44
-
45
43
  /** Load Source Graph and Links */
46
44
 
47
45
  import { SourceRepository } from '@proteinjs/reflection';
48
46
  SourceRepository.merge(sourceGraph, sourceLinks);
49
47
 
50
-
51
- export * from '../index';
48
+ export * from '../index';
package/index.ts CHANGED
@@ -2,3 +2,5 @@ export * from './src/table/RecordTable';
2
2
  export * from './src/table/QueryTableLoader';
3
3
  export * from './src/form/RecordForm';
4
4
  export * from './src/form/RecordFormCustomization';
5
+ export * from './src/pages/RecordTablePage';
6
+ export * from './src/pages/RecordFormPage';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@proteinjs/db-ui",
3
- "version": "1.5.36",
3
+ "version": "1.6.1",
4
4
  "description": "Db ui components",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -25,9 +25,9 @@
25
25
  "@emotion/styled": "11.11.0",
26
26
  "@mui/icons-material": "5.14.11",
27
27
  "@mui/material": "5.14.11",
28
- "@proteinjs/db": "^1.25.2",
28
+ "@proteinjs/db": "^1.27.0",
29
29
  "@proteinjs/reflection": "^1.1.12",
30
- "@proteinjs/ui": "^4.3.12",
30
+ "@proteinjs/ui": "^4.4.0",
31
31
  "@proteinjs/util": "^1.6.1",
32
32
  "moment": "2.29.4",
33
33
  "react": "18.2.0",
@@ -51,5 +51,6 @@
51
51
  "typescript": "5.2.2"
52
52
  },
53
53
  "main": "./dist/generated/index.js",
54
- "types": "./dist/generated/index.d.ts"
54
+ "types": "./dist/generated/index.d.ts",
55
+ "gitHead": "020e0d6b909cdd60925952aa05c23cfdecd8353d"
55
56
  }
@@ -85,14 +85,22 @@ function parseBooleanValue(value: unknown): boolean | null {
85
85
  export function RecordForm<T extends Record>({ table, record }: RecordFormProps<T>) {
86
86
  const isNewRecord = typeof record === 'undefined';
87
87
  const recordFormCustomization = getRecordFormCustomization(table.name);
88
+ const defaultFieldLayout = fieldLayout();
89
+ const defaultFormButtons = buttons();
88
90
 
89
91
  return (
90
92
  <Form
91
93
  name={S(table.name).humanize().s}
92
94
  createFields={createFields()}
93
- fieldLayout={fieldLayout()}
95
+ fieldLayout={
96
+ recordFormCustomization
97
+ ? recordFormCustomization.getFieldLayout(record, defaultFieldLayout)
98
+ : defaultFieldLayout
99
+ }
94
100
  buttons={
95
- recordFormCustomization?.getFormButtons ? recordFormCustomization.getFormButtons(record, buttons()) : buttons()
101
+ recordFormCustomization
102
+ ? recordFormCustomization.getFormButtons(record, defaultFormButtons)
103
+ : defaultFormButtons
96
104
  }
97
105
  onLoad={onLoad}
98
106
  onLoadProgressMessage={`Loading ${S(table.name).humanize().s}`}
@@ -16,7 +16,17 @@ export const getRecordFormCustomization = (tableName: string) => {
16
16
 
17
17
  export abstract class RecordFormCustomization implements Loadable {
18
18
  abstract table: Table<any>;
19
+
19
20
  getFormButtons(record: any, defaultFormButtons: FormButtons<any>): FormButtons<any> {
20
21
  return defaultFormButtons;
21
22
  }
23
+
24
+ /**
25
+ * Narrow or reorder the fields the form renders. `record` is undefined when the form is creating a
26
+ * new record, so a customization that replaces the create action with a domain action (ie. sending
27
+ * an invite) can show only the fields that action actually consumes.
28
+ */
29
+ getFieldLayout(record: any, defaultFieldLayout: string[] | string[][]): string[] | string[][] {
30
+ return defaultFieldLayout;
31
+ }
22
32
  }
@@ -32,22 +32,33 @@ export const newRecordFormLink = (tableName: string) => {
32
32
  };
33
33
 
34
34
  const DynamicRecordForm = ({ urlParams }: PageComponentProps) => {
35
+ const recordId = urlParams['record'];
35
36
  const [record, setRecord] = React.useState();
37
+ /**
38
+ * The form renders differently for a new record than for an existing one (RecordFormCustomization
39
+ * keys its buttons and fields off `record`), so an existing record must not be rendered until it
40
+ * has loaded — otherwise the form briefly shows the create surface for a record that already
41
+ * exists. New-record forms have nothing to wait for and start loaded.
42
+ */
43
+ const [recordLoaded, setRecordLoaded] = React.useState(!recordId);
44
+ const [loadError, setLoadError] = React.useState<string>();
36
45
 
37
46
  React.useEffect(() => {
38
47
  const fetchData = async () => {
39
48
  const { table } = getTable();
40
- if (!table) {
49
+ if (!table || !recordId) {
41
50
  return;
42
51
  }
43
52
 
44
- const recordId = urlParams['record'];
45
- if (!recordId) {
46
- return;
53
+ setRecordLoaded(false);
54
+ setLoadError(undefined);
55
+ try {
56
+ const fetchedRecord = await getDbService().get(table, { id: recordId });
57
+ setRecord(fetchedRecord);
58
+ } catch {
59
+ setLoadError(`Unable to load ${table.name} record: ${recordId}`);
47
60
  }
48
-
49
- const fetchedRecord = await getDbService().get(table, { id: recordId });
50
- setRecord(fetchedRecord);
61
+ setRecordLoaded(true);
51
62
  };
52
63
 
53
64
  fetchData();
@@ -77,6 +88,18 @@ const DynamicRecordForm = ({ urlParams }: PageComponentProps) => {
77
88
  return <div>{error}</div>;
78
89
  }
79
90
 
91
+ if (loadError) {
92
+ return <div>{loadError}</div>;
93
+ }
94
+
95
+ if (!recordLoaded) {
96
+ return null;
97
+ }
98
+
99
+ if (recordId && !record) {
100
+ return <div>{`No ${table.name} record found: ${recordId}`}</div>;
101
+ }
102
+
80
103
  return <RecordForm table={table} record={record} />;
81
104
  }
82
105