@solcre-org/core-ui 2.15.30 → 2.15.31
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/fesm2022/solcre-org-core-ui.mjs +85 -38
- package/fesm2022/solcre-org-core-ui.mjs.map +1 -1
- package/index.d.ts +29 -15
- package/package.json +1 -1
|
@@ -5545,7 +5545,7 @@ class PermissionService {
|
|
|
5545
5545
|
getUser() {
|
|
5546
5546
|
return this.userSubject.value;
|
|
5547
5547
|
}
|
|
5548
|
-
hasPermission(resource, action) {
|
|
5548
|
+
hasPermission(resource, action, custom_action) {
|
|
5549
5549
|
const user = this.userSubject.value;
|
|
5550
5550
|
if (!user || !user.roles) {
|
|
5551
5551
|
return false;
|
|
@@ -5553,13 +5553,48 @@ class PermissionService {
|
|
|
5553
5553
|
if (user.roles.some(role => !role.permissions)) {
|
|
5554
5554
|
return true;
|
|
5555
5555
|
}
|
|
5556
|
-
|
|
5557
|
-
|
|
5558
|
-
|
|
5559
|
-
|
|
5560
|
-
|
|
5561
|
-
|
|
5562
|
-
|
|
5556
|
+
if (custom_action) {
|
|
5557
|
+
console.log('🔍 Checking custom_action permission:', {
|
|
5558
|
+
custom_action,
|
|
5559
|
+
action,
|
|
5560
|
+
userRoles: user.roles?.map(role => ({
|
|
5561
|
+
name: role.name,
|
|
5562
|
+
permissions: role.permissions?.map(p => ({
|
|
5563
|
+
custom_action: p.custom_action,
|
|
5564
|
+
action: p.action,
|
|
5565
|
+
is_active: p.is_active
|
|
5566
|
+
}))
|
|
5567
|
+
}))
|
|
5568
|
+
});
|
|
5569
|
+
const hasPermission = user.roles.some(role => role.permissions?.some(perm => {
|
|
5570
|
+
// Normalizar null a undefined para comparación
|
|
5571
|
+
const permCustomAction = perm.custom_action ?? undefined;
|
|
5572
|
+
const matches = permCustomAction === custom_action && perm.action === action && perm.is_active;
|
|
5573
|
+
if (perm.custom_action || perm.action === action) {
|
|
5574
|
+
console.log('🔎 Comparing permission:', {
|
|
5575
|
+
perm_custom_action: permCustomAction,
|
|
5576
|
+
expected_custom_action: custom_action,
|
|
5577
|
+
perm_action: perm.action,
|
|
5578
|
+
expected_action: action,
|
|
5579
|
+
is_active: perm.is_active,
|
|
5580
|
+
matches
|
|
5581
|
+
});
|
|
5582
|
+
}
|
|
5583
|
+
return matches;
|
|
5584
|
+
}));
|
|
5585
|
+
console.log('🎯 Final result:', hasPermission);
|
|
5586
|
+
return hasPermission;
|
|
5587
|
+
}
|
|
5588
|
+
if (resource) {
|
|
5589
|
+
const hasPermission = user.roles.some(role => role.permissions?.some(perm => {
|
|
5590
|
+
const matches = perm.resource === resource && perm.action === action && perm.is_active;
|
|
5591
|
+
if (matches) {
|
|
5592
|
+
}
|
|
5593
|
+
return matches;
|
|
5594
|
+
}));
|
|
5595
|
+
return hasPermission;
|
|
5596
|
+
}
|
|
5597
|
+
return false;
|
|
5563
5598
|
}
|
|
5564
5599
|
hasAnyPermission(resources, action) {
|
|
5565
5600
|
return resources.some(resource => this.hasPermission(resource, action));
|
|
@@ -5608,18 +5643,6 @@ var PermissionsResources;
|
|
|
5608
5643
|
PermissionsResources["MY_COMPANY_TELEWORK"] = "my_company_remote_work";
|
|
5609
5644
|
PermissionsResources["FILE_TEMPLATES"] = "file_templates";
|
|
5610
5645
|
PermissionsResources["CONFIGURATION"] = "configuration";
|
|
5611
|
-
PermissionsResources["COMPANIES_CHANGE_STATUS"] = "companies_change_status";
|
|
5612
|
-
PermissionsResources["EMPLOYEES_BULK_UPLOAD"] = "employees_bulk_upload";
|
|
5613
|
-
PermissionsResources["EMPLOYEES_EXPORT"] = "employees_export";
|
|
5614
|
-
PermissionsResources["RESERVATIONS_EXPORT"] = "reservations_export";
|
|
5615
|
-
PermissionsResources["SERVICES_EXPORT"] = "services_export";
|
|
5616
|
-
PermissionsResources["ACCESS_CARD_ASSIGN"] = "access_card_assign";
|
|
5617
|
-
PermissionsResources["ACCESS_CARD_REJECT_REQUEST"] = "access_card_reject_request";
|
|
5618
|
-
PermissionsResources["ACCESS_CARD_MARK_DELIVERED"] = "access_card_mark_delivered";
|
|
5619
|
-
PermissionsResources["ACCESS_CARD_REQUEST_REASSIGNMENT"] = "access_card_request_reassignment";
|
|
5620
|
-
PermissionsResources["ACCESS_CARD_MARK_RETURNED"] = "access_card_mark_returned";
|
|
5621
|
-
PermissionsResources["SERVICE_BUDGET_APPROVE"] = "service_budget_approve";
|
|
5622
|
-
PermissionsResources["SERVICE_BUDGET_REJECT"] = "service_budget_reject";
|
|
5623
5646
|
})(PermissionsResources || (PermissionsResources = {}));
|
|
5624
5647
|
|
|
5625
5648
|
class PermissionWrapperService {
|
|
@@ -5749,8 +5772,9 @@ class PermissionWrapperService {
|
|
|
5749
5772
|
}
|
|
5750
5773
|
});
|
|
5751
5774
|
}
|
|
5752
|
-
hasPermission(resource, action) {
|
|
5753
|
-
|
|
5775
|
+
hasPermission(resource, action, custom_action) {
|
|
5776
|
+
const result = this.activeProvider.hasPermission(resource, action, custom_action);
|
|
5777
|
+
return result;
|
|
5754
5778
|
}
|
|
5755
5779
|
setUser(user) {
|
|
5756
5780
|
this.activeProvider.setUser(user);
|
|
@@ -5813,7 +5837,9 @@ class GenericButtonComponent {
|
|
|
5813
5837
|
if (this.config().loading)
|
|
5814
5838
|
return true;
|
|
5815
5839
|
if (this.config().requiredPermission) {
|
|
5816
|
-
|
|
5840
|
+
const perm = this.config().requiredPermission;
|
|
5841
|
+
const hasPermission = this.permissionService.hasPermission(perm.resource, perm.action, perm.custom_action);
|
|
5842
|
+
return !hasPermission;
|
|
5817
5843
|
}
|
|
5818
5844
|
return false;
|
|
5819
5845
|
});
|
|
@@ -7704,13 +7730,15 @@ class PermissionModel {
|
|
|
7704
7730
|
resource;
|
|
7705
7731
|
action;
|
|
7706
7732
|
is_active;
|
|
7707
|
-
|
|
7733
|
+
custom_action;
|
|
7734
|
+
constructor(id, name, description, resource, action, is_active, custom_action) {
|
|
7708
7735
|
this.id = id;
|
|
7709
7736
|
this.name = name;
|
|
7710
7737
|
this.description = description;
|
|
7711
7738
|
this.resource = resource;
|
|
7712
7739
|
this.action = action;
|
|
7713
7740
|
this.is_active = is_active;
|
|
7741
|
+
this.custom_action = custom_action;
|
|
7714
7742
|
}
|
|
7715
7743
|
fromJSON(json) {
|
|
7716
7744
|
if (json) {
|
|
@@ -7720,6 +7748,7 @@ class PermissionModel {
|
|
|
7720
7748
|
this.resource = json.resource;
|
|
7721
7749
|
this.action = json.action;
|
|
7722
7750
|
this.is_active = json.is_active;
|
|
7751
|
+
this.custom_action = json.custom_action;
|
|
7723
7752
|
}
|
|
7724
7753
|
return this;
|
|
7725
7754
|
}
|
|
@@ -7737,6 +7766,7 @@ class PermissionModel {
|
|
|
7737
7766
|
"resource": this.resource,
|
|
7738
7767
|
"action": this.action,
|
|
7739
7768
|
"is_active": this.is_active,
|
|
7769
|
+
"custom_action": this.custom_action,
|
|
7740
7770
|
};
|
|
7741
7771
|
}
|
|
7742
7772
|
getId() {
|
|
@@ -12591,7 +12621,7 @@ class GenericTableComponent {
|
|
|
12591
12621
|
const createAction = this.actions().find(a => a.action === TableAction.CREATE);
|
|
12592
12622
|
if (createAction && createAction.mobileConfig?.showInsideModal !== false && !this.getMobileShowInHeader(createAction) && !this.getMobileShowOutsideFixedActions(createAction)) {
|
|
12593
12623
|
if (!createAction.requiredPermission ||
|
|
12594
|
-
this.permissionService.hasPermission(createAction.requiredPermission.resource, createAction.requiredPermission.action)) {
|
|
12624
|
+
this.permissionService.hasPermission(createAction.requiredPermission.resource, createAction.requiredPermission.action, createAction.requiredPermission.custom_action)) {
|
|
12595
12625
|
modalActions.push({
|
|
12596
12626
|
icon: createAction.icon || this.getDefaultIconForAction(TableAction.CREATE),
|
|
12597
12627
|
label: this.getActionLabel(TableAction.CREATE),
|
|
@@ -13323,7 +13353,7 @@ class GenericTableComponent {
|
|
|
13323
13353
|
}
|
|
13324
13354
|
shouldShowFixedAction(action) {
|
|
13325
13355
|
if (action.requiredPermission) {
|
|
13326
|
-
const hasPermission = this.permissionService.hasPermission(action.requiredPermission.resource, action.requiredPermission.action);
|
|
13356
|
+
const hasPermission = this.permissionService.hasPermission(action.requiredPermission.resource, action.requiredPermission.action, action.requiredPermission.custom_action);
|
|
13327
13357
|
if (!hasPermission)
|
|
13328
13358
|
return false;
|
|
13329
13359
|
}
|
|
@@ -13332,7 +13362,7 @@ class GenericTableComponent {
|
|
|
13332
13362
|
return action.shouldShow(selectedRow);
|
|
13333
13363
|
}
|
|
13334
13364
|
if (action.customAction?.requiredPermission) {
|
|
13335
|
-
const hasPermission = this.permissionService.hasPermission(action.customAction.requiredPermission.resource, action.customAction.requiredPermission.action);
|
|
13365
|
+
const hasPermission = this.permissionService.hasPermission(action.customAction.requiredPermission.resource, action.customAction.requiredPermission.action, action.customAction.requiredPermission.custom_action);
|
|
13336
13366
|
if (!hasPermission)
|
|
13337
13367
|
return false;
|
|
13338
13368
|
}
|
|
@@ -13343,7 +13373,7 @@ class GenericTableComponent {
|
|
|
13343
13373
|
}
|
|
13344
13374
|
}
|
|
13345
13375
|
if (action.globalAction?.requiredPermission) {
|
|
13346
|
-
const hasPermission = this.permissionService.hasPermission(action.globalAction.requiredPermission.resource, action.globalAction.requiredPermission.action);
|
|
13376
|
+
const hasPermission = this.permissionService.hasPermission(action.globalAction.requiredPermission.resource, action.globalAction.requiredPermission.action, action.globalAction.requiredPermission.custom_action);
|
|
13347
13377
|
if (!hasPermission)
|
|
13348
13378
|
return false;
|
|
13349
13379
|
}
|
|
@@ -13582,7 +13612,7 @@ class GenericTableComponent {
|
|
|
13582
13612
|
hasPermission(action) {
|
|
13583
13613
|
if (!action.requiredPermission)
|
|
13584
13614
|
return true;
|
|
13585
|
-
return this.permissionService.hasPermission(action.requiredPermission.resource, action.requiredPermission.action);
|
|
13615
|
+
return this.permissionService.hasPermission(action.requiredPermission.resource, action.requiredPermission.action, action.requiredPermission.custom_action);
|
|
13586
13616
|
}
|
|
13587
13617
|
showFiltersPopup() {
|
|
13588
13618
|
this.isFilterModalOpen.set(true);
|
|
@@ -15864,7 +15894,7 @@ class HeaderComponent {
|
|
|
15864
15894
|
hasPermission(action) {
|
|
15865
15895
|
if (!action.requiredPermission)
|
|
15866
15896
|
return true;
|
|
15867
|
-
const hasPermission = this.permissionService.hasPermission(action.requiredPermission.resource, action.requiredPermission.action);
|
|
15897
|
+
const hasPermission = this.permissionService.hasPermission(action.requiredPermission.resource, action.requiredPermission.action, action.requiredPermission.custom_action);
|
|
15868
15898
|
if (!hasPermission)
|
|
15869
15899
|
return false;
|
|
15870
15900
|
const isMobile = this.mobileResolutionService.isMobile();
|
|
@@ -15894,7 +15924,7 @@ class HeaderComponent {
|
|
|
15894
15924
|
hasCustomActionPermission(action) {
|
|
15895
15925
|
if (!action.requiredPermission)
|
|
15896
15926
|
return true;
|
|
15897
|
-
return this.permissionService.hasPermission(action.requiredPermission.resource, action.requiredPermission.action);
|
|
15927
|
+
return this.permissionService.hasPermission(action.requiredPermission.resource, action.requiredPermission.action, action.requiredPermission.custom_action);
|
|
15898
15928
|
}
|
|
15899
15929
|
isCustomActionVisible(action) {
|
|
15900
15930
|
if (action.visible === false)
|
|
@@ -15939,7 +15969,7 @@ class HeaderComponent {
|
|
|
15939
15969
|
return false;
|
|
15940
15970
|
if (!action.requiredPermission)
|
|
15941
15971
|
return true;
|
|
15942
|
-
return this.permissionService.hasPermission(action.requiredPermission.resource, action.requiredPermission.action);
|
|
15972
|
+
return this.permissionService.hasPermission(action.requiredPermission.resource, action.requiredPermission.action, action.requiredPermission.custom_action);
|
|
15943
15973
|
}
|
|
15944
15974
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: HeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
15945
15975
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: HeaderComponent, isStandalone: true, selector: "core-header", outputs: { filterRequested: "filterRequested", createRequested: "createRequested", globalActionTriggered: "globalActionTriggered" }, hostDirectives: [{ directive: CoreHostDirective }], ngImport: i0, template: "@if (headerService.getIsVisible()()) {\n @if(!headerService.getHeaderOutside()()) {\n <div class=\"c-header\">\n <div class=\"c-header__row\">\n\n <div class=\"c-header__group\">\n\n <h2 class=\"c-header__heading u-heading\">{{ getHeaderTitle() }}</h2>\n\n </div>\n\n <div class=\"c-header__group u-flex\">\n\n @for (element of headerService.getOrderedElements(); track element.type + '-' + (element.actionId || $index)) {\n @if (headerService.isElementVisible(element.type, element)) {\n \n @switch (element.type) {\n @case (HeaderElementType.GLOBAL_ACTIONS) {\n @for (globalAction of headerService.getGlobalActions()(); track globalAction.label || $index) {\n @if (hasPermission(globalAction)) {\n @if (globalAction.isSwitch && globalAction.switchOptions) {\n <core-generic-switch\n [options]=\"globalAction.switchOptions\"\n [selectedValue]=\"globalAction.switchSelectedValue\"\n [ariaLabel]=\"globalAction.switchAriaLabel || globalAction.label || 'Switch options'\"\n (valueChange)=\"onGlobalSwitchChange($event, globalAction)\">\n </core-generic-switch>\n } @else {\n <core-generic-button \n [config]=\"getGlobalActionButtonConfig(globalAction)\"\n (buttonClick)=\"onGlobalButtonClick($event, globalAction)\">\n </core-generic-button>\n }\n }\n }\n }\n \n @case (HeaderElementType.CUSTOM_ACTIONS) {\n @for (customAction of headerService.getCustomActions()(); track customAction.id) {\n @if (isCustomActionVisible(customAction)) {\n <core-generic-button \n [config]=\"getCustomActionButtonConfig(customAction)\"\n (buttonClick)=\"onCustomButtonClick($event, customAction)\">\n </core-generic-button>\n }\n }\n }\n \n @case (HeaderElementType.FILTER) {\n <core-generic-button \n [config]=\"getFilterButtonConfig()\"\n (buttonClick)=\"onFilterButtonClick()\">\n </core-generic-button>\n }\n \n @case (HeaderElementType.CREATE) {\n <core-generic-button \n [config]=\"getCreateButtonConfig()\"\n (buttonClick)=\"onCreateButtonClick()\">\n </core-generic-button>\n }\n\n @case (HeaderElementType.INDIVIDUAL_ACTION) {\n @if (getIndividualAction(element); as action) {\n @if (hasIndividualActionPermission(action)) {\n @if (isIndividualActionSwitch(action)) {\n <core-generic-switch\n [options]=\"action.switchOptions\"\n [selectedValue]=\"action.switchSelectedValue\"\n [ariaLabel]=\"action.switchAriaLabel || action.label || 'Switch options'\"\n (valueChange)=\"onGlobalSwitchChange($event, action)\">\n </core-generic-switch>\n } @else if (element.actionType === 'global') {\n <core-generic-button \n [config]=\"getGlobalActionButtonConfig(action)\"\n (buttonClick)=\"onGlobalButtonClick($event, action)\">\n </core-generic-button>\n } @else if (element.actionType === 'custom') {\n <core-generic-button \n [config]=\"getCustomActionButtonConfig(action)\"\n (buttonClick)=\"onCustomButtonClick($event, action)\">\n </core-generic-button>\n }\n }\n }\n }\n }\n \n }\n }\n\n </div>\n\n </div>\n\n <p class=\"c-header__text u-text\" *ngIf=\"getHeaderText()\">\n {{ getHeaderText() }}\n </p>\n\n @if (\n headerService.isElementVisible(HeaderElementType.CUSTOM_TEMPLATE) && \n headerService.getCustomTemplate()()\n ) {\n <ng-container [ngTemplateOutlet]=\"headerService.getCustomTemplate()()\"></ng-container>\n }\n </div>\n } @else {\n @if(\n headerService.isElementVisible(HeaderElementType.CUSTOM_TEMPLATE) && \n headerService.getCustomTemplate()()\n ) {\n <ng-container [ngTemplateOutlet]=\"headerService.getCustomTemplate()()\"></ng-container>\n }\n }\n}", styles: [":root{--header-bg: #ffffff;--header-text: #333;--header-shadow: rgba(0, 0, 0, .1);--logout-btn-color: #e74c3c;--logout-btn-hover: #c0392b;--theme-btn-color: #666;--theme-btn-hover: #007bff}.dark-mode{--header-bg: #1a1a1a;--header-text: #e0e0e0;--header-shadow: rgba(255, 255, 255, .1);--logout-btn-color: #ff6b6b;--logout-btn-hover: #ff8787;--theme-btn-color: #bbb;--theme-btn-hover: #4da8ff}.header{background-color:var(--header-bg);box-shadow:0 2px 4px var(--header-shadow);padding:15px 20px;display:flex;justify-content:space-between;align-items:center}.header .user-info{font-weight:500;color:var(--header-text)}.header .header-actions{display:flex;align-items:center;gap:15px}.header .theme-toggle-btn{background:none;border:none;color:var(--theme-btn-color);font-size:16px;cursor:pointer;display:flex;align-items:center}.header .theme-toggle-btn:hover{color:var(--theme-btn-hover)}.header .logout-btn{background:none;border:none;color:var(--logout-btn-color);font-size:16px;cursor:pointer;display:flex;align-items:center}.header .logout-btn i{margin-right:5px}.header .logout-btn:hover{color:var(--logout-btn-hover)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "component", type: GenericButtonComponent, selector: "core-generic-button", inputs: ["config", "data"], outputs: ["buttonClick"] }, { kind: "component", type: GenericSwitchComponent, selector: "core-generic-switch", inputs: ["options", "selectedValue", "ariaLabel"], outputs: ["valueChange"] }] });
|
|
@@ -16015,8 +16045,25 @@ var PermissionsActions;
|
|
|
16015
16045
|
PermissionsActions["WRITE"] = "W";
|
|
16016
16046
|
PermissionsActions["READ"] = "R";
|
|
16017
16047
|
PermissionsActions["DELETE"] = "D";
|
|
16048
|
+
PermissionsActions["CUSTOM"] = "C";
|
|
16018
16049
|
})(PermissionsActions || (PermissionsActions = {}));
|
|
16019
16050
|
|
|
16051
|
+
var PermissionsCustomActions;
|
|
16052
|
+
(function (PermissionsCustomActions) {
|
|
16053
|
+
PermissionsCustomActions["COMPANIES_CHANGE_STATUS"] = "companies_change_status";
|
|
16054
|
+
PermissionsCustomActions["EMPLOYEES_BULK_UPLOAD"] = "employees_bulk_upload";
|
|
16055
|
+
PermissionsCustomActions["EMPLOYEES_EXPORT"] = "employees_export";
|
|
16056
|
+
PermissionsCustomActions["RESERVATIONS_EXPORT"] = "reservations_export";
|
|
16057
|
+
PermissionsCustomActions["SERVICES_EXPORT"] = "services_export";
|
|
16058
|
+
PermissionsCustomActions["ACCESS_CARD_ASSIGN"] = "access_card_assign";
|
|
16059
|
+
PermissionsCustomActions["ACCESS_CARD_REJECT_REQUEST"] = "access_card_reject_request";
|
|
16060
|
+
PermissionsCustomActions["ACCESS_CARD_MARK_DELIVERED"] = "access_card_mark_delivered";
|
|
16061
|
+
PermissionsCustomActions["ACCESS_CARD_REQUEST_REASSIGNMENT"] = "access_card_request_reassignment";
|
|
16062
|
+
PermissionsCustomActions["ACCESS_CARD_MARK_RETURNED"] = "access_card_mark_returned";
|
|
16063
|
+
PermissionsCustomActions["SERVICE_BUDGET_APPROVE"] = "service_budget_approve";
|
|
16064
|
+
PermissionsCustomActions["SERVICE_BUDGET_REJECT"] = "service_budget_reject";
|
|
16065
|
+
})(PermissionsCustomActions || (PermissionsCustomActions = {}));
|
|
16066
|
+
|
|
16020
16067
|
var SidebarState;
|
|
16021
16068
|
(function (SidebarState) {
|
|
16022
16069
|
SidebarState["EXPANDED"] = "expanded";
|
|
@@ -16094,12 +16141,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
16094
16141
|
// Este archivo es generado automáticamente por scripts/update-version.js
|
|
16095
16142
|
// No edites manualmente este archivo
|
|
16096
16143
|
const VERSION = {
|
|
16097
|
-
full: '2.15.
|
|
16144
|
+
full: '2.15.31',
|
|
16098
16145
|
major: 2,
|
|
16099
16146
|
minor: 15,
|
|
16100
|
-
patch:
|
|
16101
|
-
timestamp: '2025-11-
|
|
16102
|
-
buildDate: '
|
|
16147
|
+
patch: 31,
|
|
16148
|
+
timestamp: '2025-11-07T14:57:10.870Z',
|
|
16149
|
+
buildDate: '7/11/2025'
|
|
16103
16150
|
};
|
|
16104
16151
|
|
|
16105
16152
|
class MainNavComponent {
|
|
@@ -16198,7 +16245,7 @@ class MainNavComponent {
|
|
|
16198
16245
|
return true;
|
|
16199
16246
|
}
|
|
16200
16247
|
try {
|
|
16201
|
-
return this.permissionService.hasPermission(item.requiredPermission.resource, item.requiredPermission.action);
|
|
16248
|
+
return this.permissionService.hasPermission(item.requiredPermission.resource, item.requiredPermission.action, item.requiredPermission.custom_action);
|
|
16202
16249
|
}
|
|
16203
16250
|
catch (error) {
|
|
16204
16251
|
return !this.isProduction();
|
|
@@ -19827,5 +19874,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImpor
|
|
|
19827
19874
|
* Generated bundle index. Do not edit.
|
|
19828
19875
|
*/
|
|
19829
19876
|
|
|
19830
|
-
export { ALL_COUNTRY_CODES, ActiveFiltersComponent, AgeValidationHelper, AlertComponent, AlertContainerComponent, AlertService, AlertType, ApiConfigurationProvider, BaseFieldComponent, ButtonContext, ButtonSize, ButtonType, COMMON_COUNTRIES, CacheBustingInterceptor, CardComponent, CarouselComponent, ChatMessagePosition, ChatMessageType, CheckboxFieldComponent, ConfigurationModel, ConfirmationDialogComponent, ConfirmationDialogService, CoreHostDirective, CoreManualRefreshComponent, CoreUiHttpLoaderFactory, CoreUiTranslateLoader, CoreUiTranslateService, CountryCode, CustomClassService, DEFAULT_COUNTRIES, DataListComponent, DataListItemComponent, DataStoreService, DateFieldComponent, DateUtility, DatetimeFieldComponent, DialogActions, DocumentAction, DocumentDisplayMode, DocumentFieldComponent, DocumentFieldValidators, DocumentPayloadMode, DropdownComponent, DropdownDirection, DropdownService, DynamicFieldDirective, DynamicFieldsHelper, FieldErrorsComponent, FieldType, FileFieldComponent, FileModel, FilePreviewActionType, FileTemplateModel, FileTemplateType, FileType, FileTypeModel, FileUploadService, FilterModalComponent, FilterService, FilterType, FixedActionPosition, FixedActionsMobileModalComponent, FixedActionsMobileModalService, GalleryAnimationType, GalleryLayoutType, GalleryModalComponent, GalleryModalGlobalService, GenericButtonComponent, GenericChatComponent, GenericChatService, GenericDocumentationComponent, GenericFixedActionsComponent, GenericGalleryComponent, GenericModalComponent, GenericPaginationComponent, GenericRatingComponent, GenericSidebarComponent, GenericSkeletonComponent, GenericStepsComponent, GenericSwitchComponent, GenericTableComponent, GenericTabsComponent, GenericTimelineComponent, GlobalApiConfigService, HeaderComponent, HeaderConfigurationService, HeaderElementType, HeaderService, HttpLoaderFactory, ImageModalComponent, ImageModalService, ImagePreviewComponent, LATIN_AMERICA_COUNTRIES, LayoutAuth, LayoutBreakpoint, LayoutComponent, LayoutService, LayoutStateService, LayoutType, LoaderComponent, LoaderService, MainNavComponent, MainNavService, ManualRefreshService, MobileHeaderComponent, MobileResolutionService, ModalMode, ModelApiService, MultiEntryFieldComponent, MultiEntryOutputFormat, NumberFieldComponent, NumberFieldConfigType, NumberFieldType, NumberRange, PERMISSION_ACTIONS_PROVIDER, PERMISSION_PROVIDER, PERMISSION_RESOURCES_PROVIDER, PaginationService, PasswordFieldComponent, PermissionEnumsService, PermissionModel, PermissionService, PermissionWrapperService, PermissionsActions, PermissionsInterceptor, PermissionsResources, PhoneFieldComponent, ProgressBarComponent, ProgressBarSize, RatingService, RatingSize, RatingType, ResetPasswordModel, RoleModel, SOUTH_AMERICA_COUNTRIES, SelectFieldComponent, ServerSelectFieldComponent, ServerSelectService, SidebarCustomModalComponent, SidebarCustomModalService, SidebarHeight, SidebarMobileModalService, SidebarMobileType, SidebarPosition, SidebarService, SidebarState, SidebarTemplateRegistryService, SidebarVisibility, SidebarWidth, SkeletonAnimation, SkeletonService, SkeletonSize, SkeletonType, SmartFieldComponent, SortDirection, SortMode, StepSize, StepStatus, StepType, StepsService, SwitchFieldComponent, TableAction, TableActionService, TableDataService, TableFixedActionsService, TableSortService, TextAreaFieldComponent, TextFieldComponent, TimeFieldComponent, TimeInterval, TimelineService, TimelineStatus, TimelineType, TranslationMergeService, UruguayanDocumentValidationHelper, UsersModel, VERSION, ageValidator, calculateAge, equalToValidator, generateRandomUruguayanDocument, getCountryCodeStrings, getLatestBirthDateForAge, getRandomCi, getUruguayanDocumentValidationDigit, getValidationDigit, isSameDate, isValidCountryCode, provideCoreUiTranslateLoader, providePermissionActions, providePermissionEnums, providePermissionResources, providePermissionService, providePermissionServiceFactory, provideTranslateLoader, random, transform, transformUruguayanDocument, uruguayanDocumentValidator, validate, validateAge, validateCi, validateUruguayanDocument, validationDigit };
|
|
19877
|
+
export { ALL_COUNTRY_CODES, ActiveFiltersComponent, AgeValidationHelper, AlertComponent, AlertContainerComponent, AlertService, AlertType, ApiConfigurationProvider, BaseFieldComponent, ButtonContext, ButtonSize, ButtonType, COMMON_COUNTRIES, CacheBustingInterceptor, CardComponent, CarouselComponent, ChatMessagePosition, ChatMessageType, CheckboxFieldComponent, ConfigurationModel, ConfirmationDialogComponent, ConfirmationDialogService, CoreHostDirective, CoreManualRefreshComponent, CoreUiHttpLoaderFactory, CoreUiTranslateLoader, CoreUiTranslateService, CountryCode, CustomClassService, DEFAULT_COUNTRIES, DataListComponent, DataListItemComponent, DataStoreService, DateFieldComponent, DateUtility, DatetimeFieldComponent, DialogActions, DocumentAction, DocumentDisplayMode, DocumentFieldComponent, DocumentFieldValidators, DocumentPayloadMode, DropdownComponent, DropdownDirection, DropdownService, DynamicFieldDirective, DynamicFieldsHelper, FieldErrorsComponent, FieldType, FileFieldComponent, FileModel, FilePreviewActionType, FileTemplateModel, FileTemplateType, FileType, FileTypeModel, FileUploadService, FilterModalComponent, FilterService, FilterType, FixedActionPosition, FixedActionsMobileModalComponent, FixedActionsMobileModalService, GalleryAnimationType, GalleryLayoutType, GalleryModalComponent, GalleryModalGlobalService, GenericButtonComponent, GenericChatComponent, GenericChatService, GenericDocumentationComponent, GenericFixedActionsComponent, GenericGalleryComponent, GenericModalComponent, GenericPaginationComponent, GenericRatingComponent, GenericSidebarComponent, GenericSkeletonComponent, GenericStepsComponent, GenericSwitchComponent, GenericTableComponent, GenericTabsComponent, GenericTimelineComponent, GlobalApiConfigService, HeaderComponent, HeaderConfigurationService, HeaderElementType, HeaderService, HttpLoaderFactory, ImageModalComponent, ImageModalService, ImagePreviewComponent, LATIN_AMERICA_COUNTRIES, LayoutAuth, LayoutBreakpoint, LayoutComponent, LayoutService, LayoutStateService, LayoutType, LoaderComponent, LoaderService, MainNavComponent, MainNavService, ManualRefreshService, MobileHeaderComponent, MobileResolutionService, ModalMode, ModelApiService, MultiEntryFieldComponent, MultiEntryOutputFormat, NumberFieldComponent, NumberFieldConfigType, NumberFieldType, NumberRange, PERMISSION_ACTIONS_PROVIDER, PERMISSION_PROVIDER, PERMISSION_RESOURCES_PROVIDER, PaginationService, PasswordFieldComponent, PermissionEnumsService, PermissionModel, PermissionService, PermissionWrapperService, PermissionsActions, PermissionsCustomActions, PermissionsInterceptor, PermissionsResources, PhoneFieldComponent, ProgressBarComponent, ProgressBarSize, RatingService, RatingSize, RatingType, ResetPasswordModel, RoleModel, SOUTH_AMERICA_COUNTRIES, SelectFieldComponent, ServerSelectFieldComponent, ServerSelectService, SidebarCustomModalComponent, SidebarCustomModalService, SidebarHeight, SidebarMobileModalService, SidebarMobileType, SidebarPosition, SidebarService, SidebarState, SidebarTemplateRegistryService, SidebarVisibility, SidebarWidth, SkeletonAnimation, SkeletonService, SkeletonSize, SkeletonType, SmartFieldComponent, SortDirection, SortMode, StepSize, StepStatus, StepType, StepsService, SwitchFieldComponent, TableAction, TableActionService, TableDataService, TableFixedActionsService, TableSortService, TextAreaFieldComponent, TextFieldComponent, TimeFieldComponent, TimeInterval, TimelineService, TimelineStatus, TimelineType, TranslationMergeService, UruguayanDocumentValidationHelper, UsersModel, VERSION, ageValidator, calculateAge, equalToValidator, generateRandomUruguayanDocument, getCountryCodeStrings, getLatestBirthDateForAge, getRandomCi, getUruguayanDocumentValidationDigit, getValidationDigit, isSameDate, isValidCountryCode, provideCoreUiTranslateLoader, providePermissionActions, providePermissionEnums, providePermissionResources, providePermissionService, providePermissionServiceFactory, provideTranslateLoader, random, transform, transformUruguayanDocument, uruguayanDocumentValidator, validate, validateAge, validateCi, validateUruguayanDocument, validationDigit };
|
|
19831
19878
|
//# sourceMappingURL=solcre-org-core-ui.mjs.map
|