@salesforce/b2c-cli 1.17.3 → 1.19.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.
- package/dist/commands/auth/client/index.js +2 -2
- package/dist/commands/auth/client/index.js.map +1 -1
- package/dist/commands/auth/login.js +2 -2
- package/dist/commands/auth/login.js.map +1 -1
- package/dist/commands/cap/install.d.ts +1 -1
- package/dist/commands/cap/list.d.ts +1 -1
- package/dist/commands/cap/pull.d.ts +1 -1
- package/dist/commands/cap/tasks.d.ts +1 -1
- package/dist/commands/cap/uninstall.d.ts +1 -1
- package/dist/commands/cip/describe.d.ts +1 -1
- package/dist/commands/cip/query.d.ts +1 -1
- package/dist/commands/cip/report/bot-traffic-share.d.ts +1 -1
- package/dist/commands/cip/report/checkout-funnel-dropoff.d.ts +1 -1
- package/dist/commands/cip/report/controller-error-rate-trend.d.ts +1 -1
- package/dist/commands/cip/report/controller-health-scorecard.d.ts +1 -1
- package/dist/commands/cip/report/customer-registration-trends.d.ts +1 -1
- package/dist/commands/cip/report/discount-depth-breakdown.d.ts +1 -1
- package/dist/commands/cip/report/inventory-stockout-by-location.d.ts +1 -1
- package/dist/commands/cip/report/new-vs-returning-buyer-revenue.d.ts +1 -1
- package/dist/commands/cip/report/ocapi-client-usage.d.ts +1 -1
- package/dist/commands/cip/report/ocapi-requests.d.ts +1 -1
- package/dist/commands/cip/report/payment-method-performance.d.ts +1 -1
- package/dist/commands/cip/report/product-co-purchase-analysis.d.ts +1 -1
- package/dist/commands/cip/report/promotion-discount-analysis.d.ts +1 -1
- package/dist/commands/cip/report/promotion-roi-leaderboard.d.ts +1 -1
- package/dist/commands/cip/report/recommender-effectiveness.d.ts +1 -1
- package/dist/commands/cip/report/remote-include-performance.d.ts +1 -1
- package/dist/commands/cip/report/revenue-by-channel.d.ts +1 -1
- package/dist/commands/cip/report/sales-analytics.d.ts +1 -1
- package/dist/commands/cip/report/sales-summary.d.ts +1 -1
- package/dist/commands/cip/report/scapi-cache-hit-ratio.d.ts +1 -1
- package/dist/commands/cip/report/scapi-error-rate-by-status.d.ts +1 -1
- package/dist/commands/cip/report/scapi-latency-distribution.d.ts +1 -1
- package/dist/commands/cip/report/scapi-traffic-latency.d.ts +1 -1
- package/dist/commands/cip/report/search-query-performance.d.ts +1 -1
- package/dist/commands/cip/report/top-referrers.d.ts +1 -1
- package/dist/commands/cip/report/top-selling-products.d.ts +1 -1
- package/dist/commands/cip/report/zero-result-searches.d.ts +1 -1
- package/dist/commands/cip/tables.d.ts +1 -1
- package/dist/commands/code/activate.d.ts +1 -1
- package/dist/commands/code/delete.d.ts +1 -1
- package/dist/commands/code/deploy.d.ts +1 -1
- package/dist/commands/code/download.d.ts +1 -1
- package/dist/commands/code/watch.d.ts +1 -1
- package/dist/commands/content/export.d.ts +1 -1
- package/dist/commands/content/list.d.ts +1 -1
- package/dist/commands/debug/cli.d.ts +1 -1
- package/dist/commands/debug/index.d.ts +1 -1
- package/dist/commands/docs/download.d.ts +1 -1
- package/dist/commands/docs/read.d.ts +1 -0
- package/dist/commands/docs/read.js +10 -2
- package/dist/commands/docs/read.js.map +1 -1
- package/dist/commands/docs/search.d.ts +16 -0
- package/dist/commands/docs/search.js +137 -16
- package/dist/commands/docs/search.js.map +1 -1
- package/dist/commands/ecdn/cache/purge.d.ts +1 -1
- package/dist/commands/ecdn/certificates/add.d.ts +1 -1
- package/dist/commands/ecdn/certificates/delete.d.ts +1 -1
- package/dist/commands/ecdn/certificates/list.d.ts +1 -1
- package/dist/commands/ecdn/certificates/update.d.ts +1 -1
- package/dist/commands/ecdn/certificates/validate.d.ts +1 -1
- package/dist/commands/ecdn/cipher-suites/get.d.ts +1 -1
- package/dist/commands/ecdn/cipher-suites/update.d.ts +1 -1
- package/dist/commands/ecdn/firewall/create.d.ts +1 -1
- package/dist/commands/ecdn/firewall/delete.d.ts +1 -1
- package/dist/commands/ecdn/firewall/get.d.ts +1 -1
- package/dist/commands/ecdn/firewall/list.d.ts +1 -1
- package/dist/commands/ecdn/firewall/reorder.d.ts +1 -1
- package/dist/commands/ecdn/firewall/update.d.ts +1 -1
- package/dist/commands/ecdn/logpush/jobs/create.d.ts +1 -1
- package/dist/commands/ecdn/logpush/jobs/delete.d.ts +1 -1
- package/dist/commands/ecdn/logpush/jobs/get.d.ts +1 -1
- package/dist/commands/ecdn/logpush/jobs/list.d.ts +1 -1
- package/dist/commands/ecdn/logpush/jobs/update.d.ts +1 -1
- package/dist/commands/ecdn/logpush/ownership.d.ts +1 -1
- package/dist/commands/ecdn/mrt-rules/create.d.ts +1 -1
- package/dist/commands/ecdn/mrt-rules/delete.d.ts +1 -1
- package/dist/commands/ecdn/mrt-rules/get.d.ts +1 -1
- package/dist/commands/ecdn/mrt-rules/rules/delete.d.ts +1 -1
- package/dist/commands/ecdn/mrt-rules/rules/update.d.ts +1 -1
- package/dist/commands/ecdn/mrt-rules/update.d.ts +1 -1
- package/dist/commands/ecdn/mtls/create.d.ts +1 -1
- package/dist/commands/ecdn/mtls/delete.d.ts +1 -1
- package/dist/commands/ecdn/mtls/get.d.ts +1 -1
- package/dist/commands/ecdn/mtls/list.d.ts +1 -1
- package/dist/commands/ecdn/origin-headers/delete.d.ts +1 -1
- package/dist/commands/ecdn/origin-headers/get.d.ts +1 -1
- package/dist/commands/ecdn/origin-headers/set.d.ts +1 -1
- package/dist/commands/ecdn/page-shield/notifications/create.d.ts +1 -1
- package/dist/commands/ecdn/page-shield/notifications/delete.d.ts +1 -1
- package/dist/commands/ecdn/page-shield/notifications/list.d.ts +1 -1
- package/dist/commands/ecdn/page-shield/policies/create.d.ts +1 -1
- package/dist/commands/ecdn/page-shield/policies/delete.d.ts +1 -1
- package/dist/commands/ecdn/page-shield/policies/get.d.ts +1 -1
- package/dist/commands/ecdn/page-shield/policies/list.d.ts +1 -1
- package/dist/commands/ecdn/page-shield/policies/update.d.ts +1 -1
- package/dist/commands/ecdn/page-shield/scripts/get.d.ts +1 -1
- package/dist/commands/ecdn/page-shield/scripts/list.d.ts +1 -1
- package/dist/commands/ecdn/rate-limit/create.d.ts +1 -1
- package/dist/commands/ecdn/rate-limit/delete.d.ts +1 -1
- package/dist/commands/ecdn/rate-limit/get.d.ts +1 -1
- package/dist/commands/ecdn/rate-limit/list.d.ts +1 -1
- package/dist/commands/ecdn/rate-limit/update.d.ts +1 -1
- package/dist/commands/ecdn/security/get.d.ts +1 -1
- package/dist/commands/ecdn/security/update.d.ts +1 -1
- package/dist/commands/ecdn/speed/get.d.ts +1 -1
- package/dist/commands/ecdn/speed/update.d.ts +1 -1
- package/dist/commands/ecdn/waf/groups/list.d.ts +1 -1
- package/dist/commands/ecdn/waf/groups/update.d.ts +1 -1
- package/dist/commands/ecdn/waf/managed-rules/list.d.ts +1 -1
- package/dist/commands/ecdn/waf/managed-rules/update.d.ts +1 -1
- package/dist/commands/ecdn/waf/migrate.d.ts +1 -1
- package/dist/commands/ecdn/waf/owasp/get.d.ts +1 -1
- package/dist/commands/ecdn/waf/owasp/update.d.ts +1 -1
- package/dist/commands/ecdn/waf/rules/get.d.ts +1 -1
- package/dist/commands/ecdn/waf/rules/list.d.ts +1 -1
- package/dist/commands/ecdn/waf/rules/update.d.ts +1 -1
- package/dist/commands/ecdn/waf/rulesets/list.d.ts +1 -1
- package/dist/commands/ecdn/waf/rulesets/update.d.ts +1 -1
- package/dist/commands/ecdn/zones/create.d.ts +1 -1
- package/dist/commands/ecdn/zones/list.d.ts +1 -1
- package/dist/commands/job/export.d.ts +1 -1
- package/dist/commands/job/import.d.ts +1 -1
- package/dist/commands/job/log.d.ts +1 -1
- package/dist/commands/job/run.d.ts +1 -1
- package/dist/commands/job/search.d.ts +1 -1
- package/dist/commands/job/wait.d.ts +1 -1
- package/dist/commands/logs/get.d.ts +1 -1
- package/dist/commands/logs/list.d.ts +1 -1
- package/dist/commands/logs/tail.d.ts +1 -1
- package/dist/commands/metrics/controller.d.ts +39 -0
- package/dist/commands/metrics/controller.js +24 -0
- package/dist/commands/metrics/controller.js.map +1 -0
- package/dist/commands/metrics/ecdn.d.ts +39 -0
- package/dist/commands/metrics/ecdn.js +24 -0
- package/dist/commands/metrics/ecdn.js.map +1 -0
- package/dist/commands/metrics/list.d.ts +21 -0
- package/dist/commands/metrics/list.js +58 -0
- package/dist/commands/metrics/list.js.map +1 -0
- package/dist/commands/metrics/mrt.d.ts +39 -0
- package/dist/commands/metrics/mrt.js +24 -0
- package/dist/commands/metrics/mrt.js.map +1 -0
- package/dist/commands/metrics/ocapi.d.ts +42 -0
- package/dist/commands/metrics/ocapi.js +26 -0
- package/dist/commands/metrics/ocapi.js.map +1 -0
- package/dist/commands/metrics/overall.d.ts +39 -0
- package/dist/commands/metrics/overall.js +24 -0
- package/dist/commands/metrics/overall.js.map +1 -0
- package/dist/commands/metrics/sales.d.ts +39 -0
- package/dist/commands/metrics/sales.js +24 -0
- package/dist/commands/metrics/sales.js.map +1 -0
- package/dist/commands/metrics/scapi-hooks.d.ts +39 -0
- package/dist/commands/metrics/scapi-hooks.js +24 -0
- package/dist/commands/metrics/scapi-hooks.js.map +1 -0
- package/dist/commands/metrics/scapi.d.ts +42 -0
- package/dist/commands/metrics/scapi.js +27 -0
- package/dist/commands/metrics/scapi.js.map +1 -0
- package/dist/commands/metrics/third-party.d.ts +41 -0
- package/dist/commands/metrics/third-party.js +25 -0
- package/dist/commands/metrics/third-party.js.map +1 -0
- package/dist/commands/scapi/custom/status.d.ts +1 -1
- package/dist/commands/scapi/schemas/get.d.ts +1 -1
- package/dist/commands/scapi/schemas/list.d.ts +1 -1
- package/dist/commands/slas/client/create.d.ts +1 -1
- package/dist/commands/slas/client/delete.d.ts +1 -1
- package/dist/commands/slas/client/get.d.ts +1 -1
- package/dist/commands/slas/client/list.d.ts +1 -1
- package/dist/commands/slas/client/open.d.ts +1 -1
- package/dist/commands/slas/client/open.js +1 -0
- package/dist/commands/slas/client/open.js.map +1 -1
- package/dist/commands/slas/client/update.d.ts +1 -1
- package/dist/commands/slas/token.d.ts +1 -1
- package/dist/commands/webdav/get.d.ts +1 -1
- package/dist/commands/webdav/rm.d.ts +1 -1
- package/dist/i18n/locales/en.d.ts +4 -0
- package/dist/i18n/locales/en.js +6 -2
- package/dist/i18n/locales/en.js.map +1 -1
- package/dist/i18n/locales/index.d.ts +4 -0
- package/dist/utils/cip/command.d.ts +1 -1
- package/dist/utils/cip/command.js +2 -2
- package/dist/utils/cip/command.js.map +1 -1
- package/dist/utils/ecdn/base-command.js +3 -3
- package/dist/utils/ecdn/base-command.js.map +1 -1
- package/dist/utils/ecdn/zone-command.d.ts +1 -1
- package/dist/utils/metrics/category-command.d.ts +86 -0
- package/dist/utils/metrics/category-command.js +248 -0
- package/dist/utils/metrics/category-command.js.map +1 -0
- package/dist/utils/metrics/index.d.ts +14 -0
- package/dist/utils/metrics/index.js +32 -0
- package/dist/utils/metrics/index.js.map +1 -0
- package/dist/utils/scapi/schemas.js +3 -3
- package/dist/utils/scapi/schemas.js.map +1 -1
- package/oclif.manifest.json +15724 -12528
- package/package.json +5 -2
|
@@ -31,7 +31,7 @@ export default class JobExport extends JobCommand<typeof JobExport> {
|
|
|
31
31
|
'client-id': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
32
32
|
'client-secret': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
33
33
|
'auth-scope': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
34
|
-
'short-code': import("@oclif/core/interfaces").OptionFlag<string
|
|
34
|
+
'short-code': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
35
35
|
'tenant-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
36
36
|
'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
37
37
|
'user-auth': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
@@ -28,7 +28,7 @@ export default class JobImport extends JobCommand<typeof JobImport> {
|
|
|
28
28
|
'client-id': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
29
29
|
'client-secret': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
30
30
|
'auth-scope': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
31
|
-
'short-code': import("@oclif/core/interfaces").OptionFlag<string
|
|
31
|
+
'short-code': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
32
32
|
'tenant-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
33
33
|
'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
34
34
|
'user-auth': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
@@ -27,7 +27,7 @@ export default class JobLog extends InstanceCommand<typeof JobLog> {
|
|
|
27
27
|
'client-id': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
28
28
|
'client-secret': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
29
29
|
'auth-scope': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
30
|
-
'short-code': import("@oclif/core/interfaces").OptionFlag<string
|
|
30
|
+
'short-code': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
31
31
|
'tenant-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
32
32
|
'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
33
33
|
'user-auth': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
@@ -27,7 +27,7 @@ export default class JobRun extends JobCommand<typeof JobRun> {
|
|
|
27
27
|
'client-id': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
28
28
|
'client-secret': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
29
29
|
'auth-scope': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
30
|
-
'short-code': import("@oclif/core/interfaces").OptionFlag<string
|
|
30
|
+
'short-code': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
31
31
|
'tenant-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
32
32
|
'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
33
33
|
'user-auth': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
@@ -25,7 +25,7 @@ export default class JobSearch extends InstanceCommand<typeof JobSearch> {
|
|
|
25
25
|
'client-id': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
26
26
|
'client-secret': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
27
27
|
'auth-scope': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
28
|
-
'short-code': import("@oclif/core/interfaces").OptionFlag<string
|
|
28
|
+
'short-code': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
29
29
|
'tenant-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
30
30
|
'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
31
31
|
'user-auth': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
@@ -24,7 +24,7 @@ export default class JobWait extends JobCommand<typeof JobWait> {
|
|
|
24
24
|
'client-id': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
25
25
|
'client-secret': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
26
26
|
'auth-scope': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
27
|
-
'short-code': import("@oclif/core/interfaces").OptionFlag<string
|
|
27
|
+
'short-code': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
28
28
|
'tenant-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
29
29
|
'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
30
30
|
'user-auth': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
@@ -29,7 +29,7 @@ export default class LogsGet extends InstanceCommand<typeof LogsGet> {
|
|
|
29
29
|
'client-id': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
30
30
|
'client-secret': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
31
31
|
'auth-scope': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
32
|
-
'short-code': import("@oclif/core/interfaces").OptionFlag<string
|
|
32
|
+
'short-code': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
33
33
|
'tenant-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
34
34
|
'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
35
35
|
'user-auth': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
@@ -26,7 +26,7 @@ export default class LogsList extends InstanceCommand<typeof LogsList> {
|
|
|
26
26
|
'client-id': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
27
27
|
'client-secret': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
28
28
|
'auth-scope': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
29
|
-
'short-code': import("@oclif/core/interfaces").OptionFlag<string
|
|
29
|
+
'short-code': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
30
30
|
'tenant-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
31
31
|
'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
32
32
|
'user-auth': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
@@ -24,7 +24,7 @@ export default class LogsTail extends InstanceCommand<typeof LogsTail> {
|
|
|
24
24
|
'client-id': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
25
25
|
'client-secret': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
26
26
|
'auth-scope': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
27
|
-
'short-code': import("@oclif/core/interfaces").OptionFlag<string
|
|
27
|
+
'short-code': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
28
28
|
'tenant-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
29
29
|
'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
30
30
|
'user-auth': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { MetricsCategoryCommand } from '../../utils/metrics/category-command.js';
|
|
2
|
+
/**
|
|
3
|
+
* `b2c metrics controller` — SFRA controller performance metrics.
|
|
4
|
+
*/
|
|
5
|
+
export default class MetricsController extends MetricsCategoryCommand<typeof MetricsController> {
|
|
6
|
+
static description: string;
|
|
7
|
+
static examples: string[];
|
|
8
|
+
static flags: {
|
|
9
|
+
columns: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
|
+
extended: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
11
|
+
from: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
+
to: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
|
+
window: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
|
+
tags: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
15
|
+
'client-id': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
|
+
'client-secret': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
|
+
'auth-scope': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
18
|
+
'short-code': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
19
|
+
'tenant-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
20
|
+
'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
21
|
+
'user-auth': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
22
|
+
'account-manager-host': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
23
|
+
'jwt-cert': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
24
|
+
'jwt-key': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
25
|
+
'jwt-passphrase': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
26
|
+
'log-level': import("@oclif/core/interfaces").OptionFlag<"trace" | "debug" | "info" | "warn" | "error" | "silent" | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
27
|
+
debug: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
28
|
+
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
29
|
+
jsonl: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
30
|
+
lang: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
31
|
+
config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
32
|
+
instance: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
33
|
+
'project-directory': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
34
|
+
'extra-query': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
35
|
+
'extra-body': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
36
|
+
'extra-headers': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
37
|
+
};
|
|
38
|
+
protected readonly category: "controller";
|
|
39
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2025, Salesforce, Inc.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2
|
|
4
|
+
* For full license text, see the license.txt file in the repo root or http://www.apache.org/licenses/LICENSE-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { MetricsCategoryCommand } from '../../utils/metrics/category-command.js';
|
|
7
|
+
import { t, withDocs } from '../../i18n/index.js';
|
|
8
|
+
/**
|
|
9
|
+
* `b2c metrics controller` — SFRA controller performance metrics.
|
|
10
|
+
*/
|
|
11
|
+
export default class MetricsController extends MetricsCategoryCommand {
|
|
12
|
+
static description = withDocs(t('commands.metrics.controller.description', '[CLOSED BETA] Get SFRA controller performance metrics. The Metrics API must be enabled for your organization.', {}), '/cli/metrics.html#b2c-metrics-controller');
|
|
13
|
+
static examples = [
|
|
14
|
+
'<%= config.bin %> <%= command.id %> --tenant-id f_ecom_zzxy_prd',
|
|
15
|
+
'<%= config.bin %> <%= command.id %> --tenant-id f_ecom_zzxy_prd --window 6h',
|
|
16
|
+
'<%= config.bin %> <%= command.id %> --tenant-id f_ecom_zzxy_prd --json',
|
|
17
|
+
];
|
|
18
|
+
static flags = {
|
|
19
|
+
...MetricsCategoryCommand.baseFlags,
|
|
20
|
+
...MetricsCategoryCommand.timeWindowFlags,
|
|
21
|
+
};
|
|
22
|
+
category = 'controller';
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=controller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"controller.js","sourceRoot":"","sources":["../../../src/commands/metrics/controller.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAC,sBAAsB,EAAC,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAC,CAAC,EAAE,QAAQ,EAAC,MAAM,qBAAqB,CAAC;AAEhD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,sBAAgD;IAC7F,MAAM,CAAC,WAAW,GAAG,QAAQ,CAC3B,CAAC,CACC,yCAAyC,EACzC,+GAA+G,EAC/G,EAAE,CACH,EACD,0CAA0C,CAC3C,CAAC;IAEF,MAAM,CAAC,QAAQ,GAAG;QAChB,iEAAiE;QACjE,6EAA6E;QAC7E,wEAAwE;KACzE,CAAC;IAEF,MAAM,CAAC,KAAK,GAAG;QACb,GAAG,sBAAsB,CAAC,SAAS;QACnC,GAAG,sBAAsB,CAAC,eAAe;KAC1C,CAAC;IAEiB,QAAQ,GAAG,YAAqB,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { MetricsCategoryCommand } from '../../utils/metrics/category-command.js';
|
|
2
|
+
/**
|
|
3
|
+
* `b2c metrics ecdn` — edge CDN performance metrics.
|
|
4
|
+
*/
|
|
5
|
+
export default class MetricsEcdn extends MetricsCategoryCommand<typeof MetricsEcdn> {
|
|
6
|
+
static description: string;
|
|
7
|
+
static examples: string[];
|
|
8
|
+
static flags: {
|
|
9
|
+
columns: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
|
+
extended: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
11
|
+
from: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
+
to: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
|
+
window: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
|
+
tags: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
15
|
+
'client-id': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
|
+
'client-secret': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
|
+
'auth-scope': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
18
|
+
'short-code': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
19
|
+
'tenant-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
20
|
+
'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
21
|
+
'user-auth': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
22
|
+
'account-manager-host': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
23
|
+
'jwt-cert': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
24
|
+
'jwt-key': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
25
|
+
'jwt-passphrase': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
26
|
+
'log-level': import("@oclif/core/interfaces").OptionFlag<"trace" | "debug" | "info" | "warn" | "error" | "silent" | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
27
|
+
debug: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
28
|
+
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
29
|
+
jsonl: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
30
|
+
lang: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
31
|
+
config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
32
|
+
instance: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
33
|
+
'project-directory': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
34
|
+
'extra-query': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
35
|
+
'extra-body': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
36
|
+
'extra-headers': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
37
|
+
};
|
|
38
|
+
protected readonly category: "ecdn";
|
|
39
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2025, Salesforce, Inc.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2
|
|
4
|
+
* For full license text, see the license.txt file in the repo root or http://www.apache.org/licenses/LICENSE-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { MetricsCategoryCommand } from '../../utils/metrics/category-command.js';
|
|
7
|
+
import { t, withDocs } from '../../i18n/index.js';
|
|
8
|
+
/**
|
|
9
|
+
* `b2c metrics ecdn` — edge CDN performance metrics.
|
|
10
|
+
*/
|
|
11
|
+
export default class MetricsEcdn extends MetricsCategoryCommand {
|
|
12
|
+
static description = withDocs(t('commands.metrics.ecdn.description', '[CLOSED BETA] Get edge CDN performance metrics. The Metrics API must be enabled for your organization.', {}), '/cli/metrics.html#b2c-metrics-ecdn');
|
|
13
|
+
static examples = [
|
|
14
|
+
'<%= config.bin %> <%= command.id %> --tenant-id f_ecom_zzxy_prd',
|
|
15
|
+
'<%= config.bin %> <%= command.id %> --tenant-id f_ecom_zzxy_prd --window 1h',
|
|
16
|
+
'<%= config.bin %> <%= command.id %> --tenant-id f_ecom_zzxy_prd --json',
|
|
17
|
+
];
|
|
18
|
+
static flags = {
|
|
19
|
+
...MetricsCategoryCommand.baseFlags,
|
|
20
|
+
...MetricsCategoryCommand.timeWindowFlags,
|
|
21
|
+
};
|
|
22
|
+
category = 'ecdn';
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=ecdn.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ecdn.js","sourceRoot":"","sources":["../../../src/commands/metrics/ecdn.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAC,sBAAsB,EAAC,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAC,CAAC,EAAE,QAAQ,EAAC,MAAM,qBAAqB,CAAC;AAEhD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,sBAA0C;IACjF,MAAM,CAAC,WAAW,GAAG,QAAQ,CAC3B,CAAC,CACC,mCAAmC,EACnC,wGAAwG,EACxG,EAAE,CACH,EACD,oCAAoC,CACrC,CAAC;IAEF,MAAM,CAAC,QAAQ,GAAG;QAChB,iEAAiE;QACjE,6EAA6E;QAC7E,wEAAwE;KACzE,CAAC;IAEF,MAAM,CAAC,KAAK,GAAG;QACb,GAAG,sBAAsB,CAAC,SAAS;QACnC,GAAG,sBAAsB,CAAC,eAAe;KAC1C,CAAC;IAEiB,QAAQ,GAAG,MAAe,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Command } from '@oclif/core';
|
|
2
|
+
import { type MetricCategory } from '@salesforce/b2c-tooling-sdk';
|
|
3
|
+
/**
|
|
4
|
+
* Category information for display.
|
|
5
|
+
*/
|
|
6
|
+
interface CategoryInfo {
|
|
7
|
+
category: MetricCategory;
|
|
8
|
+
description: string;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Command to list available metrics categories.
|
|
12
|
+
*/
|
|
13
|
+
export default class MetricsList extends Command {
|
|
14
|
+
static description: string;
|
|
15
|
+
static enableJsonFlag: boolean;
|
|
16
|
+
static examples: string[];
|
|
17
|
+
run(): Promise<{
|
|
18
|
+
categories: CategoryInfo[];
|
|
19
|
+
}>;
|
|
20
|
+
}
|
|
21
|
+
export {};
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2025, Salesforce, Inc.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2
|
|
4
|
+
* For full license text, see the license.txt file in the repo root or http://www.apache.org/licenses/LICENSE-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { Command } from '@oclif/core';
|
|
7
|
+
import { TableRenderer } from '@salesforce/b2c-tooling-sdk/cli';
|
|
8
|
+
import { METRIC_CATEGORIES } from '@salesforce/b2c-tooling-sdk';
|
|
9
|
+
import { t, withDocs } from '../../i18n/index.js';
|
|
10
|
+
const CATEGORY_DESCRIPTIONS = {
|
|
11
|
+
overall: 'Overall system metrics including requests, errors, and response times',
|
|
12
|
+
sales: 'Sales and order metrics',
|
|
13
|
+
ecdn: 'Enhanced CDN metrics',
|
|
14
|
+
'third-party': 'Third-party service integration metrics',
|
|
15
|
+
scapi: 'Salesforce Commerce API (SCAPI) metrics',
|
|
16
|
+
'scapi-hooks': 'SCAPI hooks execution metrics',
|
|
17
|
+
mrt: 'Managed Runtime (MRT) metrics',
|
|
18
|
+
controller: 'Controller execution metrics',
|
|
19
|
+
ocapi: 'Open Commerce API (OCAPI) metrics',
|
|
20
|
+
};
|
|
21
|
+
const COLUMNS = {
|
|
22
|
+
category: {
|
|
23
|
+
header: 'Category',
|
|
24
|
+
get: (c) => c.category,
|
|
25
|
+
},
|
|
26
|
+
description: {
|
|
27
|
+
header: 'Description',
|
|
28
|
+
get: (c) => c.description,
|
|
29
|
+
},
|
|
30
|
+
};
|
|
31
|
+
const DEFAULT_COLUMNS = ['category', 'description'];
|
|
32
|
+
const tableRenderer = new TableRenderer(COLUMNS);
|
|
33
|
+
/**
|
|
34
|
+
* Command to list available metrics categories.
|
|
35
|
+
*/
|
|
36
|
+
export default class MetricsList extends Command {
|
|
37
|
+
static description = withDocs(t('commands.metrics.list.description', '[CLOSED BETA] List available metrics categories. The Metrics API must be enabled for your organization.', {}), '/cli/metrics.html#b2c-metrics-list');
|
|
38
|
+
static enableJsonFlag = true;
|
|
39
|
+
static examples = ['<%= config.bin %> <%= command.id %>', '<%= config.bin %> <%= command.id %> --json'];
|
|
40
|
+
async run() {
|
|
41
|
+
await this.parse(MetricsList);
|
|
42
|
+
const categories = METRIC_CATEGORIES.map((category) => ({
|
|
43
|
+
category,
|
|
44
|
+
description: CATEGORY_DESCRIPTIONS[category],
|
|
45
|
+
}));
|
|
46
|
+
const output = { categories };
|
|
47
|
+
if (this.jsonEnabled()) {
|
|
48
|
+
return output;
|
|
49
|
+
}
|
|
50
|
+
this.log(t('commands.metrics.list.header', 'Available metrics categories:', {}));
|
|
51
|
+
this.log('');
|
|
52
|
+
tableRenderer.render(categories, DEFAULT_COLUMNS);
|
|
53
|
+
this.log('');
|
|
54
|
+
this.log(t('commands.metrics.list.usage', 'Use "b2c metrics get <category>" to retrieve metrics for a specific category.', {}));
|
|
55
|
+
return output;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/metrics/list.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAC,OAAO,EAAC,MAAM,aAAa,CAAC;AACpC,OAAO,EAAC,aAAa,EAAiB,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAC,iBAAiB,EAAsB,MAAM,6BAA6B,CAAC;AACnF,OAAO,EAAC,CAAC,EAAE,QAAQ,EAAC,MAAM,qBAAqB,CAAC;AAUhD,MAAM,qBAAqB,GAAmC;IAC5D,OAAO,EAAE,uEAAuE;IAChF,KAAK,EAAE,yBAAyB;IAChC,IAAI,EAAE,sBAAsB;IAC5B,aAAa,EAAE,yCAAyC;IACxD,KAAK,EAAE,yCAAyC;IAChD,aAAa,EAAE,+BAA+B;IAC9C,GAAG,EAAE,+BAA+B;IACpC,UAAU,EAAE,8BAA8B;IAC1C,KAAK,EAAE,mCAAmC;CAC3C,CAAC;AAEF,MAAM,OAAO,GAA4C;IACvD,QAAQ,EAAE;QACR,MAAM,EAAE,UAAU;QAClB,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ;KACvB;IACD,WAAW,EAAE;QACX,MAAM,EAAE,aAAa;QACrB,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW;KAC1B;CACF,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;AAEpD,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,OAAO,CAAC,CAAC;AAEjD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,OAAO;IAC9C,MAAM,CAAC,WAAW,GAAG,QAAQ,CAC3B,CAAC,CACC,mCAAmC,EACnC,yGAAyG,EACzG,EAAE,CACH,EACD,oCAAoC,CACrC,CAAC;IAEF,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC;IAE7B,MAAM,CAAC,QAAQ,GAAG,CAAC,qCAAqC,EAAE,4CAA4C,CAAC,CAAC;IAExG,KAAK,CAAC,GAAG;QACP,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAE9B,MAAM,UAAU,GAAmB,iBAAiB,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YACtE,QAAQ;YACR,WAAW,EAAE,qBAAqB,CAAC,QAAQ,CAAC;SAC7C,CAAC,CAAC,CAAC;QAEJ,MAAM,MAAM,GAAG,EAAC,UAAU,EAAC,CAAC;QAE5B,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACvB,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,8BAA8B,EAAE,+BAA+B,EAAE,EAAE,CAAC,CAAC,CAAC;QACjF,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEb,aAAa,CAAC,MAAM,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;QAElD,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACb,IAAI,CAAC,GAAG,CACN,CAAC,CACC,6BAA6B,EAC7B,+EAA+E,EAC/E,EAAE,CACH,CACF,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { MetricsCategoryCommand } from '../../utils/metrics/category-command.js';
|
|
2
|
+
/**
|
|
3
|
+
* `b2c metrics mrt` — Managed Runtime (PWA Kit) metrics.
|
|
4
|
+
*/
|
|
5
|
+
export default class MetricsMrt extends MetricsCategoryCommand<typeof MetricsMrt> {
|
|
6
|
+
static description: string;
|
|
7
|
+
static examples: string[];
|
|
8
|
+
static flags: {
|
|
9
|
+
columns: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
|
+
extended: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
11
|
+
from: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
+
to: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
|
+
window: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
|
+
tags: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
15
|
+
'client-id': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
|
+
'client-secret': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
|
+
'auth-scope': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
18
|
+
'short-code': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
19
|
+
'tenant-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
20
|
+
'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
21
|
+
'user-auth': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
22
|
+
'account-manager-host': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
23
|
+
'jwt-cert': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
24
|
+
'jwt-key': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
25
|
+
'jwt-passphrase': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
26
|
+
'log-level': import("@oclif/core/interfaces").OptionFlag<"trace" | "debug" | "info" | "warn" | "error" | "silent" | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
27
|
+
debug: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
28
|
+
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
29
|
+
jsonl: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
30
|
+
lang: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
31
|
+
config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
32
|
+
instance: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
33
|
+
'project-directory': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
34
|
+
'extra-query': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
35
|
+
'extra-body': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
36
|
+
'extra-headers': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
37
|
+
};
|
|
38
|
+
protected readonly category: "mrt";
|
|
39
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2025, Salesforce, Inc.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2
|
|
4
|
+
* For full license text, see the license.txt file in the repo root or http://www.apache.org/licenses/LICENSE-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { MetricsCategoryCommand } from '../../utils/metrics/category-command.js';
|
|
7
|
+
import { t, withDocs } from '../../i18n/index.js';
|
|
8
|
+
/**
|
|
9
|
+
* `b2c metrics mrt` — Managed Runtime (PWA Kit) metrics.
|
|
10
|
+
*/
|
|
11
|
+
export default class MetricsMrt extends MetricsCategoryCommand {
|
|
12
|
+
static description = withDocs(t('commands.metrics.mrt.description', '[CLOSED BETA] Get Managed Runtime (PWA Kit) metrics. The Metrics API must be enabled for your organization.', {}), '/cli/metrics.html#b2c-metrics-mrt');
|
|
13
|
+
static examples = [
|
|
14
|
+
'<%= config.bin %> <%= command.id %> --tenant-id f_ecom_zzxy_prd',
|
|
15
|
+
'<%= config.bin %> <%= command.id %> --tenant-id f_ecom_zzxy_prd --window 1h',
|
|
16
|
+
'<%= config.bin %> <%= command.id %> --tenant-id f_ecom_zzxy_prd --json',
|
|
17
|
+
];
|
|
18
|
+
static flags = {
|
|
19
|
+
...MetricsCategoryCommand.baseFlags,
|
|
20
|
+
...MetricsCategoryCommand.timeWindowFlags,
|
|
21
|
+
};
|
|
22
|
+
category = 'mrt';
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=mrt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mrt.js","sourceRoot":"","sources":["../../../src/commands/metrics/mrt.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAC,sBAAsB,EAAC,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAC,CAAC,EAAE,QAAQ,EAAC,MAAM,qBAAqB,CAAC;AAEhD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,sBAAyC;IAC/E,MAAM,CAAC,WAAW,GAAG,QAAQ,CAC3B,CAAC,CACC,kCAAkC,EAClC,6GAA6G,EAC7G,EAAE,CACH,EACD,mCAAmC,CACpC,CAAC;IAEF,MAAM,CAAC,QAAQ,GAAG;QAChB,iEAAiE;QACjE,6EAA6E;QAC7E,wEAAwE;KACzE,CAAC;IAEF,MAAM,CAAC,KAAK,GAAG;QACb,GAAG,sBAAsB,CAAC,SAAS;QACnC,GAAG,sBAAsB,CAAC,eAAe;KAC1C,CAAC;IAEiB,QAAQ,GAAG,KAAc,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { MetricsCategoryCommand } from '../../utils/metrics/category-command.js';
|
|
2
|
+
/**
|
|
3
|
+
* `b2c metrics ocapi` — OCAPI request metrics, optionally drilled down by
|
|
4
|
+
* `--ocapi-category`/`--ocapi-api`.
|
|
5
|
+
*/
|
|
6
|
+
export default class MetricsOcapi extends MetricsCategoryCommand<typeof MetricsOcapi> {
|
|
7
|
+
static description: string;
|
|
8
|
+
static examples: string[];
|
|
9
|
+
static flags: {
|
|
10
|
+
'ocapi-category': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
|
+
'ocapi-api': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
+
columns: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
|
+
extended: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
14
|
+
from: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
|
+
to: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
|
+
window: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
|
+
tags: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
18
|
+
'client-id': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
19
|
+
'client-secret': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
20
|
+
'auth-scope': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
21
|
+
'short-code': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
22
|
+
'tenant-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
23
|
+
'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
24
|
+
'user-auth': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
25
|
+
'account-manager-host': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
26
|
+
'jwt-cert': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
27
|
+
'jwt-key': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
28
|
+
'jwt-passphrase': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
29
|
+
'log-level': import("@oclif/core/interfaces").OptionFlag<"trace" | "debug" | "info" | "warn" | "error" | "silent" | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
30
|
+
debug: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
31
|
+
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
32
|
+
jsonl: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
33
|
+
lang: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
34
|
+
config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
35
|
+
instance: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
36
|
+
'project-directory': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
37
|
+
'extra-query': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
38
|
+
'extra-body': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
39
|
+
'extra-headers': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
40
|
+
};
|
|
41
|
+
protected readonly category: "ocapi";
|
|
42
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2025, Salesforce, Inc.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2
|
|
4
|
+
* For full license text, see the license.txt file in the repo root or http://www.apache.org/licenses/LICENSE-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { MetricsCategoryCommand, ocapiFilterFlags } from '../../utils/metrics/category-command.js';
|
|
7
|
+
import { t, withDocs } from '../../i18n/index.js';
|
|
8
|
+
/**
|
|
9
|
+
* `b2c metrics ocapi` — OCAPI request metrics, optionally drilled down by
|
|
10
|
+
* `--ocapi-category`/`--ocapi-api`.
|
|
11
|
+
*/
|
|
12
|
+
export default class MetricsOcapi extends MetricsCategoryCommand {
|
|
13
|
+
static description = withDocs(t('commands.metrics.ocapi.description', '[CLOSED BETA] Get OCAPI request metrics. The Metrics API must be enabled for your organization.', {}), '/cli/metrics.html#b2c-metrics-ocapi');
|
|
14
|
+
static examples = [
|
|
15
|
+
'<%= config.bin %> <%= command.id %> --tenant-id f_ecom_zzxy_prd',
|
|
16
|
+
'<%= config.bin %> <%= command.id %> --tenant-id f_ecom_zzxy_prd --ocapi-category shop',
|
|
17
|
+
'<%= config.bin %> <%= command.id %> --tenant-id f_ecom_zzxy_prd --ocapi-category shop --ocapi-api baskets',
|
|
18
|
+
];
|
|
19
|
+
static flags = {
|
|
20
|
+
...MetricsCategoryCommand.baseFlags,
|
|
21
|
+
...MetricsCategoryCommand.timeWindowFlags,
|
|
22
|
+
...ocapiFilterFlags,
|
|
23
|
+
};
|
|
24
|
+
category = 'ocapi';
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=ocapi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ocapi.js","sourceRoot":"","sources":["../../../src/commands/metrics/ocapi.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAC,sBAAsB,EAAE,gBAAgB,EAAC,MAAM,yCAAyC,CAAC;AACjG,OAAO,EAAC,CAAC,EAAE,QAAQ,EAAC,MAAM,qBAAqB,CAAC;AAEhD;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,sBAA2C;IACnF,MAAM,CAAC,WAAW,GAAG,QAAQ,CAC3B,CAAC,CACC,oCAAoC,EACpC,iGAAiG,EACjG,EAAE,CACH,EACD,qCAAqC,CACtC,CAAC;IAEF,MAAM,CAAC,QAAQ,GAAG;QAChB,iEAAiE;QACjE,uFAAuF;QACvF,2GAA2G;KAC5G,CAAC;IAEF,MAAM,CAAC,KAAK,GAAG;QACb,GAAG,sBAAsB,CAAC,SAAS;QACnC,GAAG,sBAAsB,CAAC,eAAe;QACzC,GAAG,gBAAgB;KACpB,CAAC;IAEiB,QAAQ,GAAG,OAAgB,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { MetricsCategoryCommand } from '../../utils/metrics/category-command.js';
|
|
2
|
+
/**
|
|
3
|
+
* `b2c metrics overall` — system-wide aggregate metrics.
|
|
4
|
+
*/
|
|
5
|
+
export default class MetricsOverall extends MetricsCategoryCommand<typeof MetricsOverall> {
|
|
6
|
+
static description: string;
|
|
7
|
+
static examples: string[];
|
|
8
|
+
static flags: {
|
|
9
|
+
columns: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
|
+
extended: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
11
|
+
from: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
+
to: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
|
+
window: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
|
+
tags: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
15
|
+
'client-id': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
|
+
'client-secret': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
|
+
'auth-scope': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
18
|
+
'short-code': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
19
|
+
'tenant-id': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
20
|
+
'auth-methods': import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
21
|
+
'user-auth': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
22
|
+
'account-manager-host': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
23
|
+
'jwt-cert': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
24
|
+
'jwt-key': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
25
|
+
'jwt-passphrase': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
26
|
+
'log-level': import("@oclif/core/interfaces").OptionFlag<"trace" | "debug" | "info" | "warn" | "error" | "silent" | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
27
|
+
debug: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
28
|
+
json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
29
|
+
jsonl: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
30
|
+
lang: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
31
|
+
config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
32
|
+
instance: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
33
|
+
'project-directory': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
34
|
+
'extra-query': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
35
|
+
'extra-body': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
36
|
+
'extra-headers': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
37
|
+
};
|
|
38
|
+
protected readonly category: "overall";
|
|
39
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2025, Salesforce, Inc.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2
|
|
4
|
+
* For full license text, see the license.txt file in the repo root or http://www.apache.org/licenses/LICENSE-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { MetricsCategoryCommand } from '../../utils/metrics/category-command.js';
|
|
7
|
+
import { t, withDocs } from '../../i18n/index.js';
|
|
8
|
+
/**
|
|
9
|
+
* `b2c metrics overall` — system-wide aggregate metrics.
|
|
10
|
+
*/
|
|
11
|
+
export default class MetricsOverall extends MetricsCategoryCommand {
|
|
12
|
+
static description = withDocs(t('commands.metrics.overall.description', '[CLOSED BETA] Get system-wide aggregate metrics. The Metrics API must be enabled for your organization.', {}), '/cli/metrics.html#b2c-metrics-overall');
|
|
13
|
+
static examples = [
|
|
14
|
+
'<%= config.bin %> <%= command.id %> --tenant-id f_ecom_zzxy_prd',
|
|
15
|
+
'<%= config.bin %> <%= command.id %> --tenant-id f_ecom_zzxy_prd --window 1h',
|
|
16
|
+
'<%= config.bin %> <%= command.id %> --tenant-id f_ecom_zzxy_prd --json',
|
|
17
|
+
];
|
|
18
|
+
static flags = {
|
|
19
|
+
...MetricsCategoryCommand.baseFlags,
|
|
20
|
+
...MetricsCategoryCommand.timeWindowFlags,
|
|
21
|
+
};
|
|
22
|
+
category = 'overall';
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=overall.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"overall.js","sourceRoot":"","sources":["../../../src/commands/metrics/overall.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAC,sBAAsB,EAAC,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAC,CAAC,EAAE,QAAQ,EAAC,MAAM,qBAAqB,CAAC;AAEhD;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,sBAA6C;IACvF,MAAM,CAAC,WAAW,GAAG,QAAQ,CAC3B,CAAC,CACC,sCAAsC,EACtC,yGAAyG,EACzG,EAAE,CACH,EACD,uCAAuC,CACxC,CAAC;IAEF,MAAM,CAAC,QAAQ,GAAG;QAChB,iEAAiE;QACjE,6EAA6E;QAC7E,wEAAwE;KACzE,CAAC;IAEF,MAAM,CAAC,KAAK,GAAG;QACb,GAAG,sBAAsB,CAAC,SAAS;QACnC,GAAG,sBAAsB,CAAC,eAAe;KAC1C,CAAC;IAEiB,QAAQ,GAAG,SAAkB,CAAC"}
|