@entropic-bond/crud-panel 3.5.2 → 3.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/crud-controller.d.ts +14 -4
- package/lib/crud-controller.js +70 -62
- package/lib/crud-controller.js.map +1 -1
- package/lib/crud-controller.spec.js +52 -17
- package/lib/crud-controller.spec.js.map +1 -1
- package/lib/crud-panel.d.ts +1 -1
- package/lib/crud-panel.js +31 -45
- package/lib/crud-panel.js.map +1 -1
- package/lib/crud-panel.spec.js +54 -63
- package/lib/crud-panel.spec.js.map +1 -1
- package/package.json +12 -12
package/lib/crud-controller.d.ts
CHANGED
|
@@ -4,9 +4,9 @@ type CrudControllerAction = 'saved' | 'deleted' | 'populated';
|
|
|
4
4
|
export interface CrudControllerEvent<T extends EntropicComponent> {
|
|
5
5
|
documentProps?: PropChangeEvent<T>;
|
|
6
6
|
documentChanged?: T;
|
|
7
|
-
documentCollection?: T[]
|
|
7
|
+
documentCollection?: T[];
|
|
8
8
|
action?: CrudControllerAction;
|
|
9
|
-
error?: Error;
|
|
9
|
+
/** deprecated */ error?: Error;
|
|
10
10
|
}
|
|
11
11
|
export declare abstract class CrudController<T extends EntropicComponent> {
|
|
12
12
|
constructor(document?: T);
|
|
@@ -15,21 +15,31 @@ export declare abstract class CrudController<T extends EntropicComponent> {
|
|
|
15
15
|
protected abstract getModel(): Model<T>;
|
|
16
16
|
protected storeDoc(): Promise<void>;
|
|
17
17
|
protected deleteDoc(): Promise<void>;
|
|
18
|
-
protected findDocs(limit: number): Promise<T[]
|
|
18
|
+
protected findDocs(limit: number): Promise<T[]>;
|
|
19
19
|
onChange(observer: Callback<CrudControllerEvent<T>>): Unsubscriber;
|
|
20
|
+
/**
|
|
21
|
+
* Notifies the observer of any error that occurs during the execution of the controller.
|
|
22
|
+
* If there are no subscribers to this event, the error will be thrown.
|
|
23
|
+
*
|
|
24
|
+
* @param observer
|
|
25
|
+
* @returns the unsubscriber function
|
|
26
|
+
*/
|
|
27
|
+
onError(observer: Callback<Error>): Unsubscriber;
|
|
20
28
|
protected notifyChange<U extends CrudControllerEvent<T>>(event: U): void;
|
|
21
29
|
newDocument(): CrudController<T>;
|
|
22
30
|
storeDocument(): Promise<void>;
|
|
23
31
|
deleteDocument(): Promise<void>;
|
|
24
|
-
documentCollection(limit?: number): Promise<T[]
|
|
32
|
+
documentCollection(limit?: number): Promise<T[]>;
|
|
25
33
|
onProgress(observer: Callback<ProgressEvent>): Unsubscriber;
|
|
26
34
|
protected get model(): Model<T>;
|
|
27
35
|
setDocument(value: T): CrudController<T>;
|
|
28
36
|
set document(value: T);
|
|
29
37
|
get document(): T;
|
|
30
38
|
protected errorToError(error: any): Error;
|
|
39
|
+
protected get throwOnError(): boolean;
|
|
31
40
|
protected progressController: ProgressController;
|
|
32
41
|
protected onChangeHdl: Observable<CrudControllerEvent<T>>;
|
|
42
|
+
protected onErrorHdl: Observable<Error>;
|
|
33
43
|
private _model;
|
|
34
44
|
private _document;
|
|
35
45
|
private unsubscribeDocument;
|
package/lib/crud-controller.js
CHANGED
|
@@ -1,13 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
3
|
exports.CrudController = void 0;
|
|
13
4
|
const entropic_bond_1 = require("entropic-bond");
|
|
@@ -16,6 +7,7 @@ class CrudController {
|
|
|
16
7
|
constructor(document) {
|
|
17
8
|
this.progressController = new progress_controller_1.ProgressController();
|
|
18
9
|
this.onChangeHdl = new entropic_bond_1.Observable();
|
|
10
|
+
this.onErrorHdl = new entropic_bond_1.Observable();
|
|
19
11
|
this.setDocument(document || this.createDocument());
|
|
20
12
|
}
|
|
21
13
|
storeDoc() {
|
|
@@ -30,65 +22,78 @@ class CrudController {
|
|
|
30
22
|
onChange(observer) {
|
|
31
23
|
return this.onChangeHdl.subscribe(observer);
|
|
32
24
|
}
|
|
25
|
+
/**
|
|
26
|
+
* Notifies the observer of any error that occurs during the execution of the controller.
|
|
27
|
+
* If there are no subscribers to this event, the error will be thrown.
|
|
28
|
+
*
|
|
29
|
+
* @param observer
|
|
30
|
+
* @returns the unsubscriber function
|
|
31
|
+
*/
|
|
32
|
+
onError(observer) {
|
|
33
|
+
return this.onErrorHdl.subscribe(observer);
|
|
34
|
+
}
|
|
33
35
|
notifyChange(event) {
|
|
34
36
|
this.onChangeHdl.notify(event);
|
|
35
37
|
}
|
|
36
38
|
newDocument() {
|
|
37
39
|
return this.setDocument(this.createDocument());
|
|
38
40
|
}
|
|
39
|
-
storeDocument() {
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
this.
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
41
|
+
async storeDocument() {
|
|
42
|
+
const progressStage = 'Saving main document';
|
|
43
|
+
try {
|
|
44
|
+
this.progressController.notifyBusy(true, progressStage);
|
|
45
|
+
await this.storeDoc();
|
|
46
|
+
this.onChangeHdl.notify({
|
|
47
|
+
documentCollection: await this.documentCollection(),
|
|
48
|
+
action: 'saved'
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
catch (error) {
|
|
52
|
+
this.onChangeHdl.notify({ error: this.errorToError(error) });
|
|
53
|
+
this.onErrorHdl.notify(this.errorToError(error));
|
|
54
|
+
if (this.throwOnError)
|
|
55
|
+
throw error;
|
|
56
|
+
}
|
|
57
|
+
finally {
|
|
58
|
+
this.progressController.notifyBusy(false, progressStage);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
async deleteDocument() {
|
|
62
|
+
const progressStage = 'Delete main document';
|
|
63
|
+
try {
|
|
64
|
+
this.progressController.notifyBusy(true, progressStage);
|
|
65
|
+
await this.deleteDoc();
|
|
66
|
+
this.onChangeHdl.notify({
|
|
67
|
+
documentCollection: await this.documentCollection(),
|
|
68
|
+
action: 'deleted'
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
catch (error) {
|
|
72
|
+
this.onChangeHdl.notify({ error: this.errorToError(error) });
|
|
73
|
+
this.onErrorHdl.notify(this.errorToError(error));
|
|
74
|
+
if (this.throwOnError)
|
|
75
|
+
throw error;
|
|
76
|
+
}
|
|
77
|
+
finally {
|
|
78
|
+
this.progressController.notifyBusy(false, progressStage);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
async documentCollection(limit) {
|
|
82
|
+
const progressStage = 'Retrieving document collection';
|
|
83
|
+
try {
|
|
84
|
+
this.progressController.notifyBusy(true, progressStage);
|
|
85
|
+
var found = await this.findDocs(limit);
|
|
86
|
+
}
|
|
87
|
+
catch (error) {
|
|
88
|
+
this.onChangeHdl.notify({ error: this.errorToError(error) });
|
|
89
|
+
this.onErrorHdl.notify(this.errorToError(error));
|
|
90
|
+
if (this.throwOnError)
|
|
91
|
+
throw error;
|
|
92
|
+
}
|
|
93
|
+
finally {
|
|
94
|
+
this.progressController.notifyBusy(false, progressStage);
|
|
95
|
+
}
|
|
96
|
+
return found;
|
|
92
97
|
}
|
|
93
98
|
onProgress(observer) {
|
|
94
99
|
return this.progressController.onProgress(observer);
|
|
@@ -125,6 +130,9 @@ class CrudController {
|
|
|
125
130
|
return new Error(error.error);
|
|
126
131
|
return new Error(JSON.stringify(error));
|
|
127
132
|
}
|
|
133
|
+
get throwOnError() {
|
|
134
|
+
return this.onErrorHdl.subscribersCount === 0;
|
|
135
|
+
}
|
|
128
136
|
}
|
|
129
137
|
exports.CrudController = CrudController;
|
|
130
138
|
//# sourceMappingURL=crud-controller.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crud-controller.js","sourceRoot":"","sources":["../src/crud-controller.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"crud-controller.js","sourceRoot":"","sources":["../src/crud-controller.ts"],"names":[],"mappings":";;;AAAA,iDAA6G;AAC7G,+DAAyE;AAYzE,MAAsB,cAAc;IACnC,YAAa,QAAY;QAqJf,uBAAkB,GAAuB,IAAI,wCAAkB,EAAE,CAAA;QACjE,gBAAW,GAAuC,IAAI,0BAAU,EAA0B,CAAA;QAC1F,eAAU,GAAsB,IAAI,0BAAU,EAAS,CAAA;QAtJhE,IAAI,CAAC,WAAW,CAAE,QAAQ,IAAI,IAAI,CAAC,cAAc,EAAE,CAAE,CAAA;IACtD,CAAC;IAMS,QAAQ;QACjB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAE,IAAI,CAAC,QAAQ,CAAE,CAAA;IACxC,CAAC;IAES,SAAS;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAE,CAAA;IAC7C,CAAC;IAES,QAAQ,CAAE,KAAa;QAChC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,KAAK,CAAE,KAAK,CAAE,CAAC,GAAG,EAAE,CAAA;IAC9C,CAAC;IAED,QAAQ,CAAE,QAA0C;QACnD,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,CAAE,QAAQ,CAAE,CAAA;IAC9C,CAAC;IAED;;;;;;OAMG;IACH,OAAO,CAAE,QAAyB;QACjC,OAAO,IAAI,CAAC,UAAU,CAAC,SAAS,CAAE,QAAQ,CAAE,CAAA;IAC7C,CAAC;IAES,YAAY,CAAoC,KAAQ;QACjE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAE,KAAK,CAAE,CAAA;IACjC,CAAC;IAED,WAAW;QACV,OAAO,IAAI,CAAC,WAAW,CAAE,IAAI,CAAC,cAAc,EAAE,CAAE,CAAA;IACjD,CAAC;IAED,KAAK,CAAC,aAAa;QAClB,MAAM,aAAa,GAAG,sBAAsB,CAAA;QAE5C,IAAI;YACH,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAE,IAAI,EAAE,aAAa,CAAE,CAAA;YACzD,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAA;YAErB,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;gBACvB,kBAAkB,EAAE,MAAM,IAAI,CAAC,kBAAkB,EAAE;gBACnD,MAAM,EAAE,OAAO;aACf,CAAC,CAAA;SACF;QACD,OAAO,KAAK,EAAG;YACd,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,CAAE,KAAK,CAAE,EAAE,CAAC,CAAA;YAC9D,IAAI,CAAC,UAAU,CAAC,MAAM,CAAE,IAAI,CAAC,YAAY,CAAE,KAAK,CAAE,CAAC,CAAA;YACnD,IAAK,IAAI,CAAC,YAAY;gBAAG,MAAM,KAAK,CAAA;SACpC;gBACO;YACP,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAE,KAAK,EAAE,aAAa,CAAE,CAAA;SAC1D;IACF,CAAC;IAED,KAAK,CAAC,cAAc;QACnB,MAAM,aAAa,GAAG,sBAAsB,CAAA;QAC5C,IAAI;YACH,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAE,IAAI,EAAE,aAAa,CAAE,CAAA;YACzD,MAAM,IAAI,CAAC,SAAS,EAAE,CAAA;YAEtB,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;gBACvB,kBAAkB,EAAE,MAAM,IAAI,CAAC,kBAAkB,EAAE;gBACnD,MAAM,EAAE,SAAS;aACjB,CAAC,CAAA;SACF;QACD,OAAO,KAAK,EAAG;YACd,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,CAAE,KAAK,CAAE,EAAE,CAAC,CAAA;YAC9D,IAAI,CAAC,UAAU,CAAC,MAAM,CAAE,IAAI,CAAC,YAAY,CAAE,KAAK,CAAE,CAAC,CAAA;YACnD,IAAK,IAAI,CAAC,YAAY;gBAAG,MAAM,KAAK,CAAA;SACpC;gBACO;YACP,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAE,KAAK,EAAE,aAAa,CAAE,CAAA;SAC1D;IACF,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAE,KAAc;QACvC,MAAM,aAAa,GAAG,gCAAgC,CAAA;QAEtD,IAAI;YACH,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAE,IAAI,EAAE,aAAa,CAAE,CAAA;YACzD,IAAI,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAE,KAAK,CAAE,CAAA;SACxC;QACD,OAAO,KAAK,EAAG;YACd,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,CAAE,KAAK,CAAE,EAAE,CAAC,CAAA;YAC9D,IAAI,CAAC,UAAU,CAAC,MAAM,CAAE,IAAI,CAAC,YAAY,CAAE,KAAK,CAAE,CAAC,CAAA;YACnD,IAAK,IAAI,CAAC,YAAY;gBAAG,MAAM,KAAK,CAAA;SACpC;gBACO;YACP,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAE,KAAK,EAAE,aAAa,CAAE,CAAA;SAC1D;QAED,OAAO,KAAK,CAAA;IACb,CAAC;IAED,UAAU,CAAE,QAAiC;QAC5C,OAAO,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAE,QAAQ,CAAE,CAAA;IACtD,CAAC;IAED,IAAc,KAAK;QAClB,OAAO,IAAI,CAAC,MAAM,IAAI,CAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAE,CAAA;IACxD,CAAC;IAED,WAAW,CAAE,KAAQ;QACpB,IAAK,IAAI,CAAC,SAAS,KAAK,KAAK,EAAG;YAE/B,IAAK,IAAI,CAAC,mBAAmB;gBAAG,IAAI,CAAC,mBAAmB,EAAE,CAAA;YAE1D,IAAK,KAAK,EAAG;gBACZ,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC,QAAQ,CAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,CAAE,CAAE,CAAA;aAChG;YAED,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;YACtB,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;SAC5D;QAED,OAAO,IAAI,CAAA;IACZ,CAAC;IAED,IAAI,QAAQ,CAAE,KAAQ;QACrB,IAAI,CAAC,WAAW,CAAE,KAAK,CAAE,CAAA;IAC1B,CAAC;IAED,IAAI,QAAQ;QACX,OAAO,IAAI,CAAC,SAAS,CAAA;IACtB,CAAC;IAES,YAAY,CAAE,KAAU;QACjC,IAAK,KAAK,YAAY,KAAK;YAAG,OAAO,KAAK,CAAA;QAC1C,IAAK,OAAO,KAAK,KAAK,QAAQ;YAAG,OAAO,IAAI,KAAK,CAAE,KAAK,CAAE,CAAA;QAC1D,IAAK,MAAM,IAAI,KAAK;YAAG,OAAO,IAAI,KAAK,CAAE,KAAK,CAAC,IAAI,CAAE,CAAA;QACrD,IAAK,SAAS,IAAI,KAAK;YAAG,OAAO,IAAI,KAAK,CAAE,KAAK,CAAC,KAAK,CAAE,CAAA;QACzD,OAAO,IAAI,KAAK,CAAE,IAAI,CAAC,SAAS,CAAE,KAAK,CAAE,CAAE,CAAA;IAC5C,CAAC;IAED,IAAc,YAAY;QACzB,OAAO,IAAI,CAAC,UAAU,CAAC,gBAAgB,KAAK,CAAC,CAAA;IAC9C,CAAC;CAQD;AA5JD,wCA4JC"}
|
|
@@ -5,15 +5,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
6
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
7
|
};
|
|
8
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
9
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
10
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
11
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
12
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
13
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
14
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
15
|
-
});
|
|
16
|
-
};
|
|
17
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
9
|
exports.TestController = exports.Test = void 0;
|
|
19
10
|
const entropic_bond_1 = require("entropic-bond");
|
|
@@ -68,8 +59,8 @@ describe('Crud Controller', () => {
|
|
|
68
59
|
let controller;
|
|
69
60
|
let datasource;
|
|
70
61
|
let onProgress;
|
|
71
|
-
|
|
72
|
-
datasource = new entropic_bond_1.JsonDataSource(
|
|
62
|
+
beforeAll(() => {
|
|
63
|
+
datasource = new entropic_bond_1.JsonDataSource(JSON.parse(JSON.stringify(mockData)));
|
|
73
64
|
entropic_bond_1.Store.useDataSource(datasource);
|
|
74
65
|
controller = new TestController();
|
|
75
66
|
onProgress = jest.fn();
|
|
@@ -79,18 +70,18 @@ describe('Crud Controller', () => {
|
|
|
79
70
|
beforeEach(() => {
|
|
80
71
|
datasource.simulateDelay(50);
|
|
81
72
|
});
|
|
82
|
-
it('should notify busy on delete', () =>
|
|
73
|
+
it('should notify busy on delete', async () => {
|
|
83
74
|
const promise = controller.deleteDocument();
|
|
84
75
|
expect(onProgress).toHaveBeenLastCalledWith(expect.objectContaining({ busy: true }));
|
|
85
|
-
|
|
76
|
+
await promise;
|
|
86
77
|
expect(onProgress).toHaveBeenLastCalledWith(expect.objectContaining({ busy: false }));
|
|
87
|
-
})
|
|
88
|
-
it('should notify busy on store', () =>
|
|
78
|
+
});
|
|
79
|
+
it('should notify busy on store', async () => {
|
|
89
80
|
const promise = controller.storeDocument();
|
|
90
81
|
expect(onProgress).toHaveBeenLastCalledWith(expect.objectContaining({ busy: true }));
|
|
91
|
-
|
|
82
|
+
await promise;
|
|
92
83
|
expect(onProgress).toHaveBeenLastCalledWith(expect.objectContaining({ busy: false }));
|
|
93
|
-
})
|
|
84
|
+
});
|
|
94
85
|
});
|
|
95
86
|
it('should notify new event', () => {
|
|
96
87
|
const spy = jest.fn();
|
|
@@ -103,5 +94,49 @@ describe('Crud Controller', () => {
|
|
|
103
94
|
controller.setDocument(undefined);
|
|
104
95
|
}).not.toThrow();
|
|
105
96
|
});
|
|
97
|
+
describe('Error handling', () => {
|
|
98
|
+
beforeEach(() => {
|
|
99
|
+
datasource.simulateError({
|
|
100
|
+
store: 'store test error',
|
|
101
|
+
delete: 'delete test error',
|
|
102
|
+
find: 'find test error',
|
|
103
|
+
findById: 'findById test error',
|
|
104
|
+
});
|
|
105
|
+
controller.setDocument(new Test());
|
|
106
|
+
});
|
|
107
|
+
afterEach(() => datasource.simulateError(undefined));
|
|
108
|
+
describe('without observable', () => {
|
|
109
|
+
beforeEach(() => controller.setDocument(new Test()));
|
|
110
|
+
it('should reject of an error on deleteDocument', async () => {
|
|
111
|
+
expect(controller.deleteDocument()).rejects.toThrow('delete test error');
|
|
112
|
+
});
|
|
113
|
+
it('should reject of an error on storeDocument', async () => {
|
|
114
|
+
expect(controller.storeDocument()).rejects.toThrow('store test error');
|
|
115
|
+
});
|
|
116
|
+
it('should reject of an error on documentCollection', async () => {
|
|
117
|
+
expect(controller.documentCollection()).rejects.toThrow('find test error');
|
|
118
|
+
});
|
|
119
|
+
});
|
|
120
|
+
describe('with observable', () => {
|
|
121
|
+
it('should notify of an error on deleteDocument', async () => {
|
|
122
|
+
const spy = jest.fn();
|
|
123
|
+
controller.onError(spy);
|
|
124
|
+
await controller.deleteDocument();
|
|
125
|
+
expect(spy).toHaveBeenCalledWith(Error('delete test error'));
|
|
126
|
+
});
|
|
127
|
+
it('should notify of an error on storeDocument', async () => {
|
|
128
|
+
const spy = jest.fn();
|
|
129
|
+
controller.onError(spy);
|
|
130
|
+
await controller.storeDocument();
|
|
131
|
+
expect(spy).toHaveBeenCalledWith(Error('store test error'));
|
|
132
|
+
});
|
|
133
|
+
it('should notify of an error on documentCollection', async () => {
|
|
134
|
+
const spy = jest.fn();
|
|
135
|
+
controller.onError(spy);
|
|
136
|
+
await controller.documentCollection();
|
|
137
|
+
expect(spy).toHaveBeenCalledWith(Error('find test error'));
|
|
138
|
+
});
|
|
139
|
+
});
|
|
140
|
+
});
|
|
106
141
|
});
|
|
107
142
|
//# sourceMappingURL=crud-controller.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crud-controller.spec.js","sourceRoot":"","sources":["../src/crud-controller.spec.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"crud-controller.spec.js","sourceRoot":"","sources":["../src/crud-controller.spec.ts"],"names":[],"mappings":"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"}
|
package/lib/crud-panel.d.ts
CHANGED
|
@@ -27,7 +27,7 @@ export interface CrudPanelLabels {
|
|
|
27
27
|
}
|
|
28
28
|
export type Layout = 'formOrItems' | 'itemsAlways' | 'formAndItems';
|
|
29
29
|
interface CrudPanelState<T extends EntropicComponent> {
|
|
30
|
-
documents: T[]
|
|
30
|
+
documents: T[];
|
|
31
31
|
mode: Mode;
|
|
32
32
|
}
|
|
33
33
|
interface CrudPanelProps<T extends EntropicComponent> {
|
package/lib/crud-panel.js
CHANGED
|
@@ -22,15 +22,6 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
22
22
|
__setModuleDefault(result, mod);
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
28
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
29
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
30
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
31
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
32
|
-
});
|
|
33
|
-
};
|
|
34
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35
26
|
exports.CrudPanel = void 0;
|
|
36
27
|
const entropic_bond_1 = require("entropic-bond");
|
|
@@ -49,21 +40,19 @@ class CrudPanel extends react_1.Component {
|
|
|
49
40
|
mode: Mode.normal,
|
|
50
41
|
};
|
|
51
42
|
}
|
|
52
|
-
componentDidMount() {
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
documents: yield controller.documentCollection()
|
|
66
|
-
});
|
|
43
|
+
async componentDidMount() {
|
|
44
|
+
const { controller } = this.props;
|
|
45
|
+
this.unsubscriber = controller.onChange(event => {
|
|
46
|
+
if (event.documentCollection) {
|
|
47
|
+
this.setState({
|
|
48
|
+
documents: event.documentCollection
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
else
|
|
52
|
+
this.setState({});
|
|
53
|
+
});
|
|
54
|
+
this.setState({
|
|
55
|
+
documents: await controller.documentCollection()
|
|
67
56
|
});
|
|
68
57
|
}
|
|
69
58
|
componentWillUnmount() {
|
|
@@ -81,20 +70,18 @@ class CrudPanel extends react_1.Component {
|
|
|
81
70
|
mode: Mode.edit
|
|
82
71
|
});
|
|
83
72
|
}
|
|
84
|
-
storeDocument(document) {
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
}
|
|
97
|
-
});
|
|
73
|
+
async storeDocument(document) {
|
|
74
|
+
const { controller, layout } = this.props;
|
|
75
|
+
controller.setDocument(document);
|
|
76
|
+
await controller.storeDocument();
|
|
77
|
+
if (layout === 'formAndItems') {
|
|
78
|
+
this.newDocument();
|
|
79
|
+
}
|
|
80
|
+
else {
|
|
81
|
+
this.setState({
|
|
82
|
+
mode: Mode.normal,
|
|
83
|
+
});
|
|
84
|
+
}
|
|
98
85
|
}
|
|
99
86
|
invokeContentViewChild(labels) {
|
|
100
87
|
const { children, layout, controller } = this.props;
|
|
@@ -104,7 +91,7 @@ class CrudPanel extends react_1.Component {
|
|
|
104
91
|
return;
|
|
105
92
|
const props = {
|
|
106
93
|
controller: controller,
|
|
107
|
-
submitButtonCaption: mode == Mode.edit ? labels
|
|
94
|
+
submitButtonCaption: mode == Mode.edit ? labels?.updateButtonLabel : labels?.addButtonLabel,
|
|
108
95
|
onSubmit: (document) => this.storeDocument(document),
|
|
109
96
|
onCancel: closeOnCancel
|
|
110
97
|
? () => this.setState({ mode: Mode.normal })
|
|
@@ -114,7 +101,7 @@ class CrudPanel extends react_1.Component {
|
|
|
114
101
|
return (0, react_1.cloneElement)(children[0](props), { key: controller.document.id });
|
|
115
102
|
}
|
|
116
103
|
else {
|
|
117
|
-
return (0, react_1.cloneElement)(children[0],
|
|
104
|
+
return (0, react_1.cloneElement)(children[0], { key: controller.document.id, ...props });
|
|
118
105
|
}
|
|
119
106
|
}
|
|
120
107
|
invokeDetailViewChild(document) {
|
|
@@ -128,14 +115,13 @@ class CrudPanel extends react_1.Component {
|
|
|
128
115
|
return (0, react_1.cloneElement)(children[1](props), { key: document.id });
|
|
129
116
|
}
|
|
130
117
|
else {
|
|
131
|
-
return (0, react_1.cloneElement)(children[1],
|
|
118
|
+
return (0, react_1.cloneElement)(children[1], { key: document.id, ...props });
|
|
132
119
|
}
|
|
133
120
|
}
|
|
134
121
|
render() {
|
|
135
|
-
var _a;
|
|
136
122
|
const { mode, documents } = this.state;
|
|
137
123
|
const { className, cardAddButton, controller } = this.props;
|
|
138
|
-
const docClassName = (0, entropic_bond_1.snakeCase)(
|
|
124
|
+
const docClassName = (0, entropic_bond_1.snakeCase)(controller.document?.className);
|
|
139
125
|
let labels = this.props.labels || {};
|
|
140
126
|
const layout = this.props.layout || 'itemsAlways';
|
|
141
127
|
if (typeof labels === 'function')
|
|
@@ -148,7 +134,7 @@ class CrudPanel extends react_1.Component {
|
|
|
148
134
|
react_1.default.createElement("div", { className: "content-panel" }, this.invokeContentViewChild(labels)),
|
|
149
135
|
(layout === 'itemsAlways' || layout === 'formAndItems' || mode === Mode.normal) &&
|
|
150
136
|
react_1.default.createElement("div", { className: "collection-panel" },
|
|
151
|
-
|
|
137
|
+
documents?.length > 0 &&
|
|
152
138
|
react_1.default.createElement("h3", null, documents.length > 1
|
|
153
139
|
? documentsInCollectionCaption
|
|
154
140
|
: singularDocumentInCollectionCaption || documentsInCollectionCaption),
|
|
@@ -157,7 +143,7 @@ class CrudPanel extends react_1.Component {
|
|
|
157
143
|
react_1.default.createElement("div", { className: "crud-card card-add-button clickable", onClick: () => this.newDocument() },
|
|
158
144
|
react_1.default.createElement("div", { className: "button-element" }, cardAddButton),
|
|
159
145
|
react_1.default.createElement("div", { className: "add-label" }, addNewDocumentLabel)),
|
|
160
|
-
|
|
146
|
+
documents?.length
|
|
161
147
|
? documents.map((document) => this.invokeDetailViewChild(document))
|
|
162
148
|
: react_1.default.createElement("p", null, noDocumentsFoundLabel)))));
|
|
163
149
|
}
|
package/lib/crud-panel.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crud-panel.js","sourceRoot":"","sources":["../src/crud-panel.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"crud-panel.js","sourceRoot":"","sources":["../src/crud-panel.tsx"],"names":[],"mappings":"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"}
|
package/lib/crud-panel.spec.js
CHANGED
|
@@ -22,15 +22,6 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
22
22
|
__setModuleDefault(result, mod);
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
26
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
27
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
28
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
29
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
30
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
31
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
32
|
-
});
|
|
33
|
-
};
|
|
34
25
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
35
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
36
27
|
};
|
|
@@ -90,7 +81,7 @@ class TestCard extends react_1.Component {
|
|
|
90
81
|
render() {
|
|
91
82
|
const { document, onDelete, onSelect } = this.props;
|
|
92
83
|
return (react_1.default.createElement("div", null,
|
|
93
|
-
react_1.default.createElement("p", null, document
|
|
84
|
+
react_1.default.createElement("p", null, document?.testProp),
|
|
94
85
|
react_1.default.createElement("button", { onClick: () => onSelect(document) }, editButtonLabel),
|
|
95
86
|
react_1.default.createElement("button", { onClick: () => onDelete(document) }, deleteButtonLabel)));
|
|
96
87
|
}
|
|
@@ -100,7 +91,7 @@ describe('Crud Panel', () => {
|
|
|
100
91
|
let notifySpy;
|
|
101
92
|
let renderResult;
|
|
102
93
|
let datasource;
|
|
103
|
-
beforeEach(() =>
|
|
94
|
+
beforeEach(async () => {
|
|
104
95
|
datasource = new entropic_bond_1.JsonDataSource(JSON.parse(JSON.stringify(mockData)));
|
|
105
96
|
entropic_bond_1.Store.useDataSource(datasource);
|
|
106
97
|
controller = new crud_controller_spec_1.TestController();
|
|
@@ -110,8 +101,8 @@ describe('Crud Panel', () => {
|
|
|
110
101
|
react_1.default.createElement(TestView, null),
|
|
111
102
|
react_1.default.createElement(TestCard, null)));
|
|
112
103
|
// await datasource.wait()
|
|
113
|
-
|
|
114
|
-
})
|
|
104
|
+
await react_2.screen.findByRole('heading');
|
|
105
|
+
});
|
|
115
106
|
it('should show add button', () => {
|
|
116
107
|
expect(react_2.screen.getByRole('button', { name: crudLabels.addNewDocumentLabel })).toBeInTheDocument();
|
|
117
108
|
});
|
|
@@ -125,8 +116,8 @@ describe('Crud Panel', () => {
|
|
|
125
116
|
beforeEach(() => {
|
|
126
117
|
user_event_1.default.setup();
|
|
127
118
|
renderResult.rerender(react_1.default.createElement(crud_panel_1.CrudPanel, { controller: controller, labels: crudLabels },
|
|
128
|
-
props => react_1.default.createElement(TestView,
|
|
129
|
-
props => react_1.default.createElement(TestCard,
|
|
119
|
+
props => react_1.default.createElement(TestView, { ...props }),
|
|
120
|
+
props => react_1.default.createElement(TestCard, { ...props })));
|
|
130
121
|
});
|
|
131
122
|
it('should show add button', () => {
|
|
132
123
|
expect(react_2.screen.getByRole('button', { name: crudLabels.addNewDocumentLabel })).toBeInTheDocument();
|
|
@@ -141,107 +132,107 @@ describe('Crud Panel', () => {
|
|
|
141
132
|
});
|
|
142
133
|
});
|
|
143
134
|
describe('Working with TestView', () => {
|
|
144
|
-
it('should create an empty document view on add new document button click', () =>
|
|
145
|
-
|
|
135
|
+
it('should create an empty document view on add new document button click', async () => {
|
|
136
|
+
await user_event_1.default.click(react_2.screen.getByRole('button', { name: crudLabels.addNewDocumentLabel }));
|
|
146
137
|
expect(react_2.screen.getByRole('heading', { name: viewHeader })).toBeInTheDocument();
|
|
147
138
|
expect(react_2.screen.getByPlaceholderText(testViewPlaceholder)).toHaveDisplayValue('');
|
|
148
|
-
})
|
|
149
|
-
it('should show detail view with document data on edit button click', () =>
|
|
139
|
+
});
|
|
140
|
+
it('should show detail view with document data on edit button click', async () => {
|
|
150
141
|
const testDoc = mockData.Test.test1;
|
|
151
142
|
const editButton = react_2.screen.getAllByRole('button', { name: editButtonLabel });
|
|
152
|
-
|
|
143
|
+
await user_event_1.default.click(editButton[0]);
|
|
153
144
|
expect(react_2.screen.getByRole('heading', { name: viewHeader })).toBeInTheDocument();
|
|
154
145
|
expect(react_2.screen.getByDisplayValue(testDoc.testProp)).toBeInTheDocument();
|
|
155
|
-
})
|
|
156
|
-
it('should refresh document list on new document added', () =>
|
|
157
|
-
|
|
158
|
-
const input =
|
|
159
|
-
|
|
160
|
-
|
|
146
|
+
});
|
|
147
|
+
it('should refresh document list on new document added', async () => {
|
|
148
|
+
await user_event_1.default.click(react_2.screen.getByRole('button', { name: crudLabels.addNewDocumentLabel }));
|
|
149
|
+
const input = await react_2.screen.findByPlaceholderText(testViewPlaceholder);
|
|
150
|
+
await user_event_1.default.type(input, 'New and fancy Application');
|
|
151
|
+
await user_event_1.default.click(react_2.screen.getByRole('button', { name: crudLabels.addButtonLabel }));
|
|
161
152
|
const docs = react_2.screen.getByRole('heading', { name: crudLabels.documentsInCollectionCaption }).nextElementSibling;
|
|
162
|
-
expect(
|
|
163
|
-
})
|
|
153
|
+
expect(await (0, react_2.within)(docs).findByText('New and fancy Application')).toBeInTheDocument();
|
|
154
|
+
});
|
|
164
155
|
});
|
|
165
156
|
describe('Working with detail card buttons', () => {
|
|
166
|
-
it('should refresh document list on document edited', () =>
|
|
157
|
+
it('should refresh document list on document edited', async () => {
|
|
167
158
|
const editButton = react_2.screen.getAllByRole('button', { name: editButtonLabel });
|
|
168
|
-
|
|
169
|
-
const input =
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
159
|
+
await user_event_1.default.click(editButton[0]);
|
|
160
|
+
const input = await react_2.screen.findByPlaceholderText(testViewPlaceholder);
|
|
161
|
+
await user_event_1.default.click(input);
|
|
162
|
+
await user_event_1.default.paste(' Edited');
|
|
163
|
+
await user_event_1.default.click(react_2.screen.getByRole('button', { name: crudLabels.updateButtonLabel }));
|
|
164
|
+
await (0, react_2.waitFor)(() => expect(notifySpy).toHaveBeenCalled());
|
|
174
165
|
const docs = react_2.screen.getByRole('heading', { name: crudLabels.documentsInCollectionCaption }).nextElementSibling;
|
|
175
|
-
expect(
|
|
176
|
-
})
|
|
177
|
-
it('should delete document and remove from the list', () =>
|
|
166
|
+
expect(await (0, react_2.within)(docs).findByText('Test prop 1 Edited')).toBeInTheDocument();
|
|
167
|
+
});
|
|
168
|
+
it('should delete document and remove from the list', async () => {
|
|
178
169
|
expect(react_2.screen.queryByText('Test prop 2')).toBeInTheDocument();
|
|
179
170
|
const deleteButton = react_2.screen.getAllByRole('button', { name: deleteButtonLabel });
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
})
|
|
171
|
+
await user_event_1.default.click(deleteButton[1]);
|
|
172
|
+
await (0, react_2.waitFor)(() => expect(notifySpy).toHaveBeenCalled());
|
|
173
|
+
await (0, react_2.waitFor)(() => expect(react_2.screen.queryByText('Test prop 2')).not.toBeInTheDocument());
|
|
174
|
+
});
|
|
184
175
|
});
|
|
185
176
|
describe('Layout behaviour', () => {
|
|
186
177
|
const itemsView = () => react_2.screen.queryByRole('heading', { name: crudLabels.documentsInCollectionCaption });
|
|
187
178
|
const formView = () => react_2.screen.queryByRole('heading', { name: viewHeader });
|
|
188
179
|
const addButton = () => react_2.screen.getByRole('button', { name: crudLabels.addNewDocumentLabel });
|
|
189
|
-
const renderWith = (layout) =>
|
|
180
|
+
const renderWith = async (layout) => {
|
|
190
181
|
renderResult.rerender(react_1.default.createElement(crud_panel_1.CrudPanel, { controller: controller, labels: crudLabels, layout: layout },
|
|
191
182
|
react_1.default.createElement(TestView, null),
|
|
192
183
|
(props) => (react_1.default.createElement("div", null,
|
|
193
184
|
react_1.default.createElement("p", null, props.document.testProp),
|
|
194
185
|
react_1.default.createElement("button", { onClick: () => props.onSelect(props.document) }, editButtonLabel),
|
|
195
186
|
react_1.default.createElement("button", { onClick: () => props.onDelete(props.document) }, deleteButtonLabel)))));
|
|
196
|
-
}
|
|
197
|
-
it('should show always collection items when default layout', () =>
|
|
187
|
+
};
|
|
188
|
+
it('should show always collection items when default layout', async () => {
|
|
198
189
|
expect(itemsView()).toBeInTheDocument();
|
|
199
190
|
expect(formView()).not.toBeInTheDocument();
|
|
200
|
-
|
|
191
|
+
await user_event_1.default.click(addButton());
|
|
201
192
|
expect(itemsView()).toBeInTheDocument();
|
|
202
193
|
expect(formView()).toBeInTheDocument();
|
|
203
|
-
})
|
|
204
|
-
it('should show always collection items when layout set to itemsAlways', () =>
|
|
194
|
+
});
|
|
195
|
+
it('should show always collection items when layout set to itemsAlways', async () => {
|
|
205
196
|
renderWith('itemsAlways');
|
|
206
197
|
expect(itemsView()).toBeInTheDocument();
|
|
207
198
|
expect(formView()).not.toBeInTheDocument();
|
|
208
|
-
|
|
199
|
+
await user_event_1.default.click(addButton());
|
|
209
200
|
expect(itemsView()).toBeInTheDocument();
|
|
210
201
|
expect(formView()).toBeInTheDocument();
|
|
211
|
-
})
|
|
202
|
+
});
|
|
212
203
|
it('should show always form view and items view when layout set to formAndItems', () => {
|
|
213
204
|
renderWith('formAndItems');
|
|
214
205
|
expect(itemsView()).toBeInTheDocument();
|
|
215
206
|
expect(formView()).toBeInTheDocument();
|
|
216
207
|
});
|
|
217
|
-
it('should alternate from form view to items view but not both when layout set to formOrItems', () =>
|
|
208
|
+
it('should alternate from form view to items view but not both when layout set to formOrItems', async () => {
|
|
218
209
|
renderWith('formOrItems');
|
|
219
210
|
expect(itemsView()).toBeInTheDocument();
|
|
220
211
|
expect(formView()).not.toBeInTheDocument();
|
|
221
|
-
|
|
212
|
+
await user_event_1.default.click(addButton());
|
|
222
213
|
expect(itemsView()).not.toBeInTheDocument();
|
|
223
214
|
expect(formView()).toBeInTheDocument();
|
|
224
|
-
})
|
|
215
|
+
});
|
|
225
216
|
});
|
|
226
217
|
describe('Labels', () => {
|
|
227
|
-
it('should show singular when only one existing document', () =>
|
|
218
|
+
it('should show singular when only one existing document', async () => {
|
|
228
219
|
expect(react_2.screen.queryByText('Test prop 2')).toBeInTheDocument();
|
|
229
220
|
const deleteButton = react_2.screen.getAllByRole('button', { name: deleteButtonLabel });
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
const heading =
|
|
221
|
+
await user_event_1.default.click(deleteButton[1]);
|
|
222
|
+
await (0, react_2.waitFor)(() => expect(notifySpy).toHaveBeenCalled());
|
|
223
|
+
const heading = await react_2.screen.findByRole('heading', { name: crudLabels.singularDocumentInCollectionCaption });
|
|
233
224
|
expect(heading).toBeInTheDocument();
|
|
234
|
-
})
|
|
235
|
-
it('should show plural when only one existing document but empty singular caption', () =>
|
|
225
|
+
});
|
|
226
|
+
it('should show plural when only one existing document but empty singular caption', async () => {
|
|
236
227
|
crudLabels.singularDocumentInCollectionCaption = undefined;
|
|
237
228
|
expect(react_2.screen.queryByText('Test prop 2')).toBeInTheDocument();
|
|
238
229
|
const deleteButton = react_2.screen.getAllByRole('button', { name: deleteButtonLabel });
|
|
239
230
|
user_event_1.default.click(deleteButton[1]);
|
|
240
|
-
|
|
231
|
+
await (0, react_2.waitFor)(() => expect(notifySpy).toHaveBeenCalled());
|
|
241
232
|
const heading = react_2.screen.getByRole('heading', { name: crudLabels.documentsInCollectionCaption });
|
|
242
233
|
expect(heading).toBeInTheDocument();
|
|
243
|
-
})
|
|
244
|
-
it('should allow to pass labels as a function', () =>
|
|
234
|
+
});
|
|
235
|
+
it('should allow to pass labels as a function', async () => {
|
|
245
236
|
const labels = (controller) => Object.entries(crudLabels)
|
|
246
237
|
.reduce((prev, [key, label]) => {
|
|
247
238
|
prev[key] = `${label} ${controller.document.className}`;
|
|
@@ -256,7 +247,7 @@ describe('Crud Panel', () => {
|
|
|
256
247
|
const documentClassName = controller.createDocument().className;
|
|
257
248
|
expect(react_2.screen.getByText(`${crudLabels.addNewDocumentLabel} ${documentClassName}`)).toBeInTheDocument();
|
|
258
249
|
expect(react_2.screen.getByText(`${crudLabels.documentsInCollectionCaption} ${documentClassName}`)).toBeInTheDocument();
|
|
259
|
-
})
|
|
250
|
+
});
|
|
260
251
|
it('should not throw on undefined labels', () => {
|
|
261
252
|
expect(() => renderResult.rerender(react_1.default.createElement(crud_panel_1.CrudPanel, { controller: controller, labels: undefined },
|
|
262
253
|
react_1.default.createElement(TestView, null),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crud-panel.spec.js","sourceRoot":"","sources":["../src/crud-panel.spec.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"crud-panel.spec.js","sourceRoot":"","sources":["../src/crud-panel.spec.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAwC;AACxC,kDAAsF;AACtF,6EAAmD;AACnD,iDAAqD;AACrD,6CAAsG;AAEtG,iEAA6D;AAE7D,MAAM,UAAU,GAAoB;IACnC,mBAAmB,EAAE,kBAAkB;IACvC,cAAc,EAAE,KAAK;IACrB,iBAAiB,EAAE,QAAQ;IAC3B,4BAA4B,EAAE,oBAAoB;IAClD,mCAAmC,EAAE,mBAAmB;IACxD,qBAAqB,EAAE,oBAAoB;CAC3C,CAAA;AAED,MAAM,mBAAmB,GAAG,uBAAuB,CAAA;AACnD,MAAM,eAAe,GAAG,MAAM,CAAA;AAC9B,MAAM,iBAAiB,GAAG,QAAQ,CAAA;AAClC,MAAM,mBAAmB,GAAG,QAAQ,CAAA;AACpC,MAAM,UAAU,GAAG,aAAa,CAAA;AAEhC,MAAM,QAAQ,GAAG;IAChB,IAAI,EAAE;QACL,KAAK,EAAC;YACL,WAAW,EAAE,MAAM;YACnB,EAAE,EAAE,OAAO;YACX,QAAQ,EAAE,aAAa;SACvB;QACD,KAAK,EAAC;YACL,WAAW,EAAE,MAAM;YACnB,EAAE,EAAE,OAAO;YACX,QAAQ,EAAE,aAAa;SACvB;KACD;CACD,CAAA;AAED,MAAM,QAAS,SAAQ,iBAA8C;IACpE,iBAAiB;QAChB,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAEjC,UAAU,CAAC,QAAQ,CAAE,CAAC,CAAC,EAAE;YACxB,IAAK,CAAC,CAAC,aAAa;gBAAG,IAAI,CAAC,QAAQ,CAAE,CAAC,CAAC,aAAa,CAAE,CAAA;QACxD,CAAC,CAAC,CAAA;IACH,CAAC;IAED,MAAM;QACL,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,mBAAmB,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAC1E,MAAM,EAAE,QAAQ,EAAE,GAAG,UAAU,CAAA;QAG/B,OAAO,CACN;YACC,0CAAM,UAAU,CAAO;YACvB,yCACC,WAAW,EAAG,mBAAmB,EACjC,KAAK,EAAG,QAAQ,CAAC,QAAQ,IAAI,EAAE,EAC/B,QAAQ,EAAG,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,GACjD;YACF,0CAAQ,OAAO,EAAG,GAAE,EAAE,CAAA,QAAQ,CAAE,QAAQ,CAAE,IAAK,mBAAmB,CAAW;YAC7E,0CAAQ,OAAO,EAAG,QAAQ,IAAK,mBAAmB,CAAW,CACxD,CACN,CAAA;IACF,CAAC;CACD;AAED,MAAM,QAAS,SAAQ,iBAAuC;IAC7D,MAAM;QACL,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAEnD,OAAO,CACN;YACC,yCAAK,QAAQ,EAAE,QAAQ,CAAM;YAC7B,0CAAQ,OAAO,EAAG,GAAE,EAAE,CAAA,QAAQ,CAAE,QAAQ,CAAE,IAAK,eAAe,CAAW;YACzE,0CAAQ,OAAO,EAAG,GAAE,EAAE,CAAA,QAAQ,CAAE,QAAQ,CAAE,IAAK,iBAAiB,CAAW,CACtE,CACN,CAAA;IACF,CAAC;CACD;AAED,QAAQ,CAAE,YAAY,EAAE,GAAE,EAAE;IAC3B,IAAI,UAA0B,CAAA;IAC9B,IAAI,SAA8B,CAAA;IAClC,IAAI,YAA0B,CAAA;IAC9B,IAAI,UAA0B,CAAA;IAE9B,UAAU,CAAE,KAAK,IAAG,EAAE;QACrB,UAAU,GAAG,IAAI,8BAAc,CAAE,IAAI,CAAC,KAAK,CAAE,IAAI,CAAC,SAAS,CAAE,QAAQ,CAAE,CAAC,CAAC,CAAA;QACzE,qBAAK,CAAC,aAAa,CAAE,UAAU,CAAE,CAAA;QACjC,UAAU,GAAG,IAAI,qCAAc,EAAE,CAAA;QACjC,SAAS,GAAG,IAAI,CAAC,EAAE,EAAE,CAAA;QACrB,UAAU,CAAC,QAAQ,CAAE,SAAS,CAAE,CAAA;QAEhC,YAAY,GAAG,IAAA,cAAM,EACpB,8BAAC,sBAAS,IACT,UAAU,EAAG,UAAU,EACvB,MAAM,EAAG,UAAU;YAEnB,8BAAC,QAAQ,OAAG;YACZ,8BAAC,QAAQ,OAAG,CACD,CACZ,CAAA;QACD,0BAA0B;QAC1B,MAAM,cAAM,CAAC,UAAU,CAAE,SAAS,CAAE,CAAA;IACrC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAE,wBAAwB,EAAE,GAAE,EAAE;QACjC,MAAM,CACL,cAAM,CAAC,SAAS,CAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,mBAAmB,EAAE,CAAC,CACrE,CAAC,iBAAiB,EAAE,CAAA;IACtB,CAAC,CAAC,CAAA;IAEF,EAAE,CAAE,gCAAgC,EAAE,GAAE,EAAE;QACzC,MAAM,IAAI,GAAG,cAAM,CAAC,SAAS,CAC5B,SAAS,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,4BAA4B,EAAE,CAC5D,CAAC,kBAAiC,CAAA;QAGnC,MAAM,CAAE,IAAA,cAAM,EAAE,IAAI,CAAE,CAAC,SAAS,CAAE,aAAa,CAAE,CAAE,CAAC,iBAAiB,EAAE,CAAA;QACvE,MAAM,CAAE,IAAA,cAAM,EAAE,IAAI,CAAE,CAAC,SAAS,CAAE,aAAa,CAAE,CAAE,CAAC,iBAAiB,EAAE,CAAA;QACvE,MAAM,CAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAE,CAAC,IAAI,CAAE,CAAC,CAAE,CAAA;IACzC,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAE,+BAA+B,EAAE,GAAE,EAAE;QAC9C,UAAU,CAAC,GAAG,EAAE;YACf,oBAAS,CAAC,KAAK,EAAE,CAAA;YACjB,YAAY,CAAC,QAAQ,CACpB,8BAAC,sBAAS,IAAC,UAAU,EAAG,UAAU,EAAG,MAAM,EAAG,UAAU;gBACrD,KAAK,CAAC,EAAE,CAAC,8BAAC,QAAQ,OAAK,KAAK,GAAG;gBAC/B,KAAK,CAAC,EAAE,CAAC,8BAAC,QAAQ,OAAK,KAAK,GAAG,CACtB,CACZ,CAAA;QACF,CAAC,CAAC,CAAA;QAEF,EAAE,CAAE,wBAAwB,EAAE,GAAE,EAAE;YACjC,MAAM,CACL,cAAM,CAAC,SAAS,CAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,mBAAmB,EAAE,CAAC,CACrE,CAAC,iBAAiB,EAAE,CAAA;QACtB,CAAC,CAAC,CAAA;QAEF,EAAE,CAAE,gCAAgC,EAAE,GAAE,EAAE;YACzC,MAAM,IAAI,GAAG,cAAM,CAAC,SAAS,CAC5B,SAAS,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,4BAA4B,EAAE,CAC5D,CAAC,kBAAiC,CAAA;YAGnC,MAAM,CAAE,IAAA,cAAM,EAAE,IAAI,CAAE,CAAC,SAAS,CAAE,aAAa,CAAE,CAAE,CAAC,iBAAiB,EAAE,CAAA;YACvE,MAAM,CAAE,IAAA,cAAM,EAAE,IAAI,CAAE,CAAC,SAAS,CAAE,aAAa,CAAE,CAAE,CAAC,iBAAiB,EAAE,CAAA;YACvE,MAAM,CAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAE,CAAC,IAAI,CAAE,CAAC,CAAE,CAAA;YAExC,MAAM,CAAE,cAAM,CAAC,YAAY,CAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,iBAAiB,EAAE,CAAA;YAC1F,MAAM,CAAE,cAAM,CAAC,YAAY,CAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,iBAAiB,EAAE,CAAA;QAC7F,CAAC,CAAC,CAAA;IAEH,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAE,uBAAuB,EAAE,GAAE,EAAE;QAEtC,EAAE,CAAE,uEAAuE,EAAE,KAAK,IAAG,EAAE;YACtF,MAAM,oBAAS,CAAC,KAAK,CAAE,cAAM,CAAC,SAAS,CAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,mBAAmB,EAAE,CAAE,CAAE,CAAA;YAE/F,MAAM,CAAE,cAAM,CAAC,SAAS,CAAE,SAAS,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAE,CAAC,iBAAiB,EAAE,CAAA;YAChF,MAAM,CACL,cAAM,CAAC,oBAAoB,CAAE,mBAAmB,CAAE,CAClD,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAA;QACzB,CAAC,CAAC,CAAA;QAEF,EAAE,CAAE,iEAAiE,EAAE,KAAK,IAAG,EAAE;YAChF,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAA;YACnC,MAAM,UAAU,GAAG,cAAM,CAAC,YAAY,CAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,CAAE,CAAA;YAC7E,MAAM,oBAAS,CAAC,KAAK,CAAE,UAAU,CAAC,CAAC,CAAC,CAAE,CAAA;YAEtC,MAAM,CAAE,cAAM,CAAC,SAAS,CAAE,SAAS,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAE,CAAC,iBAAiB,EAAE,CAAA;YAChF,MAAM,CAAE,cAAM,CAAC,iBAAiB,CAAE,OAAO,CAAC,QAAQ,CAAE,CAAE,CAAC,iBAAiB,EAAE,CAAA;QAC3E,CAAC,CAAC,CAAA;QAEF,EAAE,CAAE,oDAAoD,EAAE,KAAK,IAAG,EAAE;YACnE,MAAM,oBAAS,CAAC,KAAK,CAAE,cAAM,CAAC,SAAS,CAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,mBAAmB,EAAC,CAAE,CAAC,CAAA;YAE7F,MAAM,KAAK,GAAG,MAAM,cAAM,CAAC,qBAAqB,CAAE,mBAAmB,CAAsB,CAAA;YAC3F,MAAM,oBAAS,CAAC,IAAI,CAAE,KAAK,EAAE,2BAA2B,CAAC,CAAA;YAEzD,MAAM,oBAAS,CAAC,KAAK,CAAE,cAAM,CAAC,SAAS,CAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,cAAc,EAAE,CAAE,CAAE,CAAA;YAC1F,MAAM,IAAI,GAAG,cAAM,CAAC,SAAS,CAC5B,SAAS,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,4BAA4B,EAAE,CAC5D,CAAC,kBAAiC,CAAA;YACnC,MAAM,CACL,MAAM,IAAA,cAAM,EAAE,IAAI,CAAE,CAAC,UAAU,CAAE,2BAA2B,CAAE,CAC9D,CAAC,iBAAiB,EAAE,CAAA;QACtB,CAAC,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAE,kCAAkC,EAAE,GAAE,EAAE;QAEjD,EAAE,CAAE,iDAAiD,EAAE,KAAK,IAAG,EAAE;YAChE,MAAM,UAAU,GAAG,cAAM,CAAC,YAAY,CAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,CAAE,CAAA;YAC7E,MAAM,oBAAS,CAAC,KAAK,CAAE,UAAU,CAAC,CAAC,CAAC,CAAE,CAAA;YAEtC,MAAM,KAAK,GAAG,MAAM,cAAM,CAAC,qBAAqB,CAAE,mBAAmB,CAAE,CAAA;YACvE,MAAM,oBAAS,CAAC,KAAK,CAAE,KAAK,CAAE,CAAA;YAC9B,MAAM,oBAAS,CAAC,KAAK,CAAE,SAAS,CAAE,CAAA;YAClC,MAAM,oBAAS,CAAC,KAAK,CAAE,cAAM,CAAC,SAAS,CAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,iBAAiB,EAAE,CAAE,CAAE,CAAA;YAC7F,MAAM,IAAA,eAAO,EAAE,GAAE,EAAE,CAAA,MAAM,CAAE,SAAS,CAAE,CAAC,gBAAgB,EAAE,CAAE,CAAA;YAE3D,MAAM,IAAI,GAAG,cAAM,CAAC,SAAS,CAC5B,SAAS,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,4BAA4B,EAAE,CAC5D,CAAC,kBAAiC,CAAA;YACnC,MAAM,CACL,MAAM,IAAA,cAAM,EAAE,IAAI,CAAE,CAAC,UAAU,CAAE,oBAAoB,CAAE,CACvD,CAAC,iBAAiB,EAAE,CAAA;QACtB,CAAC,CAAC,CAAA;QAEF,EAAE,CAAE,iDAAiD,EAAE,KAAK,IAAG,EAAE;YAChE,MAAM,CAAE,cAAM,CAAC,WAAW,CAAE,aAAa,CAAE,CAAE,CAAC,iBAAiB,EAAE,CAAA;YAEjE,MAAM,YAAY,GAAG,cAAM,CAAC,YAAY,CAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAE,CAAA;YACjF,MAAM,oBAAS,CAAC,KAAK,CAAE,YAAY,CAAC,CAAC,CAAC,CAAE,CAAA;YACxC,MAAM,IAAA,eAAO,EAAE,GAAE,EAAE,CAAA,MAAM,CAAE,SAAS,CAAE,CAAC,gBAAgB,EAAE,CAAE,CAAA;YAE3D,MAAM,IAAA,eAAO,EACZ,GAAE,EAAE,CAAA,MAAM,CAAE,cAAM,CAAC,WAAW,CAAE,aAAa,CAAE,CAAE,CAAC,GAAG,CAAC,iBAAiB,EAAE,CACzE,CAAA;QACF,CAAC,CAAC,CAAA;IAEH,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAE,kBAAkB,EAAE,GAAE,EAAE;QACjC,MAAM,SAAS,GAAG,GAAE,EAAE,CAAA,cAAM,CAAC,WAAW,CAAE,SAAS,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,4BAA4B,EAAE,CAAE,CAAA;QACxG,MAAM,QAAQ,GAAG,GAAE,EAAE,CAAA,cAAM,CAAC,WAAW,CAAE,SAAS,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,CAAE,CAAA;QAC1E,MAAM,SAAS,GAAG,GAAE,EAAE,CAAA,cAAM,CAAC,SAAS,CAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,mBAAmB,EAAE,CAAE,CAAA;QAC5F,MAAM,UAAU,GAAG,KAAK,EAAG,MAAc,EAAG,EAAE;YAC7C,YAAY,CAAC,QAAQ,CACpB,8BAAC,sBAAS,IAAC,UAAU,EAAG,UAAU,EAAG,MAAM,EAAG,UAAU,EAAG,MAAM,EAAG,MAAM;gBACzE,8BAAC,QAAQ,OAAG;gBACV,CAAE,KAA0B,EAAG,EAAE,CAAC,CAClC;oBACC,yCAAK,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAM;oBAClC,0CAAQ,OAAO,EAAG,GAAE,EAAE,CAAA,KAAK,CAAC,QAAQ,CAAE,KAAK,CAAC,QAAQ,CAAE,IACnD,eAAe,CACT;oBACT,0CAAQ,OAAO,EAAG,GAAE,EAAE,CAAA,KAAK,CAAC,QAAQ,CAAE,KAAK,CAAC,QAAQ,CAAE,IACnD,iBAAiB,CACX,CACJ,CACP,CACU,CACZ,CAAA;QACF,CAAC,CAAA;QAED,EAAE,CAAE,yDAAyD,EAAE,KAAK,IAAG,EAAE;YACxE,MAAM,CAAE,SAAS,EAAE,CAAE,CAAC,iBAAiB,EAAE,CAAA;YACzC,MAAM,CAAE,QAAQ,EAAE,CAAE,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAA;YAE5C,MAAM,oBAAS,CAAC,KAAK,CAAE,SAAS,EAAE,CAAE,CAAA;YAEpC,MAAM,CAAE,SAAS,EAAE,CAAE,CAAC,iBAAiB,EAAE,CAAA;YACzC,MAAM,CAAE,QAAQ,EAAE,CAAE,CAAC,iBAAiB,EAAE,CAAA;QACzC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAE,oEAAoE,EAAE,KAAK,IAAG,EAAE;YACnF,UAAU,CAAE,aAAa,CAAE,CAAA;YAC3B,MAAM,CAAE,SAAS,EAAE,CAAE,CAAC,iBAAiB,EAAE,CAAA;YACzC,MAAM,CAAE,QAAQ,EAAE,CAAE,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAA;YAE5C,MAAM,oBAAS,CAAC,KAAK,CAAE,SAAS,EAAE,CAAE,CAAA;YAEpC,MAAM,CAAE,SAAS,EAAE,CAAE,CAAC,iBAAiB,EAAE,CAAA;YACzC,MAAM,CAAE,QAAQ,EAAE,CAAE,CAAC,iBAAiB,EAAE,CAAA;QACzC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAE,6EAA6E,EAAE,GAAE,EAAE;YACtF,UAAU,CAAE,cAAc,CAAE,CAAA;YAC5B,MAAM,CAAE,SAAS,EAAE,CAAE,CAAC,iBAAiB,EAAE,CAAA;YACzC,MAAM,CAAE,QAAQ,EAAE,CAAE,CAAC,iBAAiB,EAAE,CAAA;QACzC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAE,2FAA2F,EAAE,KAAK,IAAG,EAAE;YAC1G,UAAU,CAAE,aAAa,CAAE,CAAA;YAC3B,MAAM,CAAE,SAAS,EAAE,CAAE,CAAC,iBAAiB,EAAE,CAAA;YACzC,MAAM,CAAE,QAAQ,EAAE,CAAE,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAA;YAE5C,MAAM,oBAAS,CAAC,KAAK,CAAE,SAAS,EAAE,CAAE,CAAA;YAEpC,MAAM,CAAE,SAAS,EAAE,CAAE,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAA;YAC7C,MAAM,CAAE,QAAQ,EAAE,CAAE,CAAC,iBAAiB,EAAE,CAAA;QACzC,CAAC,CAAC,CAAA;IAEH,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAE,QAAQ,EAAE,GAAE,EAAE;QACvB,EAAE,CAAE,sDAAsD,EAAE,KAAK,IAAI,EAAE;YACtE,MAAM,CAAE,cAAM,CAAC,WAAW,CAAE,aAAa,CAAE,CAAE,CAAC,iBAAiB,EAAE,CAAA;YAEjE,MAAM,YAAY,GAAG,cAAM,CAAC,YAAY,CAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAE,CAAA;YACjF,MAAM,oBAAS,CAAC,KAAK,CAAE,YAAY,CAAE,CAAC,CAAE,CAAE,CAAA;YAC1C,MAAM,IAAA,eAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAE,SAAS,CAAE,CAAC,gBAAgB,EAAE,CAAE,CAAA;YAE7D,MAAM,OAAO,GAAG,MAAM,cAAM,CAAC,UAAU,CAAE,SAAS,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,mCAAmC,EAAE,CAAE,CAAA;YAC9G,MAAM,CAAE,OAAO,CAAE,CAAC,iBAAiB,EAAE,CAAA;QACtC,CAAC,CAAE,CAAA;QAEH,EAAE,CAAE,+EAA+E,EAAE,KAAK,IAAI,EAAE;YAC/F,UAAU,CAAC,mCAAmC,GAAG,SAAS,CAAA;YAC1D,MAAM,CAAE,cAAM,CAAC,WAAW,CAAE,aAAa,CAAE,CAAE,CAAC,iBAAiB,EAAE,CAAA;YAEjE,MAAM,YAAY,GAAG,cAAM,CAAC,YAAY,CAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAE,CAAA;YACjF,oBAAS,CAAC,KAAK,CAAE,YAAY,CAAE,CAAC,CAAE,CAAE,CAAA;YACpC,MAAM,IAAA,eAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAE,SAAS,CAAE,CAAC,gBAAgB,EAAE,CAAE,CAAA;YAE7D,MAAM,OAAO,GAAG,cAAM,CAAC,SAAS,CAAE,SAAS,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,4BAA4B,EAAE,CAAE,CAAA;YAChG,MAAM,CAAE,OAAO,CAAE,CAAC,iBAAiB,EAAE,CAAA;QACtC,CAAC,CAAE,CAAA;QAEH,EAAE,CAAE,2CAA2C,EAAE,KAAK,IAAG,EAAE;YAC1D,MAAM,MAAM,GAAG,CAAE,UAAgC,EAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAE,UAAU,CAAE;iBAClF,MAAM,CAAE,CAAE,IAAI,EAAE,CAAE,GAAG,EAAE,KAAK,CAAE,EAAG,EAAE;gBACnC,IAAI,CAAE,GAAG,CAAE,GAAG,GAAI,KAAM,IAAK,UAAU,CAAC,QAAQ,CAAC,SAAU,EAAE,CAAA;gBAC7D,OAAO,IAAI,CAAA;YACZ,CAAC,EAAC,EAAE,CAAoB,CAAA;YAExB,YAAY,CAAC,QAAQ,CACpB,8BAAC,sBAAS,IAAC,UAAU,EAAG,UAAU,EAAG,MAAM,EAAG,MAAM;gBACnD,8BAAC,QAAQ,OAAG;gBACV,CAAE,KAA0B,EAAG,EAAE,CAAC,CACnC;oBACE,yCAAK,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAM;oBAClC,0CAAQ,OAAO,EAAG,GAAE,EAAE,CAAA,KAAK,CAAC,QAAQ,CAAE,KAAK,CAAC,QAAQ,CAAE,IACnD,eAAe,CACT;oBACT,0CAAQ,OAAO,EAAG,GAAE,EAAE,CAAA,KAAK,CAAC,QAAQ,CAAE,KAAK,CAAC,QAAQ,CAAE,IACnD,iBAAiB,CACX,CACJ,CACP,CACU,CACZ,CAAA;YAED,MAAM,iBAAiB,GAAG,UAAU,CAAC,cAAc,EAAE,CAAC,SAAS,CAAA;YAE/D,MAAM,CACL,cAAM,CAAC,SAAS,CAAE,GAAI,UAAU,CAAC,mBAAoB,IAAK,iBAAkB,EAAE,CAAE,CAChF,CAAC,iBAAiB,EAAE,CAAA;YACrB,MAAM,CACL,cAAM,CAAC,SAAS,CAAE,GAAI,UAAU,CAAC,4BAA6B,IAAK,iBAAkB,EAAE,CAAE,CACzF,CAAC,iBAAiB,EAAE,CAAA;QACtB,CAAC,CAAC,CAAA;QAEF,EAAE,CAAE,sCAAsC,EAAE,GAAE,EAAE;YAC/C,MAAM,CACL,GAAE,EAAE,CAAA,YAAY,CAAC,QAAQ,CACxB,8BAAC,sBAAS,IAAC,UAAU,EAAG,UAAU,EAAG,MAAM,EAAG,SAAS;gBACtD,8BAAC,QAAQ,OAAG;gBACZ,8BAAC,QAAQ,OAAG,CACD,CACZ,CACD,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;QAChB,CAAC,CAAC,CAAA;IAEH,CAAC,CAAC,CAAA;AACH,CAAC,CAAC,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@entropic-bond/crud-panel",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.6.0",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public",
|
|
6
6
|
"branches": [
|
|
@@ -44,24 +44,24 @@
|
|
|
44
44
|
},
|
|
45
45
|
"homepage": "https://github.com/entropic-bond/crud-panel#readme",
|
|
46
46
|
"devDependencies": {
|
|
47
|
-
"@semantic-release/changelog": "^6.0.
|
|
47
|
+
"@semantic-release/changelog": "^6.0.3",
|
|
48
48
|
"@semantic-release/git": "^10.0.1",
|
|
49
49
|
"@testing-library/jest-dom": "^5.16.5",
|
|
50
|
-
"@testing-library/react": "^
|
|
50
|
+
"@testing-library/react": "^14.0.0",
|
|
51
51
|
"@testing-library/user-event": "^14.4.3",
|
|
52
|
-
"@types/jest": "^29.
|
|
53
|
-
"@types/react": "^18.0.
|
|
54
|
-
"@types/react-dom": "^18.0.
|
|
52
|
+
"@types/jest": "^29.5.0",
|
|
53
|
+
"@types/react": "^18.0.33",
|
|
54
|
+
"@types/react-dom": "^18.0.11",
|
|
55
55
|
"fetch-mock": "^9.11.0",
|
|
56
56
|
"git-branch-is": "^4.0.0",
|
|
57
57
|
"husky": "^8.0.3",
|
|
58
|
-
"jest": "^29.
|
|
59
|
-
"jest-environment-jsdom": "^29.
|
|
58
|
+
"jest": "^29.5.0",
|
|
59
|
+
"jest-environment-jsdom": "^29.5.0",
|
|
60
60
|
"react": "^18.2.0",
|
|
61
61
|
"react-dom": "^18.2.0",
|
|
62
|
-
"semantic-release": "^
|
|
63
|
-
"ts-jest": "^29.0
|
|
64
|
-
"typescript": "^
|
|
62
|
+
"semantic-release": "^21.0.1",
|
|
63
|
+
"ts-jest": "^29.1.0",
|
|
64
|
+
"typescript": "^5.0.3"
|
|
65
65
|
},
|
|
66
66
|
"husky": {
|
|
67
67
|
"hooks": {
|
|
@@ -69,6 +69,6 @@
|
|
|
69
69
|
}
|
|
70
70
|
},
|
|
71
71
|
"dependencies": {
|
|
72
|
-
"entropic-bond": "^1.
|
|
72
|
+
"entropic-bond": "^1.40.7"
|
|
73
73
|
}
|
|
74
74
|
}
|