@ucptools/validator 1.0.0 → 1.1.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/auth/config.d.ts +20 -0
- package/dist/auth/config.d.ts.map +1 -0
- package/dist/auth/config.js +114 -0
- package/dist/auth/config.js.map +1 -0
- package/dist/auth/index.d.ts +5 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +17 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/auth/middleware.d.ts +45 -0
- package/dist/auth/middleware.d.ts.map +1 -0
- package/dist/auth/middleware.js +170 -0
- package/dist/auth/middleware.js.map +1 -0
- package/dist/auth/service.d.ts +80 -0
- package/dist/auth/service.d.ts.map +1 -0
- package/dist/auth/service.js +298 -0
- package/dist/auth/service.js.map +1 -0
- package/dist/cli/index.d.ts +6 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +375 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/mock-server.d.ts +20 -0
- package/dist/cli/mock-server.d.ts.map +1 -0
- package/dist/cli/mock-server.js +261 -0
- package/dist/cli/mock-server.js.map +1 -0
- package/dist/compliance/compliance-generator.d.ts +34 -0
- package/dist/compliance/compliance-generator.d.ts.map +1 -0
- package/dist/compliance/compliance-generator.js +320 -0
- package/dist/compliance/compliance-generator.js.map +1 -0
- package/dist/compliance/index.d.ts +8 -0
- package/dist/compliance/index.d.ts.map +1 -0
- package/dist/compliance/index.js +17 -0
- package/dist/compliance/index.js.map +1 -0
- package/dist/compliance/templates.d.ts +34 -0
- package/dist/compliance/templates.d.ts.map +1 -0
- package/{src/compliance/templates.ts → dist/compliance/templates.js} +117 -155
- package/dist/compliance/templates.js.map +1 -0
- package/dist/compliance/types.d.ts +64 -0
- package/dist/compliance/types.d.ts.map +1 -0
- package/dist/compliance/types.js +64 -0
- package/dist/compliance/types.js.map +1 -0
- package/dist/db/index.d.ts +17 -0
- package/dist/db/index.d.ts.map +1 -0
- package/dist/db/index.js +80 -0
- package/dist/db/index.js.map +1 -0
- package/dist/db/schema.d.ts +3886 -0
- package/dist/db/schema.d.ts.map +1 -0
- package/dist/db/schema.js +425 -0
- package/dist/db/schema.js.map +1 -0
- package/dist/db/utils.d.ts +252 -0
- package/dist/db/utils.d.ts.map +1 -0
- package/dist/db/utils.js +295 -0
- package/dist/db/utils.js.map +1 -0
- package/dist/feed-analyzer/feed-analyzer.d.ts +26 -0
- package/dist/feed-analyzer/feed-analyzer.d.ts.map +1 -0
- package/{src/feed-analyzer/feed-analyzer.ts → dist/feed-analyzer/feed-analyzer.js} +856 -726
- package/dist/feed-analyzer/feed-analyzer.js.map +1 -0
- package/dist/feed-analyzer/index.d.ts +8 -0
- package/dist/feed-analyzer/index.d.ts.map +1 -0
- package/dist/feed-analyzer/index.js +19 -0
- package/dist/feed-analyzer/index.js.map +1 -0
- package/dist/feed-analyzer/types.d.ts +285 -0
- package/dist/feed-analyzer/types.d.ts.map +1 -0
- package/dist/feed-analyzer/types.js +175 -0
- package/dist/feed-analyzer/types.js.map +1 -0
- package/{src/generator/index.ts → dist/generator/index.d.ts} +1 -1
- package/dist/generator/index.d.ts.map +1 -0
- package/dist/generator/index.js +13 -0
- package/dist/generator/index.js.map +1 -0
- package/dist/generator/key-generator.d.ts +24 -0
- package/dist/generator/key-generator.d.ts.map +1 -0
- package/dist/generator/key-generator.js +144 -0
- package/dist/generator/key-generator.js.map +1 -0
- package/dist/generator/profile-builder.d.ts +15 -0
- package/dist/generator/profile-builder.d.ts.map +1 -0
- package/dist/generator/profile-builder.js +338 -0
- package/dist/generator/profile-builder.js.map +1 -0
- package/dist/hosting/artifacts-generator.d.ts +10 -0
- package/dist/hosting/artifacts-generator.d.ts.map +1 -0
- package/{src/hosting/artifacts-generator.ts → dist/hosting/artifacts-generator.js} +191 -241
- package/dist/hosting/artifacts-generator.js.map +1 -0
- package/{src/hosting/index.ts → dist/hosting/index.d.ts} +1 -1
- package/dist/hosting/index.d.ts.map +1 -0
- package/dist/hosting/index.js +10 -0
- package/dist/hosting/index.js.map +1 -0
- package/dist/index.d.ts +18 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +78 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/analytics.d.ts +337 -0
- package/dist/lib/analytics.d.ts.map +1 -0
- package/dist/lib/analytics.js +188 -0
- package/dist/lib/analytics.js.map +1 -0
- package/{src/security/index.ts → dist/security/index.d.ts} +8 -15
- package/dist/security/index.d.ts.map +1 -0
- package/dist/security/index.js +12 -0
- package/dist/security/index.js.map +1 -0
- package/dist/security/security-scanner.d.ts +10 -0
- package/dist/security/security-scanner.d.ts.map +1 -0
- package/dist/security/security-scanner.js +669 -0
- package/dist/security/security-scanner.js.map +1 -0
- package/dist/security/types.d.ts +80 -0
- package/dist/security/types.d.ts.map +1 -0
- package/dist/security/types.js +21 -0
- package/dist/security/types.js.map +1 -0
- package/dist/services/analytics.d.ts +114 -0
- package/dist/services/analytics.d.ts.map +1 -0
- package/dist/services/analytics.js +862 -0
- package/dist/services/analytics.js.map +1 -0
- package/dist/services/badge.d.ts +31 -0
- package/dist/services/badge.d.ts.map +1 -0
- package/dist/services/badge.js +152 -0
- package/dist/services/badge.js.map +1 -0
- package/dist/services/cron.d.ts +125 -0
- package/dist/services/cron.d.ts.map +1 -0
- package/dist/services/cron.js +613 -0
- package/dist/services/cron.js.map +1 -0
- package/dist/services/directory.d.ts +106 -0
- package/dist/services/directory.d.ts.map +1 -0
- package/dist/services/directory.js +351 -0
- package/dist/services/directory.js.map +1 -0
- package/dist/services/email.d.ts +112 -0
- package/dist/services/email.d.ts.map +1 -0
- package/dist/services/email.js +772 -0
- package/dist/services/email.js.map +1 -0
- package/dist/services/hosted-profiles.d.ts +77 -0
- package/dist/services/hosted-profiles.d.ts.map +1 -0
- package/dist/services/hosted-profiles.js +433 -0
- package/dist/services/hosted-profiles.js.map +1 -0
- package/dist/services/latency.d.ts +67 -0
- package/dist/services/latency.d.ts.map +1 -0
- package/dist/services/latency.js +274 -0
- package/dist/services/latency.js.map +1 -0
- package/dist/services/manifest-compliance.d.ts +64 -0
- package/dist/services/manifest-compliance.d.ts.map +1 -0
- package/dist/services/manifest-compliance.js +271 -0
- package/dist/services/manifest-compliance.js.map +1 -0
- package/dist/services/monitoring-diff.d.ts +31 -0
- package/dist/services/monitoring-diff.d.ts.map +1 -0
- package/dist/services/monitoring-diff.js +189 -0
- package/dist/services/monitoring-diff.js.map +1 -0
- package/dist/services/notifications.d.ts +46 -0
- package/dist/services/notifications.d.ts.map +1 -0
- package/dist/services/notifications.js +88 -0
- package/dist/services/notifications.js.map +1 -0
- package/dist/services/stripe.d.ts +93 -0
- package/dist/services/stripe.d.ts.map +1 -0
- package/dist/services/stripe.js +490 -0
- package/dist/services/stripe.js.map +1 -0
- package/dist/services/validation-history.d.ts +99 -0
- package/dist/services/validation-history.d.ts.map +1 -0
- package/dist/services/validation-history.js +344 -0
- package/dist/services/validation-history.js.map +1 -0
- package/dist/services/validation-logging.d.ts +103 -0
- package/dist/services/validation-logging.d.ts.map +1 -0
- package/dist/services/validation-logging.js +210 -0
- package/dist/services/validation-logging.js.map +1 -0
- package/dist/services/validation.d.ts +119 -0
- package/dist/services/validation.d.ts.map +1 -0
- package/dist/services/validation.js +1185 -0
- package/dist/services/validation.js.map +1 -0
- package/dist/simulator/agent-simulator.d.ts +69 -0
- package/dist/simulator/agent-simulator.d.ts.map +1 -0
- package/dist/simulator/agent-simulator.js +870 -0
- package/dist/simulator/agent-simulator.js.map +1 -0
- package/{src/simulator/index.ts → dist/simulator/index.d.ts} +7 -7
- package/dist/simulator/index.d.ts.map +1 -0
- package/dist/simulator/index.js +23 -0
- package/dist/simulator/index.js.map +1 -0
- package/{src/simulator/types.ts → dist/simulator/types.d.ts} +171 -170
- package/dist/simulator/types.d.ts.map +1 -0
- package/dist/simulator/types.js +18 -0
- package/dist/simulator/types.js.map +1 -0
- package/dist/types/acp-validation.d.ts +87 -0
- package/dist/types/acp-validation.d.ts.map +1 -0
- package/dist/types/acp-validation.js +40 -0
- package/dist/types/acp-validation.js.map +1 -0
- package/dist/types/analytics.d.ts +182 -0
- package/dist/types/analytics.d.ts.map +1 -0
- package/dist/types/analytics.js +7 -0
- package/dist/types/analytics.js.map +1 -0
- package/dist/types/generator.d.ts +106 -0
- package/dist/types/generator.d.ts.map +1 -0
- package/dist/types/generator.js +6 -0
- package/dist/types/generator.js.map +1 -0
- package/{src/types/index.ts → dist/types/index.d.ts} +1 -1
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +23 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/ucp-profile.d.ts +111 -0
- package/dist/types/ucp-profile.d.ts.map +1 -0
- package/dist/types/ucp-profile.js +45 -0
- package/dist/types/ucp-profile.js.map +1 -0
- package/dist/types/validation.d.ts +76 -0
- package/dist/types/validation.d.ts.map +1 -0
- package/dist/types/validation.js +42 -0
- package/dist/types/validation.js.map +1 -0
- package/dist/validator/acp/index.d.ts +31 -0
- package/dist/validator/acp/index.d.ts.map +1 -0
- package/dist/validator/acp/index.js +574 -0
- package/dist/validator/acp/index.js.map +1 -0
- package/dist/validator/index.d.ts +26 -0
- package/dist/validator/index.d.ts.map +1 -0
- package/dist/validator/index.js +161 -0
- package/dist/validator/index.js.map +1 -0
- package/dist/validator/network-validator.d.ts +28 -0
- package/dist/validator/network-validator.d.ts.map +1 -0
- package/dist/validator/network-validator.js +319 -0
- package/dist/validator/network-validator.js.map +1 -0
- package/dist/validator/rules-validator.d.ts +19 -0
- package/dist/validator/rules-validator.d.ts.map +1 -0
- package/dist/validator/rules-validator.js +306 -0
- package/dist/validator/rules-validator.js.map +1 -0
- package/dist/validator/sdk-validator.d.ts +58 -0
- package/dist/validator/sdk-validator.d.ts.map +1 -0
- package/{src/validator/sdk-validator.ts → dist/validator/sdk-validator.js} +273 -330
- package/dist/validator/sdk-validator.js.map +1 -0
- package/dist/validator/structural-validator.d.ts +11 -0
- package/dist/validator/structural-validator.d.ts.map +1 -0
- package/dist/validator/structural-validator.js +549 -0
- package/dist/validator/structural-validator.js.map +1 -0
- package/dist/validator/utils.d.ts +51 -0
- package/dist/validator/utils.d.ts.map +1 -0
- package/dist/validator/utils.js +132 -0
- package/dist/validator/utils.js.map +1 -0
- package/package.json +44 -12
- package/CLAUDE.md +0 -109
- package/api/analyze-feed.js +0 -140
- package/api/badge.js +0 -185
- package/api/benchmark.js +0 -177
- package/api/directory-stats.ts +0 -29
- package/api/directory.ts +0 -73
- package/api/generate-compliance.js +0 -143
- package/api/generate-schema.js +0 -457
- package/api/generate.js +0 -132
- package/api/security-scan.js +0 -133
- package/api/simulate.js +0 -187
- package/api/tsconfig.json +0 -10
- package/api/validate.js +0 -1351
- package/apify-actor/.actor/actor.json +0 -68
- package/apify-actor/.actor/input_schema.json +0 -32
- package/apify-actor/APIFY-STORE-LISTING.md +0 -412
- package/apify-actor/Dockerfile +0 -8
- package/apify-actor/README.md +0 -166
- package/apify-actor/main.ts +0 -111
- package/apify-actor/package.json +0 -17
- package/apify-actor/src/main.js +0 -199
- package/docs/BRAND-IDENTITY.md +0 -238
- package/docs/BRAND-STYLE-GUIDE.md +0 -356
- package/drizzle/0000_black_king_cobra.sql +0 -39
- package/drizzle/meta/0000_snapshot.json +0 -309
- package/drizzle/meta/_journal.json +0 -13
- package/drizzle.config.ts +0 -10
- package/public/.well-known/ucp +0 -25
- package/public/android-chrome-192x192.png +0 -0
- package/public/android-chrome-512x512.png +0 -0
- package/public/apple-touch-icon.png +0 -0
- package/public/brand.css +0 -321
- package/public/directory.html +0 -701
- package/public/favicon-16x16.png +0 -0
- package/public/favicon-32x32.png +0 -0
- package/public/favicon.ico +0 -0
- package/public/guides/bigcommerce.html +0 -743
- package/public/guides/fastucp.html +0 -838
- package/public/guides/magento.html +0 -779
- package/public/guides/shopify.html +0 -726
- package/public/guides/squarespace.html +0 -749
- package/public/guides/wix.html +0 -747
- package/public/guides/woocommerce.html +0 -733
- package/public/index.html +0 -3835
- package/public/learn.html +0 -396
- package/public/logo.jpeg +0 -0
- package/public/og-image-icon.png +0 -0
- package/public/og-image.png +0 -0
- package/public/robots.txt +0 -6
- package/public/site.webmanifest +0 -31
- package/public/sitemap.xml +0 -69
- package/public/social/linkedin-banner-1128x191.png +0 -0
- package/public/social/temp.PNG +0 -0
- package/public/social/x-header-1500x500.png +0 -0
- package/public/verify.html +0 -410
- package/scripts/generate-favicons.js +0 -44
- package/scripts/generate-ico.js +0 -23
- package/scripts/generate-og-image.js +0 -45
- package/scripts/reset-db.ts +0 -77
- package/scripts/seed-db.ts +0 -71
- package/scripts/setup-benchmark-db.js +0 -70
- package/src/api/server.ts +0 -266
- package/src/cli/index.ts +0 -302
- package/src/compliance/compliance-generator.ts +0 -452
- package/src/compliance/index.ts +0 -28
- package/src/compliance/types.ts +0 -170
- package/src/db/index.ts +0 -28
- package/src/db/schema.ts +0 -84
- package/src/feed-analyzer/index.ts +0 -34
- package/src/feed-analyzer/types.ts +0 -354
- package/src/generator/key-generator.ts +0 -124
- package/src/generator/profile-builder.ts +0 -402
- package/src/index.ts +0 -105
- package/src/security/security-scanner.ts +0 -604
- package/src/security/types.ts +0 -55
- package/src/services/directory.ts +0 -434
- package/src/simulator/agent-simulator.ts +0 -941
- package/src/types/generator.ts +0 -140
- package/src/types/ucp-profile.ts +0 -140
- package/src/types/validation.ts +0 -89
- package/src/validator/index.ts +0 -194
- package/src/validator/network-validator.ts +0 -417
- package/src/validator/rules-validator.ts +0 -297
- package/src/validator/structural-validator.ts +0 -476
- package/tests/fixtures/non-compliant-profile.json +0 -25
- package/tests/fixtures/official-sample-profile.json +0 -75
- package/tests/integration/benchmark.test.ts +0 -207
- package/tests/integration/database.test.ts +0 -163
- package/tests/integration/directory-api.test.ts +0 -268
- package/tests/integration/simulate-api.test.ts +0 -230
- package/tests/integration/validate-api.test.ts +0 -269
- package/tests/setup.ts +0 -15
- package/tests/unit/agent-simulator.test.ts +0 -575
- package/tests/unit/compliance-generator.test.ts +0 -374
- package/tests/unit/directory-service.test.ts +0 -272
- package/tests/unit/feed-analyzer.test.ts +0 -517
- package/tests/unit/lint-suggestions.test.ts +0 -423
- package/tests/unit/official-samples.test.ts +0 -211
- package/tests/unit/pdf-report.test.ts +0 -390
- package/tests/unit/sdk-validator.test.ts +0 -531
- package/tests/unit/security-scanner.test.ts +0 -410
- package/tests/unit/validation.test.ts +0 -390
- package/tsconfig.json +0 -20
- package/vercel.json +0 -34
- package/vitest.config.ts +0 -22
|
@@ -1,117 +1,94 @@
|
|
|
1
|
+
"use strict";
|
|
1
2
|
/**
|
|
2
3
|
* Hosting Artifacts Generator
|
|
3
4
|
* Generates installation artifacts for different hosting platforms
|
|
4
5
|
*/
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
HostingConfig,
|
|
8
|
-
HostingMode,
|
|
9
|
-
HostingPlatform,
|
|
10
|
-
InstallArtifact,
|
|
11
|
-
} from '../types/generator.js';
|
|
12
|
-
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.generateHostingArtifacts = generateHostingArtifacts;
|
|
13
8
|
const HOSTED_PROFILE_BASE_URL = 'https://profiles.ucp.tools';
|
|
14
|
-
|
|
15
9
|
/**
|
|
16
10
|
* Generate all installation artifacts for a hosting configuration
|
|
17
11
|
*/
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
break;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
// Always include README
|
|
46
|
-
artifacts.push(generateReadme(config));
|
|
47
|
-
|
|
48
|
-
return artifacts;
|
|
12
|
+
function generateHostingArtifacts(config, profileJson) {
|
|
13
|
+
const artifacts = [];
|
|
14
|
+
// Always include the profile JSON
|
|
15
|
+
artifacts.push({
|
|
16
|
+
filename: 'ucp.json',
|
|
17
|
+
content: profileJson,
|
|
18
|
+
contentType: 'json',
|
|
19
|
+
description: 'UCP Business Profile JSON file',
|
|
20
|
+
});
|
|
21
|
+
// Generate platform-specific artifacts
|
|
22
|
+
switch (config.mode) {
|
|
23
|
+
case 'static':
|
|
24
|
+
artifacts.push(...generateStaticArtifacts(config));
|
|
25
|
+
break;
|
|
26
|
+
case 'edge-worker':
|
|
27
|
+
artifacts.push(...generateEdgeWorkerArtifacts(config));
|
|
28
|
+
break;
|
|
29
|
+
case 'reverse-proxy':
|
|
30
|
+
artifacts.push(...generateReverseProxyArtifacts(config));
|
|
31
|
+
break;
|
|
32
|
+
}
|
|
33
|
+
// Always include README
|
|
34
|
+
artifacts.push(generateReadme(config));
|
|
35
|
+
return artifacts;
|
|
49
36
|
}
|
|
50
|
-
|
|
51
37
|
/**
|
|
52
38
|
* Generate artifacts for static file hosting
|
|
53
39
|
*/
|
|
54
|
-
function generateStaticArtifacts(config
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
return artifacts;
|
|
40
|
+
function generateStaticArtifacts(config) {
|
|
41
|
+
const artifacts = [];
|
|
42
|
+
const platform = config.platform || 'generic';
|
|
43
|
+
switch (platform) {
|
|
44
|
+
case 'nginx':
|
|
45
|
+
artifacts.push(generateNginxStaticConfig(config));
|
|
46
|
+
break;
|
|
47
|
+
case 'apache':
|
|
48
|
+
artifacts.push(generateApacheConfig(config));
|
|
49
|
+
break;
|
|
50
|
+
case 'vercel':
|
|
51
|
+
artifacts.push(generateVercelConfig(config));
|
|
52
|
+
break;
|
|
53
|
+
case 'netlify':
|
|
54
|
+
artifacts.push(generateNetlifyConfig(config));
|
|
55
|
+
break;
|
|
56
|
+
case 'cloudflare-pages':
|
|
57
|
+
artifacts.push(generateCloudflarePagesFunctions(config));
|
|
58
|
+
break;
|
|
59
|
+
case 's3-cloudfront':
|
|
60
|
+
artifacts.push(generateS3Instructions(config));
|
|
61
|
+
break;
|
|
62
|
+
default:
|
|
63
|
+
artifacts.push(generateGenericStaticInstructions(config));
|
|
64
|
+
}
|
|
65
|
+
return artifacts;
|
|
82
66
|
}
|
|
83
|
-
|
|
84
67
|
/**
|
|
85
68
|
* Generate artifacts for edge worker hosting
|
|
86
69
|
*/
|
|
87
|
-
function generateEdgeWorkerArtifacts(config
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
return artifacts;
|
|
70
|
+
function generateEdgeWorkerArtifacts(config) {
|
|
71
|
+
const artifacts = [];
|
|
72
|
+
const platform = config.platform || 'cloudflare-worker';
|
|
73
|
+
if (platform === 'cloudflare-worker') {
|
|
74
|
+
artifacts.push(generateCloudflareWorker(config));
|
|
75
|
+
artifacts.push(generateWranglerConfig(config));
|
|
76
|
+
}
|
|
77
|
+
return artifacts;
|
|
97
78
|
}
|
|
98
|
-
|
|
99
79
|
/**
|
|
100
80
|
* Generate artifacts for reverse proxy hosting
|
|
101
81
|
*/
|
|
102
|
-
function generateReverseProxyArtifacts(config
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
return artifacts;
|
|
82
|
+
function generateReverseProxyArtifacts(config) {
|
|
83
|
+
const artifacts = [];
|
|
84
|
+
artifacts.push(generateNginxProxyConfig(config));
|
|
85
|
+
return artifacts;
|
|
108
86
|
}
|
|
109
|
-
|
|
110
87
|
/**
|
|
111
88
|
* Nginx static file configuration
|
|
112
89
|
*/
|
|
113
|
-
function generateNginxStaticConfig(config
|
|
114
|
-
|
|
90
|
+
function generateNginxStaticConfig(config) {
|
|
91
|
+
const content = `# Nginx configuration for UCP profile at ${config.merchantDomain}
|
|
115
92
|
# Add this to your server block
|
|
116
93
|
|
|
117
94
|
location = /.well-known/ucp {
|
|
@@ -132,20 +109,18 @@ location = /.well-known/ucp {
|
|
|
132
109
|
}
|
|
133
110
|
}
|
|
134
111
|
`;
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
};
|
|
112
|
+
return {
|
|
113
|
+
filename: 'nginx-ucp.conf',
|
|
114
|
+
content,
|
|
115
|
+
contentType: 'nginx',
|
|
116
|
+
description: 'Nginx configuration snippet for static UCP profile',
|
|
117
|
+
};
|
|
142
118
|
}
|
|
143
|
-
|
|
144
119
|
/**
|
|
145
120
|
* Apache configuration
|
|
146
121
|
*/
|
|
147
|
-
function generateApacheConfig(config
|
|
148
|
-
|
|
122
|
+
function generateApacheConfig(config) {
|
|
123
|
+
const content = `# Apache configuration for UCP profile at ${config.merchantDomain}
|
|
149
124
|
# Add this to your VirtualHost or .htaccess
|
|
150
125
|
|
|
151
126
|
<IfModule mod_rewrite.c>
|
|
@@ -173,61 +148,56 @@ function generateApacheConfig(config: HostingConfig): InstallArtifact {
|
|
|
173
148
|
</LocationMatch>
|
|
174
149
|
</IfModule>
|
|
175
150
|
`;
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
};
|
|
151
|
+
return {
|
|
152
|
+
filename: '.htaccess',
|
|
153
|
+
content,
|
|
154
|
+
contentType: 'apache',
|
|
155
|
+
description: 'Apache configuration for UCP profile',
|
|
156
|
+
};
|
|
183
157
|
}
|
|
184
|
-
|
|
185
158
|
/**
|
|
186
159
|
* Vercel configuration
|
|
187
160
|
*/
|
|
188
|
-
function generateVercelConfig(config
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
headers: [
|
|
194
|
-
{
|
|
195
|
-
source: '/.well-known/ucp',
|
|
196
|
-
headers: [
|
|
197
|
-
{ key: 'Content-Type', value: 'application/json' },
|
|
198
|
-
{ key: 'Access-Control-Allow-Origin', value: '*' },
|
|
199
|
-
{ key: 'Access-Control-Allow-Methods', value: 'GET, OPTIONS' },
|
|
200
|
-
{ key: 'Cache-Control', value: 'public, max-age=3600' }
|
|
201
|
-
]
|
|
202
|
-
},
|
|
203
|
-
{
|
|
204
|
-
source: '/ucp.json',
|
|
161
|
+
function generateVercelConfig(config) {
|
|
162
|
+
const content = JSON.stringify({
|
|
163
|
+
rewrites: [
|
|
164
|
+
{ source: '/.well-known/ucp', destination: '/ucp.json' }
|
|
165
|
+
],
|
|
205
166
|
headers: [
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
167
|
+
{
|
|
168
|
+
source: '/.well-known/ucp',
|
|
169
|
+
headers: [
|
|
170
|
+
{ key: 'Content-Type', value: 'application/json' },
|
|
171
|
+
{ key: 'Access-Control-Allow-Origin', value: '*' },
|
|
172
|
+
{ key: 'Access-Control-Allow-Methods', value: 'GET, OPTIONS' },
|
|
173
|
+
{ key: 'Cache-Control', value: 'public, max-age=3600' }
|
|
174
|
+
]
|
|
175
|
+
},
|
|
176
|
+
{
|
|
177
|
+
source: '/ucp.json',
|
|
178
|
+
headers: [
|
|
179
|
+
{ key: 'Content-Type', value: 'application/json' },
|
|
180
|
+
{ key: 'Access-Control-Allow-Origin', value: '*' },
|
|
181
|
+
{ key: 'Cache-Control', value: 'public, max-age=3600' }
|
|
182
|
+
]
|
|
183
|
+
}
|
|
209
184
|
]
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
contentType: 'json',
|
|
218
|
-
description: 'Vercel configuration for UCP profile routing',
|
|
219
|
-
};
|
|
185
|
+
}, null, 2);
|
|
186
|
+
return {
|
|
187
|
+
filename: 'vercel.json',
|
|
188
|
+
content,
|
|
189
|
+
contentType: 'json',
|
|
190
|
+
description: 'Vercel configuration for UCP profile routing',
|
|
191
|
+
};
|
|
220
192
|
}
|
|
221
|
-
|
|
222
193
|
/**
|
|
223
194
|
* Netlify configuration
|
|
224
195
|
*/
|
|
225
|
-
function generateNetlifyConfig(config
|
|
226
|
-
|
|
196
|
+
function generateNetlifyConfig(config) {
|
|
197
|
+
const redirects = `# Netlify redirects for UCP profile
|
|
227
198
|
/.well-known/ucp /ucp.json 200
|
|
228
199
|
`;
|
|
229
|
-
|
|
230
|
-
const headers = `# Netlify headers
|
|
200
|
+
const headers = `# Netlify headers
|
|
231
201
|
/.well-known/ucp
|
|
232
202
|
Content-Type: application/json
|
|
233
203
|
Access-Control-Allow-Origin: *
|
|
@@ -239,20 +209,18 @@ function generateNetlifyConfig(config: HostingConfig): InstallArtifact {
|
|
|
239
209
|
Access-Control-Allow-Origin: *
|
|
240
210
|
Cache-Control: public, max-age=3600
|
|
241
211
|
`;
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
};
|
|
212
|
+
return {
|
|
213
|
+
filename: '_redirects',
|
|
214
|
+
content: redirects + '\n' + headers.replace(/^/gm, '# '),
|
|
215
|
+
contentType: 'markdown',
|
|
216
|
+
description: 'Netlify redirects and headers (also create _headers file)',
|
|
217
|
+
};
|
|
249
218
|
}
|
|
250
|
-
|
|
251
219
|
/**
|
|
252
220
|
* Cloudflare Pages Functions
|
|
253
221
|
*/
|
|
254
|
-
function generateCloudflarePagesFunctions(config
|
|
255
|
-
|
|
222
|
+
function generateCloudflarePagesFunctions(config) {
|
|
223
|
+
const content = `// Cloudflare Pages Function for /.well-known/ucp
|
|
256
224
|
// Place this file at: functions/.well-known/ucp.js
|
|
257
225
|
|
|
258
226
|
export async function onRequest(context) {
|
|
@@ -272,23 +240,20 @@ export async function onRequest(context) {
|
|
|
272
240
|
});
|
|
273
241
|
}
|
|
274
242
|
`;
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
};
|
|
243
|
+
return {
|
|
244
|
+
filename: 'functions/.well-known/ucp.js',
|
|
245
|
+
content,
|
|
246
|
+
contentType: 'javascript',
|
|
247
|
+
description: 'Cloudflare Pages Function for UCP endpoint',
|
|
248
|
+
};
|
|
282
249
|
}
|
|
283
|
-
|
|
284
250
|
/**
|
|
285
251
|
* Cloudflare Worker for edge hosting
|
|
286
252
|
*/
|
|
287
|
-
function generateCloudflareWorker(config
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
const content = `// Cloudflare Worker for UCP Profile Proxy
|
|
253
|
+
function generateCloudflareWorker(config) {
|
|
254
|
+
const hostedUrl = config.hostedProfileUrl ||
|
|
255
|
+
`${HOSTED_PROFILE_BASE_URL}/${config.merchantId}/ucp.json`;
|
|
256
|
+
const content = `// Cloudflare Worker for UCP Profile Proxy
|
|
292
257
|
// Route: ${config.merchantDomain}/.well-known/ucp*
|
|
293
258
|
|
|
294
259
|
export default {
|
|
@@ -357,20 +322,18 @@ export default {
|
|
|
357
322
|
},
|
|
358
323
|
};
|
|
359
324
|
`;
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
};
|
|
325
|
+
return {
|
|
326
|
+
filename: 'worker.js',
|
|
327
|
+
content,
|
|
328
|
+
contentType: 'javascript',
|
|
329
|
+
description: 'Cloudflare Worker for proxying UCP profile from hosted service',
|
|
330
|
+
};
|
|
367
331
|
}
|
|
368
|
-
|
|
369
332
|
/**
|
|
370
333
|
* Wrangler configuration for Cloudflare Worker
|
|
371
334
|
*/
|
|
372
|
-
function generateWranglerConfig(config
|
|
373
|
-
|
|
335
|
+
function generateWranglerConfig(config) {
|
|
336
|
+
const content = `# Cloudflare Worker configuration
|
|
374
337
|
# Run: npx wrangler deploy
|
|
375
338
|
|
|
376
339
|
name = "ucp-profile-${config.merchantId}"
|
|
@@ -387,23 +350,20 @@ routes = [
|
|
|
387
350
|
# [vars]
|
|
388
351
|
# PROFILE_URL = "${config.hostedProfileUrl || `${HOSTED_PROFILE_BASE_URL}/${config.merchantId}/ucp.json`}"
|
|
389
352
|
`;
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
};
|
|
353
|
+
return {
|
|
354
|
+
filename: 'wrangler.toml',
|
|
355
|
+
content,
|
|
356
|
+
contentType: 'markdown',
|
|
357
|
+
description: 'Wrangler configuration for deploying Cloudflare Worker',
|
|
358
|
+
};
|
|
397
359
|
}
|
|
398
|
-
|
|
399
360
|
/**
|
|
400
361
|
* Nginx reverse proxy configuration
|
|
401
362
|
*/
|
|
402
|
-
function generateNginxProxyConfig(config
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
const content = `# Nginx reverse proxy configuration for UCP profile
|
|
363
|
+
function generateNginxProxyConfig(config) {
|
|
364
|
+
const hostedUrl = config.hostedProfileUrl ||
|
|
365
|
+
`${HOSTED_PROFILE_BASE_URL}/${config.merchantId}/ucp.json`;
|
|
366
|
+
const content = `# Nginx reverse proxy configuration for UCP profile
|
|
407
367
|
# Add this to your server block
|
|
408
368
|
|
|
409
369
|
location = /.well-known/ucp {
|
|
@@ -432,20 +392,18 @@ location = /.well-known/ucp {
|
|
|
432
392
|
}
|
|
433
393
|
}
|
|
434
394
|
`;
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
};
|
|
395
|
+
return {
|
|
396
|
+
filename: 'nginx-proxy.conf',
|
|
397
|
+
content,
|
|
398
|
+
contentType: 'nginx',
|
|
399
|
+
description: 'Nginx reverse proxy configuration for hosted UCP profile',
|
|
400
|
+
};
|
|
442
401
|
}
|
|
443
|
-
|
|
444
402
|
/**
|
|
445
403
|
* S3 + CloudFront instructions
|
|
446
404
|
*/
|
|
447
|
-
function generateS3Instructions(config
|
|
448
|
-
|
|
405
|
+
function generateS3Instructions(config) {
|
|
406
|
+
const content = `# AWS S3 + CloudFront Setup for UCP Profile
|
|
449
407
|
|
|
450
408
|
## 1. Upload Profile to S3
|
|
451
409
|
|
|
@@ -505,20 +463,18 @@ curl -I https://${config.merchantDomain}/.well-known/ucp
|
|
|
505
463
|
|
|
506
464
|
Expected: HTTP 200 with Content-Type: application/json
|
|
507
465
|
`;
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
};
|
|
466
|
+
return {
|
|
467
|
+
filename: 'aws-setup.md',
|
|
468
|
+
content,
|
|
469
|
+
contentType: 'markdown',
|
|
470
|
+
description: 'AWS S3 + CloudFront setup instructions',
|
|
471
|
+
};
|
|
515
472
|
}
|
|
516
|
-
|
|
517
473
|
/**
|
|
518
474
|
* Generic static hosting instructions
|
|
519
475
|
*/
|
|
520
|
-
function generateGenericStaticInstructions(config
|
|
521
|
-
|
|
476
|
+
function generateGenericStaticInstructions(config) {
|
|
477
|
+
const content = `# UCP Profile Static Hosting Instructions
|
|
522
478
|
|
|
523
479
|
## Requirements
|
|
524
480
|
|
|
@@ -565,20 +521,18 @@ Run the UCP validator to check your deployment:
|
|
|
565
521
|
ucp-validate --remote ${config.merchantDomain}
|
|
566
522
|
\`\`\`
|
|
567
523
|
`;
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
};
|
|
524
|
+
return {
|
|
525
|
+
filename: 'setup-instructions.md',
|
|
526
|
+
content,
|
|
527
|
+
contentType: 'markdown',
|
|
528
|
+
description: 'Generic static hosting setup instructions',
|
|
529
|
+
};
|
|
575
530
|
}
|
|
576
|
-
|
|
577
531
|
/**
|
|
578
532
|
* Generate README with all options
|
|
579
533
|
*/
|
|
580
|
-
function generateReadme(config
|
|
581
|
-
|
|
534
|
+
function generateReadme(config) {
|
|
535
|
+
const content = `# UCP Profile Installation - ${config.merchantDomain}
|
|
582
536
|
|
|
583
537
|
## Profile Information
|
|
584
538
|
|
|
@@ -634,46 +588,42 @@ For assistance, contact: hello@ucp.tools
|
|
|
634
588
|
---
|
|
635
589
|
Generated by UCP Profile Manager v1.0
|
|
636
590
|
`;
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
};
|
|
591
|
+
return {
|
|
592
|
+
filename: 'README.md',
|
|
593
|
+
content,
|
|
594
|
+
contentType: 'markdown',
|
|
595
|
+
description: 'Installation guide and documentation',
|
|
596
|
+
};
|
|
644
597
|
}
|
|
645
|
-
|
|
646
598
|
/**
|
|
647
599
|
* Get installation steps based on hosting config
|
|
648
600
|
*/
|
|
649
|
-
function getInstallationSteps(config
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
601
|
+
function getInstallationSteps(config) {
|
|
602
|
+
switch (config.mode) {
|
|
603
|
+
case 'static':
|
|
604
|
+
return `### Static File Hosting
|
|
653
605
|
|
|
654
606
|
1. Copy \`ucp.json\` to your web server
|
|
655
607
|
2. Apply the configuration from the platform-specific config file
|
|
656
608
|
3. Restart your web server if needed
|
|
657
609
|
4. Test the endpoint`;
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
return `### Edge Worker Deployment
|
|
610
|
+
case 'edge-worker':
|
|
611
|
+
return `### Edge Worker Deployment
|
|
661
612
|
|
|
662
613
|
1. Install Wrangler CLI: \`npm install -g wrangler\`
|
|
663
614
|
2. Authenticate: \`wrangler login\`
|
|
664
615
|
3. Update \`wrangler.toml\` with your zone settings
|
|
665
616
|
4. Deploy: \`npx wrangler deploy\`
|
|
666
617
|
5. Verify the route is active in Cloudflare dashboard`;
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
return `### Reverse Proxy Setup
|
|
618
|
+
case 'reverse-proxy':
|
|
619
|
+
return `### Reverse Proxy Setup
|
|
670
620
|
|
|
671
621
|
1. Add the nginx configuration snippet to your server block
|
|
672
622
|
2. Test configuration: \`nginx -t\`
|
|
673
623
|
3. Reload nginx: \`sudo systemctl reload nginx\`
|
|
674
624
|
4. Verify the endpoint proxies correctly`;
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
}
|
|
625
|
+
default:
|
|
626
|
+
return `See the included configuration files for setup instructions.`;
|
|
627
|
+
}
|
|
679
628
|
}
|
|
629
|
+
//# sourceMappingURL=artifacts-generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"artifacts-generator.js","sourceRoot":"","sources":["../../src/hosting/artifacts-generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hosting/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Hosting Module
|
|
4
|
+
* Generates installation artifacts for different platforms
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.generateHostingArtifacts = void 0;
|
|
8
|
+
var artifacts_generator_js_1 = require("./artifacts-generator.js");
|
|
9
|
+
Object.defineProperty(exports, "generateHostingArtifacts", { enumerable: true, get: function () { return artifacts_generator_js_1.generateHostingArtifacts; } });
|
|
10
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hosting/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,mEAAoE;AAA3D,kIAAA,wBAAwB,OAAA"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* UCP Profile Manager
|
|
3
|
+
* Generate, validate, and host UCP Business Profiles
|
|
4
|
+
*
|
|
5
|
+
* @packageDocumentation
|
|
6
|
+
*/
|
|
7
|
+
export * from './types/index.js';
|
|
8
|
+
export { buildProfile, generateMinimalProfile, generateSigningKeyPair, validatePublicKey, } from './generator/index.js';
|
|
9
|
+
export { validateProfile, validateRemote, validateQuick, validateJsonString, validateStructure, validateRules, validateNetwork, clearSchemaCache, } from './validator/index.js';
|
|
10
|
+
export { simulateAgentInteraction, simulateDiscoveryFlow, inspectCapabilities, inspectServices, simulateRestApi, simulateCheckoutFlow, simulatePaymentReadiness, } from './simulator/index.js';
|
|
11
|
+
export { generateHostingArtifacts } from './hosting/index.js';
|
|
12
|
+
export { scanEndpointSecurity, SecurityCheckIds, } from './security/index.js';
|
|
13
|
+
export type { SecurityCheck, SecurityScanResult, SecurityScanOptions, SecuritySeverity, SecurityCheckStatus, SecurityCheckId, } from './security/index.js';
|
|
14
|
+
export { generateComplianceDocuments, getAvailableRegions, getLawfulBasisOptions, getAiPlatformOptions, AI_PLATFORM_PROCESSORS, REGION_NAMES, LAWFUL_BASIS_DESCRIPTIONS, } from './compliance/index.js';
|
|
15
|
+
export type { ComplianceRegion, LawfulBasis, AgentPlatform, ComplianceGeneratorInput, ComplianceGeneratorOutput, ComplianceDocument, ComplianceSection, DataProcessor, } from './compliance/index.js';
|
|
16
|
+
export { analyzeProductFeed, analyzeProductFeedFromHtml, analyzeProduct, extractProductsFromHtml, validateGtin, QUALITY_CHECKS, VALID_AVAILABILITY_VALUES, CATEGORY_WEIGHTS, GRADE_THRESHOLDS, } from './feed-analyzer/index.js';
|
|
17
|
+
export type { ProductData, ProductOffer, ProductAnalysis, QualityCheck, FeedAnalysisResult, FeedAnalysisInput, CategoryScores, Recommendation, FeedSummary, GtinValidation, IssueSeverity, CheckCategory, } from './feed-analyzer/index.js';
|
|
18
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,cAAc,kBAAkB,CAAC;AAGjC,OAAO,EACL,YAAY,EACZ,sBAAsB,EACtB,sBAAsB,EACtB,iBAAiB,GAClB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,eAAe,EACf,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,eAAe,EACf,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,mBAAmB,EACnB,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAG9D,OAAO,EACL,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,GAChB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,sBAAsB,EACtB,YAAY,EACZ,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,gBAAgB,EAChB,WAAW,EACX,aAAa,EACb,wBAAwB,EACxB,yBAAyB,EACzB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,GACd,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,cAAc,EACd,uBAAuB,EACvB,YAAY,EACZ,cAAc,EACd,yBAAyB,EACzB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACV,WAAW,EACX,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,WAAW,EACX,cAAc,EACd,aAAa,EACb,aAAa,GACd,MAAM,0BAA0B,CAAC"}
|