@acorex-platform/module-common-client 0.0.38 → 0.0.46
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/{acorex-platform-module-common-client-acorex-platform-module-common-client-BmGXSWg4.mjs → acorex-platform-module-common-client-acorex-platform-module-common-client-BzK6gnbq.mjs} +258 -63
- package/fesm2022/acorex-platform-module-common-client-acorex-platform-module-common-client-BzK6gnbq.mjs.map +1 -0
- package/fesm2022/{acorex-platform-module-common-client-archive-entity.command-D0TFxo2b.mjs → acorex-platform-module-common-client-archive-entity.command-P-8WPEaC.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-common-client-archive-entity.command-D0TFxo2b.mjs.map → acorex-platform-module-common-client-archive-entity.command-P-8WPEaC.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-common-client-archive-entity.command.util-DrW2EjNj.mjs → acorex-platform-module-common-client-archive-entity.command.util-DgnEcrDL.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-common-client-archive-entity.command.util-DrW2EjNj.mjs.map → acorex-platform-module-common-client-archive-entity.command.util-DgnEcrDL.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-common-client-audit-info-column.component-tMlIVjiu.mjs → acorex-platform-module-common-client-audit-info-column.component-DihrUmRM.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-common-client-audit-info-column.component-tMlIVjiu.mjs.map → acorex-platform-module-common-client-audit-info-column.component-DihrUmRM.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-common-client-bulk-archive-entity.command-LNJekir_.mjs → acorex-platform-module-common-client-bulk-archive-entity.command-njV_WseD.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-common-client-bulk-archive-entity.command-LNJekir_.mjs.map → acorex-platform-module-common-client-bulk-archive-entity.command-njV_WseD.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-common-client-bulk-restore-archive-entity.command-DV81VX8K.mjs → acorex-platform-module-common-client-bulk-restore-archive-entity.command-t2AYXaLk.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-common-client-bulk-restore-archive-entity.command-DV81VX8K.mjs.map → acorex-platform-module-common-client-bulk-restore-archive-entity.command-t2AYXaLk.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-common-client-clone-entity.command-CcjD0iDW.mjs → acorex-platform-module-common-client-clone-entity.command-UyUOYAxp.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-common-client-clone-entity.command-CcjD0iDW.mjs.map → acorex-platform-module-common-client-clone-entity.command-UyUOYAxp.mjs.map} +1 -1
- package/fesm2022/acorex-platform-module-common-client-contracts-entities-record-lock.mjs +13 -0
- package/fesm2022/acorex-platform-module-common-client-contracts-entities-record-lock.mjs.map +1 -1
- package/fesm2022/acorex-platform-module-common-client-contracts-entities-version-entry.mjs +14 -0
- package/fesm2022/acorex-platform-module-common-client-contracts-entities-version-entry.mjs.map +1 -1
- package/fesm2022/acorex-platform-module-common-client-contracts-entities-version-stream.mjs +13 -0
- package/fesm2022/acorex-platform-module-common-client-contracts-entities-version-stream.mjs.map +1 -1
- package/fesm2022/{acorex-platform-module-common-client-contracts-entity-catalog-acorex-platform-module-common-client-contracts-entity-catalog-C2WFbRne.mjs → acorex-platform-module-common-client-contracts-entity-catalog-acorex-platform-module-common-client-contracts-entity-catalog-8_tVyorm.mjs} +4 -4
- package/fesm2022/{acorex-platform-module-common-client-contracts-entity-catalog-acorex-platform-module-common-client-contracts-entity-catalog-C2WFbRne.mjs.map → acorex-platform-module-common-client-contracts-entity-catalog-acorex-platform-module-common-client-contracts-entity-catalog-8_tVyorm.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-common-client-contracts-entity-catalog-record-lock.entity-CY6jfaD7.mjs → acorex-platform-module-common-client-contracts-entity-catalog-record-lock.entity-DLA5qjPs.mjs} +15 -2
- package/fesm2022/acorex-platform-module-common-client-contracts-entity-catalog-record-lock.entity-DLA5qjPs.mjs.map +1 -0
- package/fesm2022/{acorex-platform-module-common-client-contracts-entity-catalog-version-entry.entity-DCBxAIMJ.mjs → acorex-platform-module-common-client-contracts-entity-catalog-version-entry.entity-C07SlyK0.mjs} +16 -2
- package/fesm2022/acorex-platform-module-common-client-contracts-entity-catalog-version-entry.entity-C07SlyK0.mjs.map +1 -0
- package/fesm2022/{acorex-platform-module-common-client-contracts-entity-catalog-version-stream.entity-DbSB34vz.mjs → acorex-platform-module-common-client-contracts-entity-catalog-version-stream.entity-C7LJK2Gt.mjs} +15 -2
- package/fesm2022/acorex-platform-module-common-client-contracts-entity-catalog-version-stream.entity-C7LJK2Gt.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-common-client-contracts-entity-catalog.mjs +1 -1
- package/fesm2022/acorex-platform-module-common-client-contracts.mjs +110 -4
- package/fesm2022/acorex-platform-module-common-client-contracts.mjs.map +1 -1
- package/fesm2022/acorex-platform-module-common-client-create-entity-version-draft.command-DLNMbq3M.mjs +46 -0
- package/fesm2022/acorex-platform-module-common-client-create-entity-version-draft.command-DLNMbq3M.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-common-client-delete-entity-version-draft.command-Dq0zjfak.mjs +54 -0
- package/fesm2022/acorex-platform-module-common-client-delete-entity-version-draft.command-Dq0zjfak.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-common-client-publish-entity-version.command-BtyWjtJj.mjs +58 -0
- package/fesm2022/acorex-platform-module-common-client-publish-entity-version.command-BtyWjtJj.mjs.map +1 -0
- package/fesm2022/{acorex-platform-module-common-client-restore-archive-entity.command-CWJPmL4o.mjs → acorex-platform-module-common-client-restore-archive-entity.command-Dyix1Ecm.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-common-client-restore-archive-entity.command-CWJPmL4o.mjs.map → acorex-platform-module-common-client-restore-archive-entity.command-Dyix1Ecm.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-common-client-search-popup.component-CNJmksXt.mjs → acorex-platform-module-common-client-search-popup.component-j0h_8fec.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-common-client-search-popup.component-CNJmksXt.mjs.map → acorex-platform-module-common-client-search-popup.component-j0h_8fec.mjs.map} +1 -1
- package/fesm2022/{acorex-platform-module-common-client-timeline-version-history-popup.component-DDpyY7mO.mjs → acorex-platform-module-common-client-timeline-version-history-popup.component-ysTJlOCx.mjs} +2 -2
- package/fesm2022/{acorex-platform-module-common-client-timeline-version-history-popup.component-DDpyY7mO.mjs.map → acorex-platform-module-common-client-timeline-version-history-popup.component-ysTJlOCx.mjs.map} +1 -1
- package/fesm2022/acorex-platform-module-common-client-versioning-entity.command.util-CKlJNPHa.mjs +122 -0
- package/fesm2022/acorex-platform-module-common-client-versioning-entity.command.util-CKlJNPHa.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-common-client.mjs +2 -1
- package/fesm2022/acorex-platform-module-common-client.mjs.map +1 -1
- package/package.json +1 -1
- package/types/acorex-platform-module-common-client-contracts.d.ts +80 -4
- package/types/acorex-platform-module-common-client.d.ts +13 -10
- package/fesm2022/acorex-platform-module-common-client-acorex-platform-module-common-client-BmGXSWg4.mjs.map +0 -1
- package/fesm2022/acorex-platform-module-common-client-contracts-entity-catalog-record-lock.entity-CY6jfaD7.mjs.map +0 -1
- package/fesm2022/acorex-platform-module-common-client-contracts-entity-catalog-version-entry.entity-DCBxAIMJ.mjs.map +0 -1
- package/fesm2022/acorex-platform-module-common-client-contracts-entity-catalog-version-stream.entity-DbSB34vz.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/manifest.ts","../../../../libs/modules/common/contracts/src/versioning.constants.ts","../../../../libs/modules/common/contracts/src/versioning.types.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 Versioning: {\n CreateDraft: 'create-entity-version-draft',\n Publish: 'publish-entity-version',\n DeleteDraft: 'delete-entity-version-draft',\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', 'AssessmentManagement'],\n InsightsReporting: ['ReportManagement', 'DataManagement', 'ActivityInsight', 'TestManagement'],\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 'ApplicationsPlatform:Permission:MaintainSoftwareDefinitions': ['SoftwareManagement'],\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:DistributeDocuments': ['DocumentManagement'],\n 'ContentDocuments:Permission:MaintainContent': ['ContentManagement'],\n 'ContentDocuments:Permission:MaintainFormTemplates': ['AssessmentManagement'],\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 'InsightsReporting:Permission:MaintainTestResults': ['TestManagement'],\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 ---- Imports ----\n\nimport { AXPModuleManifest } from '@acorex-platform/framework-shared/core';\nimport { RootConfig } from './root-config';\n\n//#endregion\n\n//#region ---- Manifest Definition ----\n\n/**\n * Common Module Manifest.\n * Defines module metadata, features, and provider references.\n */\nexport const CommonManifest: AXPModuleManifest = {\n name: RootConfig.module.name,\n version: '1.0.0',\n title: RootConfig.module.title,\n icon: RootConfig.module.icon,\n i18n: RootConfig.config.i18n,\n type: 'platform',\n domain: 'platform',\n required: true,\n\n // Module dependencies (optional)\n};\n\n//#endregion\n\n","//#region ----- Entity versioning (publication) constants -----\n\n/** Entity plugin name. Independent from the `history` plugin. */\nexport const AXP_VERSIONING_PLUGIN_NAME = 'versioning';\n\nexport const AXPVersioningField = {\n Version: 'version',\n VersionId: 'versionId',\n VersioningEnabled: 'versioningEnabled',\n SourceId: 'sourceId',\n VersionNumber: 'versionNumber',\n VersioningStatus: 'versioningStatus',\n} as const;\n\nexport const AXPVersioningStatus = {\n Draft: 'draft',\n Published: 'published',\n} as const;\n\nexport type AXPVersioningStatusValue =\n (typeof AXPVersioningStatus)[keyof typeof AXPVersioningStatus];\n\nexport const AXP_VERSIONING_ERROR_CODES = {\n DraftExists: 'VERSIONING_DRAFT_EXISTS',\n NotEligible: 'VERSIONING_NOT_ELIGIBLE',\n PublishedImmutable: 'VERSIONING_PUBLISHED_IMMUTABLE',\n HostContentLocked: 'VERSIONING_HOST_CONTENT_LOCKED',\n NoDraft: 'VERSIONING_NO_DRAFT',\n InvalidPublish: 'VERSIONING_INVALID_PUBLISH',\n} as const;\n\nexport const AXP_VERSIONING_ERROR_I18N: Record<string, string> = {\n [AXP_VERSIONING_ERROR_CODES.DraftExists]: '@general:errors.versioning.draft-exists',\n [AXP_VERSIONING_ERROR_CODES.NotEligible]: '@general:errors.versioning.not-eligible',\n [AXP_VERSIONING_ERROR_CODES.PublishedImmutable]: '@general:errors.versioning.published-immutable',\n [AXP_VERSIONING_ERROR_CODES.HostContentLocked]: '@general:errors.versioning.host-content-locked',\n [AXP_VERSIONING_ERROR_CODES.NoDraft]: '@general:errors.versioning.no-draft',\n [AXP_VERSIONING_ERROR_CODES.InvalidPublish]: '@general:errors.versioning.invalid-publish',\n};\n\n/** Fields that live only on the host published row. */\nexport const AXP_VERSIONING_HOST_OWN_FIELDS = new Set<string>([\n AXPVersioningField.Version,\n AXPVersioningField.VersionId,\n AXPVersioningField.VersioningEnabled,\n]);\n\n/** Fields that live only on the companion version row. */\nexport const AXP_VERSIONING_COMPANION_OWN_FIELDS = new Set<string>([\n AXPVersioningField.SourceId,\n AXPVersioningField.VersionNumber,\n AXPVersioningField.VersioningStatus,\n]);\n\n/**\n * Host fields that may change while a published version is current\n * (move in a folder, entity binding). Content fields are blocked when versioning is on.\n */\nexport const AXP_VERSIONING_STRUCTURAL_FIELDS = new Set<string>([\n 'parentId',\n 'refType',\n 'refId',\n 'statusId',\n 'status',\n 'scopeInfo',\n 'stateInfo',\n 'auditInfo',\n 'id',\n]);\n\nexport function versionCompanionEntityName(hostEntityName: string): string {\n return `${hostEntityName}Version`;\n}\n\nexport function hostEntityNameFromCompanion(companionEntityName: string): string | null {\n if (!companionEntityName.endsWith('Version')) {\n return null;\n }\n if (companionEntityName.endsWith('VersionEntry') || companionEntityName.endsWith('VersionStream')) {\n return null;\n }\n return companionEntityName.slice(0, -'Version'.length);\n}\n\nexport function isVersionCompanionEntityName(entityName: string): boolean {\n return hostEntityNameFromCompanion(entityName) != null;\n}\n\n//#endregion\n","//#region ----- Entity versioning plugin types -----\n\nimport type { AXPExpression } from '@acorex-platform/framework-shared/core';\nimport type { AXPEntityDetailDto } from '@acorex-platform/framework-shared/entity';\n\nexport interface AXPVersioningPluginOptions {\n /**\n * Host field that marks whether this record uses draft/publish versioning.\n * Default: `versioningEnabled`.\n */\n enabledField?: string;\n /**\n * Optional expression evaluated against the host row (client action hide).\n * Server still uses {@link enabledField}.\n */\n enabledWhen?: AXPExpression | string;\n}\n\n/** Host row for versioning commands (generic plugin; extra fields allowed). */\nexport interface AXPVersioningHostDto extends AXPEntityDetailDto<string> {\n version?: number;\n versionId?: string;\n versioningEnabled?: boolean;\n}\n\n/** Companion `{Entity}Version` row. Create may send only `sourceId`. */\nexport interface AXPVersioningCompanionDto extends AXPEntityDetailDto<string> {\n sourceId?: string;\n versionNumber?: number;\n versioningStatus?: string;\n}\n\n//#endregion\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';\nexport * from './manifest';\nexport * from './versioning.constants';\nexport * from './versioning.types';\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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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { AXTranslationService } from '@acorex/core/translation';
|
|
2
|
+
import * as i0 from '@angular/core';
|
|
3
|
+
import { inject, Injectable } from '@angular/core';
|
|
4
|
+
import { A as AXPVersioningEntityCommandHelper, n as normalizeVersioningInput } from './acorex-platform-module-common-client-versioning-entity.command.util-CKlJNPHa.mjs';
|
|
5
|
+
|
|
6
|
+
class AXPCreateEntityVersionDraftCommand {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.helper = inject(AXPVersioningEntityCommandHelper);
|
|
9
|
+
this.translationService = inject(AXTranslationService);
|
|
10
|
+
}
|
|
11
|
+
async execute(input) {
|
|
12
|
+
const context = normalizeVersioningInput(input);
|
|
13
|
+
if (!context) {
|
|
14
|
+
return {
|
|
15
|
+
success: false,
|
|
16
|
+
message: {
|
|
17
|
+
text: await this.translationService.translateAsync('@general:messages.entity.invalid-data'),
|
|
18
|
+
},
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
const loadingDialog = this.helper.showLoading(await this.translationService.translateAsync('@general:actions.versioning.create-draft.processing'), 'Creating version...');
|
|
22
|
+
try {
|
|
23
|
+
const versionId = await this.helper.companionData(context.companionEntity).create({
|
|
24
|
+
sourceId: context.refId,
|
|
25
|
+
});
|
|
26
|
+
this.helper.dispatchRefresh(context.refType);
|
|
27
|
+
loadingDialog.close();
|
|
28
|
+
await this.helper.showSuccessToast('@general:actions.versioning.create-draft.success.title', '@general:actions.versioning.create-draft.success.description');
|
|
29
|
+
return { success: true, kind: 'object', data: { versionId: String(versionId) } };
|
|
30
|
+
}
|
|
31
|
+
catch (error) {
|
|
32
|
+
loadingDialog.close();
|
|
33
|
+
await this.helper.showErrorToastFor(error, '@general:messages.generic.error.description');
|
|
34
|
+
return { success: false };
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXPCreateEntityVersionDraftCommand, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
38
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXPCreateEntityVersionDraftCommand, providedIn: 'root' }); }
|
|
39
|
+
}
|
|
40
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXPCreateEntityVersionDraftCommand, decorators: [{
|
|
41
|
+
type: Injectable,
|
|
42
|
+
args: [{ providedIn: 'root' }]
|
|
43
|
+
}] });
|
|
44
|
+
|
|
45
|
+
export { AXPCreateEntityVersionDraftCommand };
|
|
46
|
+
//# sourceMappingURL=acorex-platform-module-common-client-create-entity-version-draft.command-DLNMbq3M.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acorex-platform-module-common-client-create-entity-version-draft.command-DLNMbq3M.mjs","sources":["../../../../libs/modules/common/client/src/lib/features/versioning-plugin/commands/create-entity-version-draft.command.ts"],"sourcesContent":["import { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport type { AXPContextData } from '@acorex-platform/framework-shared/core';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { inject, Injectable } from '@angular/core';\n\nimport { AXPVersioningEntityCommandHelper } from './versioning-entity.command.helper';\nimport { normalizeVersioningInput } from './versioning-entity.command.util';\n\n@Injectable({ providedIn: 'root' })\nexport class AXPCreateEntityVersionDraftCommand implements AXPCommand<AXPContextData, { versionId: string }> {\n private readonly helper = inject(AXPVersioningEntityCommandHelper);\n private readonly translationService = inject(AXTranslationService);\n\n async execute(input: AXPContextData): AXPCommandExecuteResultPromise<{ versionId: string }> {\n const context = normalizeVersioningInput(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 loadingDialog = this.helper.showLoading(\n await this.translationService.translateAsync('@general:actions.versioning.create-draft.processing'),\n 'Creating version...',\n );\n\n try {\n const versionId = await this.helper.companionData(context.companionEntity).create({\n sourceId: context.refId,\n });\n this.helper.dispatchRefresh(context.refType);\n loadingDialog.close();\n await this.helper.showSuccessToast(\n '@general:actions.versioning.create-draft.success.title',\n '@general:actions.versioning.create-draft.success.description',\n );\n return { success: true, kind: 'object', data: { versionId: String(versionId) } };\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,kCAAkC,CAAA;AAD/C,IAAA,WAAA,GAAA;AAEmB,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,gCAAgC,CAAC;AACjD,QAAA,IAAA,CAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC;AAmCnE,IAAA;IAjCC,MAAM,OAAO,CAAC,KAAqB,EAAA;AACjC,QAAA,MAAM,OAAO,GAAG,wBAAwB,CAAC,KAAK,CAAC;QAC/C,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;QAEA,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAC3C,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,qDAAqD,CAAC,EACnG,qBAAqB,CACtB;AAED,QAAA,IAAI;AACF,YAAA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC;gBAChF,QAAQ,EAAE,OAAO,CAAC,KAAK;AACxB,aAAA,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC;YAC5C,aAAa,CAAC,KAAK,EAAE;YACrB,MAAM,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAChC,wDAAwD,EACxD,8DAA8D,CAC/D;YACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE;QAClF;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;8GApCW,kCAAkC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAlC,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,kCAAkC,cADrB,MAAM,EAAA,CAAA,CAAA;;2FACnB,kCAAkC,EAAA,UAAA,EAAA,CAAA;kBAD9C,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { AXTranslationService } from '@acorex/core/translation';
|
|
2
|
+
import * as i0 from '@angular/core';
|
|
3
|
+
import { inject, Injectable } from '@angular/core';
|
|
4
|
+
import { A as AXPVersioningEntityCommandHelper, n as normalizeVersioningInput } from './acorex-platform-module-common-client-versioning-entity.command.util-CKlJNPHa.mjs';
|
|
5
|
+
|
|
6
|
+
class AXPDeleteEntityVersionDraftCommand {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.helper = inject(AXPVersioningEntityCommandHelper);
|
|
9
|
+
this.translationService = inject(AXTranslationService);
|
|
10
|
+
}
|
|
11
|
+
async execute(input) {
|
|
12
|
+
const context = normalizeVersioningInput(input);
|
|
13
|
+
if (!context) {
|
|
14
|
+
return {
|
|
15
|
+
success: false,
|
|
16
|
+
message: {
|
|
17
|
+
text: await this.translationService.translateAsync('@general:messages.entity.invalid-data'),
|
|
18
|
+
},
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
const confirmed = await this.helper.confirm('@general:actions.versioning.delete-draft.confirm.title', '@general:actions.versioning.delete-draft.confirm.message');
|
|
22
|
+
if (!confirmed) {
|
|
23
|
+
return { success: false };
|
|
24
|
+
}
|
|
25
|
+
const loadingDialog = this.helper.showLoading(await this.translationService.translateAsync('@general:actions.versioning.delete-draft.processing'), 'Deleting draft...');
|
|
26
|
+
try {
|
|
27
|
+
const draft = await this.helper.findDraft(context.companionEntity, context.refId);
|
|
28
|
+
if (!draft?.id) {
|
|
29
|
+
loadingDialog.close();
|
|
30
|
+
await this.helper.showErrorToastFor({ error: { code: 'VERSIONING_NO_DRAFT', message: '@general:errors.versioning.no-draft' } }, '@general:errors.versioning.no-draft');
|
|
31
|
+
return { success: false };
|
|
32
|
+
}
|
|
33
|
+
await this.helper.companionData(context.companionEntity).delete(String(draft.id));
|
|
34
|
+
this.helper.dispatchRefresh(context.refType);
|
|
35
|
+
loadingDialog.close();
|
|
36
|
+
await this.helper.showSuccessToast('@general:actions.versioning.delete-draft.success.title', '@general:actions.versioning.delete-draft.success.description');
|
|
37
|
+
return { success: true, kind: 'object', data: undefined };
|
|
38
|
+
}
|
|
39
|
+
catch (error) {
|
|
40
|
+
loadingDialog.close();
|
|
41
|
+
await this.helper.showErrorToastFor(error, '@general:messages.generic.error.description');
|
|
42
|
+
return { success: false };
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXPDeleteEntityVersionDraftCommand, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
46
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXPDeleteEntityVersionDraftCommand, providedIn: 'root' }); }
|
|
47
|
+
}
|
|
48
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXPDeleteEntityVersionDraftCommand, decorators: [{
|
|
49
|
+
type: Injectable,
|
|
50
|
+
args: [{ providedIn: 'root' }]
|
|
51
|
+
}] });
|
|
52
|
+
|
|
53
|
+
export { AXPDeleteEntityVersionDraftCommand };
|
|
54
|
+
//# sourceMappingURL=acorex-platform-module-common-client-delete-entity-version-draft.command-Dq0zjfak.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acorex-platform-module-common-client-delete-entity-version-draft.command-Dq0zjfak.mjs","sources":["../../../../libs/modules/common/client/src/lib/features/versioning-plugin/commands/delete-entity-version-draft.command.ts"],"sourcesContent":["import { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport type { AXPContextData } from '@acorex-platform/framework-shared/core';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { inject, Injectable } from '@angular/core';\n\nimport { AXPVersioningEntityCommandHelper } from './versioning-entity.command.helper';\nimport { normalizeVersioningInput } from './versioning-entity.command.util';\n\n@Injectable({ providedIn: 'root' })\nexport class AXPDeleteEntityVersionDraftCommand implements AXPCommand<AXPContextData, void> {\n private readonly helper = inject(AXPVersioningEntityCommandHelper);\n private readonly translationService = inject(AXTranslationService);\n\n async execute(input: AXPContextData): AXPCommandExecuteResultPromise<void> {\n const context = normalizeVersioningInput(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.versioning.delete-draft.confirm.title',\n '@general:actions.versioning.delete-draft.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.versioning.delete-draft.processing'),\n 'Deleting draft...',\n );\n\n try {\n const draft = await this.helper.findDraft(context.companionEntity, context.refId);\n if (!draft?.id) {\n loadingDialog.close();\n await this.helper.showErrorToastFor(\n { error: { code: 'VERSIONING_NO_DRAFT', message: '@general:errors.versioning.no-draft' } },\n '@general:errors.versioning.no-draft',\n );\n return { success: false };\n }\n\n await this.helper.companionData(context.companionEntity).delete(String(draft.id));\n this.helper.dispatchRefresh(context.refType);\n loadingDialog.close();\n await this.helper.showSuccessToast(\n '@general:actions.versioning.delete-draft.success.title',\n '@general:actions.versioning.delete-draft.success.description',\n );\n return { success: true, kind: 'object', data: undefined };\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,kCAAkC,CAAA;AAD/C,IAAA,WAAA,GAAA;AAEmB,QAAA,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,gCAAgC,CAAC;AACjD,QAAA,IAAA,CAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC;AAmDnE,IAAA;IAjDC,MAAM,OAAO,CAAC,KAAqB,EAAA;AACjC,QAAA,MAAM,OAAO,GAAG,wBAAwB,CAAC,KAAK,CAAC;QAC/C,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,wDAAwD,EACxD,0DAA0D,CAC3D;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,mBAAmB,CACpB;AAED,QAAA,IAAI;AACF,YAAA,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,eAAe,EAAE,OAAO,CAAC,KAAK,CAAC;AACjF,YAAA,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE;gBACd,aAAa,CAAC,KAAK,EAAE;gBACrB,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CACjC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,qCAAqC,EAAE,EAAE,EAC1F,qCAAqC,CACtC;AACD,gBAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;YAC3B;YAEA,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACjF,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC;YAC5C,aAAa,CAAC,KAAK,EAAE;YACrB,MAAM,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAChC,wDAAwD,EACxD,8DAA8D,CAC/D;AACD,YAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;QAC3D;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;8GApDW,kCAAkC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAlC,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,kCAAkC,cADrB,MAAM,EAAA,CAAA,CAAA;;2FACnB,kCAAkC,EAAA,UAAA,EAAA,CAAA;kBAD9C,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;"}
|
package/fesm2022/acorex-platform-module-common-client-publish-entity-version.command-BtyWjtJj.mjs
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { AXTranslationService } from '@acorex/core/translation';
|
|
2
|
+
import * as i0 from '@angular/core';
|
|
3
|
+
import { inject, Injectable } from '@angular/core';
|
|
4
|
+
import { A as AXPVersioningEntityCommandHelper, n as normalizeVersioningInput } from './acorex-platform-module-common-client-versioning-entity.command.util-CKlJNPHa.mjs';
|
|
5
|
+
|
|
6
|
+
class AXPPublishEntityVersionCommand {
|
|
7
|
+
constructor() {
|
|
8
|
+
this.helper = inject(AXPVersioningEntityCommandHelper);
|
|
9
|
+
this.translationService = inject(AXTranslationService);
|
|
10
|
+
}
|
|
11
|
+
async execute(input) {
|
|
12
|
+
const context = normalizeVersioningInput(input);
|
|
13
|
+
if (!context) {
|
|
14
|
+
return {
|
|
15
|
+
success: false,
|
|
16
|
+
message: {
|
|
17
|
+
text: await this.translationService.translateAsync('@general:messages.entity.invalid-data'),
|
|
18
|
+
},
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
if (!context.skipConfirm) {
|
|
22
|
+
const confirmed = await this.helper.confirm('@general:actions.versioning.publish.confirm.title', '@general:actions.versioning.publish.confirm.message');
|
|
23
|
+
if (!confirmed) {
|
|
24
|
+
return { success: false };
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
const loadingDialog = this.helper.showLoading(await this.translationService.translateAsync('@general:actions.versioning.publish.processing'), 'Publishing...');
|
|
28
|
+
try {
|
|
29
|
+
const draft = await this.helper.findDraft(context.companionEntity, context.refId);
|
|
30
|
+
if (!draft?.id) {
|
|
31
|
+
loadingDialog.close();
|
|
32
|
+
await this.helper.showErrorToastFor({ error: { code: 'VERSIONING_NO_DRAFT', message: '@general:errors.versioning.no-draft' } }, '@general:errors.versioning.no-draft');
|
|
33
|
+
return { success: false };
|
|
34
|
+
}
|
|
35
|
+
await this.helper.hostData(context.refType).update(context.refId, {
|
|
36
|
+
versionId: draft.id,
|
|
37
|
+
});
|
|
38
|
+
this.helper.dispatchRefresh(context.refType);
|
|
39
|
+
loadingDialog.close();
|
|
40
|
+
await this.helper.showSuccessToast('@general:actions.versioning.publish.success.title', '@general:actions.versioning.publish.success.description');
|
|
41
|
+
return { success: true, kind: 'object', data: undefined };
|
|
42
|
+
}
|
|
43
|
+
catch (error) {
|
|
44
|
+
loadingDialog.close();
|
|
45
|
+
await this.helper.showErrorToastFor(error, '@general:messages.generic.error.description');
|
|
46
|
+
return { success: false };
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXPPublishEntityVersionCommand, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
50
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXPPublishEntityVersionCommand, providedIn: 'root' }); }
|
|
51
|
+
}
|
|
52
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXPPublishEntityVersionCommand, decorators: [{
|
|
53
|
+
type: Injectable,
|
|
54
|
+
args: [{ providedIn: 'root' }]
|
|
55
|
+
}] });
|
|
56
|
+
|
|
57
|
+
export { AXPPublishEntityVersionCommand };
|
|
58
|
+
//# sourceMappingURL=acorex-platform-module-common-client-publish-entity-version.command-BtyWjtJj.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acorex-platform-module-common-client-publish-entity-version.command-BtyWjtJj.mjs","sources":["../../../../libs/modules/common/client/src/lib/features/versioning-plugin/commands/publish-entity-version.command.ts"],"sourcesContent":["import { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport type { AXPContextData } from '@acorex-platform/framework-shared/core';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { inject, Injectable } from '@angular/core';\n\nimport { AXPVersioningEntityCommandHelper } from './versioning-entity.command.helper';\nimport { normalizeVersioningInput } from './versioning-entity.command.util';\n\n@Injectable({ providedIn: 'root' })\nexport class AXPPublishEntityVersionCommand implements AXPCommand<AXPContextData, void> {\n private readonly helper = inject(AXPVersioningEntityCommandHelper);\n private readonly translationService = inject(AXTranslationService);\n\n async execute(input: AXPContextData): AXPCommandExecuteResultPromise<void> {\n const context = normalizeVersioningInput(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 if (!context.skipConfirm) {\n const confirmed = await this.helper.confirm(\n '@general:actions.versioning.publish.confirm.title',\n '@general:actions.versioning.publish.confirm.message',\n );\n if (!confirmed) {\n return { success: false };\n }\n }\n\n const loadingDialog = this.helper.showLoading(\n await this.translationService.translateAsync('@general:actions.versioning.publish.processing'),\n 'Publishing...',\n );\n\n try {\n const draft = await this.helper.findDraft(context.companionEntity, context.refId);\n if (!draft?.id) {\n loadingDialog.close();\n await this.helper.showErrorToastFor(\n { error: { code: 'VERSIONING_NO_DRAFT', message: '@general:errors.versioning.no-draft' } },\n '@general:errors.versioning.no-draft',\n );\n return { success: false };\n }\n\n await this.helper.hostData(context.refType).update(context.refId, {\n versionId: draft.id,\n });\n this.helper.dispatchRefresh(context.refType);\n loadingDialog.close();\n await this.helper.showSuccessToast(\n '@general:actions.versioning.publish.success.title',\n '@general:actions.versioning.publish.success.description',\n );\n return { success: true, kind: 'object', data: undefined };\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,gCAAgC,CAAC;AACjD,QAAA,IAAA,CAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC;AAuDnE,IAAA;IArDC,MAAM,OAAO,CAAC,KAAqB,EAAA;AACjC,QAAA,MAAM,OAAO,GAAG,wBAAwB,CAAC,KAAK,CAAC;QAC/C,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,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;AACxB,YAAA,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CACzC,mDAAmD,EACnD,qDAAqD,CACtD;YACD,IAAI,CAAC,SAAS,EAAE;AACd,gBAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;YAC3B;QACF;QAEA,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAC3C,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,gDAAgD,CAAC,EAC9F,eAAe,CAChB;AAED,QAAA,IAAI;AACF,YAAA,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,eAAe,EAAE,OAAO,CAAC,KAAK,CAAC;AACjF,YAAA,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE;gBACd,aAAa,CAAC,KAAK,EAAE;gBACrB,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CACjC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,qCAAqC,EAAE,EAAE,EAC1F,qCAAqC,CACtC;AACD,gBAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;YAC3B;AAEA,YAAA,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE;gBAChE,SAAS,EAAE,KAAK,CAAC,EAAE;AACpB,aAAA,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC;YAC5C,aAAa,CAAC,KAAK,EAAE;YACrB,MAAM,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAChC,mDAAmD,EACnD,yDAAyD,CAC1D;AACD,YAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;QAC3D;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;8GAxDW,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,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-
|
|
4
|
+
import { A as AXPArchiveEntityCommandHelper, n as normalizeArchiveSingleInput, b as buildArchivePatch, a as buildArchiveRefreshMeta } from './acorex-platform-module-common-client-archive-entity.command.util-DgnEcrDL.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-
|
|
51
|
+
//# sourceMappingURL=acorex-platform-module-common-client-restore-archive-entity.command-Dyix1Ecm.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-platform-module-common-client-restore-archive-entity.command-
|
|
1
|
+
{"version":3,"file":"acorex-platform-module-common-client-restore-archive-entity.command-Dyix1Ecm.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-
|
|
25
|
+
import { a as AXPGlobalSearchViewModel } from './acorex-platform-module-common-client-acorex-platform-module-common-client-BzK6gnbq.mjs';
|
|
26
26
|
|
|
27
27
|
class AXPGlobalSearchPopupComponent extends AXBasePageComponent {
|
|
28
28
|
constructor() {
|
|
@@ -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-
|
|
139
|
+
//# sourceMappingURL=acorex-platform-module-common-client-search-popup.component-j0h_8fec.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-platform-module-common-client-search-popup.component-CNJmksXt.mjs","sources":["../../../../libs/modules/common/client/src/lib/features/global-search/search-popup.component.ts","../../../../libs/modules/common/client/src/lib/features/global-search/search-popup.component.html"],"sourcesContent":["import {\n AXListNavigationDirective,\n AXListNavigationItemDirective,\n AXListNavigationModule,\n} from '@acorex/cdk/list-navigation';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXChipsModule } from '@acorex/components/chips';\nimport { AXClickEvent, AXCommonModule, AXHtmlEvent, AXValueChangedEvent } from '@acorex/cdk/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXBasePageComponent } from '@acorex/components/page';\nimport { AXSearchBoxComponent, AXSearchBoxModule } from '@acorex/components/search-box';\nimport { AXSkeletonModule } from '@acorex/components/skeleton';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPSearchDisplayResult } from '@acorex-platform/framework-client/common';\nimport {\n AXPThemeLayoutBlockComponent,\n AXPThemeLayoutHeaderComponent,\n AXPThemeLayoutListComponent,\n AXPThemeLayoutListItemComponent,\n AXPThemeLayoutListItemsGroupComponent,\n AXPStateMessageComponent,\n} from '@acorex-platform/framework-client/layout/components';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject, viewChild, viewChildren } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { first } from 'rxjs';\nimport { AXPGlobalSearchViewModel } from './search.viewmodel';\n\n@Component({\n templateUrl: 'search-popup.component.html',\n styleUrl: 'search-popup.component.css',\n imports: [\n CommonModule,\n FormsModule,\n //\n AXSearchBoxModule,\n AXCommonModule,\n AXDecoratorModule,\n AXTranslationModule,\n AXListNavigationModule,\n AXButtonModule,\n //\n AXSkeletonModule,\n AXChipsModule,\n AXPThemeLayoutBlockComponent,\n AXPThemeLayoutListComponent,\n AXPThemeLayoutListItemComponent,\n AXPThemeLayoutListItemsGroupComponent,\n AXPThemeLayoutHeaderComponent,\n AXPStateMessageComponent,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [AXPGlobalSearchViewModel],\n})\nexport class AXPGlobalSearchPopupComponent extends AXBasePageComponent {\n protected i18nScope = 'global-search';\n\n protected vm = inject(AXPGlobalSearchViewModel);\n\n protected text: string | null = null;\n\n private list = viewChild(AXListNavigationDirective);\n private searchBox = viewChild(AXSearchBoxComponent);\n private items = viewChildren(AXListNavigationItemDirective);\n\n async handleTextChanged(e: AXValueChangedEvent<string>) {\n if (e.isUserInteraction) {\n await this.vm.search(e.value!);\n }\n }\n\n protected override ngOnInit() {\n super.ngOnInit();\n //\n this.vm.onItemSelected.pipe(first()).subscribe((item) => {\n this.close(item);\n });\n }\n\n protected handleSearchKeyDown(e: AXHtmlEvent<KeyboardEvent>) {\n const event = e.nativeEvent!;\n switch (event.code) {\n case 'ArrowDown':\n const item = this.items()[0];\n if (item && this.list()) {\n this.list()?.navigateTo(item);\n }\n event.preventDefault();\n event.stopPropagation();\n break;\n }\n }\n\n protected handleClearClick($event: AXClickEvent) {\n this.vm.clearRecentItems();\n }\n\n protected handleListKeyDown(e: KeyboardEvent) {\n switch (e.code) {\n case 'ArrowUp': {\n const item = this.items()[0];\n if (item && this.list() && item.isActive()) {\n this.searchBox()?.focus();\n }\n break;\n }\n case 'Escape': {\n this.searchBox()?.focus();\n e.preventDefault();\n e.stopPropagation();\n break;\n }\n }\n }\n\n protected handleItemKeyDown(e: KeyboardEvent, item: AXPSearchDisplayResult) {\n switch (e.code) {\n case 'Enter':\n case 'Space': {\n e.preventDefault();\n e.stopPropagation();\n this.vm.execute(item);\n break;\n }\n }\n }\n\n protected handlePinClick(e: Event, item: any) {\n e.stopPropagation();\n this.vm.togglePin(item);\n }\n\n protected searchListItemIcon(item: AXPSearchDisplayResult): string {\n const icon = item.icon?.trim();\n if (!icon) {\n return 'fa-light fa-circle';\n }\n return icon.includes(' ') ? icon : `fa-light ${icon}`;\n }\n}\n","<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"],"names":["i7","i9"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acorex-platform-module-common-client-search-popup.component-j0h_8fec.mjs","sources":["../../../../libs/modules/common/client/src/lib/features/global-search/search-popup.component.ts","../../../../libs/modules/common/client/src/lib/features/global-search/search-popup.component.html"],"sourcesContent":["import {\n AXListNavigationDirective,\n AXListNavigationItemDirective,\n AXListNavigationModule,\n} from '@acorex/cdk/list-navigation';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXChipsModule } from '@acorex/components/chips';\nimport { AXClickEvent, AXCommonModule, AXHtmlEvent, AXValueChangedEvent } from '@acorex/cdk/common';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXBasePageComponent } from '@acorex/components/page';\nimport { AXSearchBoxComponent, AXSearchBoxModule } from '@acorex/components/search-box';\nimport { AXSkeletonModule } from '@acorex/components/skeleton';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPSearchDisplayResult } from '@acorex-platform/framework-client/common';\nimport {\n AXPThemeLayoutBlockComponent,\n AXPThemeLayoutHeaderComponent,\n AXPThemeLayoutListComponent,\n AXPThemeLayoutListItemComponent,\n AXPThemeLayoutListItemsGroupComponent,\n AXPStateMessageComponent,\n} from '@acorex-platform/framework-client/layout/components';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject, viewChild, viewChildren } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { first } from 'rxjs';\nimport { AXPGlobalSearchViewModel } from './search.viewmodel';\n\n@Component({\n templateUrl: 'search-popup.component.html',\n styleUrl: 'search-popup.component.css',\n imports: [\n CommonModule,\n FormsModule,\n //\n AXSearchBoxModule,\n AXCommonModule,\n AXDecoratorModule,\n AXTranslationModule,\n AXListNavigationModule,\n AXButtonModule,\n //\n AXSkeletonModule,\n AXChipsModule,\n AXPThemeLayoutBlockComponent,\n AXPThemeLayoutListComponent,\n AXPThemeLayoutListItemComponent,\n AXPThemeLayoutListItemsGroupComponent,\n AXPThemeLayoutHeaderComponent,\n AXPStateMessageComponent,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [AXPGlobalSearchViewModel],\n})\nexport class AXPGlobalSearchPopupComponent extends AXBasePageComponent {\n protected i18nScope = 'global-search';\n\n protected vm = inject(AXPGlobalSearchViewModel);\n\n protected text: string | null = null;\n\n private list = viewChild(AXListNavigationDirective);\n private searchBox = viewChild(AXSearchBoxComponent);\n private items = viewChildren(AXListNavigationItemDirective);\n\n async handleTextChanged(e: AXValueChangedEvent<string>) {\n if (e.isUserInteraction) {\n await this.vm.search(e.value!);\n }\n }\n\n protected override ngOnInit() {\n super.ngOnInit();\n //\n this.vm.onItemSelected.pipe(first()).subscribe((item) => {\n this.close(item);\n });\n }\n\n protected handleSearchKeyDown(e: AXHtmlEvent<KeyboardEvent>) {\n const event = e.nativeEvent!;\n switch (event.code) {\n case 'ArrowDown':\n const item = this.items()[0];\n if (item && this.list()) {\n this.list()?.navigateTo(item);\n }\n event.preventDefault();\n event.stopPropagation();\n break;\n }\n }\n\n protected handleClearClick($event: AXClickEvent) {\n this.vm.clearRecentItems();\n }\n\n protected handleListKeyDown(e: KeyboardEvent) {\n switch (e.code) {\n case 'ArrowUp': {\n const item = this.items()[0];\n if (item && this.list() && item.isActive()) {\n this.searchBox()?.focus();\n }\n break;\n }\n case 'Escape': {\n this.searchBox()?.focus();\n e.preventDefault();\n e.stopPropagation();\n break;\n }\n }\n }\n\n protected handleItemKeyDown(e: KeyboardEvent, item: AXPSearchDisplayResult) {\n switch (e.code) {\n case 'Enter':\n case 'Space': {\n e.preventDefault();\n e.stopPropagation();\n this.vm.execute(item);\n break;\n }\n }\n }\n\n protected handlePinClick(e: Event, item: any) {\n e.stopPropagation();\n this.vm.togglePin(item);\n }\n\n protected searchListItemIcon(item: AXPSearchDisplayResult): string {\n const icon = item.icon?.trim();\n if (!icon) {\n return 'fa-light fa-circle';\n }\n return icon.includes(' ') ? icon : `fa-light ${icon}`;\n }\n}\n","<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"],"names":["i7","i9"],"mappings":"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"}
|
|
@@ -11,7 +11,7 @@ import { AXPActivityLogComponent } from '@acorex-platform/framework-client/layou
|
|
|
11
11
|
import { AXPVersioningService } from '@acorex-platform/framework-client/common';
|
|
12
12
|
import * as i4 from '@acorex/core/translation';
|
|
13
13
|
import { AXTranslationService, AXTranslationModule } from '@acorex/core/translation';
|
|
14
|
-
import { v as versionEntriesToActivityLogs, o as openActivityLogVersionCompare } from './acorex-platform-module-common-client-acorex-platform-module-common-client-
|
|
14
|
+
import { v as versionEntriesToActivityLogs, o as openActivityLogVersionCompare } from './acorex-platform-module-common-client-acorex-platform-module-common-client-BzK6gnbq.mjs';
|
|
15
15
|
|
|
16
16
|
class AXMTimelineVersionHistoryPopupComponent extends AXBasePageComponent {
|
|
17
17
|
constructor() {
|
|
@@ -60,4 +60,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
|
|
|
60
60
|
}] });
|
|
61
61
|
|
|
62
62
|
export { AXMTimelineVersionHistoryPopupComponent };
|
|
63
|
-
//# sourceMappingURL=acorex-platform-module-common-client-timeline-version-history-popup.component-
|
|
63
|
+
//# sourceMappingURL=acorex-platform-module-common-client-timeline-version-history-popup.component-ysTJlOCx.mjs.map
|