@powerhousedao/codegen 6.2.0-dev.29 → 6.2.0-dev.30

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.
@@ -10,7 +10,7 @@ import { DEFAULT_REGISTRY_URL } from "@powerhousedao/shared/registry";
10
10
  import { capitalize, concat, conditional, constant, endsWith, filter, find, first, flatMap, forEach, isDefined, isIncludedIn, isNonNullish, isNot, isStrictEqual, isString, isTruthy, last, map, mapValues, merge, pipe, prop, sort, split, startsWith, subtract, unique, uniqueBy, when } from "remeda";
11
11
  import { IndentationText, Project, SyntaxKind, VariableDeclarationKind, ts } from "ts-morph";
12
12
  import arg from "arg";
13
- import { format } from "prettier";
13
+ import { format } from "oxfmt";
14
14
  import { z } from "zod";
15
15
  import { loadJsonFile, loadJsonFileSync } from "load-json-file";
16
16
  import { writeJsonFile } from "write-json-file";
@@ -1739,7 +1739,7 @@ var TemplateClass = class TemplateClass extends String {
1739
1739
  }
1740
1740
  const html = tag("html");
1741
1741
  const css = tag("css");
1742
- const js = tag("js");
1742
+ tag("js");
1743
1743
  const ts$1 = tag("ts");
1744
1744
  tag("jsx");
1745
1745
  const tsx = tag("tsx");
@@ -2208,7 +2208,7 @@ If the \`reactor-mcp\` server is unavailable, ask the user to run \`ph vetra\` o
2208
2208
  After doing changes to the code, or after creating a new document model or a new editor, _YOU MUST RUN_ the following commands to check for errors in your implementation:
2209
2209
 
2210
2210
  - **TypeScript Check**: Run \`npm run tsc\` to validate type safety
2211
- - **ESLint Check**: Run \`npm run lint:fix\` to check for errors with ESLint
2211
+ - **Lint Check**: Run \`npm run lint:fix\` to check for errors with oxlint (type-aware rules plus TypeScript type checking)
2212
2212
  - **Reducer Test Coverage**: Run \`npm run test:coverage\` after any change to a document model reducer. Document model reducers are pure synchronous functions and **MUST** stay at or above **95%** coverage on lines, branches, functions, and statements. If coverage drops below the threshold, add tests in \`document-models/<name>/v<n>/tests/\` until the threshold is restored — **DO NOT** lower the threshold or exclude files to make the check pass. Cover the happy path _and_ every error code defined via \`ADD_OPERATION_ERROR\` (each error is a branch that needs explicit test coverage). Push toward 100% by following the strategy below.
2213
2213
 
2214
2214
  #### Strategy: reaching 100% reducer coverage
@@ -2303,7 +2303,7 @@ The \`useSelectedTodoDocument\` (and every other document hook) is auto-generate
2303
2303
 
2304
2304
  ### Editor code conventions (TypeScript & module resolution)
2305
2305
 
2306
- These rules apply to **every** editor regardless of which UI library you use. They come from the project's \`tsconfig\` (\`module: nodenext\`, \`strict\`, \`verbatimModuleSyntax\`) and ESLint config — they are constraints, not stylistic preferences.
2306
+ These rules apply to **every** editor regardless of which UI library you use. They come from the project's \`tsconfig\` (\`module: nodenext\`, \`strict\`, \`verbatimModuleSyntax\`) and oxlint config — they are constraints, not stylistic preferences.
2307
2307
 
2308
2308
  #### Always use the top-level barrel for document-model imports
2309
2309
 
@@ -2351,7 +2351,7 @@ When a third-party CLI generates extensionless imports, do a bulk find-and-repla
2351
2351
 
2352
2352
  #### Stringifying \`unknown\` values
2353
2353
 
2354
- The boilerplate ESLint config enables \`@typescript-eslint/no-base-to-string\` (via \`recommendedTypeChecked\`). \`String(value ?? "")\` on a value typed as \`unknown\` will trip the rule because the default \`Object.prototype.toString\` produces \`"[object Object]"\`. Use a small helper:
2354
+ The boilerplate oxlint config enables \`typescript/no-base-to-string\` (the \`recommendedTypeChecked\` equivalent). \`String(value ?? "")\` on a value typed as \`unknown\` will trip the rule because the default \`Object.prototype.toString\` produces \`"[object Object]"\`. Use a small helper:
2355
2355
 
2356
2356
  ~~~typescript
2357
2357
  function str(v: unknown): string {
@@ -2943,8 +2943,8 @@ RUN pnpm config set @jsr:registry https://npm.jsr.io
2943
2943
  ARG TAG=latest
2944
2944
  ARG PH_CONNECT_BASE_PATH="/"
2945
2945
 
2946
- # Install ph-cmd, prisma, and prettier globally
2947
- RUN pnpm add -g ph-cmd@$TAG prisma@5.17.0 prettier
2946
+ # Install ph-cmd, prisma, and oxfmt globally
2947
+ RUN pnpm add -g ph-cmd@$TAG prisma@5.17.0 oxfmt
2948
2948
 
2949
2949
  # Initialize project based on tag (dev/staging/latest)
2950
2950
  RUN case "$TAG" in \\
@@ -3203,144 +3203,120 @@ const editorsIndexTemplate = `
3203
3203
  */
3204
3204
  `;
3205
3205
  //#endregion
3206
- //#region src/templates/boilerplate/eslint.config.js.ts
3207
- const eslintConfigTemplate = js`
3208
- // @ts-check
3209
- import { default as eslint } from "@eslint/js";
3210
- import eslintPluginPrettierRecommended from "eslint-plugin-prettier/recommended";
3211
- import reactPlugin from "eslint-plugin-react";
3212
- import reactHooksPlugin from "eslint-plugin-react-hooks";
3213
- import { defineConfig, globalIgnores } from "eslint/config";
3214
- import globals from "globals";
3215
- import tseslint from "typescript-eslint";
3216
-
3217
- /** These files are typically ignored by eslint by default, so there is no need to investigate why they are ignored. */
3218
- const ignoredFiles = [
3219
- "**/node_modules/",
3220
- "**/dist/",
3221
- "**/.ph/",
3222
- "**/storybook-static/",
3223
- "**/.vite/",
3224
- ];
3225
-
3226
- /** Global configs for eslint ignores */
3227
- const ignored = globalIgnores(ignoredFiles);
3228
-
3229
- /** Typescript (\`.ts\`) files */
3230
- const typescriptFiles = ["**/*.ts"];
3231
-
3232
- /** Typescript React (\`.tsx\`) files */
3233
- const typescriptReactFiles = ["**/*.tsx"];
3234
-
3235
- /** Javascript (\`.js\`, \`.cjs\`, \`.mjs\`) files */
3236
- const javascriptFiles = ["**/*.js", "**/*.cjs", "**/*.mjs"];
3237
-
3238
- /** Typescript rules that we have chosen to opt out of in general */
3239
- /** @type {import("eslint").Linter.RulesRecord} */
3240
- const typescriptRules = {
3241
- "@typescript-eslint/consistent-type-imports": [
3242
- "error",
3243
- {
3244
- prefer: "type-imports",
3245
- disallowTypeAnnotations: true,
3246
- fixStyle: "separate-type-imports",
3247
- },
3248
- ],
3249
- "@typescript-eslint/no-explicit-any": "off",
3250
- "@typescript-eslint/no-unused-vars": [
3251
- "warn",
3252
- {
3253
- argsIgnorePattern: "^_",
3254
- varsIgnorePattern: "^_",
3255
- caughtErrorsIgnorePattern: "^_",
3256
- },
3257
- ],
3258
- "@typescript-eslint/no-unnecessary-condition": "warn",
3259
- "@typescript-eslint/require-await": "warn",
3260
- "@typescript-eslint/no-misused-promises": "warn",
3261
- "@typescript-eslint/no-floating-promises": "warn",
3262
- "@typescript-eslint/no-empty-object-type": "warn",
3263
- "@typescript-eslint/no-duplicate-type-constituents": "warn",
3264
- "@typescript-eslint/restrict-template-expressions": [
3265
- "warn",
3266
- {
3267
- allowNumber: true,
3268
- },
3206
+ //#region src/templates/boilerplate/oxlintrc.json.ts
3207
+ const oxlintConfigTemplate = json`
3208
+ {
3209
+ "$schema": "https://raw.githubusercontent.com/oxc-project/oxc/main/npm/oxlint/configuration_schema.json",
3210
+ "plugins": ["typescript", "react", "react-hooks"],
3211
+ "categories": { "correctness": "error" },
3212
+ "ignorePatterns": [
3213
+ "**/node_modules/**",
3214
+ "**/dist/**",
3215
+ "**/.ph/**",
3216
+ "**/storybook-static/**",
3217
+ "**/.vite/**"
3269
3218
  ],
3270
- };
3271
-
3272
- /** Language options for typescript files
3273
- @type {import("eslint").Linter.LanguageOptions} */
3274
- const typescriptLanguageOptions = {
3275
- sourceType: "module",
3276
- ecmaVersion: "latest",
3277
- globals: {
3278
- ...globals.browser,
3279
- ...globals.node,
3280
- },
3281
- parserOptions: {
3282
- projectService: {
3283
- allowDefaultProject: ["eslint.config.js", "vitest.config.ts", "main.tsx"],
3284
- },
3285
- tsconfigRootDir: import.meta.dirname,
3286
- ecmaFeatures: {
3287
- jsx: true,
3288
- },
3289
- },
3290
- };
3291
-
3292
- /** React plugins */
3293
- const reactPlugins = {
3294
- react: reactPlugin,
3295
- "react-hooks": reactHooksPlugin,
3296
- };
3297
-
3298
- /** React settings */
3299
- const reactSettings = {
3300
- react: {
3301
- version: "detect",
3219
+ "rules": {
3220
+ "typescript/await-thenable": "error",
3221
+ "typescript/ban-ts-comment": "error",
3222
+ "typescript/no-array-constructor": "error",
3223
+ "typescript/no-array-delete": "error",
3224
+ "typescript/no-base-to-string": "error",
3225
+ "typescript/no-duplicate-enum-values": "error",
3226
+ "typescript/no-extra-non-null-assertion": "error",
3227
+ "typescript/no-for-in-array": "error",
3228
+ "typescript/no-implied-eval": "error",
3229
+ "typescript/no-misused-new": "error",
3230
+ "typescript/no-namespace": "error",
3231
+ "typescript/no-non-null-asserted-optional-chain": "error",
3232
+ "typescript/no-redundant-type-constituents": "error",
3233
+ "typescript/no-require-imports": "error",
3234
+ "typescript/no-this-alias": "error",
3235
+ "typescript/no-unnecessary-type-assertion": "error",
3236
+ "typescript/no-unnecessary-type-constraint": "error",
3237
+ "typescript/no-unsafe-argument": "error",
3238
+ "typescript/no-unsafe-assignment": "error",
3239
+ "typescript/no-unsafe-call": "error",
3240
+ "typescript/no-unsafe-declaration-merging": "error",
3241
+ "typescript/no-unsafe-enum-comparison": "error",
3242
+ "typescript/no-unsafe-function-type": "error",
3243
+ "typescript/no-unsafe-member-access": "error",
3244
+ "typescript/no-unsafe-return": "error",
3245
+ "typescript/no-unsafe-unary-minus": "error",
3246
+ "typescript/no-unused-expressions": "error",
3247
+ "typescript/no-wrapper-object-types": "error",
3248
+ "typescript/only-throw-error": "error",
3249
+ "typescript/prefer-as-const": "error",
3250
+ "typescript/prefer-namespace-keyword": "error",
3251
+ "typescript/prefer-promise-reject-errors": "error",
3252
+ "typescript/restrict-plus-operands": "error",
3253
+ "typescript/triple-slash-reference": "error",
3254
+ "typescript/unbound-method": "error",
3255
+ "typescript/consistent-type-imports": [
3256
+ "error",
3257
+ {
3258
+ "prefer": "type-imports",
3259
+ "disallowTypeAnnotations": true,
3260
+ "fixStyle": "separate-type-imports"
3261
+ }
3262
+ ],
3263
+ "typescript/no-explicit-any": "off",
3264
+ "typescript/no-unused-vars": [
3265
+ "warn",
3266
+ {
3267
+ "argsIgnorePattern": "^_",
3268
+ "varsIgnorePattern": "^_",
3269
+ "caughtErrorsIgnorePattern": "^_"
3270
+ }
3271
+ ],
3272
+ "typescript/no-unnecessary-condition": "warn",
3273
+ "typescript/require-await": "warn",
3274
+ "typescript/no-misused-promises": "warn",
3275
+ "typescript/no-floating-promises": "warn",
3276
+ "typescript/no-empty-object-type": "warn",
3277
+ "typescript/no-duplicate-type-constituents": "warn",
3278
+ "typescript/restrict-template-expressions": ["warn", { "allowNumber": true }],
3279
+ "react-hooks/rules-of-hooks": "error",
3280
+ "react-hooks/exhaustive-deps": "warn"
3302
3281
  },
3303
- };
3304
-
3305
- /** Typescript config for both \`.ts\` and \`.tsx\` files */
3306
- const typescriptConfig = {
3307
- files: [...typescriptFiles, ...typescriptReactFiles],
3308
- languageOptions: typescriptLanguageOptions,
3309
- rules: typescriptRules,
3310
- };
3311
-
3312
- /** React config for \`.tsx\` files */
3313
- const reactConfig = {
3314
- files: typescriptReactFiles,
3315
- settings: reactSettings,
3316
- plugins: reactPlugins,
3317
- };
3318
-
3319
- /** Config for javascript files */
3320
- const javascriptConfig = {
3321
- // disable type aware linting for js files
3322
- files: javascriptFiles,
3323
- extends: [tseslint.configs.disableTypeChecked],
3324
- };
3325
-
3326
- /** Recommended config from eslint */
3327
- const eslintRecommendedConfig = eslint.configs.recommended;
3328
-
3329
- /** Recommended config from typescript-eslint */
3330
- const typescriptEsLintRecommendedConfig = [
3331
- ...tseslint.configs.recommendedTypeChecked,
3332
- ];
3333
-
3334
- /** Main config */
3335
- export default defineConfig(
3336
- ignored,
3337
- eslintRecommendedConfig,
3338
- typescriptEsLintRecommendedConfig,
3339
- typescriptConfig,
3340
- reactConfig,
3341
- javascriptConfig,
3342
- eslintPluginPrettierRecommended,
3343
- );
3282
+ "overrides": [
3283
+ {
3284
+ "files": ["**/*.js", "**/*.cjs", "**/*.mjs"],
3285
+ "rules": {
3286
+ "typescript/await-thenable": "off",
3287
+ "typescript/no-array-delete": "off",
3288
+ "typescript/no-base-to-string": "off",
3289
+ "typescript/no-duplicate-type-constituents": "off",
3290
+ "typescript/no-floating-promises": "off",
3291
+ "typescript/no-for-in-array": "off",
3292
+ "typescript/no-implied-eval": "off",
3293
+ "typescript/no-misused-promises": "off",
3294
+ "typescript/no-redundant-type-constituents": "off",
3295
+ "typescript/no-unnecessary-condition": "off",
3296
+ "typescript/no-unnecessary-type-assertion": "off",
3297
+ "typescript/no-unsafe-argument": "off",
3298
+ "typescript/no-unsafe-assignment": "off",
3299
+ "typescript/no-unsafe-call": "off",
3300
+ "typescript/no-unsafe-enum-comparison": "off",
3301
+ "typescript/no-unsafe-member-access": "off",
3302
+ "typescript/no-unsafe-return": "off",
3303
+ "typescript/no-unsafe-unary-minus": "off",
3304
+ "typescript/only-throw-error": "off",
3305
+ "typescript/prefer-promise-reject-errors": "off",
3306
+ "typescript/require-await": "off",
3307
+ "typescript/restrict-plus-operands": "off",
3308
+ "typescript/restrict-template-expressions": "off",
3309
+ "typescript/unbound-method": "off"
3310
+ }
3311
+ }
3312
+ ]
3313
+ }
3314
+ `.raw;
3315
+ const oxfmtConfigTemplate = json`
3316
+ {
3317
+ "$schema": "https://raw.githubusercontent.com/oxc-project/oxc/main/npm/oxfmt/configuration_schema.json",
3318
+ "printWidth": 80
3319
+ }
3344
3320
  `.raw;
3345
3321
  //#endregion
3346
3322
  //#region src/templates/boilerplate/gemini/settings.json.ts
@@ -3736,7 +3712,6 @@ const gitIgnoreTemplate = `
3736
3712
  dist
3737
3713
  coverage
3738
3714
  node_modules
3739
- .eslintcache
3740
3715
  .env.local
3741
3716
  *.tsbuildinfo
3742
3717
 
@@ -4495,8 +4470,10 @@ const packageJsonTemplate = (projectName, peerDependencies, devDependencies) =>
4495
4470
  "test": "vitest run",
4496
4471
  "test:watch": "vitest",
4497
4472
  "test:coverage": "vitest run --coverage",
4498
- "lint": "eslint --config eslint.config.js --cache --cache-strategy content",
4499
- "lint:fix": "npm run lint -- --fix",
4473
+ "lint": "oxlint --type-aware --type-check",
4474
+ "lint:fix": "oxlint --type-aware --type-check --fix",
4475
+ "format": "oxfmt",
4476
+ "format:check": "oxfmt --check",
4500
4477
  "tsc": "tsc",
4501
4478
  "tsc:watch": "tsc --watch",
4502
4479
  "check-circular-imports": "npx dpdm -T ./index.ts",
@@ -4524,8 +4501,10 @@ const packageJsonScriptsTemplate = {
4524
4501
  build: "npm run tsc && npm run tailwind",
4525
4502
  test: "vitest run",
4526
4503
  "test:watch": "vitest",
4527
- lint: "eslint --config eslint.config.js --cache --cache-strategy content",
4528
- "lint:fix": "npm run lint -- --fix",
4504
+ lint: "oxlint --type-aware --type-check",
4505
+ "lint:fix": "oxlint --type-aware --type-check --fix",
4506
+ format: "oxfmt",
4507
+ "format:check": "oxfmt --check",
4529
4508
  tsc: "tsc",
4530
4509
  "tsc:watch": "tsc --watch",
4531
4510
  tailwind: "pnpm exec tailwindcss -i ./style.css -o ./dist/style.css",
@@ -4638,8 +4617,8 @@ This tutorial will guide you through the process of creating a new document mode
4638
4617
  <summary>Available NPM commands</summary>
4639
4618
 
4640
4619
  - \`generate\`: Updates the generated code according to the JSON spec and GraphQL schema of your document model, made in Connect.
4641
- - \`lint\`: Checks for errors with ESLint and TypeScript checking.
4642
- - \`format\`: Formats the code using Prettier.
4620
+ - \`lint\`: Checks for errors with oxlint, including type-aware rules and TypeScript type checking.
4621
+ - \`format\`: Formats the code using oxfmt.
4643
4622
  - \`build\`: Builds the library project using Vite.
4644
4623
  - \`storybook\`: Starts Storybook in development mode.
4645
4624
  - \`build-storybook\`: Builds Storybook.
@@ -6642,26 +6621,31 @@ function getDocumentTypeMetadata({ project, documentModelId }) {
6642
6621
  }
6643
6622
  //#endregion
6644
6623
  //#region src/utils/format-with-prettier.ts
6645
- /** Formats the text of a ts-morph source file with prettier before writing the text to memory */
6624
+ const FORMAT_OPTIONS = { printWidth: 80 };
6625
+ /** Formats the text of a ts-morph source file with oxfmt before writing the text to memory */
6646
6626
  async function formatSourceFileWithPrettier(sourceFile) {
6647
6627
  sourceFile.organizeImports();
6648
6628
  const formattedText = await formatSafe(sourceFile.getFullText());
6649
6629
  sourceFile.replaceWithText(formattedText);
6650
6630
  }
6631
+ const EXT_MAP = {
6632
+ typescript: ".ts",
6633
+ json: ".json",
6634
+ html: ".html",
6635
+ css: ".css",
6636
+ babel: ".js",
6637
+ markdown: ".md"
6638
+ };
6651
6639
  async function formatSafe(sourceText, parser = "typescript") {
6652
6640
  try {
6653
- return await format(sourceText, { parser });
6641
+ return (await format(`file${EXT_MAP[parser] ?? ".ts"}`, sourceText, FORMAT_OPTIONS)).code;
6654
6642
  } catch (error) {
6655
6643
  console.error(error);
6656
6644
  return sourceText;
6657
6645
  }
6658
6646
  }
6659
- async function runPrettier() {
6660
- await spawnAsync("npx", [
6661
- "prettier",
6662
- "--write",
6663
- "."
6664
- ]);
6647
+ async function runOxfmt() {
6648
+ await spawnAsync("npx", ["oxfmt", "."]);
6665
6649
  }
6666
6650
  //#endregion
6667
6651
  //#region src/utils/get-editor-metadata.ts
@@ -7210,7 +7194,8 @@ async function writeGeneratedProjectRootFiles(projectDir) {
7210
7194
  await writeFileEnsuringDir(join(projectDir, "tsconfig.json"), await formatSafe(tsConfigTemplate, "json"));
7211
7195
  await writeFileEnsuringDir(join(projectDir, "index.html"), await formatSafe(indexHtmlTemplate, "html"));
7212
7196
  await writeFileEnsuringDir(join(projectDir, "main.tsx"), await formatSafe(mainTsxTemplate));
7213
- await writeFileEnsuringDir(join(projectDir, "eslint.config.js"), await formatSafe(eslintConfigTemplate));
7197
+ await writeFileEnsuringDir(join(projectDir, ".oxlintrc.json"), await formatSafe(oxlintConfigTemplate, "json"));
7198
+ await writeFileEnsuringDir(join(projectDir, ".oxfmtrc.json"), await formatSafe(oxfmtConfigTemplate, "json"));
7214
7199
  await writeFileEnsuringDir(join(projectDir, "index.ts"), await formatSafe(indexTsTemplate));
7215
7200
  await writeFileEnsuringDir(join(projectDir, "style.css"), await formatSafe(styleTemplate, "css"));
7216
7201
  await writeFileEnsuringDir(join(projectDir, "vitest.config.ts"), await formatSafe(vitestConfigTemplate));
@@ -7494,8 +7479,8 @@ function buildGraphqlDocumentStringForSpecification(specification) {
7494
7479
  ...moduleSchemas
7495
7480
  ];
7496
7481
  }
7497
- async function formatContentWithPrettier(path, content) {
7498
- return await format(content, { parser: "typescript" });
7482
+ async function formatContent(path, content) {
7483
+ return (await format(path, content, { printWidth: 80 })).code;
7499
7484
  }
7500
7485
  async function generateTypesAndZodSchemasFromGraphql(args) {
7501
7486
  const { schemaDirPath, schema } = args;
@@ -7503,7 +7488,7 @@ async function generateTypesAndZodSchemasFromGraphql(args) {
7503
7488
  overwrite: true,
7504
7489
  watch: false,
7505
7490
  pluginLoader,
7506
- hooks: { beforeOneFileWrite: formatContentWithPrettier },
7491
+ hooks: { beforeOneFileWrite: formatContent },
7507
7492
  generates: {
7508
7493
  [`${schemaDirPath}/types.ts`]: {
7509
7494
  schema,
@@ -8590,6 +8575,6 @@ async function makeSubgraphsIndexFile(args) {
8590
8575
  await formatSourceFileWithPrettier(sourceFile);
8591
8576
  }
8592
8577
  //#endregion
8593
- export { buildStringLiteral as $, cursorMcpTemplate as $n, getModuleExportType as $t, writeModuleFiles as A, pnpmWorkspaceTemplate as An, analyticsFactoryTemplate as At, buildTsMorphProject as B, gitIgnoreTemplate as Bn, documentModelSrcIndexFileTemplate as Bt, writeAllGeneratedProjectFiles as C, subgraphsIndexTemplate as Cn, relationalDbIndexTemplate as Ct, writeGeneratedProcessorsFiles as D, buildPowerhouseConfigTemplate as Dn, factoryBuildersTemplate as Dt, writeGeneratedEditorsFiles as E, ManifestTemplate as En, processorsFactoryTemplate as Et, makeEditorsIndexFile as F, mainTsxTemplate as Fn, makeOperationImportNames as Ft, getObjectLiteral as G, editorsTemplate as Gn, documentModelGenTypesTemplate as Gt, getAllImportModuleSpecifiers as H, geminiSettingsTemplate as Hn, documentModelIndexTemplate as Ht, validateDocumentModelState as I, licenseTemplate as In, makeOperationsImports as It, getStringArrayPropertyElements as J, documentModelsTemplate as Jn, documentModelPhFactoriesFileTemplate as Jt, getObjectProperty as K, upgradeManifestsTemplate as Kn, documentModelSchemaIndexTemplate as Kt, updateVersionedImports as L, indexTsTemplate as Ln, makeTestCaseForOperation as Lt, tsMorphGenerateApp as M, packageJsonTemplate as Mn, upgradeTransitionTemplate as Mt, makeEditorModuleFile as N, npmrcTemplate as Nn, upgradeManifestTemplate as Nt, writeGeneratedProjectRootFiles as O, packageJsonExportsTemplate as On, analyticsProcessorTemplate as Ot, makeEditorsFile as P, mcpTemplate as Pn, documentModelOperationsModuleTestFileTemplate as Pt, buildObjectLiteral as Q, connectEntrypointTemplate as Qn, documentModelOperationModuleActionsFileTemplate as Qt, getInitialStates as R, legacyIndexHtmlTemplate as Rn, documentModelTestFileTemplate as Rt, writeAiConfigFiles as S, tsconfigPathsTemplate as Sn, relationalDbMigrationsTemplate as St, writeGeneratedDocumentModelsFiles as T, readmeTemplate as Tn, processorsIndexTemplate as Tt, getAllImportNames as U, eslintConfigTemplate as Un, documentModelHooksFileTemplate as Ut, getDefaultProjectOptions as V, syncAndPublishWorkflowTemplate as Vn, documentModelModuleFileTemplate as Vt, getBooleanPropertyValue as W, editorsIndexTemplate as Wn, documentModelGenUtilsTemplate as Wt, getVariableDeclarationByTypeName as X, nginxConfTemplate as Xn, documentModelOperationsModuleErrorFileTemplate as Xt, getStringPropertyValue as Y, switchboardEntrypointTemplate as Yn, documentModelOperationsModuleOperationsFileTemplate as Yt, loadDocumentModelInDir as Z, dockerfileTemplate as Zn, documentModelOperationsModuleCreatorsFileTemplate as Zt, getCommandsHelpInfo as _, documentEditorModuleFileTemplate as _n, customSubgraphSchemaTemplate as _t, getOrCreateManifestFile as a, getLatestDocumentModelSpecVersionNumber as an, folderTreeFileTemplate as ar, getProcessorMetadata as at, buildBoilerplatePackageJson as b, vitestConfigTemplate as bn, relationalDbSchemaTemplate as bt, operationHasEmptyInput as c, getActionType as cn, emptyStateFileTemplate as cr, formatSafe as ct, generateDocumentModelZodSchemas as d, documentModelDocumentTypeTemplate as dn, createDocumentFileTemplate as dr, getDocumentTypeMetadata as dt, getDocumentModelDirName as en, claudeSettingsLocalTemplate as er, ensureDirectoriesExist as et, generateTypesAndZodSchemasFromGraphql as f, documentModelDocumentSchemaFileTemplate as fn, documentModelDocumentTypeMetadata as ft, getCommandHelpInfo as g, documentModelRootActionsFileTemplate as gn, customSubgraphResolversTemplate as gt, tsMorphGenerateDocumentEditor as h, documentModelGenActionsFileTemplate as hn, parseConfig as ht, createOrUpdateManifest as i, getLatestDocumentModelSpec as in, driveExplorerNavigationBreadcrumbsFileTemplate as ir, getSubgraphMetadata as it, writeProjectRootFiles as j, exportsTemplate as jn, documentModelUtilsTemplate as jt, writeGeneratedSubgraphsFiles as k, packageJsonScriptsTemplate as kn, analyticsIndexTemplate as kt, operationHasInput as l, getActionTypeName as ln, driveExplorerFileTemplate as lr, formatSourceFileWithPrettier as lt, scalarsValidation as m, documentModelGenControllerFileTemplate as mn, parseArgs as mt, tsMorphGenerateSubgraph as n, getDocumentModelVariableNames as nn, appEditorFileTemplate as nr, getOrCreateSourceFile as nt, pruneManifestSection as o, getActionInputName as on, appFoldersFileTemplate as or, getAppMetadata as ot, scalars as p, documentModelGenCreatorsFileTemplate as pn, configSpec as pt, getProperyAssignmentByName as q, documentModelsIndexTemplate as qn, documentModelGenReducerFileTemplate as qt, tsMorphGenerateProcessor as r, getEditorVariableNames as rn, appConfigFileTemplate as rr, getPreviousVersionSourceFile as rt, makeModulesIndexFile as s, getActionInputTypeNames as sn, appFilesFileTemplate as sr, getEditorMetadata as st, makeSubgraphsIndexFile as t, getDocumentModelSpecByVersionNumber as tn, agentsTemplate as tr, getOrCreateDirectory as tt, tsMorphGenerateDocumentModel as u, documentModelGenIndexFileTemplate as un, appDriveContentsFileTemplate as ur, runPrettier as ut, makeCliDocsFromHelp as v, documentEditorEditorFileTemplate as vn, subgraphLibFileTemplate as vt, writeCIFiles as w, styleTemplate as wn, relationalDbFactoryTemplate as wt, applyProjectCustomizations as x, tsConfigTemplate as xn, relationalDbProcessorTemplate as xt, writeCliDocsMarkdownFile as y, docsFromCliHelpTemplate as yn, subgraphIndexFileTemplate as yt, DEFAULT_PROJECT_OPTIONS as z, indexHtmlTemplate as zn, documentModelSrcUtilsTemplate as zt };
8578
+ export { buildStringLiteral as $, connectEntrypointTemplate as $n, getModuleExportType as $t, writeModuleFiles as A, pnpmWorkspaceTemplate as An, analyticsFactoryTemplate as At, buildTsMorphProject as B, gitIgnoreTemplate as Bn, documentModelSrcIndexFileTemplate as Bt, writeAllGeneratedProjectFiles as C, subgraphsIndexTemplate as Cn, relationalDbIndexTemplate as Ct, writeGeneratedProcessorsFiles as D, buildPowerhouseConfigTemplate as Dn, factoryBuildersTemplate as Dt, writeGeneratedEditorsFiles as E, ManifestTemplate as En, processorsFactoryTemplate as Et, makeEditorsIndexFile as F, mainTsxTemplate as Fn, makeOperationImportNames as Ft, getObjectLiteral as G, editorsIndexTemplate as Gn, documentModelGenTypesTemplate as Gt, getAllImportModuleSpecifiers as H, geminiSettingsTemplate as Hn, documentModelIndexTemplate as Ht, validateDocumentModelState as I, licenseTemplate as In, makeOperationsImports as It, getStringArrayPropertyElements as J, documentModelsIndexTemplate as Jn, documentModelPhFactoriesFileTemplate as Jt, getObjectProperty as K, editorsTemplate as Kn, documentModelSchemaIndexTemplate as Kt, updateVersionedImports as L, indexTsTemplate as Ln, makeTestCaseForOperation as Lt, tsMorphGenerateApp as M, packageJsonTemplate as Mn, upgradeTransitionTemplate as Mt, makeEditorModuleFile as N, npmrcTemplate as Nn, upgradeManifestTemplate as Nt, writeGeneratedProjectRootFiles as O, packageJsonExportsTemplate as On, analyticsProcessorTemplate as Ot, makeEditorsFile as P, mcpTemplate as Pn, documentModelOperationsModuleTestFileTemplate as Pt, buildObjectLiteral as Q, dockerfileTemplate as Qn, documentModelOperationModuleActionsFileTemplate as Qt, getInitialStates as R, legacyIndexHtmlTemplate as Rn, documentModelTestFileTemplate as Rt, writeAiConfigFiles as S, tsconfigPathsTemplate as Sn, relationalDbMigrationsTemplate as St, writeGeneratedDocumentModelsFiles as T, readmeTemplate as Tn, processorsIndexTemplate as Tt, getAllImportNames as U, oxfmtConfigTemplate as Un, documentModelHooksFileTemplate as Ut, getDefaultProjectOptions as V, syncAndPublishWorkflowTemplate as Vn, documentModelModuleFileTemplate as Vt, getBooleanPropertyValue as W, oxlintConfigTemplate as Wn, documentModelGenUtilsTemplate as Wt, getVariableDeclarationByTypeName as X, switchboardEntrypointTemplate as Xn, documentModelOperationsModuleErrorFileTemplate as Xt, getStringPropertyValue as Y, documentModelsTemplate as Yn, documentModelOperationsModuleOperationsFileTemplate as Yt, loadDocumentModelInDir as Z, nginxConfTemplate as Zn, documentModelOperationsModuleCreatorsFileTemplate as Zt, getCommandsHelpInfo as _, documentEditorModuleFileTemplate as _n, customSubgraphSchemaTemplate as _t, getOrCreateManifestFile as a, getLatestDocumentModelSpecVersionNumber as an, driveExplorerNavigationBreadcrumbsFileTemplate as ar, getProcessorMetadata as at, buildBoilerplatePackageJson as b, vitestConfigTemplate as bn, relationalDbSchemaTemplate as bt, operationHasEmptyInput as c, getActionType as cn, appFilesFileTemplate as cr, formatSafe as ct, generateDocumentModelZodSchemas as d, documentModelDocumentTypeTemplate as dn, appDriveContentsFileTemplate as dr, getDocumentTypeMetadata as dt, getDocumentModelDirName as en, cursorMcpTemplate as er, ensureDirectoriesExist as et, generateTypesAndZodSchemasFromGraphql as f, documentModelDocumentSchemaFileTemplate as fn, createDocumentFileTemplate as fr, documentModelDocumentTypeMetadata as ft, getCommandHelpInfo as g, documentModelRootActionsFileTemplate as gn, customSubgraphResolversTemplate as gt, tsMorphGenerateDocumentEditor as h, documentModelGenActionsFileTemplate as hn, parseConfig as ht, createOrUpdateManifest as i, getLatestDocumentModelSpec as in, appConfigFileTemplate as ir, getSubgraphMetadata as it, writeProjectRootFiles as j, exportsTemplate as jn, documentModelUtilsTemplate as jt, writeGeneratedSubgraphsFiles as k, packageJsonScriptsTemplate as kn, analyticsIndexTemplate as kt, operationHasInput as l, getActionTypeName as ln, emptyStateFileTemplate as lr, formatSourceFileWithPrettier as lt, scalarsValidation as m, documentModelGenControllerFileTemplate as mn, parseArgs as mt, tsMorphGenerateSubgraph as n, getDocumentModelVariableNames as nn, agentsTemplate as nr, getOrCreateSourceFile as nt, pruneManifestSection as o, getActionInputName as on, folderTreeFileTemplate as or, getAppMetadata as ot, scalars as p, documentModelGenCreatorsFileTemplate as pn, configSpec as pt, getProperyAssignmentByName as q, upgradeManifestsTemplate as qn, documentModelGenReducerFileTemplate as qt, tsMorphGenerateProcessor as r, getEditorVariableNames as rn, appEditorFileTemplate as rr, getPreviousVersionSourceFile as rt, makeModulesIndexFile as s, getActionInputTypeNames as sn, appFoldersFileTemplate as sr, getEditorMetadata as st, makeSubgraphsIndexFile as t, getDocumentModelSpecByVersionNumber as tn, claudeSettingsLocalTemplate as tr, getOrCreateDirectory as tt, tsMorphGenerateDocumentModel as u, documentModelGenIndexFileTemplate as un, driveExplorerFileTemplate as ur, runOxfmt as ut, makeCliDocsFromHelp as v, documentEditorEditorFileTemplate as vn, subgraphLibFileTemplate as vt, writeCIFiles as w, styleTemplate as wn, relationalDbFactoryTemplate as wt, applyProjectCustomizations as x, tsConfigTemplate as xn, relationalDbProcessorTemplate as xt, writeCliDocsMarkdownFile as y, docsFromCliHelpTemplate as yn, subgraphIndexFileTemplate as yt, DEFAULT_PROJECT_OPTIONS as z, indexHtmlTemplate as zn, documentModelSrcUtilsTemplate as zt };
8594
8579
 
8595
- //# sourceMappingURL=file-builders-NNaY31PO.mjs.map
8580
+ //# sourceMappingURL=file-builders-DuI7d4bA.mjs.map