@sumaris-net/ngx-components 1.7.4 → 1.8.2-rc2
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/bundles/sumaris-net.ngx-components.umd.js +124 -112
- package/bundles/sumaris-net.ngx-components.umd.js.map +1 -1
- package/bundles/sumaris-net.ngx-components.umd.min.js +1 -1
- package/bundles/sumaris-net.ngx-components.umd.min.js.map +1 -1
- package/doc/changelog.md +6 -1
- package/esm2015/src/app/core/form/entity-editor.class.js +5 -1
- package/esm2015/src/app/core/services/base-entity-service.class.js +4 -1
- package/esm2015/src/app/core/services/config.service.js +11 -4
- package/esm2015/src/app/core/table/table.class.js +4 -4
- package/esm2015/src/app/shared/services/entity-service.class.js +1 -1
- package/fesm2015/sumaris-net.ngx-components.js +17 -5
- package/fesm2015/sumaris-net.ngx-components.js.map +1 -1
- package/package.json +1 -1
- package/src/app/core/form/entity-editor.class.d.ts +1 -1
- package/src/app/core/services/base-entity-service.class.d.ts +1 -0
- package/src/app/core/services/config.service.d.ts +4 -1
- package/src/app/shared/services/entity-service.class.d.ts +1 -0
- package/sumaris-net.ngx-components.metadata.json +1 -1
|
@@ -14,4 +14,4 @@ export class EntitiesService {
|
|
|
14
14
|
EntitiesService.decorators = [
|
|
15
15
|
{ type: Directive }
|
|
16
16
|
];
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXNlcnZpY2UuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL3NoYXJlZC9zZXJ2aWNlcy9lbnRpdHktc2VydmljZS5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUMsU0FBUyxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBNkZuRCxNQUFNLFVBQVUsZUFBZSxDQUFJLElBQW1CLEVBQUUsSUFBbUI7O0lBQ3pFLE9BQU87UUFDTCxJQUFJLEVBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDN0MsS0FBSyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxXQUFJLElBQUksQ0FBQyxJQUFJLDBDQUFFLE1BQU0sQ0FBQSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssV0FBSSxJQUFJLENBQUMsSUFBSSwwQ0FBRSxNQUFNLENBQUEsSUFBSSxDQUFDLENBQUMsQ0FBQztLQUN6RixDQUFDO0FBQ0osQ0FBQztBQUdELE1BQU0sT0FBZ0IsZUFBZTtJQUduQyxXQUFXO1FBQ1QsZ0NBQWdDO0lBQ2xDLENBQUM7OztZQU5GLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtGZXRjaFBvbGljeSwgV2F0Y2hRdWVyeUZldGNoUG9saWN5fSBmcm9tICdAYXBvbGxvL2NsaWVudC9jb3JlJztcbmltcG9ydCB7U29ydERpcmVjdGlvbn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc29ydCc7XG5pbXBvcnQge0RpcmVjdGl2ZSwgT25EZXN0cm95fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RW1wdHlPYmplY3R9IGZyb20gJ2Fwb2xsby1hbmd1bGFyL3R5cGVzJztcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFBhZ2Uge1xuICBvZmZzZXQ6IG51bWJlcjtcbiAgc2l6ZTogbnVtYmVyO1xuICBzb3J0Qnk/OiBzdHJpbmc7XG4gIHNvcnREaXJlY3Rpb24/OiBTb3J0RGlyZWN0aW9uO1xufVxuXG5leHBvcnQgZGVjbGFyZSB0eXBlIEZldGNoTW9yZUZuPFIsIFYgPSBFbXB0eU9iamVjdD4gPSAodmFyaWFibGVzPzogVikgPT4gUHJvbWlzZTxSPjtcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIExvYWRSZXN1bHQ8VD4ge1xuICBkYXRhOiBUW107XG4gIHRvdGFsPzogbnVtYmVyO1xuICBlcnJvcnM/OiBhbnlbXTtcbiAgZmV0Y2hNb3JlPzogRmV0Y2hNb3JlRm48TG9hZFJlc3VsdDxUPj47XG59XG5cbmV4cG9ydCBkZWNsYXJlIHR5cGUgU3VnZ2VzdEZuPFQsIEY+ID0gKHZhbHVlOiBhbnksIGZpbHRlcj86IEYsIHNvcnRCeT86IHN0cmluZywgc29ydERpcmVjdGlvbj86IFNvcnREaXJlY3Rpb24pID0+IFByb21pc2U8VFtdIHwgTG9hZFJlc3VsdDxUPj47XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBTdWdnZXN0U2VydmljZTxULCBGPiB7XG4gIHN1Z2dlc3Q6IFN1Z2dlc3RGbjxULCBGPjtcbn1cblxuZXhwb3J0IGRlY2xhcmUgdHlwZSBGaWx0ZXJGbjxUPiA9IChkYXRhOiBUKSA9PiBib29sZWFuO1xuZXhwb3J0IGRlY2xhcmUgdHlwZSBGaWx0ZXJGbkZhY3Rvcnk8VCwgRj4gPSAoZmlsdGVyOiBGKSA9PiBGaWx0ZXJGbjxUPjtcblxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIEVudGl0eVNlcnZpY2VMb2FkT3B0aW9ucyB7XG4gIGZldGNoUG9saWN5PzogRmV0Y2hQb2xpY3k7XG4gIHRyYXNoPzogYm9vbGVhbjtcbiAgdG9FbnRpdHk/OiBib29sZWFuO1xuICBba2V5OiBzdHJpbmddOiBhbnk7XG59XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJRW50aXR5U2VydmljZTxcbiAgVCxcbiAgSUQgPSBhbnksXG4gIExPID0gRW50aXR5U2VydmljZUxvYWRPcHRpb25zPiB7XG5cbiAgbG9hZChcbiAgICBpZDogSUQsXG4gICAgb3B0cz86IExPXG4gICk6IFByb21pc2U8VD47XG5cbiAgY2FuVXNlcldyaXRlKGRhdGE6IFQsIG9wdHM/OiBhbnkpOiBib29sZWFuO1xuXG4gIHNhdmUoZGF0YTogVCwgb3B0cz86IGFueSk6IFByb21pc2U8VD47XG5cbiAgZGVsZXRlKGRhdGE6IFQsIG9wdHM/OiBhbnkpOiBQcm9taXNlPGFueT47XG5cbiAgbGlzdGVuQ2hhbmdlcyhpZDogSUQsIG9wdHM/OiBhbnkpOiBPYnNlcnZhYmxlPFQgfCB1bmRlZmluZWQ+O1xufVxuXG5leHBvcnQgZGVjbGFyZSBpbnRlcmZhY2UgRW50aXRpZXNTZXJ2aWNlV2F0Y2hPcHRpb25zIHtcbiAgZmV0Y2hQb2xpY3k/OiBXYXRjaFF1ZXJ5RmV0Y2hQb2xpY3k7XG4gIHRyYXNoPzogYm9vbGVhbjtcbiAgd2l0aFRvdGFsPzogYm9vbGVhbjtcbiAgdG9FbnRpdHk/OiBib29sZWFuO1xuICBba2V5OiBzdHJpbmddOiBhbnk7XG59XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBJRW50aXRpZXNTZXJ2aWNlPFQsIEYsIE8gZXh0ZW5kcyBFbnRpdGllc1NlcnZpY2VXYXRjaE9wdGlvbnMgPSBFbnRpdGllc1NlcnZpY2VXYXRjaE9wdGlvbnM+IHtcblxuICB3YXRjaEFsbChcbiAgICBvZmZzZXQ6IG51bWJlcixcbiAgICBzaXplOiBudW1iZXIsXG4gICAgc29ydEJ5Pzogc3RyaW5nLFxuICAgIHNvcnREaXJlY3Rpb24/OiBTb3J0RGlyZWN0aW9uLFxuICAgIGZpbHRlcj86IFBhcnRpYWw8Rj4sXG4gICAgb3B0aW9ucz86IE9cbiAgKTogT2JzZXJ2YWJsZTxMb2FkUmVzdWx0PFQ+PjtcblxuICAvLyBUT0RPXG4gIC8qd2F0Y2hQYWdlKFxuICAgIHBhZ2U6IFBhZ2U8VD4sXG4gICAgZmlsdGVyPzogRixcbiAgICBvcHRpb25zPzogT1xuICApOiBPYnNlcnZhYmxlPExvYWRSZXN1bHQ8VD4+OyovXG5cbiAgc2F2ZUFsbChkYXRhOiBUW10sIG9wdHM/OiBhbnkpOiBQcm9taXNlPFRbXT47XG5cbiAgZGVsZXRlQWxsKGRhdGE6IFRbXSwgb3B0cz86IGFueSk6IFByb21pc2U8YW55PjtcblxuICBhc0ZpbHRlcihmaWx0ZXI6IFBhcnRpYWw8Rj4pOiBGO1xufVxuXG5leHBvcnQgZGVjbGFyZSB0eXBlIExvYWRSZXN1bHRCeVBhZ2VGbjxUPiA9IChvZmZzZXQ6IG51bWJlciwgc2l6ZTogbnVtYmVyKSA9PiBQcm9taXNlPExvYWRSZXN1bHQ8VD4+O1xuXG5leHBvcnQgaW50ZXJmYWNlIElFbnRpdHlGdWxsU2VydmljZTxULCBJRCwgRiwgTyBleHRlbmRzIEVudGl0aWVzU2VydmljZVdhdGNoT3B0aW9ucyAmIEVudGl0eVNlcnZpY2VMb2FkT3B0aW9ucz5cbiAgZXh0ZW5kcyBJRW50aXR5U2VydmljZTxULCBJRCwgTz4sIElFbnRpdGllc1NlcnZpY2U8VCwgRiwgTz4gIHtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1lcmdlTG9hZFJlc3VsdDxUPihyZXMxOiBMb2FkUmVzdWx0PFQ+LCByZXMyOiBMb2FkUmVzdWx0PFQ+KTogTG9hZFJlc3VsdDxUPiB7XG4gIHJldHVybiB7XG4gICAgZGF0YSA6IChyZXMxLmRhdGEgfHwgW10pLmNvbmNhdCguLi5yZXMyLmRhdGEpLFxuICAgIHRvdGFsOiAoKHJlczEudG90YWwgfHwgcmVzMS5kYXRhPy5sZW5ndGggfHwgMCkgKyAocmVzMi50b3RhbCB8fCByZXMyLmRhdGE/Lmxlbmd0aCB8fCAwKSlcbiAgfTtcbn1cblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRW50aXRpZXNTZXJ2aWNlPFQsIEYsIE8gZXh0ZW5kcyBFbnRpdGllc1NlcnZpY2VXYXRjaE9wdGlvbnMgPSBFbnRpdGllc1NlcnZpY2VXYXRjaE9wdGlvbnM+XG4gIGltcGxlbWVudHMgSUVudGl0aWVzU2VydmljZTxULCBGLCBPPiwgT25EZXN0cm95IHtcblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICAvLyBDYW4gYmUgb3ZlcnJpZGUgYnkgc3ViY2xhc3Nlc1xuICB9XG5cbiAgYWJzdHJhY3Qgd2F0Y2hBbGwoXG4gICAgb2Zmc2V0OiBudW1iZXIsXG4gICAgc2l6ZTogbnVtYmVyLFxuICAgIHNvcnRCeT86IHN0cmluZyxcbiAgICBzb3J0RGlyZWN0aW9uPzogU29ydERpcmVjdGlvbixcbiAgICBmaWx0ZXI/OiBQYXJ0aWFsPEY+LFxuICAgIG9wdGlvbnM/OiBPXG4gICk6IE9ic2VydmFibGU8TG9hZFJlc3VsdDxUPj47XG5cbiAgLy8gVE9ET1xuICAvKndhdGNoUGFnZShcbiAgICBwYWdlOiBQYWdlPFQ+LFxuICAgIGZpbHRlcj86IEYsXG4gICAgb3B0aW9ucz86IE9cbiAgKTogT2JzZXJ2YWJsZTxMb2FkUmVzdWx0PFQ+PjsqL1xuXG4gIGFic3RyYWN0IHNhdmVBbGwoZGF0YTogVFtdLCBvcHRpb25zPzogYW55KTogUHJvbWlzZTxUW10+O1xuXG4gIGFic3RyYWN0IGRlbGV0ZUFsbChkYXRhOiBUW10sIG9wdGlvbnM/OiBhbnkpOiBQcm9taXNlPGFueT47XG5cbiAgYWJzdHJhY3QgYXNGaWx0ZXIoZmlsdGVyOiBQYXJ0aWFsPEY+KTogRjtcbn1cbiJdfQ==
|
|
@@ -14786,7 +14786,7 @@ const CacheStatistics = gql `
|
|
|
14786
14786
|
`;
|
|
14787
14787
|
const APP_CONFIG_OPTIONS = new InjectionToken('defaultOptions');
|
|
14788
14788
|
class ConfigService extends BaseGraphqlService {
|
|
14789
|
-
constructor(platform, graphql, storage, network, file, toastController, translate, environment, defaultOptionsMap) {
|
|
14789
|
+
constructor(platform, graphql, storage, network, file, toastController, translate, accountService, environment, defaultOptionsMap) {
|
|
14790
14790
|
super(graphql, environment);
|
|
14791
14791
|
this.platform = platform;
|
|
14792
14792
|
this.graphql = graphql;
|
|
@@ -14795,6 +14795,7 @@ class ConfigService extends BaseGraphqlService {
|
|
|
14795
14795
|
this.file = file;
|
|
14796
14796
|
this.toastController = toastController;
|
|
14797
14797
|
this.translate = translate;
|
|
14798
|
+
this.accountService = accountService;
|
|
14798
14799
|
this.environment = environment;
|
|
14799
14800
|
this.$data = new BehaviorSubject(null);
|
|
14800
14801
|
this._debug = !environment.production;
|
|
@@ -14841,6 +14842,9 @@ class ConfigService extends BaseGraphqlService {
|
|
|
14841
14842
|
return this.loadDefault();
|
|
14842
14843
|
});
|
|
14843
14844
|
}
|
|
14845
|
+
canUserWrite(data, opts) {
|
|
14846
|
+
return this.accountService.isAdmin();
|
|
14847
|
+
}
|
|
14844
14848
|
/**
|
|
14845
14849
|
* Save a configuration
|
|
14846
14850
|
*
|
|
@@ -15058,7 +15062,7 @@ class ConfigService extends BaseGraphqlService {
|
|
|
15058
15062
|
});
|
|
15059
15063
|
}
|
|
15060
15064
|
}
|
|
15061
|
-
ConfigService.ɵprov = ɵɵdefineInjectable({ factory: function ConfigService_Factory() { return new ConfigService(ɵɵinject(Platform), ɵɵinject(GraphqlService), ɵɵinject(Storage), ɵɵinject(NetworkService), ɵɵinject(FileService), ɵɵinject(ToastController), ɵɵinject(TranslateService), ɵɵinject(ENVIRONMENT), ɵɵinject(APP_CONFIG_OPTIONS, 8)); }, token: ConfigService, providedIn: "root" });
|
|
15065
|
+
ConfigService.ɵprov = ɵɵdefineInjectable({ factory: function ConfigService_Factory() { return new ConfigService(ɵɵinject(Platform), ɵɵinject(GraphqlService), ɵɵinject(Storage), ɵɵinject(NetworkService), ɵɵinject(FileService), ɵɵinject(ToastController), ɵɵinject(TranslateService), ɵɵinject(AccountService), ɵɵinject(ENVIRONMENT), ɵɵinject(APP_CONFIG_OPTIONS, 8)); }, token: ConfigService, providedIn: "root" });
|
|
15062
15066
|
ConfigService.decorators = [
|
|
15063
15067
|
{ type: Injectable, args: [{
|
|
15064
15068
|
providedIn: 'root',
|
|
@@ -15073,6 +15077,7 @@ ConfigService.ctorParameters = () => [
|
|
|
15073
15077
|
{ type: FileService },
|
|
15074
15078
|
{ type: ToastController },
|
|
15075
15079
|
{ type: TranslateService },
|
|
15080
|
+
{ type: AccountService },
|
|
15076
15081
|
{ type: undefined, decorators: [{ type: Inject, args: [ENVIRONMENT,] }] },
|
|
15077
15082
|
{ type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [APP_CONFIG_OPTIONS,] }] }
|
|
15078
15083
|
];
|
|
@@ -20618,6 +20623,9 @@ class BaseEntityService extends BaseGraphqlService {
|
|
|
20618
20623
|
return res.total;
|
|
20619
20624
|
});
|
|
20620
20625
|
}
|
|
20626
|
+
canUserWrite(data, opts) {
|
|
20627
|
+
return !!data;
|
|
20628
|
+
}
|
|
20621
20629
|
saveAll(entities, opts) {
|
|
20622
20630
|
return __awaiter(this, void 0, void 0, function* () {
|
|
20623
20631
|
if (isEmptyArray(entities))
|
|
@@ -21869,7 +21877,7 @@ class AppTable {
|
|
|
21869
21877
|
return true;
|
|
21870
21878
|
}
|
|
21871
21879
|
save(opts) {
|
|
21872
|
-
var _a, _b;
|
|
21880
|
+
var _a, _b, _c, _d;
|
|
21873
21881
|
return __awaiter(this, void 0, void 0, function* () {
|
|
21874
21882
|
opts = Object.assign({ keepEditing: this.keepEditedRowOnSave }, opts);
|
|
21875
21883
|
if (this.readOnly) {
|
|
@@ -21877,8 +21885,8 @@ class AppTable {
|
|
|
21877
21885
|
}
|
|
21878
21886
|
this.resetError();
|
|
21879
21887
|
// Keep edited row id (should be done BEFORE confirmEditCreate() )
|
|
21880
|
-
this.previouslyEditedRowId = opts.keepEditing && ((_a = this.editedRow) === null || _a === void 0 ? void 0 : _a.editing) ? this.editedRow.id : undefined;
|
|
21881
|
-
const previouslyEditedData = isNotNil(this.previouslyEditedRowId) && this.editedRow.currentData || ((
|
|
21888
|
+
this.previouslyEditedRowId = opts.keepEditing && ((((_a = this.editedRow) === null || _a === void 0 ? void 0 : _a.editing) ? this.editedRow.id : undefined) || ((_b = this.singleSelectedRow) === null || _b === void 0 ? void 0 : _b.id));
|
|
21889
|
+
const previouslyEditedData = isNotNil(this.previouslyEditedRowId) && ((_c = this.editedRow) === null || _c === void 0 ? void 0 : _c.currentData) || ((_d = this.singleSelectedRow) === null || _d === void 0 ? void 0 : _d.currentData);
|
|
21882
21890
|
if (!this.confirmEditCreate()) {
|
|
21883
21891
|
throw { code: ErrorCodes.TABLE_INVALID_ROW_ERROR, message: 'ERROR.TABLE_INVALID_ROW_ERROR' };
|
|
21884
21892
|
}
|
|
@@ -23844,6 +23852,10 @@ class AppEntityEditor extends AppTabEditor {
|
|
|
23844
23852
|
if (!opts || opts.emitEvent !== false)
|
|
23845
23853
|
this.markForCheck();
|
|
23846
23854
|
}
|
|
23855
|
+
/* -- public abstract methods (to override) -- */
|
|
23856
|
+
canUserWrite(data, opts) {
|
|
23857
|
+
return this.dataService.canUserWrite(data, opts);
|
|
23858
|
+
}
|
|
23847
23859
|
/* -- protected methods -- */
|
|
23848
23860
|
/**
|
|
23849
23861
|
* Return undefined to keep same tab
|