@hs-x/codegen 0.2.0 → 0.2.2

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/README.md CHANGED
@@ -1,46 +1,48 @@
1
1
  # @hs-x/codegen
2
2
 
3
3
  `@hs-x/codegen` turns an HS-X app's declarations into the concrete artifacts a
4
- deploy needs: the `.hs-x/refs` type stubs that give card and backend code a
5
- stable, type-checked link to each other; the Cloudflare Worker entrypoint that
6
- boots [`@hs-x/runtime`](https://www.npmjs.com/package/@hs-x/runtime); the
7
- Alchemy program that describes your Cloudflare resources; and the portal-schema
8
- management plan. It is the compiler step between *what you wrote* and *what gets
9
- deployed*.
10
-
11
- This package is **CLI-internal**. You do not install or call it directly
12
- `hs-x deploy` (and `hs-x dev`) invoke it for you. It is documented here so the
13
- generated files in your project (`.hs-x/refs/*`, `.hs-x/alchemy.run.ts`) are not
14
- a black box.
4
+ deploy needs: typed ref stubs that give card and backend code a stable,
5
+ type-checked link to each other, the Cloudflare Worker entrypoint that boots
6
+ [`@hs-x/runtime`](https://www.npmjs.com/package/@hs-x/runtime), the Alchemy
7
+ program that describes your Cloudflare resources, and the portal-schema
8
+ management plan. It is the compiler step between what you wrote and what gets
9
+ deployed.
10
+
11
+ This package is CLI-internal. You do not install or call it directly;
12
+ `hs-x deploy` and `hs-x dev` invoke it for you (it ships with
13
+ [`@hs-x/cli`](https://www.npmjs.com/package/@hs-x/cli)). It is documented here
14
+ so the generated files in your project's `.hs-x/` directory are not a black
15
+ box.
15
16
 
16
17
  ## What it generates
17
18
 
18
- - `renderRefsTypes` / `renderRefsModule` — the `.hs-x/refs` stubs behind the
19
- stable `@hs-x/refs` path alias, so card code and backend code reference each
20
- other through generated types instead of fragile relative imports. (The
21
- `hs-x init` scaffold configures this alias in `tsconfig.json`.)
22
- - `renderCloudflareWorkerEntrypoint` the Worker entrypoint that wires your
23
- worker definition into `createRuntime(...)`.
24
- - `renderAlchemyProgram` / `workerCloudflareResourcePlan` the
25
- [Alchemy](https://alchemy.run) infrastructure program written to
26
- `.hs-x/alchemy.run.ts`. This file is **tracked in git on purpose**: it is the
27
- leaveability artifact, a plain description of the Cloudflare resources your app
28
- owns, so you can keep running it without HS-X.
29
- - `planPortalSchemaManagement` diffs your declared app objects/properties
30
- against the observed portal schema to produce a create/update plan.
31
- - `generateProjectArtifacts`, `generateHubSpotRuntimeProject`,
32
- `generateLegacyCardProject` — assemble the full HubSpot project + worker source
33
- for a deploy.
19
+ | Export | Artifact |
20
+ | --- | --- |
21
+ | `generateProjectArtifacts` | Writes the `.hs-x/` output set for a project: `manifest.json`, `refs.d.ts`, `refs.js`, and `alchemy.run.ts` |
22
+ | `renderRefsTypes` / `renderRefsModule` | The `.hs-x/refs.d.ts` and `.hs-x/refs.js` stubs: one typed export per card backend, app object, and app event, so card code references backend capabilities through generated identifiers instead of hand-typed ids |
23
+ | `renderCloudflareWorkerEntrypoint` | The Worker entrypoint that wires your worker definition into `createRuntime(...)` with token stores, OAuth, and rate limiting |
24
+ | `renderAlchemyProgram` / `workerCloudflareResourcePlan` | The [Alchemy](https://alchemy.run) infrastructure program written to `.hs-x/alchemy.run.ts` |
25
+ | `planPortalSchemaManagement` | Diffs your declared app objects and properties against the observed portal schema to produce a create/alter plan |
26
+ | `generateHubSpotRuntimeProject` / `generateLegacyCardProject` | Assemble the full HubSpot project source for a deploy or a card migration |
27
+
28
+ `.hs-x/alchemy.run.ts` is tracked in git on purpose: it is the leaveability
29
+ artifact, a plain description of the Cloudflare resources your app owns, so you
30
+ can keep running the app without HS-X. The rest of `.hs-x/` is regenerated on
31
+ every `dev` and `deploy` and stays gitignored.
34
32
 
35
33
  ## Part of HS-X
36
34
 
37
35
  HS-X is a leaveable, type-safe HubSpot app framework on Cloudflare Workers.
38
- Deployed apps run in *your own* Cloudflare account. Start with the CLI:
36
+ Deployed apps run in your own Cloudflare account. Start with the CLI:
39
37
 
40
38
  ```bash
41
39
  npm i -g @hs-x/cli
42
40
  hs-x init myapp
43
41
  ```
44
42
 
45
- See [`@hs-x/cli`](https://www.npmjs.com/package/@hs-x/cli) and
46
- [hs-x.dev](https://hs-x.dev).
43
+ See [`@hs-x/cli`](https://www.npmjs.com/package/@hs-x/cli) and the docs at
44
+ [hs-x.dev/docs](https://hs-x.dev/docs).
45
+
46
+ ## License
47
+
48
+ Apache-2.0
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import type { AccountId, AppEventDeclaration, AppObjectAssociationDeclaration, AppObjectDeclaration, CardDefinition, DeployId, ProjectId, ProjectManifest, WorkerManifest } from '@hs-x/types';
2
- export declare const CODEGEN_VERSION = "0.1.0";
2
+ export declare const CODEGEN_VERSION = "0.2.2";
3
3
  export type { CapabilityManifest, ProjectManifest, WorkerManifest } from '@hs-x/types';
4
4
  export interface GenerateProjectArtifactsOptions {
5
5
  readonly root: string;
@@ -60,6 +60,7 @@ export interface GeneratedProjectSource {
60
60
  }
61
61
  export interface HubSpotRuntimeProjectOptions {
62
62
  readonly appName: string;
63
+ readonly description?: string;
63
64
  readonly distribution: string;
64
65
  readonly auth: string;
65
66
  readonly platformVersion?: string;
@@ -120,6 +121,122 @@ export declare function planPortalSchemaManagement(input: {
120
121
  readonly observed: ObservedPortalSchema;
121
122
  }): PortalSchemaPlan;
122
123
  export declare function generateLegacyCardProject(input: LegacyCardMigrationInput): GeneratedProjectSource;
124
+ /**
125
+ * 2023.2/2025.1 `serverless.json` source shape (matrix §4). Mirrors
126
+ * `ServerlessMigrationFixture` in `@hs-x/fixtures`.
127
+ */
128
+ export interface ServerlessMigrationInput {
129
+ readonly legacyApp: {
130
+ readonly appId: string;
131
+ readonly name: string;
132
+ readonly portalId: string;
133
+ };
134
+ readonly serverless: {
135
+ readonly appFunctions: Readonly<Record<string, {
136
+ readonly file?: string;
137
+ readonly secrets?: readonly string[];
138
+ readonly endpoint?: {
139
+ readonly path: string;
140
+ readonly method: readonly string[];
141
+ };
142
+ }>>;
143
+ };
144
+ }
145
+ /**
146
+ * Map the PORTABLE app functions (a `file`, no public `endpoint`) of a legacy
147
+ * serverless source onto a Worker-backed HS-X project: one `tool` capability
148
+ * per function, handler stubs that name the original source file, secrets
149
+ * surfaced as `hs-x secrets` TODOs. Endpoint functions are deliberately NOT
150
+ * generated — the classifier flags their URL-contract change for human review
151
+ * first (`serverless.endpoint.url-contract`).
152
+ */
153
+ export declare function generateServerlessWorkerProject(input: ServerlessMigrationInput): GeneratedProjectSource;
154
+ /** Webhook subscription entry (matrix §5 hsmeta `config.subscriptions`). */
155
+ interface WebhookSubscriptionEntry {
156
+ readonly subscriptionType?: string;
157
+ readonly objectType?: string;
158
+ readonly propertyName?: string;
159
+ readonly active?: boolean;
160
+ }
161
+ /** Workflow action config (matrix §6 hsmeta `config` + uid). */
162
+ interface WorkflowActionEntry {
163
+ readonly uid?: string;
164
+ readonly actionUrl?: string;
165
+ readonly inputFields?: readonly {
166
+ readonly typeDefinition?: {
167
+ readonly name?: string;
168
+ readonly type?: string;
169
+ readonly options?: readonly {
170
+ readonly value: string;
171
+ readonly label: string;
172
+ }[];
173
+ };
174
+ readonly isRequired?: boolean;
175
+ }[];
176
+ readonly labels?: Readonly<Record<string, {
177
+ readonly actionName?: string;
178
+ }>>;
179
+ readonly objectTypes?: readonly string[];
180
+ }
181
+ /**
182
+ * The full classifier-input shape (what `detectMigrationSource` assembles and
183
+ * `classifyMigrationInput` consumes) — the composed generator accepts the same.
184
+ */
185
+ export interface MigratedProjectInput {
186
+ readonly legacyApp: {
187
+ readonly appId: string;
188
+ readonly name: string;
189
+ readonly portalId: string;
190
+ };
191
+ readonly legacyCard?: LegacyCardMigrationInput['legacyCard'];
192
+ readonly serverless?: ServerlessMigrationInput['serverless'];
193
+ readonly webhooks?: {
194
+ readonly settings?: {
195
+ readonly targetUrl?: string;
196
+ };
197
+ readonly subscriptions?: {
198
+ readonly crmObjects?: readonly WebhookSubscriptionEntry[];
199
+ readonly legacyCrmObjects?: readonly WebhookSubscriptionEntry[];
200
+ readonly hubEvents?: readonly WebhookSubscriptionEntry[];
201
+ };
202
+ };
203
+ readonly workflowActions?: readonly WorkflowActionEntry[];
204
+ readonly projectCards?: readonly ProjectCardEntry[];
205
+ readonly appConfig?: AppConfigEntry;
206
+ }
207
+ /** Normalized app identity (2025.2 app-hsmeta config or 2023.2/2025.1 app.json). */
208
+ interface AppConfigEntry {
209
+ readonly name?: string;
210
+ readonly description?: string;
211
+ readonly distribution?: string;
212
+ readonly authType?: string;
213
+ readonly requiredScopes?: readonly string[];
214
+ readonly optionalScopes?: readonly string[];
215
+ readonly redirectUrls?: readonly string[];
216
+ readonly permittedUrls?: {
217
+ readonly fetch?: readonly string[];
218
+ readonly iframe?: readonly string[];
219
+ readonly img?: readonly string[];
220
+ };
221
+ }
222
+ /** Normalized project card (detection output; both extension-era and hsmeta-era). */
223
+ interface ProjectCardEntry {
224
+ readonly uid?: string;
225
+ readonly name?: string;
226
+ readonly location?: string;
227
+ readonly objectTypes?: readonly string[];
228
+ readonly entrypoint?: string;
229
+ readonly sources?: Readonly<Record<string, string>>;
230
+ }
231
+ /**
232
+ * Compose ONE migrated HS-X project (the dupe) from every PORTABLE piece of a
233
+ * classified source: app card, Worker tools for serverless functions, trigger
234
+ * capabilities for webhook subscriptions, tool capabilities for workflow
235
+ * actions. Pieces the classifier flags for human review (endpoint functions,
236
+ * actions without actionUrl/en label, cards without fetchUrl) are skipped —
237
+ * the orchestrator surfaces those findings; this function never gates.
238
+ */
239
+ export declare function generateMigratedHsxProject(input: MigratedProjectInput): GeneratedProjectSource;
123
240
  export declare function generateHubSpotRuntimeProject(options: HubSpotRuntimeProjectOptions): GeneratedProjectSource;
124
241
  export declare function renderRefsTypes(workers: readonly WorkerManifest[], declarations?: {
125
242
  readonly appObjects?: readonly AppObjectDeclaration[];
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { mkdir, writeFile } from 'node:fs/promises';
2
2
  import { join } from 'node:path';
3
- export const CODEGEN_VERSION = '0.1.0';
3
+ export const CODEGEN_VERSION = '0.2.2';
4
4
  export async function generateProjectArtifacts(options) {
5
5
  const manifest = {
6
6
  generatedAt: new Date().toISOString(),
@@ -398,6 +398,396 @@ export function generateLegacyCardProject(input) {
398
398
  },
399
399
  };
400
400
  }
401
+ /**
402
+ * Map the PORTABLE app functions (a `file`, no public `endpoint`) of a legacy
403
+ * serverless source onto a Worker-backed HS-X project: one `tool` capability
404
+ * per function, handler stubs that name the original source file, secrets
405
+ * surfaced as `hs-x secrets` TODOs. Endpoint functions are deliberately NOT
406
+ * generated — the classifier flags their URL-contract change for human review
407
+ * first (`serverless.endpoint.url-contract`).
408
+ */
409
+ export function generateServerlessWorkerProject(input) {
410
+ const portable = Object.entries(input.serverless.appFunctions)
411
+ .filter(([, fn]) => typeof fn.file === 'string' && fn.file.length > 0 && fn.endpoint === undefined)
412
+ .sort(([a], [b]) => a.localeCompare(b));
413
+ if (portable.length === 0) {
414
+ throw new Error('No portable app functions to generate. Resolve the human-review findings from `hs-x migrate inspect` first.');
415
+ }
416
+ return {
417
+ files: {
418
+ 'hsproject.json': renderHubSpotProjectConfig(input.legacyApp.name),
419
+ 'hsx.config.ts': renderServerlessAppConfig(input.legacyApp.name),
420
+ 'src/app/app-hsmeta.json': renderServerlessAppMetadata(input.legacyApp.name),
421
+ 'src/workers/functions.ts': renderServerlessWorker(portable),
422
+ },
423
+ };
424
+ }
425
+ function renderServerlessAppConfig(appName) {
426
+ return `import { defineApp } from "@hs-x/sdk";
427
+
428
+ export default defineApp({
429
+ name: ${JSON.stringify(appName.replace(/\s+Legacy$/i, ''))},
430
+ distribution: "private",
431
+ auth: "oauth",
432
+ platformVersion: "2026.03",
433
+ scopes: ["crm.objects.contacts.read"],
434
+ });
435
+ `;
436
+ }
437
+ function renderServerlessAppMetadata(appName) {
438
+ const name = appName.replace(/\s+Legacy$/i, '');
439
+ return `${JSON.stringify({
440
+ uid: toKebabCase(name),
441
+ type: 'app',
442
+ config: {
443
+ description: `Migrated serverless functions for ${name}.`,
444
+ name,
445
+ distribution: 'private',
446
+ auth: {
447
+ type: 'static',
448
+ requiredScopes: ['oauth', 'crm.objects.contacts.read'],
449
+ optionalScopes: [],
450
+ conditionallyRequiredScopes: [],
451
+ },
452
+ },
453
+ }, null, 2)}\n`;
454
+ }
455
+ function renderServerlessWorker(portable) {
456
+ const tools = portable
457
+ .map(([name, fn]) => {
458
+ const slug = toKebabCase(name);
459
+ const secretsNote = fn.secrets && fn.secrets.length > 0
460
+ ? `\n// Secrets used by the legacy function: ${fn.secrets.join(', ')}.\n// Store each with \`hs-x secrets\` so deploys inject them into this Worker.`
461
+ : '';
462
+ return `${secretsNote}
463
+ worker.tool(${JSON.stringify(slug)}, {
464
+ label: ${JSON.stringify(`Migrated: ${name}`)},
465
+ input: {},
466
+ output: {
467
+ ok: { type: "boolean" },
468
+ },
469
+ async handler() {
470
+ // TODO(migration): port the body of ${JSON.stringify(fn.file ?? name)} here.
471
+ // The legacy handler signature was \`async (context) => result\`; HS-X
472
+ // passes { input, enrolledObject } and returns ok(...)/err(...).
473
+ return ok({ ok: true });
474
+ },
475
+ });`;
476
+ })
477
+ .join('\n');
478
+ return `import { defineWorker, ok } from "@hs-x/sdk";
479
+
480
+ // Generated by \`hs-x migrate\` from a legacy serverless.json source.
481
+ // Each tool below replaces one appFunction; port the original function
482
+ // bodies, then test them with \`hs-x dev\`.
483
+ const worker = defineWorker("functions");
484
+ ${tools}
485
+
486
+ export default worker;
487
+ `;
488
+ }
489
+ /** Read scope a card needs for the object it renders on (validator's map). */
490
+ function cardReadScope(objectType) {
491
+ const t = objectType.toLowerCase();
492
+ if (t.startsWith('p_'))
493
+ return 'crm.objects.custom.read';
494
+ const map = {
495
+ contact: 'crm.objects.contacts.read',
496
+ contacts: 'crm.objects.contacts.read',
497
+ company: 'crm.objects.companies.read',
498
+ companies: 'crm.objects.companies.read',
499
+ deal: 'crm.objects.deals.read',
500
+ deals: 'crm.objects.deals.read',
501
+ ticket: 'tickets',
502
+ tickets: 'tickets',
503
+ };
504
+ return map[t];
505
+ }
506
+ /**
507
+ * Compose ONE migrated HS-X project (the dupe) from every PORTABLE piece of a
508
+ * classified source: app card, Worker tools for serverless functions, trigger
509
+ * capabilities for webhook subscriptions, tool capabilities for workflow
510
+ * actions. Pieces the classifier flags for human review (endpoint functions,
511
+ * actions without actionUrl/en label, cards without fetchUrl) are skipped —
512
+ * the orchestrator surfaces those findings; this function never gates.
513
+ */
514
+ export function generateMigratedHsxProject(input) {
515
+ const files = {
516
+ 'hsproject.json': renderHubSpotProjectConfig(input.legacyApp.name),
517
+ };
518
+ const scopes = new Set(['crm.objects.contacts.read']);
519
+ const permittedFetch = new Set();
520
+ const card = input.legacyCard;
521
+ if (card && typeof card.fetchUrl === 'string' && card.fetchUrl.length > 0) {
522
+ const cardSlug = toKebabCase(card.title || card.id);
523
+ const componentName = `${toPascalCase(card.title || card.id)}Card`;
524
+ const objectTypes = card.objectTypes.length ? card.objectTypes : ['deals'];
525
+ permittedFetch.add(new URL(card.fetchUrl).origin);
526
+ // Per-objectType read scopes, same as the project-card path (matrix §2/§3):
527
+ // a tickets/helpdesk card must grant `tickets`, not a hardcoded deals scope.
528
+ for (const objectType of objectTypes) {
529
+ const scope = cardReadScope(objectType);
530
+ if (scope)
531
+ scopes.add(scope);
532
+ }
533
+ if (!files['src/app/cards/package.json']) {
534
+ files['src/app/cards/package.json'] = renderMigratedCardsPackage();
535
+ }
536
+ files[`src/app/cards/${componentName}.tsx`] = renderMigratedCardComponent(componentName, card.fetchUrl);
537
+ files[`src/app/cards/${cardSlug}-hsmeta.json`] = renderMigratedCardMetadata({
538
+ uid: cardSlug,
539
+ title: card.title,
540
+ objectTypes,
541
+ componentName,
542
+ });
543
+ }
544
+ for (const projectCard of [...(input.projectCards ?? [])].sort((a, b) => String(a.uid ?? '').localeCompare(String(b.uid ?? '')))) {
545
+ if (typeof projectCard.entrypoint !== 'string' || projectCard.entrypoint.length === 0) {
546
+ continue; // classifier flags project-card.entrypoint.missing
547
+ }
548
+ const name = projectCard.name || projectCard.uid || 'Migrated Card';
549
+ const slug = toKebabCase(projectCard.uid || name);
550
+ const sources = projectCard.sources ?? {};
551
+ // Carry the React component tree over wholesale; identical paths from
552
+ // sibling cards sharing a directory dedupe naturally.
553
+ for (const [rel, contents] of Object.entries(sources)) {
554
+ files[`src/app/cards/${rel}`] = contents;
555
+ }
556
+ const entryFile = Object.keys(sources).includes(projectCard.entrypoint)
557
+ ? projectCard.entrypoint
558
+ : (Object.keys(sources).find((f) => /\.(t|j)sx?$/.test(f)) ?? projectCard.entrypoint);
559
+ const objectTypes = projectCard.objectTypes?.length ? projectCard.objectTypes : ['contacts'];
560
+ for (const objectType of objectTypes) {
561
+ const scope = cardReadScope(objectType);
562
+ if (scope)
563
+ scopes.add(scope);
564
+ }
565
+ if (!files['src/app/cards/package.json']) {
566
+ files['src/app/cards/package.json'] = renderMigratedCardsPackage();
567
+ }
568
+ files[`src/app/cards/${slug}-hsmeta.json`] = `${JSON.stringify({
569
+ uid: slug,
570
+ type: 'card',
571
+ config: {
572
+ name,
573
+ description: `Migrated card ${name}.`,
574
+ location: projectCard.location ?? 'crm.record.tab',
575
+ objectTypes: objectTypes.map(toHubSpotObjectType),
576
+ entrypoint: `/app/cards/${entryFile}`,
577
+ },
578
+ }, null, 2)}\n`;
579
+ }
580
+ if (input.serverless) {
581
+ const portable = Object.entries(input.serverless.appFunctions)
582
+ .filter(([, fn]) => typeof fn.file === 'string' && fn.file.length > 0 && fn.endpoint === undefined)
583
+ .sort(([a], [b]) => a.localeCompare(b));
584
+ if (portable.length > 0) {
585
+ files['src/workers/functions.ts'] = renderServerlessWorker(portable);
586
+ }
587
+ }
588
+ if (input.webhooks) {
589
+ const worker = renderWebhookTriggerWorker(input.webhooks);
590
+ if (worker)
591
+ files['src/workers/webhooks.ts'] = worker;
592
+ }
593
+ if (input.workflowActions) {
594
+ const worker = renderWorkflowActionWorker(input.workflowActions);
595
+ if (worker)
596
+ files['src/workers/actions.ts'] = worker;
597
+ }
598
+ const appConfig = input.appConfig ?? {};
599
+ // Carry the source app's scope grants faithfully; 'oauth' is an auth grant
600
+ // the hsmeta renderer re-adds, not a defineApp scope.
601
+ for (const scope of appConfig.requiredScopes ?? []) {
602
+ if (scope !== 'oauth')
603
+ scopes.add(scope);
604
+ }
605
+ for (const url of appConfig.permittedUrls?.fetch ?? [])
606
+ permittedFetch.add(url);
607
+ // Without a root package.json the dupe cannot `bun install`, bundle its
608
+ // Workers, or upload — the original run-003 blocker; the composed generator
609
+ // must emit it like the single-kind generators did.
610
+ files['package.json'] = renderMigratedRootPackage(input.legacyApp.name);
611
+ files['hsx.config.ts'] = renderComposedAppConfig(appConfig.name ?? input.legacyApp.name, appConfig, [...scopes].sort(), [...permittedFetch].sort());
612
+ files['src/app/app-hsmeta.json'] = renderComposedAppMetadata(appConfig.name ?? input.legacyApp.name, appConfig, [...scopes].sort(), [...permittedFetch].sort());
613
+ return { files };
614
+ }
615
+ function renderComposedAppConfig(appName, appConfig, scopes, permittedFetch) {
616
+ const distribution = appConfig.distribution === 'marketplace' ? 'marketplace' : 'private';
617
+ const auth = appConfig.authType === 'static' ? 'static' : 'oauth';
618
+ const description = appConfig.description
619
+ ? `\n description: ${JSON.stringify(appConfig.description)},`
620
+ : '';
621
+ const optional = appConfig.optionalScopes && appConfig.optionalScopes.length > 0
622
+ ? `\n optionalScopes: ${JSON.stringify([...appConfig.optionalScopes].sort())},`
623
+ : '';
624
+ const iframe = appConfig.permittedUrls?.iframe ?? [];
625
+ const img = appConfig.permittedUrls?.img ?? [];
626
+ const permittedEntries = [
627
+ permittedFetch.length > 0
628
+ ? ` fetch: [${permittedFetch.map((u) => JSON.stringify(u)).join(', ')}],`
629
+ : undefined,
630
+ iframe.length > 0 ? ` iframe: ${JSON.stringify(iframe)},` : undefined,
631
+ img.length > 0 ? ` img: ${JSON.stringify(img)},` : undefined,
632
+ ].filter((entry) => entry !== undefined);
633
+ const permitted = permittedEntries.length > 0
634
+ ? `\n permittedUrls: {\n${permittedEntries.join('\n')}\n },`
635
+ : '';
636
+ return `import { defineApp } from "@hs-x/sdk";
637
+
638
+ export default defineApp({
639
+ name: ${JSON.stringify(appName.replace(/\s+Legacy$/i, ''))},${description}
640
+ distribution: ${JSON.stringify(distribution)},
641
+ auth: ${JSON.stringify(auth)},
642
+ platformVersion: "2026.03",
643
+ scopes: ${JSON.stringify(scopes)},${optional}${permitted}
644
+ });
645
+ `;
646
+ }
647
+ function renderComposedAppMetadata(appName, appConfig, scopes, permittedFetch) {
648
+ const name = appName.replace(/\s+Legacy$/i, '');
649
+ const authType = appConfig.authType === 'static' ? 'static' : 'oauth';
650
+ return `${JSON.stringify({
651
+ uid: toKebabCase(name),
652
+ type: 'app',
653
+ config: {
654
+ description: appConfig.description ?? `Migrated HS-X project for ${name}.`,
655
+ name,
656
+ distribution: appConfig.distribution === 'marketplace' ? 'marketplace' : 'private',
657
+ auth: {
658
+ type: authType,
659
+ ...(authType === 'oauth' && appConfig.redirectUrls?.length
660
+ ? { redirectUrls: appConfig.redirectUrls }
661
+ : {}),
662
+ requiredScopes: ['oauth', ...scopes],
663
+ optionalScopes: appConfig.optionalScopes ?? [],
664
+ conditionallyRequiredScopes: [],
665
+ },
666
+ permittedUrls: {
667
+ fetch: permittedFetch,
668
+ iframe: appConfig.permittedUrls?.iframe ?? [],
669
+ img: appConfig.permittedUrls?.img ?? [],
670
+ },
671
+ },
672
+ }, null, 2)}\n`;
673
+ }
674
+ /**
675
+ * Normalize a classic subscription type to the generic `object.*` format
676
+ * where the mapping is mechanical (`contact.creation` → `object.creation`
677
+ * on objectType contact); hub events keep their classic names.
678
+ */
679
+ function normalizeSubscription(entry, classic) {
680
+ const raw = entry.subscriptionType ?? 'unknown.event';
681
+ if (!classic) {
682
+ const base = {
683
+ eventType: raw,
684
+ note: raw,
685
+ };
686
+ if (entry.objectType !== undefined)
687
+ base.objectType = entry.objectType;
688
+ return base;
689
+ }
690
+ const [objectType, event] = raw.split('.', 2);
691
+ if (objectType && event && ['creation', 'deletion', 'propertyChange'].includes(event)) {
692
+ return {
693
+ eventType: `object.${event}`,
694
+ objectType,
695
+ note: `${raw} (normalized to object.${event})`,
696
+ };
697
+ }
698
+ return { eventType: raw, note: `${raw} (hub event; no object.* equivalent)` };
699
+ }
700
+ function renderWebhookTriggerWorker(webhooks) {
701
+ const subs = webhooks.subscriptions ?? {};
702
+ const normalized = [
703
+ ...(subs.crmObjects ?? []).map((s) => normalizeSubscription(s, false)),
704
+ ...(subs.legacyCrmObjects ?? []).map((s) => normalizeSubscription(s, true)),
705
+ ...(subs.hubEvents ?? []).map((s) => normalizeSubscription(s, true)),
706
+ ];
707
+ if (normalized.length === 0)
708
+ return undefined;
709
+ const seen = new Map();
710
+ const triggers = normalized
711
+ .map((sub) => {
712
+ const baseId = toKebabCase([sub.eventType, sub.objectType].filter(Boolean).join('-').replace(/\./g, '-'));
713
+ const count = seen.get(baseId) ?? 0;
714
+ seen.set(baseId, count + 1);
715
+ const id = count === 0 ? baseId : `${baseId}-${count + 1}`;
716
+ return `
717
+ worker.trigger(${JSON.stringify(id)}, {
718
+ label: ${JSON.stringify(`Migrated webhook: ${sub.note}`)},
719
+ eventType: ${JSON.stringify(sub.eventType)},
720
+ async handler({ input }) {
721
+ // TODO(migration): events for ${sub.note} arrive here.${webhooks.settings?.targetUrl
722
+ ? `\n // The legacy receiver was ${webhooks.settings.targetUrl} — forward there\n // with fetch(...) or port its logic into this handler.`
723
+ : ''}
724
+ return ok({ received: true, event: input });
725
+ },
726
+ });`;
727
+ })
728
+ .join('\n');
729
+ return `import { defineWorker, ok } from "@hs-x/sdk";
730
+
731
+ // Generated by \`hs-x migrate\` from a legacy webhooks component.
732
+ const worker = defineWorker("webhooks");
733
+ ${triggers}
734
+
735
+ export default worker;
736
+ `;
737
+ }
738
+ function renderWorkflowActionWorker(actions) {
739
+ const portable = actions
740
+ .filter((action) => typeof action.actionUrl === 'string' &&
741
+ action.actionUrl.length > 0 &&
742
+ typeof action.labels?.en?.actionName === 'string' &&
743
+ action.labels.en.actionName.length > 0)
744
+ .sort((a, b) => String(a.uid ?? '').localeCompare(String(b.uid ?? '')));
745
+ if (portable.length === 0)
746
+ return undefined;
747
+ const tools = portable
748
+ .map((action) => {
749
+ const id = toKebabCase(action.uid ?? action.labels?.en?.actionName ?? 'migrated-action');
750
+ const objectType = (action.objectTypes?.[0] ?? 'contact').toLowerCase();
751
+ const fields = (action.inputFields ?? [])
752
+ .filter((field) => typeof field.typeDefinition?.name === 'string')
753
+ .map((field) => {
754
+ const def = field.typeDefinition;
755
+ const name = def?.name ?? 'field';
756
+ const type = (def?.type ?? 'string').toLowerCase();
757
+ const options = def?.options?.length
758
+ ? `, options: ${JSON.stringify(def.options)}`
759
+ : '';
760
+ const required = field.isRequired ? ', required: true' : '';
761
+ return ` ${JSON.stringify(name)}: { type: ${JSON.stringify(type)}${required}${options} },`;
762
+ })
763
+ .join('\n');
764
+ return `
765
+ worker.tool(${JSON.stringify(id)}, {
766
+ label: ${JSON.stringify(action.labels?.en?.actionName ?? id)},
767
+ objectType: ${JSON.stringify(objectType)},
768
+ input: {
769
+ ${fields}
770
+ },
771
+ output: {
772
+ ok: { type: "boolean" },
773
+ },
774
+ async handler({ input }) {
775
+ // TODO(migration): executions currently POST to ${JSON.stringify(action.actionUrl ?? '')}.
776
+ // Forward there with fetch(...) or port the service's logic here.
777
+ return ok({ ok: true, input });
778
+ },
779
+ });`;
780
+ })
781
+ .join('\n');
782
+ return `import { defineWorker, ok } from "@hs-x/sdk";
783
+
784
+ // Generated by \`hs-x migrate\` from legacy custom workflow actions.
785
+ const worker = defineWorker("actions");
786
+ ${tools}
787
+
788
+ export default worker;
789
+ `;
790
+ }
401
791
  export function generateHubSpotRuntimeProject(options) {
402
792
  const files = {
403
793
  'hsproject.json': renderHubSpotProjectConfig(options.appName),
@@ -499,7 +889,7 @@ function renderRuntimeAppMetadata(options) {
499
889
  uid: toKebabCase(options.appName),
500
890
  type: 'app',
501
891
  config: {
502
- description: `HS-X generated app project for ${options.appName}.`,
892
+ description: options.description ?? `HS-X generated app project for ${options.appName}.`,
503
893
  name: options.appName,
504
894
  distribution: options.distribution,
505
895
  auth: {
@@ -873,6 +1263,21 @@ function renderMigratedAppMetadata(appName, fetchOrigin) {
873
1263
  },
874
1264
  }, null, 2)}\n`;
875
1265
  }
1266
+ function renderMigratedRootPackage(appName) {
1267
+ const slug = appName
1268
+ .toLowerCase()
1269
+ .replace(/[^a-z0-9-]+/g, '-')
1270
+ .replace(/^-+|-+$/g, '');
1271
+ return `${JSON.stringify({
1272
+ name: slug || 'hs-x-migrated-app',
1273
+ private: true,
1274
+ type: 'module',
1275
+ dependencies: {
1276
+ '@hs-x/sdk': '^0.2.0',
1277
+ '@hs-x/runtime': '^0.2.0',
1278
+ },
1279
+ }, null, 2)}\n`;
1280
+ }
876
1281
  function renderMigratedCardsPackage() {
877
1282
  return `${JSON.stringify({
878
1283
  name: 'hs-x-migrated-cards',
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hs-x/codegen",
3
- "version": "0.2.0",
3
+ "version": "0.2.2",
4
4
  "description": "HS-X codegen — .hs-x/refs stubs for card↔backend, portal schema typing.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -20,8 +20,8 @@
20
20
  "clean": "tsc -b --clean"
21
21
  },
22
22
  "dependencies": {
23
- "@hs-x/runtime": "0.2.0",
24
- "@hs-x/types": "0.2.0"
23
+ "@hs-x/runtime": "0.2.2",
24
+ "@hs-x/types": "0.2.2"
25
25
  },
26
26
  "devDependencies": {
27
27
  "@hs-x/fixtures": "0.1.0"