adminforth 3.19.0 → 3.20.0-next.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/dist/dataConnectors/baseConnector.d.ts +40 -2
- package/dist/dataConnectors/baseConnector.d.ts.map +1 -1
- package/dist/dataConnectors/baseConnector.js +114 -6
- package/dist/dataConnectors/baseConnector.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +44 -3
- package/dist/index.js.map +1 -1
- package/dist/modules/configValidator.d.ts.map +1 -1
- package/dist/modules/configValidator.js +9 -2
- package/dist/modules/configValidator.js.map +1 -1
- package/dist/modules/operationalResource.d.ts.map +1 -1
- package/dist/modules/operationalResource.js +6 -1
- package/dist/modules/operationalResource.js.map +1 -1
- package/dist/modules/recordId.d.ts +42 -0
- package/dist/modules/recordId.d.ts.map +1 -0
- package/dist/modules/recordId.js +102 -0
- package/dist/modules/recordId.js.map +1 -0
- package/dist/modules/restApi.d.ts.map +1 -1
- package/dist/modules/restApi.js +90 -18
- package/dist/modules/restApi.js.map +1 -1
- package/dist/modules/utils.d.ts.map +1 -1
- package/dist/modules/utils.js +7 -3
- package/dist/modules/utils.js.map +1 -1
- package/dist/spa/src/stores/core.ts +17 -10
- package/dist/spa/src/types/Back.ts +40 -3
- package/dist/spa/src/utils/listUtils.ts +5 -1
- package/dist/spa/src/utils/recordId.ts +99 -0
- package/dist/spa/src/views/ListView.vue +18 -7
- package/dist/types/Back.d.ts +38 -3
- package/dist/types/Back.d.ts.map +1 -1
- package/dist/types/Back.js.map +1 -1
- package/package.json +1 -1
|
@@ -17,7 +17,39 @@ export default class AdminForthBaseConnector implements IAdminForthDataSourceCon
|
|
|
17
17
|
setupClient(url: string, options?: {
|
|
18
18
|
recovery?: boolean;
|
|
19
19
|
}): Promise<void>;
|
|
20
|
+
/**
|
|
21
|
+
* Set to true in connector which is able to update/delete records of resources with composite primary key
|
|
22
|
+
* (i.e. which uses pkValues argument of updateRecordOriginalValues/deleteRecord instead of getPrimaryKey()).
|
|
23
|
+
*/
|
|
24
|
+
supportsCompositePrimaryKey: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* Returns name of first primary key column.
|
|
27
|
+
* For resources with composite primary key use {@link getPrimaryKeys} instead.
|
|
28
|
+
*/
|
|
20
29
|
getPrimaryKey(resource: AdminForthResource): string;
|
|
30
|
+
/**
|
|
31
|
+
* Returns names of all primary key columns (more then one for resources with composite primary key)
|
|
32
|
+
*/
|
|
33
|
+
getPrimaryKeys(resource: AdminForthResource): string[];
|
|
34
|
+
/**
|
|
35
|
+
* Splits recordId into values of primary key columns, casted to types which data source understands.
|
|
36
|
+
* For resource with single primary key returns object with one key.
|
|
37
|
+
*/
|
|
38
|
+
getPrimaryKeyValues(resource: AdminForthResource, recordId: any): Record<string, any>;
|
|
39
|
+
/**
|
|
40
|
+
* Parts of composite record id always come as strings (they are parsed out of url or API payload),
|
|
41
|
+
* so cast them to JS types which validateAndSetFieldValue expects for the column type.
|
|
42
|
+
*/
|
|
43
|
+
castRecordIdPart(column: AdminForthResourceColumn, value: any): any;
|
|
44
|
+
/**
|
|
45
|
+
* Filter which excludes record with given composite primary key:
|
|
46
|
+
* record differs from given one if at least one of primary key columns differs.
|
|
47
|
+
*/
|
|
48
|
+
compositeOtherRecordFilter(resource: AdminForthResource, record: any): AdminForthFilterNode;
|
|
49
|
+
/**
|
|
50
|
+
* Builds filters which select exactly one record by recordId
|
|
51
|
+
*/
|
|
52
|
+
getPrimaryKeyFilters(resource: AdminForthResource, recordId: any): IAdminForthSingleFilter[];
|
|
21
53
|
getRecordByPrimaryKeyWithOriginalTypes(resource: AdminForthResource, id: string): Promise<any>;
|
|
22
54
|
cloneFilterNode(filter: AdminForthFilterNode): AdminForthFilterNode;
|
|
23
55
|
validateAndNormalizeInputFilters(filter: IAdminForthSingleFilter | IAdminForthAndOrFilter | Array<IAdminForthSingleFilter | IAdminForthAndOrFilter> | undefined): IAdminForthAndOrFilter;
|
|
@@ -88,10 +120,11 @@ export default class AdminForthBaseConnector implements IAdminForthDataSourceCon
|
|
|
88
120
|
ok: boolean;
|
|
89
121
|
createdRecord?: any;
|
|
90
122
|
}>;
|
|
91
|
-
updateRecordOriginalValues({ resource, recordId, newValues }: {
|
|
123
|
+
updateRecordOriginalValues({ resource, recordId, newValues, pkValues }: {
|
|
92
124
|
resource: AdminForthResource;
|
|
93
125
|
recordId: string;
|
|
94
126
|
newValues: any;
|
|
127
|
+
pkValues?: Record<string, any>;
|
|
95
128
|
}): Promise<void>;
|
|
96
129
|
updateRecord({ resource, recordId, newValues }: {
|
|
97
130
|
resource: AdminForthResource;
|
|
@@ -101,10 +134,15 @@ export default class AdminForthBaseConnector implements IAdminForthDataSourceCon
|
|
|
101
134
|
error?: string;
|
|
102
135
|
ok: boolean;
|
|
103
136
|
}>;
|
|
104
|
-
deleteRecord({ resource, recordId }: {
|
|
137
|
+
deleteRecord({ resource, recordId, pkValues }: {
|
|
105
138
|
resource: AdminForthResource;
|
|
106
139
|
recordId: string;
|
|
140
|
+
pkValues?: Record<string, any>;
|
|
107
141
|
}): Promise<boolean>;
|
|
142
|
+
/**
|
|
143
|
+
* Throws readable error if resource uses composite primary key but connector can't handle it
|
|
144
|
+
*/
|
|
145
|
+
assertCompositePrimaryKeySupported(resource: AdminForthResource): void;
|
|
108
146
|
getData({ resource, limit, offset, sort, filters, getTotals, columns }: {
|
|
109
147
|
resource: AdminForthResource;
|
|
110
148
|
limit: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baseConnector.d.ts","sourceRoot":"","sources":["../../dataConnectors/baseConnector.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAAE,kCAAkC,EACtD,wBAAwB,EACxB,eAAe,EAAE,uBAAuB,EAAE,sBAAsB,EAChE,gBAAgB,EAChB,gBAAgB,EAAE,YAAY,EAC/B,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"baseConnector.d.ts","sourceRoot":"","sources":["../../dataConnectors/baseConnector.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { suggestIfTypo } from "../modules/utils.js";
|
|
2
|
+
import { decodeRecordId, encodeRecordId, isCompositePrimaryKey, primaryKeyColumnNames, primaryKeyColumns } from "../modules/recordId.js";
|
|
2
3
|
import { interpretResource } from "../modules/restApi.js";
|
|
3
4
|
import { ActionCheckSource, AdminForthDataTypes, AdminForthFilterOperators, AllowedActionsEnum } from "../types/Common.js";
|
|
4
5
|
import { randomUUID } from "crypto";
|
|
@@ -25,6 +26,13 @@ async function publishShowPageUpdate(resource, recordId, updates) {
|
|
|
25
26
|
});
|
|
26
27
|
}
|
|
27
28
|
export default class AdminForthBaseConnector {
|
|
29
|
+
constructor() {
|
|
30
|
+
/**
|
|
31
|
+
* Set to true in connector which is able to update/delete records of resources with composite primary key
|
|
32
|
+
* (i.e. which uses pkValues argument of updateRecordOriginalValues/deleteRecord instead of getPrimaryKey()).
|
|
33
|
+
*/
|
|
34
|
+
this.supportsCompositePrimaryKey = false;
|
|
35
|
+
}
|
|
28
36
|
/**
|
|
29
37
|
* @deprecated Since 1.2.9. Will be removed in 4.0.0. Use .client instead.
|
|
30
38
|
*/
|
|
@@ -35,6 +43,10 @@ export default class AdminForthBaseConnector {
|
|
|
35
43
|
setupClient(url, options) {
|
|
36
44
|
throw new Error('Method not implemented.');
|
|
37
45
|
}
|
|
46
|
+
/**
|
|
47
|
+
* Returns name of first primary key column.
|
|
48
|
+
* For resources with composite primary key use {@link getPrimaryKeys} instead.
|
|
49
|
+
*/
|
|
38
50
|
getPrimaryKey(resource) {
|
|
39
51
|
for (const col of resource.dataSourceColumns) {
|
|
40
52
|
if (col.primaryKey) {
|
|
@@ -42,13 +54,76 @@ export default class AdminForthBaseConnector {
|
|
|
42
54
|
}
|
|
43
55
|
}
|
|
44
56
|
}
|
|
57
|
+
/**
|
|
58
|
+
* Returns names of all primary key columns (more then one for resources with composite primary key)
|
|
59
|
+
*/
|
|
60
|
+
getPrimaryKeys(resource) {
|
|
61
|
+
return primaryKeyColumnNames(resource);
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Splits recordId into values of primary key columns, casted to types which data source understands.
|
|
65
|
+
* For resource with single primary key returns object with one key.
|
|
66
|
+
*/
|
|
67
|
+
getPrimaryKeyValues(resource, recordId) {
|
|
68
|
+
const rawValues = decodeRecordId(resource, recordId);
|
|
69
|
+
return primaryKeyColumns(resource).reduce((acc, col) => {
|
|
70
|
+
acc[col.name] = this.validateAndSetFieldValue(col, this.castRecordIdPart(col, rawValues[col.name]));
|
|
71
|
+
return acc;
|
|
72
|
+
}, {});
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Parts of composite record id always come as strings (they are parsed out of url or API payload),
|
|
76
|
+
* so cast them to JS types which validateAndSetFieldValue expects for the column type.
|
|
77
|
+
*/
|
|
78
|
+
castRecordIdPart(column, value) {
|
|
79
|
+
if (typeof value !== 'string') {
|
|
80
|
+
return value;
|
|
81
|
+
}
|
|
82
|
+
if (column.type === AdminForthDataTypes.INTEGER ||
|
|
83
|
+
column.type === AdminForthDataTypes.FLOAT ||
|
|
84
|
+
column.type === AdminForthDataTypes.DECIMAL) {
|
|
85
|
+
const num = Number(value);
|
|
86
|
+
if (!Number.isFinite(num)) {
|
|
87
|
+
throw new Error(`Part '${value}' of record id is not a valid ${column.type} value for primary key column '${column.name}'`);
|
|
88
|
+
}
|
|
89
|
+
return num;
|
|
90
|
+
}
|
|
91
|
+
return value;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Filter which excludes record with given composite primary key:
|
|
95
|
+
* record differs from given one if at least one of primary key columns differs.
|
|
96
|
+
*/
|
|
97
|
+
compositeOtherRecordFilter(resource, record) {
|
|
98
|
+
return {
|
|
99
|
+
operator: AdminForthFilterOperators.OR,
|
|
100
|
+
subFilters: this.getPrimaryKeys(resource).map((primaryKeyField) => ({
|
|
101
|
+
field: primaryKeyField,
|
|
102
|
+
operator: AdminForthFilterOperators.NE,
|
|
103
|
+
value: record[primaryKeyField],
|
|
104
|
+
})),
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Builds filters which select exactly one record by recordId
|
|
109
|
+
*/
|
|
110
|
+
getPrimaryKeyFilters(resource, recordId) {
|
|
111
|
+
const rawValues = decodeRecordId(resource, recordId);
|
|
112
|
+
return primaryKeyColumnNames(resource).map((name) => ({
|
|
113
|
+
field: name,
|
|
114
|
+
operator: AdminForthFilterOperators.EQ,
|
|
115
|
+
value: rawValues[name],
|
|
116
|
+
}));
|
|
117
|
+
}
|
|
45
118
|
async getRecordByPrimaryKeyWithOriginalTypes(resource, id) {
|
|
46
119
|
const data = await this.getDataWithOriginalTypes({
|
|
47
120
|
resource,
|
|
48
121
|
limit: 1,
|
|
49
122
|
offset: 0,
|
|
50
123
|
sort: [],
|
|
51
|
-
filters: { operator: AdminForthFilterOperators.AND, subFilters:
|
|
124
|
+
filters: { operator: AdminForthFilterOperators.AND, subFilters: isCompositePrimaryKey(resource)
|
|
125
|
+
? this.getPrimaryKeyFilters(resource, id)
|
|
126
|
+
: [{ field: this.getPrimaryKey(resource), operator: AdminForthFilterOperators.EQ, value: id }] },
|
|
52
127
|
});
|
|
53
128
|
return data.length > 0 ? data[0] : null;
|
|
54
129
|
}
|
|
@@ -423,7 +498,10 @@ export default class AdminForthBaseConnector {
|
|
|
423
498
|
operator: AdminForthFilterOperators.AND,
|
|
424
499
|
subFilters: [
|
|
425
500
|
{ field: column.name, operator: AdminForthFilterOperators.EQ, value },
|
|
426
|
-
...(record ?
|
|
501
|
+
...(record ? (isCompositePrimaryKey(resource)
|
|
502
|
+
// composite: record differs from given one if at least one of primary key columns differs
|
|
503
|
+
? [this.compositeOtherRecordFilter(resource, record)]
|
|
504
|
+
: [{ field: primaryKeyField, operator: AdminForthFilterOperators.NE, value: record[primaryKeyField] }]) : [])
|
|
427
505
|
]
|
|
428
506
|
},
|
|
429
507
|
limit: 1,
|
|
@@ -466,7 +544,16 @@ export default class AdminForthBaseConnector {
|
|
|
466
544
|
}
|
|
467
545
|
afLogger.trace(`🪲🆕 creating record, ${JSON.stringify(recordWithOriginalValues)}`);
|
|
468
546
|
let pkValue = await this.createRecordOriginalValues({ resource, record: recordWithOriginalValues });
|
|
469
|
-
if (
|
|
547
|
+
if (isCompositePrimaryKey(resource)) {
|
|
548
|
+
// composite key is never auto generated, so all its columns must be filled by caller
|
|
549
|
+
const missingPks = this.getPrimaryKeys(resource).filter((pk) => recordWithOriginalValues[pk] === undefined);
|
|
550
|
+
if (missingPks.length) {
|
|
551
|
+
throw new Error(`Resource '${resource.resourceId}' has composite primary key (${this.getPrimaryKeys(resource).join(', ')}), ` +
|
|
552
|
+
`so all primary key columns must have values on record creation, got no value for: ${missingPks.join(', ')}`);
|
|
553
|
+
}
|
|
554
|
+
pkValue = encodeRecordId(resource, recordWithOriginalValues);
|
|
555
|
+
}
|
|
556
|
+
else if (recordWithOriginalValues[this.getPrimaryKey(resource)] !== undefined) {
|
|
470
557
|
// some data sources always return some value for pk, even if it is was not auto generated
|
|
471
558
|
// this check prevents wrong value from being used later in get request
|
|
472
559
|
pkValue = recordWithOriginalValues[this.getPrimaryKey(resource)];
|
|
@@ -480,7 +567,7 @@ export default class AdminForthBaseConnector {
|
|
|
480
567
|
createdRecord,
|
|
481
568
|
};
|
|
482
569
|
}
|
|
483
|
-
updateRecordOriginalValues({ resource, recordId, newValues }) {
|
|
570
|
+
updateRecordOriginalValues({ resource, recordId, newValues, pkValues }) {
|
|
484
571
|
throw new Error('Method not implemented.');
|
|
485
572
|
}
|
|
486
573
|
async updateRecord({ resource, recordId, newValues }) {
|
|
@@ -513,13 +600,34 @@ export default class AdminForthBaseConnector {
|
|
|
513
600
|
return { error, ok: false };
|
|
514
601
|
}
|
|
515
602
|
afLogger.trace(`🪲✏️ updating record id:${recordId}, values: ${JSON.stringify(recordWithOriginalValues)}`);
|
|
516
|
-
|
|
603
|
+
if (isCompositePrimaryKey(resource)) {
|
|
604
|
+
this.assertCompositePrimaryKeySupported(resource);
|
|
605
|
+
await this.updateRecordOriginalValues({
|
|
606
|
+
resource,
|
|
607
|
+
recordId,
|
|
608
|
+
newValues: recordWithOriginalValues,
|
|
609
|
+
pkValues: this.getPrimaryKeyValues(resource, recordId),
|
|
610
|
+
});
|
|
611
|
+
}
|
|
612
|
+
else {
|
|
613
|
+
await this.updateRecordOriginalValues({ resource, recordId, newValues: recordWithOriginalValues });
|
|
614
|
+
}
|
|
517
615
|
await publishShowPageUpdate(resource, recordId, newValues);
|
|
518
616
|
return { ok: true };
|
|
519
617
|
}
|
|
520
|
-
deleteRecord({ resource, recordId }) {
|
|
618
|
+
deleteRecord({ resource, recordId, pkValues }) {
|
|
521
619
|
throw new Error('Method not implemented.');
|
|
522
620
|
}
|
|
621
|
+
/**
|
|
622
|
+
* Throws readable error if resource uses composite primary key but connector can't handle it
|
|
623
|
+
*/
|
|
624
|
+
assertCompositePrimaryKeySupported(resource) {
|
|
625
|
+
if (isCompositePrimaryKey(resource) && !this.supportsCompositePrimaryKey) {
|
|
626
|
+
throw new Error(`Resource '${resource.resourceId}' has composite primary key (${this.getPrimaryKeys(resource).join(', ')}), ` +
|
|
627
|
+
`but data source connector '${this.constructor.name}' does not support composite primary keys. ` +
|
|
628
|
+
`Please update connector package to version which sets supportsCompositePrimaryKey = true`);
|
|
629
|
+
}
|
|
630
|
+
}
|
|
523
631
|
async getData({ resource, limit, offset, sort, filters, getTotals, columns }) {
|
|
524
632
|
let normalizedFilters = filters;
|
|
525
633
|
if (filters) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baseConnector.js","sourceRoot":"","sources":["../../dataConnectors/baseConnector.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"baseConnector.js","sourceRoot":"","sources":["../../dataConnectors/baseConnector.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -20,6 +20,7 @@ export { interpretResource, rejectApiRawFilters };
|
|
|
20
20
|
export { AdminForthPlugin };
|
|
21
21
|
export { suggestIfTypo, RateLimiter, RAMLock, getClientIp, convertPeriodToSeconds };
|
|
22
22
|
export { default as AdminForthBaseConnector } from './dataConnectors/baseConnector.js';
|
|
23
|
+
export { COMPOSITE_RECORD_ID_SEPARATOR, primaryKeyColumns, primaryKeyColumnNames, isCompositePrimaryKey, encodeRecordId, decodeRecordId, } from './modules/recordId.js';
|
|
23
24
|
declare class AdminForth implements IAdminForth {
|
|
24
25
|
static Types: typeof AdminForthDataTypes;
|
|
25
26
|
static Utils: {
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
var _a;
|
|
2
2
|
import AdminForthAuth from './auth.js';
|
|
3
|
+
import { compositePkValues, encodeRecordId, isCompositePrimaryKey, primaryKeyColumnNames } from './modules/recordId.js';
|
|
3
4
|
import CodeInjector from './modules/codeInjector.js';
|
|
4
5
|
import ExpressServer from './servers/express.js';
|
|
5
6
|
import OpenApiRegistry from './servers/openapi.js';
|
|
@@ -27,6 +28,7 @@ export { interpretResource, rejectApiRawFilters };
|
|
|
27
28
|
export { AdminForthPlugin };
|
|
28
29
|
export { suggestIfTypo, RateLimiter, RAMLock, getClientIp, convertPeriodToSeconds };
|
|
29
30
|
export { default as AdminForthBaseConnector } from './dataConnectors/baseConnector.js';
|
|
31
|
+
export { COMPOSITE_RECORD_ID_SEPARATOR, primaryKeyColumns, primaryKeyColumnNames, isCompositePrimaryKey, encodeRecordId, decodeRecordId, } from './modules/recordId.js';
|
|
30
32
|
class AdminForth {
|
|
31
33
|
registerMenuContribution(contribution) {
|
|
32
34
|
this.menuContributions.push(contribution);
|
|
@@ -350,6 +352,7 @@ class AdminForth {
|
|
|
350
352
|
}
|
|
351
353
|
}
|
|
352
354
|
async discoverDatabases() {
|
|
355
|
+
var _b;
|
|
353
356
|
this.statuses.dbDiscover = 'running';
|
|
354
357
|
const doesUserHavePnpmLock = await this.codeInjector.doesUserHasPnpmLockFile('./');
|
|
355
358
|
const dataSourcesDatabasesTypes = [];
|
|
@@ -357,7 +360,9 @@ class AdminForth {
|
|
|
357
360
|
const dbType = ds.url.split(':')[0];
|
|
358
361
|
dataSourcesDatabasesTypes.push(dbType);
|
|
359
362
|
});
|
|
360
|
-
|
|
363
|
+
// db types for which user supplied own connector class in config don't need npm package to be installed
|
|
364
|
+
const uniqueDbTypes = [...new Set(dataSourcesDatabasesTypes)]
|
|
365
|
+
.filter((dbType) => { var _b; return !((_b = this.config.databaseConnectors) === null || _b === void 0 ? void 0 : _b[dbType]); });
|
|
361
366
|
let SQLiteConnector, PostgresConnector, MongoConnector, ClickhouseConnector, MysqlConnector, QdrantConnector, DuckDBConnector;
|
|
362
367
|
if (uniqueDbTypes.includes('sqlite')) {
|
|
363
368
|
SQLiteConnector = await this.tryToImportConnector('sqlite', doesUserHavePnpmLock);
|
|
@@ -444,8 +449,42 @@ class AdminForth {
|
|
|
444
449
|
if (!res.columns.some((col) => col.primaryKey)) {
|
|
445
450
|
throw new Error(`Table '${res.table}' has no column defined or auto-discovered. Please set 'primaryKey: true' in a columns which has unique value for each record and index`);
|
|
446
451
|
}
|
|
452
|
+
if (isCompositePrimaryKey(res)) {
|
|
453
|
+
const virtualPk = res.columns.find((col) => col.primaryKey && col.virtual);
|
|
454
|
+
if (virtualPk) {
|
|
455
|
+
throw new Error(`Resource '${res.resourceId}' has virtual column '${virtualPk.name}' marked as primaryKey, which is not allowed`);
|
|
456
|
+
}
|
|
457
|
+
if (!this.connectors[res.dataSource].supportsCompositePrimaryKey) {
|
|
458
|
+
throw new Error(`Resource '${res.resourceId}' has composite primary key (${primaryKeyColumnNames(res).join(', ')}), ` +
|
|
459
|
+
`but data source '${res.dataSource}' connector does not support composite primary keys. ` +
|
|
460
|
+
`Please update connector package to version which supports them`);
|
|
461
|
+
}
|
|
462
|
+
}
|
|
447
463
|
}));
|
|
448
464
|
this.statuses.dbDiscover = 'done';
|
|
465
|
+
for (const res of this.config.resources) {
|
|
466
|
+
if (!isCompositePrimaryKey(res)) {
|
|
467
|
+
continue;
|
|
468
|
+
}
|
|
469
|
+
if (((_b = this.config.auth) === null || _b === void 0 ? void 0 : _b.usersResourceId) === res.resourceId) {
|
|
470
|
+
throw new Error(`Resource '${res.resourceId}' is used as auth.usersResourceId, so it must have single primaryKey column, ` +
|
|
471
|
+
`but it has composite primary key (${primaryKeyColumnNames(res).join(', ')})`);
|
|
472
|
+
}
|
|
473
|
+
const referencingColumn = this.config.resources.reduce((found, otherRes) => found || (otherRes.columns.find((col) => {
|
|
474
|
+
var _b, _c, _d;
|
|
475
|
+
return (((_b = col.foreignResource) === null || _b === void 0 ? void 0 : _b.resourceId) === res.resourceId ||
|
|
476
|
+
((_d = (_c = col.foreignResource) === null || _c === void 0 ? void 0 : _c.polymorphicResources) === null || _d === void 0 ? void 0 : _d.some((pr) => pr.resourceId === res.resourceId)));
|
|
477
|
+
}) && { resourceId: otherRes.resourceId, column: otherRes.columns.find((col) => {
|
|
478
|
+
var _b, _c, _d;
|
|
479
|
+
return (((_b = col.foreignResource) === null || _b === void 0 ? void 0 : _b.resourceId) === res.resourceId ||
|
|
480
|
+
((_d = (_c = col.foreignResource) === null || _c === void 0 ? void 0 : _c.polymorphicResources) === null || _d === void 0 ? void 0 : _d.some((pr) => pr.resourceId === res.resourceId)));
|
|
481
|
+
}).name }), null);
|
|
482
|
+
if (referencingColumn) {
|
|
483
|
+
throw new Error(`Column '${referencingColumn.column}' of resource '${referencingColumn.resourceId}' has foreignResource pointing to ` +
|
|
484
|
+
`resource '${res.resourceId}' which has composite primary key (${primaryKeyColumnNames(res).join(', ')}). ` +
|
|
485
|
+
`foreignResource to resources with composite primary key is not supported yet`);
|
|
486
|
+
}
|
|
487
|
+
}
|
|
449
488
|
for (const res of this.config.resources) {
|
|
450
489
|
this.configValidator.postProcessAfterDiscover(res);
|
|
451
490
|
}
|
|
@@ -598,7 +637,9 @@ class AdminForth {
|
|
|
598
637
|
if (error) {
|
|
599
638
|
return { error };
|
|
600
639
|
}
|
|
601
|
-
const primaryKey =
|
|
640
|
+
const primaryKey = isCompositePrimaryKey(resource)
|
|
641
|
+
? encodeRecordId(resource, createdRecord)
|
|
642
|
+
: createdRecord[resource.columns.find((col) => col.primaryKey).name];
|
|
602
643
|
// execute hook if needed
|
|
603
644
|
for (const hook of listify((_e = (_d = resource.hooks) === null || _d === void 0 ? void 0 : _d.create) === null || _e === void 0 ? void 0 : _e.afterSave)) {
|
|
604
645
|
afLogger.trace(`🪲 Hook afterSave ${hook}`);
|
|
@@ -724,7 +765,7 @@ class AdminForth {
|
|
|
724
765
|
}
|
|
725
766
|
}
|
|
726
767
|
const connector = this.connectors[resource.dataSource];
|
|
727
|
-
await connector.deleteRecord({ resource, recordId });
|
|
768
|
+
await connector.deleteRecord({ resource, recordId, pkValues: compositePkValues(connector, resource, recordId) });
|
|
728
769
|
// execute hook if needed
|
|
729
770
|
for (const hook of listify((_e = (_d = resource.hooks) === null || _d === void 0 ? void 0 : _d.delete) === null || _e === void 0 ? void 0 : _e.afterSave)) {
|
|
730
771
|
const resp = await hook({
|