diff --git a/packages/app/src/cli/models/extensions/load-specifications.ts b/packages/app/src/cli/models/extensions/load-specifications.ts index b2f4c7d3a2..85d255daff 100644 --- a/packages/app/src/cli/models/extensions/load-specifications.ts +++ b/packages/app/src/cli/models/extensions/load-specifications.ts @@ -27,6 +27,7 @@ import uiExtensionSpec from './specifications/ui_extension.js' import webPixelSpec from './specifications/web_pixel_extension.js' import editorExtensionCollectionSpecification from './specifications/editor_extension_collection.js' import channelSpecificationSpec from './specifications/channel.js' +import orderAttributionConfigSpec from './specifications/order_attribution_config.js' import adminSpecificationSpec from './specifications/admin.js' const SORTED_CONFIGURATION_SPEC_IDENTIFIERS = [ @@ -80,6 +81,7 @@ function loadSpecifications() { webPixelSpec, editorExtensionCollectionSpecification, channelSpecificationSpec, + orderAttributionConfigSpec, ] return [...configModuleSpecs, ...moduleSpecs] as ExtensionSpecification[] diff --git a/packages/app/src/cli/models/extensions/specifications/order_attribution_config.ts b/packages/app/src/cli/models/extensions/specifications/order_attribution_config.ts new file mode 100644 index 0000000000..d2af493e27 --- /dev/null +++ b/packages/app/src/cli/models/extensions/specifications/order_attribution_config.ts @@ -0,0 +1,35 @@ +import {createContractBasedModuleSpecification} from '../specification.js' + +const ICONS_SUBDIRECTORY = 'icons' +const FILE_EXTENSIONS = ['svg'] + +const orderAttributionConfigSpec = createContractBasedModuleSpecification({ + identifier: 'order_attribution_config', + uidStrategy: 'single', + experience: 'extension', + clientSteps: [ + { + lifecycle: 'deploy', + steps: [ + { + id: 'copy-files', + name: 'Copy Files', + type: 'include_assets', + config: { + inclusions: [ + { + type: 'pattern', + baseDir: ICONS_SUBDIRECTORY, + destination: ICONS_SUBDIRECTORY, + include: FILE_EXTENSIONS.map((ext) => `**/*.${ext}`), + }, + ], + }, + }, + ], + }, + ], + appModuleFeatures: () => [], +}) + +export default orderAttributionConfigSpec