@entropic-bond/crud-panel 1.0.1 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/lib/crud-controller.d.ts +16 -20
- package/lib/crud-controller.js +89 -64
- package/lib/crud-controller.js.map +1 -1
- package/lib/crud-controller.spec.d.ts +12 -0
- package/lib/crud-controller.spec.js +176 -0
- package/lib/crud-controller.spec.js.map +1 -0
- package/lib/crud-panel.d.ts +7 -4
- package/lib/crud-panel.js +40 -29
- package/lib/crud-panel.js.map +1 -1
- package/lib/crud-panel.spec.js +66 -80
- package/lib/crud-panel.spec.js.map +1 -1
- package/lib/progress-controller.d.ts +22 -0
- package/lib/progress-controller.js +35 -0
- package/lib/progress-controller.js.map +1 -0
- package/lib/progress-controller.spec.d.ts +1 -0
- package/lib/progress-controller.spec.js +139 -0
- package/lib/progress-controller.spec.js.map +1 -0
- package/package.json +15 -15
package/README.md
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
# Crud Panel
|
|
1
|
+
# Crud Panel 2.0
|
package/lib/crud-controller.d.ts
CHANGED
|
@@ -1,33 +1,29 @@
|
|
|
1
1
|
import { Callback, Persistent, Model } from 'entropic-bond';
|
|
2
|
+
import { ProgressController, ProgressEvent } from './progress-controller';
|
|
2
3
|
export interface CrudControllerEvent<T extends Persistent> {
|
|
3
4
|
documentChanged?: T;
|
|
4
5
|
documentCollection?: T[];
|
|
5
6
|
}
|
|
6
7
|
export declare abstract class CrudController<T extends Persistent> {
|
|
7
|
-
constructor(document
|
|
8
|
+
constructor(document?: T);
|
|
9
|
+
abstract allRequiredPropertiesFilled(): boolean;
|
|
10
|
+
protected abstract createDocument(): T;
|
|
8
11
|
protected abstract getModel(): Model<T>;
|
|
9
|
-
|
|
10
|
-
|
|
12
|
+
protected storeDoc(): Promise<void>;
|
|
13
|
+
protected deleteDoc(): Promise<void>;
|
|
14
|
+
protected findDocs(limit: number): Promise<T[]>;
|
|
11
15
|
onChange(observer: Callback<CrudControllerEvent<T>>): import("entropic-bond").Unsubscriber;
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
getDocumentCollection(): Promise<T[]>;
|
|
16
|
+
newDocument(): CrudController<T>;
|
|
17
|
+
storeDocument(): Promise<void>;
|
|
18
|
+
deleteDocument(): Promise<void>;
|
|
19
|
+
documentCollection(limit?: number): Promise<T[]>;
|
|
20
|
+
onProgress(observer: Callback<ProgressEvent>): import("entropic-bond").Unsubscriber;
|
|
18
21
|
protected get model(): Model<T>;
|
|
22
|
+
setDocument(value: T): CrudController<T>;
|
|
23
|
+
set document(value: T);
|
|
24
|
+
get document(): T;
|
|
25
|
+
protected progressController: ProgressController;
|
|
19
26
|
private _onChange;
|
|
20
27
|
private _model;
|
|
21
28
|
private _document;
|
|
22
|
-
private static _factories;
|
|
23
29
|
}
|
|
24
|
-
declare type ControllerConstructor = new (document: Persistent) => CrudController<Persistent>;
|
|
25
|
-
/**
|
|
26
|
-
* Decorator to associate this controller with the document type that it manages.
|
|
27
|
-
* This will allow to create a controller from a given document automatically.
|
|
28
|
-
*
|
|
29
|
-
* @param documentTypeName the document type name that this controller is
|
|
30
|
-
* dessigned for.
|
|
31
|
-
*/
|
|
32
|
-
export declare function controllerFor(documentTypeName: string): (constructor: ControllerConstructor) => void;
|
|
33
|
-
export {};
|
package/lib/crud-controller.js
CHANGED
|
@@ -36,93 +36,115 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
36
36
|
}
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.
|
|
39
|
+
exports.CrudController = void 0;
|
|
40
40
|
var entropic_bond_1 = require("entropic-bond");
|
|
41
|
+
var progress_controller_1 = require("./progress-controller");
|
|
41
42
|
var CrudController = /** @class */ (function () {
|
|
42
43
|
function CrudController(document) {
|
|
43
|
-
this.
|
|
44
|
+
this.progressController = new progress_controller_1.ProgressController();
|
|
44
45
|
this._onChange = new entropic_bond_1.Observable();
|
|
46
|
+
this._document = document || this.createDocument();
|
|
45
47
|
}
|
|
46
|
-
CrudController.
|
|
47
|
-
this.
|
|
48
|
-
return new construct(document);
|
|
49
|
-
};
|
|
48
|
+
CrudController.prototype.storeDoc = function () {
|
|
49
|
+
return this.model.save(this.document);
|
|
50
50
|
};
|
|
51
|
-
CrudController.
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
return
|
|
51
|
+
CrudController.prototype.deleteDoc = function () {
|
|
52
|
+
return this.model.delete(this.document.id);
|
|
53
|
+
};
|
|
54
|
+
CrudController.prototype.findDocs = function (limit) {
|
|
55
|
+
return this.model.find().limit(limit).get();
|
|
56
56
|
};
|
|
57
57
|
CrudController.prototype.onChange = function (observer) {
|
|
58
58
|
return this._onChange.subscribe(observer);
|
|
59
59
|
};
|
|
60
|
-
CrudController.prototype.
|
|
61
|
-
this.
|
|
62
|
-
this._onChange.notify({ documentChanged: this._document });
|
|
63
|
-
return this._document;
|
|
64
|
-
};
|
|
65
|
-
CrudController.prototype.setDocument = function (value) {
|
|
66
|
-
if (this._document != value) {
|
|
67
|
-
this._document = value;
|
|
68
|
-
this._onChange.notify({ documentChanged: value });
|
|
69
|
-
}
|
|
70
|
-
return this;
|
|
60
|
+
CrudController.prototype.newDocument = function () {
|
|
61
|
+
return this.setDocument(this.createDocument());
|
|
71
62
|
};
|
|
72
|
-
|
|
73
|
-
get: function () {
|
|
74
|
-
return this._document;
|
|
75
|
-
},
|
|
76
|
-
enumerable: false,
|
|
77
|
-
configurable: true
|
|
78
|
-
});
|
|
79
|
-
CrudController.prototype.storeDocument = function (document) {
|
|
63
|
+
CrudController.prototype.storeDocument = function () {
|
|
80
64
|
return __awaiter(this, void 0, void 0, function () {
|
|
81
|
-
var _a, _b;
|
|
65
|
+
var progressStage, _a, _b;
|
|
82
66
|
var _c;
|
|
83
67
|
return __generator(this, function (_d) {
|
|
84
68
|
switch (_d.label) {
|
|
85
|
-
case 0:
|
|
69
|
+
case 0:
|
|
70
|
+
progressStage = 'Saving main document';
|
|
71
|
+
_d.label = 1;
|
|
86
72
|
case 1:
|
|
73
|
+
_d.trys.push([1, , 4, 5]);
|
|
74
|
+
this.progressController.notifyBusy(true, progressStage);
|
|
75
|
+
return [4 /*yield*/, this.storeDoc()];
|
|
76
|
+
case 2:
|
|
87
77
|
_d.sent();
|
|
88
|
-
this._document = document;
|
|
89
78
|
_b = (_a = this._onChange).notify;
|
|
90
|
-
_c = {
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
return [4 /*yield*/, this.getDocumentCollection()];
|
|
94
|
-
case 2:
|
|
79
|
+
_c = {};
|
|
80
|
+
return [4 /*yield*/, this.documentCollection()];
|
|
81
|
+
case 3:
|
|
95
82
|
_b.apply(_a, [(_c.documentCollection = _d.sent(),
|
|
96
83
|
_c)]);
|
|
97
|
-
return [
|
|
84
|
+
return [3 /*break*/, 5];
|
|
85
|
+
case 4:
|
|
86
|
+
this.progressController.notifyBusy(false, progressStage);
|
|
87
|
+
return [7 /*endfinally*/];
|
|
88
|
+
case 5: return [2 /*return*/];
|
|
98
89
|
}
|
|
99
90
|
});
|
|
100
91
|
});
|
|
101
92
|
};
|
|
102
|
-
CrudController.prototype.deleteDocument = function (
|
|
93
|
+
CrudController.prototype.deleteDocument = function () {
|
|
103
94
|
return __awaiter(this, void 0, void 0, function () {
|
|
104
|
-
var _a, _b;
|
|
95
|
+
var progressStage, _a, _b;
|
|
105
96
|
var _c;
|
|
106
97
|
return __generator(this, function (_d) {
|
|
107
98
|
switch (_d.label) {
|
|
108
|
-
case 0:
|
|
99
|
+
case 0:
|
|
100
|
+
progressStage = 'Delete main document';
|
|
101
|
+
_d.label = 1;
|
|
109
102
|
case 1:
|
|
103
|
+
_d.trys.push([1, , 4, 5]);
|
|
104
|
+
this.progressController.notifyBusy(true, progressStage);
|
|
105
|
+
return [4 /*yield*/, this.deleteDoc()];
|
|
106
|
+
case 2:
|
|
110
107
|
_d.sent();
|
|
111
108
|
_b = (_a = this._onChange).notify;
|
|
112
|
-
_c = {
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
return [4 /*yield*/, this.getDocumentCollection()];
|
|
116
|
-
case 2:
|
|
109
|
+
_c = {};
|
|
110
|
+
return [4 /*yield*/, this.documentCollection()];
|
|
111
|
+
case 3:
|
|
117
112
|
_b.apply(_a, [(_c.documentCollection = _d.sent(),
|
|
118
113
|
_c)]);
|
|
119
|
-
return [
|
|
114
|
+
return [3 /*break*/, 5];
|
|
115
|
+
case 4:
|
|
116
|
+
this.progressController.notifyBusy(false, progressStage);
|
|
117
|
+
return [7 /*endfinally*/];
|
|
118
|
+
case 5: return [2 /*return*/];
|
|
119
|
+
}
|
|
120
|
+
});
|
|
121
|
+
});
|
|
122
|
+
};
|
|
123
|
+
CrudController.prototype.documentCollection = function (limit) {
|
|
124
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
125
|
+
var progressStage, found;
|
|
126
|
+
return __generator(this, function (_a) {
|
|
127
|
+
switch (_a.label) {
|
|
128
|
+
case 0:
|
|
129
|
+
progressStage = 'Retrieving document collection';
|
|
130
|
+
_a.label = 1;
|
|
131
|
+
case 1:
|
|
132
|
+
_a.trys.push([1, , 3, 4]);
|
|
133
|
+
this.progressController.notifyBusy(true, progressStage);
|
|
134
|
+
return [4 /*yield*/, this.findDocs(limit)];
|
|
135
|
+
case 2:
|
|
136
|
+
found = _a.sent();
|
|
137
|
+
return [3 /*break*/, 4];
|
|
138
|
+
case 3:
|
|
139
|
+
this.progressController.notifyBusy(false, progressStage);
|
|
140
|
+
return [7 /*endfinally*/];
|
|
141
|
+
case 4: return [2 /*return*/, found];
|
|
120
142
|
}
|
|
121
143
|
});
|
|
122
144
|
});
|
|
123
145
|
};
|
|
124
|
-
CrudController.prototype.
|
|
125
|
-
return this.
|
|
146
|
+
CrudController.prototype.onProgress = function (observer) {
|
|
147
|
+
return this.progressController.onProgress(observer);
|
|
126
148
|
};
|
|
127
149
|
Object.defineProperty(CrudController.prototype, "model", {
|
|
128
150
|
get: function () {
|
|
@@ -131,21 +153,24 @@ var CrudController = /** @class */ (function () {
|
|
|
131
153
|
enumerable: false,
|
|
132
154
|
configurable: true
|
|
133
155
|
});
|
|
134
|
-
CrudController.
|
|
156
|
+
CrudController.prototype.setDocument = function (value) {
|
|
157
|
+
if (this._document !== value) {
|
|
158
|
+
this._document = value;
|
|
159
|
+
this._onChange.notify({ documentChanged: this._document });
|
|
160
|
+
}
|
|
161
|
+
return this;
|
|
162
|
+
};
|
|
163
|
+
Object.defineProperty(CrudController.prototype, "document", {
|
|
164
|
+
get: function () {
|
|
165
|
+
return this._document;
|
|
166
|
+
},
|
|
167
|
+
set: function (value) {
|
|
168
|
+
this.setDocument(value);
|
|
169
|
+
},
|
|
170
|
+
enumerable: false,
|
|
171
|
+
configurable: true
|
|
172
|
+
});
|
|
135
173
|
return CrudController;
|
|
136
174
|
}());
|
|
137
175
|
exports.CrudController = CrudController;
|
|
138
|
-
/**
|
|
139
|
-
* Decorator to associate this controller with the document type that it manages.
|
|
140
|
-
* This will allow to create a controller from a given document automatically.
|
|
141
|
-
*
|
|
142
|
-
* @param documentTypeName the document type name that this controller is
|
|
143
|
-
* dessigned for.
|
|
144
|
-
*/
|
|
145
|
-
function controllerFor(documentTypeName) {
|
|
146
|
-
return function (constructor) {
|
|
147
|
-
CrudController.registerController(documentTypeName, constructor);
|
|
148
|
-
};
|
|
149
|
-
}
|
|
150
|
-
exports.controllerFor = controllerFor;
|
|
151
176
|
//# sourceMappingURL=crud-controller.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crud-controller.js","sourceRoot":"","sources":["../src/crud-controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAAuE;
|
|
1
|
+
{"version":3,"file":"crud-controller.js","sourceRoot":"","sources":["../src/crud-controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { EntropicComponent, Model } from 'entropic-bond';
|
|
2
|
+
import { CrudController } from './crud-controller';
|
|
3
|
+
export declare class Test extends EntropicComponent {
|
|
4
|
+
set testProp(value: string);
|
|
5
|
+
get testProp(): string;
|
|
6
|
+
private _testProp;
|
|
7
|
+
}
|
|
8
|
+
export declare class TestController extends CrudController<Test> {
|
|
9
|
+
createDocument(): Test;
|
|
10
|
+
protected getModel(): Model<Test>;
|
|
11
|
+
allRequiredPropertiesFilled(): boolean;
|
|
12
|
+
}
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
var __assign = (this && this.__assign) || function () {
|
|
18
|
+
__assign = Object.assign || function(t) {
|
|
19
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
20
|
+
s = arguments[i];
|
|
21
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
22
|
+
t[p] = s[p];
|
|
23
|
+
}
|
|
24
|
+
return t;
|
|
25
|
+
};
|
|
26
|
+
return __assign.apply(this, arguments);
|
|
27
|
+
};
|
|
28
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
29
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
30
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
31
|
+
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;
|
|
32
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
33
|
+
};
|
|
34
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
35
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
36
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
37
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
38
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
39
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
40
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
41
|
+
});
|
|
42
|
+
};
|
|
43
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
44
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
45
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
46
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
47
|
+
function step(op) {
|
|
48
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
49
|
+
while (_) try {
|
|
50
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
51
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
52
|
+
switch (op[0]) {
|
|
53
|
+
case 0: case 1: t = op; break;
|
|
54
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
55
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
56
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
57
|
+
default:
|
|
58
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
59
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
60
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
61
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
62
|
+
if (t[2]) _.ops.pop();
|
|
63
|
+
_.trys.pop(); continue;
|
|
64
|
+
}
|
|
65
|
+
op = body.call(thisArg, _);
|
|
66
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
67
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
68
|
+
}
|
|
69
|
+
};
|
|
70
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
71
|
+
exports.TestController = exports.Test = void 0;
|
|
72
|
+
var entropic_bond_1 = require("entropic-bond");
|
|
73
|
+
var crud_controller_1 = require("./crud-controller");
|
|
74
|
+
var mockData = {
|
|
75
|
+
Test: {
|
|
76
|
+
test1: {
|
|
77
|
+
__className: 'Test',
|
|
78
|
+
id: 'test1',
|
|
79
|
+
testProp: 'Test prop 1'
|
|
80
|
+
},
|
|
81
|
+
test2: {
|
|
82
|
+
__className: 'Test',
|
|
83
|
+
id: 'test2',
|
|
84
|
+
testProp: 'Test prop 2'
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
var Test = /** @class */ (function (_super) {
|
|
89
|
+
__extends(Test, _super);
|
|
90
|
+
function Test() {
|
|
91
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
92
|
+
}
|
|
93
|
+
Object.defineProperty(Test.prototype, "testProp", {
|
|
94
|
+
get: function () {
|
|
95
|
+
return this._testProp;
|
|
96
|
+
},
|
|
97
|
+
set: function (value) {
|
|
98
|
+
this.changeProp('testProp', value);
|
|
99
|
+
},
|
|
100
|
+
enumerable: false,
|
|
101
|
+
configurable: true
|
|
102
|
+
});
|
|
103
|
+
__decorate([
|
|
104
|
+
entropic_bond_1.persistent
|
|
105
|
+
], Test.prototype, "_testProp", void 0);
|
|
106
|
+
Test = __decorate([
|
|
107
|
+
(0, entropic_bond_1.registerPersistentClass)('Test')
|
|
108
|
+
], Test);
|
|
109
|
+
return Test;
|
|
110
|
+
}(entropic_bond_1.EntropicComponent));
|
|
111
|
+
exports.Test = Test;
|
|
112
|
+
var TestController = /** @class */ (function (_super) {
|
|
113
|
+
__extends(TestController, _super);
|
|
114
|
+
function TestController() {
|
|
115
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
116
|
+
}
|
|
117
|
+
TestController.prototype.createDocument = function () {
|
|
118
|
+
return new Test();
|
|
119
|
+
};
|
|
120
|
+
TestController.prototype.getModel = function () {
|
|
121
|
+
return entropic_bond_1.Store.getModel('Test');
|
|
122
|
+
};
|
|
123
|
+
TestController.prototype.allRequiredPropertiesFilled = function () {
|
|
124
|
+
return true;
|
|
125
|
+
};
|
|
126
|
+
return TestController;
|
|
127
|
+
}(crud_controller_1.CrudController));
|
|
128
|
+
exports.TestController = TestController;
|
|
129
|
+
describe('Crud Controller', function () {
|
|
130
|
+
var controller;
|
|
131
|
+
var datasource;
|
|
132
|
+
var onProgress;
|
|
133
|
+
beforeEach(function () {
|
|
134
|
+
datasource = new entropic_bond_1.JsonDataSource(__assign({}, mockData));
|
|
135
|
+
entropic_bond_1.Store.useDataSource(datasource);
|
|
136
|
+
controller = new TestController();
|
|
137
|
+
onProgress = jest.fn();
|
|
138
|
+
controller.onProgress(onProgress);
|
|
139
|
+
});
|
|
140
|
+
describe('Long operations', function () {
|
|
141
|
+
beforeEach(function () {
|
|
142
|
+
datasource.simulateDelay(50);
|
|
143
|
+
});
|
|
144
|
+
it('should notify busy on delete', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
145
|
+
var promise;
|
|
146
|
+
return __generator(this, function (_a) {
|
|
147
|
+
switch (_a.label) {
|
|
148
|
+
case 0:
|
|
149
|
+
promise = controller.deleteDocument();
|
|
150
|
+
expect(onProgress).toHaveBeenLastCalledWith(expect.objectContaining({ busy: true }));
|
|
151
|
+
return [4 /*yield*/, promise];
|
|
152
|
+
case 1:
|
|
153
|
+
_a.sent();
|
|
154
|
+
expect(onProgress).toHaveBeenLastCalledWith(expect.objectContaining({ busy: false }));
|
|
155
|
+
return [2 /*return*/];
|
|
156
|
+
}
|
|
157
|
+
});
|
|
158
|
+
}); });
|
|
159
|
+
it('should notify busy on store', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
160
|
+
var promise;
|
|
161
|
+
return __generator(this, function (_a) {
|
|
162
|
+
switch (_a.label) {
|
|
163
|
+
case 0:
|
|
164
|
+
promise = controller.storeDocument();
|
|
165
|
+
expect(onProgress).toHaveBeenLastCalledWith(expect.objectContaining({ busy: true }));
|
|
166
|
+
return [4 /*yield*/, promise];
|
|
167
|
+
case 1:
|
|
168
|
+
_a.sent();
|
|
169
|
+
expect(onProgress).toHaveBeenLastCalledWith(expect.objectContaining({ busy: false }));
|
|
170
|
+
return [2 /*return*/];
|
|
171
|
+
}
|
|
172
|
+
});
|
|
173
|
+
}); });
|
|
174
|
+
});
|
|
175
|
+
});
|
|
176
|
+
//# sourceMappingURL=crud-controller.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
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
|
@@ -8,11 +8,11 @@ declare enum Mode {
|
|
|
8
8
|
}
|
|
9
9
|
export interface CrudCardProps<T extends Persistent> {
|
|
10
10
|
document: T;
|
|
11
|
-
onSelect
|
|
12
|
-
onDelete
|
|
11
|
+
onSelect?: (document: T) => void;
|
|
12
|
+
onDelete?: (document: T) => void;
|
|
13
13
|
}
|
|
14
14
|
export interface CrudContentViewProps<T extends Persistent> {
|
|
15
|
-
|
|
15
|
+
document: T;
|
|
16
16
|
submitButtonCaption: string;
|
|
17
17
|
onSubmit: (document: T) => void;
|
|
18
18
|
onCancel: () => void;
|
|
@@ -24,7 +24,7 @@ export interface CrudPanelLabels {
|
|
|
24
24
|
documentsInCollectionCaption: string;
|
|
25
25
|
noDocumentsFoundLabel: string;
|
|
26
26
|
}
|
|
27
|
-
export declare type Layout = 'formOrItems' | '
|
|
27
|
+
export declare type Layout = 'formOrItems' | 'itemsAlways' | 'formAndItems';
|
|
28
28
|
interface CrudPanelState<T extends Persistent> {
|
|
29
29
|
documents: T[];
|
|
30
30
|
mode: Mode;
|
|
@@ -38,6 +38,9 @@ interface CrudPanelProps<T extends Persistent> {
|
|
|
38
38
|
((props: CrudCardProps<T>) => ReactElement) | ReactElement<CrudCardProps<T>>
|
|
39
39
|
];
|
|
40
40
|
className?: string;
|
|
41
|
+
cardAddButton?: boolean | JSX.Element;
|
|
42
|
+
header?: string | JSX.Element;
|
|
43
|
+
footer?: string | JSX.Element;
|
|
41
44
|
}
|
|
42
45
|
export declare class CrudPanel<T extends Persistent> extends Component<CrudPanelProps<T>, CrudPanelState<T>> {
|
|
43
46
|
constructor(props: CrudPanelProps<T>);
|
package/lib/crud-panel.js
CHANGED
|
@@ -82,6 +82,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
82
82
|
};
|
|
83
83
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
84
84
|
exports.CrudPanel = void 0;
|
|
85
|
+
var entropic_bond_1 = require("entropic-bond");
|
|
85
86
|
var react_1 = __importStar(require("react"));
|
|
86
87
|
var Mode;
|
|
87
88
|
(function (Mode) {
|
|
@@ -95,7 +96,8 @@ var CrudPanel = /** @class */ (function (_super) {
|
|
|
95
96
|
var _this = _super.call(this, props) || this;
|
|
96
97
|
_this.state = {
|
|
97
98
|
documents: [],
|
|
98
|
-
mode: Mode.normal
|
|
99
|
+
mode: Mode.normal,
|
|
100
|
+
// document: props.controller.newDocument()
|
|
99
101
|
};
|
|
100
102
|
return _this;
|
|
101
103
|
}
|
|
@@ -119,7 +121,7 @@ var CrudPanel = /** @class */ (function (_super) {
|
|
|
119
121
|
});
|
|
120
122
|
_a = this.setState;
|
|
121
123
|
_b = {};
|
|
122
|
-
return [4 /*yield*/, controller.
|
|
124
|
+
return [4 /*yield*/, controller.documentCollection()];
|
|
123
125
|
case 1:
|
|
124
126
|
_a.apply(this, [(_b.documents = _c.sent(),
|
|
125
127
|
_b)]);
|
|
@@ -132,35 +134,36 @@ var CrudPanel = /** @class */ (function (_super) {
|
|
|
132
134
|
this.unsubscriber();
|
|
133
135
|
};
|
|
134
136
|
CrudPanel.prototype.newDocument = function () {
|
|
135
|
-
|
|
136
|
-
controller.createDocument();
|
|
137
|
+
this.props.controller.newDocument();
|
|
137
138
|
this.setState({
|
|
138
|
-
mode: Mode.add
|
|
139
|
+
mode: Mode.add,
|
|
140
|
+
// document: controller.newDocument()
|
|
139
141
|
});
|
|
140
142
|
};
|
|
141
143
|
CrudPanel.prototype.editDocument = function (document) {
|
|
142
|
-
|
|
143
|
-
controller.setDocument(document);
|
|
144
|
+
this.props.controller.setDocument(document);
|
|
144
145
|
this.setState({
|
|
146
|
+
// document,
|
|
145
147
|
mode: Mode.edit
|
|
146
148
|
});
|
|
147
149
|
};
|
|
148
150
|
CrudPanel.prototype.storeDocument = function (document) {
|
|
149
151
|
return __awaiter(this, void 0, void 0, function () {
|
|
150
|
-
var _a, controller, layout;
|
|
152
|
+
var _a, controller, layout, controller1;
|
|
151
153
|
return __generator(this, function (_b) {
|
|
152
154
|
switch (_b.label) {
|
|
153
155
|
case 0:
|
|
154
156
|
_a = this.props, controller = _a.controller, layout = _a.layout;
|
|
155
|
-
|
|
157
|
+
controller1 = controller.setDocument(document);
|
|
158
|
+
return [4 /*yield*/, controller.storeDocument()];
|
|
156
159
|
case 1:
|
|
157
160
|
_b.sent();
|
|
158
|
-
if (layout === '
|
|
161
|
+
if (layout === 'formAndItems') {
|
|
159
162
|
this.newDocument();
|
|
160
163
|
}
|
|
161
164
|
else {
|
|
162
165
|
this.setState({
|
|
163
|
-
mode: Mode.normal
|
|
166
|
+
mode: Mode.normal,
|
|
164
167
|
});
|
|
165
168
|
}
|
|
166
169
|
return [2 /*return*/];
|
|
@@ -170,23 +173,25 @@ var CrudPanel = /** @class */ (function (_super) {
|
|
|
170
173
|
};
|
|
171
174
|
CrudPanel.prototype.invokeContentViewChild = function (labels) {
|
|
172
175
|
var _this = this;
|
|
173
|
-
var _a = this.props, children = _a.children,
|
|
176
|
+
var _a = this.props, children = _a.children, layout = _a.layout, controller = _a.controller;
|
|
174
177
|
var mode = this.state.mode;
|
|
175
178
|
var addButtonLabel = labels.addButtonLabel, updateButtonLabel = labels.updateButtonLabel;
|
|
176
|
-
var closeOnCancel = layout !== '
|
|
179
|
+
var closeOnCancel = layout !== 'formAndItems';
|
|
180
|
+
if (!document)
|
|
181
|
+
return;
|
|
177
182
|
var props = {
|
|
178
|
-
|
|
183
|
+
document: controller.document,
|
|
179
184
|
submitButtonCaption: mode == Mode.edit ? updateButtonLabel : addButtonLabel,
|
|
180
185
|
onSubmit: function (document) { return _this.storeDocument(document); },
|
|
181
186
|
onCancel: closeOnCancel
|
|
182
187
|
? function () { return _this.setState({ mode: Mode.normal }); }
|
|
183
|
-
: function () { return _this.newDocument(); }
|
|
188
|
+
: function () { return _this.newDocument(); },
|
|
184
189
|
};
|
|
185
190
|
if (typeof children[0] === 'function') {
|
|
186
|
-
return react_1.cloneElement(children[0](props), { key: controller.document.id });
|
|
191
|
+
return (0, react_1.cloneElement)(children[0](props), { key: controller.document.id });
|
|
187
192
|
}
|
|
188
193
|
else {
|
|
189
|
-
return react_1.cloneElement(children[0], __assign({ key: controller.document.id }, props));
|
|
194
|
+
return (0, react_1.cloneElement)(children[0], __assign({ key: controller.document.id }, props));
|
|
190
195
|
}
|
|
191
196
|
};
|
|
192
197
|
CrudPanel.prototype.invokeDetailViewChild = function (document) {
|
|
@@ -195,36 +200,42 @@ var CrudPanel = /** @class */ (function (_super) {
|
|
|
195
200
|
var props = {
|
|
196
201
|
document: document,
|
|
197
202
|
onSelect: function (document) { return _this.editDocument(document); },
|
|
198
|
-
onDelete: function (document) { return controller.
|
|
203
|
+
onDelete: function (document) { return controller.setDocument(document).deleteDocument(); }
|
|
199
204
|
};
|
|
200
205
|
if (typeof children[1] === 'function') {
|
|
201
|
-
return react_1.cloneElement(children[1](props), { key: document.id });
|
|
206
|
+
return (0, react_1.cloneElement)(children[1](props), { key: document.id });
|
|
202
207
|
}
|
|
203
208
|
else {
|
|
204
|
-
return react_1.cloneElement(children[1], __assign({ key: document.id }, props));
|
|
209
|
+
return (0, react_1.cloneElement)(children[1], __assign({ key: document.id }, props));
|
|
205
210
|
}
|
|
206
211
|
};
|
|
207
212
|
CrudPanel.prototype.render = function () {
|
|
208
213
|
var _this = this;
|
|
209
|
-
var _a
|
|
210
|
-
var _b = this.
|
|
214
|
+
var _a;
|
|
215
|
+
var _b = this.state, mode = _b.mode, documents = _b.documents;
|
|
216
|
+
var _c = this.props, className = _c.className, cardAddButton = _c.cardAddButton, controller = _c.controller;
|
|
217
|
+
var docClassName = (0, entropic_bond_1.snakeCase)((_a = controller.document) === null || _a === void 0 ? void 0 : _a.className);
|
|
211
218
|
var labels = this.props.labels;
|
|
212
219
|
var layout = this.props.layout || 'itemsAlways';
|
|
213
220
|
if (typeof labels === 'function')
|
|
214
221
|
labels = labels(controller);
|
|
215
222
|
var addNewDocumentLabel = labels.addNewDocumentLabel, documentsInCollectionCaption = labels.documentsInCollectionCaption, noDocumentsFoundLabel = labels.noDocumentsFoundLabel;
|
|
216
|
-
return (react_1.default.createElement("div", { className: "crud-panel "
|
|
217
|
-
mode === Mode.normal && layout !== '
|
|
223
|
+
return (react_1.default.createElement("div", { className: "crud-panel ".concat(docClassName, " ").concat(className || '') },
|
|
224
|
+
mode === Mode.normal && layout !== 'formAndItems' && !cardAddButton &&
|
|
218
225
|
react_1.default.createElement("button", { onClick: function () { return _this.newDocument(); } }, addNewDocumentLabel),
|
|
219
|
-
(layout === '
|
|
220
|
-
|| mode === Mode.add || mode === Mode.edit) &&
|
|
226
|
+
(layout === 'formAndItems' || mode === Mode.add || mode === Mode.edit) &&
|
|
221
227
|
react_1.default.createElement("div", { className: "content-panel" }, this.invokeContentViewChild(labels)),
|
|
222
228
|
(layout === 'itemsAlways' || layout === 'formAndItems' || mode === Mode.normal) &&
|
|
223
229
|
react_1.default.createElement("div", { className: "collection-panel" },
|
|
224
230
|
react_1.default.createElement("h3", null, documentsInCollectionCaption),
|
|
225
|
-
react_1.default.createElement("div", { className: "documents" },
|
|
226
|
-
|
|
227
|
-
|
|
231
|
+
react_1.default.createElement("div", { className: "documents" },
|
|
232
|
+
cardAddButton &&
|
|
233
|
+
react_1.default.createElement("div", { className: "card-add-button clickable", onClick: function () { return _this.newDocument(); } },
|
|
234
|
+
cardAddButton,
|
|
235
|
+
addNewDocumentLabel),
|
|
236
|
+
documents.length
|
|
237
|
+
? documents.map(function (document) { return _this.invokeDetailViewChild(document); })
|
|
238
|
+
: react_1.default.createElement("p", null, noDocumentsFoundLabel)))));
|
|
228
239
|
};
|
|
229
240
|
return CrudPanel;
|
|
230
241
|
}(react_1.Component));
|
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
|
@@ -37,12 +37,6 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
37
37
|
}) : function(o, v) {
|
|
38
38
|
o["default"] = v;
|
|
39
39
|
});
|
|
40
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
41
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
42
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
43
|
-
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;
|
|
44
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
45
|
-
};
|
|
46
40
|
var __importStar = (this && this.__importStar) || function (mod) {
|
|
47
41
|
if (mod && mod.__esModule) return mod;
|
|
48
42
|
var result = {};
|
|
@@ -95,7 +89,7 @@ var react_2 = require("@testing-library/react");
|
|
|
95
89
|
var user_event_1 = __importDefault(require("@testing-library/user-event"));
|
|
96
90
|
var entropic_bond_1 = require("entropic-bond");
|
|
97
91
|
var crud_panel_1 = require("./crud-panel");
|
|
98
|
-
var
|
|
92
|
+
var crud_controller_spec_1 = require("./crud-controller.spec");
|
|
99
93
|
var crudLabels = {
|
|
100
94
|
addNewDocumentLabel: 'Add new document',
|
|
101
95
|
addButtonLabel: 'Add',
|
|
@@ -122,50 +116,22 @@ var mockData = {
|
|
|
122
116
|
}
|
|
123
117
|
}
|
|
124
118
|
};
|
|
125
|
-
var Test = /** @class */ (function (_super) {
|
|
126
|
-
__extends(Test, _super);
|
|
127
|
-
function Test() {
|
|
128
|
-
return _super !== null && _super.apply(this, arguments) || this;
|
|
129
|
-
}
|
|
130
|
-
Object.defineProperty(Test.prototype, "testProp", {
|
|
131
|
-
get: function () {
|
|
132
|
-
return this._testProp;
|
|
133
|
-
},
|
|
134
|
-
set: function (value) {
|
|
135
|
-
this._testProp = value;
|
|
136
|
-
},
|
|
137
|
-
enumerable: false,
|
|
138
|
-
configurable: true
|
|
139
|
-
});
|
|
140
|
-
__decorate([
|
|
141
|
-
entropic_bond_1.persistent
|
|
142
|
-
], Test.prototype, "_testProp", void 0);
|
|
143
|
-
Test = __decorate([
|
|
144
|
-
entropic_bond_1.registerPersistentClass('Test')
|
|
145
|
-
], Test);
|
|
146
|
-
return Test;
|
|
147
|
-
}(entropic_bond_1.Persistent));
|
|
148
|
-
var TestController = /** @class */ (function (_super) {
|
|
149
|
-
__extends(TestController, _super);
|
|
150
|
-
function TestController() {
|
|
151
|
-
return _super.call(this, new Test()) || this;
|
|
152
|
-
}
|
|
153
|
-
TestController.prototype.getModel = function () {
|
|
154
|
-
return entropic_bond_1.Store.getModel('Test');
|
|
155
|
-
};
|
|
156
|
-
return TestController;
|
|
157
|
-
}(crud_controller_1.CrudController));
|
|
158
119
|
var TestView = /** @class */ (function (_super) {
|
|
159
120
|
__extends(TestView, _super);
|
|
160
121
|
function TestView() {
|
|
161
122
|
return _super !== null && _super.apply(this, arguments) || this;
|
|
162
123
|
}
|
|
124
|
+
TestView.prototype.componentDidMount = function () {
|
|
125
|
+
var _this = this;
|
|
126
|
+
var document = this.props.document;
|
|
127
|
+
document.onChange(function () { return _this.setState({}); });
|
|
128
|
+
};
|
|
163
129
|
TestView.prototype.render = function () {
|
|
164
|
-
var _a = this.props,
|
|
130
|
+
var _a = this.props, document = _a.document, onCancel = _a.onCancel, onSubmit = _a.onSubmit, submitButtonCaption = _a.submitButtonCaption;
|
|
165
131
|
return (react_1.default.createElement("div", null,
|
|
166
132
|
react_1.default.createElement("h1", null, viewHeader),
|
|
167
|
-
react_1.default.createElement("input", { placeholder: testViewPlaceholder, value:
|
|
168
|
-
react_1.default.createElement("button", { onClick: function () { return onSubmit(
|
|
133
|
+
react_1.default.createElement("input", { placeholder: testViewPlaceholder, value: document.testProp || '', onChange: function (e) { return document.testProp = e.target.value; } }),
|
|
134
|
+
react_1.default.createElement("button", { onClick: function () { return onSubmit(document); } }, submitButtonCaption),
|
|
169
135
|
react_1.default.createElement("button", { onClick: onCancel }, cancelButtonCaption)));
|
|
170
136
|
};
|
|
171
137
|
return TestView;
|
|
@@ -188,32 +154,49 @@ describe('Crud Panel', function () {
|
|
|
188
154
|
var controller;
|
|
189
155
|
var notifySpy;
|
|
190
156
|
var renderResult;
|
|
157
|
+
var datasource;
|
|
191
158
|
beforeEach(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
192
159
|
return __generator(this, function (_a) {
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
160
|
+
switch (_a.label) {
|
|
161
|
+
case 0:
|
|
162
|
+
datasource = new entropic_bond_1.JsonDataSource(__assign({}, mockData));
|
|
163
|
+
entropic_bond_1.Store.useDataSource(datasource);
|
|
164
|
+
controller = new crud_controller_spec_1.TestController();
|
|
165
|
+
notifySpy = jest.fn();
|
|
166
|
+
controller.onChange(notifySpy);
|
|
167
|
+
renderResult = (0, react_2.render)(react_1.default.createElement(crud_panel_1.CrudPanel, { controller: controller, labels: crudLabels },
|
|
168
|
+
react_1.default.createElement(TestView, null),
|
|
169
|
+
react_1.default.createElement(TestCard, null)));
|
|
170
|
+
return [4 /*yield*/, datasource.wait()];
|
|
171
|
+
case 1:
|
|
172
|
+
_a.sent();
|
|
173
|
+
return [2 /*return*/];
|
|
174
|
+
}
|
|
201
175
|
});
|
|
202
176
|
}); });
|
|
177
|
+
it('should show add button', function () {
|
|
178
|
+
expect(react_2.screen.getByRole('button', { name: crudLabels.addNewDocumentLabel })).toBeInTheDocument();
|
|
179
|
+
});
|
|
203
180
|
it('should show existing documents', function () {
|
|
204
181
|
var docs = react_2.screen.getByRole('heading', { name: crudLabels.documentsInCollectionCaption }).nextElementSibling;
|
|
205
|
-
expect(react_2.within(docs).getByText('Test prop 1')).toBeInTheDocument();
|
|
206
|
-
expect(react_2.within(docs).getByText('Test prop 2')).toBeInTheDocument();
|
|
182
|
+
expect((0, react_2.within)(docs).getByText('Test prop 1')).toBeInTheDocument();
|
|
183
|
+
expect((0, react_2.within)(docs).getByText('Test prop 2')).toBeInTheDocument();
|
|
207
184
|
expect(docs.children.length).toBe(2);
|
|
208
185
|
});
|
|
209
186
|
describe('Accepts children as functions', function () {
|
|
210
187
|
beforeEach(function () {
|
|
211
|
-
renderResult.rerender(react_1.default.createElement(crud_panel_1.CrudPanel, { controller: controller, labels: crudLabels
|
|
188
|
+
renderResult.rerender(react_1.default.createElement(crud_panel_1.CrudPanel, { controller: controller, labels: crudLabels },
|
|
212
189
|
function (props) { return react_1.default.createElement(TestView, __assign({}, props)); },
|
|
213
190
|
function (props) { return react_1.default.createElement(TestCard, __assign({}, props)); }));
|
|
214
191
|
});
|
|
215
|
-
it('should show
|
|
216
|
-
expect(react_2.screen.
|
|
192
|
+
it('should show add button', function () {
|
|
193
|
+
expect(react_2.screen.getByRole('button', { name: crudLabels.addNewDocumentLabel })).toBeInTheDocument();
|
|
194
|
+
});
|
|
195
|
+
it('should show existing documents', function () {
|
|
196
|
+
var docs = react_2.screen.getByRole('heading', { name: crudLabels.documentsInCollectionCaption }).nextElementSibling;
|
|
197
|
+
expect((0, react_2.within)(docs).getByText('Test prop 1')).toBeInTheDocument();
|
|
198
|
+
expect((0, react_2.within)(docs).getByText('Test prop 2')).toBeInTheDocument();
|
|
199
|
+
expect(docs.children.length).toBe(2);
|
|
217
200
|
expect(react_2.screen.getAllByRole('button', { name: editButtonLabel })[0]).toBeInTheDocument();
|
|
218
201
|
expect(react_2.screen.getAllByRole('button', { name: deleteButtonLabel })[0]).toBeInTheDocument();
|
|
219
202
|
});
|
|
@@ -244,7 +227,7 @@ describe('Crud Panel', function () {
|
|
|
244
227
|
user_event_1.default.click(react_2.screen.getByRole('button', { name: crudLabels.addButtonLabel }));
|
|
245
228
|
docs = react_2.screen.getByRole('heading', { name: crudLabels.documentsInCollectionCaption }).nextElementSibling;
|
|
246
229
|
_a = expect;
|
|
247
|
-
return [4 /*yield*/, react_2.within(docs).findByText('New and fancy Application')];
|
|
230
|
+
return [4 /*yield*/, (0, react_2.within)(docs).findByText('New and fancy Application')];
|
|
248
231
|
case 2:
|
|
249
232
|
_a.apply(void 0, [_b.sent()]).toBeInTheDocument();
|
|
250
233
|
return [2 /*return*/];
|
|
@@ -265,12 +248,12 @@ describe('Crud Panel', function () {
|
|
|
265
248
|
input = _b.sent();
|
|
266
249
|
user_event_1.default.paste(input, ' Edited');
|
|
267
250
|
user_event_1.default.click(react_2.screen.getByRole('button', { name: crudLabels.updateButtonLabel }));
|
|
268
|
-
return [4 /*yield*/, react_2.waitFor(function () { return expect(notifySpy).toHaveBeenCalled(); })];
|
|
251
|
+
return [4 /*yield*/, (0, react_2.waitFor)(function () { return expect(notifySpy).toHaveBeenCalled(); })];
|
|
269
252
|
case 2:
|
|
270
253
|
_b.sent();
|
|
271
254
|
docs = react_2.screen.getByRole('heading', { name: crudLabels.documentsInCollectionCaption }).nextElementSibling;
|
|
272
255
|
_a = expect;
|
|
273
|
-
return [4 /*yield*/, react_2.within(docs).findByText('Test prop 1 Edited')];
|
|
256
|
+
return [4 /*yield*/, (0, react_2.within)(docs).findByText('Test prop 1 Edited')];
|
|
274
257
|
case 3:
|
|
275
258
|
_a.apply(void 0, [_b.sent()]).toBeInTheDocument();
|
|
276
259
|
return [2 /*return*/];
|
|
@@ -285,7 +268,7 @@ describe('Crud Panel', function () {
|
|
|
285
268
|
expect(react_2.screen.queryByText('Test prop 2')).toBeInTheDocument();
|
|
286
269
|
deleteButton = react_2.screen.getAllByRole('button', { name: deleteButtonLabel });
|
|
287
270
|
user_event_1.default.click(deleteButton[1]);
|
|
288
|
-
return [4 /*yield*/, react_2.waitFor(function () { return expect(notifySpy).toHaveBeenCalled(); })];
|
|
271
|
+
return [4 /*yield*/, (0, react_2.waitFor)(function () { return expect(notifySpy).toHaveBeenCalled(); })];
|
|
289
272
|
case 1:
|
|
290
273
|
_a.sent();
|
|
291
274
|
expect(react_2.screen.queryByText('Test prop 2')).not.toBeInTheDocument();
|
|
@@ -338,25 +321,28 @@ describe('Crud Panel', function () {
|
|
|
338
321
|
expect(formView()).toBeInTheDocument();
|
|
339
322
|
});
|
|
340
323
|
});
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
react_1.default.createElement(
|
|
352
|
-
|
|
353
|
-
react_1.default.createElement("
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
324
|
+
describe('Labels', function () {
|
|
325
|
+
it('should allow to pass labels as a function', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
326
|
+
var labels, documentClassName;
|
|
327
|
+
return __generator(this, function (_a) {
|
|
328
|
+
labels = function (controller) { return Object.entries(crudLabels)
|
|
329
|
+
.reduce(function (prev, _a) {
|
|
330
|
+
var key = _a[0], label = _a[1];
|
|
331
|
+
prev[key] = "".concat(label, " ").concat(controller.document.className);
|
|
332
|
+
return prev;
|
|
333
|
+
}, {}); };
|
|
334
|
+
renderResult.rerender(react_1.default.createElement(crud_panel_1.CrudPanel, { controller: controller, labels: labels },
|
|
335
|
+
react_1.default.createElement(TestView, null),
|
|
336
|
+
function (props) { return (react_1.default.createElement("div", null,
|
|
337
|
+
react_1.default.createElement("p", null, props.document.testProp),
|
|
338
|
+
react_1.default.createElement("button", { onClick: function () { return props.onSelect(props.document); } }, editButtonLabel),
|
|
339
|
+
react_1.default.createElement("button", { onClick: function () { return props.onDelete(props.document); } }, deleteButtonLabel))); }));
|
|
340
|
+
documentClassName = controller.createDocument().className;
|
|
341
|
+
expect(react_2.screen.getByText("".concat(crudLabels.addNewDocumentLabel, " ").concat(documentClassName))).toBeInTheDocument();
|
|
342
|
+
expect(react_2.screen.getByText("".concat(crudLabels.documentsInCollectionCaption, " ").concat(documentClassName))).toBeInTheDocument();
|
|
343
|
+
return [2 /*return*/];
|
|
344
|
+
});
|
|
345
|
+
}); });
|
|
346
|
+
});
|
|
361
347
|
});
|
|
362
348
|
//# sourceMappingURL=crud-panel.spec.js.map
|
|
@@ -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":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Callback } from 'entropic-bond';
|
|
2
|
+
interface ProgressStage {
|
|
3
|
+
name: string;
|
|
4
|
+
progress: number;
|
|
5
|
+
total: number;
|
|
6
|
+
}
|
|
7
|
+
interface ProgressStageCollection {
|
|
8
|
+
[stageName: string]: ProgressStage;
|
|
9
|
+
}
|
|
10
|
+
export interface ProgressEvent {
|
|
11
|
+
busy: boolean;
|
|
12
|
+
stages: ProgressStageCollection;
|
|
13
|
+
overallProgress: number;
|
|
14
|
+
}
|
|
15
|
+
export declare class ProgressController {
|
|
16
|
+
notifyBusy(busy: boolean, name?: string): void;
|
|
17
|
+
pushStage(stage: ProgressStage): void;
|
|
18
|
+
onProgress(cb: Callback<ProgressEvent>): import("entropic-bond").Unsubscriber;
|
|
19
|
+
private _stages;
|
|
20
|
+
private _onProgress;
|
|
21
|
+
}
|
|
22
|
+
export {};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ProgressController = void 0;
|
|
4
|
+
var entropic_bond_1 = require("entropic-bond");
|
|
5
|
+
var ProgressController = /** @class */ (function () {
|
|
6
|
+
function ProgressController() {
|
|
7
|
+
this._stages = {};
|
|
8
|
+
this._onProgress = new entropic_bond_1.Observable();
|
|
9
|
+
}
|
|
10
|
+
ProgressController.prototype.notifyBusy = function (busy, name) {
|
|
11
|
+
this.pushStage({
|
|
12
|
+
name: name,
|
|
13
|
+
progress: busy ? 0 : 1, total: 1
|
|
14
|
+
});
|
|
15
|
+
};
|
|
16
|
+
ProgressController.prototype.pushStage = function (stage) {
|
|
17
|
+
this._stages[stage.name] = stage;
|
|
18
|
+
var overallProgress = Object.values(this._stages).reduce(function (prev, stage, _i, arr) {
|
|
19
|
+
return prev + stage.progress / stage.total / arr.length;
|
|
20
|
+
}, 0);
|
|
21
|
+
this._onProgress.notify({
|
|
22
|
+
busy: overallProgress < 1,
|
|
23
|
+
overallProgress: overallProgress,
|
|
24
|
+
stages: this._stages
|
|
25
|
+
});
|
|
26
|
+
if (overallProgress >= 1)
|
|
27
|
+
this._stages = {};
|
|
28
|
+
};
|
|
29
|
+
ProgressController.prototype.onProgress = function (cb) {
|
|
30
|
+
return this._onProgress.subscribe(cb);
|
|
31
|
+
};
|
|
32
|
+
return ProgressController;
|
|
33
|
+
}());
|
|
34
|
+
exports.ProgressController = ProgressController;
|
|
35
|
+
//# sourceMappingURL=progress-controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progress-controller.js","sourceRoot":"","sources":["../src/progress-controller.ts"],"names":[],"mappings":";;;AAAA,+CAAoD;AAkBpD;IAAA;QA2BS,YAAO,GAA4B,EAAE,CAAA;QACrC,gBAAW,GAA8B,IAAI,0BAAU,EAAiB,CAAA;IACjF,CAAC;IA5BA,uCAAU,GAAV,UAAY,IAAa,EAAE,IAAa;QACvC,IAAI,CAAC,SAAS,CAAC;YACd,IAAI,MAAA;YAAE,QAAQ,EAAE,IAAI,CAAA,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;SACrC,CAAC,CAAA;IACH,CAAC;IAED,sCAAS,GAAT,UAAW,KAAoB;QAC9B,IAAI,CAAC,OAAO,CAAE,KAAK,CAAC,IAAI,CAAE,GAAG,KAAK,CAAA;QAElC,IAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAE,IAAI,CAAC,OAAO,CAAE,CAAC,MAAM,CAAE,UAAC,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG;YAClF,OAAO,IAAI,GAAG,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,MAAM,CAAA;QACxD,CAAC,EAAE,CAAC,CAAC,CAAA;QAEL,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;YACvB,IAAI,EAAE,eAAe,GAAG,CAAC;YACzB,eAAe,iBAAA;YACf,MAAM,EAAE,IAAI,CAAC,OAAO;SACpB,CAAC,CAAA;QAEF,IAAK,eAAe,IAAI,CAAC;YAAG,IAAI,CAAC,OAAO,GAAG,EAAE,CAAA;IAC9C,CAAC;IAED,uCAAU,GAAV,UAAY,EAA2B;QACtC,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,CAAE,EAAE,CAAE,CAAA;IACxC,CAAC;IAIF,yBAAC;AAAD,CAAC,AA7BD,IA6BC;AA7BY,gDAAkB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var progress_controller_1 = require("./progress-controller");
|
|
4
|
+
describe('Progress Controller', function () {
|
|
5
|
+
var observer;
|
|
6
|
+
var controller;
|
|
7
|
+
beforeEach(function () {
|
|
8
|
+
observer = jest.fn();
|
|
9
|
+
controller = new progress_controller_1.ProgressController();
|
|
10
|
+
controller.onProgress(observer);
|
|
11
|
+
});
|
|
12
|
+
describe('Single stage', function () {
|
|
13
|
+
it('should notify on push stage', function () {
|
|
14
|
+
var stage = { name: 'test stage', progress: 0, total: 1 };
|
|
15
|
+
controller.pushStage(stage);
|
|
16
|
+
expect(observer).toHaveBeenCalledWith({
|
|
17
|
+
busy: true,
|
|
18
|
+
overallProgress: 0,
|
|
19
|
+
stages: { 'test stage': stage }
|
|
20
|
+
});
|
|
21
|
+
});
|
|
22
|
+
it('should advance progress', function () {
|
|
23
|
+
var stage = { name: 'test stage', progress: 0, total: 1 };
|
|
24
|
+
controller.pushStage(stage);
|
|
25
|
+
stage.progress = 0.5;
|
|
26
|
+
controller.pushStage(stage);
|
|
27
|
+
expect(observer).toHaveBeenLastCalledWith({
|
|
28
|
+
busy: true,
|
|
29
|
+
overallProgress: 0.5,
|
|
30
|
+
stages: { 'test stage': stage }
|
|
31
|
+
});
|
|
32
|
+
});
|
|
33
|
+
it('should notify not busy on completion', function () {
|
|
34
|
+
var stage = { name: 'test stage', progress: 0, total: 1 };
|
|
35
|
+
controller.pushStage(stage);
|
|
36
|
+
stage.progress = 0.5;
|
|
37
|
+
controller.pushStage(stage);
|
|
38
|
+
stage.progress = 1;
|
|
39
|
+
controller.pushStage(stage);
|
|
40
|
+
expect(observer).toHaveBeenLastCalledWith({
|
|
41
|
+
busy: false,
|
|
42
|
+
overallProgress: 1,
|
|
43
|
+
stages: { 'test stage': stage }
|
|
44
|
+
});
|
|
45
|
+
});
|
|
46
|
+
it('should notify only new stages after completion', function () {
|
|
47
|
+
var stage = { name: 'test stage', progress: 1, total: 1 };
|
|
48
|
+
controller.pushStage(stage);
|
|
49
|
+
expect(observer).toHaveBeenLastCalledWith(expect.objectContaining({ busy: false }));
|
|
50
|
+
controller.pushStage({ name: 'new operation stage', progress: 0, total: 1 });
|
|
51
|
+
expect(observer).toHaveBeenLastCalledWith({
|
|
52
|
+
busy: true,
|
|
53
|
+
overallProgress: 0,
|
|
54
|
+
stages: { 'new operation stage': expect.anything() }
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
it('should accept ratios different from 1', function () {
|
|
58
|
+
var stage = { name: 'test stage', progress: 30, total: 100 };
|
|
59
|
+
controller.pushStage(stage);
|
|
60
|
+
expect(observer).toHaveBeenCalledWith({
|
|
61
|
+
busy: true,
|
|
62
|
+
overallProgress: 0.3,
|
|
63
|
+
stages: { 'test stage': stage }
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
});
|
|
67
|
+
describe('Multiple stages', function () {
|
|
68
|
+
it('should accumulate subsequent pushed stages', function () {
|
|
69
|
+
var stage1 = { name: 'test stage1', progress: 0, total: 1 };
|
|
70
|
+
var stage2 = { name: 'test stage2', progress: 0, total: 1 };
|
|
71
|
+
controller.pushStage(stage1);
|
|
72
|
+
expect(observer).toHaveBeenLastCalledWith({
|
|
73
|
+
busy: true,
|
|
74
|
+
overallProgress: 0,
|
|
75
|
+
stages: { 'test stage1': stage1 }
|
|
76
|
+
});
|
|
77
|
+
controller.pushStage(stage2);
|
|
78
|
+
expect(observer).toHaveBeenLastCalledWith({
|
|
79
|
+
busy: true,
|
|
80
|
+
overallProgress: 0,
|
|
81
|
+
stages: {
|
|
82
|
+
'test stage1': stage1,
|
|
83
|
+
'test stage2': stage2
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
});
|
|
87
|
+
it('should calculate overall progress from multiple stages', function () {
|
|
88
|
+
var stage1 = { name: 'test stage1', progress: 0.1, total: 1 };
|
|
89
|
+
var stage2 = { name: 'test stage2', progress: 0.5, total: 1 };
|
|
90
|
+
controller.pushStage(stage1);
|
|
91
|
+
controller.pushStage(stage2);
|
|
92
|
+
expect(observer).toHaveBeenLastCalledWith({
|
|
93
|
+
busy: true,
|
|
94
|
+
overallProgress: 0.3,
|
|
95
|
+
stages: expect.anything()
|
|
96
|
+
});
|
|
97
|
+
});
|
|
98
|
+
it('should calculate overall progress from multiple stages with some stages finished', function () {
|
|
99
|
+
var stage1 = { name: 'test stage1', progress: 0.1, total: 1 };
|
|
100
|
+
var stage2 = { name: 'test stage2', progress: 0.5, total: 1 };
|
|
101
|
+
controller.pushStage(stage1);
|
|
102
|
+
controller.pushStage(stage2);
|
|
103
|
+
stage1.progress = 1;
|
|
104
|
+
controller.pushStage(stage1);
|
|
105
|
+
expect(observer).toHaveBeenLastCalledWith({
|
|
106
|
+
busy: true,
|
|
107
|
+
overallProgress: 0.75,
|
|
108
|
+
stages: expect.anything()
|
|
109
|
+
});
|
|
110
|
+
});
|
|
111
|
+
it('should notify not busy when all stages finished', function () {
|
|
112
|
+
var stage1 = { name: 'test stage1', progress: 0.1, total: 1 };
|
|
113
|
+
var stage2 = { name: 'test stage2', progress: 0.5, total: 1 };
|
|
114
|
+
controller.pushStage(stage1);
|
|
115
|
+
controller.pushStage(stage2);
|
|
116
|
+
stage1.progress = 1;
|
|
117
|
+
controller.pushStage(stage1);
|
|
118
|
+
stage2.progress = 1;
|
|
119
|
+
controller.pushStage(stage2);
|
|
120
|
+
expect(observer).toHaveBeenLastCalledWith({
|
|
121
|
+
busy: false,
|
|
122
|
+
overallProgress: 1,
|
|
123
|
+
stages: expect.anything()
|
|
124
|
+
});
|
|
125
|
+
});
|
|
126
|
+
it('should accept progress with different ratios', function () {
|
|
127
|
+
var stage1 = { name: 'test stage1', progress: 0.1, total: 1 };
|
|
128
|
+
var stage2 = { name: 'test stage2', progress: 50, total: 100 };
|
|
129
|
+
controller.pushStage(stage1);
|
|
130
|
+
controller.pushStage(stage2);
|
|
131
|
+
expect(observer).toHaveBeenLastCalledWith({
|
|
132
|
+
busy: true,
|
|
133
|
+
overallProgress: 0.3,
|
|
134
|
+
stages: expect.anything()
|
|
135
|
+
});
|
|
136
|
+
});
|
|
137
|
+
});
|
|
138
|
+
});
|
|
139
|
+
//# sourceMappingURL=progress-controller.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progress-controller.spec.js","sourceRoot":"","sources":["../src/progress-controller.spec.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@entropic-bond/crud-panel",
|
|
3
|
-
"version": "1.0
|
|
3
|
+
"version": "2.1.0",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public",
|
|
6
6
|
"branches": [
|
|
@@ -44,23 +44,23 @@
|
|
|
44
44
|
},
|
|
45
45
|
"homepage": "https://github.com/entropic-bond/crud-panel#readme",
|
|
46
46
|
"devDependencies": {
|
|
47
|
-
"@semantic-release/changelog": "^
|
|
48
|
-
"@semantic-release/git": "^
|
|
49
|
-
"@testing-library/jest-dom": "^5.
|
|
50
|
-
"@testing-library/react": "^12.
|
|
51
|
-
"@testing-library/user-event": "^13.
|
|
52
|
-
"@types/jest": "^
|
|
53
|
-
"@types/react": "^17.0.
|
|
54
|
-
"@types/react-dom": "^17.0.
|
|
47
|
+
"@semantic-release/changelog": "^6.0.1",
|
|
48
|
+
"@semantic-release/git": "^10.0.1",
|
|
49
|
+
"@testing-library/jest-dom": "^5.16.1",
|
|
50
|
+
"@testing-library/react": "^12.1.2",
|
|
51
|
+
"@testing-library/user-event": "^13.5.0",
|
|
52
|
+
"@types/jest": "^27.4.0",
|
|
53
|
+
"@types/react": "^17.0.38",
|
|
54
|
+
"@types/react-dom": "^17.0.11",
|
|
55
55
|
"fetch-mock": "^9.11.0",
|
|
56
56
|
"git-branch-is": "^4.0.0",
|
|
57
|
-
"husky": "^
|
|
58
|
-
"jest": "^27.
|
|
57
|
+
"husky": "^7.0.4",
|
|
58
|
+
"jest": "^27.4.7",
|
|
59
59
|
"react": "^17.0.2",
|
|
60
60
|
"react-dom": "^17.0.2",
|
|
61
|
-
"semantic-release": "^
|
|
62
|
-
"ts-jest": "^27.
|
|
63
|
-
"typescript": "^4.
|
|
61
|
+
"semantic-release": "^18.0.1",
|
|
62
|
+
"ts-jest": "^27.1.2",
|
|
63
|
+
"typescript": "^4.5.4"
|
|
64
64
|
},
|
|
65
65
|
"husky": {
|
|
66
66
|
"hooks": {
|
|
@@ -68,6 +68,6 @@
|
|
|
68
68
|
}
|
|
69
69
|
},
|
|
70
70
|
"dependencies": {
|
|
71
|
-
"entropic-bond": "^1.
|
|
71
|
+
"entropic-bond": "^1.19.0"
|
|
72
72
|
}
|
|
73
73
|
}
|