@acorex-platform/module-app-builder-client 0.0.32 → 0.0.37
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/acorex-platform-module-app-builder-client-contracts-entities-landing-page-category.mjs +164 -0
- package/fesm2022/acorex-platform-module-app-builder-client-contracts-entities-landing-page-category.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-app-builder-client-contracts-entities-landing-page.mjs +282 -0
- package/fesm2022/acorex-platform-module-app-builder-client-contracts-entities-landing-page.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-app-builder-client-contracts-entity-catalog-acorex-platform-module-app-builder-client-contracts-entity-catalog-DKIAeJ1O.mjs +53 -0
- package/fesm2022/acorex-platform-module-app-builder-client-contracts-entity-catalog-acorex-platform-module-app-builder-client-contracts-entity-catalog-DKIAeJ1O.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-app-builder-client-contracts-entity-catalog-landing-page-category.entity-DJVzsfFH.mjs +131 -0
- package/fesm2022/acorex-platform-module-app-builder-client-contracts-entity-catalog-landing-page-category.entity-DJVzsfFH.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-app-builder-client-contracts-entity-catalog-landing-page.entity-u82GNzgg.mjs +249 -0
- package/fesm2022/acorex-platform-module-app-builder-client-contracts-entity-catalog-landing-page.entity-u82GNzgg.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-app-builder-client-contracts-entity-catalog.mjs +2 -0
- package/fesm2022/acorex-platform-module-app-builder-client-contracts-entity-catalog.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-app-builder-client-contracts.mjs.map +1 -1
- package/fesm2022/acorex-platform-module-app-builder-client-local-entities.mjs +30 -0
- package/fesm2022/acorex-platform-module-app-builder-client-local-entities.mjs.map +1 -0
- package/fesm2022/acorex-platform-module-app-builder-client.mjs.map +1 -1
- package/package.json +17 -1
- package/types/acorex-platform-module-app-builder-client-contracts-entities-landing-page-category.d.ts +5 -0
- package/types/acorex-platform-module-app-builder-client-contracts-entities-landing-page.d.ts +5 -0
- package/types/acorex-platform-module-app-builder-client-contracts-entity-catalog.d.ts +10 -0
- package/types/acorex-platform-module-app-builder-client-local-entities.d.ts +12 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-platform-module-app-builder-client.mjs","sources":["../../../../libs/modules/app-builder/client/src/lib/manifest.ts","../../../../libs/modules/app-builder/client/src/lib/menu.provider.ts","../../../../libs/modules/app-builder/client/src/lib/permission-definition.provider.ts","../../../../libs/modules/app-builder/client/src/lib/app-builder.module.ts","../../../../libs/modules/app-builder/client/src/lib/features/landing-page-designer/landing-page-designer-connector.service.ts","../../../../libs/modules/app-builder/client/src/lib/features/landing-page-designer/landing-page-designer-page.component.ts","../../../../libs/modules/app-builder/client/src/lib/features/landing-page-designer/landing-page-designer-page-component.provider.ts","../../../../libs/modules/app-builder/client/src/lib/features/landing-page-designer/landing-page-designer-route.page.ts","../../../../libs/modules/app-builder/client/src/lib/features/landing-viewer/landing-page-resolve.service.ts","../../../../libs/modules/app-builder/client/src/lib/features/landing-viewer/landing-viewer.page.ts","../../../../libs/modules/app-builder/client/src/acorex-platform-module-app-builder-client.ts"],"sourcesContent":["import { AXPModuleManifest } from '@acorex-platform/framework-client/core';\nimport { RootConfig } from '@acorex-platform/module-app-builder-client/contracts';\n\nexport const AppBuilderManifest: 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};\n","import { AXPCommonMenuKeys } from '@acorex-platform/module-common-client/contracts';\nimport { AXPMenuProvider, AXPMenuProviderContext } from '@acorex-platform/framework-client/common';\nimport { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';\nimport { Injectable, inject } from '@angular/core';\nimport {\n AXMAppBuilderMenuKeys,\n RootConfig,\n} from '@acorex-platform/module-app-builder-client/contracts';\n\n@Injectable()\nexport class AXMMenuProvider implements AXPMenuProvider {\n private entityService = inject(AXPEntityService);\n\n async provide(context: AXPMenuProviderContext): Promise<void> {\n const module = RootConfig.module;\n\n const contentMenu = context.find(AXPCommonMenuKeys.Content);\n if (!contentMenu.exists) {\n context.find(AXPCommonMenuKeys.Administration).addItems([\n {\n name: AXPCommonMenuKeys.Content,\n priority: 10,\n text: '@general:menus.content.title',\n icon: 'fa-light fa-paint-brush',\n type: 'menu',\n children: [],\n },\n ]);\n }\n\n context.find(AXPCommonMenuKeys.Content).addItems([\n {\n name: AXMAppBuilderMenuKeys.LandingPages,\n text: RootConfig.entities.landingPage.titlePlural,\n path: this.entityService.createPath(module.name, RootConfig.entities.landingPage.name),\n icon: RootConfig.entities.landingPage.icon,\n priority: 20,\n policy: {\n features: [module.name],\n },\n },\n {\n name: AXMAppBuilderMenuKeys.LandingPageCategories,\n text: RootConfig.entities.landingPageCategory.titlePlural,\n path: this.entityService.createPath(module.name, RootConfig.entities.landingPageCategory.name),\n icon: RootConfig.entities.landingPageCategory.icon,\n priority: 21,\n policy: {\n features: [module.name],\n },\n },\n ]);\n }\n}\n","//#region ---- Imports ----\n\nimport {\n AXPPermissionDefinitionProvider,\n AXPPermissionDefinitionProviderContext,\n} from '@acorex-platform/framework-client/auth';\nimport {\n AXPCommonPermissionGroupKeys\n} from '@acorex-platform/module-common-client/contracts';\nimport {\n AXPApplicationsPlatformPermissionKeys\n} from '@acorex-platform/module-app-builder-client/contracts';\n\nimport { Injectable } from '@angular/core';\n\n//#endregion\n\n//#region ---- Permission Definition Provider ----\n\n/**\n * Registers MaintainLandingPages under Applications & Platform.\n */\n@Injectable()\nexport class AXMPermissionDefinitionProvider implements AXPPermissionDefinitionProvider {\n async define(context: AXPPermissionDefinitionProviderContext): Promise<void> {\n const keys = AXPApplicationsPlatformPermissionKeys;\n const groups = AXPCommonPermissionGroupKeys;\n const P = '@common:applications-platform.permissions';\n const G = '@common:permission-groups';\n\n context.addGroup(groups.ApplicationsPlatform.Root, `${G}.applications-platform.title`, `${G}.applications-platform.description`, { order: 110 });\n\n context\n .addGroup(\n groups.ApplicationsPlatform.Applications,\n `${G}.applications-platform-applications.title`,\n `${G}.applications-platform-applications.description`,\n { parent: groups.ApplicationsPlatform.Root, order: 10 },\n )\n .addPermission(\n keys.MaintainLandingPages,\n `${P}.maintain-landing-pages.title`,\n `${P}.maintain-landing-pages.description`,\n { modules: ['AppBuilder'], requiredFeatures: ['AppBuilder'] },\n )\n .endPermission()\n .endGroup();\n }\n}\n\n//#endregion\n","import { AXP_MODULE_MANIFEST_PROVIDER, provideLazyProvider } from '@acorex-platform/framework-client/core';\nimport { AXP_MENU_PROVIDER } from '@acorex-platform/framework-client/common';\nimport { AXP_PERMISSION_DEFINITION_PROVIDER } from '@acorex-platform/framework-client/auth';\nimport { AXP_PAGE_COMPONENT_PROVIDER } from '@acorex-platform/framework-client/layout/components';\nimport { AXPWidgetCoreModule } from '@acorex-platform/framework-client/layout/widget-core';\nimport { AXPWidgetsModule } from '@acorex-platform/framework-client/layout/widgets';\nimport { NgModule } from '@angular/core';\nimport { ROUTES, Routes } from '@angular/router';\nimport { AppBuilderManifest } from './manifest';\n\nimport { AXMMenuProvider } from './menu.provider';\nimport { AXMPermissionDefinitionProvider } from './permission-definition.provider';\n\nfunction routesFactory(): Routes {\n return [\n {\n path: 'landing',\n children: [\n {\n path: '',\n loadComponent: () =>\n import('./features/landing-viewer').then((m) => m.AXMLandingViewerPage),\n },\n {\n path: ':slug',\n loadComponent: () =>\n import('./features/landing-viewer').then((m) => m.AXMLandingViewerPage),\n },\n {\n path: ':categorySlug/:slug',\n loadComponent: () =>\n import('./features/landing-viewer').then((m) => m.AXMLandingViewerPage),\n },\n ],\n },\n {\n path: 'app-builder',\n children: [\n {\n path: 'designer',\n loadComponent: () =>\n import('./features/landing-page-designer').then((m) => m.AXMLandingPageDesignerRoutePage),\n },\n ],\n },\n ];\n}\n\n@NgModule({\n imports: [AXPWidgetsModule, AXPWidgetCoreModule],\n providers: [\n {\n provide: AXP_MODULE_MANIFEST_PROVIDER,\n useValue: AppBuilderManifest,\n multi: true,\n },\n {\n provide: AXP_PERMISSION_DEFINITION_PROVIDER,\n useClass: AXMPermissionDefinitionProvider,\n multi: true,\n },\n {\n provide: AXP_MENU_PROVIDER,\n useClass: AXMMenuProvider,\n multi: true,\n },\n \n {\n provide: ROUTES,\n multi: true,\n useFactory: routesFactory,\n },\n provideLazyProvider(AXP_PAGE_COMPONENT_PROVIDER, () =>\n import('./features/landing-page-designer').then(\n (m) => m.AXMLandingPageDesignerPageComponentProvider,\n ),\n ),\n ],\n})\nexport class AXMAppBuilderModule {}\n","import {\n AXPDesignerConnector,\n AXPDesignerContent,\n} from '@acorex-platform/framework-client/layout/designer';\nimport { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';\nimport { AXPCommandService } from '@acorex-platform/framework-client/runtime';\nimport { inject, Injectable } from '@angular/core';\nimport { RootConfig } from '@acorex-platform/module-app-builder-client/contracts';\nimport { AXMLandingPageStatuses } from '@acorex-platform/module-app-builder-client/contracts';\n\n@Injectable()\nexport class AXMLandingPageDesignerConnector extends AXPDesignerConnector {\n private readonly commandService = inject(AXPCommandService);\n private readonly entityService = inject(AXPEntityService);\n private readonly pageEntity = this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.landingPage.name)\n .data<any, any>();\n\n public override async save(id: string, content: AXPDesignerContent): Promise<boolean> {\n const item = await this.pageEntity.byKey(id);\n if (!item) {\n throw new Error('Invalid landing page id');\n }\n await this.pageEntity.update(id, { content: content.json });\n return true;\n }\n\n public override async saveAs(content: AXPDesignerContent): Promise<boolean> {\n const entityKey = `${RootConfig.module.name}.${RootConfig.entities.landingPage.name}`;\n const slug = `page-${Date.now().toString(36)}`;\n const result = await this.commandService.execute('Entity:Create', {\n entity: entityKey,\n entityInfo: {\n name: RootConfig.entities.landingPage.name,\n module: RootConfig.module.name,\n title: RootConfig.entities.landingPage.title,\n },\n data: {\n title: slug,\n slug,\n status: AXMLandingPageStatuses.Draft.id,\n content: content.json,\n isHome: false,\n },\n options: {\n process: {\n redirect: false,\n },\n },\n \n });\n return !!result?.success;\n }\n\n public override async load(id: string): Promise<string | null> {\n const item = await this.pageEntity.byKey(id);\n if (!item) {\n throw new Error('Invalid landing page id');\n }\n return item.content ?? null;\n }\n}\n","import { AXPDesignerConnector, AXPLayoutDesignerComponent } from '@acorex-platform/framework-client/layout/designer';\nimport { AXPWidgetCoreModule } from '@acorex-platform/framework-client/layout/widget-core';\nimport { AXPWidgetsModule } from '@acorex-platform/framework-client/layout/widgets';\nimport { Component, computed, input, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core';\nimport { AXMLandingPageDesignerConnector } from './landing-page-designer-connector.service';\n\n@Component({\n selector: 'axm-landing-page-designer-page',\n template: `\n @if (pageId()) {\n <axp-layout-designer [id]=\"pageId()\" [strategy]=\"'Connector'\" />\n }\n `,\n encapsulation: ViewEncapsulation.None,\n styles: [\n `\n :host {\n display: block;\n height: 100%;\n min-height: 70vh;\n }\n :host axp-layout-designer {\n display: block;\n height: 100%;\n min-height: 70vh;\n }\n `,\n ],\n imports: [AXPLayoutDesignerComponent, AXPWidgetCoreModule, AXPWidgetsModule],\n changeDetection: ChangeDetectionStrategy.Eager,\n providers: [{ provide: AXPDesignerConnector, useClass: AXMLandingPageDesignerConnector }],\n})\nexport class AXMLandingPageDesignerPageComponent {\n rootContext = input<Record<string, unknown>>();\n pageConfig = input<Record<string, unknown>>();\n\n protected pageId = computed(() => {\n const id = this.rootContext()?.['id'];\n return id != null && String(id).length > 0 ? String(id) : null;\n });\n}\n","import {\n AXPPageComponentDefinition,\n AXPPageComponentProvider,\n} from '@acorex-platform/framework-client/layout/components';\nimport { Injectable } from '@angular/core';\nimport { LANDING_PAGE_DESIGNER_PAGE_COMPONENT_KEY } from '@acorex-platform/module-app-builder-client/contracts';\n\n@Injectable()\nexport class AXMLandingPageDesignerPageComponentProvider implements AXPPageComponentProvider {\n async components(): Promise<AXPPageComponentDefinition[]> {\n return [\n {\n key: LANDING_PAGE_DESIGNER_PAGE_COMPONENT_KEY,\n loader: () =>\n import('./landing-page-designer-page.component').then((m) => m.AXMLandingPageDesignerPageComponent),\n },\n ];\n }\n}\n","import { AXPDesignerConnector, AXPLayoutDesignerComponent } from '@acorex-platform/framework-client/layout/designer';\nimport { AXPWidgetCoreModule } from '@acorex-platform/framework-client/layout/widget-core';\nimport { AXPWidgetsModule } from '@acorex-platform/framework-client/layout/widgets';\nimport { Component, inject, signal, ChangeDetectionStrategy } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { AXMLandingPageDesignerConnector } from './landing-page-designer-connector.service';\n\n@Component({\n template: `<axp-layout-designer [id]=\"pageId()\" [strategy]=\"strategy()\" />`,\n imports: [AXPLayoutDesignerComponent, AXPWidgetCoreModule, AXPWidgetsModule],\n changeDetection: ChangeDetectionStrategy.Eager,\n providers: [{ provide: AXPDesignerConnector, useClass: AXMLandingPageDesignerConnector }],\n})\nexport class AXMLandingPageDesignerRoutePage {\n private readonly route = inject(ActivatedRoute);\n protected pageId = signal<string | null>(this.route.snapshot.queryParams['id'] ?? null);\n protected strategy = signal<string | null>(this.route.snapshot.queryParams['strategy'] ?? 'Connector');\n\n ngAfterViewInit(): void {\n document.querySelector('html')?.classList.remove('ax-dark');\n }\n}\n","import { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';\nimport { inject, Injectable } from '@angular/core';\nimport {\n AXMLandingPageEntityModel,\n AXMLandingPageStatuses,\n RootConfig,\n} from '@acorex-platform/module-app-builder-client/contracts';\n\n@Injectable({ providedIn: 'root' })\nexport class AXMLandingPageResolveService {\n private readonly pageEntity = inject(AXPEntityService)\n .withEntity(RootConfig.module.name, RootConfig.entities.landingPage.name)\n .data<any, any>();\n\n async bySlug(slug: string): Promise<AXMLandingPageEntityModel | null> {\n const result = await this.pageEntity.query({\n skip: 0,\n take: 1,\n filter: {\n logic: 'and',\n filters: [\n { field: 'slug', operator: { type: 'equal' }, value: slug },\n { field: 'status', operator: { type: 'equal' }, value: AXMLandingPageStatuses.Published.id },\n ],\n },\n } as any);\n return (result?.items?.[0] as AXMLandingPageEntityModel) ?? null;\n }\n\n async byCategoryAndSlug(\n categorySlug: string,\n pageSlug: string,\n ): Promise<AXMLandingPageEntityModel | null> {\n const result = await this.pageEntity.query({\n skip: 0,\n take: 1,\n filter: {\n logic: 'and',\n filters: [\n { field: 'slug', operator: { type: 'equal' }, value: pageSlug },\n { field: 'status', operator: { type: 'equal' }, value: AXMLandingPageStatuses.Published.id },\n { field: 'category.slug', operator: { type: 'equal' }, value: categorySlug },\n ],\n },\n } as any);\n return (result?.items?.[0] as AXMLandingPageEntityModel) ?? null;\n }\n\n async homePage(): Promise<AXMLandingPageEntityModel | null> {\n const result = await this.pageEntity.query({\n skip: 0,\n take: 1,\n filter: {\n logic: 'and',\n filters: [\n { field: 'isHome', operator: { type: 'equal' }, value: true },\n { field: 'status', operator: { type: 'equal' }, value: AXMLandingPageStatuses.Published.id },\n ],\n },\n } as any);\n return (result?.items?.[0] as AXMLandingPageEntityModel) ?? null;\n }\n\n async listPublished(): Promise<AXMLandingPageEntityModel[]> {\n const result = await this.pageEntity.query({\n skip: 0,\n take: 100,\n filter: {\n logic: 'and',\n filters: [{ field: 'status', operator: { type: 'equal' }, value: AXMLandingPageStatuses.Published.id }],\n },\n sort: [{ name: 'title', dir: 'asc' }],\n } as any);\n return (result?.items as AXMLandingPageEntityModel[]) ?? [];\n }\n}\n","import type { AXPWidgetNode } from '@acorex-platform/framework-shared/core';\nimport { AXPWidgetsCatalog } from '@acorex-platform/framework-shared/core';\nimport { AXPWidgetCoreModule } from '@acorex-platform/framework-client/layout/widget-core';\nimport { CommonModule } from '@angular/common';\nimport { Component, computed, inject, OnInit, signal, ChangeDetectionStrategy } from '@angular/core';\nimport { ActivatedRoute, RouterLink } from '@angular/router';\nimport { AXMLandingPageEntityModel } from '@acorex-platform/module-app-builder-client/contracts';\nimport { AXMLandingPageResolveService } from './landing-page-resolve.service';\n\n@Component({\n selector: 'axm-landing-viewer-page',\n imports: [CommonModule, AXPWidgetCoreModule, RouterLink],\n template: `\n @if (loading()) {\n <div class=\"axm-landing-viewer__state\">Loading…</div>\n } @else if (notFound()) {\n <div class=\"axm-landing-viewer__state\">\n <h1>Page not found</h1>\n <p>This landing page is unavailable or not published.</p>\n <a routerLink=\"/landing\">Back to landing</a>\n </div>\n } @else if (indexMode()) {\n <div class=\"axm-landing-viewer__index\">\n <h1>Landing pages</h1>\n <ul>\n @for (page of indexPages(); track page.id) {\n <li>\n <a [routerLink]=\"pageLink(page)\">{{ page.title }}</a>\n </li>\n }\n </ul>\n </div>\n } @else {\n <axp-widgets-container>\n <ng-container axp-widget-renderer [node]=\"currentPage()\" [mode]=\"'view'\"></ng-container>\n </axp-widgets-container>\n }\n `,\n changeDetection: ChangeDetectionStrategy.Eager,\n styles: [\n `\n :host {\n display: block;\n min-height: 100vh;\n }\n .axm-landing-viewer__state,\n .axm-landing-viewer__index {\n max-width: 48rem;\n margin: 3rem auto;\n padding: 1.5rem;\n font-family: system-ui, sans-serif;\n }\n .axm-landing-viewer__index ul {\n list-style: none;\n padding: 0;\n }\n .axm-landing-viewer__index li {\n margin: 0.75rem 0;\n }\n `,\n ],\n})\nexport class AXMLandingViewerPage implements OnInit {\n private readonly route = inject(ActivatedRoute);\n private readonly resolveService = inject(AXMLandingPageResolveService);\n\n protected loading = signal(true);\n protected notFound = signal(false);\n protected indexMode = signal(false);\n protected indexPages = signal<AXMLandingPageEntityModel[]>([]);\n protected page = signal<AXMLandingPageEntityModel | null>(null);\n\n private readonly document = signal<AXPWidgetNode>({ type: AXPWidgetsCatalog.document } as AXPWidgetNode);\n\n protected readonly currentPage = computed(() => {\n return (\n this.document().children?.[0] ?? ({ type: AXPWidgetsCatalog.pageLayout } as AXPWidgetNode)\n );\n });\n\n async ngOnInit(): Promise<void> {\n document.querySelector('html')?.classList.remove('ax-dark');\n const categorySlug = this.route.snapshot.paramMap.get('categorySlug');\n const slug = this.route.snapshot.paramMap.get('slug');\n\n try {\n if (!slug && !categorySlug) {\n const home = await this.resolveService.homePage();\n if (home) {\n this.applyPage(home);\n return;\n }\n const pages = await this.resolveService.listPublished();\n this.indexPages.set(pages);\n this.indexMode.set(true);\n return;\n }\n\n let resolved: AXMLandingPageEntityModel | null = null;\n if (categorySlug && slug) {\n resolved = await this.resolveService.byCategoryAndSlug(categorySlug, slug);\n } else if (slug) {\n resolved = await this.resolveService.bySlug(slug);\n }\n\n if (!resolved) {\n this.notFound.set(true);\n return;\n }\n this.applyPage(resolved);\n } catch {\n this.notFound.set(true);\n } finally {\n this.loading.set(false);\n }\n }\n\n protected pageLink(page: AXMLandingPageEntityModel): string[] {\n if (page.category?.slug) {\n return ['/landing', page.category.slug, page.slug!];\n }\n return ['/landing', page.slug!];\n }\n\n private applyPage(page: AXMLandingPageEntityModel): void {\n this.page.set(page);\n if (page.content) {\n try {\n const parsed = JSON.parse(page.content) as AXPWidgetNode;\n this.document.set(parsed);\n } catch {\n this.document.set({ type: AXPWidgetsCatalog.document } as AXPWidgetNode);\n }\n }\n }\n}\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-app-builder-client.mjs","sources":["../../../../libs/modules/app-builder/client/src/lib/manifest.ts","../../../../libs/modules/app-builder/client/src/lib/menu.provider.ts","../../../../libs/modules/app-builder/client/src/lib/permission-definition.provider.ts","../../../../libs/modules/app-builder/client/src/lib/app-builder.module.ts","../../../../libs/modules/app-builder/client/src/lib/features/landing-page-designer/landing-page-designer-connector.service.ts","../../../../libs/modules/app-builder/client/src/lib/features/landing-page-designer/landing-page-designer-page.component.ts","../../../../libs/modules/app-builder/client/src/lib/features/landing-page-designer/landing-page-designer-page-component.provider.ts","../../../../libs/modules/app-builder/client/src/lib/features/landing-page-designer/landing-page-designer-route.page.ts","../../../../libs/modules/app-builder/client/src/lib/features/landing-viewer/landing-page-resolve.service.ts","../../../../libs/modules/app-builder/client/src/lib/features/landing-viewer/landing-viewer.page.ts","../../../../libs/modules/app-builder/client/src/acorex-platform-module-app-builder-client.ts"],"sourcesContent":["import { AXPModuleManifest } from '@acorex-platform/framework-client/core';\nimport { RootConfig } from '@acorex-platform/module-app-builder-client/contracts';\n\nexport const AppBuilderManifest: 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};\n","import { AXPCommonMenuKeys } from '@acorex-platform/module-common-client/contracts';\nimport { AXPMenuProvider, AXPMenuProviderContext } from '@acorex-platform/framework-client/common';\nimport { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';\nimport { Injectable, inject } from '@angular/core';\nimport {\n AXMAppBuilderMenuKeys,\n RootConfig,\n} from '@acorex-platform/module-app-builder-client/contracts';\n\n@Injectable()\nexport class AXMMenuProvider implements AXPMenuProvider {\n private entityService = inject(AXPEntityService);\n\n async provide(context: AXPMenuProviderContext): Promise<void> {\n const module = RootConfig.module;\n\n const contentMenu = context.find(AXPCommonMenuKeys.Content);\n if (!contentMenu.exists) {\n context.find(AXPCommonMenuKeys.Administration).addItems([\n {\n name: AXPCommonMenuKeys.Content,\n priority: 10,\n text: '@general:menus.content.title',\n icon: 'fa-light fa-paint-brush',\n type: 'menu',\n children: [],\n },\n ]);\n }\n\n context.find(AXPCommonMenuKeys.Content).addItems([\n {\n name: AXMAppBuilderMenuKeys.LandingPages,\n text: RootConfig.entities.landingPage.titlePlural,\n path: this.entityService.createPath(module.name, RootConfig.entities.landingPage.name),\n icon: RootConfig.entities.landingPage.icon,\n priority: 20,\n policy: {\n features: [module.name],\n },\n },\n {\n name: AXMAppBuilderMenuKeys.LandingPageCategories,\n text: RootConfig.entities.landingPageCategory.titlePlural,\n path: this.entityService.createPath(module.name, RootConfig.entities.landingPageCategory.name),\n icon: RootConfig.entities.landingPageCategory.icon,\n priority: 21,\n policy: {\n features: [module.name],\n },\n },\n ]);\n }\n}\n","//#region ---- Imports ----\n\nimport {\n AXPPermissionDefinitionProvider,\n AXPPermissionDefinitionProviderContext,\n} from '@acorex-platform/framework-client/auth';\nimport {\n AXPCommonPermissionGroupKeys\n} from '@acorex-platform/module-common-client/contracts';\nimport {\n AXPApplicationsPlatformPermissionKeys\n} from '@acorex-platform/module-app-builder-client/contracts';\n\nimport { Injectable } from '@angular/core';\n\n//#endregion\n\n//#region ---- Permission Definition Provider ----\n\n/**\n * Registers MaintainLandingPages under Applications & Platform.\n */\n@Injectable()\nexport class AXMPermissionDefinitionProvider implements AXPPermissionDefinitionProvider {\n async define(context: AXPPermissionDefinitionProviderContext): Promise<void> {\n const keys = AXPApplicationsPlatformPermissionKeys;\n const groups = AXPCommonPermissionGroupKeys;\n const P = '@common:applications-platform.permissions';\n const G = '@common:permission-groups';\n\n context.addGroup(groups.ApplicationsPlatform.Root, `${G}.applications-platform.title`, `${G}.applications-platform.description`, { order: 110 });\n\n context\n .addGroup(\n groups.ApplicationsPlatform.Applications,\n `${G}.applications-platform-applications.title`,\n `${G}.applications-platform-applications.description`,\n { parent: groups.ApplicationsPlatform.Root, order: 10 },\n )\n .addPermission(\n keys.MaintainLandingPages,\n `${P}.maintain-landing-pages.title`,\n `${P}.maintain-landing-pages.description`,\n { modules: ['AppBuilder'], requiredFeatures: ['AppBuilder'] },\n )\n .endPermission()\n .endGroup();\n }\n}\n\n//#endregion\n","import { AXP_MODULE_MANIFEST_PROVIDER, provideLazyProvider } from '@acorex-platform/framework-client/core';\nimport { AXP_MENU_PROVIDER } from '@acorex-platform/framework-client/common';\nimport { AXP_PERMISSION_DEFINITION_PROVIDER } from '@acorex-platform/framework-client/auth';\nimport { AXP_PAGE_COMPONENT_PROVIDER } from '@acorex-platform/framework-client/layout/components';\nimport { AXPWidgetCoreModule } from '@acorex-platform/framework-client/layout/widget-core';\nimport { AXPWidgetsModule } from '@acorex-platform/framework-client/layout/widgets';\nimport { NgModule } from '@angular/core';\nimport { ROUTES, Routes } from '@angular/router';\nimport { AppBuilderManifest } from './manifest';\n\nimport { AXMMenuProvider } from './menu.provider';\nimport { AXMPermissionDefinitionProvider } from './permission-definition.provider';\n\nfunction routesFactory(): Routes {\n return [\n {\n path: 'landing',\n children: [\n {\n path: '',\n loadComponent: () =>\n import('./features/landing-viewer').then((m) => m.AXMLandingViewerPage),\n },\n {\n path: ':slug',\n loadComponent: () =>\n import('./features/landing-viewer').then((m) => m.AXMLandingViewerPage),\n },\n {\n path: ':categorySlug/:slug',\n loadComponent: () =>\n import('./features/landing-viewer').then((m) => m.AXMLandingViewerPage),\n },\n ],\n },\n {\n path: 'app-builder',\n children: [\n {\n path: 'designer',\n loadComponent: () =>\n import('./features/landing-page-designer').then((m) => m.AXMLandingPageDesignerRoutePage),\n },\n ],\n },\n ];\n}\n\n@NgModule({\n imports: [AXPWidgetsModule, AXPWidgetCoreModule],\n providers: [\n {\n provide: AXP_MODULE_MANIFEST_PROVIDER,\n useValue: AppBuilderManifest,\n multi: true,\n },\n {\n provide: AXP_PERMISSION_DEFINITION_PROVIDER,\n useClass: AXMPermissionDefinitionProvider,\n multi: true,\n },\n {\n provide: AXP_MENU_PROVIDER,\n useClass: AXMMenuProvider,\n multi: true,\n },\n \n {\n provide: ROUTES,\n multi: true,\n useFactory: routesFactory,\n },\n provideLazyProvider(AXP_PAGE_COMPONENT_PROVIDER, () =>\n import('./features/landing-page-designer').then(\n (m) => m.AXMLandingPageDesignerPageComponentProvider,\n ),\n ),\n ],\n})\nexport class AXMAppBuilderModule {}\n","import {\n AXPDesignerConnector,\n AXPDesignerContent,\n} from '@acorex-platform/framework-client/layout/designer';\nimport { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';\nimport { AXPCommandService } from '@acorex-platform/framework-client/runtime';\nimport { inject, Injectable } from '@angular/core';\nimport { RootConfig } from '@acorex-platform/module-app-builder-client/contracts';\nimport { AXMLandingPageStatuses } from '@acorex-platform/module-app-builder-client/contracts';\n\n@Injectable()\nexport class AXMLandingPageDesignerConnector extends AXPDesignerConnector {\n private readonly commandService = inject(AXPCommandService);\n private readonly entityService = inject(AXPEntityService);\n private readonly pageEntity = this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.landingPage.name)\n .data<any, any>();\n\n public override async save(id: string, content: AXPDesignerContent): Promise<boolean> {\n const item = await this.pageEntity.byKey(id);\n if (!item) {\n throw new Error('Invalid landing page id');\n }\n await this.pageEntity.update(id, { content: content.json });\n return true;\n }\n\n public override async saveAs(content: AXPDesignerContent): Promise<boolean> {\n const entityKey = `${RootConfig.module.name}.${RootConfig.entities.landingPage.name}`;\n const slug = `page-${Date.now().toString(36)}`;\n const result = await this.commandService.execute('Entity:Create', {\n entity: entityKey,\n entityInfo: {\n name: RootConfig.entities.landingPage.name,\n module: RootConfig.module.name,\n title: RootConfig.entities.landingPage.title,\n },\n data: {\n title: slug,\n slug,\n status: AXMLandingPageStatuses.Draft.id,\n content: content.json,\n isHome: false,\n },\n options: {\n process: {\n redirect: false,\n },\n },\n \n });\n return !!result?.success;\n }\n\n public override async load(id: string): Promise<string | null> {\n const item = await this.pageEntity.byKey(id);\n if (!item) {\n throw new Error('Invalid landing page id');\n }\n return item.content ?? null;\n }\n}\n","import { AXPDesignerConnector, AXPLayoutDesignerComponent } from '@acorex-platform/framework-client/layout/designer';\nimport { AXPWidgetCoreModule } from '@acorex-platform/framework-client/layout/widget-core';\nimport { AXPWidgetsModule } from '@acorex-platform/framework-client/layout/widgets';\nimport { Component, computed, input, ViewEncapsulation, ChangeDetectionStrategy } from '@angular/core';\nimport { AXMLandingPageDesignerConnector } from './landing-page-designer-connector.service';\n\n@Component({\n selector: 'axm-landing-page-designer-page',\n template: `\n @if (pageId()) {\n <axp-layout-designer [id]=\"pageId()\" [strategy]=\"'Connector'\" />\n }\n `,\n encapsulation: ViewEncapsulation.None,\n styles: [\n `\n :host {\n display: block;\n height: 100%;\n min-height: 70vh;\n }\n :host axp-layout-designer {\n display: block;\n height: 100%;\n min-height: 70vh;\n }\n `,\n ],\n imports: [AXPLayoutDesignerComponent, AXPWidgetCoreModule, AXPWidgetsModule],\n changeDetection: ChangeDetectionStrategy.Eager,\n providers: [{ provide: AXPDesignerConnector, useClass: AXMLandingPageDesignerConnector }],\n})\nexport class AXMLandingPageDesignerPageComponent {\n rootContext = input<Record<string, unknown>>();\n pageConfig = input<Record<string, unknown>>();\n\n protected pageId = computed(() => {\n const id = this.rootContext()?.['id'];\n return id != null && String(id).length > 0 ? String(id) : null;\n });\n}\n","import {\n AXPPageComponentDefinition,\n AXPPageComponentProvider,\n} from '@acorex-platform/framework-client/layout/components';\nimport { Injectable } from '@angular/core';\nimport { LANDING_PAGE_DESIGNER_PAGE_COMPONENT_KEY } from '@acorex-platform/module-app-builder-client/contracts';\n\n@Injectable()\nexport class AXMLandingPageDesignerPageComponentProvider implements AXPPageComponentProvider {\n async components(): Promise<AXPPageComponentDefinition[]> {\n return [\n {\n key: LANDING_PAGE_DESIGNER_PAGE_COMPONENT_KEY,\n loader: () =>\n import('./landing-page-designer-page.component').then((m) => m.AXMLandingPageDesignerPageComponent),\n },\n ];\n }\n}\n","import { AXPDesignerConnector, AXPLayoutDesignerComponent } from '@acorex-platform/framework-client/layout/designer';\nimport { AXPWidgetCoreModule } from '@acorex-platform/framework-client/layout/widget-core';\nimport { AXPWidgetsModule } from '@acorex-platform/framework-client/layout/widgets';\nimport { Component, inject, signal, ChangeDetectionStrategy } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { AXMLandingPageDesignerConnector } from './landing-page-designer-connector.service';\n\n@Component({\n template: `<axp-layout-designer [id]=\"pageId()\" [strategy]=\"strategy()\" />`,\n imports: [AXPLayoutDesignerComponent, AXPWidgetCoreModule, AXPWidgetsModule],\n changeDetection: ChangeDetectionStrategy.Eager,\n providers: [{ provide: AXPDesignerConnector, useClass: AXMLandingPageDesignerConnector }],\n})\nexport class AXMLandingPageDesignerRoutePage {\n private readonly route = inject(ActivatedRoute);\n protected pageId = signal<string | null>(this.route.snapshot.queryParams['id'] ?? null);\n protected strategy = signal<string | null>(this.route.snapshot.queryParams['strategy'] ?? 'Connector');\n\n ngAfterViewInit(): void {\n document.querySelector('html')?.classList.remove('ax-dark');\n }\n}\n","import { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';\nimport { inject, Injectable } from '@angular/core';\nimport {\n AXMLandingPageEntityModel,\n AXMLandingPageStatuses,\n RootConfig,\n} from '@acorex-platform/module-app-builder-client/contracts';\n\n@Injectable({ providedIn: 'root' })\nexport class AXMLandingPageResolveService {\n private readonly pageEntity = inject(AXPEntityService)\n .withEntity(RootConfig.module.name, RootConfig.entities.landingPage.name)\n .data<any, any>();\n\n async bySlug(slug: string): Promise<AXMLandingPageEntityModel | null> {\n const result = await this.pageEntity.query({\n skip: 0,\n take: 1,\n filter: {\n logic: 'and',\n filters: [\n { field: 'slug', operator: { type: 'equal' }, value: slug },\n { field: 'status', operator: { type: 'equal' }, value: AXMLandingPageStatuses.Published.id },\n ],\n },\n } as any);\n return (result?.items?.[0] as AXMLandingPageEntityModel) ?? null;\n }\n\n async byCategoryAndSlug(\n categorySlug: string,\n pageSlug: string,\n ): Promise<AXMLandingPageEntityModel | null> {\n const result = await this.pageEntity.query({\n skip: 0,\n take: 1,\n filter: {\n logic: 'and',\n filters: [\n { field: 'slug', operator: { type: 'equal' }, value: pageSlug },\n { field: 'status', operator: { type: 'equal' }, value: AXMLandingPageStatuses.Published.id },\n { field: 'category.slug', operator: { type: 'equal' }, value: categorySlug },\n ],\n },\n } as any);\n return (result?.items?.[0] as AXMLandingPageEntityModel) ?? null;\n }\n\n async homePage(): Promise<AXMLandingPageEntityModel | null> {\n const result = await this.pageEntity.query({\n skip: 0,\n take: 1,\n filter: {\n logic: 'and',\n filters: [\n { field: 'isHome', operator: { type: 'equal' }, value: true },\n { field: 'status', operator: { type: 'equal' }, value: AXMLandingPageStatuses.Published.id },\n ],\n },\n } as any);\n return (result?.items?.[0] as AXMLandingPageEntityModel) ?? null;\n }\n\n async listPublished(): Promise<AXMLandingPageEntityModel[]> {\n const result = await this.pageEntity.query({\n skip: 0,\n take: 100,\n filter: {\n logic: 'and',\n filters: [{ field: 'status', operator: { type: 'equal' }, value: AXMLandingPageStatuses.Published.id }],\n },\n sort: [{ name: 'title', dir: 'asc' }],\n } as any);\n return (result?.items as AXMLandingPageEntityModel[]) ?? [];\n }\n}\n","import type { AXPWidgetNode } from '@acorex-platform/framework-shared/core';\nimport { AXPWidgetsCatalog } from '@acorex-platform/framework-shared/core';\nimport { AXPWidgetCoreModule } from '@acorex-platform/framework-client/layout/widget-core';\nimport { CommonModule } from '@angular/common';\nimport { Component, computed, inject, OnInit, signal, ChangeDetectionStrategy } from '@angular/core';\nimport { ActivatedRoute, RouterLink } from '@angular/router';\nimport { AXMLandingPageEntityModel } from '@acorex-platform/module-app-builder-client/contracts';\nimport { AXMLandingPageResolveService } from './landing-page-resolve.service';\n\n@Component({\n selector: 'axm-landing-viewer-page',\n imports: [CommonModule, AXPWidgetCoreModule, RouterLink],\n template: `\n @if (loading()) {\n <div class=\"axm-landing-viewer__state\">Loading…</div>\n } @else if (notFound()) {\n <div class=\"axm-landing-viewer__state\">\n <h1>Page not found</h1>\n <p>This landing page is unavailable or not published.</p>\n <a routerLink=\"/landing\">Back to landing</a>\n </div>\n } @else if (indexMode()) {\n <div class=\"axm-landing-viewer__index\">\n <h1>Landing pages</h1>\n <ul>\n @for (page of indexPages(); track page.id) {\n <li>\n <a [routerLink]=\"pageLink(page)\">{{ page.title }}</a>\n </li>\n }\n </ul>\n </div>\n } @else {\n <axp-widgets-container>\n <ng-container axp-widget-renderer [node]=\"currentPage()\" [mode]=\"'view'\"></ng-container>\n </axp-widgets-container>\n }\n `,\n changeDetection: ChangeDetectionStrategy.Eager,\n styles: [\n `\n :host {\n display: block;\n min-height: 100vh;\n }\n .axm-landing-viewer__state,\n .axm-landing-viewer__index {\n max-width: 48rem;\n margin: 3rem auto;\n padding: 1.5rem;\n font-family: system-ui, sans-serif;\n }\n .axm-landing-viewer__index ul {\n list-style: none;\n padding: 0;\n }\n .axm-landing-viewer__index li {\n margin: 0.75rem 0;\n }\n `,\n ],\n})\nexport class AXMLandingViewerPage implements OnInit {\n private readonly route = inject(ActivatedRoute);\n private readonly resolveService = inject(AXMLandingPageResolveService);\n\n protected loading = signal(true);\n protected notFound = signal(false);\n protected indexMode = signal(false);\n protected indexPages = signal<AXMLandingPageEntityModel[]>([]);\n protected page = signal<AXMLandingPageEntityModel | null>(null);\n\n private readonly document = signal<AXPWidgetNode>({ type: AXPWidgetsCatalog.document } as AXPWidgetNode);\n\n protected readonly currentPage = computed(() => {\n return (\n this.document().children?.[0] ?? ({ type: AXPWidgetsCatalog.pageLayout } as AXPWidgetNode)\n );\n });\n\n async ngOnInit(): Promise<void> {\n document.querySelector('html')?.classList.remove('ax-dark');\n const categorySlug = this.route.snapshot.paramMap.get('categorySlug');\n const slug = this.route.snapshot.paramMap.get('slug');\n\n try {\n if (!slug && !categorySlug) {\n const home = await this.resolveService.homePage();\n if (home) {\n this.applyPage(home);\n return;\n }\n const pages = await this.resolveService.listPublished();\n this.indexPages.set(pages);\n this.indexMode.set(true);\n return;\n }\n\n let resolved: AXMLandingPageEntityModel | null = null;\n if (categorySlug && slug) {\n resolved = await this.resolveService.byCategoryAndSlug(categorySlug, slug);\n } else if (slug) {\n resolved = await this.resolveService.bySlug(slug);\n }\n\n if (!resolved) {\n this.notFound.set(true);\n return;\n }\n this.applyPage(resolved);\n } catch {\n this.notFound.set(true);\n } finally {\n this.loading.set(false);\n }\n }\n\n protected pageLink(page: AXMLandingPageEntityModel): string[] {\n if (page.category?.slug) {\n return ['/landing', page.category.slug, page.slug!];\n }\n return ['/landing', page.slug!];\n }\n\n private applyPage(page: AXMLandingPageEntityModel): void {\n this.page.set(page);\n if (page.content) {\n try {\n const parsed = JSON.parse(page.content) as AXPWidgetNode;\n this.document.set(parsed);\n } catch {\n this.document.set({ type: AXPWidgetsCatalog.document } as AXPWidgetNode);\n }\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@acorex-platform/module-app-builder-client",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.37",
|
|
4
4
|
"sideEffects": false,
|
|
5
5
|
"peerDependencies": {
|
|
6
6
|
"@angular/common": "^21.0.0 || ^22.0.0",
|
|
@@ -22,6 +22,22 @@
|
|
|
22
22
|
"./contracts": {
|
|
23
23
|
"types": "./types/acorex-platform-module-app-builder-client-contracts.d.ts",
|
|
24
24
|
"default": "./fesm2022/acorex-platform-module-app-builder-client-contracts.mjs"
|
|
25
|
+
},
|
|
26
|
+
"./contracts/entities/landing-page": {
|
|
27
|
+
"types": "./types/acorex-platform-module-app-builder-client-contracts-entities-landing-page.d.ts",
|
|
28
|
+
"default": "./fesm2022/acorex-platform-module-app-builder-client-contracts-entities-landing-page.mjs"
|
|
29
|
+
},
|
|
30
|
+
"./contracts/entities/landing-page-category": {
|
|
31
|
+
"types": "./types/acorex-platform-module-app-builder-client-contracts-entities-landing-page-category.d.ts",
|
|
32
|
+
"default": "./fesm2022/acorex-platform-module-app-builder-client-contracts-entities-landing-page-category.mjs"
|
|
33
|
+
},
|
|
34
|
+
"./contracts/entity-catalog": {
|
|
35
|
+
"types": "./types/acorex-platform-module-app-builder-client-contracts-entity-catalog.d.ts",
|
|
36
|
+
"default": "./fesm2022/acorex-platform-module-app-builder-client-contracts-entity-catalog.mjs"
|
|
37
|
+
},
|
|
38
|
+
"./local-entities": {
|
|
39
|
+
"types": "./types/acorex-platform-module-app-builder-client-local-entities.d.ts",
|
|
40
|
+
"default": "./fesm2022/acorex-platform-module-app-builder-client-local-entities.mjs"
|
|
25
41
|
}
|
|
26
42
|
},
|
|
27
43
|
"type": "module"
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { AXPLocalEntityCatalog } from '@acorex-platform/framework-shared/entity';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Lazy per-entity layout factories. Do not re-export from the contracts barrel
|
|
5
|
+
* so RootConfig imports stay light. Server seed and client `local-entities`
|
|
6
|
+
* consume this catalog explicitly.
|
|
7
|
+
*/
|
|
8
|
+
declare const appBuilderLocalEntityCatalog: AXPLocalEntityCatalog;
|
|
9
|
+
|
|
10
|
+
export { appBuilderLocalEntityCatalog };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import * as _angular_core from '@angular/core';
|
|
2
|
+
export { appBuilderLocalEntityCatalog } from '@acorex-platform/module-app-builder-client/contracts/entity-catalog';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Registers app-builder layouts on the client from packaged factories.
|
|
6
|
+
* Each `import()` targets a secondary entry so unused entities stay out of the
|
|
7
|
+
* bundle. Do not add this to the demo app; demo continues to load layouts via
|
|
8
|
+
* `Domain:GetEntityLayout`.
|
|
9
|
+
*/
|
|
10
|
+
declare function provideAppBuilderLocalEntities(): _angular_core.EnvironmentProviders;
|
|
11
|
+
|
|
12
|
+
export { provideAppBuilderLocalEntities };
|