@o3r/dynamic-content
Version:
This module provides a mechanism to retrieve media and data depending on the host or a server specific url.
1 lines • 3.62 kB
Source Map (JSON)
{"version":3,"file":"o3r-dynamic-content-rules-engine.mjs","sources":["../../src/rules-engine/asset.interfaces.ts","../../src/rules-engine/asset.handler-action.ts","../../src/rules-engine/asset.rules-engine.module.ts","../../src/rules-engine/o3r-dynamic-content-rules-engine.ts"],"sourcesContent":["import type {\n RulesEngineAction,\n} from '@o3r/core';\n\n/** ActionUpdateAssetBlock */\nexport const RULES_ENGINE_ASSET_UPDATE_ACTION_TYPE = 'UPDATE_ASSET';\n\n/**\n * Content of action that updates asset\n */\nexport interface ActionUpdateAssetBlock extends RulesEngineAction {\n actionType: typeof RULES_ENGINE_ASSET_UPDATE_ACTION_TYPE;\n asset: string;\n value: string;\n}\n","import {\n inject,\n Injectable,\n} from '@angular/core';\nimport {\n Store,\n} from '@ngrx/store';\nimport type {\n RulesEngineActionHandler,\n} from '@o3r/core';\nimport {\n ActionUpdateAssetBlock,\n RULES_ENGINE_ASSET_UPDATE_ACTION_TYPE,\n} from './asset.interfaces';\nimport {\n AssetPathOverrideStore,\n setAssetPathOverride,\n} from '@o3r/dynamic-content';\n\n/**\n * Service to handle async Asset actions\n */\n@Injectable()\nexport class AssetRulesEngineActionHandler implements RulesEngineActionHandler<ActionUpdateAssetBlock> {\n private readonly store = inject<Store<AssetPathOverrideStore>>(Store);\n\n /** @inheritdoc */\n public readonly supportingActions = [RULES_ENGINE_ASSET_UPDATE_ACTION_TYPE] as const;\n\n /** @inheritdoc */\n public executeActions(actions: ActionUpdateAssetBlock[]): void | Promise<void> {\n const assetPathOverrides = actions.reduce<Record<string, string>>((acc, { asset, value }) => {\n acc[asset] = value;\n return acc;\n }, {});\n\n this.store.dispatch(setAssetPathOverride({ state: { assetPathOverrides } }));\n }\n}\n","import {\n NgModule,\n} from '@angular/core';\nimport {\n AssetRulesEngineActionHandler,\n} from './asset.handler-action';\nimport {\n AssetPathOverrideStoreModule,\n} from '@o3r/dynamic-content';\n\n@NgModule({\n imports: [\n AssetPathOverrideStoreModule\n ],\n providers: [\n AssetRulesEngineActionHandler\n ]\n})\nexport class AssetRulesEngineActionModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;;AAIA;AACO,MAAM,qCAAqC,GAAG;;ACcrD;;AAEG;MAEU,6BAA6B,CAAA;AAD1C,IAAA,WAAA,GAAA;AAEmB,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAgC,KAAK,CAAC;;AAGrD,QAAA,IAAA,CAAA,iBAAiB,GAAG,CAAC,qCAAqC,CAAU;AAWrF,IAAA;;AARQ,IAAA,cAAc,CAAC,OAAiC,EAAA;AACrD,QAAA,MAAM,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAyB,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,KAAI;AAC1F,YAAA,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK;AAClB,YAAA,OAAO,GAAG;QACZ,CAAC,EAAE,EAAE,CAAC;AAEN,QAAA,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,KAAK,EAAE,EAAE,kBAAkB,EAAE,EAAE,CAAC,CAAC;IAC9E;iIAdW,6BAA6B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;qIAA7B,6BAA6B,EAAA,CAAA,CAAA;;2FAA7B,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBADzC;;;MCJY,4BAA4B,CAAA;iIAA5B,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAA5B,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,4BAA4B,YANrC,4BAA4B,CAAA,EAAA,CAAA,CAAA;AAMnB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,4BAA4B,EAAA,SAAA,EAJ5B;YACT;AACD,SAAA,EAAA,OAAA,EAAA,CAJC,4BAA4B,CAAA,EAAA,CAAA,CAAA;;2FAMnB,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBARxC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE;wBACP;AACD,qBAAA;AACD,oBAAA,SAAS,EAAE;wBACT;AACD;AACF,iBAAA;;;ACjBD;;AAEG;;;;"}