@acorex-platform/module-common-client 0.0.32 → 0.0.37

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.
Files changed (55) hide show
  1. package/fesm2022/{acorex-platform-module-common-client-acorex-platform-module-common-client-DsCvUxSh.mjs → acorex-platform-module-common-client-acorex-platform-module-common-client-BmGXSWg4.mjs} +40 -23
  2. package/fesm2022/acorex-platform-module-common-client-acorex-platform-module-common-client-BmGXSWg4.mjs.map +1 -0
  3. package/fesm2022/{acorex-platform-module-common-client-archive-entity.command-QmrPzKy_.mjs → acorex-platform-module-common-client-archive-entity.command-D0TFxo2b.mjs} +2 -2
  4. package/fesm2022/{acorex-platform-module-common-client-archive-entity.command-QmrPzKy_.mjs.map → acorex-platform-module-common-client-archive-entity.command-D0TFxo2b.mjs.map} +1 -1
  5. package/fesm2022/{acorex-platform-module-common-client-archive-entity.command.util-fd533YPY.mjs → acorex-platform-module-common-client-archive-entity.command.util-DrW2EjNj.mjs} +2 -2
  6. package/fesm2022/{acorex-platform-module-common-client-archive-entity.command.util-fd533YPY.mjs.map → acorex-platform-module-common-client-archive-entity.command.util-DrW2EjNj.mjs.map} +1 -1
  7. package/fesm2022/{acorex-platform-module-common-client-audit-info-column.component-CsqKKwwF.mjs → acorex-platform-module-common-client-audit-info-column.component-tMlIVjiu.mjs} +2 -2
  8. package/fesm2022/{acorex-platform-module-common-client-audit-info-column.component-CsqKKwwF.mjs.map → acorex-platform-module-common-client-audit-info-column.component-tMlIVjiu.mjs.map} +1 -1
  9. package/fesm2022/acorex-platform-module-common-client-audit-info-edit.component-COMMBgsX.mjs.map +1 -1
  10. package/fesm2022/acorex-platform-module-common-client-audit-info-view.component-UOTT-ir_.mjs.map +1 -1
  11. package/fesm2022/{acorex-platform-module-common-client-bulk-archive-entity.command-BfINUGph.mjs → acorex-platform-module-common-client-bulk-archive-entity.command-LNJekir_.mjs} +2 -2
  12. package/fesm2022/{acorex-platform-module-common-client-bulk-archive-entity.command-BfINUGph.mjs.map → acorex-platform-module-common-client-bulk-archive-entity.command-LNJekir_.mjs.map} +1 -1
  13. package/fesm2022/acorex-platform-module-common-client-bulk-disable-entity.command-DgoZVXQA.mjs.map +1 -1
  14. package/fesm2022/acorex-platform-module-common-client-bulk-enable-entity.command-C6fba__g.mjs.map +1 -1
  15. package/fesm2022/{acorex-platform-module-common-client-bulk-restore-archive-entity.command-CGy1Kdon.mjs → acorex-platform-module-common-client-bulk-restore-archive-entity.command-DV81VX8K.mjs} +2 -2
  16. package/fesm2022/{acorex-platform-module-common-client-bulk-restore-archive-entity.command-CGy1Kdon.mjs.map → acorex-platform-module-common-client-bulk-restore-archive-entity.command-DV81VX8K.mjs.map} +1 -1
  17. package/fesm2022/{acorex-platform-module-common-client-clone-entity.command-DgVI86z3.mjs → acorex-platform-module-common-client-clone-entity.command-CcjD0iDW.mjs} +2 -2
  18. package/fesm2022/{acorex-platform-module-common-client-clone-entity.command-DgVI86z3.mjs.map → acorex-platform-module-common-client-clone-entity.command-CcjD0iDW.mjs.map} +1 -1
  19. package/fesm2022/acorex-platform-module-common-client-contracts-entities-record-lock.mjs +135 -0
  20. package/fesm2022/acorex-platform-module-common-client-contracts-entities-record-lock.mjs.map +1 -0
  21. package/fesm2022/acorex-platform-module-common-client-contracts-entities-version-entry.mjs +205 -0
  22. package/fesm2022/acorex-platform-module-common-client-contracts-entities-version-entry.mjs.map +1 -0
  23. package/fesm2022/acorex-platform-module-common-client-contracts-entities-version-stream.mjs +118 -0
  24. package/fesm2022/acorex-platform-module-common-client-contracts-entities-version-stream.mjs.map +1 -0
  25. package/fesm2022/acorex-platform-module-common-client-contracts-entity-catalog-acorex-platform-module-common-client-contracts-entity-catalog-C2WFbRne.mjs +61 -0
  26. package/fesm2022/acorex-platform-module-common-client-contracts-entity-catalog-acorex-platform-module-common-client-contracts-entity-catalog-C2WFbRne.mjs.map +1 -0
  27. package/fesm2022/acorex-platform-module-common-client-contracts-entity-catalog-record-lock.entity-CY6jfaD7.mjs +95 -0
  28. package/fesm2022/acorex-platform-module-common-client-contracts-entity-catalog-record-lock.entity-CY6jfaD7.mjs.map +1 -0
  29. package/fesm2022/acorex-platform-module-common-client-contracts-entity-catalog-version-entry.entity-DCBxAIMJ.mjs +165 -0
  30. package/fesm2022/acorex-platform-module-common-client-contracts-entity-catalog-version-entry.entity-DCBxAIMJ.mjs.map +1 -0
  31. package/fesm2022/acorex-platform-module-common-client-contracts-entity-catalog-version-stream.entity-DbSB34vz.mjs +78 -0
  32. package/fesm2022/acorex-platform-module-common-client-contracts-entity-catalog-version-stream.entity-DbSB34vz.mjs.map +1 -0
  33. package/fesm2022/acorex-platform-module-common-client-contracts-entity-catalog.mjs +2 -0
  34. package/fesm2022/acorex-platform-module-common-client-contracts-entity-catalog.mjs.map +1 -0
  35. package/fesm2022/acorex-platform-module-common-client-contracts.mjs.map +1 -1
  36. package/fesm2022/acorex-platform-module-common-client-disable-entity.command-Bc1uH38V.mjs.map +1 -1
  37. package/fesm2022/acorex-platform-module-common-client-disable-entity.command.util-DQl6u2nj.mjs.map +1 -1
  38. package/fesm2022/acorex-platform-module-common-client-enable-entity.command-DeTumWIj.mjs.map +1 -1
  39. package/fesm2022/acorex-platform-module-common-client-get-current-time.command-Ck_SC5Bu.mjs.map +1 -1
  40. package/fesm2022/acorex-platform-module-common-client-local-entities.mjs +31 -0
  41. package/fesm2022/acorex-platform-module-common-client-local-entities.mjs.map +1 -0
  42. package/fesm2022/{acorex-platform-module-common-client-restore-archive-entity.command-Dx8CIcWc.mjs → acorex-platform-module-common-client-restore-archive-entity.command-CWJPmL4o.mjs} +2 -2
  43. package/fesm2022/{acorex-platform-module-common-client-restore-archive-entity.command-Dx8CIcWc.mjs.map → acorex-platform-module-common-client-restore-archive-entity.command-CWJPmL4o.mjs.map} +1 -1
  44. package/fesm2022/{acorex-platform-module-common-client-search-popup.component-D9gce0xf.mjs → acorex-platform-module-common-client-search-popup.component-CNJmksXt.mjs} +3 -3
  45. package/fesm2022/{acorex-platform-module-common-client-search-popup.component-D9gce0xf.mjs.map → acorex-platform-module-common-client-search-popup.component-CNJmksXt.mjs.map} +1 -1
  46. package/fesm2022/{acorex-platform-module-common-client-timeline-version-history-popup.component-Dg-TrXGF.mjs → acorex-platform-module-common-client-timeline-version-history-popup.component-DDpyY7mO.mjs} +3 -3
  47. package/fesm2022/{acorex-platform-module-common-client-timeline-version-history-popup.component-Dg-TrXGF.mjs.map → acorex-platform-module-common-client-timeline-version-history-popup.component-DDpyY7mO.mjs.map} +1 -1
  48. package/fesm2022/acorex-platform-module-common-client.mjs +1 -1
  49. package/package.json +21 -1
  50. package/types/acorex-platform-module-common-client-contracts-entities-record-lock.d.ts +5 -0
  51. package/types/acorex-platform-module-common-client-contracts-entities-version-entry.d.ts +5 -0
  52. package/types/acorex-platform-module-common-client-contracts-entities-version-stream.d.ts +5 -0
  53. package/types/acorex-platform-module-common-client-contracts-entity-catalog.d.ts +10 -0
  54. package/types/acorex-platform-module-common-client-local-entities.d.ts +12 -0
  55. package/fesm2022/acorex-platform-module-common-client-acorex-platform-module-common-client-DsCvUxSh.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-module-common-client-contracts.mjs","sources":["../../../../libs/modules/common/contracts/src/catalog-scope.keys.ts","../../../../libs/modules/common/contracts/src/commands.keys.ts","../../../../libs/modules/common/contracts/src/features.keys.ts","../../../../libs/modules/common/contracts/src/menu.keys.ts","../../../../libs/modules/common/contracts/src/permission-group.keys.ts","../../../../libs/modules/common/contracts/src/permission-display.util.ts","../../../../libs/modules/common/contracts/src/permission-module.map.ts","../../../../libs/modules/common/contracts/src/settings.keys.ts","../../../../libs/modules/common/contracts/src/version-history.settings.keys.ts","../../../../libs/modules/common/contracts/src/root-config.ts","../../../../libs/modules/common/contracts/src/index.ts","../../../../libs/modules/common/contracts/src/acorex-platform-module-common-client-contracts.ts"],"sourcesContent":["/** Cross-module catalog scope for shared questionnaires, question bank items, and workflows. */\nexport const COMMON_CATALOG_SCOPE_GENERAL = 'common.general';\n","//#region ---- Command keys ----\n\nexport const AXPCommonCommandKeys = {\n Archive: {\n Archive: 'archive-entity',\n Restore: 'restore-archive-entity',\n BulkArchive: 'bulk-archive-entity',\n BulkRestore: 'bulk-restore-archive-entity',\n },\n Disable: {\n Disable: 'disable-entity',\n Enable: 'enable-entity',\n BulkDisable: 'bulk-disable-entity',\n BulkEnable: 'bulk-enable-entity',\n },\n Clone: {\n Clone: 'clone-entity',\n },\n Compare: {\n EntityRecords: 'compare-entity-records',\n EntityRecordVersions: 'compare-entity-record-versions',\n },\n GlobalSearch: {\n Open: 'global-search',\n },\n Lock: {\n Lock: 'lock-popup',\n Unlock: 'unlock-confirm',\n },\n} as const;\n\n//#endregion\n","export const AXPCommonFeatureKeys = {\n GlobalSearch: 'Common:Feature:GlobalSearch',\n AdvancedExport: 'Common:Feature:AdvancedExport',\n ActivityLog: 'Common:Feature:ActivityLog',\n DataImport: 'Common:Feature:DataImport',\n BulkOperations: 'Common:Feature:BulkOperations',\n AdvancedFiltering: 'Common:Feature:AdvancedFiltering',\n DataSynchronization: 'Common:Feature:DataSynchronization',\n} as const;\n\n","export const AXPCommonMenuKeys = {\n Home: 'Common:Menu:Home',\n Administration: 'Common:Menu:Administration',\n Help: 'Common:Menu:Help',\n Configuration: 'Common:Menu:Configuration',\n Contacts: 'Common:Menu:Contacts',\n Platform: 'Common:Menu:Platform',\n /** Administration > Publishing (Promotions, Page Builder, Dashboards, Announcements) */\n Content: 'Common:Menu:Administration:Content',\n /** Administration > Monitoring (Communications, Jobs) */\n Monitoring: 'Common:Menu:Administration:Monitoring',\n /** Administration > Workflows (Workflow Definitions, Instances, Studio, Activities) */\n Workflows: 'Common:Menu:Administration:Workflows',\n /** Commerce (Products, Orders, Supplier Products) */\n Commerce: 'Common:Menu:Commerce',\n /** Configuration > Meeting (Meeting Types, Meeting Role Types) */\n Meeting: 'Common:Menu:Configuration:Meeting',\n /** Organization (Teams, Positions, Employees, Leave - merged with Staff) */\n Organization: 'Common:Menu:Organization',\n /** Configuration > Organization (Job Definitions, Employment Types, etc.) */\n OrganizationConfig: 'Common:Menu:Configuration:Organization',\n /** Configuration > Help Desk (Issue Types) */\n HelpDeskConfig: 'Common:Menu:Configuration:HelpDesk',\n /** Configuration > Document Management (Document Types) */\n DocumentManagementConfig: 'Common:Menu:Configuration:DocumentManagement',\n /** Configuration > Forms & Assessments (Question Bank, Questionnaires, Form Templates) */\n FormsAndAssessments: 'Common:Menu:Configuration:FormsAndAssessments',\n /** Configuration > Reservation (Types, Statuses, Classes) */\n ReservationConfig: 'Common:Menu:Configuration:Reservation',\n /** Configuration > Date and Time (Timezones, Calendars, Calendar Event Types) */\n DateAndTime: 'Common:Menu:Configuration:DateAndTime',\n /** Configuration > Region and Locale (Location Types, Geographic Regions, Languages) */\n Region: 'Common:Menu:Configuration:Region',\n /** Configuration > People and Demographics (personal reference data) */\n PeopleAndDemographics: 'Common:Menu:Configuration:PeopleAndDemographics',\n /** Configuration > Health (health reference data and catalogs) */\n Health: 'Common:Menu:Configuration:Health',\n /** Configuration > Projects (Project + Task reference data) */\n Projects: 'Common:Menu:Configuration:Projects',\n /** Configuration > Scheduling and Events (Meeting + Reservation types) */\n SchedulingAndEvents: 'Common:Menu:Configuration:SchedulingAndEvents',\n /** Configuration > Data and Content (Documents + Data Definitions) */\n DataAndContent: 'Common:Menu:Configuration:DataAndContent',\n /** Configuration > Platform Definitions (Entity / Command / Query / Plugin / Widget catalogs) */\n PlatformDefinitions: 'Common:Menu:Configuration:PlatformDefinitions',\n /** Configuration > Intelligence (AI Management) */\n AiManagementConfig: 'Common:Menu:Configuration:AiManagement',\n /** Plant & Equipment (top-level menu group) */\n PlantEquipment: 'Common:Menu:PlantEquipment',\n} as const;\n","/**\n * Shared permission group ids for the role UI.\n * Modules contribute capabilities via addGroup(these keys) so domains stay aligned\n * (same nesting idea as {@link AXPCommonCommandKeys}).\n *\n * Format: `Common:PermissionGroup:{Domain}` or `Common:PermissionGroup:{Root}:{Section}`\n * - `Domain.Root` — left-nav root group id\n * - `Domain.Section` — optional right-panel section under that root\n * Root `order` values follow the catalog in permission-design.mdc (lower first).\n * See `.cursor/rules/core-rules/permission-design.mdc`.\n *\n * @example\n * groups.SalesCustomers.Root\n * groups.SalesCustomers.Customers\n * groups.SuppliersProcurement.Root\n * groups.Administration.SecurityAccess\n */\nexport const AXPCommonPermissionGroupKeys = {\n //#region ---- Business domains ----\n\n PeopleOrganization: {\n Root: 'Common:PermissionGroup:PeopleOrganization',\n Structure: 'Common:PermissionGroup:PeopleOrganization:Structure',\n Workforce: 'Common:PermissionGroup:PeopleOrganization:Workforce',\n Attendance: 'Common:PermissionGroup:PeopleOrganization:Attendance',\n },\n Learning: {\n Root: 'Common:PermissionGroup:Learning',\n },\n SafetyRisk: {\n Root: 'Common:PermissionGroup:SafetyRisk',\n WorkplaceSafety: 'Common:PermissionGroup:SafetyRisk:WorkplaceSafety',\n Risk: 'Common:PermissionGroup:SafetyRisk:Risk',\n Health: 'Common:PermissionGroup:SafetyRisk:Health',\n Assessments: 'Common:PermissionGroup:SafetyRisk:Assessments',\n },\n Finance: {\n Root: 'Common:PermissionGroup:Finance',\n },\n SalesCustomers: {\n Root: 'Common:PermissionGroup:SalesCustomers',\n Customers: 'Common:PermissionGroup:SalesCustomers:Customers',\n Sales: 'Common:PermissionGroup:SalesCustomers:Sales',\n Products: 'Common:PermissionGroup:SalesCustomers:Products',\n Orders: 'Common:PermissionGroup:SalesCustomers:Orders',\n Subscriptions: 'Common:PermissionGroup:SalesCustomers:Subscriptions',\n },\n SuppliersProcurement: {\n Root: 'Common:PermissionGroup:SuppliersProcurement',\n SuppliersSubcontractors: 'Common:PermissionGroup:SuppliersProcurement:SuppliersSubcontractors',\n },\n ProjectsWork: {\n Root: 'Common:PermissionGroup:ProjectsWork',\n Projects: 'Common:PermissionGroup:ProjectsWork:Projects',\n Tasks: 'Common:PermissionGroup:ProjectsWork:Tasks',\n TimeTracking: 'Common:PermissionGroup:ProjectsWork:TimeTracking',\n },\n AssetsMaintenance: {\n Root: 'Common:PermissionGroup:AssetsMaintenance',\n Assets: 'Common:PermissionGroup:AssetsMaintenance:Assets',\n Maintenance: 'Common:PermissionGroup:AssetsMaintenance:Maintenance',\n },\n Collaboration: {\n Root: 'Common:PermissionGroup:Collaboration',\n Conversations: 'Common:PermissionGroup:Collaboration:Conversations',\n Scheduling: 'Common:PermissionGroup:Collaboration:Scheduling',\n Communications: 'Common:PermissionGroup:Collaboration:Communications',\n HelpDesk: 'Common:PermissionGroup:Collaboration:HelpDesk',\n },\n ContentDocuments: {\n Root: 'Common:PermissionGroup:ContentDocuments',\n Documents: 'Common:PermissionGroup:ContentDocuments:Documents',\n Content: 'Common:PermissionGroup:ContentDocuments:Content',\n FormTemplates: 'Common:PermissionGroup:ContentDocuments:FormTemplates',\n },\n InsightsReporting: {\n Root: 'Common:PermissionGroup:InsightsReporting',\n Reports: 'Common:PermissionGroup:InsightsReporting:Reports',\n ActivityInsight: 'Common:PermissionGroup:InsightsReporting:ActivityInsight',\n Data: 'Common:PermissionGroup:InsightsReporting:Data',\n },\n\n //#endregion\n\n //#region ---- Platform roots ----\n\n ApplicationsPlatform: {\n Root: 'Common:PermissionGroup:ApplicationsPlatform',\n Applications: 'Common:PermissionGroup:ApplicationsPlatform:Applications',\n TenancyShell: 'Common:PermissionGroup:ApplicationsPlatform:TenancyShell',\n Configuration: 'Common:PermissionGroup:ApplicationsPlatform:Configuration',\n DevTools: 'Common:PermissionGroup:ApplicationsPlatform:DevTools',\n },\n Administration: {\n Root: 'Common:PermissionGroup:Administration',\n SecurityAccess: 'Common:PermissionGroup:Administration:SecurityAccess',\n Settings: 'Common:PermissionGroup:Administration:Settings',\n Integrations: 'Common:PermissionGroup:Administration:Integrations',\n Workflow: 'Common:PermissionGroup:Administration:Workflow',\n Rules: 'Common:PermissionGroup:Administration:Rules',\n Ai: 'Common:PermissionGroup:Administration:Ai',\n Dashboards: 'Common:PermissionGroup:Administration:Dashboards',\n Jobs: 'Common:PermissionGroup:Administration:Jobs',\n Observability: 'Common:PermissionGroup:Administration:Observability',\n },\n\n //#endregion\n} as const;\n","//#region ----- Permission display keys -----\n\n/**\n * Maps conceptual permission keys (`Domain:Permission:Capability`) to the\n * shared `@common:{domain}.permissions.{capability}.(title|description)` i18n\n * keys used by client permission-definition providers.\n */\nexport function resolvePermissionI18nKeys(\n permissionKey: string,\n): { titleKey: string; descriptionKey: string } | null {\n const parts = permissionKey.split(':');\n if (parts.length < 3 || parts[1] !== 'Permission') {\n return null;\n }\n\n const domainKebab = pascalToKebab(parts[0] ?? '');\n const capabilityKebab = pascalToKebab(parts[parts.length - 1] ?? '');\n if (!domainKebab || !capabilityKebab) {\n return null;\n }\n\n const base = `@common:${domainKebab}.permissions.${capabilityKebab}`;\n return {\n titleKey: `${base}.title`,\n descriptionKey: `${base}.description`,\n };\n}\n\n/** Fallback label when no i18n key can be derived (last capability segment). */\nexport function humanizePermissionCapability(permissionKey: string): string {\n const capability = permissionKey.split(':').pop() ?? permissionKey;\n return capability\n .replace(/([a-z0-9])([A-Z])/g, '$1 $2')\n .replace(/([A-Z]+)([A-Z][a-z])/g, '$1 $2')\n .trim();\n}\n\n/**\n * Value for report/UI display columns: prefer the i18n title key (translated by\n * text widgets), otherwise a humanized capability label.\n */\nexport function resolvePermissionTitleDisplay(permissionKey: string): string {\n return resolvePermissionI18nKeys(permissionKey)?.titleKey ?? humanizePermissionCapability(permissionKey);\n}\n\nfunction pascalToKebab(value: string): string {\n return value\n .replace(/([a-z0-9])([A-Z])/g, '$1-$2')\n .replace(/([A-Z]+)([A-Z][a-z])/g, '$1-$2')\n .replace(/_/g, '-')\n .toLowerCase()\n .replace(/-+/g, '-')\n .replace(/^-|-$/g, '');\n}\n\n//#endregion\n","//#region ----- Types -----\n\n/**\n * Resolves which edition module name(s) a conceptual permission key belongs to.\n * Used to filter role grants / permission editor by application edition modules.\n */\nexport type AXPPermissionModulesResolver = (permissionKey: string) => readonly string[];\n\n//#endregion\n\n//#region ----- Domain → modules (Access / Setup = any-module) -----\n\n/**\n * Contributing Nx / edition module names per conceptual domain prefix.\n * Access and Setup keys use this full list (match if ANY module is enabled).\n */\nexport const AXPPermissionDomainModules = {\n Administration: [\n 'SecurityManagement',\n 'IntegrationManagement',\n 'WorkflowManagement',\n 'RuleEngineManagement',\n 'AiManagement',\n 'DashboardManagement',\n 'BackgroundJobManagement',\n 'SystemInsight',\n ],\n /**\n * Platform Console catalog modules for Access ANY-match.\n * SettingsManagement is intentionally omitted — product apps enable it for\n * MaintainTenantSettings without unlocking Applications & Platform Access.\n */\n ApplicationsPlatform: [\n 'ApplicationManagement',\n 'TenantManagement',\n 'PlatformManagement',\n 'AppBuilder',\n 'IdentifierManagement',\n 'LocaleManagement',\n 'PlatformDevTools',\n ],\n PeopleOrganization: [\n 'OrganizationManagement',\n 'HumanCapitalManagement',\n 'PersonCore',\n 'AttendanceManagement',\n 'LocationManagement',\n ],\n SafetyRisk: [\n 'WorkplaceSafetyManagement',\n 'RiskManagement',\n 'HealthCore',\n 'AssessmentManagement',\n ],\n ProjectsWork: ['ProjectManagement', 'TaskManagement', 'TimesheetManagement'],\n AssetsMaintenance: ['AssetManagement', 'MaintenanceManagement', 'MeasurementCore'],\n Collaboration: [\n 'Conversation',\n 'CalendarManagement',\n 'MeetingManagement',\n 'CommunicationManagement',\n 'BulletinManagement',\n 'ReservationManagement',\n 'HelpDesk',\n 'ContactCore',\n ],\n ContentDocuments: ['DocumentManagement', 'ContentManagement', 'FormTemplateManagement'],\n InsightsReporting: ['ReportManagement', 'DataManagement', 'ActivityInsight'],\n SalesCustomers: [\n 'CustomerManagement',\n 'ProductCatalog',\n 'OrderManagement',\n 'SubscriptionManagement',\n 'BusinessCore',\n ],\n Procurement: ['SupplierManagement', 'ProcurementManagement'],\n Learning: ['LearningManagement'],\n Finance: ['FinancialCore'],\n} as const;\n\n//#endregion\n\n//#region ----- Permission key → modules -----\n\n/**\n * Owner / contributing modules for each conceptual permission key.\n * - Access & Setup → all domain modules (any-module match)\n * - Unique Maintain/Manage/View/… → registering owner module only\n */\nexport const AXPPermissionKeyModules: Readonly<Record<string, readonly string[]>> = {\n // Administration\n 'Administration:Permission:Access': AXPPermissionDomainModules.Administration,\n 'Administration:Permission:MaintainUsersAndRoles': ['SecurityManagement'],\n 'Administration:Permission:ManageSessions': ['SecurityManagement'],\n 'Administration:Permission:MaintainPolicies': ['SecurityManagement'],\n 'Administration:Permission:ViewIntegrations': ['IntegrationManagement'],\n 'Administration:Permission:MaintainConnections': ['IntegrationManagement'],\n 'Administration:Permission:ManageIntegrationActions': ['IntegrationManagement'],\n 'Administration:Permission:MaintainWorkflows': ['WorkflowManagement'],\n 'Administration:Permission:ManageWorkflowActions': ['WorkflowManagement'],\n 'Administration:Permission:ViewRules': ['RuleEngineManagement'],\n 'Administration:Permission:MaintainRules': ['RuleEngineManagement'],\n 'Administration:Permission:ManageRuleActions': ['RuleEngineManagement'],\n 'Administration:Permission:MaintainAi': ['AiManagement'],\n 'Administration:Permission:UseAiAssist': ['AiManagement'],\n 'Administration:Permission:MaintainDashboards': ['DashboardManagement'],\n 'Administration:Permission:ViewJobs': ['BackgroundJobManagement'],\n 'Administration:Permission:ManageJobActions': ['BackgroundJobManagement'],\n 'Administration:Permission:ViewObservability': ['SystemInsight'],\n 'Administration:Permission:MaintainObservability': ['SystemInsight'],\n\n // Applications & Platform\n 'ApplicationsPlatform:Permission:Access': AXPPermissionDomainModules.ApplicationsPlatform,\n 'ApplicationsPlatform:Permission:MaintainApplications': ['ApplicationManagement'],\n 'ApplicationsPlatform:Permission:MaintainTenants': ['TenantManagement'],\n 'ApplicationsPlatform:Permission:MaintainPlatformShell': ['PlatformManagement'],\n 'ApplicationsPlatform:Permission:MaintainLandingPages': ['AppBuilder'],\n 'ApplicationsPlatform:Permission:MaintainIdentifiers': ['IdentifierManagement'],\n 'ApplicationsPlatform:Permission:MaintainTenantSettings': ['SettingsManagement'],\n /** Platform-wide settings — Platform Console only (not product-app SettingsManagement). */\n 'ApplicationsPlatform:Permission:MaintainPlatformSettings': ['PlatformManagement'],\n 'ApplicationsPlatform:Permission:MaintainLocales': ['LocaleManagement'],\n 'ApplicationsPlatform:Permission:UseDevTools': ['PlatformDevTools'],\n\n // People & Organization\n 'PeopleOrganization:Permission:Access': AXPPermissionDomainModules.PeopleOrganization,\n 'PeopleOrganization:Permission:Setup': AXPPermissionDomainModules.PeopleOrganization,\n 'PeopleOrganization:Permission:ViewOrganization': ['OrganizationManagement'],\n 'PeopleOrganization:Permission:MaintainOrganization': ['OrganizationManagement'],\n 'PeopleOrganization:Permission:MaintainTeams': ['OrganizationManagement'],\n 'PeopleOrganization:Permission:DesignJobs': ['OrganizationManagement'],\n 'PeopleOrganization:Permission:MaintainEmployees': ['HumanCapitalManagement'],\n 'PeopleOrganization:Permission:ManageEmployeeActions': ['HumanCapitalManagement'],\n 'PeopleOrganization:Permission:MaintainPersons': ['PersonCore'],\n 'PeopleOrganization:Permission:MaintainAttendance': ['AttendanceManagement'],\n 'PeopleOrganization:Permission:ManageAttendanceActions': ['AttendanceManagement'],\n\n // Safety & Risk\n 'SafetyRisk:Permission:Access': AXPPermissionDomainModules.SafetyRisk,\n 'SafetyRisk:Permission:Setup': AXPPermissionDomainModules.SafetyRisk,\n 'SafetyRisk:Permission:MaintainSafety': ['WorkplaceSafetyManagement'],\n 'SafetyRisk:Permission:MaintainRisk': ['RiskManagement'],\n 'SafetyRisk:Permission:MaintainHealth': ['HealthCore'],\n 'SafetyRisk:Permission:MaintainAssessments': ['AssessmentManagement'],\n\n // Projects & Work\n 'ProjectsWork:Permission:Access': AXPPermissionDomainModules.ProjectsWork,\n 'ProjectsWork:Permission:Setup': AXPPermissionDomainModules.ProjectsWork,\n 'ProjectsWork:Permission:MaintainProjects': ['ProjectManagement'],\n 'ProjectsWork:Permission:MaintainTasks': ['TaskManagement'],\n 'ProjectsWork:Permission:ViewAllTasks': ['TaskManagement'],\n 'ProjectsWork:Permission:MaintainTimesheets': ['TimesheetManagement'],\n 'ProjectsWork:Permission:ManageTimesheetActions': ['TimesheetManagement'],\n 'ProjectsWork:Permission:ViewTimesheetReports': ['TimesheetManagement'],\n\n // Assets & Maintenance\n 'AssetsMaintenance:Permission:Access': AXPPermissionDomainModules.AssetsMaintenance,\n 'AssetsMaintenance:Permission:Setup': AXPPermissionDomainModules.AssetsMaintenance,\n 'AssetsMaintenance:Permission:MaintainAssets': ['AssetManagement'],\n 'AssetsMaintenance:Permission:MaintainMaintenance': ['MaintenanceManagement'],\n\n // Collaboration\n 'Collaboration:Permission:Access': AXPPermissionDomainModules.Collaboration,\n 'Collaboration:Permission:Setup': AXPPermissionDomainModules.Collaboration,\n 'Collaboration:Permission:MaintainConversations': ['Conversation'],\n 'Collaboration:Permission:MaintainCalendars': ['CalendarManagement'],\n 'Collaboration:Permission:MaintainMeetings': ['MeetingManagement'],\n 'Collaboration:Permission:MaintainCommunications': ['CommunicationManagement'],\n 'Collaboration:Permission:ViewBulletins': ['BulletinManagement'],\n 'Collaboration:Permission:MaintainBulletins': ['BulletinManagement'],\n 'Collaboration:Permission:PublishBulletins': ['BulletinManagement'],\n 'Collaboration:Permission:ModerateBulletinDiscussions': ['BulletinManagement'],\n 'Collaboration:Permission:MaintainReservations': ['ReservationManagement'],\n 'Collaboration:Permission:MaintainHelpDesk': ['HelpDesk'],\n\n // Content & Documents\n 'ContentDocuments:Permission:Access': AXPPermissionDomainModules.ContentDocuments,\n 'ContentDocuments:Permission:Setup': AXPPermissionDomainModules.ContentDocuments,\n 'ContentDocuments:Permission:MaintainDocuments': ['DocumentManagement'],\n 'ContentDocuments:Permission:MaintainContent': ['ContentManagement'],\n 'ContentDocuments:Permission:MaintainFormTemplates': ['FormTemplateManagement'],\n\n // Insights & Reporting\n 'InsightsReporting:Permission:Access': AXPPermissionDomainModules.InsightsReporting,\n 'InsightsReporting:Permission:Setup': AXPPermissionDomainModules.InsightsReporting,\n 'InsightsReporting:Permission:MaintainReports': ['ReportManagement'],\n 'InsightsReporting:Permission:MaintainData': ['DataManagement'],\n 'InsightsReporting:Permission:ViewActivityInsight': ['ActivityInsight'],\n 'InsightsReporting:Permission:ManageActivityInsight': ['ActivityInsight'],\n\n // Sales & Customers / Commerce\n 'SalesCustomers:Permission:Access': AXPPermissionDomainModules.SalesCustomers,\n 'SalesCustomers:Permission:Setup': AXPPermissionDomainModules.SalesCustomers,\n 'SalesCustomers:Permission:MaintainCustomers': ['CustomerManagement'],\n 'SalesCustomers:Permission:MaintainSales': ['CustomerManagement'],\n 'SalesCustomers:Permission:MaintainProducts': ['ProductCatalog'],\n 'SalesCustomers:Permission:MaintainOrders': ['OrderManagement'],\n 'SalesCustomers:Permission:MaintainSubscriptions': ['SubscriptionManagement'],\n\n // Procurement\n 'Procurement:Permission:Access': AXPPermissionDomainModules.Procurement,\n 'Procurement:Permission:Setup': AXPPermissionDomainModules.Procurement,\n 'Procurement:Permission:MaintainSuppliers': ['SupplierManagement'],\n 'Procurement:Permission:MaintainProcurement': ['ProcurementManagement'],\n\n // Learning\n 'Learning:Permission:Access': AXPPermissionDomainModules.Learning,\n 'Learning:Permission:Setup': AXPPermissionDomainModules.Learning,\n 'Learning:Permission:MaintainLearning': ['LearningManagement'],\n\n // Finance\n 'Finance:Permission:Access': AXPPermissionDomainModules.Finance,\n 'Finance:Permission:Setup': AXPPermissionDomainModules.Finance,\n 'Finance:Permission:MaintainFinance': ['FinancialCore'],\n} as const;\n\n//#endregion\n\n//#region ----- Helpers -----\n\n/**\n * Returns edition module names for a permission key.\n * Unknown keys fall back to the legacy `{Prefix}:…` module-prefix convention.\n */\nexport function resolvePermissionModules(permissionKey: string): readonly string[] {\n const mapped = AXPPermissionKeyModules[permissionKey];\n if (mapped?.length) {\n return mapped;\n }\n\n // Dynamic keys (e.g. AiManagement assist helpers) or legacy Module:Permission:…\n const separatorIndex = permissionKey.indexOf(':');\n if (separatorIndex <= 0) {\n return [];\n }\n return [permissionKey.slice(0, separatorIndex)];\n}\n\n/**\n * True when the permission is available for the enabled edition modules (ANY match).\n */\nexport function isPermissionEnabledForModules(\n permissionKey: string,\n enabledModules: readonly string[],\n): boolean {\n if (!enabledModules.length) {\n return false;\n }\n const enabled = new Set(enabledModules);\n return resolvePermissionModules(permissionKey).some((moduleName) => enabled.has(moduleName));\n}\n\n//#endregion\n","export enum AXMLockSystemSettings {\n LockSystem = 'Common:Setting:LockSystem.Enabled',\n}\n\nexport enum AXMCommonSettings {\n QuickSearchEnabled = 'Common:Setting:Entity.QuickSearchEnabled',\n}\n","//#region ----- Version history platform settings -----\n\nexport enum AXPVersionHistorySettings {\n RetentionEnabled = 'Common:Setting:VersionHistory.Retention.Enabled',\n RetentionPeriodDays = 'Common:Setting:VersionHistory.Retention.PeriodDays',\n RetentionBatchSize = 'Common:Setting:VersionHistory.Retention.BatchSize',\n RetentionPurgeCron = 'Common:Setting:VersionHistory.Retention.PurgeCron',\n SkipEmptyPatches = 'Common:Setting:VersionHistory.SkipEmptyPatches',\n}\n\nexport const AXP_VERSION_HISTORY_SETTING_DEFAULTS = {\n [AXPVersionHistorySettings.RetentionEnabled]: true,\n [AXPVersionHistorySettings.RetentionPeriodDays]: 365,\n [AXPVersionHistorySettings.RetentionBatchSize]: 500,\n [AXPVersionHistorySettings.RetentionPurgeCron]: '0 3 * * *',\n [AXPVersionHistorySettings.SkipEmptyPatches]: true,\n} as const;\n\n//#endregion\n","const config = {\n i18n: 'common',\n module: 'Common',\n};\n\nexport const RootConfig = {\n config,\n module: {\n route: 'common',\n name: config.module,\n title: '@general:common.module.title',\n icon: 'fa-light fa-file-invoice',\n },\n entities: {\n recordLock: {\n name: 'RecordLock',\n title: 'Record Lock',\n titlePlural: 'Record Locks',\n icon: 'fa-light fa-lock',\n source: `${config.module}.RecordLock`,\n },\n versionStream: {\n name: 'VersionStream',\n title: 'Version Stream',\n titlePlural: 'Version Streams',\n icon: 'fa-light fa-code-branch',\n source: `${config.module}.VersionStream`,\n },\n versionEntry: {\n name: 'VersionEntry',\n title: 'Version Entry',\n titlePlural: 'Version Entries',\n icon: 'fa-light fa-clock-rotate-left',\n source: `${config.module}.VersionEntry`,\n },\n },\n} as const;\n","//#region ---- Contracts barrel ----\n\nexport * from './catalog-scope.keys';\nexport * from './commands.keys';\nexport * from './features.keys';\nexport * from './menu.keys';\nexport * from './permission-group.keys';\nexport * from './permission-display.util';\nexport * from './permission-module.map';\nexport * from './settings.keys';\nexport * from './version-history.settings.keys';\n\nexport * from './root-config';\n\n//#endregion\n\n// Entity layout factories live in server; keep barrel as empty module for compatibility.\nexport {};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-platform-module-common-client-contracts.mjs","sources":["../../../../libs/modules/common/contracts/src/catalog-scope.keys.ts","../../../../libs/modules/common/contracts/src/commands.keys.ts","../../../../libs/modules/common/contracts/src/features.keys.ts","../../../../libs/modules/common/contracts/src/menu.keys.ts","../../../../libs/modules/common/contracts/src/permission-group.keys.ts","../../../../libs/modules/common/contracts/src/permission-display.util.ts","../../../../libs/modules/common/contracts/src/permission-module.map.ts","../../../../libs/modules/common/contracts/src/settings.keys.ts","../../../../libs/modules/common/contracts/src/version-history.settings.keys.ts","../../../../libs/modules/common/contracts/src/root-config.ts","../../../../libs/modules/common/contracts/src/index.ts","../../../../libs/modules/common/contracts/src/acorex-platform-module-common-client-contracts.ts"],"sourcesContent":["/** Cross-module catalog scope for shared questionnaires, question bank items, and workflows. */\nexport const COMMON_CATALOG_SCOPE_GENERAL = 'common.general';\n","//#region ---- Command keys ----\n\nexport const AXPCommonCommandKeys = {\n Archive: {\n Archive: 'archive-entity',\n Restore: 'restore-archive-entity',\n BulkArchive: 'bulk-archive-entity',\n BulkRestore: 'bulk-restore-archive-entity',\n },\n Disable: {\n Disable: 'disable-entity',\n Enable: 'enable-entity',\n BulkDisable: 'bulk-disable-entity',\n BulkEnable: 'bulk-enable-entity',\n },\n Clone: {\n Clone: 'clone-entity',\n },\n Compare: {\n EntityRecords: 'compare-entity-records',\n EntityRecordVersions: 'compare-entity-record-versions',\n },\n GlobalSearch: {\n Open: 'global-search',\n },\n Lock: {\n Lock: 'lock-popup',\n Unlock: 'unlock-confirm',\n },\n} as const;\n\n//#endregion\n","export const AXPCommonFeatureKeys = {\n GlobalSearch: 'Common:Feature:GlobalSearch',\n AdvancedExport: 'Common:Feature:AdvancedExport',\n ActivityLog: 'Common:Feature:ActivityLog',\n DataImport: 'Common:Feature:DataImport',\n BulkOperations: 'Common:Feature:BulkOperations',\n AdvancedFiltering: 'Common:Feature:AdvancedFiltering',\n DataSynchronization: 'Common:Feature:DataSynchronization',\n} as const;\n\n","export const AXPCommonMenuKeys = {\n Home: 'Common:Menu:Home',\n Administration: 'Common:Menu:Administration',\n Help: 'Common:Menu:Help',\n Configuration: 'Common:Menu:Configuration',\n Contacts: 'Common:Menu:Contacts',\n Platform: 'Common:Menu:Platform',\n /** Administration > Publishing (Promotions, Page Builder, Dashboards, Announcements) */\n Content: 'Common:Menu:Administration:Content',\n /** Administration > Monitoring (Communications, Jobs) */\n Monitoring: 'Common:Menu:Administration:Monitoring',\n /** Administration > Workflows (Workflow Definitions, Instances, Studio, Activities) */\n Workflows: 'Common:Menu:Administration:Workflows',\n /** Commerce (Products, Orders, Supplier Products) */\n Commerce: 'Common:Menu:Commerce',\n /** Configuration > Meeting (Meeting Types, Meeting Role Types) */\n Meeting: 'Common:Menu:Configuration:Meeting',\n /** Organization (Teams, Positions, Employees, Leave - merged with Staff) */\n Organization: 'Common:Menu:Organization',\n /** Configuration > Organization (Job Definitions, Employment Types, etc.) */\n OrganizationConfig: 'Common:Menu:Configuration:Organization',\n /** Configuration > Help Desk (Issue Types) */\n HelpDeskConfig: 'Common:Menu:Configuration:HelpDesk',\n /** Configuration > Document Management (Document Types) */\n DocumentManagementConfig: 'Common:Menu:Configuration:DocumentManagement',\n /** Configuration > Forms & Assessments (Question Bank, Questionnaires, Form Templates) */\n FormsAndAssessments: 'Common:Menu:Configuration:FormsAndAssessments',\n /** Configuration > Reservation (Types, Statuses, Classes) */\n ReservationConfig: 'Common:Menu:Configuration:Reservation',\n /** Configuration > Date and Time (Timezones, Calendars, Calendar Event Types) */\n DateAndTime: 'Common:Menu:Configuration:DateAndTime',\n /** Configuration > Region and Locale (Location Types, Geographic Regions, Languages) */\n Region: 'Common:Menu:Configuration:Region',\n /** Configuration > People and Demographics (personal reference data) */\n PeopleAndDemographics: 'Common:Menu:Configuration:PeopleAndDemographics',\n /** Configuration > Health (health reference data and catalogs) */\n Health: 'Common:Menu:Configuration:Health',\n /** Configuration > Projects (Project + Task reference data) */\n Projects: 'Common:Menu:Configuration:Projects',\n /** Configuration > Scheduling and Events (Meeting + Reservation types) */\n SchedulingAndEvents: 'Common:Menu:Configuration:SchedulingAndEvents',\n /** Configuration > Data and Content (Documents + Data Definitions) */\n DataAndContent: 'Common:Menu:Configuration:DataAndContent',\n /** Configuration > Platform Definitions (Entity / Command / Query / Plugin / Widget catalogs) */\n PlatformDefinitions: 'Common:Menu:Configuration:PlatformDefinitions',\n /** Configuration > Intelligence (AI Management) */\n AiManagementConfig: 'Common:Menu:Configuration:AiManagement',\n /** Plant & Equipment (top-level menu group) */\n PlantEquipment: 'Common:Menu:PlantEquipment',\n} as const;\n","/**\n * Shared permission group ids for the role UI.\n * Modules contribute capabilities via addGroup(these keys) so domains stay aligned\n * (same nesting idea as {@link AXPCommonCommandKeys}).\n *\n * Format: `Common:PermissionGroup:{Domain}` or `Common:PermissionGroup:{Root}:{Section}`\n * - `Domain.Root` — left-nav root group id\n * - `Domain.Section` — optional right-panel section under that root\n * Root `order` values follow the catalog in permission-design.mdc (lower first).\n * See `.cursor/rules/core-rules/permission-design.mdc`.\n *\n * @example\n * groups.SalesCustomers.Root\n * groups.SalesCustomers.Customers\n * groups.SuppliersProcurement.Root\n * groups.Administration.SecurityAccess\n */\nexport const AXPCommonPermissionGroupKeys = {\n //#region ---- Business domains ----\n\n PeopleOrganization: {\n Root: 'Common:PermissionGroup:PeopleOrganization',\n Structure: 'Common:PermissionGroup:PeopleOrganization:Structure',\n Workforce: 'Common:PermissionGroup:PeopleOrganization:Workforce',\n Attendance: 'Common:PermissionGroup:PeopleOrganization:Attendance',\n },\n Learning: {\n Root: 'Common:PermissionGroup:Learning',\n },\n SafetyRisk: {\n Root: 'Common:PermissionGroup:SafetyRisk',\n WorkplaceSafety: 'Common:PermissionGroup:SafetyRisk:WorkplaceSafety',\n Risk: 'Common:PermissionGroup:SafetyRisk:Risk',\n Health: 'Common:PermissionGroup:SafetyRisk:Health',\n Assessments: 'Common:PermissionGroup:SafetyRisk:Assessments',\n },\n Finance: {\n Root: 'Common:PermissionGroup:Finance',\n },\n SalesCustomers: {\n Root: 'Common:PermissionGroup:SalesCustomers',\n Customers: 'Common:PermissionGroup:SalesCustomers:Customers',\n Sales: 'Common:PermissionGroup:SalesCustomers:Sales',\n Products: 'Common:PermissionGroup:SalesCustomers:Products',\n Orders: 'Common:PermissionGroup:SalesCustomers:Orders',\n Subscriptions: 'Common:PermissionGroup:SalesCustomers:Subscriptions',\n },\n SuppliersProcurement: {\n Root: 'Common:PermissionGroup:SuppliersProcurement',\n SuppliersSubcontractors: 'Common:PermissionGroup:SuppliersProcurement:SuppliersSubcontractors',\n },\n ProjectsWork: {\n Root: 'Common:PermissionGroup:ProjectsWork',\n Projects: 'Common:PermissionGroup:ProjectsWork:Projects',\n Tasks: 'Common:PermissionGroup:ProjectsWork:Tasks',\n TimeTracking: 'Common:PermissionGroup:ProjectsWork:TimeTracking',\n },\n AssetsMaintenance: {\n Root: 'Common:PermissionGroup:AssetsMaintenance',\n Assets: 'Common:PermissionGroup:AssetsMaintenance:Assets',\n Maintenance: 'Common:PermissionGroup:AssetsMaintenance:Maintenance',\n },\n Collaboration: {\n Root: 'Common:PermissionGroup:Collaboration',\n Conversations: 'Common:PermissionGroup:Collaboration:Conversations',\n Scheduling: 'Common:PermissionGroup:Collaboration:Scheduling',\n Communications: 'Common:PermissionGroup:Collaboration:Communications',\n HelpDesk: 'Common:PermissionGroup:Collaboration:HelpDesk',\n },\n ContentDocuments: {\n Root: 'Common:PermissionGroup:ContentDocuments',\n Documents: 'Common:PermissionGroup:ContentDocuments:Documents',\n Content: 'Common:PermissionGroup:ContentDocuments:Content',\n FormTemplates: 'Common:PermissionGroup:ContentDocuments:FormTemplates',\n },\n InsightsReporting: {\n Root: 'Common:PermissionGroup:InsightsReporting',\n Reports: 'Common:PermissionGroup:InsightsReporting:Reports',\n ActivityInsight: 'Common:PermissionGroup:InsightsReporting:ActivityInsight',\n Data: 'Common:PermissionGroup:InsightsReporting:Data',\n },\n\n //#endregion\n\n //#region ---- Platform roots ----\n\n ApplicationsPlatform: {\n Root: 'Common:PermissionGroup:ApplicationsPlatform',\n Applications: 'Common:PermissionGroup:ApplicationsPlatform:Applications',\n TenancyShell: 'Common:PermissionGroup:ApplicationsPlatform:TenancyShell',\n Configuration: 'Common:PermissionGroup:ApplicationsPlatform:Configuration',\n DevTools: 'Common:PermissionGroup:ApplicationsPlatform:DevTools',\n },\n Administration: {\n Root: 'Common:PermissionGroup:Administration',\n SecurityAccess: 'Common:PermissionGroup:Administration:SecurityAccess',\n Settings: 'Common:PermissionGroup:Administration:Settings',\n Integrations: 'Common:PermissionGroup:Administration:Integrations',\n Workflow: 'Common:PermissionGroup:Administration:Workflow',\n Rules: 'Common:PermissionGroup:Administration:Rules',\n Ai: 'Common:PermissionGroup:Administration:Ai',\n Dashboards: 'Common:PermissionGroup:Administration:Dashboards',\n Jobs: 'Common:PermissionGroup:Administration:Jobs',\n Observability: 'Common:PermissionGroup:Administration:Observability',\n },\n\n //#endregion\n} as const;\n","//#region ----- Permission display keys -----\n\n/**\n * Maps conceptual permission keys (`Domain:Permission:Capability`) to the\n * shared `@common:{domain}.permissions.{capability}.(title|description)` i18n\n * keys used by client permission-definition providers.\n */\nexport function resolvePermissionI18nKeys(\n permissionKey: string,\n): { titleKey: string; descriptionKey: string } | null {\n const parts = permissionKey.split(':');\n if (parts.length < 3 || parts[1] !== 'Permission') {\n return null;\n }\n\n const domainKebab = pascalToKebab(parts[0] ?? '');\n const capabilityKebab = pascalToKebab(parts[parts.length - 1] ?? '');\n if (!domainKebab || !capabilityKebab) {\n return null;\n }\n\n const base = `@common:${domainKebab}.permissions.${capabilityKebab}`;\n return {\n titleKey: `${base}.title`,\n descriptionKey: `${base}.description`,\n };\n}\n\n/** Fallback label when no i18n key can be derived (last capability segment). */\nexport function humanizePermissionCapability(permissionKey: string): string {\n const capability = permissionKey.split(':').pop() ?? permissionKey;\n return capability\n .replace(/([a-z0-9])([A-Z])/g, '$1 $2')\n .replace(/([A-Z]+)([A-Z][a-z])/g, '$1 $2')\n .trim();\n}\n\n/**\n * Value for report/UI display columns: prefer the i18n title key (translated by\n * text widgets), otherwise a humanized capability label.\n */\nexport function resolvePermissionTitleDisplay(permissionKey: string): string {\n return resolvePermissionI18nKeys(permissionKey)?.titleKey ?? humanizePermissionCapability(permissionKey);\n}\n\nfunction pascalToKebab(value: string): string {\n return value\n .replace(/([a-z0-9])([A-Z])/g, '$1-$2')\n .replace(/([A-Z]+)([A-Z][a-z])/g, '$1-$2')\n .replace(/_/g, '-')\n .toLowerCase()\n .replace(/-+/g, '-')\n .replace(/^-|-$/g, '');\n}\n\n//#endregion\n","//#region ----- Types -----\n\n/**\n * Resolves which edition module name(s) a conceptual permission key belongs to.\n * Used to filter role grants / permission editor by application edition modules.\n */\nexport type AXPPermissionModulesResolver = (permissionKey: string) => readonly string[];\n\n//#endregion\n\n//#region ----- Domain → modules (Access / Setup = any-module) -----\n\n/**\n * Contributing Nx / edition module names per conceptual domain prefix.\n * Access and Setup keys use this full list (match if ANY module is enabled).\n */\nexport const AXPPermissionDomainModules = {\n Administration: [\n 'SecurityManagement',\n 'IntegrationManagement',\n 'WorkflowManagement',\n 'RuleEngineManagement',\n 'AiManagement',\n 'DashboardManagement',\n 'BackgroundJobManagement',\n 'SystemInsight',\n ],\n /**\n * Platform Console catalog modules for Access ANY-match.\n * SettingsManagement is intentionally omitted — product apps enable it for\n * MaintainTenantSettings without unlocking Applications & Platform Access.\n */\n ApplicationsPlatform: [\n 'ApplicationManagement',\n 'TenantManagement',\n 'PlatformManagement',\n 'AppBuilder',\n 'IdentifierManagement',\n 'LocaleManagement',\n 'PlatformDevTools',\n ],\n PeopleOrganization: [\n 'OrganizationManagement',\n 'HumanCapitalManagement',\n 'PersonCore',\n 'AttendanceManagement',\n 'LocationManagement',\n ],\n SafetyRisk: [\n 'WorkplaceSafetyManagement',\n 'RiskManagement',\n 'HealthCore',\n 'AssessmentManagement',\n ],\n ProjectsWork: ['ProjectManagement', 'TaskManagement', 'TimesheetManagement'],\n AssetsMaintenance: ['AssetManagement', 'MaintenanceManagement', 'MeasurementCore'],\n Collaboration: [\n 'Conversation',\n 'CalendarManagement',\n 'MeetingManagement',\n 'CommunicationManagement',\n 'BulletinManagement',\n 'ReservationManagement',\n 'HelpDesk',\n 'ContactCore',\n ],\n ContentDocuments: ['DocumentManagement', 'ContentManagement', 'FormTemplateManagement'],\n InsightsReporting: ['ReportManagement', 'DataManagement', 'ActivityInsight'],\n SalesCustomers: [\n 'CustomerManagement',\n 'ProductCatalog',\n 'OrderManagement',\n 'SubscriptionManagement',\n 'BusinessCore',\n ],\n Procurement: ['SupplierManagement', 'ProcurementManagement'],\n Learning: ['LearningManagement'],\n Finance: ['FinancialCore'],\n} as const;\n\n//#endregion\n\n//#region ----- Permission key → modules -----\n\n/**\n * Owner / contributing modules for each conceptual permission key.\n * - Access & Setup → all domain modules (any-module match)\n * - Unique Maintain/Manage/View/… → registering owner module only\n */\nexport const AXPPermissionKeyModules: Readonly<Record<string, readonly string[]>> = {\n // Administration\n 'Administration:Permission:Access': AXPPermissionDomainModules.Administration,\n 'Administration:Permission:MaintainUsersAndRoles': ['SecurityManagement'],\n 'Administration:Permission:ManageSessions': ['SecurityManagement'],\n 'Administration:Permission:MaintainPolicies': ['SecurityManagement'],\n 'Administration:Permission:ViewIntegrations': ['IntegrationManagement'],\n 'Administration:Permission:MaintainConnections': ['IntegrationManagement'],\n 'Administration:Permission:ManageIntegrationActions': ['IntegrationManagement'],\n 'Administration:Permission:MaintainWorkflows': ['WorkflowManagement'],\n 'Administration:Permission:ManageWorkflowActions': ['WorkflowManagement'],\n 'Administration:Permission:ViewRules': ['RuleEngineManagement'],\n 'Administration:Permission:MaintainRules': ['RuleEngineManagement'],\n 'Administration:Permission:ManageRuleActions': ['RuleEngineManagement'],\n 'Administration:Permission:MaintainAi': ['AiManagement'],\n 'Administration:Permission:UseAiAssist': ['AiManagement'],\n 'Administration:Permission:MaintainDashboards': ['DashboardManagement'],\n 'Administration:Permission:ViewJobs': ['BackgroundJobManagement'],\n 'Administration:Permission:ManageJobActions': ['BackgroundJobManagement'],\n 'Administration:Permission:ViewObservability': ['SystemInsight'],\n 'Administration:Permission:MaintainObservability': ['SystemInsight'],\n\n // Applications & Platform\n 'ApplicationsPlatform:Permission:Access': AXPPermissionDomainModules.ApplicationsPlatform,\n 'ApplicationsPlatform:Permission:MaintainApplications': ['ApplicationManagement'],\n 'ApplicationsPlatform:Permission:MaintainTenants': ['TenantManagement'],\n 'ApplicationsPlatform:Permission:MaintainPlatformShell': ['PlatformManagement'],\n 'ApplicationsPlatform:Permission:MaintainLandingPages': ['AppBuilder'],\n 'ApplicationsPlatform:Permission:MaintainIdentifiers': ['IdentifierManagement'],\n 'ApplicationsPlatform:Permission:MaintainTenantSettings': ['SettingsManagement'],\n /** Platform-wide settings — Platform Console only (not product-app SettingsManagement). */\n 'ApplicationsPlatform:Permission:MaintainPlatformSettings': ['PlatformManagement'],\n 'ApplicationsPlatform:Permission:MaintainLocales': ['LocaleManagement'],\n 'ApplicationsPlatform:Permission:UseDevTools': ['PlatformDevTools'],\n\n // People & Organization\n 'PeopleOrganization:Permission:Access': AXPPermissionDomainModules.PeopleOrganization,\n 'PeopleOrganization:Permission:Setup': AXPPermissionDomainModules.PeopleOrganization,\n 'PeopleOrganization:Permission:ViewOrganization': ['OrganizationManagement'],\n 'PeopleOrganization:Permission:MaintainOrganization': ['OrganizationManagement'],\n 'PeopleOrganization:Permission:MaintainTeams': ['OrganizationManagement'],\n 'PeopleOrganization:Permission:DesignJobs': ['OrganizationManagement'],\n 'PeopleOrganization:Permission:MaintainEmployees': ['HumanCapitalManagement'],\n 'PeopleOrganization:Permission:ManageEmployeeActions': ['HumanCapitalManagement'],\n 'PeopleOrganization:Permission:MaintainPersons': ['PersonCore'],\n 'PeopleOrganization:Permission:MaintainAttendance': ['AttendanceManagement'],\n 'PeopleOrganization:Permission:ManageAttendanceActions': ['AttendanceManagement'],\n\n // Safety & Risk\n 'SafetyRisk:Permission:Access': AXPPermissionDomainModules.SafetyRisk,\n 'SafetyRisk:Permission:Setup': AXPPermissionDomainModules.SafetyRisk,\n 'SafetyRisk:Permission:MaintainSafety': ['WorkplaceSafetyManagement'],\n 'SafetyRisk:Permission:MaintainRisk': ['RiskManagement'],\n 'SafetyRisk:Permission:MaintainHealth': ['HealthCore'],\n 'SafetyRisk:Permission:MaintainAssessments': ['AssessmentManagement'],\n\n // Projects & Work\n 'ProjectsWork:Permission:Access': AXPPermissionDomainModules.ProjectsWork,\n 'ProjectsWork:Permission:Setup': AXPPermissionDomainModules.ProjectsWork,\n 'ProjectsWork:Permission:MaintainProjects': ['ProjectManagement'],\n 'ProjectsWork:Permission:MaintainTasks': ['TaskManagement'],\n 'ProjectsWork:Permission:ViewAllTasks': ['TaskManagement'],\n 'ProjectsWork:Permission:MaintainTimesheets': ['TimesheetManagement'],\n 'ProjectsWork:Permission:ManageTimesheetActions': ['TimesheetManagement'],\n 'ProjectsWork:Permission:ViewTimesheetReports': ['TimesheetManagement'],\n\n // Assets & Maintenance\n 'AssetsMaintenance:Permission:Access': AXPPermissionDomainModules.AssetsMaintenance,\n 'AssetsMaintenance:Permission:Setup': AXPPermissionDomainModules.AssetsMaintenance,\n 'AssetsMaintenance:Permission:MaintainAssets': ['AssetManagement'],\n 'AssetsMaintenance:Permission:MaintainMaintenance': ['MaintenanceManagement'],\n\n // Collaboration\n 'Collaboration:Permission:Access': AXPPermissionDomainModules.Collaboration,\n 'Collaboration:Permission:Setup': AXPPermissionDomainModules.Collaboration,\n 'Collaboration:Permission:MaintainConversations': ['Conversation'],\n 'Collaboration:Permission:MaintainCalendars': ['CalendarManagement'],\n 'Collaboration:Permission:MaintainMeetings': ['MeetingManagement'],\n 'Collaboration:Permission:MaintainCommunications': ['CommunicationManagement'],\n 'Collaboration:Permission:ViewBulletins': ['BulletinManagement'],\n 'Collaboration:Permission:MaintainBulletins': ['BulletinManagement'],\n 'Collaboration:Permission:PublishBulletins': ['BulletinManagement'],\n 'Collaboration:Permission:ModerateBulletinDiscussions': ['BulletinManagement'],\n 'Collaboration:Permission:MaintainReservations': ['ReservationManagement'],\n 'Collaboration:Permission:MaintainHelpDesk': ['HelpDesk'],\n\n // Content & Documents\n 'ContentDocuments:Permission:Access': AXPPermissionDomainModules.ContentDocuments,\n 'ContentDocuments:Permission:Setup': AXPPermissionDomainModules.ContentDocuments,\n 'ContentDocuments:Permission:MaintainDocuments': ['DocumentManagement'],\n 'ContentDocuments:Permission:MaintainContent': ['ContentManagement'],\n 'ContentDocuments:Permission:MaintainFormTemplates': ['FormTemplateManagement'],\n\n // Insights & Reporting\n 'InsightsReporting:Permission:Access': AXPPermissionDomainModules.InsightsReporting,\n 'InsightsReporting:Permission:Setup': AXPPermissionDomainModules.InsightsReporting,\n 'InsightsReporting:Permission:MaintainReports': ['ReportManagement'],\n 'InsightsReporting:Permission:MaintainData': ['DataManagement'],\n 'InsightsReporting:Permission:ViewActivityInsight': ['ActivityInsight'],\n 'InsightsReporting:Permission:ManageActivityInsight': ['ActivityInsight'],\n\n // Sales & Customers / Commerce\n 'SalesCustomers:Permission:Access': AXPPermissionDomainModules.SalesCustomers,\n 'SalesCustomers:Permission:Setup': AXPPermissionDomainModules.SalesCustomers,\n 'SalesCustomers:Permission:MaintainCustomers': ['CustomerManagement'],\n 'SalesCustomers:Permission:MaintainSales': ['CustomerManagement'],\n 'SalesCustomers:Permission:MaintainProducts': ['ProductCatalog'],\n 'SalesCustomers:Permission:MaintainOrders': ['OrderManagement'],\n 'SalesCustomers:Permission:MaintainSubscriptions': ['SubscriptionManagement'],\n\n // Procurement\n 'Procurement:Permission:Access': AXPPermissionDomainModules.Procurement,\n 'Procurement:Permission:Setup': AXPPermissionDomainModules.Procurement,\n 'Procurement:Permission:MaintainSuppliers': ['SupplierManagement'],\n 'Procurement:Permission:MaintainProcurement': ['ProcurementManagement'],\n\n // Learning\n 'Learning:Permission:Access': AXPPermissionDomainModules.Learning,\n 'Learning:Permission:Setup': AXPPermissionDomainModules.Learning,\n 'Learning:Permission:MaintainLearning': ['LearningManagement'],\n\n // Finance\n 'Finance:Permission:Access': AXPPermissionDomainModules.Finance,\n 'Finance:Permission:Setup': AXPPermissionDomainModules.Finance,\n 'Finance:Permission:MaintainFinance': ['FinancialCore'],\n} as const;\n\n//#endregion\n\n//#region ----- Helpers -----\n\n/**\n * Returns edition module names for a permission key.\n * Unknown keys fall back to the legacy `{Prefix}:…` module-prefix convention.\n */\nexport function resolvePermissionModules(permissionKey: string): readonly string[] {\n const mapped = AXPPermissionKeyModules[permissionKey];\n if (mapped?.length) {\n return mapped;\n }\n\n // Dynamic keys (e.g. AiManagement assist helpers) or legacy Module:Permission:…\n const separatorIndex = permissionKey.indexOf(':');\n if (separatorIndex <= 0) {\n return [];\n }\n return [permissionKey.slice(0, separatorIndex)];\n}\n\n/**\n * True when the permission is available for the enabled edition modules (ANY match).\n */\nexport function isPermissionEnabledForModules(\n permissionKey: string,\n enabledModules: readonly string[],\n): boolean {\n if (!enabledModules.length) {\n return false;\n }\n const enabled = new Set(enabledModules);\n return resolvePermissionModules(permissionKey).some((moduleName) => enabled.has(moduleName));\n}\n\n//#endregion\n","export enum AXMLockSystemSettings {\n LockSystem = 'Common:Setting:LockSystem.Enabled',\n}\n\nexport enum AXMCommonSettings {\n QuickSearchEnabled = 'Common:Setting:Entity.QuickSearchEnabled',\n}\n","//#region ----- Version history platform settings -----\n\nexport enum AXPVersionHistorySettings {\n RetentionEnabled = 'Common:Setting:VersionHistory.Retention.Enabled',\n RetentionPeriodDays = 'Common:Setting:VersionHistory.Retention.PeriodDays',\n RetentionBatchSize = 'Common:Setting:VersionHistory.Retention.BatchSize',\n RetentionPurgeCron = 'Common:Setting:VersionHistory.Retention.PurgeCron',\n SkipEmptyPatches = 'Common:Setting:VersionHistory.SkipEmptyPatches',\n}\n\nexport const AXP_VERSION_HISTORY_SETTING_DEFAULTS = {\n [AXPVersionHistorySettings.RetentionEnabled]: true,\n [AXPVersionHistorySettings.RetentionPeriodDays]: 365,\n [AXPVersionHistorySettings.RetentionBatchSize]: 500,\n [AXPVersionHistorySettings.RetentionPurgeCron]: '0 3 * * *',\n [AXPVersionHistorySettings.SkipEmptyPatches]: true,\n} as const;\n\n//#endregion\n","const config = {\n i18n: 'common',\n module: 'Common',\n};\n\nexport const RootConfig = {\n config,\n module: {\n route: 'common',\n name: config.module,\n title: '@general:common.module.title',\n icon: 'fa-light fa-file-invoice',\n },\n entities: {\n recordLock: {\n name: 'RecordLock',\n title: 'Record Lock',\n titlePlural: 'Record Locks',\n icon: 'fa-light fa-lock',\n source: `${config.module}.RecordLock`,\n },\n versionStream: {\n name: 'VersionStream',\n title: 'Version Stream',\n titlePlural: 'Version Streams',\n icon: 'fa-light fa-code-branch',\n source: `${config.module}.VersionStream`,\n },\n versionEntry: {\n name: 'VersionEntry',\n title: 'Version Entry',\n titlePlural: 'Version Entries',\n icon: 'fa-light fa-clock-rotate-left',\n source: `${config.module}.VersionEntry`,\n },\n },\n} as const;\n","//#region ---- Contracts barrel ----\n\nexport * from './catalog-scope.keys';\nexport * from './commands.keys';\nexport * from './features.keys';\nexport * from './menu.keys';\nexport * from './permission-group.keys';\nexport * from './permission-display.util';\nexport * from './permission-module.map';\nexport * from './settings.keys';\nexport * from './version-history.settings.keys';\n\nexport * from './root-config';\n\n//#endregion\n\n// Entity layout factories live in server; keep barrel as empty module for compatibility.\nexport {};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-module-common-client-disable-entity.command-Bc1uH38V.mjs","sources":["../../../../libs/modules/common/client/src/lib/features/disable-plugin/commands/disable-entity.command.ts"],"sourcesContent":["import { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPRuntimeCommandResult, type AXPContextData } from '@acorex-platform/framework-shared/core';\nimport { inject, Injectable } from '@angular/core';\n\nimport { AXPDisableEntityCommandHelper } from './disable-entity.command.helper';\nimport { buildDisablePatch, buildDisableRefreshMeta, normalizeDisableSingleInput } from './disable-entity.command.util';\n\n@Injectable({ providedIn: 'root' })\nexport class AXPDisableEntityCommand implements AXPCommand<AXPContextData, void> {\n private readonly helper = inject(AXPDisableEntityCommandHelper);\n private readonly translationService = inject(AXTranslationService);\n\n async execute(input: AXPContextData): AXPCommandExecuteResultPromise<void> {\n const context = normalizeDisableSingleInput(input);\n if (!context) {\n return {\n success: false,\n message: {\n text: await this.translationService.translateAsync('@general:messages.entity.invalid-data'),\n },\n };\n }\n\n const confirmed = await this.helper.confirm(\n '@general:actions.disable.confirm.title',\n '@general:actions.disable.confirm.message',\n );\n if (!confirmed) {\n return { success: false };\n }\n\n const loadingDialog = this.helper.showLoading(\n await this.translationService.translateAsync('@general:actions.disable.confirm.processing'),\n 'Disabling...',\n );\n\n try {\n const entityDefinition = await this.helper.resolveEntity(context.refType);\n const patch = buildDisablePatch(true);\n await this.helper.applyPatch(context.refType, context.refId, patch);\n\n const meta = buildDisableRefreshMeta(entityDefinition, context.rowData);\n this.helper.dispatchDisabled(context.refType, context.refId, meta);\n await this.helper.showSuccessToast(\n '@general:workflow.entity-disabled',\n '@general:workflow.entity-disabled-body',\n );\n\n return { success: true, kind: 'object', data: undefined };\n } catch (error) {\n await this.helper.showErrorToastFor(error, '@general:messages.generic.error.description');\n return { success: false };\n } finally {\n loadingDialog.close();\n }\n }\n}\n"],"names":[],"mappings":";;;;;MASa,uBAAuB,CAAA;AADpC,IAAA,WAAA,GAAA;AAEmB,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,6BAA6B,CAAC;AAC9C,QAAA,IAAA,CAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC;AA8CnE,IAAA;IA5CC,MAAM,OAAO,CAAC,KAAqB,EAAA;AACjC,QAAA,MAAM,OAAO,GAAG,2BAA2B,CAAC,KAAK,CAAC;QAClD,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE;oBACP,IAAI,EAAE,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,uCAAuC,CAAC;AAC5F,iBAAA;aACF;QACH;AAEA,QAAA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CACzC,wCAAwC,EACxC,0CAA0C,CAC3C;QACD,IAAI,CAAC,SAAS,EAAE;AACd,YAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;QAC3B;QAEA,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAC3C,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,6CAA6C,CAAC,EAC3F,cAAc,CACf;AAED,QAAA,IAAI;AACF,YAAA,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC;AACzE,YAAA,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC;AACrC,YAAA,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;YAEnE,MAAM,IAAI,GAAG,uBAAuB,CAAC,gBAAgB,EAAE,OAAO,CAAC,OAAO,CAAC;AACvE,YAAA,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC;YAClE,MAAM,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAChC,mCAAmC,EACnC,wCAAwC,CACzC;AAED,YAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;QAC3D;QAAE,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,KAAK,EAAE,6CAA6C,CAAC;AACzF,YAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;QAC3B;gBAAU;YACR,aAAa,CAAC,KAAK,EAAE;QACvB;IACF;8GA/CW,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAvB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,uBAAuB,cADV,MAAM,EAAA,CAAA,CAAA;;2FACnB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBADnC,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;;;"}
1
+ {"version":3,"file":"acorex-platform-module-common-client-disable-entity.command-Bc1uH38V.mjs","sources":["../../../../libs/modules/common/client/src/lib/features/disable-plugin/commands/disable-entity.command.ts"],"sourcesContent":["import { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPRuntimeCommandResult, type AXPContextData } from '@acorex-platform/framework-shared/core';\nimport { inject, Injectable } from '@angular/core';\n\nimport { AXPDisableEntityCommandHelper } from './disable-entity.command.helper';\nimport { buildDisablePatch, buildDisableRefreshMeta, normalizeDisableSingleInput } from './disable-entity.command.util';\n\n@Injectable({ providedIn: 'root' })\nexport class AXPDisableEntityCommand implements AXPCommand<AXPContextData, void> {\n private readonly helper = inject(AXPDisableEntityCommandHelper);\n private readonly translationService = inject(AXTranslationService);\n\n async execute(input: AXPContextData): AXPCommandExecuteResultPromise<void> {\n const context = normalizeDisableSingleInput(input);\n if (!context) {\n return {\n success: false,\n message: {\n text: await this.translationService.translateAsync('@general:messages.entity.invalid-data'),\n },\n };\n }\n\n const confirmed = await this.helper.confirm(\n '@general:actions.disable.confirm.title',\n '@general:actions.disable.confirm.message',\n );\n if (!confirmed) {\n return { success: false };\n }\n\n const loadingDialog = this.helper.showLoading(\n await this.translationService.translateAsync('@general:actions.disable.confirm.processing'),\n 'Disabling...',\n );\n\n try {\n const entityDefinition = await this.helper.resolveEntity(context.refType);\n const patch = buildDisablePatch(true);\n await this.helper.applyPatch(context.refType, context.refId, patch);\n\n const meta = buildDisableRefreshMeta(entityDefinition, context.rowData);\n this.helper.dispatchDisabled(context.refType, context.refId, meta);\n await this.helper.showSuccessToast(\n '@general:workflow.entity-disabled',\n '@general:workflow.entity-disabled-body',\n );\n\n return { success: true, kind: 'object', data: undefined };\n } catch (error) {\n await this.helper.showErrorToastFor(error, '@general:messages.generic.error.description');\n return { success: false };\n } finally {\n loadingDialog.close();\n }\n }\n}\n"],"names":[],"mappings":";;;;;MASa,uBAAuB,CAAA;AADpC,IAAA,WAAA,GAAA;AAEmB,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,6BAA6B,CAAC;AAC9C,QAAA,IAAA,CAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC;AA8CnE,IAAA;IA5CC,MAAM,OAAO,CAAC,KAAqB,EAAA;AACjC,QAAA,MAAM,OAAO,GAAG,2BAA2B,CAAC,KAAK,CAAC;QAClD,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE;oBACP,IAAI,EAAE,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,uCAAuC,CAAC;AAC5F,iBAAA;aACF;QACH;AAEA,QAAA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CACzC,wCAAwC,EACxC,0CAA0C,CAC3C;QACD,IAAI,CAAC,SAAS,EAAE;AACd,YAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;QAC3B;QAEA,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAC3C,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,6CAA6C,CAAC,EAC3F,cAAc,CACf;AAED,QAAA,IAAI;AACF,YAAA,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC;AACzE,YAAA,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC;AACrC,YAAA,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;YAEnE,MAAM,IAAI,GAAG,uBAAuB,CAAC,gBAAgB,EAAE,OAAO,CAAC,OAAO,CAAC;AACvE,YAAA,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC;YAClE,MAAM,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAChC,mCAAmC,EACnC,wCAAwC,CACzC;AAED,YAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;QAC3D;QAAE,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,KAAK,EAAE,6CAA6C,CAAC;AACzF,YAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;QAC3B;gBAAU;YACR,aAAa,CAAC,KAAK,EAAE;QACvB;IACF;8GA/CW,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAvB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,uBAAuB,cADV,MAAM,EAAA,CAAA,CAAA;;2FACnB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBADnC,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-module-common-client-disable-entity.command.util-DQl6u2nj.mjs","sources":["../../../../libs/modules/common/client/src/lib/features/disable-plugin/commands/disable-entity.command.helper.ts","../../../../libs/modules/common/client/src/lib/features/disable-plugin/commands/disable-entity.command.util.ts"],"sourcesContent":["import { AXDialogService } from '@acorex/components/dialog';\nimport { AXLoadingDialogService } from '@acorex/components/loading-dialog';\nimport { AXToastService } from '@acorex/components/toast';\nimport { AXStyleColorType } from '@acorex/cdk/common';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport type { AXPContextData } from '@acorex-platform/framework-shared/core';\nimport {\n AXPCommonSettings,\n AXPSettingsService,\n extractRequestErrorInfo,\n platformErrorI18nKey,\n throwIfCommandFailed,\n} from '@acorex-platform/framework-client/common';\nimport { AXPEntityBroadcastService } from '@acorex-platform/framework-client/core';\nimport { AXPEntityDefinitionRegistryService } from '@acorex-platform/framework-client/layout/entity';\nimport type { AXPEntity } from '@acorex-platform/framework-shared/entity';\nimport { inject, Injectable } from '@angular/core';\n\n@Injectable({ providedIn: 'root' })\nexport class AXPDisableEntityCommandHelper {\n private readonly entityRegistry = inject(AXPEntityDefinitionRegistryService);\n private readonly dialogService = inject(AXDialogService);\n private readonly loadingDialog = inject(AXLoadingDialogService);\n private readonly translationService = inject(AXTranslationService);\n private readonly toastService = inject(AXToastService);\n private readonly settingsService = inject(AXPSettingsService);\n private readonly entityEvents = inject(AXPEntityBroadcastService);\n\n async resolveEntity(refType: string): Promise<AXPEntity> {\n const [moduleName, entityName] = refType.split('.');\n return this.entityRegistry.resolve(moduleName, entityName);\n }\n\n async applyPatch(refType: string, refId: string, patch: AXPContextData): Promise<void> {\n const entityDefinition = await this.resolveEntity(refType);\n const updateExec = entityDefinition.commands?.update?.execute as\n | ((payload: AXPContextData) => Promise<unknown>)\n | undefined;\n\n if (!updateExec) {\n throw new Error('Entity does not support update operation');\n }\n\n const result = await updateExec({ id: refId, ...patch });\n throwIfCommandFailed(result);\n }\n\n async confirm(\n titleKey: string,\n messageKey: string,\n messageParams?: AXPContextData,\n color: AXStyleColorType = 'warning',\n ): Promise<boolean> {\n const dialogResult = await this.dialogService.confirm(\n await this.translationService.translateAsync(titleKey),\n await this.translationService.translateAsync(messageKey, { params: messageParams }),\n color,\n 'horizontal',\n false,\n 'cancel',\n );\n return dialogResult.result === true;\n }\n\n showLoading(title: string, status: string) {\n return this.loadingDialog.show({\n title,\n mode: 'indeterminate',\n status,\n });\n }\n\n async showSuccessToast(titleKey: string, contentKey?: string): Promise<void> {\n const enabled = await this.settingsService.get<boolean>(AXPCommonSettings.EnableOperationToasts);\n if (!enabled) {\n return;\n }\n\n this.toastService.show({\n color: 'success',\n title: await this.translationService.translateAsync(titleKey),\n content: contentKey ? await this.translationService.translateAsync(contentKey) : undefined,\n });\n }\n\n async showErrorToast(message: string): Promise<void> {\n const enabled = await this.settingsService.get<boolean>(AXPCommonSettings.EnableOperationToasts);\n if (!enabled || !message.trim()) {\n return;\n }\n\n this.toastService.show({\n color: 'danger',\n title: await this.translationService.translateAsync('@general:messages.generic.error.title'),\n content: message,\n closeButton: true,\n timeOut: 6000,\n timeOutProgress: true,\n });\n }\n\n async showErrorToastFor(error: unknown, fallbackKey: string): Promise<void> {\n const enabled = await this.settingsService.get<boolean>(AXPCommonSettings.EnableOperationToasts);\n if (!enabled) {\n return;\n }\n\n const info = extractRequestErrorInfo(error);\n const contentKey =\n platformErrorI18nKey(info?.code) ??\n (typeof info?.message === 'string' && info.message.startsWith('@')\n ? info.message\n : null) ??\n fallbackKey;\n const content = contentKey.startsWith('@')\n ? await this.translationService.translateAsync(contentKey)\n : contentKey;\n\n await this.showErrorToast(content);\n }\n\n dispatchDisabled(refType: string, _id: string, meta?: AXPContextData): void {\n this.entityEvents.publishLayoutRefresh(refType, meta as Record<string, unknown> | undefined);\n }\n\n dispatchEnabled(refType: string, _id: string, meta?: AXPContextData): void {\n this.entityEvents.publishLayoutRefresh(refType, meta as Record<string, unknown> | undefined);\n }\n\n dispatchBulkDisabled(refType: string, _ids: string[], meta?: AXPContextData): void {\n this.entityEvents.publishLayoutRefresh(refType, { refreshType: 'bulk-disable', ...(meta ?? {}) });\n }\n\n dispatchBulkEnabled(refType: string, _ids: string[], meta?: AXPContextData): void {\n this.entityEvents.publishLayoutRefresh(refType, { refreshType: 'bulk-enable', ...(meta ?? {}) });\n }\n}\n","import type { AXPContextData } from '@acorex-platform/framework-shared/core';\nimport type { AXPEntity } from '@acorex-platform/framework-shared/entity';\nimport { resolveEntityActionBulkRef, resolveEntityActionRef } from '@acorex-platform/framework-shared/runtime';\n\nexport const DEFAULT_DISABLE_FIELD = 'isDisabled';\nexport const DISABLE_TIMESTAMP_FIELD = 'disabledAt';\nexport const ENABLE_TIMESTAMP_FIELD = 'enabledAt';\n\nexport interface AXPDisableCommandContext {\n refId: string;\n refType: string;\n rowData?: AXPContextData;\n}\n\nexport interface AXPBulkDisableCommandContext {\n refType: string;\n ids: string[];\n rows: AXPContextData[];\n}\n\nexport function normalizeDisableSingleInput(input: AXPContextData): AXPDisableCommandContext | null {\n const resolved = resolveEntityActionRef(input);\n if (!resolved) {\n return null;\n }\n\n return {\n refId: resolved.refId,\n refType: resolved.refType,\n rowData: resolved.rowData as AXPContextData | undefined,\n };\n}\n\nexport function normalizeDisableBulkInput(input: AXPContextData): AXPBulkDisableCommandContext | null {\n const resolved = resolveEntityActionBulkRef(input);\n if (!resolved) {\n return null;\n }\n\n return {\n refType: resolved.refType,\n ids: resolved.ids,\n rows: resolved.rows as AXPContextData[],\n };\n}\n\nexport function buildDisablePatch(disabled: boolean): AXPContextData {\n if (disabled) {\n return { [DEFAULT_DISABLE_FIELD]: true, [DISABLE_TIMESTAMP_FIELD]: new Date() };\n }\n return {\n [DEFAULT_DISABLE_FIELD]: false,\n [DISABLE_TIMESTAMP_FIELD]: null,\n [ENABLE_TIMESTAMP_FIELD]: new Date(),\n };\n}\n\nexport function buildDisableRefreshMeta(\n entityDefinition: AXPEntity,\n rowData?: AXPContextData,\n): AXPContextData {\n const meta: AXPContextData = {};\n if (entityDefinition.parentKey && rowData?.[entityDefinition.parentKey] != null) {\n meta['refreshTargetId'] = rowData[entityDefinition.parentKey];\n }\n return meta;\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-platform-module-common-client-disable-entity.command.util-DQl6u2nj.mjs","sources":["../../../../libs/modules/common/client/src/lib/features/disable-plugin/commands/disable-entity.command.helper.ts","../../../../libs/modules/common/client/src/lib/features/disable-plugin/commands/disable-entity.command.util.ts"],"sourcesContent":["import { AXDialogService } from '@acorex/components/dialog';\nimport { AXLoadingDialogService } from '@acorex/components/loading-dialog';\nimport { AXToastService } from '@acorex/components/toast';\nimport { AXStyleColorType } from '@acorex/cdk/common';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport type { AXPContextData } from '@acorex-platform/framework-shared/core';\nimport {\n AXPCommonSettings,\n AXPSettingsService,\n extractRequestErrorInfo,\n platformErrorI18nKey,\n throwIfCommandFailed,\n} from '@acorex-platform/framework-client/common';\nimport { AXPEntityBroadcastService } from '@acorex-platform/framework-client/core';\nimport { AXPEntityDefinitionRegistryService } from '@acorex-platform/framework-client/layout/entity';\nimport type { AXPEntity } from '@acorex-platform/framework-shared/entity';\nimport { inject, Injectable } from '@angular/core';\n\n@Injectable({ providedIn: 'root' })\nexport class AXPDisableEntityCommandHelper {\n private readonly entityRegistry = inject(AXPEntityDefinitionRegistryService);\n private readonly dialogService = inject(AXDialogService);\n private readonly loadingDialog = inject(AXLoadingDialogService);\n private readonly translationService = inject(AXTranslationService);\n private readonly toastService = inject(AXToastService);\n private readonly settingsService = inject(AXPSettingsService);\n private readonly entityEvents = inject(AXPEntityBroadcastService);\n\n async resolveEntity(refType: string): Promise<AXPEntity> {\n const [moduleName, entityName] = refType.split('.');\n return this.entityRegistry.resolve(moduleName, entityName);\n }\n\n async applyPatch(refType: string, refId: string, patch: AXPContextData): Promise<void> {\n const entityDefinition = await this.resolveEntity(refType);\n const updateExec = entityDefinition.commands?.update?.execute as\n | ((payload: AXPContextData) => Promise<unknown>)\n | undefined;\n\n if (!updateExec) {\n throw new Error('Entity does not support update operation');\n }\n\n const result = await updateExec({ id: refId, ...patch });\n throwIfCommandFailed(result);\n }\n\n async confirm(\n titleKey: string,\n messageKey: string,\n messageParams?: AXPContextData,\n color: AXStyleColorType = 'warning',\n ): Promise<boolean> {\n const dialogResult = await this.dialogService.confirm(\n await this.translationService.translateAsync(titleKey),\n await this.translationService.translateAsync(messageKey, { params: messageParams }),\n color,\n 'horizontal',\n false,\n 'cancel',\n );\n return dialogResult.result === true;\n }\n\n showLoading(title: string, status: string) {\n return this.loadingDialog.show({\n title,\n mode: 'indeterminate',\n status,\n });\n }\n\n async showSuccessToast(titleKey: string, contentKey?: string): Promise<void> {\n const enabled = await this.settingsService.get<boolean>(AXPCommonSettings.EnableOperationToasts);\n if (!enabled) {\n return;\n }\n\n this.toastService.show({\n color: 'success',\n title: await this.translationService.translateAsync(titleKey),\n content: contentKey ? await this.translationService.translateAsync(contentKey) : undefined,\n });\n }\n\n async showErrorToast(message: string): Promise<void> {\n const enabled = await this.settingsService.get<boolean>(AXPCommonSettings.EnableOperationToasts);\n if (!enabled || !message.trim()) {\n return;\n }\n\n this.toastService.show({\n color: 'danger',\n title: await this.translationService.translateAsync('@general:messages.generic.error.title'),\n content: message,\n closeButton: true,\n timeOut: 6000,\n timeOutProgress: true,\n });\n }\n\n async showErrorToastFor(error: unknown, fallbackKey: string): Promise<void> {\n const enabled = await this.settingsService.get<boolean>(AXPCommonSettings.EnableOperationToasts);\n if (!enabled) {\n return;\n }\n\n const info = extractRequestErrorInfo(error);\n const contentKey =\n platformErrorI18nKey(info?.code) ??\n (typeof info?.message === 'string' && info.message.startsWith('@')\n ? info.message\n : null) ??\n fallbackKey;\n const content = contentKey.startsWith('@')\n ? await this.translationService.translateAsync(contentKey)\n : contentKey;\n\n await this.showErrorToast(content);\n }\n\n dispatchDisabled(refType: string, _id: string, meta?: AXPContextData): void {\n this.entityEvents.publishLayoutRefresh(refType, meta as Record<string, unknown> | undefined);\n }\n\n dispatchEnabled(refType: string, _id: string, meta?: AXPContextData): void {\n this.entityEvents.publishLayoutRefresh(refType, meta as Record<string, unknown> | undefined);\n }\n\n dispatchBulkDisabled(refType: string, _ids: string[], meta?: AXPContextData): void {\n this.entityEvents.publishLayoutRefresh(refType, { refreshType: 'bulk-disable', ...(meta ?? {}) });\n }\n\n dispatchBulkEnabled(refType: string, _ids: string[], meta?: AXPContextData): void {\n this.entityEvents.publishLayoutRefresh(refType, { refreshType: 'bulk-enable', ...(meta ?? {}) });\n }\n}\n","import type { AXPContextData } from '@acorex-platform/framework-shared/core';\nimport type { AXPEntity } from '@acorex-platform/framework-shared/entity';\nimport { resolveEntityActionBulkRef, resolveEntityActionRef } from '@acorex-platform/framework-shared/runtime';\n\nexport const DEFAULT_DISABLE_FIELD = 'isDisabled';\nexport const DISABLE_TIMESTAMP_FIELD = 'disabledAt';\nexport const ENABLE_TIMESTAMP_FIELD = 'enabledAt';\n\nexport interface AXPDisableCommandContext {\n refId: string;\n refType: string;\n rowData?: AXPContextData;\n}\n\nexport interface AXPBulkDisableCommandContext {\n refType: string;\n ids: string[];\n rows: AXPContextData[];\n}\n\nexport function normalizeDisableSingleInput(input: AXPContextData): AXPDisableCommandContext | null {\n const resolved = resolveEntityActionRef(input);\n if (!resolved) {\n return null;\n }\n\n return {\n refId: resolved.refId,\n refType: resolved.refType,\n rowData: resolved.rowData as AXPContextData | undefined,\n };\n}\n\nexport function normalizeDisableBulkInput(input: AXPContextData): AXPBulkDisableCommandContext | null {\n const resolved = resolveEntityActionBulkRef(input);\n if (!resolved) {\n return null;\n }\n\n return {\n refType: resolved.refType,\n ids: resolved.ids,\n rows: resolved.rows as AXPContextData[],\n };\n}\n\nexport function buildDisablePatch(disabled: boolean): AXPContextData {\n if (disabled) {\n return { [DEFAULT_DISABLE_FIELD]: true, [DISABLE_TIMESTAMP_FIELD]: new Date() };\n }\n return {\n [DEFAULT_DISABLE_FIELD]: false,\n [DISABLE_TIMESTAMP_FIELD]: null,\n [ENABLE_TIMESTAMP_FIELD]: new Date(),\n };\n}\n\nexport function buildDisableRefreshMeta(\n entityDefinition: AXPEntity,\n rowData?: AXPContextData,\n): AXPContextData {\n const meta: AXPContextData = {};\n if (entityDefinition.parentKey && rowData?.[entityDefinition.parentKey] != null) {\n meta['refreshTargetId'] = rowData[entityDefinition.parentKey];\n }\n return meta;\n}\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-module-common-client-enable-entity.command-DeTumWIj.mjs","sources":["../../../../libs/modules/common/client/src/lib/features/disable-plugin/commands/enable-entity.command.ts"],"sourcesContent":["import { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPRuntimeCommandResult, type AXPContextData } from '@acorex-platform/framework-shared/core';\nimport { inject, Injectable } from '@angular/core';\n\nimport { AXPDisableEntityCommandHelper } from './disable-entity.command.helper';\nimport { buildDisablePatch, buildDisableRefreshMeta, normalizeDisableSingleInput } from './disable-entity.command.util';\n\n@Injectable({ providedIn: 'root' })\nexport class AXPEnableEntityCommand implements AXPCommand<AXPContextData, void> {\n private readonly helper = inject(AXPDisableEntityCommandHelper);\n private readonly translationService = inject(AXTranslationService);\n\n async execute(input: AXPContextData): AXPCommandExecuteResultPromise<void> {\n const context = normalizeDisableSingleInput(input);\n if (!context) {\n return {\n success: false,\n message: {\n text: await this.translationService.translateAsync('@general:messages.entity.invalid-data'),\n },\n };\n }\n\n const confirmed = await this.helper.confirm(\n '@general:actions.enable.confirm.title',\n '@general:actions.enable.confirm.message',\n undefined,\n 'success',\n );\n if (!confirmed) {\n return { success: false };\n }\n\n const loadingDialog = this.helper.showLoading(\n await this.translationService.translateAsync('@general:actions.enable.confirm.processing'),\n 'Enabling...',\n );\n\n try {\n const entityDefinition = await this.helper.resolveEntity(context.refType);\n const patch = buildDisablePatch(false);\n await this.helper.applyPatch(context.refType, context.refId, patch);\n\n const meta = buildDisableRefreshMeta(entityDefinition, context.rowData);\n this.helper.dispatchEnabled(context.refType, context.refId, meta);\n await this.helper.showSuccessToast(\n '@general:workflow.entity-enabled',\n '@general:workflow.entity-enabled-body',\n );\n\n return { success: true, kind: 'object', data: undefined };\n } catch (error) {\n await this.helper.showErrorToastFor(error, '@general:messages.generic.error.description');\n return { success: false };\n } finally {\n loadingDialog.close();\n }\n }\n}\n"],"names":[],"mappings":";;;;;MASa,sBAAsB,CAAA;AADnC,IAAA,WAAA,GAAA;AAEmB,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,6BAA6B,CAAC;AAC9C,QAAA,IAAA,CAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC;AAgDnE,IAAA;IA9CC,MAAM,OAAO,CAAC,KAAqB,EAAA;AACjC,QAAA,MAAM,OAAO,GAAG,2BAA2B,CAAC,KAAK,CAAC;QAClD,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE;oBACP,IAAI,EAAE,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,uCAAuC,CAAC;AAC5F,iBAAA;aACF;QACH;AAEA,QAAA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CACzC,uCAAuC,EACvC,yCAAyC,EACzC,SAAS,EACT,SAAS,CACV;QACD,IAAI,CAAC,SAAS,EAAE;AACd,YAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;QAC3B;QAEA,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAC3C,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,4CAA4C,CAAC,EAC1F,aAAa,CACd;AAED,QAAA,IAAI;AACF,YAAA,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC;AACzE,YAAA,MAAM,KAAK,GAAG,iBAAiB,CAAC,KAAK,CAAC;AACtC,YAAA,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;YAEnE,MAAM,IAAI,GAAG,uBAAuB,CAAC,gBAAgB,EAAE,OAAO,CAAC,OAAO,CAAC;AACvE,YAAA,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC;YACjE,MAAM,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAChC,kCAAkC,EAClC,uCAAuC,CACxC;AAED,YAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;QAC3D;QAAE,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,KAAK,EAAE,6CAA6C,CAAC;AACzF,YAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;QAC3B;gBAAU;YACR,aAAa,CAAC,KAAK,EAAE;QACvB;IACF;8GAjDW,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,cADT,MAAM,EAAA,CAAA,CAAA;;2FACnB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBADlC,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;;;"}
1
+ {"version":3,"file":"acorex-platform-module-common-client-enable-entity.command-DeTumWIj.mjs","sources":["../../../../libs/modules/common/client/src/lib/features/disable-plugin/commands/enable-entity.command.ts"],"sourcesContent":["import { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { AXPRuntimeCommandResult, type AXPContextData } from '@acorex-platform/framework-shared/core';\nimport { inject, Injectable } from '@angular/core';\n\nimport { AXPDisableEntityCommandHelper } from './disable-entity.command.helper';\nimport { buildDisablePatch, buildDisableRefreshMeta, normalizeDisableSingleInput } from './disable-entity.command.util';\n\n@Injectable({ providedIn: 'root' })\nexport class AXPEnableEntityCommand implements AXPCommand<AXPContextData, void> {\n private readonly helper = inject(AXPDisableEntityCommandHelper);\n private readonly translationService = inject(AXTranslationService);\n\n async execute(input: AXPContextData): AXPCommandExecuteResultPromise<void> {\n const context = normalizeDisableSingleInput(input);\n if (!context) {\n return {\n success: false,\n message: {\n text: await this.translationService.translateAsync('@general:messages.entity.invalid-data'),\n },\n };\n }\n\n const confirmed = await this.helper.confirm(\n '@general:actions.enable.confirm.title',\n '@general:actions.enable.confirm.message',\n undefined,\n 'success',\n );\n if (!confirmed) {\n return { success: false };\n }\n\n const loadingDialog = this.helper.showLoading(\n await this.translationService.translateAsync('@general:actions.enable.confirm.processing'),\n 'Enabling...',\n );\n\n try {\n const entityDefinition = await this.helper.resolveEntity(context.refType);\n const patch = buildDisablePatch(false);\n await this.helper.applyPatch(context.refType, context.refId, patch);\n\n const meta = buildDisableRefreshMeta(entityDefinition, context.rowData);\n this.helper.dispatchEnabled(context.refType, context.refId, meta);\n await this.helper.showSuccessToast(\n '@general:workflow.entity-enabled',\n '@general:workflow.entity-enabled-body',\n );\n\n return { success: true, kind: 'object', data: undefined };\n } catch (error) {\n await this.helper.showErrorToastFor(error, '@general:messages.generic.error.description');\n return { success: false };\n } finally {\n loadingDialog.close();\n }\n }\n}\n"],"names":[],"mappings":";;;;;MASa,sBAAsB,CAAA;AADnC,IAAA,WAAA,GAAA;AAEmB,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,6BAA6B,CAAC;AAC9C,QAAA,IAAA,CAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC;AAgDnE,IAAA;IA9CC,MAAM,OAAO,CAAC,KAAqB,EAAA;AACjC,QAAA,MAAM,OAAO,GAAG,2BAA2B,CAAC,KAAK,CAAC;QAClD,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE;oBACP,IAAI,EAAE,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,uCAAuC,CAAC;AAC5F,iBAAA;aACF;QACH;AAEA,QAAA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CACzC,uCAAuC,EACvC,yCAAyC,EACzC,SAAS,EACT,SAAS,CACV;QACD,IAAI,CAAC,SAAS,EAAE;AACd,YAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;QAC3B;QAEA,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAC3C,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,4CAA4C,CAAC,EAC1F,aAAa,CACd;AAED,QAAA,IAAI;AACF,YAAA,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC;AACzE,YAAA,MAAM,KAAK,GAAG,iBAAiB,CAAC,KAAK,CAAC;AACtC,YAAA,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;YAEnE,MAAM,IAAI,GAAG,uBAAuB,CAAC,gBAAgB,EAAE,OAAO,CAAC,OAAO,CAAC;AACvE,YAAA,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC;YACjE,MAAM,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAChC,kCAAkC,EAClC,uCAAuC,CACxC;AAED,YAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;QAC3D;QAAE,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,KAAK,EAAE,6CAA6C,CAAC;AACzF,YAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;QAC3B;gBAAU;YACR,aAAa,CAAC,KAAK,EAAE;QACvB;IACF;8GAjDW,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,cADT,MAAM,EAAA,CAAA,CAAA;;2FACnB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBADlC,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-module-common-client-get-current-time.command-Ck_SC5Bu.mjs","sources":["../../../../libs/modules/common/client/src/lib/tools/get-current-time.command.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport { AXPRuntimeCommandResult } from '@acorex-platform/framework-shared/core';\n\nimport { Injectable } from '@angular/core';\n\n//#endregion\n\n//#region ---- Types ----\n\nexport interface CommonGetCurrentTimeInput {\n timezone?: string;\n}\n\n//#endregion\n\n//#region ---- Timezone helpers ----\n\n/**\n * Non-standard or deprecated labels models sometimes pass; map to a canonical IANA id accepted by `Intl`.\n */\nconst COMMON_TIMEZONE_ALIASES: Readonly<Record<string, string>> = {\n 'Asia/Ankara': 'Europe/Istanbul',\n};\n\nfunction buildTimezoneCandidates(raw: string): string[] {\n const trimmed = raw.trim();\n if (!trimmed) {\n return [];\n }\n const alias = COMMON_TIMEZONE_ALIASES[trimmed];\n const set = new Set<string>([trimmed]);\n if (alias) {\n set.add(alias);\n }\n return [...set];\n}\n\nfunction formatWithTimeZone(now: Date, timeZone: string): string {\n return now.toLocaleString('sv-SE', { timeZone });\n}\n\n//#endregion\n\n//#region ---- Command ----\n\n/**\n * Returns the current time as ISO string, or sv-SE locale string when {@link CommonGetCurrentTimeInput.timezone} is set.\n * Catalog key: `common.get_current_time`.\n */\n@Injectable({ providedIn: 'root' })\nexport class CommonGetCurrentTimeCommand implements AXPCommand<CommonGetCurrentTimeInput, string> {\n async execute(input: CommonGetCurrentTimeInput): AXPCommandExecuteResultPromise<string> {\n const now = new Date();\n const rawTz = input.timezone?.trim() ?? '';\n\n if (!rawTz) {\n return { success: true, kind: 'object',\n data: now.toISOString(),\n };\n }\n\n const candidates = buildTimezoneCandidates(rawTz);\n let lastMessage = '';\n\n for (const tz of candidates) {\n try {\n return { success: true, kind: 'object',\n data: formatWithTimeZone(now, tz),\n };\n } catch (e) {\n lastMessage = e instanceof Error ? e.message : String(e);\n }\n }\n\n return {\n success: false,\n message: {\n text: `Invalid or unsupported IANA time zone: \"${rawTz}\". ${lastMessage ? `${lastMessage} ` : ''}Use a valid IANA name (e.g. Europe/Istanbul for Turkey).`,\n },\n };\n }\n}\n\n//#endregion\n"],"names":[],"mappings":";;;AAeA;AAEA;AAEA;;AAEG;AACH,MAAM,uBAAuB,GAAqC;AAChE,IAAA,aAAa,EAAE,iBAAiB;CACjC;AAED,SAAS,uBAAuB,CAAC,GAAW,EAAA;AAC1C,IAAA,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE;IAC1B,IAAI,CAAC,OAAO,EAAE;AACZ,QAAA,OAAO,EAAE;IACX;AACA,IAAA,MAAM,KAAK,GAAG,uBAAuB,CAAC,OAAO,CAAC;IAC9C,MAAM,GAAG,GAAG,IAAI,GAAG,CAAS,CAAC,OAAO,CAAC,CAAC;IACtC,IAAI,KAAK,EAAE;AACT,QAAA,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC;IAChB;AACA,IAAA,OAAO,CAAC,GAAG,GAAG,CAAC;AACjB;AAEA,SAAS,kBAAkB,CAAC,GAAS,EAAE,QAAgB,EAAA;IACrD,OAAO,GAAG,CAAC,cAAc,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,CAAC;AAClD;AAEA;AAEA;AAEA;;;AAGG;MAEU,2BAA2B,CAAA;IACtC,MAAM,OAAO,CAAC,KAAgC,EAAA;AAC5C,QAAA,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE;QACtB,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE;QAE1C,IAAI,CAAC,KAAK,EAAE;AACV,YAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ;AACpC,gBAAA,IAAI,EAAE,GAAG,CAAC,WAAW,EAAE;aACxB;QACH;AAEA,QAAA,MAAM,UAAU,GAAG,uBAAuB,CAAC,KAAK,CAAC;QACjD,IAAI,WAAW,GAAG,EAAE;AAEpB,QAAA,KAAK,MAAM,EAAE,IAAI,UAAU,EAAE;AAC3B,YAAA,IAAI;AACF,gBAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ;AACpC,oBAAA,IAAI,EAAE,kBAAkB,CAAC,GAAG,EAAE,EAAE,CAAC;iBAClC;YACH;YAAE,OAAO,CAAC,EAAE;AACV,gBAAA,WAAW,GAAG,CAAC,YAAY,KAAK,GAAG,CAAC,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC;YAC1D;QACF;QAEA,OAAO;AACL,YAAA,OAAO,EAAE,KAAK;AACd,YAAA,OAAO,EAAE;AACP,gBAAA,IAAI,EAAE,CAAA,wCAAA,EAA2C,KAAK,CAAA,GAAA,EAAM,WAAW,GAAG,CAAA,EAAG,WAAW,CAAA,CAAA,CAAG,GAAG,EAAE,CAAA,wDAAA,CAA0D;AAC3J,aAAA;SACF;IACH;8GA9BW,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAA3B,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,2BAA2B,cADd,MAAM,EAAA,CAAA,CAAA;;2FACnB,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBADvC,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;;;"}
1
+ {"version":3,"file":"acorex-platform-module-common-client-get-current-time.command-Ck_SC5Bu.mjs","sources":["../../../../libs/modules/common/client/src/lib/tools/get-current-time.command.ts"],"sourcesContent":["//#region ---- Imports ----\n\nimport { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport { AXPRuntimeCommandResult } from '@acorex-platform/framework-shared/core';\n\nimport { Injectable } from '@angular/core';\n\n//#endregion\n\n//#region ---- Types ----\n\nexport interface CommonGetCurrentTimeInput {\n timezone?: string;\n}\n\n//#endregion\n\n//#region ---- Timezone helpers ----\n\n/**\n * Non-standard or deprecated labels models sometimes pass; map to a canonical IANA id accepted by `Intl`.\n */\nconst COMMON_TIMEZONE_ALIASES: Readonly<Record<string, string>> = {\n 'Asia/Ankara': 'Europe/Istanbul',\n};\n\nfunction buildTimezoneCandidates(raw: string): string[] {\n const trimmed = raw.trim();\n if (!trimmed) {\n return [];\n }\n const alias = COMMON_TIMEZONE_ALIASES[trimmed];\n const set = new Set<string>([trimmed]);\n if (alias) {\n set.add(alias);\n }\n return [...set];\n}\n\nfunction formatWithTimeZone(now: Date, timeZone: string): string {\n return now.toLocaleString('sv-SE', { timeZone });\n}\n\n//#endregion\n\n//#region ---- Command ----\n\n/**\n * Returns the current time as ISO string, or sv-SE locale string when {@link CommonGetCurrentTimeInput.timezone} is set.\n * Catalog key: `common.get_current_time`.\n */\n@Injectable({ providedIn: 'root' })\nexport class CommonGetCurrentTimeCommand implements AXPCommand<CommonGetCurrentTimeInput, string> {\n async execute(input: CommonGetCurrentTimeInput): AXPCommandExecuteResultPromise<string> {\n const now = new Date();\n const rawTz = input.timezone?.trim() ?? '';\n\n if (!rawTz) {\n return { success: true, kind: 'object',\n data: now.toISOString(),\n };\n }\n\n const candidates = buildTimezoneCandidates(rawTz);\n let lastMessage = '';\n\n for (const tz of candidates) {\n try {\n return { success: true, kind: 'object',\n data: formatWithTimeZone(now, tz),\n };\n } catch (e) {\n lastMessage = e instanceof Error ? e.message : String(e);\n }\n }\n\n return {\n success: false,\n message: {\n text: `Invalid or unsupported IANA time zone: \"${rawTz}\". ${lastMessage ? `${lastMessage} ` : ''}Use a valid IANA name (e.g. Europe/Istanbul for Turkey).`,\n },\n };\n }\n}\n\n//#endregion\n"],"names":[],"mappings":";;;AAeA;AAEA;AAEA;;AAEG;AACH,MAAM,uBAAuB,GAAqC;AAChE,IAAA,aAAa,EAAE,iBAAiB;CACjC;AAED,SAAS,uBAAuB,CAAC,GAAW,EAAA;AAC1C,IAAA,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE;IAC1B,IAAI,CAAC,OAAO,EAAE;AACZ,QAAA,OAAO,EAAE;IACX;AACA,IAAA,MAAM,KAAK,GAAG,uBAAuB,CAAC,OAAO,CAAC;IAC9C,MAAM,GAAG,GAAG,IAAI,GAAG,CAAS,CAAC,OAAO,CAAC,CAAC;IACtC,IAAI,KAAK,EAAE;AACT,QAAA,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC;IAChB;AACA,IAAA,OAAO,CAAC,GAAG,GAAG,CAAC;AACjB;AAEA,SAAS,kBAAkB,CAAC,GAAS,EAAE,QAAgB,EAAA;IACrD,OAAO,GAAG,CAAC,cAAc,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,CAAC;AAClD;AAEA;AAEA;AAEA;;;AAGG;MAEU,2BAA2B,CAAA;IACtC,MAAM,OAAO,CAAC,KAAgC,EAAA;AAC5C,QAAA,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE;QACtB,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE;QAE1C,IAAI,CAAC,KAAK,EAAE;AACV,YAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ;AACpC,gBAAA,IAAI,EAAE,GAAG,CAAC,WAAW,EAAE;aACxB;QACH;AAEA,QAAA,MAAM,UAAU,GAAG,uBAAuB,CAAC,KAAK,CAAC;QACjD,IAAI,WAAW,GAAG,EAAE;AAEpB,QAAA,KAAK,MAAM,EAAE,IAAI,UAAU,EAAE;AAC3B,YAAA,IAAI;AACF,gBAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ;AACpC,oBAAA,IAAI,EAAE,kBAAkB,CAAC,GAAG,EAAE,EAAE,CAAC;iBAClC;YACH;YAAE,OAAO,CAAC,EAAE;AACV,gBAAA,WAAW,GAAG,CAAC,YAAY,KAAK,GAAG,CAAC,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC;YAC1D;QACF;QAEA,OAAO;AACL,YAAA,OAAO,EAAE,KAAK;AACd,YAAA,OAAO,EAAE;AACP,gBAAA,IAAI,EAAE,CAAA,wCAAA,EAA2C,KAAK,CAAA,GAAA,EAAM,WAAW,GAAG,CAAA,EAAG,WAAW,CAAA,CAAA,CAAG,GAAG,EAAE,CAAA,wDAAA,CAA0D;AAC3J,aAAA;SACF;IACH;8GA9BW,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAA3B,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,2BAA2B,cADd,MAAM,EAAA,CAAA,CAAA;;2FACnB,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBADvC,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;"}
@@ -0,0 +1,31 @@
1
+ import { provideLocalEntityCatalog } from '@acorex-platform/framework-client/layout/entity';
2
+ import { RootConfig } from '@acorex-platform/module-common-client/contracts';
3
+ export { commonLocalEntityCatalog } from '@acorex-platform/module-common-client/contracts/entity-catalog';
4
+
5
+ //#region ----- Imports -----
6
+ //#endregion
7
+ //#region ----- Provide local entities -----
8
+ /**
9
+ * Registers common layouts on the client from packaged factories.
10
+ * Each `import()` targets a secondary entry so unused entities stay out of the
11
+ * bundle. Do not add this to the demo app; demo continues to load layouts via
12
+ * `Domain:GetEntityLayout`.
13
+ */
14
+ function provideCommonLocalEntities() {
15
+ return provideLocalEntityCatalog({
16
+ moduleName: RootConfig.module.name,
17
+ loaders: {
18
+ [RootConfig.entities.recordLock.name]: () => import('@acorex-platform/module-common-client/contracts/entities/record-lock').then((m) => m.factoryRecordLock()),
19
+ [RootConfig.entities.versionEntry.name]: () => import('@acorex-platform/module-common-client/contracts/entities/version-entry').then((m) => m.factoryVersionEntry()),
20
+ [RootConfig.entities.versionStream.name]: () => import('@acorex-platform/module-common-client/contracts/entities/version-stream').then((m) => m.factoryVersionStream()),
21
+ },
22
+ });
23
+ }
24
+ //#endregion
25
+
26
+ /**
27
+ * Generated bundle index. Do not edit.
28
+ */
29
+
30
+ export { provideCommonLocalEntities };
31
+ //# sourceMappingURL=acorex-platform-module-common-client-local-entities.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-platform-module-common-client-local-entities.mjs","sources":["../../../../libs/modules/common/client/src/lib/provide-local-entities.ts","../../../../libs/modules/common/client/src/lib/acorex-platform-module-common-client-local-entities.ts"],"sourcesContent":["//#region ----- Imports -----\n\nimport { provideLocalEntityCatalog } from '@acorex-platform/framework-client/layout/entity';\nimport { RootConfig } from '@acorex-platform/module-common-client/contracts';\n\n//#endregion\n\n//#region ----- Provide local entities -----\n\n/**\n * Registers common layouts on the client from packaged factories.\n * Each `import()` targets a secondary entry so unused entities stay out of the\n * bundle. Do not add this to the demo app; demo continues to load layouts via\n * `Domain:GetEntityLayout`.\n */\nexport function provideCommonLocalEntities() {\n return provideLocalEntityCatalog({\n moduleName: RootConfig.module.name,\n loaders: {\n [RootConfig.entities.recordLock.name]: () =>\n import('@acorex-platform/module-common-client/contracts/entities/record-lock').then((m) => m.factoryRecordLock()),\n [RootConfig.entities.versionEntry.name]: () =>\n import('@acorex-platform/module-common-client/contracts/entities/version-entry').then((m) => m.factoryVersionEntry()),\n [RootConfig.entities.versionStream.name]: () =>\n import('@acorex-platform/module-common-client/contracts/entities/version-stream').then((m) => m.factoryVersionStream()),\n },\n });\n}\n\nexport { commonLocalEntityCatalog } from '@acorex-platform/module-common-client/contracts/entity-catalog';\n\n//#endregion\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './provide-local-entities';\n"],"names":[],"mappings":";;;;AAAA;AAKA;AAEA;AAEA;;;;;AAKG;SACa,0BAA0B,GAAA;AACxC,IAAA,OAAO,yBAAyB,CAAC;AAC/B,QAAA,UAAU,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI;AAClC,QAAA,OAAO,EAAE;AACP,YAAA,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,GAAG,MACrC,OAAO,sEAAsE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,iBAAiB,EAAE,CAAC;AACnH,YAAA,CAAC,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,GAAG,MACvC,OAAO,wEAAwE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,mBAAmB,EAAE,CAAC;AACvH,YAAA,CAAC,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,GAAG,MACxC,OAAO,yEAAyE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,oBAAoB,EAAE,CAAC;AAC1H,SAAA;AACF,KAAA,CAAC;AACJ;AAIA;;AC/BA;;AAEG;;"}
@@ -1,7 +1,7 @@
1
1
  import { AXTranslationService } from '@acorex/core/translation';
2
2
  import * as i0 from '@angular/core';
3
3
  import { inject, Injectable } from '@angular/core';
4
- import { A as AXPArchiveEntityCommandHelper, n as normalizeArchiveSingleInput, b as buildArchivePatch, a as buildArchiveRefreshMeta } from './acorex-platform-module-common-client-archive-entity.command.util-fd533YPY.mjs';
4
+ import { A as AXPArchiveEntityCommandHelper, n as normalizeArchiveSingleInput, b as buildArchivePatch, a as buildArchiveRefreshMeta } from './acorex-platform-module-common-client-archive-entity.command.util-DrW2EjNj.mjs';
5
5
 
6
6
  class AXPRestoreArchiveEntityCommand {
7
7
  constructor() {
@@ -48,4 +48,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
48
48
  }] });
49
49
 
50
50
  export { AXPRestoreArchiveEntityCommand };
51
- //# sourceMappingURL=acorex-platform-module-common-client-restore-archive-entity.command-Dx8CIcWc.mjs.map
51
+ //# sourceMappingURL=acorex-platform-module-common-client-restore-archive-entity.command-CWJPmL4o.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-module-common-client-restore-archive-entity.command-Dx8CIcWc.mjs","sources":["../../../../libs/modules/common/client/src/lib/features/archive-plugin/commands/restore-archive-entity.command.ts"],"sourcesContent":["import { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport type { AXPContextData } from '@acorex-platform/framework-shared/core';\nimport { inject, Injectable } from '@angular/core';\n\nimport { AXPArchiveEntityCommandHelper } from './archive-entity.command.helper';\nimport { buildArchivePatch, buildArchiveRefreshMeta, normalizeArchiveSingleInput } from './archive-entity.command.util';\n\n@Injectable({ providedIn: 'root' })\nexport class AXPRestoreArchiveEntityCommand implements AXPCommand<AXPContextData, void> {\n private readonly helper = inject(AXPArchiveEntityCommandHelper);\n private readonly translationService = inject(AXTranslationService);\n\n async execute(input: AXPContextData): AXPCommandExecuteResultPromise<void> {\n const context = normalizeArchiveSingleInput(input);\n if (!context) {\n return {\n success: false,\n message: {\n text: await this.translationService.translateAsync('@general:messages.entity.invalid-data'),\n },\n };\n }\n\n const confirmed = await this.helper.confirm(\n '@general:actions.restore-archive.confirm.title',\n '@general:actions.restore-archive.confirm.message',\n );\n if (!confirmed) {\n return { success: false };\n }\n\n const loadingDialog = this.helper.showLoading(\n await this.translationService.translateAsync('@general:actions.restore-archive.confirm.processing'),\n 'Unarchiving...',\n );\n\n try {\n const entityDefinition = await this.helper.resolveEntity(context.refType);\n const patch = buildArchivePatch(false);\n await this.helper.applyPatch(context.refType, context.refId, patch);\n\n const meta = buildArchiveRefreshMeta(entityDefinition, context.rowData);\n this.helper.dispatchUnarchived(context.refType, context.refId, meta);\n loadingDialog.close();\n await this.helper.showSuccessToast(\n '@general:workflow.entity-unarchived',\n '@general:workflow.entity-unarchived-body',\n );\n\n return { success: true, kind: 'object', data: undefined, metadata: { refresh: false } };\n } catch (error) {\n loadingDialog.close();\n await this.helper.showErrorToastFor(error, '@general:messages.generic.error.description');\n return { success: false };\n }\n }\n}\n"],"names":[],"mappings":";;;;;MASa,8BAA8B,CAAA;AAD3C,IAAA,WAAA,GAAA;AAEmB,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,6BAA6B,CAAC;AAC9C,QAAA,IAAA,CAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC;AA8CnE,IAAA;IA5CC,MAAM,OAAO,CAAC,KAAqB,EAAA;AACjC,QAAA,MAAM,OAAO,GAAG,2BAA2B,CAAC,KAAK,CAAC;QAClD,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE;oBACP,IAAI,EAAE,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,uCAAuC,CAAC;AAC5F,iBAAA;aACF;QACH;AAEA,QAAA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CACzC,gDAAgD,EAChD,kDAAkD,CACnD;QACD,IAAI,CAAC,SAAS,EAAE;AACd,YAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;QAC3B;QAEA,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAC3C,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,qDAAqD,CAAC,EACnG,gBAAgB,CACjB;AAED,QAAA,IAAI;AACF,YAAA,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC;AACzE,YAAA,MAAM,KAAK,GAAG,iBAAiB,CAAC,KAAK,CAAC;AACtC,YAAA,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;YAEnE,MAAM,IAAI,GAAG,uBAAuB,CAAC,gBAAgB,EAAE,OAAO,CAAC,OAAO,CAAC;AACvE,YAAA,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC;YACpE,aAAa,CAAC,KAAK,EAAE;YACrB,MAAM,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAChC,qCAAqC,EACrC,0CAA0C,CAC3C;YAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;QACzF;QAAE,OAAO,KAAK,EAAE;YACd,aAAa,CAAC,KAAK,EAAE;YACrB,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,KAAK,EAAE,6CAA6C,CAAC;AACzF,YAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;QAC3B;IACF;8GA/CW,8BAA8B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAA9B,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,8BAA8B,cADjB,MAAM,EAAA,CAAA,CAAA;;2FACnB,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAD1C,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;;;"}
1
+ {"version":3,"file":"acorex-platform-module-common-client-restore-archive-entity.command-CWJPmL4o.mjs","sources":["../../../../libs/modules/common/client/src/lib/features/archive-plugin/commands/restore-archive-entity.command.ts"],"sourcesContent":["import { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport type { AXPContextData } from '@acorex-platform/framework-shared/core';\nimport { inject, Injectable } from '@angular/core';\n\nimport { AXPArchiveEntityCommandHelper } from './archive-entity.command.helper';\nimport { buildArchivePatch, buildArchiveRefreshMeta, normalizeArchiveSingleInput } from './archive-entity.command.util';\n\n@Injectable({ providedIn: 'root' })\nexport class AXPRestoreArchiveEntityCommand implements AXPCommand<AXPContextData, void> {\n private readonly helper = inject(AXPArchiveEntityCommandHelper);\n private readonly translationService = inject(AXTranslationService);\n\n async execute(input: AXPContextData): AXPCommandExecuteResultPromise<void> {\n const context = normalizeArchiveSingleInput(input);\n if (!context) {\n return {\n success: false,\n message: {\n text: await this.translationService.translateAsync('@general:messages.entity.invalid-data'),\n },\n };\n }\n\n const confirmed = await this.helper.confirm(\n '@general:actions.restore-archive.confirm.title',\n '@general:actions.restore-archive.confirm.message',\n );\n if (!confirmed) {\n return { success: false };\n }\n\n const loadingDialog = this.helper.showLoading(\n await this.translationService.translateAsync('@general:actions.restore-archive.confirm.processing'),\n 'Unarchiving...',\n );\n\n try {\n const entityDefinition = await this.helper.resolveEntity(context.refType);\n const patch = buildArchivePatch(false);\n await this.helper.applyPatch(context.refType, context.refId, patch);\n\n const meta = buildArchiveRefreshMeta(entityDefinition, context.rowData);\n this.helper.dispatchUnarchived(context.refType, context.refId, meta);\n loadingDialog.close();\n await this.helper.showSuccessToast(\n '@general:workflow.entity-unarchived',\n '@general:workflow.entity-unarchived-body',\n );\n\n return { success: true, kind: 'object', data: undefined, metadata: { refresh: false } };\n } catch (error) {\n loadingDialog.close();\n await this.helper.showErrorToastFor(error, '@general:messages.generic.error.description');\n return { success: false };\n }\n }\n}\n"],"names":[],"mappings":";;;;;MASa,8BAA8B,CAAA;AAD3C,IAAA,WAAA,GAAA;AAEmB,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,6BAA6B,CAAC;AAC9C,QAAA,IAAA,CAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC;AA8CnE,IAAA;IA5CC,MAAM,OAAO,CAAC,KAAqB,EAAA;AACjC,QAAA,MAAM,OAAO,GAAG,2BAA2B,CAAC,KAAK,CAAC;QAClD,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE;oBACP,IAAI,EAAE,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,uCAAuC,CAAC;AAC5F,iBAAA;aACF;QACH;AAEA,QAAA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CACzC,gDAAgD,EAChD,kDAAkD,CACnD;QACD,IAAI,CAAC,SAAS,EAAE;AACd,YAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;QAC3B;QAEA,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAC3C,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,qDAAqD,CAAC,EACnG,gBAAgB,CACjB;AAED,QAAA,IAAI;AACF,YAAA,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC;AACzE,YAAA,MAAM,KAAK,GAAG,iBAAiB,CAAC,KAAK,CAAC;AACtC,YAAA,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;YAEnE,MAAM,IAAI,GAAG,uBAAuB,CAAC,gBAAgB,EAAE,OAAO,CAAC,OAAO,CAAC;AACvE,YAAA,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC;YACpE,aAAa,CAAC,KAAK,EAAE;YACrB,MAAM,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAChC,qCAAqC,EACrC,0CAA0C,CAC3C;YAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;QACzF;QAAE,OAAO,KAAK,EAAE;YACd,aAAa,CAAC,KAAK,EAAE;YACrB,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,KAAK,EAAE,6CAA6C,CAAC;AACzF,YAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;QAC3B;IACF;8GA/CW,8BAA8B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAA9B,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,8BAA8B,cADjB,MAAM,EAAA,CAAA,CAAA;;2FACnB,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAD1C,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;"}
@@ -22,7 +22,7 @@ import { inject, viewChild, viewChildren, ChangeDetectionStrategy, Component } f
22
22
  import * as i2 from '@angular/forms';
23
23
  import { FormsModule } from '@angular/forms';
24
24
  import { first } from 'rxjs';
25
- import { a as AXPGlobalSearchViewModel } from './acorex-platform-module-common-client-acorex-platform-module-common-client-DsCvUxSh.mjs';
25
+ import { a as AXPGlobalSearchViewModel } from './acorex-platform-module-common-client-acorex-platform-module-common-client-BmGXSWg4.mjs';
26
26
 
27
27
  class AXPGlobalSearchPopupComponent extends AXBasePageComponent {
28
28
  constructor() {
@@ -107,7 +107,7 @@ class AXPGlobalSearchPopupComponent extends AXBasePageComponent {
107
107
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXPGlobalSearchPopupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
108
108
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: AXPGlobalSearchPopupComponent, isStandalone: true, selector: "ng-component", providers: [AXPGlobalSearchViewModel], viewQueries: [{ propertyName: "list", first: true, predicate: AXListNavigationDirective, descendants: true, isSignal: true }, { propertyName: "searchBox", first: true, predicate: AXSearchBoxComponent, descendants: true, isSignal: true }, { propertyName: "items", predicate: AXListNavigationItemDirective, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<axp-layout-content>\n <axp-layout-header class=\"ax-lg\">\n <axp-layout-prefix class=\"min-w-0 flex-1\">\n <ax-search-box\n class=\"__search-box w-full\"\n [axAutoFocus]\n [axAutoFocusTime]=\"500\"\n [look]=\"'none'\"\n [ngModel]=\"vm.text()\"\n (onValueChanged)=\"handleTextChanged($event)\"\n [placeholder]=\"'@global-search:terms.search-anything' | translate | async\"\n (onKeyDown)=\"handleSearchKeyDown($event)\"\n >\n <ax-clear-button class=\"__clear-button\"></ax-clear-button>\n </ax-search-box>\n </axp-layout-prefix>\n <axp-layout-suffix class=\"__close-button\">\n <ax-button [look]=\"'solid'\" class=\"ax-sm\" (onClick)=\"close()\">\n <ax-icon icon=\"fa-light fa-xmark leading-[0]!\"></ax-icon>\n </ax-button>\n </axp-layout-suffix>\n </axp-layout-header>\n\n <!-- Results Area -->\n <axp-layout-body>\n @if (vm.isBusy()) {\n <ng-container *ngTemplateOutlet=\"skeleton\"></ng-container>\n } @else if (vm.isEmpty()) {\n <ng-container *ngTemplateOutlet=\"empty\"></ng-container>\n } @else if (vm.isWelcome()) {\n <ng-container *ngTemplateOutlet=\"welcome\"></ng-container>\n } @else if (vm.isStart()) {\n <ng-container *ngTemplateOutlet=\"start\"></ng-container>\n } @else {\n <ng-container *ngTemplateOutlet=\"result\"></ng-container>\n }\n </axp-layout-body>\n\n <!-- Skeleton Template -->\n <ng-template #skeleton>\n <div class=\"flex flex-col gap-10 p-8\">\n @for (item of [1, 2, 3, 4, 5]; track $index) {\n <div class=\"flex items-center gap-4\">\n <ax-skeleton [animated]=\"true\" class=\"w-4 h-4 rounded-full\"></ax-skeleton>\n <div class=\"flex flex-col gap-2 flex-1\">\n <ax-skeleton [animated]=\"true\" class=\"w-1/4 h-2 rounded\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"w-1/2 h-2 rounded\"></ax-skeleton>\n </div>\n </div>\n }\n </div>\n </ng-template>\n\n <!-- Empty Template -->\n <ng-template #empty>\n <axp-state-message icon=\"fa-light fa-search\" [title]=\"'@global-search:components.search-box.empty-states.no-result.title'\" [description]=\"'@global-search:components.search-box.empty-states.no-result.description'\"></axp-state-message>\n </ng-template>\n\n <!-- Welcome Template -->\n <ng-template #welcome>\n <axp-state-message icon=\"fa-light fa-search\" [title]=\"'@global-search:components.search-box.empty-states.start.title'\" [description]=\"'@global-search:components.search-box.empty-states.start.description'\"></axp-state-message>\n </ng-template>\n\n <!-- Start Template -->\n <ng-template #start>\n <!-- Pinned Items -->\n <axp-layout-list class=\"p-4 divide-none\" (keydown)=\"handleListKeyDown($event)\" axListNavigation #list=\"axListNavigation\">\n @if (vm.pinnedItems().length > 0) {\n <axp-layout-list-group>\n <axp-layout-title>{{ '@global-search:terms.pinned' | translate | async }}</axp-layout-title>\n @for (item of vm.pinnedItems(); track $index) {\n <axp-layout-list-item (click)=\"vm.execute(item)\" (keydown)=\"handleItemKeyDown($event, item)\" class=\"group\" axListNavigationItem #i=\"axListNavigationItem\" [class.axp-state-focused]=\"i.isActive()\">\n <ng-container [ngTemplateOutlet]=\"listItem\" [ngTemplateOutletContext]=\"{ item }\"></ng-container>\n </axp-layout-list-item>\n }\n </axp-layout-list-group>\n }\n <!-- Recent Items -->\n @if (vm.recentItems().length > 0) {\n <axp-layout-list-group>\n <axp-layout-header>\n <axp-layout-prefix>\n <axp-layout-title>{{ '@global-search:terms.recent' | translate | async }}</axp-layout-title>\n </axp-layout-prefix>\n <axp-layout-prefix class=\"ax-sm\">\n <ax-button [text]=\"'@global-search:terms.clear' | translate | async\" look=\"blank\" [color]=\"'default'\" (onClick)=\"handleClearClick($event)\"></ax-button>\n </axp-layout-prefix>\n </axp-layout-header>\n @for (item of vm.recentItems(); track $index) {\n <axp-layout-list-item (click)=\"vm.execute(item)\" (keydown)=\"handleItemKeyDown($event, item)\" class=\"group\" axListNavigationItem #i=\"axListNavigationItem\" [class.axp-state-focused]=\"i.isActive()\">\n <ng-container [ngTemplateOutlet]=\"listItem\" [ngTemplateOutletContext]=\"{ item }\"></ng-container>\n </axp-layout-list-item>\n }\n </axp-layout-list-group>\n }\n </axp-layout-list>\n </ng-template>\n\n <!-- Result Template -->\n <ng-template #result>\n <axp-layout-list class=\"p-4 divide-none\" (keydown)=\"handleListKeyDown($event)\" axListNavigation #list=\"axListNavigation\">\n @for (group of vm.results(); track $index) {\n <axp-layout-list-group>\n <axp-layout-title>{{ group.title | translate | async }}</axp-layout-title>\n @for (item of group.children; track $index) {\n <axp-layout-list-item (click)=\"vm.execute(item)\" (keydown)=\"handleItemKeyDown($event, item)\" class=\"group\" axListNavigationItem #i=\"axListNavigationItem\" [class.axp-state-focused]=\"i.isActive()\">\n <ng-container [ngTemplateOutlet]=\"listItem\" [ngTemplateOutletContext]=\"{ item }\"></ng-container>\n </axp-layout-list-item>\n }\n </axp-layout-list-group>\n }\n </axp-layout-list>\n </ng-template>\n\n <ng-template #listItem let-item=\"item\">\n <axp-layout-prefix>\n <ax-icon [icon]=\"searchListItemIcon(item)\"></ax-icon>\n </axp-layout-prefix>\n <axp-layout-content>\n <axp-layout-title class=\"group\">\n <span>{{ item.title | translate | async }}</span>\n <span class=\"ms-3\" (click)=\"handlePinClick($event, item)\">\n <i [class.invisible]=\"!vm.isPinned(item)\" class=\"fa-light fa-thumbtack rotate-45 group-hover:!visible\" [class.fa-solid]=\"vm.isPinned(item)\"></i>\n </span>\n </axp-layout-title>\n @if (item.parent) {\n <axp-layout-description>\n {{ item.parent.title | translate | async }}\n </axp-layout-description>\n } @else if (item.description) {\n <axp-layout-description>\n {{ item.description | translate | async }}\n </axp-layout-description>\n }\n </axp-layout-content>\n <axp-layout-suffix>\n <i class=\"far fa-chevron-right rtl:rotate-180\"></i>\n </axp-layout-suffix>\n </ng-template>\n</axp-layout-content>\n", styles: ["@layer properties;:host .editor-container:focus-within{outline-style:none}:host>axp-layout-content{display:flex;width:90vw;max-width:var(--container-xl, 36rem);flex-direction:column;background-color:var(--color-lightest);color:var(--color-on-lightest);border-color:var(--color-border-lightest)}@media(width>=40rem){:host>axp-layout-content{width:80vw}}@media(width>=48rem){:host>axp-layout-content{width:60vw}}@media(width>=64rem){:host>axp-layout-content{width:40vw}}@media(width>=80rem){:host>axp-layout-content{width:30vw}}:host>axp-layout-content>axp-layout-header{flex-wrap:nowrap;align-items:center;gap:calc(var(--spacing, .25rem) * 2);border-bottom-style:var(--tw-border-style);border-bottom-width:1px;background-color:var(--color-lighter);color:var(--color-on-lighter);border-color:var(--color-border-lighter)}:host>axp-layout-content>axp-layout-header>axp-layout-prefix{display:flex;min-width:0px;flex:1;align-items:center}:host>axp-layout-content>axp-layout-header>.__close-button{margin-inline-end:calc(var(--spacing, .25rem) * 4);flex-shrink:0}:host>axp-layout-content>axp-layout-header .__search-box{width:100%;align-items:center;padding-inline-end:0!important}:host>axp-layout-content>axp-layout-header .__search-box .__clear-button{color:var(--color-neutral-400, oklch(70.8% 0 none))}:host>axp-layout-content>axp-layout-body{display:flex;max-height:50vh;min-height:30vh;flex-direction:column;overflow-y:auto;border-radius:var(--radius-md, .375rem)}:where(:host>axp-layout-content axp-layout-body>:not(:last-child)){--tw-divide-y-reverse: 0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}@media(width>=40rem){:host>axp-layout-content>axp-layout-body{max-height:60vh}}@media(width>=40rem){:host>axp-layout-content>axp-layout-body{min-height:40vh}}@media(width>=48rem){:host>axp-layout-content>axp-layout-body{max-height:70vh}}@media(width>=48rem){:host>axp-layout-content>axp-layout-body{min-height:50vh}}@media(width>=64rem){:host>axp-layout-content>axp-layout-body{max-height:80vh}}@media(width>=64rem){:host>axp-layout-content>axp-layout-body{min-height:40vh}}:host>axp-layout-content>axp-layout-body .axp-search-recent{display:flex;flex-direction:column;padding:calc(var(--spacing, .25rem) * 4)}:host>axp-layout-content>axp-layout-body .axp-search-recent>axp-layout-header{margin-bottom:calc(var(--spacing, .25rem) * 2);display:flex;flex-direction:row;align-items:center;justify-content:space-between;font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));--tw-font-weight: var(--font-weight-semibold, 600);font-weight:var(--font-weight-semibold, 600)}:host>axp-layout-content>axp-layout-body .axp-search-recent>axp-layout-body{display:flex;flex-direction:row;flex-wrap:wrap;gap:calc(var(--spacing, .25rem) * 2);border-radius:var(--radius-md, .375rem)}:host>axp-layout-content axp-layout-list-item axp-layout-prefix ax-icon{display:flex;height:calc(var(--spacing, .25rem) * 9);width:calc(var(--spacing, .25rem) * 9);align-items:center;justify-content:center;border-radius:var(--radius-md, .375rem);background-color:var(--color-dark);color:var(--color-on-dark);border-color:var(--color-border-dark);font-size:1rem}:host>axp-layout-content axp-layout-list-item axp-layout-prefix ax-icon:where(.ax-dark,.ax-dark *):not(:where(.ax-light,.ax-light *)){background-color:var(--color-darker);color:var(--color-on-darker);border-color:var(--color-border-darker)}@property --tw-border-style{syntax: \"*\"; inherits: false; initial-value: solid;}@property --tw-divide-y-reverse{syntax: \"*\"; inherits: false; initial-value: 0;}@property --tw-font-weight{syntax: \"*\"; inherits: false;}@layer properties{@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style: solid;--tw-divide-y-reverse: 0;--tw-font-weight: initial}}}\n/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type:
109
109
  //
110
- AXSearchBoxModule }, { kind: "component", type: i3.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type", "autoSearch"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXCommonModule }, { kind: "directive", type: i4.AXAutoFocusDirective, selector: "[axAutoFocus]", inputs: ["axAutoFocus", "axAutoFocusTime"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i1$1.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i1$1.AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "ngmodule", type: AXListNavigationModule }, { kind: "directive", type: i6.AXListNavigationDirective, selector: "[axListNavigation]", inputs: ["orientation"], outputs: ["onNavigationChanged", "onKeypress"], exportAs: ["axListNavigation"] }, { kind: "directive", type: i6.AXListNavigationItemDirective, selector: "[axListNavigationItem]", outputs: ["onKeypress"], exportAs: ["axListNavigationItem"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2$1.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type:
110
+ AXSearchBoxModule }, { kind: "component", type: i3.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type", "autoSearch"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXCommonModule }, { kind: "directive", type: i4.AXAutoFocusDirective, selector: "[axAutoFocus]", inputs: ["axAutoFocus", "axAutoFocusTime"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i1$1.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i1$1.AXDecoratorClearButtonComponent, selector: "ax-clear-button", inputs: ["icon"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "ngmodule", type: AXListNavigationModule }, { kind: "directive", type: i6.AXListNavigationDirective, selector: "[axListNavigation]", inputs: ["orientation"], outputs: ["onNavigationChanged", "onKeypress"], exportAs: ["axListNavigation"] }, { kind: "directive", type: i6.AXListNavigationItemDirective, selector: "[axListNavigationItem]", outputs: ["onKeypress"], exportAs: ["axListNavigationItem"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i2$1.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type:
111
111
  //
112
112
  AXSkeletonModule }, { kind: "component", type: i8.AXSkeletonComponent, selector: "ax-skeleton", inputs: ["animated"] }, { kind: "ngmodule", type: AXChipsModule }, { kind: "component", type: AXPThemeLayoutBlockComponent, selector: " axp-page-content, axp-page-footer-container, axp-page-footer, axp-page-header, axp-page-header-container, axp-page-toolbar, axp-layout-content, axp-layout-page-content, axp-layout-sections, axp-layout-body, axp-layout-page-body, axp-layout-prefix, axp-layout-suffix, axp-layout-title-bar, axp-layout-title, axp-layout-title-actions, axp-layout-nav-button, axp-layout-description, axp-layout-breadcrumbs, axp-layout-list-action, " }, { kind: "component", type: AXPThemeLayoutListComponent, selector: "axp-layout-list" }, { kind: "component", type: AXPThemeLayoutListItemComponent, selector: "axp-layout-list-item" }, { kind: "component", type: AXPThemeLayoutListItemsGroupComponent, selector: "axp-layout-list-group" }, { kind: "component", type: AXPThemeLayoutHeaderComponent, selector: "axp-layout-header" }, { kind: "component", type: AXPStateMessageComponent, selector: "axp-state-message", inputs: ["mode", "icon", "title", "description", "titleParams", "descriptionParams", "look"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i4$1.AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
113
113
  }
@@ -136,4 +136,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
136
136
  }], propDecorators: { list: [{ type: i0.ViewChild, args: [i0.forwardRef(() => AXListNavigationDirective), { isSignal: true }] }], searchBox: [{ type: i0.ViewChild, args: [i0.forwardRef(() => AXSearchBoxComponent), { isSignal: true }] }], items: [{ type: i0.ViewChildren, args: [i0.forwardRef(() => AXListNavigationItemDirective), { isSignal: true }] }] } });
137
137
 
138
138
  export { AXPGlobalSearchPopupComponent };
139
- //# sourceMappingURL=acorex-platform-module-common-client-search-popup.component-D9gce0xf.mjs.map
139
+ //# sourceMappingURL=acorex-platform-module-common-client-search-popup.component-CNJmksXt.mjs.map