@abp/ng.identity 5.0.0-rc.1 → 5.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/config/package.json +5 -5
- package/{esm2015/abp-ng.identity.js → esm2020/abp-ng.identity.mjs} +0 -0
- package/{esm2015/config/abp-ng.identity-config.js → esm2020/config/abp-ng.identity-config.mjs} +0 -0
- package/{esm2015/config/enums/index.js → esm2020/config/enums/index.mjs} +1 -1
- package/{esm2015/config/enums/policy-names.js → esm2020/config/enums/policy-names.mjs} +1 -1
- package/{esm2015/config/enums/route-names.js → esm2020/config/enums/route-names.mjs} +1 -1
- package/{esm2015/config/identity-config.module.js → esm2020/config/identity-config.module.mjs} +5 -5
- package/{esm2015/config/providers/index.js → esm2020/config/providers/index.mjs} +1 -1
- package/{esm2015/config/providers/route.provider.js → esm2020/config/providers/route.provider.mjs} +1 -1
- package/{esm2015/config/public-api.js → esm2020/config/public-api.mjs} +1 -1
- package/{esm2015/lib/components/index.js → esm2020/lib/components/index.mjs} +1 -1
- package/esm2020/lib/components/roles/roles.component.mjs +108 -0
- package/esm2020/lib/components/users/users.component.mjs +140 -0
- package/{esm2015/lib/defaults/default-roles-entity-actions.js → esm2020/lib/defaults/default-roles-entity-actions.mjs} +1 -1
- package/esm2020/lib/defaults/default-roles-entity-props.mjs +24 -0
- package/{esm2015/lib/defaults/default-roles-form-props.js → esm2020/lib/defaults/default-roles-form-props.mjs} +1 -1
- package/{esm2015/lib/defaults/default-roles-toolbar-actions.js → esm2020/lib/defaults/default-roles-toolbar-actions.mjs} +1 -1
- package/{esm2015/lib/defaults/default-users-entity-actions.js → esm2020/lib/defaults/default-users-entity-actions.mjs} +1 -1
- package/esm2020/lib/defaults/default-users-entity-props.mjs +35 -0
- package/{esm2015/lib/defaults/default-users-form-props.js → esm2020/lib/defaults/default-users-form-props.mjs} +1 -1
- package/{esm2015/lib/defaults/default-users-toolbar-actions.js → esm2020/lib/defaults/default-users-toolbar-actions.mjs} +1 -1
- package/{esm2015/lib/enums/components.js → esm2020/lib/enums/components.mjs} +1 -1
- package/{esm2015/lib/enums/index.js → esm2020/lib/enums/index.mjs} +1 -1
- package/{esm2015/lib/guards/extensions.guard.js → esm2020/lib/guards/extensions.guard.mjs} +4 -4
- package/{esm2015/lib/guards/index.js → esm2020/lib/guards/index.mjs} +1 -1
- package/esm2020/lib/identity-routing.module.mjs +53 -0
- package/{esm2015/lib/identity.module.js → esm2020/lib/identity.module.mjs} +5 -5
- package/esm2020/lib/models/config-options.mjs +2 -0
- package/{esm2015/lib/models/index.js → esm2020/lib/models/index.mjs} +1 -1
- package/esm2020/lib/tokens/extensions.token.mjs +35 -0
- package/{esm2015/lib/tokens/index.js → esm2020/lib/tokens/index.mjs} +1 -1
- package/{esm2015/proxy/abp-ng.identity-proxy.js → esm2020/proxy/abp-ng.identity-proxy.mjs} +0 -0
- package/{esm2015/proxy/lib/index.js → esm2020/proxy/lib/index.mjs} +1 -1
- package/{esm2015/proxy/lib/proxy/identity/identity-role.service.js → esm2020/proxy/lib/proxy/identity/identity-role.service.mjs} +4 -4
- package/{esm2015/proxy/lib/proxy/identity/identity-user-lookup.service.js → esm2020/proxy/lib/proxy/identity/identity-user-lookup.service.mjs} +4 -4
- package/{esm2015/proxy/lib/proxy/identity/identity-user.service.js → esm2020/proxy/lib/proxy/identity/identity-user.service.mjs} +4 -4
- package/{esm2015/proxy/lib/proxy/identity/index.js → esm2020/proxy/lib/proxy/identity/index.mjs} +1 -1
- package/esm2020/proxy/lib/proxy/identity/models.mjs +2 -0
- package/{esm2015/proxy/lib/proxy/users/index.js → esm2020/proxy/lib/proxy/users/index.mjs} +1 -1
- package/esm2020/proxy/lib/proxy/users/models.mjs +2 -0
- package/{esm2015/proxy/public-api.js → esm2020/proxy/public-api.mjs} +1 -1
- package/{esm2015/public-api.js → esm2020/public-api.mjs} +1 -1
- package/fesm2015/{abp-ng.identity-config.js → abp-ng.identity-config.mjs} +5 -5
- package/fesm2015/abp-ng.identity-config.mjs.map +1 -0
- package/fesm2015/{abp-ng.identity-proxy.js → abp-ng.identity-proxy.mjs} +11 -11
- package/fesm2015/abp-ng.identity-proxy.mjs.map +1 -0
- package/fesm2015/{abp-ng.identity.js → abp-ng.identity.mjs} +31 -39
- package/fesm2015/abp-ng.identity.mjs.map +1 -0
- package/fesm2020/abp-ng.identity-config.mjs +58 -0
- package/fesm2020/abp-ng.identity-config.mjs.map +1 -0
- package/fesm2020/abp-ng.identity-proxy.mjs +144 -0
- package/fesm2020/abp-ng.identity-proxy.mjs.map +1 -0
- package/fesm2020/abp-ng.identity.mjs +636 -0
- package/fesm2020/abp-ng.identity.mjs.map +1 -0
- package/package.json +38 -9
- package/proxy/package.json +5 -5
- package/proxy/src/lib/proxy/README.md +17 -0
- package/bundles/abp-ng.identity-config.umd.js +0 -89
- package/bundles/abp-ng.identity-config.umd.js.map +0 -1
- package/bundles/abp-ng.identity-proxy.umd.js +0 -179
- package/bundles/abp-ng.identity-proxy.umd.js.map +0 -1
- package/bundles/abp-ng.identity.umd.js +0 -1024
- package/bundles/abp-ng.identity.umd.js.map +0 -1
- package/esm2015/lib/components/roles/roles.component.js +0 -112
- package/esm2015/lib/components/users/users.component.js +0 -144
- package/esm2015/lib/defaults/default-roles-entity-props.js +0 -24
- package/esm2015/lib/defaults/default-users-entity-props.js +0 -35
- package/esm2015/lib/identity-routing.module.js +0 -53
- package/esm2015/lib/models/config-options.js +0 -2
- package/esm2015/lib/tokens/extensions.token.js +0 -35
- package/esm2015/proxy/lib/proxy/identity/models.js +0 -2
- package/esm2015/proxy/lib/proxy/users/models.js +0 -2
- package/fesm2015/abp-ng.identity-config.js.map +0 -1
- package/fesm2015/abp-ng.identity-proxy.js.map +0 -1
- package/fesm2015/abp-ng.identity.js.map +0 -1
package/README.md
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
<h1> @abp/ng.identity </h1>
|
|
2
|
-
|
|
3
|
-
[docs.abp.io](https://docs.abp.io)
|
|
1
|
+
<h1> @abp/ng.identity </h1>
|
|
2
|
+
|
|
3
|
+
[docs.abp.io](https://docs.abp.io)
|
package/config/package.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
|
-
"
|
|
3
|
-
"
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
-
"fesm2015": "../fesm2015/abp-ng.identity-config.
|
|
2
|
+
"module": "../fesm2015/abp-ng.identity-config.mjs",
|
|
3
|
+
"es2020": "../fesm2020/abp-ng.identity-config.mjs",
|
|
4
|
+
"esm2020": "../esm2020/config/abp-ng.identity-config.mjs",
|
|
5
|
+
"fesm2020": "../fesm2020/abp-ng.identity-config.mjs",
|
|
6
|
+
"fesm2015": "../fesm2015/abp-ng.identity-config.mjs",
|
|
7
7
|
"typings": "abp-ng.identity-config.d.ts",
|
|
8
8
|
"sideEffects": false,
|
|
9
9
|
"name": "@abp/ng.identity/config"
|
|
File without changes
|
package/{esm2015/config/abp-ng.identity-config.js → esm2020/config/abp-ng.identity-config.mjs}
RENAMED
|
File without changes
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export * from './policy-names';
|
|
2
2
|
export * from './route-names';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9pZGVudGl0eS9jb25maWcvc3JjL2VudW1zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3BvbGljeS1uYW1lcyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcm91dGUtbmFtZXMnO1xyXG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9saWN5LW5hbWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaWRlbnRpdHkvY29uZmlnL3NyYy9lbnVtcy9wb2xpY3ktbmFtZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBlbnVtIGVJZGVudGl0eVBvbGljeU5hbWVzIHtcclxuICBJZGVudGl0eU1hbmFnZW1lbnQgPSAnQWJwSWRlbnRpdHkuUm9sZXMgfHwgQWJwSWRlbnRpdHkuVXNlcnMnLFxyXG4gIFJvbGVzID0gJ0FicElkZW50aXR5LlJvbGVzJyxcclxuICBVc2VycyA9ICdBYnBJZGVudGl0eS5Vc2VycycsXHJcbn1cclxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUtbmFtZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9pZGVudGl0eS9jb25maWcvc3JjL2VudW1zL3JvdXRlLW5hbWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgZW51bSBlSWRlbnRpdHlSb3V0ZU5hbWVzIHtcclxuICBJZGVudGl0eU1hbmFnZW1lbnQgPSAnQWJwSWRlbnRpdHk6Ok1lbnU6SWRlbnRpdHlNYW5hZ2VtZW50JyxcclxuICBSb2xlcyA9ICdBYnBJZGVudGl0eTo6Um9sZXMnLFxyXG4gIFVzZXJzID0gJ0FicElkZW50aXR5OjpVc2VycycsXHJcbn1cclxuIl19
|
package/{esm2015/config/identity-config.module.js → esm2020/config/identity-config.module.mjs}
RENAMED
|
@@ -9,10 +9,10 @@ export class IdentityConfigModule {
|
|
|
9
9
|
};
|
|
10
10
|
}
|
|
11
11
|
}
|
|
12
|
-
IdentityConfigModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
13
|
-
IdentityConfigModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "
|
|
14
|
-
IdentityConfigModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
15
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
12
|
+
IdentityConfigModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: IdentityConfigModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
13
|
+
IdentityConfigModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: IdentityConfigModule });
|
|
14
|
+
IdentityConfigModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: IdentityConfigModule });
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: IdentityConfigModule, decorators: [{
|
|
16
16
|
type: NgModule
|
|
17
17
|
}] });
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWRlbnRpdHktY29uZmlnLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2lkZW50aXR5L2NvbmZpZy9zcmMvaWRlbnRpdHktY29uZmlnLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFHdEUsTUFBTSxPQUFPLG9CQUFvQjtJQUMvQixNQUFNLENBQUMsT0FBTztRQUNaLE9BQU87WUFDTCxRQUFRLEVBQUUsb0JBQW9CO1lBQzlCLFNBQVMsRUFBRSxDQUFDLHdCQUF3QixDQUFDO1NBQ3RDLENBQUM7SUFDSixDQUFDOztpSEFOVSxvQkFBb0I7a0hBQXBCLG9CQUFvQjtrSEFBcEIsb0JBQW9COzJGQUFwQixvQkFBb0I7a0JBRGhDLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJREVOVElUWV9ST1VURV9QUk9WSURFUlMgfSBmcm9tICcuL3Byb3ZpZGVycy9yb3V0ZS5wcm92aWRlcic7XHJcblxyXG5ATmdNb2R1bGUoKVxyXG5leHBvcnQgY2xhc3MgSWRlbnRpdHlDb25maWdNb2R1bGUge1xyXG4gIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8SWRlbnRpdHlDb25maWdNb2R1bGU+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBJZGVudGl0eUNvbmZpZ01vZHVsZSxcclxuICAgICAgcHJvdmlkZXJzOiBbSURFTlRJVFlfUk9VVEVfUFJPVklERVJTXSxcclxuICAgIH07XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from './route.provider';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9pZGVudGl0eS9jb25maWcvc3JjL3Byb3ZpZGVycy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9yb3V0ZS5wcm92aWRlcic7XHJcbiJdfQ==
|
package/{esm2015/config/providers/route.provider.js → esm2020/config/providers/route.provider.mjs}
RENAMED
|
@@ -32,4 +32,4 @@ export function configureRoutes(routesService) {
|
|
|
32
32
|
]);
|
|
33
33
|
};
|
|
34
34
|
}
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9pZGVudGl0eS9jb25maWcvc3JjL3Byb3ZpZGVycy9yb3V0ZS5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRTFELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJaEQsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUc7SUFDdEMsRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxlQUFlLEVBQUUsSUFBSSxFQUFFLENBQUMsYUFBYSxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtDQUM5RixDQUFDO0FBRUYsTUFBTSxVQUFVLGVBQWUsQ0FBQyxhQUE0QjtJQUMxRCxPQUFPLEdBQUcsRUFBRTtRQUNWLGFBQWEsQ0FBQyxHQUFHLENBQUM7WUFDaEI7Z0JBQ0UsSUFBSSxFQUFFLFNBQVM7Z0JBQ2YsSUFBSSxpRUFBd0M7Z0JBQzVDLFVBQVUsNkRBQXVDO2dCQUNqRCxjQUFjLG1FQUF5QztnQkFDdkQsU0FBUyxFQUFFLGlCQUFpQjtnQkFDNUIsTUFBTSxpQ0FBeUI7Z0JBQy9CLEtBQUssRUFBRSxDQUFDO2FBQ1Q7WUFDRDtnQkFDRSxJQUFJLEVBQUUsaUJBQWlCO2dCQUN2QixJQUFJLGtDQUEyQjtnQkFDL0IsVUFBVSxpRUFBd0M7Z0JBQ2xELGNBQWMsaUNBQTRCO2dCQUMxQyxLQUFLLEVBQUUsQ0FBQzthQUNUO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLGlCQUFpQjtnQkFDdkIsSUFBSSxrQ0FBMkI7Z0JBQy9CLFVBQVUsaUVBQXdDO2dCQUNsRCxjQUFjLGlDQUE0QjtnQkFDMUMsS0FBSyxFQUFFLENBQUM7YUFDVDtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBlTGF5b3V0VHlwZSwgUm91dGVzU2VydmljZSB9IGZyb20gJ0BhYnAvbmcuY29yZSc7XHJcbmltcG9ydCB7IGVUaGVtZVNoYXJlZFJvdXRlTmFtZXMgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZCc7XHJcbmltcG9ydCB7IEFQUF9JTklUSUFMSVpFUiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBlSWRlbnRpdHlQb2xpY3lOYW1lcyB9IGZyb20gJy4uL2VudW1zL3BvbGljeS1uYW1lcyc7XHJcbmltcG9ydCB7IGVJZGVudGl0eVJvdXRlTmFtZXMgfSBmcm9tICcuLi9lbnVtcy9yb3V0ZS1uYW1lcyc7XHJcblxyXG5leHBvcnQgY29uc3QgSURFTlRJVFlfUk9VVEVfUFJPVklERVJTID0gW1xyXG4gIHsgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLCB1c2VGYWN0b3J5OiBjb25maWd1cmVSb3V0ZXMsIGRlcHM6IFtSb3V0ZXNTZXJ2aWNlXSwgbXVsdGk6IHRydWUgfSxcclxuXTtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBjb25maWd1cmVSb3V0ZXMocm91dGVzU2VydmljZTogUm91dGVzU2VydmljZSkge1xyXG4gIHJldHVybiAoKSA9PiB7XHJcbiAgICByb3V0ZXNTZXJ2aWNlLmFkZChbXHJcbiAgICAgIHtcclxuICAgICAgICBwYXRoOiB1bmRlZmluZWQsXHJcbiAgICAgICAgbmFtZTogZUlkZW50aXR5Um91dGVOYW1lcy5JZGVudGl0eU1hbmFnZW1lbnQsXHJcbiAgICAgICAgcGFyZW50TmFtZTogZVRoZW1lU2hhcmVkUm91dGVOYW1lcy5BZG1pbmlzdHJhdGlvbixcclxuICAgICAgICByZXF1aXJlZFBvbGljeTogZUlkZW50aXR5UG9saWN5TmFtZXMuSWRlbnRpdHlNYW5hZ2VtZW50LFxyXG4gICAgICAgIGljb25DbGFzczogJ2ZhIGZhLWlkLWNhcmQtbycsXHJcbiAgICAgICAgbGF5b3V0OiBlTGF5b3V0VHlwZS5hcHBsaWNhdGlvbixcclxuICAgICAgICBvcmRlcjogMSxcclxuICAgICAgfSxcclxuICAgICAge1xyXG4gICAgICAgIHBhdGg6ICcvaWRlbnRpdHkvcm9sZXMnLFxyXG4gICAgICAgIG5hbWU6IGVJZGVudGl0eVJvdXRlTmFtZXMuUm9sZXMsXHJcbiAgICAgICAgcGFyZW50TmFtZTogZUlkZW50aXR5Um91dGVOYW1lcy5JZGVudGl0eU1hbmFnZW1lbnQsXHJcbiAgICAgICAgcmVxdWlyZWRQb2xpY3k6IGVJZGVudGl0eVBvbGljeU5hbWVzLlJvbGVzLFxyXG4gICAgICAgIG9yZGVyOiAxLFxyXG4gICAgICB9LFxyXG4gICAgICB7XHJcbiAgICAgICAgcGF0aDogJy9pZGVudGl0eS91c2VycycsXHJcbiAgICAgICAgbmFtZTogZUlkZW50aXR5Um91dGVOYW1lcy5Vc2VycyxcclxuICAgICAgICBwYXJlbnROYW1lOiBlSWRlbnRpdHlSb3V0ZU5hbWVzLklkZW50aXR5TWFuYWdlbWVudCxcclxuICAgICAgICByZXF1aXJlZFBvbGljeTogZUlkZW50aXR5UG9saWN5TmFtZXMuVXNlcnMsXHJcbiAgICAgICAgb3JkZXI6IDIsXHJcbiAgICAgIH0sXHJcbiAgICBdKTtcclxuICB9O1xyXG59XHJcbiJdfQ==
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export * from './enums';
|
|
2
2
|
export * from './identity-config.module';
|
|
3
3
|
export * from './providers';
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2lkZW50aXR5L2NvbmZpZy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9lbnVtcyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vaWRlbnRpdHktY29uZmlnLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcHJvdmlkZXJzJztcclxuIl19
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export * from './roles/roles.component';
|
|
2
2
|
export * from './users/users.component';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9pZGVudGl0eS9zcmMvbGliL2NvbXBvbmVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLHlCQUF5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9yb2xlcy9yb2xlcy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3VzZXJzL3VzZXJzLmNvbXBvbmVudCc7XHJcbiJdfQ==
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { ListService } from '@abp/ng.core';
|
|
2
|
+
import { IdentityRoleService } from '@abp/ng.identity/proxy';
|
|
3
|
+
import { Confirmation, ConfirmationService } from '@abp/ng.theme.shared';
|
|
4
|
+
import { EXTENSIONS_IDENTIFIER, FormPropData, generateFormFromProps, } from '@abp/ng.theme.shared/extensions';
|
|
5
|
+
import { Component, Injector } from '@angular/core';
|
|
6
|
+
import { finalize } from 'rxjs/operators';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
import * as i1 from "@abp/ng.core";
|
|
9
|
+
import * as i2 from "@abp/ng.theme.shared";
|
|
10
|
+
import * as i3 from "@abp/ng.identity/proxy";
|
|
11
|
+
import * as i4 from "@abp/ng.theme.shared/extensions";
|
|
12
|
+
import * as i5 from "@abp/ng.permission-management";
|
|
13
|
+
import * as i6 from "@angular/forms";
|
|
14
|
+
import * as i7 from "@ngx-validate/core";
|
|
15
|
+
export class RolesComponent {
|
|
16
|
+
constructor(list, confirmationService, injector, service) {
|
|
17
|
+
this.list = list;
|
|
18
|
+
this.confirmationService = confirmationService;
|
|
19
|
+
this.injector = injector;
|
|
20
|
+
this.service = service;
|
|
21
|
+
this.data = { items: [], totalCount: 0 };
|
|
22
|
+
this.visiblePermissions = false;
|
|
23
|
+
this.modalBusy = false;
|
|
24
|
+
this.permissionManagementKey = "PermissionManagement.PermissionManagementComponent" /* PermissionManagement */;
|
|
25
|
+
this.onVisiblePermissionChange = event => {
|
|
26
|
+
this.visiblePermissions = event;
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
ngOnInit() {
|
|
30
|
+
this.hookToQuery();
|
|
31
|
+
}
|
|
32
|
+
buildForm() {
|
|
33
|
+
const data = new FormPropData(this.injector, this.selected);
|
|
34
|
+
this.form = generateFormFromProps(data);
|
|
35
|
+
}
|
|
36
|
+
openModal() {
|
|
37
|
+
this.buildForm();
|
|
38
|
+
this.isModalVisible = true;
|
|
39
|
+
}
|
|
40
|
+
add() {
|
|
41
|
+
this.selected = {};
|
|
42
|
+
this.openModal();
|
|
43
|
+
}
|
|
44
|
+
edit(id) {
|
|
45
|
+
this.service.get(id).subscribe(res => {
|
|
46
|
+
this.selected = res;
|
|
47
|
+
this.openModal();
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
save() {
|
|
51
|
+
if (!this.form.valid)
|
|
52
|
+
return;
|
|
53
|
+
this.modalBusy = true;
|
|
54
|
+
const { id } = this.selected;
|
|
55
|
+
(id
|
|
56
|
+
? this.service.update(id, { ...this.selected, ...this.form.value })
|
|
57
|
+
: this.service.create(this.form.value))
|
|
58
|
+
.pipe(finalize(() => (this.modalBusy = false)))
|
|
59
|
+
.subscribe(() => {
|
|
60
|
+
this.isModalVisible = false;
|
|
61
|
+
this.list.get();
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
delete(id, name) {
|
|
65
|
+
this.confirmationService
|
|
66
|
+
.warn('AbpIdentity::RoleDeletionConfirmationMessage', 'AbpIdentity::AreYouSure', {
|
|
67
|
+
messageLocalizationParams: [name],
|
|
68
|
+
})
|
|
69
|
+
.subscribe((status) => {
|
|
70
|
+
if (status === Confirmation.Status.confirm) {
|
|
71
|
+
this.service.delete(id).subscribe(() => this.list.get());
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
hookToQuery() {
|
|
76
|
+
this.list.hookToQuery(query => this.service.getList(query)).subscribe(res => (this.data = res));
|
|
77
|
+
}
|
|
78
|
+
openPermissionsModal(providerKey) {
|
|
79
|
+
this.providerKey = providerKey;
|
|
80
|
+
setTimeout(() => {
|
|
81
|
+
this.visiblePermissions = true;
|
|
82
|
+
}, 0);
|
|
83
|
+
}
|
|
84
|
+
sort(data) {
|
|
85
|
+
const { prop, dir } = data.sorts[0];
|
|
86
|
+
this.list.sortKey = prop;
|
|
87
|
+
this.list.sortOrder = dir;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
RolesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RolesComponent, deps: [{ token: i1.ListService }, { token: i2.ConfirmationService }, { token: i0.Injector }, { token: i3.IdentityRoleService }], target: i0.ɵɵFactoryTarget.Component });
|
|
91
|
+
RolesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: RolesComponent, selector: "abp-roles", providers: [
|
|
92
|
+
ListService,
|
|
93
|
+
{
|
|
94
|
+
provide: EXTENSIONS_IDENTIFIER,
|
|
95
|
+
useValue: "Identity.RolesComponent" /* Roles */,
|
|
96
|
+
},
|
|
97
|
+
], ngImport: i0, template: "<div id=\"identity-roles-wrapper\" class=\"card\">\r\n <div class=\"card-header\">\r\n <div class=\"row\">\r\n <div class=\"col col-md-6\">\r\n <h5 class=\"card-title\">{{ 'AbpIdentity::Roles' | abpLocalization }}</h5>\r\n </div>\r\n <div class=\"text-end col col-md-6\">\r\n <abp-page-toolbar [record]=\"data.items\"></abp-page-toolbar>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"card-body\">\r\n <abp-extensible-table\r\n [data]=\"data.items\"\r\n [recordsTotal]=\"data.totalCount\"\r\n [list]=\"list\"\r\n ></abp-extensible-table>\r\n </div>\r\n</div>\r\n\r\n<abp-modal [(visible)]=\"isModalVisible\" [busy]=\"modalBusy\">\r\n <ng-template #abpHeader>\r\n <h3>{{ (selected?.id ? 'AbpIdentity::Edit' : 'AbpIdentity::NewRole') | abpLocalization }}</h3>\r\n </ng-template>\r\n\r\n <ng-template #abpBody>\r\n <form [formGroup]=\"form\" (ngSubmit)=\"save()\" validateOnSubmit>\r\n <abp-extensible-form [selectedRecord]=\"selected\"></abp-extensible-form>\r\n </form>\r\n </ng-template>\r\n\r\n <ng-template #abpFooter>\r\n <button type=\"button\" class=\"btn btn-secondary\" abpClose>\r\n {{ 'AbpIdentity::Cancel' | abpLocalization }}\r\n </button>\r\n <abp-button iconClass=\"fa fa-check\" [disabled]=\"form?.invalid\" (click)=\"save()\">{{\r\n 'AbpIdentity::Save' | abpLocalization\r\n }}</abp-button>\r\n </ng-template>\r\n</abp-modal>\r\n\r\n<abp-permission-management\r\n #abpPermissionManagement=\"abpPermissionManagement\"\r\n *abpReplaceableTemplate=\"\r\n {\r\n inputs: {\r\n providerName: { value: 'R' },\r\n providerKey: { value: providerKey },\r\n visible: { value: visiblePermissions, twoWay: true },\r\n hideBadges: { value: true }\r\n },\r\n outputs: { visibleChange: onVisiblePermissionChange },\r\n componentKey: permissionManagementKey\r\n };\r\n let init = initTemplate\r\n \"\r\n (abpInit)=\"init(abpPermissionManagement)\"\r\n>\r\n</abp-permission-management>\r\n", components: [{ type: i4.PageToolbarComponent, selector: "abp-page-toolbar", exportAs: ["abpPageToolbar"] }, { type: i4.ExtensibleTableComponent, selector: "abp-extensible-table", inputs: ["actionsText", "data", "list", "recordsTotal", "actionsColumnWidth", "actionsTemplate"], exportAs: ["abpExtensibleTable"] }, { type: i2.ModalComponent, selector: "abp-modal", inputs: ["visible", "busy", "options", "suppressUnsavedChangesWarning"], outputs: ["visibleChange", "init", "appear", "disappear"] }, { type: i4.ExtensibleFormComponent, selector: "abp-extensible-form", inputs: ["selectedRecord"], exportAs: ["abpExtensibleForm"] }, { type: i2.ButtonComponent, selector: "abp-button", inputs: ["buttonId", "buttonClass", "buttonType", "iconClass", "loading", "disabled", "attributes"], outputs: ["click", "focus", "blur", "abpClick", "abpFocus", "abpBlur"] }, { type: i5.PermissionManagementComponent, selector: "abp-permission-management", inputs: ["providerName", "providerKey", "hideBadges", "visible"], outputs: ["visibleChange"], exportAs: ["abpPermissionManagement"] }], directives: [{ type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1.FormSubmitDirective, selector: "form[ngSubmit][formGroup]", inputs: ["debounce", "notValidateOnSubmit"], outputs: ["ngSubmit"] }, { type: i6.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i7.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { type: i2.ModalCloseDirective, selector: "[abpClose]" }, { type: i1.ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }, { type: i1.InitDirective, selector: "[abpInit]", outputs: ["abpInit"] }], pipes: { "abpLocalization": i1.LocalizationPipe } });
|
|
98
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: RolesComponent, decorators: [{
|
|
99
|
+
type: Component,
|
|
100
|
+
args: [{ selector: 'abp-roles', providers: [
|
|
101
|
+
ListService,
|
|
102
|
+
{
|
|
103
|
+
provide: EXTENSIONS_IDENTIFIER,
|
|
104
|
+
useValue: "Identity.RolesComponent" /* Roles */,
|
|
105
|
+
},
|
|
106
|
+
], template: "<div id=\"identity-roles-wrapper\" class=\"card\">\r\n <div class=\"card-header\">\r\n <div class=\"row\">\r\n <div class=\"col col-md-6\">\r\n <h5 class=\"card-title\">{{ 'AbpIdentity::Roles' | abpLocalization }}</h5>\r\n </div>\r\n <div class=\"text-end col col-md-6\">\r\n <abp-page-toolbar [record]=\"data.items\"></abp-page-toolbar>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"card-body\">\r\n <abp-extensible-table\r\n [data]=\"data.items\"\r\n [recordsTotal]=\"data.totalCount\"\r\n [list]=\"list\"\r\n ></abp-extensible-table>\r\n </div>\r\n</div>\r\n\r\n<abp-modal [(visible)]=\"isModalVisible\" [busy]=\"modalBusy\">\r\n <ng-template #abpHeader>\r\n <h3>{{ (selected?.id ? 'AbpIdentity::Edit' : 'AbpIdentity::NewRole') | abpLocalization }}</h3>\r\n </ng-template>\r\n\r\n <ng-template #abpBody>\r\n <form [formGroup]=\"form\" (ngSubmit)=\"save()\" validateOnSubmit>\r\n <abp-extensible-form [selectedRecord]=\"selected\"></abp-extensible-form>\r\n </form>\r\n </ng-template>\r\n\r\n <ng-template #abpFooter>\r\n <button type=\"button\" class=\"btn btn-secondary\" abpClose>\r\n {{ 'AbpIdentity::Cancel' | abpLocalization }}\r\n </button>\r\n <abp-button iconClass=\"fa fa-check\" [disabled]=\"form?.invalid\" (click)=\"save()\">{{\r\n 'AbpIdentity::Save' | abpLocalization\r\n }}</abp-button>\r\n </ng-template>\r\n</abp-modal>\r\n\r\n<abp-permission-management\r\n #abpPermissionManagement=\"abpPermissionManagement\"\r\n *abpReplaceableTemplate=\"\r\n {\r\n inputs: {\r\n providerName: { value: 'R' },\r\n providerKey: { value: providerKey },\r\n visible: { value: visiblePermissions, twoWay: true },\r\n hideBadges: { value: true }\r\n },\r\n outputs: { visibleChange: onVisiblePermissionChange },\r\n componentKey: permissionManagementKey\r\n };\r\n let init = initTemplate\r\n \"\r\n (abpInit)=\"init(abpPermissionManagement)\"\r\n>\r\n</abp-permission-management>\r\n" }]
|
|
107
|
+
}], ctorParameters: function () { return [{ type: i1.ListService }, { type: i2.ConfirmationService }, { type: i0.Injector }, { type: i3.IdentityRoleService }]; } });
|
|
108
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm9sZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaWRlbnRpdHkvc3JjL2xpYi9jb21wb25lbnRzL3JvbGVzL3JvbGVzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2lkZW50aXR5L3NyYy9saWIvY29tcG9uZW50cy9yb2xlcy9yb2xlcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFrRCxNQUFNLGNBQWMsQ0FBQztBQUMzRixPQUFPLEVBQW1CLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFOUUsT0FBTyxFQUFFLFlBQVksRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pFLE9BQU8sRUFDTCxxQkFBcUIsRUFDckIsWUFBWSxFQUNaLHFCQUFxQixHQUN0QixNQUFNLGlDQUFpQyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBRTVELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7O0FBYzFDLE1BQU0sT0FBTyxjQUFjO0lBcUJ6QixZQUNrQixJQUFpRCxFQUN2RCxtQkFBd0MsRUFDeEMsUUFBa0IsRUFDbEIsT0FBNEI7UUFIdEIsU0FBSSxHQUFKLElBQUksQ0FBNkM7UUFDdkQsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN4QyxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLFlBQU8sR0FBUCxPQUFPLENBQXFCO1FBeEJ4QyxTQUFJLEdBQW9DLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFRckUsdUJBQWtCLEdBQUcsS0FBSyxDQUFDO1FBSTNCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFFbEIsNEJBQXVC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QUFDLElBQUksR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ2xHLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxXQUFtQjtRQUN0QyxJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztRQUMvQixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQztRQUNqQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDUixDQUFDO0lBRUQsSUFBSSxDQUFDLElBQUk7UUFDUCxNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQztJQUM1QixDQUFDOzsyR0FqR1UsY0FBYzsrRkFBZCxjQUFjLG9DQVJkO1FBQ1QsV0FBVztRQUNYO1lBQ0UsT0FBTyxFQUFFLHFCQUFxQjtZQUM5QixRQUFRLHVDQUEyQjtTQUNwQztLQUNGLDBCQ3ZCSCwrZ0VBNERBOzJGRG5DYSxjQUFjO2tCQVgxQixTQUFTOytCQUNFLFdBQVcsYUFFVjt3QkFDVCxXQUFXO3dCQUNYOzRCQUNFLE9BQU8sRUFBRSxxQkFBcUI7NEJBQzlCLFFBQVEsdUNBQTJCO3lCQUNwQztxQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExpc3RTZXJ2aWNlLCBQYWdlZEFuZFNvcnRlZFJlc3VsdFJlcXVlc3REdG8sIFBhZ2VkUmVzdWx0RHRvIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcclxuaW1wb3J0IHsgSWRlbnRpdHlSb2xlRHRvLCBJZGVudGl0eVJvbGVTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy5pZGVudGl0eS9wcm94eSc7XHJcbmltcG9ydCB7IGVQZXJtaXNzaW9uTWFuYWdlbWVudENvbXBvbmVudHMgfSBmcm9tICdAYWJwL25nLnBlcm1pc3Npb24tbWFuYWdlbWVudCc7XHJcbmltcG9ydCB7IENvbmZpcm1hdGlvbiwgQ29uZmlybWF0aW9uU2VydmljZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcclxuaW1wb3J0IHtcclxuICBFWFRFTlNJT05TX0lERU5USUZJRVIsXHJcbiAgRm9ybVByb3BEYXRhLFxyXG4gIGdlbmVyYXRlRm9ybUZyb21Qcm9wcyxcclxufSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZC9leHRlbnNpb25zJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3RvciwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgZmluYWxpemUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IGVJZGVudGl0eUNvbXBvbmVudHMgfSBmcm9tICcuLi8uLi9lbnVtcy9jb21wb25lbnRzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWJwLXJvbGVzJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcm9sZXMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAgTGlzdFNlcnZpY2UsXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IEVYVEVOU0lPTlNfSURFTlRJRklFUixcclxuICAgICAgdXNlVmFsdWU6IGVJZGVudGl0eUNvbXBvbmVudHMuUm9sZXMsXHJcbiAgICB9LFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSb2xlc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgZGF0YTogUGFnZWRSZXN1bHREdG88SWRlbnRpdHlSb2xlRHRvPiA9IHsgaXRlbXM6IFtdLCB0b3RhbENvdW50OiAwIH07XHJcblxyXG4gIGZvcm06IEZvcm1Hcm91cDtcclxuXHJcbiAgc2VsZWN0ZWQ6IElkZW50aXR5Um9sZUR0bztcclxuXHJcbiAgaXNNb2RhbFZpc2libGU6IGJvb2xlYW47XHJcblxyXG4gIHZpc2libGVQZXJtaXNzaW9ucyA9IGZhbHNlO1xyXG5cclxuICBwcm92aWRlcktleTogc3RyaW5nO1xyXG5cclxuICBtb2RhbEJ1c3kgPSBmYWxzZTtcclxuXHJcbiAgcGVybWlzc2lvbk1hbmFnZW1lbnRLZXkgPSBlUGVybWlzc2lvbk1hbmFnZW1lbnRDb21wb25lbnRzLlBlcm1pc3Npb25NYW5hZ2VtZW50O1xyXG5cclxuICBvblZpc2libGVQZXJtaXNzaW9uQ2hhbmdlID0gZXZlbnQgPT4ge1xyXG4gICAgdGhpcy52aXNpYmxlUGVybWlzc2lvbnMgPSBldmVudDtcclxuICB9O1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyByZWFkb25seSBsaXN0OiBMaXN0U2VydmljZTxQYWdlZEFuZFNvcnRlZFJlc3VsdFJlcXVlc3REdG8+LFxyXG4gICAgcHJvdGVjdGVkIGNvbmZpcm1hdGlvblNlcnZpY2U6IENvbmZpcm1hdGlvblNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgaW5qZWN0b3I6IEluamVjdG9yLFxyXG4gICAgcHJvdGVjdGVkIHNlcnZpY2U6IElkZW50aXR5Um9sZVNlcnZpY2UsXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuaG9va1RvUXVlcnkoKTtcclxuICB9XHJcblxyXG4gIGJ1aWxkRm9ybSgpIHtcclxuICAgIGNvbnN0IGRhdGEgPSBuZXcgRm9ybVByb3BEYXRhKHRoaXMuaW5qZWN0b3IsIHRoaXMuc2VsZWN0ZWQpO1xyXG4gICAgdGhpcy5mb3JtID0gZ2VuZXJhdGVGb3JtRnJvbVByb3BzKGRhdGEpO1xyXG4gIH1cclxuXHJcbiAgb3Blbk1vZGFsKCkge1xyXG4gICAgdGhpcy5idWlsZEZvcm0oKTtcclxuICAgIHRoaXMuaXNNb2RhbFZpc2libGUgPSB0cnVlO1xyXG4gIH1cclxuXHJcbiAgYWRkKCkge1xyXG4gICAgdGhpcy5zZWxlY3RlZCA9IHt9IGFzIElkZW50aXR5Um9sZUR0bztcclxuICAgIHRoaXMub3Blbk1vZGFsKCk7XHJcbiAgfVxyXG5cclxuICBlZGl0KGlkOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuc2VydmljZS5nZXQoaWQpLnN1YnNjcmliZShyZXMgPT4ge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkID0gcmVzO1xyXG4gICAgICB0aGlzLm9wZW5Nb2RhbCgpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBzYXZlKCkge1xyXG4gICAgaWYgKCF0aGlzLmZvcm0udmFsaWQpIHJldHVybjtcclxuICAgIHRoaXMubW9kYWxCdXN5ID0gdHJ1ZTtcclxuXHJcbiAgICBjb25zdCB7IGlkIH0gPSB0aGlzLnNlbGVjdGVkO1xyXG4gICAgKGlkXHJcbiAgICAgID8gdGhpcy5zZXJ2aWNlLnVwZGF0ZShpZCwgeyAuLi50aGlzLnNlbGVjdGVkLCAuLi50aGlzLmZvcm0udmFsdWUgfSlcclxuICAgICAgOiB0aGlzLnNlcnZpY2UuY3JlYXRlKHRoaXMuZm9ybS52YWx1ZSlcclxuICAgIClcclxuICAgICAgLnBpcGUoZmluYWxpemUoKCkgPT4gKHRoaXMubW9kYWxCdXN5ID0gZmFsc2UpKSlcclxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5pc01vZGFsVmlzaWJsZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMubGlzdC5nZXQoKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBkZWxldGUoaWQ6IHN0cmluZywgbmFtZTogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmNvbmZpcm1hdGlvblNlcnZpY2VcclxuICAgICAgLndhcm4oJ0FicElkZW50aXR5OjpSb2xlRGVsZXRpb25Db25maXJtYXRpb25NZXNzYWdlJywgJ0FicElkZW50aXR5OjpBcmVZb3VTdXJlJywge1xyXG4gICAgICAgIG1lc3NhZ2VMb2NhbGl6YXRpb25QYXJhbXM6IFtuYW1lXSxcclxuICAgICAgfSlcclxuICAgICAgLnN1YnNjcmliZSgoc3RhdHVzOiBDb25maXJtYXRpb24uU3RhdHVzKSA9PiB7XHJcbiAgICAgICAgaWYgKHN0YXR1cyA9PT0gQ29uZmlybWF0aW9uLlN0YXR1cy5jb25maXJtKSB7XHJcbiAgICAgICAgICB0aGlzLnNlcnZpY2UuZGVsZXRlKGlkKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5saXN0LmdldCgpKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBob29rVG9RdWVyeSgpIHtcclxuICAgIHRoaXMubGlzdC5ob29rVG9RdWVyeShxdWVyeSA9PiB0aGlzLnNlcnZpY2UuZ2V0TGlzdChxdWVyeSkpLnN1YnNjcmliZShyZXMgPT4gKHRoaXMuZGF0YSA9IHJlcykpO1xyXG4gIH1cclxuXHJcbiAgb3BlblBlcm1pc3Npb25zTW9kYWwocHJvdmlkZXJLZXk6IHN0cmluZykge1xyXG4gICAgdGhpcy5wcm92aWRlcktleSA9IHByb3ZpZGVyS2V5O1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMudmlzaWJsZVBlcm1pc3Npb25zID0gdHJ1ZTtcclxuICAgIH0sIDApO1xyXG4gIH1cclxuXHJcbiAgc29ydChkYXRhKSB7XHJcbiAgICBjb25zdCB7IHByb3AsIGRpciB9ID0gZGF0YS5zb3J0c1swXTtcclxuICAgIHRoaXMubGlzdC5zb3J0S2V5ID0gcHJvcDtcclxuICAgIHRoaXMubGlzdC5zb3J0T3JkZXIgPSBkaXI7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgaWQ9XCJpZGVudGl0eS1yb2xlcy13cmFwcGVyXCIgY2xhc3M9XCJjYXJkXCI+XHJcbiAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJjb2wgY29sLW1kLTZcIj5cclxuICAgICAgICA8aDUgY2xhc3M9XCJjYXJkLXRpdGxlXCI+e3sgJ0FicElkZW50aXR5OjpSb2xlcycgfCBhYnBMb2NhbGl6YXRpb24gfX08L2g1PlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cInRleHQtZW5kIGNvbCBjb2wtbWQtNlwiPlxyXG4gICAgICAgIDxhYnAtcGFnZS10b29sYmFyIFtyZWNvcmRdPVwiZGF0YS5pdGVtc1wiPjwvYWJwLXBhZ2UtdG9vbGJhcj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPGRpdiBjbGFzcz1cImNhcmQtYm9keVwiPlxyXG4gICAgPGFicC1leHRlbnNpYmxlLXRhYmxlXHJcbiAgICAgIFtkYXRhXT1cImRhdGEuaXRlbXNcIlxyXG4gICAgICBbcmVjb3Jkc1RvdGFsXT1cImRhdGEudG90YWxDb3VudFwiXHJcbiAgICAgIFtsaXN0XT1cImxpc3RcIlxyXG4gICAgPjwvYWJwLWV4dGVuc2libGUtdGFibGU+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPGFicC1tb2RhbCBbKHZpc2libGUpXT1cImlzTW9kYWxWaXNpYmxlXCIgW2J1c3ldPVwibW9kYWxCdXN5XCI+XHJcbiAgPG5nLXRlbXBsYXRlICNhYnBIZWFkZXI+XHJcbiAgICA8aDM+e3sgKHNlbGVjdGVkPy5pZCA/ICdBYnBJZGVudGl0eTo6RWRpdCcgOiAnQWJwSWRlbnRpdHk6Ok5ld1JvbGUnKSB8IGFicExvY2FsaXphdGlvbiB9fTwvaDM+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgPG5nLXRlbXBsYXRlICNhYnBCb2R5PlxyXG4gICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtXCIgKG5nU3VibWl0KT1cInNhdmUoKVwiIHZhbGlkYXRlT25TdWJtaXQ+XHJcbiAgICAgIDxhYnAtZXh0ZW5zaWJsZS1mb3JtIFtzZWxlY3RlZFJlY29yZF09XCJzZWxlY3RlZFwiPjwvYWJwLWV4dGVuc2libGUtZm9ybT5cclxuICAgIDwvZm9ybT5cclxuICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICA8bmctdGVtcGxhdGUgI2FicEZvb3Rlcj5cclxuICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIGJ0bi1zZWNvbmRhcnlcIiBhYnBDbG9zZT5cclxuICAgICAge3sgJ0FicElkZW50aXR5OjpDYW5jZWwnIHwgYWJwTG9jYWxpemF0aW9uIH19XHJcbiAgICA8L2J1dHRvbj5cclxuICAgIDxhYnAtYnV0dG9uIGljb25DbGFzcz1cImZhIGZhLWNoZWNrXCIgW2Rpc2FibGVkXT1cImZvcm0/LmludmFsaWRcIiAoY2xpY2spPVwic2F2ZSgpXCI+e3tcclxuICAgICAgJ0FicElkZW50aXR5OjpTYXZlJyB8IGFicExvY2FsaXphdGlvblxyXG4gICAgfX08L2FicC1idXR0b24+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuPC9hYnAtbW9kYWw+XHJcblxyXG48YWJwLXBlcm1pc3Npb24tbWFuYWdlbWVudFxyXG4gICNhYnBQZXJtaXNzaW9uTWFuYWdlbWVudD1cImFicFBlcm1pc3Npb25NYW5hZ2VtZW50XCJcclxuICAqYWJwUmVwbGFjZWFibGVUZW1wbGF0ZT1cIlxyXG4gICAge1xyXG4gICAgICBpbnB1dHM6IHtcclxuICAgICAgICBwcm92aWRlck5hbWU6IHsgdmFsdWU6ICdSJyB9LFxyXG4gICAgICAgIHByb3ZpZGVyS2V5OiB7IHZhbHVlOiBwcm92aWRlcktleSB9LFxyXG4gICAgICAgIHZpc2libGU6IHsgdmFsdWU6IHZpc2libGVQZXJtaXNzaW9ucywgdHdvV2F5OiB0cnVlIH0sXHJcbiAgICAgICAgaGlkZUJhZGdlczogeyB2YWx1ZTogdHJ1ZSB9XHJcbiAgICAgIH0sXHJcbiAgICAgIG91dHB1dHM6IHsgdmlzaWJsZUNoYW5nZTogb25WaXNpYmxlUGVybWlzc2lvbkNoYW5nZSB9LFxyXG4gICAgICBjb21wb25lbnRLZXk6IHBlcm1pc3Npb25NYW5hZ2VtZW50S2V5XHJcbiAgICB9O1xyXG4gICAgbGV0IGluaXQgPSBpbml0VGVtcGxhdGVcclxuICBcIlxyXG4gIChhYnBJbml0KT1cImluaXQoYWJwUGVybWlzc2lvbk1hbmFnZW1lbnQpXCJcclxuPlxyXG48L2FicC1wZXJtaXNzaW9uLW1hbmFnZW1lbnQ+XHJcbiJdfQ==
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
import { ListService } from '@abp/ng.core';
|
|
2
|
+
import { IdentityUserService, } from '@abp/ng.identity/proxy';
|
|
3
|
+
import { Confirmation, ConfirmationService } from '@abp/ng.theme.shared';
|
|
4
|
+
import { EXTENSIONS_IDENTIFIER, FormPropData, generateFormFromProps, } from '@abp/ng.theme.shared/extensions';
|
|
5
|
+
import { Component, Injector, TemplateRef, ViewChild, } from '@angular/core';
|
|
6
|
+
import { FormBuilder } from '@angular/forms';
|
|
7
|
+
import { finalize, switchMap, tap } from 'rxjs/operators';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "@abp/ng.core";
|
|
10
|
+
import * as i2 from "@abp/ng.theme.shared";
|
|
11
|
+
import * as i3 from "@abp/ng.identity/proxy";
|
|
12
|
+
import * as i4 from "@angular/forms";
|
|
13
|
+
import * as i5 from "@abp/ng.theme.shared/extensions";
|
|
14
|
+
import * as i6 from "@ng-bootstrap/ng-bootstrap";
|
|
15
|
+
import * as i7 from "@abp/ng.permission-management";
|
|
16
|
+
import * as i8 from "@angular/common";
|
|
17
|
+
import * as i9 from "@ngx-validate/core";
|
|
18
|
+
export class UsersComponent {
|
|
19
|
+
constructor(list, confirmationService, service, fb, injector) {
|
|
20
|
+
this.list = list;
|
|
21
|
+
this.confirmationService = confirmationService;
|
|
22
|
+
this.service = service;
|
|
23
|
+
this.fb = fb;
|
|
24
|
+
this.injector = injector;
|
|
25
|
+
this.data = { items: [], totalCount: 0 };
|
|
26
|
+
this.visiblePermissions = false;
|
|
27
|
+
this.modalBusy = false;
|
|
28
|
+
this.permissionManagementKey = "PermissionManagement.PermissionManagementComponent" /* PermissionManagement */;
|
|
29
|
+
this.trackByFn = (index, item) => Object.keys(item)[0] || index;
|
|
30
|
+
this.onVisiblePermissionChange = event => {
|
|
31
|
+
this.visiblePermissions = event;
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
get roleGroups() {
|
|
35
|
+
return this.form.get('roleNames')?.controls || [];
|
|
36
|
+
}
|
|
37
|
+
ngOnInit() {
|
|
38
|
+
this.hookToQuery();
|
|
39
|
+
}
|
|
40
|
+
buildForm() {
|
|
41
|
+
const data = new FormPropData(this.injector, this.selected);
|
|
42
|
+
this.form = generateFormFromProps(data);
|
|
43
|
+
this.service.getAssignableRoles().subscribe(({ items }) => {
|
|
44
|
+
this.roles = items;
|
|
45
|
+
this.form.addControl('roleNames', this.fb.array(this.roles.map(role => this.fb.group({
|
|
46
|
+
[role.name]: [
|
|
47
|
+
this.selected.id
|
|
48
|
+
? !!this.selectedUserRoles?.find(userRole => userRole.id === role.id)
|
|
49
|
+
: role.isDefault,
|
|
50
|
+
],
|
|
51
|
+
}))));
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
openModal() {
|
|
55
|
+
this.buildForm();
|
|
56
|
+
this.isModalVisible = true;
|
|
57
|
+
}
|
|
58
|
+
add() {
|
|
59
|
+
this.selected = {};
|
|
60
|
+
this.selectedUserRoles = [];
|
|
61
|
+
this.openModal();
|
|
62
|
+
}
|
|
63
|
+
edit(id) {
|
|
64
|
+
this.service
|
|
65
|
+
.get(id)
|
|
66
|
+
.pipe(tap(user => (this.selected = user)), switchMap(() => this.service.getRoles(id)))
|
|
67
|
+
.subscribe(userRole => {
|
|
68
|
+
this.selectedUserRoles = userRole.items || [];
|
|
69
|
+
this.openModal();
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
save() {
|
|
73
|
+
if (!this.form.valid || this.modalBusy)
|
|
74
|
+
return;
|
|
75
|
+
this.modalBusy = true;
|
|
76
|
+
const { roleNames = [] } = this.form.value;
|
|
77
|
+
const mappedRoleNames = roleNames.filter(role => !!role[Object.keys(role)[0]]).map(role => Object.keys(role)[0]) ||
|
|
78
|
+
[];
|
|
79
|
+
const { id } = this.selected;
|
|
80
|
+
(id
|
|
81
|
+
? this.service.update(id, {
|
|
82
|
+
...this.selected,
|
|
83
|
+
...this.form.value,
|
|
84
|
+
roleNames: mappedRoleNames,
|
|
85
|
+
})
|
|
86
|
+
: this.service.create({ ...this.form.value, roleNames: mappedRoleNames }))
|
|
87
|
+
.pipe(finalize(() => (this.modalBusy = false)))
|
|
88
|
+
.subscribe(() => {
|
|
89
|
+
this.isModalVisible = false;
|
|
90
|
+
this.list.get();
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
delete(id, userName) {
|
|
94
|
+
this.confirmationService
|
|
95
|
+
.warn('AbpIdentity::UserDeletionConfirmationMessage', 'AbpIdentity::AreYouSure', {
|
|
96
|
+
messageLocalizationParams: [userName],
|
|
97
|
+
})
|
|
98
|
+
.subscribe((status) => {
|
|
99
|
+
if (status === Confirmation.Status.confirm) {
|
|
100
|
+
this.service.delete(id).subscribe(() => this.list.get());
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
sort(data) {
|
|
105
|
+
const { prop, dir } = data.sorts[0];
|
|
106
|
+
this.list.sortKey = prop;
|
|
107
|
+
this.list.sortOrder = dir;
|
|
108
|
+
}
|
|
109
|
+
hookToQuery() {
|
|
110
|
+
this.list.hookToQuery(query => this.service.getList(query)).subscribe(res => (this.data = res));
|
|
111
|
+
}
|
|
112
|
+
openPermissionsModal(providerKey) {
|
|
113
|
+
this.providerKey = providerKey;
|
|
114
|
+
setTimeout(() => {
|
|
115
|
+
this.visiblePermissions = true;
|
|
116
|
+
}, 0);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
UsersComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: UsersComponent, deps: [{ token: i1.ListService }, { token: i2.ConfirmationService }, { token: i3.IdentityUserService }, { token: i4.FormBuilder }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
120
|
+
UsersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: UsersComponent, selector: "abp-users", providers: [
|
|
121
|
+
ListService,
|
|
122
|
+
{
|
|
123
|
+
provide: EXTENSIONS_IDENTIFIER,
|
|
124
|
+
useValue: "Identity.UsersComponent" /* Users */,
|
|
125
|
+
},
|
|
126
|
+
], viewQueries: [{ propertyName: "modalContent", first: true, predicate: ["modalContent"], descendants: true }], ngImport: i0, template: "<div id=\"identity-roles-wrapper\" class=\"card\">\r\n <div class=\"card-header\">\r\n <div class=\"row\">\r\n <div class=\"col col-md-6\">\r\n <h5 class=\"card-title\">{{ 'AbpIdentity::Users' | abpLocalization }}</h5>\r\n </div>\r\n <div class=\"text-end col col-md-6\">\r\n <abp-page-toolbar [record]=\"data.items\"></abp-page-toolbar>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"card-body\">\r\n <div id=\"data-tables-table-filter\" class=\"data-tables-filter\">\r\n <div class=\"input-group\">\r\n <input\r\n type=\"search\"\r\n class=\"form-control\"\r\n [placeholder]=\"'AbpUi::PagerSearch' | abpLocalization\"\r\n [(ngModel)]=\"list.filter\"\r\n />\r\n </div>\r\n </div>\r\n\r\n <abp-extensible-table\r\n [data]=\"data.items\"\r\n [recordsTotal]=\"data.totalCount\"\r\n [list]=\"list\"\r\n ></abp-extensible-table>\r\n </div>\r\n</div>\r\n\r\n<abp-modal [(visible)]=\"isModalVisible\" [busy]=\"modalBusy\">\r\n <ng-template #abpHeader>\r\n <h3>{{ (selected?.id ? 'AbpIdentity::Edit' : 'AbpIdentity::NewUser') | abpLocalization }}</h3>\r\n </ng-template>\r\n\r\n <ng-template #abpBody>\r\n <ng-template #loaderRef\r\n ><div class=\"text-center\"><i class=\"fa fa-pulse fa-spinner\"></i></div\r\n ></ng-template>\r\n\r\n <form *ngIf=\"form; else loaderRef\" [formGroup]=\"form\" (ngSubmit)=\"save()\">\r\n <ul ngbNav #nav=\"ngbNav\" class=\"nav-tabs\">\r\n <li ngbNavItem>\r\n <a ngbNavLink>{{ 'AbpIdentity::UserInformations' | abpLocalization }}</a>\r\n <ng-template ngbNavContent>\r\n <abp-extensible-form [selectedRecord]=\"selected\"></abp-extensible-form>\r\n </ng-template>\r\n </li>\r\n\r\n <li ngbNavItem>\r\n <a ngbNavLink>{{ 'AbpIdentity::Roles' | abpLocalization }}</a>\r\n <ng-template ngbNavContent>\r\n <div\r\n *ngFor=\"let roleGroup of roleGroups; let i = index; trackBy: trackByFn\"\r\n class=\"form-check mb-2\"\r\n >\r\n <input\r\n type=\"checkbox\"\r\n class=\"form-check-input\"\r\n [attr.id]=\"'roles-' + i\"\r\n [formControl]=\"roleGroup.controls[roles[i].name]\"\r\n />\r\n <label class=\"form-check-label\" [attr.for]=\"'roles-' + i\">{{ roles[i].name }}</label>\r\n </div>\r\n </ng-template>\r\n </li>\r\n </ul>\r\n\r\n <div class=\"mt-2 fade-in-top\" [ngbNavOutlet]=\"nav\"></div>\r\n </form>\r\n </ng-template>\r\n\r\n <ng-template #abpFooter>\r\n <button type=\"button\" class=\"btn btn-secondary\" abpClose>\r\n {{ 'AbpIdentity::Cancel' | abpLocalization }}\r\n </button>\r\n <abp-button iconClass=\"fa fa-check\" [disabled]=\"form?.invalid\" (click)=\"save()\">{{\r\n 'AbpIdentity::Save' | abpLocalization\r\n }}</abp-button>\r\n </ng-template>\r\n</abp-modal>\r\n\r\n<abp-permission-management\r\n #abpPermissionManagement=\"abpPermissionManagement\"\r\n *abpReplaceableTemplate=\"\r\n {\r\n inputs: {\r\n providerName: { value: 'U' },\r\n providerKey: { value: providerKey },\r\n visible: { value: visiblePermissions, twoWay: true }\r\n },\r\n outputs: { visibleChange: onVisiblePermissionChange },\r\n componentKey: permissionManagementKey\r\n };\r\n let init = initTemplate\r\n \"\r\n (abpInit)=\"init(abpPermissionManagement)\"\r\n>\r\n</abp-permission-management>\r\n", components: [{ type: i5.PageToolbarComponent, selector: "abp-page-toolbar", exportAs: ["abpPageToolbar"] }, { type: i5.ExtensibleTableComponent, selector: "abp-extensible-table", inputs: ["actionsText", "data", "list", "recordsTotal", "actionsColumnWidth", "actionsTemplate"], exportAs: ["abpExtensibleTable"] }, { type: i2.ModalComponent, selector: "abp-modal", inputs: ["visible", "busy", "options", "suppressUnsavedChangesWarning"], outputs: ["visibleChange", "init", "appear", "disappear"] }, { type: i5.ExtensibleFormComponent, selector: "abp-extensible-form", inputs: ["selectedRecord"], exportAs: ["abpExtensibleForm"] }, { type: i6.NgbNavOutlet, selector: "[ngbNavOutlet]", inputs: ["paneRole", "ngbNavOutlet"] }, { type: i2.ButtonComponent, selector: "abp-button", inputs: ["buttonId", "buttonClass", "buttonType", "iconClass", "loading", "disabled", "attributes"], outputs: ["click", "focus", "blur", "abpClick", "abpFocus", "abpBlur"] }, { type: i7.PermissionManagementComponent, selector: "abp-permission-management", inputs: ["providerName", "providerKey", "hideBadges", "visible"], outputs: ["visibleChange"], exportAs: ["abpPermissionManagement"] }], directives: [{ type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i1.FormSubmitDirective, selector: "form[ngSubmit][formGroup]", inputs: ["debounce", "notValidateOnSubmit"], outputs: ["ngSubmit"] }, { type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i9.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { type: i6.NgbNav, selector: "[ngbNav]", inputs: ["activeId", "animation", "destroyOnHide", "orientation", "roles", "keyboard"], outputs: ["activeIdChange", "shown", "hidden", "navChange"], exportAs: ["ngbNav"] }, { type: i6.NgbNavItem, selector: "[ngbNavItem]", inputs: ["destroyOnHide", "disabled", "domId", "ngbNavItem"], outputs: ["shown", "hidden"], exportAs: ["ngbNavItem"] }, { type: i6.NgbNavLink, selector: "a[ngbNavLink]" }, { type: i6.NgbNavContent, selector: "ng-template[ngbNavContent]" }, { type: i8.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i9.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { type: i2.ModalCloseDirective, selector: "[abpClose]" }, { type: i1.ReplaceableTemplateDirective, selector: "[abpReplaceableTemplate]", inputs: ["abpReplaceableTemplate"] }, { type: i1.InitDirective, selector: "[abpInit]", outputs: ["abpInit"] }], pipes: { "abpLocalization": i1.LocalizationPipe } });
|
|
127
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: UsersComponent, decorators: [{
|
|
128
|
+
type: Component,
|
|
129
|
+
args: [{ selector: 'abp-users', providers: [
|
|
130
|
+
ListService,
|
|
131
|
+
{
|
|
132
|
+
provide: EXTENSIONS_IDENTIFIER,
|
|
133
|
+
useValue: "Identity.UsersComponent" /* Users */,
|
|
134
|
+
},
|
|
135
|
+
], template: "<div id=\"identity-roles-wrapper\" class=\"card\">\r\n <div class=\"card-header\">\r\n <div class=\"row\">\r\n <div class=\"col col-md-6\">\r\n <h5 class=\"card-title\">{{ 'AbpIdentity::Users' | abpLocalization }}</h5>\r\n </div>\r\n <div class=\"text-end col col-md-6\">\r\n <abp-page-toolbar [record]=\"data.items\"></abp-page-toolbar>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"card-body\">\r\n <div id=\"data-tables-table-filter\" class=\"data-tables-filter\">\r\n <div class=\"input-group\">\r\n <input\r\n type=\"search\"\r\n class=\"form-control\"\r\n [placeholder]=\"'AbpUi::PagerSearch' | abpLocalization\"\r\n [(ngModel)]=\"list.filter\"\r\n />\r\n </div>\r\n </div>\r\n\r\n <abp-extensible-table\r\n [data]=\"data.items\"\r\n [recordsTotal]=\"data.totalCount\"\r\n [list]=\"list\"\r\n ></abp-extensible-table>\r\n </div>\r\n</div>\r\n\r\n<abp-modal [(visible)]=\"isModalVisible\" [busy]=\"modalBusy\">\r\n <ng-template #abpHeader>\r\n <h3>{{ (selected?.id ? 'AbpIdentity::Edit' : 'AbpIdentity::NewUser') | abpLocalization }}</h3>\r\n </ng-template>\r\n\r\n <ng-template #abpBody>\r\n <ng-template #loaderRef\r\n ><div class=\"text-center\"><i class=\"fa fa-pulse fa-spinner\"></i></div\r\n ></ng-template>\r\n\r\n <form *ngIf=\"form; else loaderRef\" [formGroup]=\"form\" (ngSubmit)=\"save()\">\r\n <ul ngbNav #nav=\"ngbNav\" class=\"nav-tabs\">\r\n <li ngbNavItem>\r\n <a ngbNavLink>{{ 'AbpIdentity::UserInformations' | abpLocalization }}</a>\r\n <ng-template ngbNavContent>\r\n <abp-extensible-form [selectedRecord]=\"selected\"></abp-extensible-form>\r\n </ng-template>\r\n </li>\r\n\r\n <li ngbNavItem>\r\n <a ngbNavLink>{{ 'AbpIdentity::Roles' | abpLocalization }}</a>\r\n <ng-template ngbNavContent>\r\n <div\r\n *ngFor=\"let roleGroup of roleGroups; let i = index; trackBy: trackByFn\"\r\n class=\"form-check mb-2\"\r\n >\r\n <input\r\n type=\"checkbox\"\r\n class=\"form-check-input\"\r\n [attr.id]=\"'roles-' + i\"\r\n [formControl]=\"roleGroup.controls[roles[i].name]\"\r\n />\r\n <label class=\"form-check-label\" [attr.for]=\"'roles-' + i\">{{ roles[i].name }}</label>\r\n </div>\r\n </ng-template>\r\n </li>\r\n </ul>\r\n\r\n <div class=\"mt-2 fade-in-top\" [ngbNavOutlet]=\"nav\"></div>\r\n </form>\r\n </ng-template>\r\n\r\n <ng-template #abpFooter>\r\n <button type=\"button\" class=\"btn btn-secondary\" abpClose>\r\n {{ 'AbpIdentity::Cancel' | abpLocalization }}\r\n </button>\r\n <abp-button iconClass=\"fa fa-check\" [disabled]=\"form?.invalid\" (click)=\"save()\">{{\r\n 'AbpIdentity::Save' | abpLocalization\r\n }}</abp-button>\r\n </ng-template>\r\n</abp-modal>\r\n\r\n<abp-permission-management\r\n #abpPermissionManagement=\"abpPermissionManagement\"\r\n *abpReplaceableTemplate=\"\r\n {\r\n inputs: {\r\n providerName: { value: 'U' },\r\n providerKey: { value: providerKey },\r\n visible: { value: visiblePermissions, twoWay: true }\r\n },\r\n outputs: { visibleChange: onVisiblePermissionChange },\r\n componentKey: permissionManagementKey\r\n };\r\n let init = initTemplate\r\n \"\r\n (abpInit)=\"init(abpPermissionManagement)\"\r\n>\r\n</abp-permission-management>\r\n" }]
|
|
136
|
+
}], ctorParameters: function () { return [{ type: i1.ListService }, { type: i2.ConfirmationService }, { type: i3.IdentityUserService }, { type: i4.FormBuilder }, { type: i0.Injector }]; }, propDecorators: { modalContent: [{
|
|
137
|
+
type: ViewChild,
|
|
138
|
+
args: ['modalContent', { static: false }]
|
|
139
|
+
}] } });
|
|
140
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlcnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaWRlbnRpdHkvc3JjL2xpYi9jb21wb25lbnRzL3VzZXJzL3VzZXJzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2lkZW50aXR5L3NyYy9saWIvY29tcG9uZW50cy91c2Vycy91c2Vycy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFrQixNQUFNLGNBQWMsQ0FBQztBQUMzRCxPQUFPLEVBSUwsbUJBQW1CLEdBQ3BCLE1BQU0sd0JBQXdCLENBQUM7QUFFaEMsT0FBTyxFQUFFLFlBQVksRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pFLE9BQU8sRUFDTCxxQkFBcUIsRUFDckIsWUFBWSxFQUNaLHFCQUFxQixHQUN0QixNQUFNLGlDQUFpQyxDQUFDO0FBQ3pDLE9BQU8sRUFDTCxTQUFTLEVBQ1QsUUFBUSxFQUVSLFdBQVcsRUFFWCxTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUE4QixXQUFXLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRixPQUFPLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7Ozs7QUFjMUQsTUFBTSxPQUFPLGNBQWM7SUFrQ3pCLFlBQ2tCLElBQXdDLEVBQzlDLG1CQUF3QyxFQUN4QyxPQUE0QixFQUM1QixFQUFlLEVBQ2YsUUFBa0I7UUFKWixTQUFJLEdBQUosSUFBSSxDQUFvQztRQUM5Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLFlBQU8sR0FBUCxPQUFPLENBQXFCO1FBQzVCLE9BQUUsR0FBRixFQUFFLENBQWE7UUFDZixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBdEM5QixTQUFJLEdB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QUFDO1FBQy9CLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDO1FBQ2pDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNSLENBQUM7OzJHQWxKVSxjQUFjOytGQUFkLGNBQWMsb0NBUmQ7UUFDVCxXQUFXO1FBQ1g7WUFDRSxPQUFPLEVBQUUscUJBQXFCO1lBQzlCLFFBQVEsdUNBQTJCO1NBQ3BDO0tBQ0Ysd0lDbkNILGdpSEFvR0E7MkZEL0RhLGNBQWM7a0JBWDFCLFNBQVM7K0JBQ0UsV0FBVyxhQUVWO3dCQUNULFdBQVc7d0JBQ1g7NEJBQ0UsT0FBTyxFQUFFLHFCQUFxQjs0QkFDOUIsUUFBUSx1Q0FBMkI7eUJBQ3BDO3FCQUNGO3VOQU1ELFlBQVk7c0JBRFgsU0FBUzt1QkFBQyxjQUFjLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTGlzdFNlcnZpY2UsIFBhZ2VkUmVzdWx0RHRvIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcclxuaW1wb3J0IHtcclxuICBHZXRJZGVudGl0eVVzZXJzSW5wdXQsXHJcbiAgSWRlbnRpdHlSb2xlRHRvLFxyXG4gIElkZW50aXR5VXNlckR0byxcclxuICBJZGVudGl0eVVzZXJTZXJ2aWNlLFxyXG59IGZyb20gJ0BhYnAvbmcuaWRlbnRpdHkvcHJveHknO1xyXG5pbXBvcnQgeyBlUGVybWlzc2lvbk1hbmFnZW1lbnRDb21wb25lbnRzIH0gZnJvbSAnQGFicC9uZy5wZXJtaXNzaW9uLW1hbmFnZW1lbnQnO1xyXG5pbXBvcnQgeyBDb25maXJtYXRpb24sIENvbmZpcm1hdGlvblNlcnZpY2UgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZCc7XHJcbmltcG9ydCB7XHJcbiAgRVhURU5TSU9OU19JREVOVElGSUVSLFxyXG4gIEZvcm1Qcm9wRGF0YSxcclxuICBnZW5lcmF0ZUZvcm1Gcm9tUHJvcHMsXHJcbn0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQvZXh0ZW5zaW9ucyc7XHJcbmltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEluamVjdG9yLFxyXG4gIE9uSW5pdCxcclxuICBUZW1wbGF0ZVJlZixcclxuICBUcmFja0J5RnVuY3Rpb24sXHJcbiAgVmlld0NoaWxkLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEZvcm1BcnJheSwgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgZmluYWxpemUsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBlSWRlbnRpdHlDb21wb25lbnRzIH0gZnJvbSAnLi4vLi4vZW51bXMvY29tcG9uZW50cyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FicC11c2VycycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3VzZXJzLmNvbXBvbmVudC5odG1sJyxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIExpc3RTZXJ2aWNlLFxyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBFWFRFTlNJT05TX0lERU5USUZJRVIsXHJcbiAgICAgIHVzZVZhbHVlOiBlSWRlbnRpdHlDb21wb25lbnRzLlVzZXJzLFxyXG4gICAgfSxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVXNlcnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGRhdGE6IFBhZ2VkUmVzdWx0RHRvPElkZW50aXR5VXNlckR0bz4gPSB7IGl0ZW1zOiBbXSwgdG90YWxDb3VudDogMCB9O1xyXG5cclxuICBAVmlld0NoaWxkKCdtb2RhbENvbnRlbnQnLCB7IHN0YXRpYzogZmFsc2UgfSlcclxuICBtb2RhbENvbnRlbnQ6IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIGZvcm06IEZvcm1Hcm91cDtcclxuXHJcbiAgc2VsZWN0ZWQ6IElkZW50aXR5VXNlckR0bztcclxuXHJcbiAgc2VsZWN0ZWRVc2VyUm9sZXM6IElkZW50aXR5Um9sZUR0b1tdO1xyXG5cclxuICByb2xlczogSWRlbnRpdHlSb2xlRHRvW107XHJcblxyXG4gIHZpc2libGVQZXJtaXNzaW9ucyA9IGZhbHNlO1xyXG5cclxuICBwcm92aWRlcktleTogc3RyaW5nO1xyXG5cclxuICBpc01vZGFsVmlzaWJsZTogYm9vbGVhbjtcclxuXHJcbiAgbW9kYWxCdXN5ID0gZmFsc2U7XHJcblxyXG4gIHBlcm1pc3Npb25NYW5hZ2VtZW50S2V5ID0gZVBlcm1pc3Npb25NYW5hZ2VtZW50Q29tcG9uZW50cy5QZXJtaXNzaW9uTWFuYWdlbWVudDtcclxuXHJcbiAgdHJhY2tCeUZuOiBUcmFja0J5RnVuY3Rpb248QWJzdHJhY3RDb250cm9sPiA9IChpbmRleCwgaXRlbSkgPT4gT2JqZWN0LmtleXMoaXRlbSlbMF0gfHwgaW5kZXg7XHJcblxyXG4gIG9uVmlzaWJsZVBlcm1pc3Npb25DaGFuZ2UgPSBldmVudCA9PiB7XHJcbiAgICB0aGlzLnZpc2libGVQZXJtaXNzaW9ucyA9IGV2ZW50O1xyXG4gIH07XHJcblxyXG4gIGdldCByb2xlR3JvdXBzKCk6IEZvcm1Hcm91cFtdIHtcclxuICAgIHJldHVybiAoKHRoaXMuZm9ybS5nZXQoJ3JvbGVOYW1lcycpIGFzIEZvcm1BcnJheSk/LmNvbnRyb2xzIGFzIEZvcm1Hcm91cFtdKSB8fCBbXTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHJlYWRvbmx5IGxpc3Q6IExpc3RTZXJ2aWNlPEdldElkZW50aXR5VXNlcnNJbnB1dD4sXHJcbiAgICBwcm90ZWN0ZWQgY29uZmlybWF0aW9uU2VydmljZTogQ29uZmlybWF0aW9uU2VydmljZSxcclxuICAgIHByb3RlY3RlZCBzZXJ2aWNlOiBJZGVudGl0eVVzZXJTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGZiOiBGb3JtQnVpbGRlcixcclxuICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuaG9va1RvUXVlcnkoKTtcclxuICB9XHJcblxyXG4gIGJ1aWxkRm9ybSgpIHtcclxuICAgIGNvbnN0IGRhdGEgPSBuZXcgRm9ybVByb3BEYXRhKHRoaXMuaW5qZWN0b3IsIHRoaXMuc2VsZWN0ZWQpO1xyXG4gICAgdGhpcy5mb3JtID0gZ2VuZXJhdGVGb3JtRnJvbVByb3BzKGRhdGEpO1xyXG5cclxuICAgIHRoaXMuc2VydmljZS5nZXRBc3NpZ25hYmxlUm9sZXMoKS5zdWJzY3JpYmUoKHsgaXRlbXMgfSkgPT4ge1xyXG4gICAgICB0aGlzLnJvbGVzID0gaXRlbXM7XHJcbiAgICAgIHRoaXMuZm9ybS5hZGRDb250cm9sKFxyXG4gICAgICAgICdyb2xlTmFtZXMnLFxyXG4gICAgICAgIHRoaXMuZmIuYXJyYXkoXHJcbiAgICAgICAgICB0aGlzLnJvbGVzLm1hcChyb2xlID0+XHJcbiAgICAgICAgICAgIHRoaXMuZmIuZ3JvdXAoe1xyXG4gICAgICAgICAgICAgIFtyb2xlLm5hbWVdOiBbXHJcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkLmlkXHJcbiAgICAgICAgICAgICAgICAgID8gISF0aGlzLnNlbGVjdGVkVXNlclJvbGVzPy5maW5kKHVzZXJSb2xlID0+IHVzZXJSb2xlLmlkID09PSByb2xlLmlkKVxyXG4gICAgICAgICAgICAgICAgICA6IHJvbGUuaXNEZWZhdWx0LFxyXG4gICAgICAgICAgICAgIF0sXHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgKSxcclxuICAgICAgICApLFxyXG4gICAgICApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBvcGVuTW9kYWwoKSB7XHJcbiAgICB0aGlzLmJ1aWxkRm9ybSgpO1xyXG4gICAgdGhpcy5pc01vZGFsVmlzaWJsZSA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBhZGQoKSB7XHJcbiAgICB0aGlzLnNlbGVjdGVkID0ge30gYXMgSWRlbnRpdHlVc2VyRHRvO1xyXG4gICAgdGhpcy5zZWxlY3RlZFVzZXJSb2xlcyA9IFtdIGFzIElkZW50aXR5Um9sZUR0b1tdO1xyXG4gICAgdGhpcy5vcGVuTW9kYWwoKTtcclxuICB9XHJcblxyXG4gIGVkaXQoaWQ6IHN0cmluZykge1xyXG4gICAgdGhpcy5zZXJ2aWNlXHJcbiAgICAgIC5nZXQoaWQpXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIHRhcCh1c2VyID0+ICh0aGlzLnNlbGVjdGVkID0gdXNlcikpLFxyXG4gICAgICAgIHN3aXRjaE1hcCgoKSA9PiB0aGlzLnNlcnZpY2UuZ2V0Um9sZXMoaWQpKSxcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKHVzZXJSb2xlID0+IHtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkVXNlclJvbGVzID0gdXNlclJvbGUuaXRlbXMgfHwgW107XHJcbiAgICAgICAgdGhpcy5vcGVuTW9kYWwoKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBzYXZlKCkge1xyXG4gICAgaWYgKCF0aGlzLmZvcm0udmFsaWQgfHwgdGhpcy5tb2RhbEJ1c3kpIHJldHVybjtcclxuICAgIHRoaXMubW9kYWxCdXN5ID0gdHJ1ZTtcclxuXHJcbiAgICBjb25zdCB7IHJvbGVOYW1lcyA9IFtdIH0gPSB0aGlzLmZvcm0udmFsdWU7XHJcbiAgICBjb25zdCBtYXBwZWRSb2xlTmFtZXMgPVxyXG4gICAgICByb2xlTmFtZXMuZmlsdGVyKHJvbGUgPT4gISFyb2xlW09iamVjdC5rZXlzKHJvbGUpWzBdXSkubWFwKHJvbGUgPT4gT2JqZWN0LmtleXMocm9sZSlbMF0pIHx8XHJcbiAgICAgIFtdO1xyXG5cclxuICAgIGNvbnN0IHsgaWQgfSA9IHRoaXMuc2VsZWN0ZWQ7XHJcblxyXG4gICAgKGlkXHJcbiAgICAgID8gdGhpcy5zZXJ2aWNlLnVwZGF0ZShpZCwge1xyXG4gICAgICAgICAgLi4udGhpcy5zZWxlY3RlZCxcclxuICAgICAgICAgIC4uLnRoaXMuZm9ybS52YWx1ZSxcclxuICAgICAgICAgIHJvbGVOYW1lczogbWFwcGVkUm9sZU5hbWVzLFxyXG4gICAgICAgIH0pXHJcbiAgICAgIDogdGhpcy5zZXJ2aWNlLmNyZWF0ZSh7IC4uLnRoaXMuZm9ybS52YWx1ZSwgcm9sZU5hbWVzOiBtYXBwZWRSb2xlTmFtZXMgfSlcclxuICAgIClcclxuICAgICAgLnBpcGUoZmluYWxpemUoKCkgPT4gKHRoaXMubW9kYWxCdXN5ID0gZmFsc2UpKSlcclxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5pc01vZGFsVmlzaWJsZSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMubGlzdC5nZXQoKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBkZWxldGUoaWQ6IHN0cmluZywgdXNlck5hbWU6IHN0cmluZykge1xyXG4gICAgdGhpcy5jb25maXJtYXRpb25TZXJ2aWNlXHJcbiAgICAgIC53YXJuKCdBYnBJZGVudGl0eTo6VXNlckRlbGV0aW9uQ29uZmlybWF0aW9uTWVzc2FnZScsICdBYnBJZGVudGl0eTo6QXJlWW91U3VyZScsIHtcclxuICAgICAgICBtZXNzYWdlTG9jYWxpemF0aW9uUGFyYW1zOiBbdXNlck5hbWVdLFxyXG4gICAgICB9KVxyXG4gICAgICAuc3Vic2NyaWJlKChzdGF0dXM6IENvbmZpcm1hdGlvbi5TdGF0dXMpID0+IHtcclxuICAgICAgICBpZiAoc3RhdHVzID09PSBDb25maXJtYXRpb24uU3RhdHVzLmNvbmZpcm0pIHtcclxuICAgICAgICAgIHRoaXMuc2VydmljZS5kZWxldGUoaWQpLnN1YnNjcmliZSgoKSA9PiB0aGlzLmxpc3QuZ2V0KCkpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBzb3J0KGRhdGEpIHtcclxuICAgIGNvbnN0IHsgcHJvcCwgZGlyIH0gPSBkYXRhLnNvcnRzWzBdO1xyXG4gICAgdGhpcy5saXN0LnNvcnRLZXkgPSBwcm9wO1xyXG4gICAgdGhpcy5saXN0LnNvcnRPcmRlciA9IGRpcjtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaG9va1RvUXVlcnkoKSB7XHJcbiAgICB0aGlzLmxpc3QuaG9va1RvUXVlcnkocXVlcnkgPT4gdGhpcy5zZXJ2aWNlLmdldExpc3QocXVlcnkpKS5zdWJzY3JpYmUocmVzID0+ICh0aGlzLmRhdGEgPSByZXMpKTtcclxuICB9XHJcblxyXG4gIG9wZW5QZXJtaXNzaW9uc01vZGFsKHByb3ZpZGVyS2V5OiBzdHJpbmcpIHtcclxuICAgIHRoaXMucHJvdmlkZXJLZXkgPSBwcm92aWRlcktleTtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLnZpc2libGVQZXJtaXNzaW9ucyA9IHRydWU7XHJcbiAgICB9LCAwKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBpZD1cImlkZW50aXR5LXJvbGVzLXdyYXBwZXJcIiBjbGFzcz1cImNhcmRcIj5cclxuICA8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXJcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbCBjb2wtbWQtNlwiPlxyXG4gICAgICAgIDxoNSBjbGFzcz1cImNhcmQtdGl0bGVcIj57eyAnQWJwSWRlbnRpdHk6OlVzZXJzJyB8IGFicExvY2FsaXphdGlvbiB9fTwvaDU+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidGV4dC1lbmQgY29sIGNvbC1tZC02XCI+XHJcbiAgICAgICAgPGFicC1wYWdlLXRvb2xiYXIgW3JlY29yZF09XCJkYXRhLml0ZW1zXCI+PC9hYnAtcGFnZS10b29sYmFyPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHlcIj5cclxuICAgIDxkaXYgaWQ9XCJkYXRhLXRhYmxlcy10YWJsZS1maWx0ZXJcIiBjbGFzcz1cImRhdGEtdGFibGVzLWZpbHRlclwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXBcIj5cclxuICAgICAgICA8aW5wdXRcclxuICAgICAgICAgIHR5cGU9XCJzZWFyY2hcIlxyXG4gICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxyXG4gICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidBYnBVaTo6UGFnZXJTZWFyY2gnIHwgYWJwTG9jYWxpemF0aW9uXCJcclxuICAgICAgICAgIFsobmdNb2RlbCldPVwibGlzdC5maWx0ZXJcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGFicC1leHRlbnNpYmxlLXRhYmxlXHJcbiAgICAgIFtkYXRhXT1cImRhdGEuaXRlbXNcIlxyXG4gICAgICBbcmVjb3Jkc1RvdGFsXT1cImRhdGEudG90YWxDb3VudFwiXHJcbiAgICAgIFtsaXN0XT1cImxpc3RcIlxyXG4gICAgPjwvYWJwLWV4dGVuc2libGUtdGFibGU+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPGFicC1tb2RhbCBbKHZpc2libGUpXT1cImlzTW9kYWxWaXNpYmxlXCIgW2J1c3ldPVwibW9kYWxCdXN5XCI+XHJcbiAgPG5nLXRlbXBsYXRlICNhYnBIZWFkZXI+XHJcbiAgICA8aDM+e3sgKHNlbGVjdGVkPy5pZCA/ICdBYnBJZGVudGl0eTo6RWRpdCcgOiAnQWJwSWRlbnRpdHk6Ok5ld1VzZXInKSB8IGFicExvY2FsaXphdGlvbiB9fTwvaDM+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgPG5nLXRlbXBsYXRlICNhYnBCb2R5PlxyXG4gICAgPG5nLXRlbXBsYXRlICNsb2FkZXJSZWZcclxuICAgICAgPjxkaXYgY2xhc3M9XCJ0ZXh0LWNlbnRlclwiPjxpIGNsYXNzPVwiZmEgZmEtcHVsc2UgZmEtc3Bpbm5lclwiPjwvaT48L2RpdlxyXG4gICAgPjwvbmctdGVtcGxhdGU+XHJcblxyXG4gICAgPGZvcm0gKm5nSWY9XCJmb3JtOyBlbHNlIGxvYWRlclJlZlwiIFtmb3JtR3JvdXBdPVwiZm9ybVwiIChuZ1N1Ym1pdCk9XCJzYXZlKClcIj5cclxuICAgICAgPHVsIG5nYk5hdiAjbmF2PVwibmdiTmF2XCIgY2xhc3M9XCJuYXYtdGFic1wiPlxyXG4gICAgICAgIDxsaSBuZ2JOYXZJdGVtPlxyXG4gICAgICAgICAgPGEgbmdiTmF2TGluaz57eyAnQWJwSWRlbnRpdHk6OlVzZXJJbmZvcm1hdGlvbnMnIHwgYWJwTG9jYWxpemF0aW9uIH19PC9hPlxyXG4gICAgICAgICAgPG5nLXRlbXBsYXRlIG5nYk5hdkNvbnRlbnQ+XHJcbiAgICAgICAgICAgIDxhYnAtZXh0ZW5zaWJsZS1mb3JtIFtzZWxlY3RlZFJlY29yZF09XCJzZWxlY3RlZFwiPjwvYWJwLWV4dGVuc2libGUtZm9ybT5cclxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPC9saT5cclxuXHJcbiAgICAgICAgPGxpIG5nYk5hdkl0ZW0+XHJcbiAgICAgICAgICA8YSBuZ2JOYXZMaW5rPnt7ICdBYnBJZGVudGl0eTo6Um9sZXMnIHwgYWJwTG9jYWxpemF0aW9uIH19PC9hPlxyXG4gICAgICAgICAgPG5nLXRlbXBsYXRlIG5nYk5hdkNvbnRlbnQ+XHJcbiAgICAgICAgICAgIDxkaXZcclxuICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgcm9sZUdyb3VwIG9mIHJvbGVHcm91cHM7IGxldCBpID0gaW5kZXg7IHRyYWNrQnk6IHRyYWNrQnlGblwiXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNoZWNrIG1iLTJcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0XCJcclxuICAgICAgICAgICAgICAgIFthdHRyLmlkXT1cIidyb2xlcy0nICsgaVwiXHJcbiAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwicm9sZUdyb3VwLmNvbnRyb2xzW3JvbGVzW2ldLm5hbWVdXCJcclxuICAgICAgICAgICAgICAvPlxyXG4gICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWxcIiBbYXR0ci5mb3JdPVwiJ3JvbGVzLScgKyBpXCI+e3sgcm9sZXNbaV0ubmFtZSB9fTwvbGFiZWw+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8L2xpPlxyXG4gICAgICA8L3VsPlxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cIm10LTIgZmFkZS1pbi10b3BcIiBbbmdiTmF2T3V0bGV0XT1cIm5hdlwiPjwvZGl2PlxyXG4gICAgPC9mb3JtPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gIDxuZy10ZW1wbGF0ZSAjYWJwRm9vdGVyPlxyXG4gICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeVwiIGFicENsb3NlPlxyXG4gICAgICB7eyAnQWJwSWRlbnRpdHk6OkNhbmNlbCcgfCBhYnBMb2NhbGl6YXRpb24gfX1cclxuICAgIDwvYnV0dG9uPlxyXG4gICAgPGFicC1idXR0b24gaWNvbkNsYXNzPVwiZmEgZmEtY2hlY2tcIiBbZGlzYWJsZWRdPVwiZm9ybT8uaW52YWxpZFwiIChjbGljayk9XCJzYXZlKClcIj57e1xyXG4gICAgICAnQWJwSWRlbnRpdHk6OlNhdmUnIHwgYWJwTG9jYWxpemF0aW9uXHJcbiAgICB9fTwvYWJwLWJ1dHRvbj5cclxuICA8L25nLXRlbXBsYXRlPlxyXG48L2FicC1tb2RhbD5cclxuXHJcbjxhYnAtcGVybWlzc2lvbi1tYW5hZ2VtZW50XHJcbiAgI2FicFBlcm1pc3Npb25NYW5hZ2VtZW50PVwiYWJwUGVybWlzc2lvbk1hbmFnZW1lbnRcIlxyXG4gICphYnBSZXBsYWNlYWJsZVRlbXBsYXRlPVwiXHJcbiAgICB7XHJcbiAgICAgIGlucHV0czoge1xyXG4gICAgICAgIHByb3ZpZGVyTmFtZTogeyB2YWx1ZTogJ1UnIH0sXHJcbiAgICAgICAgcHJvdmlkZXJLZXk6IHsgdmFsdWU6IHByb3ZpZGVyS2V5IH0sXHJcbiAgICAgICAgdmlzaWJsZTogeyB2YWx1ZTogdmlzaWJsZVBlcm1pc3Npb25zLCB0d29XYXk6IHRydWUgfVxyXG4gICAgICB9LFxyXG4gICAgICBvdXRwdXRzOiB7IHZpc2libGVDaGFuZ2U6IG9uVmlzaWJsZVBlcm1pc3Npb25DaGFuZ2UgfSxcclxuICAgICAgY29tcG9uZW50S2V5OiBwZXJtaXNzaW9uTWFuYWdlbWVudEtleVxyXG4gICAgfTtcclxuICAgIGxldCBpbml0ID0gaW5pdFRlbXBsYXRlXHJcbiAgXCJcclxuICAoYWJwSW5pdCk9XCJpbml0KGFicFBlcm1pc3Npb25NYW5hZ2VtZW50KVwiXHJcbj5cclxuPC9hYnAtcGVybWlzc2lvbi1tYW5hZ2VtZW50PlxyXG4iXX0=
|
|
@@ -27,4 +27,4 @@ export const DEFAULT_ROLES_ENTITY_ACTIONS = EntityAction.createMany([
|
|
|
27
27
|
visible: data => !data.record.isStatic,
|
|
28
28
|
},
|
|
29
29
|
]);
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1yb2xlcy1lbnRpdHktYWN0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2lkZW50aXR5L3NyYy9saWIvZGVmYXVsdHMvZGVmYXVsdC1yb2xlcy1lbnRpdHktYWN0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDL0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRXJFLE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFHLFlBQVksQ0FBQyxVQUFVLENBQWtCO0lBQ25GO1FBQ0UsSUFBSSxFQUFFLG1CQUFtQjtRQUN6QixNQUFNLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDYixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQ25ELFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNqQyxDQUFDO1FBQ0QsVUFBVSxFQUFFLDBCQUEwQjtLQUN2QztJQUNEO1FBQ0UsSUFBSSxFQUFFLDBCQUEwQjtRQUNoQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDYixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQ25ELFNBQVMsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25ELENBQUM7UUFDRCxVQUFVLEVBQUUscUNBQXFDO0tBQ2xEO0lBQ0Q7UUFDRSxJQUFJLEVBQUUscUJBQXFCO1FBQzNCLE1BQU0sRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNiLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDbkQsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3JELENBQUM7UUFDRCxVQUFVLEVBQUUsMEJBQTBCO1FBQ3RDLE9BQU8sRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRO0tBQ3ZDO0NBQ0YsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSWRlbnRpdHlSb2xlRHRvIH0gZnJvbSAnQGFicC9uZy5pZGVudGl0eS9wcm94eSc7XHJcbmltcG9ydCB7IEVudGl0eUFjdGlvbiB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkL2V4dGVuc2lvbnMnO1xyXG5pbXBvcnQgeyBSb2xlc0NvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvcm9sZXMvcm9sZXMuY29tcG9uZW50JztcclxuXHJcbmV4cG9ydCBjb25zdCBERUZBVUxUX1JPTEVTX0VOVElUWV9BQ1RJT05TID0gRW50aXR5QWN0aW9uLmNyZWF0ZU1hbnk8SWRlbnRpdHlSb2xlRHRvPihbXHJcbiAge1xyXG4gICAgdGV4dDogJ0FicElkZW50aXR5OjpFZGl0JyxcclxuICAgIGFjdGlvbjogZGF0YSA9PiB7XHJcbiAgICAgIGNvbnN0IGNvbXBvbmVudCA9IGRhdGEuZ2V0SW5qZWN0ZWQoUm9sZXNDb21wb25lbnQpO1xyXG4gICAgICBjb21wb25lbnQuZWRpdChkYXRhLnJlY29yZC5pZCk7XHJcbiAgICB9LFxyXG4gICAgcGVybWlzc2lvbjogJ0FicElkZW50aXR5LlJvbGVzLlVwZGF0ZScsXHJcbiAgfSxcclxuICB7XHJcbiAgICB0ZXh0OiAnQWJwSWRlbnRpdHk6OlBlcm1pc3Npb25zJyxcclxuICAgIGFjdGlvbjogZGF0YSA9PiB7XHJcbiAgICAgIGNvbnN0IGNvbXBvbmVudCA9IGRhdGEuZ2V0SW5qZWN0ZWQoUm9sZXNDb21wb25lbnQpO1xyXG4gICAgICBjb21wb25lbnQub3BlblBlcm1pc3Npb25zTW9kYWwoZGF0YS5yZWNvcmQubmFtZSk7XHJcbiAgICB9LFxyXG4gICAgcGVybWlzc2lvbjogJ0FicElkZW50aXR5LlJvbGVzLk1hbmFnZVBlcm1pc3Npb25zJyxcclxuICB9LFxyXG4gIHtcclxuICAgIHRleHQ6ICdBYnBJZGVudGl0eTo6RGVsZXRlJyxcclxuICAgIGFjdGlvbjogZGF0YSA9PiB7XHJcbiAgICAgIGNvbnN0IGNvbXBvbmVudCA9IGRhdGEuZ2V0SW5qZWN0ZWQoUm9sZXNDb21wb25lbnQpO1xyXG4gICAgICBjb21wb25lbnQuZGVsZXRlKGRhdGEucmVjb3JkLmlkLCBkYXRhLnJlY29yZC5uYW1lKTtcclxuICAgIH0sXHJcbiAgICBwZXJtaXNzaW9uOiAnQWJwSWRlbnRpdHkuUm9sZXMuRGVsZXRlJyxcclxuICAgIHZpc2libGU6IGRhdGEgPT4gIWRhdGEucmVjb3JkLmlzU3RhdGljLFxyXG4gIH0sXHJcbl0pO1xyXG4iXX0=
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { escapeHtmlChars, LocalizationService } from '@abp/ng.core';
|
|
2
|
+
import { EntityProp } from '@abp/ng.theme.shared/extensions';
|
|
3
|
+
import { of } from 'rxjs';
|
|
4
|
+
export const DEFAULT_ROLES_ENTITY_PROPS = EntityProp.createMany([
|
|
5
|
+
{
|
|
6
|
+
type: "string" /* String */,
|
|
7
|
+
name: 'name',
|
|
8
|
+
displayName: 'AbpIdentity::RoleName',
|
|
9
|
+
sortable: true,
|
|
10
|
+
valueResolver: data => {
|
|
11
|
+
const l10n = data.getInjected(LocalizationService);
|
|
12
|
+
const t = l10n.instant.bind(l10n);
|
|
13
|
+
const { isDefault, isPublic, name } = data.record;
|
|
14
|
+
return of(escapeHtmlChars(name) +
|
|
15
|
+
(isDefault
|
|
16
|
+
? `<span class="badge rounded-pill bg-success ms-1">${t('AbpIdentity::DisplayName:IsDefault')}</span>`
|
|
17
|
+
: '') +
|
|
18
|
+
(isPublic
|
|
19
|
+
? `<span class="badge rounded-pill bg-info ms-1">${t('AbpIdentity::DisplayName:IsPublic')}</span>`
|
|
20
|
+
: ''));
|
|
21
|
+
},
|
|
22
|
+
},
|
|
23
|
+
]);
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1yb2xlcy1lbnRpdHktcHJvcHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9pZGVudGl0eS9zcmMvbGliL2RlZmF1bHRzL2RlZmF1bHQtcm9sZXMtZW50aXR5LXByb3BzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFcEUsT0FBTyxFQUFFLFVBQVUsRUFBYSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFMUIsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQUcsVUFBVSxDQUFDLFVBQVUsQ0FBa0I7SUFDL0U7UUFDRSxJQUFJLHVCQUFrQjtRQUN0QixJQUFJLEVBQUUsTUFBTTtRQUNaLFdBQVcsRUFBRSx1QkFBdUI7UUFDcEMsUUFBUSxFQUFFLElBQUk7UUFDZCxhQUFhLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDcEIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1lBQ25ELE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2xDLE1BQU0sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7WUFFbEQsT0FBTyxFQUFFLENBQ1AsZUFBZSxDQUFDLElBQUksQ0FBQztnQkFDbkIsQ0FBQyxTQUFTO29CQUNSLENBQUMsQ0FBQyxvREFBb0QsQ0FBQyxDQUNuRCxvQ0FBb0MsQ0FDckMsU0FBUztvQkFDWixDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUNQLENBQUMsUUFBUTtvQkFDUCxDQUFDLENBQUMsaURBQWlELENBQUMsQ0FDaEQsbUNBQW1DLENBQ3BDLFNBQVM7b0JBQ1osQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUNWLENBQUM7UUFDSixDQUFDO0tBQ0Y7Q0FDRixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBlc2NhcGVIdG1sQ2hhcnMsIExvY2FsaXphdGlvblNlcnZpY2UgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xyXG5pbXBvcnQgeyBJZGVudGl0eVJvbGVEdG8gfSBmcm9tICdAYWJwL25nLmlkZW50aXR5L3Byb3h5JztcclxuaW1wb3J0IHsgRW50aXR5UHJvcCwgZVByb3BUeXBlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQvZXh0ZW5zaW9ucyc7XHJcbmltcG9ydCB7IG9mIH0gZnJvbSAncnhqcyc7XHJcblxyXG5leHBvcnQgY29uc3QgREVGQVVMVF9ST0xFU19FTlRJVFlfUFJPUFMgPSBFbnRpdHlQcm9wLmNyZWF0ZU1hbnk8SWRlbnRpdHlSb2xlRHRvPihbXHJcbiAge1xyXG4gICAgdHlwZTogZVByb3BUeXBlLlN0cmluZyxcclxuICAgIG5hbWU6ICduYW1lJyxcclxuICAgIGRpc3BsYXlOYW1lOiAnQWJwSWRlbnRpdHk6OlJvbGVOYW1lJyxcclxuICAgIHNvcnRhYmxlOiB0cnVlLFxyXG4gICAgdmFsdWVSZXNvbHZlcjogZGF0YSA9PiB7XHJcbiAgICAgIGNvbnN0IGwxMG4gPSBkYXRhLmdldEluamVjdGVkKExvY2FsaXphdGlvblNlcnZpY2UpO1xyXG4gICAgICBjb25zdCB0ID0gbDEwbi5pbnN0YW50LmJpbmQobDEwbik7XHJcbiAgICAgIGNvbnN0IHsgaXNEZWZhdWx0LCBpc1B1YmxpYywgbmFtZSB9ID0gZGF0YS5yZWNvcmQ7XHJcblxyXG4gICAgICByZXR1cm4gb2YoXHJcbiAgICAgICAgZXNjYXBlSHRtbENoYXJzKG5hbWUpICtcclxuICAgICAgICAgIChpc0RlZmF1bHRcclxuICAgICAgICAgICAgPyBgPHNwYW4gY2xhc3M9XCJiYWRnZSByb3VuZGVkLXBpbGwgYmctc3VjY2VzcyBtcy0xXCI+JHt0KFxyXG4gICAgICAgICAgICAgICAgJ0FicElkZW50aXR5OjpEaXNwbGF5TmFtZTpJc0RlZmF1bHQnLFxyXG4gICAgICAgICAgICAgICl9PC9zcGFuPmBcclxuICAgICAgICAgICAgOiAnJykgK1xyXG4gICAgICAgICAgKGlzUHVibGljXHJcbiAgICAgICAgICAgID8gYDxzcGFuIGNsYXNzPVwiYmFkZ2Ugcm91bmRlZC1waWxsIGJnLWluZm8gbXMtMVwiPiR7dChcclxuICAgICAgICAgICAgICAgICdBYnBJZGVudGl0eTo6RGlzcGxheU5hbWU6SXNQdWJsaWMnLFxyXG4gICAgICAgICAgICAgICl9PC9zcGFuPmBcclxuICAgICAgICAgICAgOiAnJyksXHJcbiAgICAgICk7XHJcbiAgICB9LFxyXG4gIH0sXHJcbl0pO1xyXG4iXX0=
|
|
@@ -25,4 +25,4 @@ export const DEFAULT_ROLES_CREATE_FORM_PROPS = FormProp.createMany([
|
|
|
25
25
|
},
|
|
26
26
|
]);
|
|
27
27
|
export const DEFAULT_ROLES_EDIT_FORM_PROPS = DEFAULT_ROLES_CREATE_FORM_PROPS;
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1yb2xlcy1mb3JtLXByb3BzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaWRlbnRpdHkvc3JjL2xpYi9kZWZhdWx0cy9kZWZhdWx0LXJvbGVzLWZvcm0tcHJvcHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFhLFFBQVEsRUFBWSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU1QyxNQUFNLENBQUMsTUFBTSwrQkFBK0IsR0FBRyxRQUFRLENBQUMsVUFBVSxDQUFrQjtJQUNsRjtRQUNFLElBQUksdUJBQWtCO1FBQ3RCLElBQUksRUFBRSxNQUFNO1FBQ1osV0FBVyxFQUFFLHVCQUF1QjtRQUNwQyxFQUFFLEVBQUUsV0FBVztRQUNmLFFBQVEsRUFBRSxDQUFDLElBQStCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRO1FBQ2xGLFVBQVUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUM7S0FDeEM7SUFDRDtRQUNFLElBQUkseUJBQW1CO1FBQ3ZCLElBQUksRUFBRSxXQUFXO1FBQ2pCLFdBQVcsRUFBRSxvQ0FBb0M7UUFDakQsRUFBRSxFQUFFLGlCQUFpQjtRQUNyQixZQUFZLEVBQUUsS0FBSztLQUNwQjtJQUNEO1FBQ0UsSUFBSSx5QkFBbUI7UUFDdkIsSUFBSSxFQUFFLFVBQVU7UUFDaEIsV0FBVyxFQUFFLG1DQUFtQztRQUNoRCxFQUFFLEVBQUUsZ0JBQWdCO1FBQ3BCLFlBQVksRUFBRSxLQUFLO0tBQ3BCO0NBQ0YsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQUcsK0JBQStCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJZGVudGl0eVJvbGVEdG8gfSBmcm9tICdAYWJwL25nLmlkZW50aXR5L3Byb3h5JztcclxuaW1wb3J0IHsgZVByb3BUeXBlLCBGb3JtUHJvcCwgUHJvcERhdGEgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZC9leHRlbnNpb25zJztcclxuaW1wb3J0IHsgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmV4cG9ydCBjb25zdCBERUZBVUxUX1JPTEVTX0NSRUFURV9GT1JNX1BST1BTID0gRm9ybVByb3AuY3JlYXRlTWFueTxJZGVudGl0eVJvbGVEdG8+KFtcclxuICB7XHJcbiAgICB0eXBlOiBlUHJvcFR5cGUuU3RyaW5nLFxyXG4gICAgbmFtZTogJ25hbWUnLFxyXG4gICAgZGlzcGxheU5hbWU6ICdBYnBJZGVudGl0eTo6Um9sZU5hbWUnLFxyXG4gICAgaWQ6ICdyb2xlLW5hbWUnLFxyXG4gICAgZGlzYWJsZWQ6IChkYXRhOiBQcm9wRGF0YTxJZGVudGl0eVJvbGVEdG8+KSA9PiBkYXRhLnJlY29yZCAmJiBkYXRhLnJlY29yZC5pc1N0YXRpYyxcclxuICAgIHZhbGlkYXRvcnM6ICgpID0+IFtWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICB9LFxyXG4gIHtcclxuICAgIHR5cGU6IGVQcm9wVHlwZS5Cb29sZWFuLFxyXG4gICAgbmFtZTogJ2lzRGVmYXVsdCcsXHJcbiAgICBkaXNwbGF5TmFtZTogJ0FicElkZW50aXR5OjpEaXNwbGF5TmFtZTpJc0RlZmF1bHQnLFxyXG4gICAgaWQ6ICdyb2xlLWlzLWRlZmF1bHQnLFxyXG4gICAgZGVmYXVsdFZhbHVlOiBmYWxzZSxcclxuICB9LFxyXG4gIHtcclxuICAgIHR5cGU6IGVQcm9wVHlwZS5Cb29sZWFuLFxyXG4gICAgbmFtZTogJ2lzUHVibGljJyxcclxuICAgIGRpc3BsYXlOYW1lOiAnQWJwSWRlbnRpdHk6OkRpc3BsYXlOYW1lOklzUHVibGljJyxcclxuICAgIGlkOiAncm9sZS1pcy1wdWJsaWMnLFxyXG4gICAgZGVmYXVsdFZhbHVlOiBmYWxzZSxcclxuICB9LFxyXG5dKTtcclxuXHJcbmV4cG9ydCBjb25zdCBERUZBVUxUX1JPTEVTX0VESVRfRk9STV9QUk9QUyA9IERFRkFVTFRfUk9MRVNfQ1JFQVRFX0ZPUk1fUFJPUFM7XHJcbiJdfQ==
|
|
@@ -11,4 +11,4 @@ export const DEFAULT_ROLES_TOOLBAR_ACTIONS = ToolbarAction.createMany([
|
|
|
11
11
|
icon: 'fa fa-plus',
|
|
12
12
|
},
|
|
13
13
|
]);
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1yb2xlcy10b29sYmFyLWFjdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9pZGVudGl0eS9zcmMvbGliL2RlZmF1bHRzL2RlZmF1bHQtcm9sZXMtdG9vbGJhci1hY3Rpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNoRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFckUsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQUcsYUFBYSxDQUFDLFVBQVUsQ0FBb0I7SUFDdkY7UUFDRSxJQUFJLEVBQUUsc0JBQXNCO1FBQzVCLE1BQU0sRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNiLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDbkQsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLENBQUM7UUFDRCxVQUFVLEVBQUUsMEJBQTBCO1FBQ3RDLElBQUksRUFBRSxZQUFZO0tBQ25CO0NBQ0YsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSWRlbnRpdHlSb2xlRHRvIH0gZnJvbSAnQGFicC9uZy5pZGVudGl0eS9wcm94eSc7XHJcbmltcG9ydCB7IFRvb2xiYXJBY3Rpb24gfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZC9leHRlbnNpb25zJztcclxuaW1wb3J0IHsgUm9sZXNDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL3JvbGVzL3JvbGVzLmNvbXBvbmVudCc7XHJcblxyXG5leHBvcnQgY29uc3QgREVGQVVMVF9ST0xFU19UT09MQkFSX0FDVElPTlMgPSBUb29sYmFyQWN0aW9uLmNyZWF0ZU1hbnk8SWRlbnRpdHlSb2xlRHRvW10+KFtcclxuICB7XHJcbiAgICB0ZXh0OiAnQWJwSWRlbnRpdHk6Ok5ld1JvbGUnLFxyXG4gICAgYWN0aW9uOiBkYXRhID0+IHtcclxuICAgICAgY29uc3QgY29tcG9uZW50ID0gZGF0YS5nZXRJbmplY3RlZChSb2xlc0NvbXBvbmVudCk7XHJcbiAgICAgIGNvbXBvbmVudC5hZGQoKTtcclxuICAgIH0sXHJcbiAgICBwZXJtaXNzaW9uOiAnQWJwSWRlbnRpdHkuUm9sZXMuQ3JlYXRlJyxcclxuICAgIGljb246ICdmYSBmYS1wbHVzJyxcclxuICB9LFxyXG5dKTtcclxuIl19
|
|
@@ -26,4 +26,4 @@ export const DEFAULT_USERS_ENTITY_ACTIONS = EntityAction.createMany([
|
|
|
26
26
|
permission: 'AbpIdentity.Users.Delete',
|
|
27
27
|
},
|
|
28
28
|
]);
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC11c2Vycy1lbnRpdHktYWN0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2lkZW50aXR5L3NyYy9saWIvZGVmYXVsdHMvZGVmYXVsdC11c2Vycy1lbnRpdHktYWN0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDL0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRXJFLE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFHLFlBQVksQ0FBQyxVQUFVLENBQWtCO0lBQ25GO1FBQ0UsSUFBSSxFQUFFLG1CQUFtQjtRQUN6QixNQUFNLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDYixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQ25ELFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNqQyxDQUFDO1FBQ0QsVUFBVSxFQUFFLDBCQUEwQjtLQUN2QztJQUNEO1FBQ0UsSUFBSSxFQUFFLDBCQUEwQjtRQUNoQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDYixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQ25ELFNBQVMsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2pELENBQUM7UUFDRCxVQUFVLEVBQUUscUNBQXFDO0tBQ2xEO0lBQ0Q7UUFDRSxJQUFJLEVBQUUscUJBQXFCO1FBQzNCLE1BQU0sRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNiLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDbkQsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzdFLENBQUM7UUFDRCxVQUFVLEVBQUUsMEJBQTBCO0tBQ3ZDO0NBQ0YsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSWRlbnRpdHlVc2VyRHRvIH0gZnJvbSAnQGFicC9uZy5pZGVudGl0eS9wcm94eSc7XHJcbmltcG9ydCB7IEVudGl0eUFjdGlvbiB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkL2V4dGVuc2lvbnMnO1xyXG5pbXBvcnQgeyBVc2Vyc0NvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvdXNlcnMvdXNlcnMuY29tcG9uZW50JztcclxuXHJcbmV4cG9ydCBjb25zdCBERUZBVUxUX1VTRVJTX0VOVElUWV9BQ1RJT05TID0gRW50aXR5QWN0aW9uLmNyZWF0ZU1hbnk8SWRlbnRpdHlVc2VyRHRvPihbXHJcbiAge1xyXG4gICAgdGV4dDogJ0FicElkZW50aXR5OjpFZGl0JyxcclxuICAgIGFjdGlvbjogZGF0YSA9PiB7XHJcbiAgICAgIGNvbnN0IGNvbXBvbmVudCA9IGRhdGEuZ2V0SW5qZWN0ZWQoVXNlcnNDb21wb25lbnQpO1xyXG4gICAgICBjb21wb25lbnQuZWRpdChkYXRhLnJlY29yZC5pZCk7XHJcbiAgICB9LFxyXG4gICAgcGVybWlzc2lvbjogJ0FicElkZW50aXR5LlVzZXJzLlVwZGF0ZScsXHJcbiAgfSxcclxuICB7XHJcbiAgICB0ZXh0OiAnQWJwSWRlbnRpdHk6OlBlcm1pc3Npb25zJyxcclxuICAgIGFjdGlvbjogZGF0YSA9PiB7XHJcbiAgICAgIGNvbnN0IGNvbXBvbmVudCA9IGRhdGEuZ2V0SW5qZWN0ZWQoVXNlcnNDb21wb25lbnQpO1xyXG4gICAgICBjb21wb25lbnQub3BlblBlcm1pc3Npb25zTW9kYWwoZGF0YS5yZWNvcmQuaWQpO1xyXG4gICAgfSxcclxuICAgIHBlcm1pc3Npb246ICdBYnBJZGVudGl0eS5Vc2Vycy5NYW5hZ2VQZXJtaXNzaW9ucycsXHJcbiAgfSxcclxuICB7XHJcbiAgICB0ZXh0OiAnQWJwSWRlbnRpdHk6OkRlbGV0ZScsXHJcbiAgICBhY3Rpb246IGRhdGEgPT4ge1xyXG4gICAgICBjb25zdCBjb21wb25lbnQgPSBkYXRhLmdldEluamVjdGVkKFVzZXJzQ29tcG9uZW50KTtcclxuICAgICAgY29tcG9uZW50LmRlbGV0ZShkYXRhLnJlY29yZC5pZCwgZGF0YS5yZWNvcmQubmFtZSB8fCBkYXRhLnJlY29yZC51c2VyTmFtZSk7XHJcbiAgICB9LFxyXG4gICAgcGVybWlzc2lvbjogJ0FicElkZW50aXR5LlVzZXJzLkRlbGV0ZScsXHJcbiAgfSxcclxuXSk7XHJcbiJdfQ==
|