@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.
- package/dist/{file-builders-NNaY31PO.mjs → file-builders-DuI7d4bA.mjs} +149 -164
- package/dist/file-builders-DuI7d4bA.mjs.map +1 -0
- package/dist/index-DtbVU1fc.d.mts.map +1 -1
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +73 -68
- package/dist/index.mjs.map +1 -1
- package/dist/src/file-builders/index.mjs +1 -1
- package/dist/src/name-builders/index.mjs +1 -1
- package/dist/src/templates/index.d.mts +8 -5
- package/dist/src/templates/index.d.mts.map +1 -1
- package/dist/src/templates/index.mjs +2 -2
- package/dist/src/utils/index.d.mts +4 -5
- package/dist/src/utils/index.d.mts.map +1 -1
- package/dist/src/utils/index.mjs +2 -2
- package/package.json +4 -4
- package/dist/file-builders-NNaY31PO.mjs.map +0 -1
|
@@ -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 "
|
|
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
|
-
|
|
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
|
-
- **
|
|
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
|
|
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
|
|
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
|
|
2947
|
-
RUN pnpm add -g ph-cmd@$TAG prisma@5.17.0
|
|
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/
|
|
3207
|
-
const
|
|
3208
|
-
|
|
3209
|
-
|
|
3210
|
-
|
|
3211
|
-
|
|
3212
|
-
|
|
3213
|
-
|
|
3214
|
-
|
|
3215
|
-
|
|
3216
|
-
|
|
3217
|
-
/**
|
|
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
|
-
|
|
3273
|
-
|
|
3274
|
-
|
|
3275
|
-
|
|
3276
|
-
|
|
3277
|
-
|
|
3278
|
-
|
|
3279
|
-
|
|
3280
|
-
|
|
3281
|
-
|
|
3282
|
-
|
|
3283
|
-
|
|
3284
|
-
|
|
3285
|
-
|
|
3286
|
-
|
|
3287
|
-
|
|
3288
|
-
|
|
3289
|
-
|
|
3290
|
-
|
|
3291
|
-
|
|
3292
|
-
|
|
3293
|
-
|
|
3294
|
-
|
|
3295
|
-
|
|
3296
|
-
|
|
3297
|
-
|
|
3298
|
-
|
|
3299
|
-
|
|
3300
|
-
|
|
3301
|
-
|
|
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
|
-
|
|
3306
|
-
|
|
3307
|
-
|
|
3308
|
-
|
|
3309
|
-
|
|
3310
|
-
|
|
3311
|
-
|
|
3312
|
-
|
|
3313
|
-
|
|
3314
|
-
|
|
3315
|
-
|
|
3316
|
-
|
|
3317
|
-
|
|
3318
|
-
|
|
3319
|
-
|
|
3320
|
-
|
|
3321
|
-
|
|
3322
|
-
|
|
3323
|
-
|
|
3324
|
-
|
|
3325
|
-
|
|
3326
|
-
|
|
3327
|
-
|
|
3328
|
-
|
|
3329
|
-
|
|
3330
|
-
|
|
3331
|
-
|
|
3332
|
-
|
|
3333
|
-
|
|
3334
|
-
|
|
3335
|
-
|
|
3336
|
-
|
|
3337
|
-
|
|
3338
|
-
|
|
3339
|
-
|
|
3340
|
-
|
|
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": "
|
|
4499
|
-
"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: "
|
|
4528
|
-
"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
|
|
4642
|
-
- \`format\`: Formats the code using
|
|
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
|
-
|
|
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(
|
|
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
|
|
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, "
|
|
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
|
|
7498
|
-
return await format(content, {
|
|
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:
|
|
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 $,
|
|
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-
|
|
8580
|
+
//# sourceMappingURL=file-builders-DuI7d4bA.mjs.map
|