@adobe/aio-commerce-lib-app 1.3.1 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/CHANGELOG.md +53 -0
  2. package/dist/cjs/actions/app-config.cjs +3 -3
  3. package/dist/cjs/actions/app-config.d.cts +1 -1
  4. package/dist/cjs/actions/config.cjs +31 -9
  5. package/dist/cjs/actions/installation.cjs +16 -13
  6. package/dist/cjs/actions/installation.d.cts +2 -2
  7. package/dist/cjs/actions/registration.cjs +41 -0
  8. package/dist/cjs/actions/registration.d.cts +33 -0
  9. package/dist/cjs/actions/scope-tree.cjs +5 -4
  10. package/dist/cjs/admin-ui-sdk-BiSopnKI.d.cts +665 -0
  11. package/dist/cjs/{app-DcQMhW2N.d.cts → app-C6kImBl7.d.cts} +242 -16
  12. package/dist/cjs/chunk-DS2yp5vX.cjs +48 -0
  13. package/dist/cjs/commands/index.cjs +582 -321
  14. package/dist/cjs/commands/templates/admin-ui-sdk/registration.js.template +20 -0
  15. package/dist/cjs/config/index.cjs +4 -3
  16. package/dist/cjs/config/index.d.cts +558 -62
  17. package/dist/cjs/{config-BppBKCFj.cjs → config-ct-qMOGj.cjs} +56 -25
  18. package/dist/cjs/{error-Dn7ool6k.cjs → error-C5LNOZ4f.cjs} +1 -1
  19. package/dist/cjs/{index-BVwQk9bx.d.cts → index-B5WKJ3hJ.d.cts} +20 -174
  20. package/dist/cjs/{logging-4s36JTiN.cjs → logging-BTevALnL.cjs} +2 -2
  21. package/dist/cjs/management/index.cjs +1 -1
  22. package/dist/cjs/management/index.d.cts +3 -2
  23. package/dist/cjs/{management-C6xG5bfl.cjs → management-D1QXg4YU.cjs} +128 -75
  24. package/dist/cjs/{router-KeQRduO3.cjs → router-CFErodHU.cjs} +2 -2
  25. package/dist/cjs/{schemas-nkIxa8sL.cjs → schemas-CukVpc19.cjs} +2 -34
  26. package/dist/cjs/step-CWYnKbga.d.cts +187 -0
  27. package/dist/cjs/{validate-CeUCT_7k.cjs → validate-b_bI4mDb.cjs} +4 -3
  28. package/dist/cjs/{webhooks-CLtDxwMa.cjs → webhooks-DS1BtgED.cjs} +157 -17
  29. package/dist/es/actions/app-config.d.mts +1 -1
  30. package/dist/es/actions/app-config.mjs +1 -1
  31. package/dist/es/actions/config.mjs +28 -7
  32. package/dist/es/actions/installation.d.mts +2 -2
  33. package/dist/es/actions/installation.mjs +12 -10
  34. package/dist/es/actions/registration.d.mts +33 -0
  35. package/dist/es/actions/registration.mjs +39 -0
  36. package/dist/es/actions/scope-tree.mjs +1 -1
  37. package/dist/es/admin-ui-sdk-CCo2SWiL.d.mts +667 -0
  38. package/dist/es/{app-DJr-mN9d.d.mts → app-DcY6dJiQ.d.mts} +242 -16
  39. package/dist/es/commands/index.mjs +575 -316
  40. package/dist/es/commands/templates/admin-ui-sdk/registration.js.template +20 -0
  41. package/dist/es/config/index.d.mts +558 -62
  42. package/dist/es/config/index.mjs +4 -4
  43. package/dist/es/{config-BohwKkQS.mjs → config-DGPFTk6w.mjs} +51 -20
  44. package/dist/es/{index-BENO5T7n.d.mts → index-CCov0odd.d.mts} +20 -174
  45. package/dist/es/management/index.d.mts +3 -2
  46. package/dist/es/management/index.mjs +1 -1
  47. package/dist/es/{management-ByHvVJ12.mjs → management-CCsOfniv.mjs} +124 -71
  48. package/dist/es/step-0eI2x4C9.d.mts +187 -0
  49. package/dist/es/{validate-CqJdGzyZ.mjs → validate-Dn3lLTGj.mjs} +2 -2
  50. package/dist/es/{webhooks-CYo-pqbR.mjs → webhooks-Dhrkkip7.mjs} +155 -16
  51. package/package.json +15 -12
  52. /package/dist/cjs/commands/{generate/actions/templates → templates}/app-management/app-config.js.template +0 -0
  53. /package/dist/cjs/commands/{generate/actions/templates → templates}/app-management/custom-scripts.js.template +0 -0
  54. /package/dist/cjs/commands/{generate/actions/templates → templates}/app-management/installation.js.template +0 -0
  55. /package/dist/cjs/commands/{generate/actions/templates → templates}/business-configuration/config.js.template +0 -0
  56. /package/dist/cjs/commands/{generate/actions/templates → templates}/business-configuration/scope-tree.js.template +0 -0
  57. /package/dist/es/commands/{generate/actions/templates → templates}/app-management/app-config.js.template +0 -0
  58. /package/dist/es/commands/{generate/actions/templates → templates}/app-management/custom-scripts.js.template +0 -0
  59. /package/dist/es/commands/{generate/actions/templates → templates}/app-management/installation.js.template +0 -0
  60. /package/dist/es/commands/{generate/actions/templates → templates}/business-configuration/config.js.template +0 -0
  61. /package/dist/es/commands/{generate/actions/templates → templates}/business-configuration/scope-tree.js.template +0 -0
  62. /package/dist/es/{schemas-CVXHgUhv.mjs → schemas-DOcnD16x.mjs} +0 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,58 @@
1
1
  # @adobe/aio-commerce-lib-app
2
2
 
3
+ ## 1.5.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#345](https://github.com/adobe/aio-commerce-sdk/pull/345) [`38adb09`](https://github.com/adobe/aio-commerce-sdk/commit/38adb09e1e2bd1b8fa764ecc2e0d21ecc0071ca7) Thanks [@iivvaannxx](https://github.com/iivvaannxx)! - Drop Node 20 support (EOL April 2026).
8
+
9
+ ### Patch Changes
10
+
11
+ - Updated dependencies [[`38adb09`](https://github.com/adobe/aio-commerce-sdk/commit/38adb09e1e2bd1b8fa764ecc2e0d21ecc0071ca7)]:
12
+ - @adobe/aio-commerce-lib-api@1.2.0
13
+ - @adobe/aio-commerce-lib-auth@1.1.0
14
+ - @adobe/aio-commerce-lib-config@1.4.0
15
+ - @adobe/aio-commerce-lib-core@1.1.0
16
+ - @adobe/aio-commerce-lib-events@1.2.0
17
+ - @adobe/aio-commerce-lib-webhooks@1.1.0
18
+
19
+ ## 1.4.0
20
+
21
+ ### Minor Changes
22
+
23
+ - [#402](https://github.com/adobe/aio-commerce-sdk/pull/402) [`e824ef6`](https://github.com/adobe/aio-commerce-sdk/commit/e824ef6f0d1da56f95b6830966e4f05d8168545d) Thanks [@oshmyheliuk](https://github.com/oshmyheliuk)! - Add full Admin UI SDK support: generate the `commerce/backend-ui/1` registration action from `adminUiSdk.registration` config, covering menu items, mass actions, grid columns, view buttons, custom fees, and banner notifications.
24
+
25
+ - [#418](https://github.com/adobe/aio-commerce-sdk/pull/418) [`402948e`](https://github.com/adobe/aio-commerce-sdk/commit/402948eaeaba09ecd8397ed3b9b7ba1c8f6114c4) Thanks [@vinayrao2000](https://github.com/vinayrao2000)! - Support ability to filter configuration fields of applications by the Commerce environment where they are installed.
26
+
27
+ - [#392](https://github.com/adobe/aio-commerce-sdk/pull/392) [`9ccbbde`](https://github.com/adobe/aio-commerce-sdk/commit/9ccbbdeb7bfca645d1b2b5750b18f36a16f59d82) Thanks [@asalloum5](https://github.com/asalloum5)! - Support boolean field in PATCH config values
28
+
29
+ ### Patch Changes
30
+
31
+ - [#403](https://github.com/adobe/aio-commerce-sdk/pull/403) [`dd249cc`](https://github.com/adobe/aio-commerce-sdk/commit/dd249cca536e4a26ae6fff042e6e776f81dcc608) Thanks [@iivvaannxx](https://github.com/iivvaannxx)! - Improve error logging and fix an issue where the project root directory was not derived correctly in some situations.
32
+
33
+ - [#443](https://github.com/adobe/aio-commerce-sdk/pull/443) [`7cb6bb5`](https://github.com/adobe/aio-commerce-sdk/commit/7cb6bb59887a4f3109ace7078de0b3fc1f20c94c) Thanks [@obarcelonap](https://github.com/obarcelonap)! - Mark Admin UI SDK APIs as experimental.
34
+
35
+ - [#393](https://github.com/adobe/aio-commerce-sdk/pull/393) [`aeb0411`](https://github.com/adobe/aio-commerce-sdk/commit/aeb0411521c0cd8bc9e878beb160eeb92e98d090) Thanks [@oshmyheliuk](https://github.com/oshmyheliuk)! - Improve installation and uninstallation error messages: HTTP API errors from Commerce and Adobe IO Events now include the response body in the error message, making it clearer which entity failed and why.
36
+
37
+ - [#440](https://github.com/adobe/aio-commerce-sdk/pull/440) [`83879b6`](https://github.com/adobe/aio-commerce-sdk/commit/83879b64d399ce790842dfb21dad3fa34992c0d1) Thanks [@jcuerdo](https://github.com/jcuerdo)! - Installation now retries once on failure. The retry resumes from the failed step, preserving progress from the first attempt. When a retry was attempted, the final state (whether succeeded or failed) includes `metadata: { isRetry: true }`.
38
+
39
+ - [#444](https://github.com/adobe/aio-commerce-sdk/pull/444) [`6d61ce6`](https://github.com/adobe/aio-commerce-sdk/commit/6d61ce6182f19269c33bd92d63e9befcec1ff5ac) Thanks [@oshmyheliuk](https://github.com/oshmyheliuk)! - Fix event subscriptions failing with 400 when a Commerce event provider exists with the same instance ID but a stale provider ID from a previous installation.
40
+
41
+ Add character validation to provider and event label/description fields in the eventing schema, rejecting values with characters not accepted by the Adobe I/O Events API (valid characters: letters, numbers, spaces, underscores, hyphens, dots, colons, parentheses, commas, @, and /).
42
+
43
+ Add validation for at least one field requirement in the Commerce event `fields` arrays.
44
+
45
+ - [#405](https://github.com/adobe/aio-commerce-sdk/pull/405) [`775860b`](https://github.com/adobe/aio-commerce-sdk/commit/775860bdf654b2fedeffeaa328a110dfc10daa85) Thanks [@iivvaannxx](https://github.com/iivvaannxx)! - Fix hook and post-install scripts failing to resolve CLI binaries under pnpm and yarn. Generated commands now use `pnpm exec` / `yarn exec` instead of `pnpx` / `yarn dlx`, which bypass local `node_modules/.bin` resolution.
46
+
47
+ - [#403](https://github.com/adobe/aio-commerce-sdk/pull/403) [`dd249cc`](https://github.com/adobe/aio-commerce-sdk/commit/dd249cca536e4a26ae6fff042e6e776f81dcc608) Thanks [@iivvaannxx](https://github.com/iivvaannxx)! - Regenerate action source code during the `pre-app-build` hook.
48
+
49
+ - Updated dependencies [[`aa2ac1a`](https://github.com/adobe/aio-commerce-sdk/commit/aa2ac1a33df543c7f62675f1c920722969fc0a30), [`775860b`](https://github.com/adobe/aio-commerce-sdk/commit/775860bdf654b2fedeffeaa328a110dfc10daa85), [`402948e`](https://github.com/adobe/aio-commerce-sdk/commit/402948eaeaba09ecd8397ed3b9b7ba1c8f6114c4), [`aeb0411`](https://github.com/adobe/aio-commerce-sdk/commit/aeb0411521c0cd8bc9e878beb160eeb92e98d090), [`9ccbbde`](https://github.com/adobe/aio-commerce-sdk/commit/9ccbbdeb7bfca645d1b2b5750b18f36a16f59d82), [`3207ff2`](https://github.com/adobe/aio-commerce-sdk/commit/3207ff247b06c4889795d50f82e219eec70d6b16), [`dd249cc`](https://github.com/adobe/aio-commerce-sdk/commit/dd249cca536e4a26ae6fff042e6e776f81dcc608)]:
50
+ - @adobe/aio-commerce-lib-webhooks@1.0.0
51
+ - @adobe/aio-commerce-lib-config@1.3.0
52
+ - @adobe/aio-commerce-lib-auth@1.0.2
53
+ - @adobe/aio-commerce-lib-api@1.1.0
54
+ - @adobe/aio-commerce-lib-events@1.1.1
55
+
3
56
  ## 1.3.1
4
57
 
5
58
  ### Patch Changes
@@ -13,9 +13,9 @@
13
13
  */
14
14
 
15
15
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
16
- const require_schemas = require('../schemas-nkIxa8sL.cjs');
17
- const require_router = require('../router-KeQRduO3.cjs');
18
- const require_validate = require('../validate-CeUCT_7k.cjs');
16
+ const require_chunk = require('../chunk-DS2yp5vX.cjs');
17
+ const require_router = require('../router-CFErodHU.cjs');
18
+ const require_validate = require('../validate-b_bI4mDb.cjs');
19
19
  let _adobe_aio_commerce_lib_core_responses = require("@adobe/aio-commerce-lib-core/responses");
20
20
 
21
21
  //#region source/actions/app-config.ts
@@ -12,7 +12,7 @@
12
12
  * governing permissions and limitations under the License.
13
13
  */
14
14
 
15
- import { n as CommerceAppConfigOutputModel } from "../app-DcQMhW2N.cjs";
15
+ import { n as CommerceAppConfigOutputModel } from "../app-C6kImBl7.cjs";
16
16
  import * as _$_adobe_aio_commerce_lib_core_responses0 from "@adobe/aio-commerce-lib-core/responses";
17
17
  import { RuntimeActionParams } from "@adobe/aio-commerce-lib-core/params";
18
18
 
@@ -13,16 +13,29 @@
13
13
  */
14
14
 
15
15
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
16
- const require_schemas = require('../schemas-nkIxa8sL.cjs');
17
- const require_router = require('../router-KeQRduO3.cjs');
18
- const require_validate = require('../validate-CeUCT_7k.cjs');
16
+ const require_chunk = require('../chunk-DS2yp5vX.cjs');
17
+ const require_router = require('../router-CFErodHU.cjs');
18
+ const require_schemas = require('../schemas-CukVpc19.cjs');
19
+ const require_validate = require('../validate-b_bI4mDb.cjs');
19
20
  let _adobe_aio_commerce_lib_core_responses = require("@adobe/aio-commerce-lib-core/responses");
20
21
  let valibot = require("valibot");
21
- valibot = require_schemas.__toESM(valibot);
22
+ valibot = require_chunk.__toESM(valibot, 1);
22
23
  let _adobe_aio_commerce_lib_config = require("@adobe/aio-commerce-lib-config");
23
24
 
24
25
  //#region source/actions/config.ts
25
26
  const MASKED_PASSWORD_VALUE = "*****";
27
+ /** The set of valid Commerce environments a configuration field can be scoped to. */
28
+ const COMMERCE_ENVS = ["paas", "saas"];
29
+ /**
30
+ * Filters a business configuration schema to the fields applicable to the
31
+ * given Commerce environment. Fields without an `env` property apply to all
32
+ * environments and are always included.
33
+ * @param schema - The business configuration schema to filter.
34
+ * @param env - The Commerce environment to filter by.
35
+ */
36
+ function filterSchemaByEnv(schema, env) {
37
+ return schema.filter((field) => field.env === void 0 || field.env.includes(env));
38
+ }
26
39
  /**
27
40
  * Filters password fields from the configuration values.
28
41
  * @param schema - The schema to use to filter the values.
@@ -41,20 +54,25 @@ function filterPasswordFields(schema, values) {
41
54
  const router = new require_router.HttpActionRouter().use(require_router.logger());
42
55
  /** GET / - Retrieve configuration */
43
56
  router.get("/", {
44
- query: valibot.object({ scopeId: require_schemas.nonEmptyStringValueSchema("scopeId") }),
57
+ query: valibot.object({
58
+ scopeId: require_schemas.nonEmptyStringValueSchema("scopeId"),
59
+ commerceEnv: valibot.optional(valibot.picklist(COMMERCE_ENVS))
60
+ }),
45
61
  handler: async (req, ctx) => {
46
62
  const { logger, rawParams } = ctx;
47
63
  const configSchema = rawParams.configSchema;
48
64
  logger.debug("Validating configuration schema...");
49
65
  const validatedSchema = require_validate.validateCommerceAppConfigDomain(configSchema, "businessConfig.schema");
50
- (0, _adobe_aio_commerce_lib_config.initialize)({ schema: validatedSchema });
66
+ const env = req.query.commerceEnv;
67
+ const filteredSchema = env ? filterSchemaByEnv(validatedSchema, env) : validatedSchema;
68
+ (0, _adobe_aio_commerce_lib_config.initialize)({ schema: filteredSchema });
51
69
  const { scopeId } = req.query;
52
70
  logger.debug(`Retrieving configuration with scope id: ${scopeId}`);
53
71
  const appConfiguration = await (0, _adobe_aio_commerce_lib_config.getConfiguration)((0, _adobe_aio_commerce_lib_config.byScopeId)(scopeId), { encryptionKey: rawParams.AIO_COMMERCE_CONFIG_ENCRYPTION_KEY });
54
72
  logger.debug("Masking password values...");
55
- appConfiguration.config = filterPasswordFields(configSchema, appConfiguration.config);
73
+ appConfiguration.config = filterPasswordFields(filteredSchema, appConfiguration.config);
56
74
  return (0, _adobe_aio_commerce_lib_core_responses.ok)({ body: {
57
- schema: validatedSchema,
75
+ schema: filteredSchema,
58
76
  values: appConfiguration
59
77
  } });
60
78
  }
@@ -95,7 +113,11 @@ router.patch("/", {
95
113
  scopeId: require_schemas.nonEmptyStringValueSchema("scopeId"),
96
114
  config: valibot.array(valibot.object({
97
115
  name: require_schemas.nonEmptyStringValueSchema("config.name"),
98
- value: valibot.nullable(valibot.union([valibot.string(), valibot.array(valibot.string())]))
116
+ value: valibot.nullable(valibot.union([
117
+ valibot.boolean(),
118
+ valibot.string(),
119
+ valibot.array(valibot.string())
120
+ ]))
99
121
  }))
100
122
  }),
101
123
  handler: async (req, ctx) => {
@@ -13,16 +13,17 @@
13
13
  */
14
14
 
15
15
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
16
- const require_schemas = require('../schemas-nkIxa8sL.cjs');
17
- const require_router = require('../router-KeQRduO3.cjs');
18
- const require_management = require('../management-C6xG5bfl.cjs');
16
+ const require_chunk = require('../chunk-DS2yp5vX.cjs');
17
+ const require_router = require('../router-CFErodHU.cjs');
18
+ const require_schemas = require('../schemas-CukVpc19.cjs');
19
+ const require_management = require('../management-D1QXg4YU.cjs');
19
20
  let _adobe_aio_commerce_lib_core_responses = require("@adobe/aio-commerce-lib-core/responses");
20
21
  let valibot = require("valibot");
21
- valibot = require_schemas.__toESM(valibot);
22
+ valibot = require_chunk.__toESM(valibot, 1);
22
23
  let _adobe_aio_lib_files = require("@adobe/aio-lib-files");
23
24
  let _adobe_aio_lib_state = require("@adobe/aio-lib-state");
24
25
  let openwhisk = require("openwhisk");
25
- openwhisk = require_schemas.__toESM(openwhisk);
26
+ openwhisk = require_chunk.__toESM(openwhisk, 1);
26
27
 
27
28
  //#region ../../packages-private/common-utils/source/storage/files-store.ts
28
29
  /** Default directory prefix. */
@@ -340,10 +341,10 @@ function createInstallationHooks(store, logFn) {
340
341
  return {
341
342
  onInstallationStart: (state) => logAndSave("Installation started", state),
342
343
  onInstallationFailure: (state) => logAndSave("Installation failed", state),
343
- onInstallationSuccess: (state) => logAndSave("Installation succeeded", state),
344
+ onInstallationSuccess: (state) => logAndSave(state.status === "succeeded" && state.metadata?.isRetry ? "Installation succeeded on retry" : "Installation succeeded", state),
344
345
  onStepStart: (event, state) => logAndSave(`Step started: ${event.stepName}`, state),
345
346
  onStepSuccess: (event, state) => logAndSave(`Step succeeded: ${event.stepName}`, state),
346
- onStepFailure: (event, state) => logAndSave(`Step failed: ${event.stepName}`, state)
347
+ onStepFailure: (event, state) => logAndSave(`Step failed: ${event.stepName} — ${event.error.message ?? `(key: ${event.error.key})`}`, state)
347
348
  };
348
349
  }
349
350
  /**
@@ -383,7 +384,8 @@ router.get("/", { handler: async (_req, { logger }) => {
383
384
  router.post("/", {
384
385
  body: InstallationRequestBodySchema,
385
386
  handler: async (req, { logger, rawParams }) => {
386
- logger.debug("Starting installation...");
387
+ const { appData, commerceBaseUrl } = req.body;
388
+ logger.debug(`Starting installation for app "${appData.projectName}" (workspace: "${appData.workspaceName}", commerce: "${commerceBaseUrl}")`);
387
389
  const store = await createInstallationStore();
388
390
  const existingState = await store.get(getStorageKey());
389
391
  if (existingState) {
@@ -432,13 +434,13 @@ router.post("/", {
432
434
  */
433
435
  router.post("/execution", { handler: async (_req, { logger, rawParams }) => {
434
436
  const params = rawParams;
435
- const { initialState, appConfig } = params;
437
+ const { initialState, appConfig, appData, AIO_COMMERCE_API_BASE_URL } = params;
436
438
  if (!initialState) return (0, _adobe_aio_commerce_lib_core_responses.badRequest)("initialState is required for execution");
437
439
  if (!appConfig) return (0, _adobe_aio_commerce_lib_core_responses.badRequest)("appConfig is required for execution");
438
440
  const store = await createInstallationStore();
439
441
  const hooks = createInstallationHooks(store, (msg) => logger.debug(msg));
440
442
  const installationContext = buildInstallationContext(params, appConfig, logger);
441
- logger.debug(`Executing installation: ${initialState.id}`);
443
+ logger.debug(`Executing installation ${initialState.id} for app "${appData.projectName}" (workspace: "${appData.workspaceName}", commerce: "${AIO_COMMERCE_API_BASE_URL}")`);
442
444
  const result = await require_management.runInstallation({
443
445
  installationContext,
444
446
  config: appConfig,
@@ -507,7 +509,8 @@ router.get("/uninstallation", { handler: async (_req, { logger }) => {
507
509
  router.post("/uninstallation", {
508
510
  body: InstallationRequestBodySchema,
509
511
  handler: async (req, { logger, rawParams }) => {
510
- logger.debug("Starting async uninstallation...");
512
+ const { appData, commerceBaseUrl } = req.body;
513
+ logger.debug(`Starting uninstallation for app "${appData.projectName}" (workspace: "${appData.workspaceName}", commerce: "${commerceBaseUrl}")`);
511
514
  const appConfig = rawParams.appConfig;
512
515
  if (!appConfig) return (0, _adobe_aio_commerce_lib_core_responses.internalServerError)("Could not find or parse the app.commerce.manifest.json file, is it present and valid?");
513
516
  const store = await createUninstallationStore();
@@ -552,13 +555,13 @@ router.post("/uninstallation", {
552
555
  */
553
556
  router.post("/uninstallation/execution", { handler: async (_req, { logger, rawParams }) => {
554
557
  const params = rawParams;
555
- const { initialState, appConfig } = params;
558
+ const { initialState, appConfig, appData, AIO_COMMERCE_API_BASE_URL } = params;
556
559
  if (!initialState) return (0, _adobe_aio_commerce_lib_core_responses.badRequest)("initialState is required for execution");
557
560
  if (!appConfig) return (0, _adobe_aio_commerce_lib_core_responses.badRequest)("appConfig is required for execution");
558
561
  const store = await createUninstallationStore();
559
562
  const hooks = createInstallationHooks(store, (msg) => logger.debug(msg));
560
563
  const installationContext = buildInstallationContext(params, appConfig, logger);
561
- logger.debug(`Executing uninstallation: ${initialState.id}`);
564
+ logger.debug(`Executing uninstallation ${initialState.id} for app "${appData.projectName}" (workspace: "${appData.workspaceName}", commerce: "${AIO_COMMERCE_API_BASE_URL}")`);
562
565
  const result = await require_management.runUninstallation({
563
566
  installationContext,
564
567
  config: appConfig,
@@ -12,8 +12,8 @@
12
12
  * governing permissions and limitations under the License.
13
13
  */
14
14
 
15
- import { n as CommerceAppConfigOutputModel } from "../app-DcQMhW2N.cjs";
16
- import { q as InstallationContext } from "../index-BVwQk9bx.cjs";
15
+ import { n as CommerceAppConfigOutputModel } from "../app-C6kImBl7.cjs";
16
+ import { o as InstallationContext } from "../step-CWYnKbga.cjs";
17
17
  import * as _$_adobe_aio_commerce_lib_core_responses0 from "@adobe/aio-commerce-lib-core/responses";
18
18
  import { RuntimeActionParams } from "@adobe/aio-commerce-lib-core/params";
19
19
 
@@ -0,0 +1,41 @@
1
+ /**
2
+ * @license
3
+ *
4
+ * Copyright 2026 Adobe. All rights reserved.
5
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License. You may obtain a copy
7
+ * of the License at http://www.apache.org/licenses/LICENSE-2.0
8
+ *
9
+ * Unless required by applicable law or agreed to in writing, software distributed under
10
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
11
+ * OF ANY KIND, either express or implied. See the License for the specific language
12
+ * governing permissions and limitations under the License.
13
+ */
14
+
15
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
16
+ const require_chunk = require('../chunk-DS2yp5vX.cjs');
17
+ const require_router = require('../router-CFErodHU.cjs');
18
+ let _adobe_aio_commerce_lib_core_responses = require("@adobe/aio-commerce-lib-core/responses");
19
+
20
+ //#region source/actions/registration.ts
21
+ /** Router for the registration action. */
22
+ const router = new require_router.HttpActionRouter().use(require_router.logger({ name: () => "registration" }));
23
+ /** GET / - Return Admin UI SDK registration object */
24
+ router.get("/", { handler: async (_req, { logger, rawParams }) => {
25
+ logger.debug("Returning Admin UI SDK registration...");
26
+ return (0, _adobe_aio_commerce_lib_core_responses.ok)({ body: { registration: rawParams.registration } });
27
+ } });
28
+ /**
29
+ * Factory to create the route handler for the `registration` action.
30
+ * @param args - The registration configuration to inline in the action.
31
+ * @experimental
32
+ */
33
+ const registrationRuntimeAction = ({ registration }) => async (params) => {
34
+ return await router.handler()({
35
+ ...params,
36
+ registration
37
+ });
38
+ };
39
+
40
+ //#endregion
41
+ exports.registrationRuntimeAction = registrationRuntimeAction;
@@ -0,0 +1,33 @@
1
+ /**
2
+ * @license
3
+ *
4
+ * Copyright 2026 Adobe. All rights reserved.
5
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License. You may obtain a copy
7
+ * of the License at http://www.apache.org/licenses/LICENSE-2.0
8
+ *
9
+ * Unless required by applicable law or agreed to in writing, software distributed under
10
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
11
+ * OF ANY KIND, either express or implied. See the License for the specific language
12
+ * governing permissions and limitations under the License.
13
+ */
14
+
15
+ import { n as AdminUiSdkRegistration } from "../admin-ui-sdk-BiSopnKI.cjs";
16
+ import * as _$_adobe_aio_commerce_lib_core_responses0 from "@adobe/aio-commerce-lib-core/responses";
17
+ import { RuntimeActionParams } from "@adobe/aio-commerce-lib-core/params";
18
+
19
+ //#region source/actions/registration.d.ts
20
+ /** Arguments for the registration runtime action factory. */
21
+ type RegistrationActionArgs = {
22
+ registration: AdminUiSdkRegistration;
23
+ };
24
+ /**
25
+ * Factory to create the route handler for the `registration` action.
26
+ * @param args - The registration configuration to inline in the action.
27
+ * @experimental
28
+ */
29
+ declare const registrationRuntimeAction: ({
30
+ registration
31
+ }: RegistrationActionArgs) => (params: RuntimeActionParams) => Promise<_$_adobe_aio_commerce_lib_core_responses0.ActionResponse>;
32
+ //#endregion
33
+ export { registrationRuntimeAction };
@@ -13,12 +13,13 @@
13
13
  */
14
14
 
15
15
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
16
- const require_schemas = require('../schemas-nkIxa8sL.cjs');
17
- const require_router = require('../router-KeQRduO3.cjs');
18
- const require_logging = require('../logging-4s36JTiN.cjs');
16
+ const require_chunk = require('../chunk-DS2yp5vX.cjs');
17
+ const require_router = require('../router-CFErodHU.cjs');
18
+ const require_schemas = require('../schemas-CukVpc19.cjs');
19
+ const require_logging = require('../logging-BTevALnL.cjs');
19
20
  let _adobe_aio_commerce_lib_core_responses = require("@adobe/aio-commerce-lib-core/responses");
20
21
  let valibot = require("valibot");
21
- valibot = require_schemas.__toESM(valibot);
22
+ valibot = require_chunk.__toESM(valibot, 1);
22
23
  let _adobe_aio_commerce_lib_config = require("@adobe/aio-commerce-lib-config");
23
24
  let _adobe_aio_commerce_lib_api = require("@adobe/aio-commerce-lib-api");
24
25