@powerhousedao/codegen 6.0.0-dev.9 → 6.0.0-dev.91
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/src/codegen/.hygen/templates/powerhouse/generate-custom-subgraph/resolvers.esm.t +2 -2
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/index.js +5 -5
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model/module.esm.t +1 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-module/index.js +5 -5
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-document-model-subgraph/index.js +4 -4
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/editor.esm.t +3 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-drive-editor/index.js +4 -4
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-editor/editor.esm.t +1 -1
- package/dist/src/codegen/.hygen/templates/powerhouse/generate-editor/index.js +7 -7
- package/dist/src/codegen/__tests__/fixtures/typecheck.js +1 -1
- package/dist/src/codegen/__tests__/fixtures/typecheck.js.map +1 -1
- package/dist/src/codegen/__tests__/generate-doc-model.test.js +163 -212
- package/dist/src/codegen/__tests__/generate-doc-model.test.js.map +1 -1
- package/dist/src/codegen/__tests__/generate-drive-editor.test.js +72 -46
- package/dist/src/codegen/__tests__/generate-drive-editor.test.js.map +1 -1
- package/dist/src/codegen/__tests__/generate-editor.test.js +27 -23
- package/dist/src/codegen/__tests__/generate-editor.test.js.map +1 -1
- package/dist/src/codegen/__tests__/generate-manifest.test.js +17 -16
- package/dist/src/codegen/__tests__/generate-manifest.test.js.map +1 -1
- package/dist/src/codegen/__tests__/generate-processor.test.d.ts +2 -0
- package/dist/src/codegen/__tests__/generate-processor.test.d.ts.map +1 -0
- package/dist/src/codegen/__tests__/generate-processor.test.js +296 -0
- package/dist/src/codegen/__tests__/generate-processor.test.js.map +1 -0
- package/dist/src/codegen/__tests__/global-setup.d.ts +1 -1
- package/dist/src/codegen/__tests__/global-setup.d.ts.map +1 -1
- package/dist/src/codegen/__tests__/global-setup.js +3 -15
- package/dist/src/codegen/__tests__/global-setup.js.map +1 -1
- package/dist/src/codegen/__tests__/ts-morph-generator.test.js +4 -4
- package/dist/src/codegen/__tests__/ts-morph-generator.test.js.map +1 -1
- package/dist/src/codegen/__tests__/utils.d.ts +2 -2
- package/dist/src/codegen/__tests__/utils.d.ts.map +1 -1
- package/dist/src/codegen/__tests__/utils.js +11 -12
- package/dist/src/codegen/__tests__/utils.js.map +1 -1
- package/dist/src/codegen/generate.d.ts +24 -11
- package/dist/src/codegen/generate.d.ts.map +1 -1
- package/dist/src/codegen/generate.js +58 -40
- package/dist/src/codegen/generate.js.map +1 -1
- package/dist/src/codegen/graphql.d.ts.map +1 -1
- package/dist/src/codegen/graphql.js +10 -9
- package/dist/src/codegen/graphql.js.map +1 -1
- package/dist/src/codegen/hygen.js +4 -4
- package/dist/src/codegen/hygen.js.map +1 -1
- package/dist/src/codegen/utils.d.ts +1 -1
- package/dist/src/codegen/utils.d.ts.map +1 -1
- package/dist/src/codegen/utils.js +2 -1
- package/dist/src/codegen/utils.js.map +1 -1
- package/dist/src/create-lib/create-project.d.ts.map +1 -1
- package/dist/src/create-lib/create-project.js +14 -2
- package/dist/src/create-lib/create-project.js.map +1 -1
- package/dist/src/file-builders/boilerplate/build-package-json.test.js +4 -1
- package/dist/src/file-builders/boilerplate/build-package-json.test.js.map +1 -1
- package/dist/src/file-builders/boilerplate/ci-templates.test.d.ts +2 -0
- package/dist/src/file-builders/boilerplate/ci-templates.test.d.ts.map +1 -0
- package/dist/src/file-builders/boilerplate/ci-templates.test.js +114 -0
- package/dist/src/file-builders/boilerplate/ci-templates.test.js.map +1 -0
- package/dist/src/file-builders/boilerplate/package.json.js +1 -1
- package/dist/src/file-builders/boilerplate/package.json.js.map +1 -1
- package/dist/src/file-builders/clis/generate-cli-docs.d.ts +17 -0
- package/dist/src/file-builders/clis/generate-cli-docs.d.ts.map +1 -0
- package/dist/src/file-builders/clis/generate-cli-docs.js +36 -0
- package/dist/src/file-builders/clis/generate-cli-docs.js.map +1 -0
- package/dist/src/file-builders/document-editor.d.ts +1 -1
- package/dist/src/file-builders/document-editor.d.ts.map +1 -1
- package/dist/src/file-builders/document-editor.js +9 -7
- package/dist/src/file-builders/document-editor.js.map +1 -1
- package/dist/src/file-builders/document-model/document-model.d.ts +1 -1
- package/dist/src/file-builders/document-model/document-model.d.ts.map +1 -1
- package/dist/src/file-builders/document-model/document-model.js +67 -65
- package/dist/src/file-builders/document-model/document-model.js.map +1 -1
- package/dist/src/file-builders/document-model/gen-dir.d.ts +1 -1
- package/dist/src/file-builders/document-model/gen-dir.d.ts.map +1 -1
- package/dist/src/file-builders/document-model/gen-dir.js +67 -58
- package/dist/src/file-builders/document-model/gen-dir.js.map +1 -1
- package/dist/src/file-builders/document-model/migrate-legacy.d.ts +19 -0
- package/dist/src/file-builders/document-model/migrate-legacy.d.ts.map +1 -0
- package/dist/src/file-builders/document-model/migrate-legacy.js +104 -0
- package/dist/src/file-builders/document-model/migrate-legacy.js.map +1 -0
- package/dist/src/file-builders/document-model/root-dir.d.ts +1 -1
- package/dist/src/file-builders/document-model/root-dir.d.ts.map +1 -1
- package/dist/src/file-builders/document-model/root-dir.js +17 -17
- package/dist/src/file-builders/document-model/root-dir.js.map +1 -1
- package/dist/src/file-builders/document-model/src-dir.d.ts +1 -1
- package/dist/src/file-builders/document-model/src-dir.d.ts.map +1 -1
- package/dist/src/file-builders/document-model/src-dir.js +78 -19
- package/dist/src/file-builders/document-model/src-dir.js.map +1 -1
- package/dist/src/file-builders/document-model/tests-dir.d.ts +1 -1
- package/dist/src/file-builders/document-model/tests-dir.d.ts.map +1 -1
- package/dist/src/file-builders/document-model/tests-dir.js +11 -11
- package/dist/src/file-builders/document-model/tests-dir.js.map +1 -1
- package/dist/src/file-builders/document-model/upgrades-dir.d.ts +6 -4
- package/dist/src/file-builders/document-model/upgrades-dir.d.ts.map +1 -1
- package/dist/src/file-builders/document-model/upgrades-dir.js +17 -25
- package/dist/src/file-builders/document-model/upgrades-dir.js.map +1 -1
- package/dist/src/file-builders/drive-editor.d.ts +1 -1
- package/dist/src/file-builders/drive-editor.d.ts.map +1 -1
- package/dist/src/file-builders/drive-editor.js +37 -35
- package/dist/src/file-builders/drive-editor.js.map +1 -1
- package/dist/src/file-builders/editor-common.d.ts.map +1 -1
- package/dist/src/file-builders/editor-common.js +0 -1
- package/dist/src/file-builders/editor-common.js.map +1 -1
- package/dist/src/file-builders/index.d.ts +1 -0
- package/dist/src/file-builders/index.d.ts.map +1 -1
- package/dist/src/file-builders/index.js +1 -0
- package/dist/src/file-builders/index.js.map +1 -1
- package/dist/src/file-builders/module-files.d.ts +11 -5
- package/dist/src/file-builders/module-files.d.ts.map +1 -1
- package/dist/src/file-builders/module-files.js +37 -28
- package/dist/src/file-builders/module-files.js.map +1 -1
- package/dist/src/file-builders/processors/analytics.d.ts +3 -0
- package/dist/src/file-builders/processors/analytics.d.ts.map +1 -0
- package/dist/src/file-builders/processors/analytics.js +35 -0
- package/dist/src/file-builders/processors/analytics.js.map +1 -0
- package/dist/src/file-builders/processors/processor.d.ts +9 -0
- package/dist/src/file-builders/processors/processor.d.ts.map +1 -0
- package/dist/src/file-builders/processors/processor.js +142 -0
- package/dist/src/file-builders/processors/processor.js.map +1 -0
- package/dist/src/file-builders/processors/relational-db.d.ts +3 -0
- package/dist/src/file-builders/processors/relational-db.d.ts.map +1 -0
- package/dist/src/file-builders/processors/relational-db.js +53 -0
- package/dist/src/file-builders/processors/relational-db.js.map +1 -0
- package/dist/src/file-builders/processors/types.d.ts +13 -0
- package/dist/src/file-builders/processors/types.d.ts.map +1 -0
- package/dist/src/file-builders/processors/types.js +2 -0
- package/dist/src/file-builders/processors/types.js.map +1 -0
- package/dist/src/file-builders/subgraphs.d.ts +1 -1
- package/dist/src/file-builders/subgraphs.d.ts.map +1 -1
- package/dist/src/file-builders/subgraphs.js +2 -2
- package/dist/src/file-builders/subgraphs.js.map +1 -1
- package/dist/src/file-builders/types.d.ts +19 -0
- package/dist/src/file-builders/types.d.ts.map +1 -1
- package/dist/src/name-builders/get-variable-names.d.ts +2 -1
- package/dist/src/name-builders/get-variable-names.d.ts.map +1 -1
- package/dist/src/name-builders/get-variable-names.js +6 -4
- package/dist/src/name-builders/get-variable-names.js.map +1 -1
- package/dist/src/templates/boilerplate/AGENTS.md.d.ts.map +1 -1
- package/dist/src/templates/boilerplate/AGENTS.md.js +126 -8
- package/dist/src/templates/boilerplate/AGENTS.md.js.map +1 -1
- package/dist/src/templates/boilerplate/CLAUDE.md.d.ts +1 -1
- package/dist/src/templates/boilerplate/CLAUDE.md.d.ts.map +1 -1
- package/dist/src/templates/boilerplate/CLAUDE.md.js +1 -407
- package/dist/src/templates/boilerplate/CLAUDE.md.js.map +1 -1
- package/dist/src/templates/boilerplate/docker/Dockerfile.d.ts +2 -0
- package/dist/src/templates/boilerplate/docker/Dockerfile.d.ts.map +1 -0
- package/dist/src/templates/boilerplate/docker/Dockerfile.js +144 -0
- package/dist/src/templates/boilerplate/docker/Dockerfile.js.map +1 -0
- package/dist/src/templates/boilerplate/docker/connect-entrypoint.sh.d.ts +2 -0
- package/dist/src/templates/boilerplate/docker/connect-entrypoint.sh.d.ts.map +1 -0
- package/dist/src/templates/boilerplate/docker/connect-entrypoint.sh.js +18 -0
- package/dist/src/templates/boilerplate/docker/connect-entrypoint.sh.js.map +1 -0
- package/dist/src/templates/boilerplate/docker/nginx.conf.d.ts +2 -0
- package/dist/src/templates/boilerplate/docker/nginx.conf.d.ts.map +1 -0
- package/dist/src/templates/boilerplate/docker/nginx.conf.js +79 -0
- package/dist/src/templates/boilerplate/docker/nginx.conf.js.map +1 -0
- package/dist/src/templates/boilerplate/docker/switchboard-entrypoint.sh.d.ts +2 -0
- package/dist/src/templates/boilerplate/docker/switchboard-entrypoint.sh.d.ts.map +1 -0
- package/dist/src/templates/boilerplate/docker/switchboard-entrypoint.sh.js +19 -0
- package/dist/src/templates/boilerplate/docker/switchboard-entrypoint.sh.js.map +1 -0
- package/dist/src/templates/boilerplate/document-models/upgrade-manifests.d.ts +2 -0
- package/dist/src/templates/boilerplate/document-models/upgrade-manifests.d.ts.map +1 -0
- package/dist/src/templates/boilerplate/document-models/upgrade-manifests.js +7 -0
- package/dist/src/templates/boilerplate/document-models/upgrade-manifests.js.map +1 -0
- package/dist/src/templates/boilerplate/github/sync-and-publish.yml.d.ts +2 -0
- package/dist/src/templates/boilerplate/github/sync-and-publish.yml.d.ts.map +1 -0
- package/dist/src/templates/boilerplate/github/sync-and-publish.yml.js +376 -0
- package/dist/src/templates/boilerplate/github/sync-and-publish.yml.js.map +1 -0
- package/dist/src/templates/boilerplate/index.d.ts.map +1 -1
- package/dist/src/templates/boilerplate/index.js +4 -1
- package/dist/src/templates/boilerplate/index.js.map +1 -1
- package/dist/src/templates/boilerplate/package.json.d.ts.map +1 -1
- package/dist/src/templates/boilerplate/package.json.js +10 -4
- package/dist/src/templates/boilerplate/package.json.js.map +1 -1
- package/dist/src/templates/boilerplate/powerhouse.config.json.js +2 -2
- package/dist/src/templates/boilerplate/powerhouse.config.json.js.map +1 -1
- package/dist/src/templates/cli-docs/docs-from-cli-help.d.ts +8 -0
- package/dist/src/templates/cli-docs/docs-from-cli-help.d.ts.map +1 -0
- package/dist/src/templates/cli-docs/docs-from-cli-help.js +86 -0
- package/dist/src/templates/cli-docs/docs-from-cli-help.js.map +1 -0
- package/dist/src/templates/document-editor/editor.js +1 -1
- package/dist/src/templates/document-model/gen/actions.js +5 -5
- package/dist/src/templates/document-model/gen/controller.d.ts +3 -0
- package/dist/src/templates/document-model/gen/controller.d.ts.map +1 -0
- package/dist/src/templates/document-model/gen/controller.js +12 -0
- package/dist/src/templates/document-model/gen/controller.js.map +1 -0
- package/dist/src/templates/document-model/gen/creators.js +4 -4
- package/dist/src/templates/document-model/gen/index.d.ts.map +1 -1
- package/dist/src/templates/document-model/gen/index.js +3 -2
- package/dist/src/templates/document-model/gen/index.js.map +1 -1
- package/dist/src/templates/document-model/gen/modules/error.d.ts.map +1 -1
- package/dist/src/templates/document-model/gen/modules/error.js +8 -2
- package/dist/src/templates/document-model/gen/modules/error.js.map +1 -1
- package/dist/src/templates/document-model/gen/reducer.js +3 -3
- package/dist/src/templates/document-model/module.js +1 -1
- package/dist/src/templates/document-model/module.js.map +1 -1
- package/dist/src/templates/document-model/tests/document-model.test.d.ts.map +1 -0
- package/dist/src/templates/document-model/tests/document-model.test.js.map +1 -0
- package/dist/src/templates/document-model/tests/module.test.d.ts.map +1 -0
- package/dist/src/templates/document-model/{src/tests → tests}/module.test.js +1 -1
- package/dist/src/templates/document-model/tests/module.test.js.map +1 -0
- package/dist/src/templates/document-model/upgrades/upgrade-manifest.d.ts +5 -0
- package/dist/src/templates/document-model/upgrades/upgrade-manifest.d.ts.map +1 -0
- package/dist/src/templates/document-model/upgrades/upgrade-manifest.js +13 -0
- package/dist/src/templates/document-model/upgrades/upgrade-manifest.js.map +1 -0
- package/dist/src/templates/drive-editor/editor.d.ts.map +1 -1
- package/dist/src/templates/drive-editor/editor.js +3 -1
- package/dist/src/templates/drive-editor/editor.js.map +1 -1
- package/dist/src/templates/index.d.ts +18 -3
- package/dist/src/templates/index.d.ts.map +1 -1
- package/dist/src/templates/index.js +18 -3
- package/dist/src/templates/index.js.map +1 -1
- package/dist/src/templates/processors/analytics/factory.d.ts +6 -0
- package/dist/src/templates/processors/analytics/factory.d.ts.map +1 -0
- package/dist/src/templates/processors/analytics/factory.js +26 -0
- package/dist/src/templates/processors/analytics/factory.js.map +1 -0
- package/dist/src/templates/processors/analytics/index.d.ts +4 -0
- package/dist/src/templates/processors/analytics/index.d.ts.map +1 -0
- package/dist/src/templates/processors/analytics/index.js +34 -0
- package/dist/src/templates/processors/analytics/index.js.map +1 -0
- package/dist/src/templates/processors/factory.d.ts +2 -0
- package/dist/src/templates/processors/factory.d.ts.map +1 -0
- package/dist/src/templates/processors/factory.js +60 -0
- package/dist/src/templates/processors/factory.js.map +1 -0
- package/dist/src/templates/processors/index.d.ts +2 -0
- package/dist/src/templates/processors/index.d.ts.map +1 -0
- package/dist/src/templates/processors/index.js +10 -0
- package/dist/src/templates/processors/index.js.map +1 -0
- package/dist/src/templates/processors/relational-db/factory.d.ts +6 -0
- package/dist/src/templates/processors/relational-db/factory.d.ts.map +1 -0
- package/dist/src/templates/processors/relational-db/factory.js +40 -0
- package/dist/src/templates/processors/relational-db/factory.js.map +1 -0
- package/dist/src/templates/processors/relational-db/index.d.ts +4 -0
- package/dist/src/templates/processors/relational-db/index.d.ts.map +1 -0
- package/dist/src/templates/processors/relational-db/index.js +28 -0
- package/dist/src/templates/processors/relational-db/index.js.map +1 -0
- package/dist/src/templates/processors/relational-db/migrations.d.ts +2 -0
- package/dist/src/templates/processors/relational-db/migrations.d.ts.map +1 -0
- package/dist/src/templates/processors/relational-db/migrations.js +23 -0
- package/dist/src/templates/processors/relational-db/migrations.js.map +1 -0
- package/dist/src/templates/processors/relational-db/schema.d.ts +2 -0
- package/dist/src/templates/processors/relational-db/schema.d.ts.map +1 -0
- package/dist/src/templates/processors/relational-db/schema.js +12 -0
- package/dist/src/templates/processors/relational-db/schema.js.map +1 -0
- package/dist/src/templates/processors/utils.d.ts +2 -0
- package/dist/src/templates/processors/utils.d.ts.map +1 -0
- package/dist/src/templates/processors/utils.js +6 -0
- package/dist/src/templates/processors/utils.js.map +1 -0
- package/dist/src/ts-morph-generator/__tests__/ReducerGenerator.test.js +4 -4
- package/dist/src/ts-morph-generator/core/ReducerGenerator.js +3 -3
- package/dist/src/ts-morph-generator/utilities/DirectoryManager.d.ts +1 -1
- package/dist/src/ts-morph-generator/utilities/DirectoryManager.d.ts.map +1 -1
- package/dist/src/ts-morph-generator/utilities/DirectoryManager.js +5 -5
- package/dist/src/ts-morph-generator/utilities/DirectoryManager.js.map +1 -1
- package/dist/src/utils/constants.d.ts +0 -2
- package/dist/src/utils/constants.d.ts.map +1 -1
- package/dist/src/utils/constants.js +0 -18
- package/dist/src/utils/constants.js.map +1 -1
- package/dist/src/utils/document-type-metadata.d.ts.map +1 -1
- package/dist/src/utils/document-type-metadata.js +5 -2
- package/dist/src/utils/document-type-metadata.js.map +1 -1
- package/dist/src/utils/format-with-prettier.d.ts +1 -1
- package/dist/src/utils/format-with-prettier.d.ts.map +1 -1
- package/dist/src/utils/format-with-prettier.js +5 -11
- package/dist/src/utils/format-with-prettier.js.map +1 -1
- package/dist/src/utils/index.d.ts +1 -3
- package/dist/src/utils/index.d.ts.map +1 -1
- package/dist/src/utils/index.js +1 -3
- package/dist/src/utils/index.js.map +1 -1
- package/dist/src/utils/source-files.d.ts +8 -1
- package/dist/src/utils/source-files.d.ts.map +1 -1
- package/dist/src/utils/source-files.js +19 -2
- package/dist/src/utils/source-files.js.map +1 -1
- package/dist/src/utils/syntax-getters.d.ts +2 -1
- package/dist/src/utils/syntax-getters.d.ts.map +1 -1
- package/dist/src/utils/syntax-getters.js +4 -0
- package/dist/src/utils/syntax-getters.js.map +1 -1
- package/dist/src/utils/ts-morph-project.d.ts +14 -5
- package/dist/src/utils/ts-morph-project.d.ts.map +1 -1
- package/dist/src/utils/ts-morph-project.js +12 -12
- package/dist/src/utils/ts-morph-project.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/vitest.config.d.ts.map +1 -1
- package/dist/vitest.config.js +2 -0
- package/dist/vitest.config.js.map +1 -1
- package/package.json +37 -41
- package/dist/src/codegen/__tests__/generate-versioned-document-model.test.d.ts +0 -2
- package/dist/src/codegen/__tests__/generate-versioned-document-model.test.d.ts.map +0 -1
- package/dist/src/codegen/__tests__/generate-versioned-document-model.test.js +0 -159
- package/dist/src/codegen/__tests__/generate-versioned-document-model.test.js.map +0 -1
- package/dist/src/file-builders/boilerplate/package-json-versions.test.d.ts +0 -2
- package/dist/src/file-builders/boilerplate/package-json-versions.test.d.ts.map +0 -1
- package/dist/src/file-builders/boilerplate/package-json-versions.test.js +0 -34
- package/dist/src/file-builders/boilerplate/package-json-versions.test.js.map +0 -1
- package/dist/src/templates/boilerplate/processors/index.d.ts +0 -2
- package/dist/src/templates/boilerplate/processors/index.d.ts.map +0 -1
- package/dist/src/templates/boilerplate/processors/index.js +0 -2
- package/dist/src/templates/boilerplate/processors/index.js.map +0 -1
- package/dist/src/templates/document-model/src/tests/document-model.test.d.ts.map +0 -1
- package/dist/src/templates/document-model/src/tests/document-model.test.js.map +0 -1
- package/dist/src/templates/document-model/src/tests/module.test.d.ts.map +0 -1
- package/dist/src/templates/document-model/src/tests/module.test.js.map +0 -1
- package/dist/src/utils/dependencies.d.ts +0 -12
- package/dist/src/utils/dependencies.d.ts.map +0 -1
- package/dist/src/utils/dependencies.js +0 -34
- package/dist/src/utils/dependencies.js.map +0 -1
- package/dist/src/utils/spawn-async.d.ts +0 -5
- package/dist/src/utils/spawn-async.d.ts.map +0 -1
- package/dist/src/utils/spawn-async.js +0 -29
- package/dist/src/utils/spawn-async.js.map +0 -1
- /package/dist/src/templates/document-model/{src/tests → tests}/document-model.test.d.ts +0 -0
- /package/dist/src/templates/document-model/{src/tests → tests}/document-model.test.js +0 -0
- /package/dist/src/templates/document-model/{src/tests → tests}/module.test.d.ts +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subgraphs.d.ts","sourceRoot":"","sources":["../../../src/file-builders/subgraphs.ts"],"names":[],"mappings":"AAGA,KAAK,0BAA0B,GAAG;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC;AACzD,
|
|
1
|
+
{"version":3,"file":"subgraphs.d.ts","sourceRoot":"","sources":["../../../src/file-builders/subgraphs.ts"],"names":[],"mappings":"AAGA,KAAK,0BAA0B,GAAG;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC;AACzD,wBAAsB,sBAAsB,CAAC,EAC3C,UAAU,GACX,EAAE,0BAA0B,iBA8D5B"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import path from "path";
|
|
2
2
|
import { IndentationText, Project } from "ts-morph";
|
|
3
|
-
export function makeSubgraphsIndexFile({ projectDir, }) {
|
|
3
|
+
export async function makeSubgraphsIndexFile({ projectDir, }) {
|
|
4
4
|
// use the local tsconfig.json file for a given project
|
|
5
5
|
const tsConfigFilePath = path.join(projectDir, "tsconfig.json");
|
|
6
6
|
const project = new Project({
|
|
@@ -48,6 +48,6 @@ export function makeSubgraphsIndexFile({ projectDir, }) {
|
|
|
48
48
|
moduleSpecifier: `./${subgraphSubdir.getBaseName()}/index.js`,
|
|
49
49
|
});
|
|
50
50
|
}
|
|
51
|
-
project.
|
|
51
|
+
await project.save();
|
|
52
52
|
}
|
|
53
53
|
//# sourceMappingURL=subgraphs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subgraphs.js","sourceRoot":"","sources":["../../../src/file-builders/subgraphs.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAGpD,MAAM,UAAU,sBAAsB,CAAC,
|
|
1
|
+
{"version":3,"file":"subgraphs.js","sourceRoot":"","sources":["../../../src/file-builders/subgraphs.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAGpD,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,EAC3C,UAAU,GACiB;IAC3B,uDAAuD;IACvD,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;IAEhE,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC;QAC1B,gBAAgB;QAChB,yEAAyE;QACzE,2BAA2B,EAAE,IAAI;QACjC,gEAAgE;QAChE,mBAAmB,EAAE,IAAI;QACzB,4CAA4C;QAC5C,oBAAoB,EAAE;YACpB,iBAAiB,EAAE,IAAI;YACvB,eAAe,EAAE,eAAe,CAAC,SAAS;SAC3C;KACF,CAAC,CAAC;IAEH,OAAO,CAAC,qBAAqB,CAAC,GAAG,UAAU,iBAAiB,CAAC,CAAC;IAE9D,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC;IAC9E,MAAM,gBAAgB,GAAG,YAAY,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;IAE9D,IAAI,wBAAwB,GAAG,OAAO,CAAC,aAAa,CAClD,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,oBAAoB,CAAC,CAC5C,CAAC;IACF,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAC9B,wBAAwB,GAAG,OAAO,CAAC,gBAAgB,CACjD,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,oBAAoB,CAAC,EAC3C,EAAE,CACH,CAAC;IACJ,CAAC;IAED,KAAK,MAAM,cAAc,IAAI,gBAAgB,EAAE,CAAC;QAC9C,MAAM,2BAA2B,GAAG,GAAG,cAAc,CAAC,OAAO,EAAE,WAAW,CAAC;QAC3E,MAAM,uBAAuB,GAAG,OAAO,CAAC,aAAa,CACnD,2BAA2B,CAC5B,CAAC;QACF,IAAI,CAAC,uBAAuB,EAAE,CAAC;YAC7B,SAAS;QACX,CAAC;QACD,MAAM,mBAAmB,GAAG,uBAAuB;aAChD,UAAU,EAAE;aACZ,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,EAAE,EAAE,OAAO,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC;QACrE,MAAM,iBAAiB,GAAG,mBAAmB,EAAE,OAAO,EAAE,CAAC;QACzD,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,SAAS;QACX,CAAC;QACD,MAAM,gBAAgB,GAAG,wBAAwB;aAC9C,qBAAqB,EAAE;aACvB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,CAAC;aAC7C,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC;aAC9B,IAAI,EAAE,CAAC;QACV,IAAI,gBAAgB,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACjD,SAAS;QACX,CAAC;QACD,wBAAwB,CAAC,oBAAoB,CAAC;YAC5C,eAAe,EAAE,iBAAiB;YAClC,eAAe,EAAE,KAAK,cAAc,CAAC,WAAW,EAAE,WAAW;SAC9D,CAAC,CAAC;IACL,CAAC;IAED,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;AACvB,CAAC"}
|
|
@@ -40,6 +40,7 @@ export type GenerateDocumentModelArgs = {
|
|
|
40
40
|
packageName: string;
|
|
41
41
|
documentModelState: DocumentModelGlobalState;
|
|
42
42
|
useVersioning: boolean;
|
|
43
|
+
migrateLegacy?: boolean;
|
|
43
44
|
};
|
|
44
45
|
export type DocumentModelFileMakerArgs = DocumentModelVariableNames & GenerateDocumentModelArgs & {
|
|
45
46
|
project: Project;
|
|
@@ -63,4 +64,22 @@ export type DocumentModelFileMakerArgs = DocumentModelVariableNames & GenerateDo
|
|
|
63
64
|
reducersDirPath: string;
|
|
64
65
|
fileExtension: string;
|
|
65
66
|
};
|
|
67
|
+
export type CommandEntry = {
|
|
68
|
+
name: string;
|
|
69
|
+
command: {
|
|
70
|
+
description?: string;
|
|
71
|
+
helpTopics?: () => HelpTopic[];
|
|
72
|
+
};
|
|
73
|
+
};
|
|
74
|
+
export type HelpTopic = {
|
|
75
|
+
category: string;
|
|
76
|
+
usage: string;
|
|
77
|
+
description: string;
|
|
78
|
+
defaults: string[];
|
|
79
|
+
};
|
|
80
|
+
export type CommandHelpInfo = {
|
|
81
|
+
name: string;
|
|
82
|
+
description: string;
|
|
83
|
+
helpTopics: HelpTopic[];
|
|
84
|
+
};
|
|
66
85
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/file-builders/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,6CAA6C,EAC7C,6BAA6B,EAC7B,sBAAsB,EACvB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,KAAK,EACV,wBAAwB,EACxB,mBAAmB,EACnB,2BAA2B,EAC5B,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAExC,MAAM,MAAM,6BAA6B,GAAG;IAC1C,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,uBAAuB,EAAE,MAAM,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG;IAC9C,eAAe,EAAE,MAAM,CAAC;IACxB,6BAA6B,EAAE,MAAM,CAAC;IACtC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,uBAAuB,EAAE,MAAM,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAE5E,MAAM,MAAM,0BAA0B,GAAG,UAAU,CACjD,OAAO,6BAA6B,CACrC,CAAC;AAEF,MAAM,MAAM,0CAA0C,GAAG,UAAU,CACjE,OAAO,6CAA6C,CACrD,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG,0BAA0B,GAClE,0BAA0B,CAAC;AAE7B,MAAM,MAAM,qCAAqC,GAAG;IAClD,MAAM,EAAE,mBAAmB,CAAC;CAC7B,GAAG,2BAA2B,GAC7B,0CAA0C,CAAC;AAE7C,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,OAAO,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,2BAA2B,EAAE,CAAC;CACvC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,wBAAwB,CAAC;IAC7C,aAAa,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/file-builders/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,10 +18,11 @@ export declare function getLatestDocumentModelSpec({ specifications, }: Document
|
|
|
18
18
|
export declare function getDocumentModelSpecByVersionNumber({ specifications }: DocumentModelGlobalState, version: number): import("document-model").DocumentSpecification;
|
|
19
19
|
export declare function getLatestDocumentModelSpecVersionNumber(documentModelState: DocumentModelGlobalState): number;
|
|
20
20
|
export declare function getDocumentModelVariableNames(documentType: string): {
|
|
21
|
-
|
|
21
|
+
kebabCaseDocumentType: string;
|
|
22
22
|
pascalCaseDocumentType: string;
|
|
23
23
|
camelCaseDocumentType: string;
|
|
24
24
|
documentTypeVariableName: string;
|
|
25
|
+
upgradeManifestName: string;
|
|
25
26
|
stateName: string;
|
|
26
27
|
globalStateName: string;
|
|
27
28
|
localStateName: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-variable-names.d.ts","sourceRoot":"","sources":["../../../src/name-builders/get-variable-names.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,iCAAiC,EAClC,MAAM,wBAAwB,CAAC;AAEhC,OAAO,KAAK,EACV,wBAAwB,EACxB,mBAAmB,EACnB,2BAA2B,EAE5B,MAAM,gBAAgB,CAAC;AAExB,wBAAgB,sBAAsB,CAAC,EACrC,6BAA6B,GAC9B,EAAE,iCAAiC;;;;;;;;;;;;EAcnC;AAED,wBAAgB,uBAAuB,CACrC,kBAAkB,EAAE,wBAAwB,EAC5C,eAAe,CAAC,EAAE,MAAM,UAIzB;AAED,wBAAgB,0BAA0B,CAAC,EACzC,cAAc,GACf,EAAE,wBAAwB,kDAE1B;AAED,wBAAgB,mCAAmC,CACjD,EAAE,cAAc,EAAE,EAAE,wBAAwB,EAC5C,OAAO,EAAE,MAAM,kDAoBhB;AAED,wBAAgB,uCAAuC,CACrD,kBAAkB,EAAE,wBAAwB,UAG7C;AAED,wBAAgB,6BAA6B,CAAC,YAAY,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"get-variable-names.d.ts","sourceRoot":"","sources":["../../../src/name-builders/get-variable-names.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,iCAAiC,EAClC,MAAM,wBAAwB,CAAC;AAEhC,OAAO,KAAK,EACV,wBAAwB,EACxB,mBAAmB,EACnB,2BAA2B,EAE5B,MAAM,gBAAgB,CAAC;AAExB,wBAAgB,sBAAsB,CAAC,EACrC,6BAA6B,GAC9B,EAAE,iCAAiC;;;;;;;;;;;;EAcnC;AAED,wBAAgB,uBAAuB,CACrC,kBAAkB,EAAE,wBAAwB,EAC5C,eAAe,CAAC,EAAE,MAAM,UAIzB;AAED,wBAAgB,0BAA0B,CAAC,EACzC,cAAc,GACf,EAAE,wBAAwB,kDAE1B;AAED,wBAAgB,mCAAmC,CACjD,EAAE,cAAc,EAAE,EAAE,wBAAwB,EAC5C,OAAO,EAAE,MAAM,kDAoBhB;AAED,wBAAgB,uCAAuC,CACrD,kBAAkB,EAAE,wBAAwB,UAG7C;AAED,wBAAgB,6BAA6B,CAAC,YAAY,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;EAmDjE;AAED,wBAAgB,6CAA6C,CAC3D,MAAM,EAAE,mBAAmB;;;EAK5B"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { camelCase,
|
|
1
|
+
import { camelCase, kebabCase, pascalCase } from "change-case";
|
|
2
2
|
export function getEditorVariableNames({ documentModelDocumentTypeName, }) {
|
|
3
3
|
return {
|
|
4
4
|
documentModelDocumentTypeName,
|
|
@@ -17,7 +17,7 @@ export function getEditorVariableNames({ documentModelDocumentTypeName, }) {
|
|
|
17
17
|
export function getDocumentModelDirName(documentModelState, existingDirName) {
|
|
18
18
|
if (existingDirName)
|
|
19
19
|
return existingDirName;
|
|
20
|
-
return
|
|
20
|
+
return kebabCase(documentModelState.name);
|
|
21
21
|
}
|
|
22
22
|
export function getLatestDocumentModelSpec({ specifications, }) {
|
|
23
23
|
return specifications[specifications.length - 1];
|
|
@@ -39,7 +39,7 @@ export function getLatestDocumentModelSpecVersionNumber(documentModelState) {
|
|
|
39
39
|
return getLatestDocumentModelSpec(documentModelState).version;
|
|
40
40
|
}
|
|
41
41
|
export function getDocumentModelVariableNames(documentType) {
|
|
42
|
-
const
|
|
42
|
+
const kebabCaseDocumentType = kebabCase(documentType);
|
|
43
43
|
const pascalCaseDocumentType = pascalCase(documentType);
|
|
44
44
|
const camelCaseDocumentType = camelCase(documentType);
|
|
45
45
|
const documentTypeVariableName = `${camelCaseDocumentType}DocumentType`;
|
|
@@ -51,6 +51,7 @@ export function getDocumentModelVariableNames(documentType) {
|
|
|
51
51
|
const actionTypeName = `${pascalCaseDocumentType}Action`;
|
|
52
52
|
const actionsTypeName = `${actionTypeName}s`;
|
|
53
53
|
const actionsName = camelCase(actionsTypeName);
|
|
54
|
+
const upgradeManifestName = `${camelCaseDocumentType}UpgradeManifest`;
|
|
54
55
|
const stateSchemaName = `${stateName}Schema`;
|
|
55
56
|
const phDocumentSchemaName = `${phDocumentTypeName}Schema`;
|
|
56
57
|
const isPhStateOfTypeFunctionName = `is${stateName}`;
|
|
@@ -62,10 +63,11 @@ export function getDocumentModelVariableNames(documentType) {
|
|
|
62
63
|
const useInSelectedDriveHookName = `use${phDocumentTypeName}sInSelectedDrive`;
|
|
63
64
|
const useInSelectedFolderHookName = `use${phDocumentTypeName}sInSelectedFolder`;
|
|
64
65
|
return {
|
|
65
|
-
|
|
66
|
+
kebabCaseDocumentType,
|
|
66
67
|
pascalCaseDocumentType,
|
|
67
68
|
camelCaseDocumentType,
|
|
68
69
|
documentTypeVariableName,
|
|
70
|
+
upgradeManifestName,
|
|
69
71
|
stateName,
|
|
70
72
|
globalStateName,
|
|
71
73
|
localStateName,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-variable-names.js","sourceRoot":"","sources":["../../../src/name-builders/get-variable-names.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAQ/D,MAAM,UAAU,sBAAsB,CAAC,EACrC,6BAA6B,GACK;IAClC,OAAO;QACL,6BAA6B;QAC7B,oBAAoB,EAAE,SAAS,CAAC,6BAA6B,CAAC;QAC9D,2BAA2B,EAAE,cAAc,6BAA6B,EAAE;QAC1E,wBAAwB,EAAE,GAAG,6BAA6B,MAAM;QAChE,oBAAoB,EAAE,UAAU;QAChC,sBAAsB,EAAE,cAAc,6BAA6B,MAAM;QACzE,uBAAuB,EAAE,oBAAoB,6BAA6B,MAAM;QAChF,iBAAiB,EAAE,SAAS;QAC5B,qBAAqB,EAAE,WAAW;QAClC,wBAAwB,EAAE,cAAc;QACxC,2BAA2B,EAAE,cAAc,6BAA6B,MAAM;KAC/E,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,kBAA4C,EAC5C,eAAwB;IAExB,IAAI,eAAe;QAAE,OAAO,eAAe,CAAC;IAC5C,OAAO,SAAS,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,EACzC,cAAc,GACW;IACzB,OAAO,cAAc,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,mCAAmC,CACjD,EAAE,cAAc,EAA4B,EAC5C,OAAe;IAEf,MAAM,oBAAoB,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IACrD,MAAM,qBAAqB,GAAG,cAAc,CAAC,IAAI,CAC/C,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,CACnC,CAAC;IACF,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC3B,OAAO,CAAC,KAAK,CACX,qCAAqC,OAAO,4DAA4D,CACzG,CAAC;QACF,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IACD,IAAI,oBAAoB,CAAC,OAAO,KAAK,qBAAqB,CAAC,OAAO,EAAE,CAAC;QACnE,OAAO,CAAC,KAAK,CACX,8BAA8B,OAAO,iDAAiD,OAAO,EAAE,CAChG,CAAC;QACF,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAED,OAAO,qBAAqB,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,uCAAuC,CACrD,kBAA4C;IAE5C,OAAO,0BAA0B,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,YAAoB;IAChE,MAAM,qBAAqB,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC;IACtD,MAAM,sBAAsB,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;IACxD,MAAM,qBAAqB,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC;IACtD,MAAM,wBAAwB,GAAG,GAAG,qBAAqB,cAAc,CAAC;IACxE,MAAM,SAAS,GAAG,GAAG,sBAAsB,OAAO,CAAC;IACnD,MAAM,eAAe,GAAG,GAAG,sBAAsB,aAAa,CAAC;IAC/D,MAAM,cAAc,GAAG,GAAG,sBAAsB,YAAY,CAAC;IAC7D,MAAM,WAAW,GAAG,GAAG,sBAAsB,SAAS,CAAC;IACvD,MAAM,kBAAkB,GAAG,GAAG,sBAAsB,UAAU,CAAC;IAC/D,MAAM,cAAc,GAAG,GAAG,sBAAsB,QAAQ,CAAC;IACzD,MAAM,eAAe,GAAG,GAAG,cAAc,GAAG,CAAC;IAC7C,MAAM,WAAW,GAAG,SAAS,CAAC,eAAe,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"get-variable-names.js","sourceRoot":"","sources":["../../../src/name-builders/get-variable-names.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAQ/D,MAAM,UAAU,sBAAsB,CAAC,EACrC,6BAA6B,GACK;IAClC,OAAO;QACL,6BAA6B;QAC7B,oBAAoB,EAAE,SAAS,CAAC,6BAA6B,CAAC;QAC9D,2BAA2B,EAAE,cAAc,6BAA6B,EAAE;QAC1E,wBAAwB,EAAE,GAAG,6BAA6B,MAAM;QAChE,oBAAoB,EAAE,UAAU;QAChC,sBAAsB,EAAE,cAAc,6BAA6B,MAAM;QACzE,uBAAuB,EAAE,oBAAoB,6BAA6B,MAAM;QAChF,iBAAiB,EAAE,SAAS;QAC5B,qBAAqB,EAAE,WAAW;QAClC,wBAAwB,EAAE,cAAc;QACxC,2BAA2B,EAAE,cAAc,6BAA6B,MAAM;KAC/E,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,kBAA4C,EAC5C,eAAwB;IAExB,IAAI,eAAe;QAAE,OAAO,eAAe,CAAC;IAC5C,OAAO,SAAS,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,EACzC,cAAc,GACW;IACzB,OAAO,cAAc,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,mCAAmC,CACjD,EAAE,cAAc,EAA4B,EAC5C,OAAe;IAEf,MAAM,oBAAoB,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IACrD,MAAM,qBAAqB,GAAG,cAAc,CAAC,IAAI,CAC/C,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,CACnC,CAAC;IACF,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC3B,OAAO,CAAC,KAAK,CACX,qCAAqC,OAAO,4DAA4D,CACzG,CAAC;QACF,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IACD,IAAI,oBAAoB,CAAC,OAAO,KAAK,qBAAqB,CAAC,OAAO,EAAE,CAAC;QACnE,OAAO,CAAC,KAAK,CACX,8BAA8B,OAAO,iDAAiD,OAAO,EAAE,CAChG,CAAC;QACF,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAED,OAAO,qBAAqB,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,uCAAuC,CACrD,kBAA4C;IAE5C,OAAO,0BAA0B,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,YAAoB;IAChE,MAAM,qBAAqB,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC;IACtD,MAAM,sBAAsB,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;IACxD,MAAM,qBAAqB,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC;IACtD,MAAM,wBAAwB,GAAG,GAAG,qBAAqB,cAAc,CAAC;IACxE,MAAM,SAAS,GAAG,GAAG,sBAAsB,OAAO,CAAC;IACnD,MAAM,eAAe,GAAG,GAAG,sBAAsB,aAAa,CAAC;IAC/D,MAAM,cAAc,GAAG,GAAG,sBAAsB,YAAY,CAAC;IAC7D,MAAM,WAAW,GAAG,GAAG,sBAAsB,SAAS,CAAC;IACvD,MAAM,kBAAkB,GAAG,GAAG,sBAAsB,UAAU,CAAC;IAC/D,MAAM,cAAc,GAAG,GAAG,sBAAsB,QAAQ,CAAC;IACzD,MAAM,eAAe,GAAG,GAAG,cAAc,GAAG,CAAC;IAC7C,MAAM,WAAW,GAAG,SAAS,CAAC,eAAe,CAAC,CAAC;IAC/C,MAAM,mBAAmB,GAAG,GAAG,qBAAqB,iBAAiB,CAAC;IAEtE,MAAM,eAAe,GAAG,GAAG,SAAS,QAAQ,CAAC;IAC7C,MAAM,oBAAoB,GAAG,GAAG,kBAAkB,QAAQ,CAAC;IAC3D,MAAM,2BAA2B,GAAG,KAAK,SAAS,EAAE,CAAC;IACrD,MAAM,iCAAiC,GAAG,WAAW,SAAS,EAAE,CAAC;IACjE,MAAM,8BAA8B,GAAG,KAAK,kBAAkB,EAAE,CAAC;IACjE,MAAM,oCAAoC,GAAG,WAAW,kBAAkB,EAAE,CAAC;IAC7E,MAAM,eAAe,GAAG,MAAM,kBAAkB,MAAM,CAAC;IACvD,MAAM,mBAAmB,GAAG,cAAc,kBAAkB,EAAE,CAAC;IAC/D,MAAM,0BAA0B,GAAG,MAAM,kBAAkB,kBAAkB,CAAC;IAC9E,MAAM,2BAA2B,GAAG,MAAM,kBAAkB,mBAAmB,CAAC;IAEhF,OAAO;QACL,qBAAqB;QACrB,sBAAsB;QACtB,qBAAqB;QACrB,wBAAwB;QACxB,mBAAmB;QACnB,SAAS;QACT,eAAe;QACf,cAAc;QACd,WAAW;QACX,kBAAkB;QAClB,cAAc;QACd,eAAe;QACf,WAAW;QACX,eAAe;QACf,oBAAoB;QACpB,2BAA2B;QAC3B,iCAAiC;QACjC,8BAA8B;QAC9B,oCAAoC;QACpC,eAAe;QACf,mBAAmB;QACnB,0BAA0B;QAC1B,2BAA2B;KAC5B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,6CAA6C,CAC3D,MAA2B;IAE3B,MAAM,OAAO,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AAC7B,CAAC;AAED,SAAS,sBAAsB,CAC7B,SAAiC;IAEjC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,GAAG,QAAQ,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAC7D,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAChD,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,KAAK,IAAI,CAAC;IACjC,MAAM,YAAY,GAChB,QAAQ;QACR,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACzB,CAAC,MAAM,CAAC,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAC/D,MAAM,aAAa,GAAG,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;IAClE,MAAM,KAAK,GAAG,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;IAE9C,OAAO;QACL,IAAI;QACJ,QAAQ;QACR,YAAY;QACZ,aAAa;QACb,KAAK;QACL,KAAK;QACL,MAAM;KACP,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAkC;IAC7D,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC5C,CAAC;IACD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAClD,OAAO;QACL,GAAG,KAAK;QACR,IAAI;KACL,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,MAA2B;IACtD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC7B,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;IACvC,MAAM,gBAAgB,GAAkC,EAAE,CAAC;IAE3D,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,eAAe,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;QACnD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5C,YAAY,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YACvC,gBAAgB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,IAAI,CACV,kCAAkC,KAAK,CAAC,IAAI,+BAA+B,CAC5E,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAED,SAAS,oBAAoB,CAAC,OAA8B;IAC1D,OAAO,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,oBAAoB,CAAC,MAA2B;IACvD,OAAO,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;AACvD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AGENTS.md.d.ts","sourceRoot":"","sources":["../../../../src/templates/boilerplate/AGENTS.md.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"AGENTS.md.d.ts","sourceRoot":"","sources":["../../../../src/templates/boilerplate/AGENTS.md.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,cAAc,QA2gBtB,CAAC"}
|
|
@@ -12,6 +12,14 @@ This project creates document models, editors, processors and subgraphs for the
|
|
|
12
12
|
- **Action**: A proposed change to a document (JSON object with action name and input). Dispatch using "addActions" tool.
|
|
13
13
|
- **Operation**: A completed change to a document containing the action plus metadata (index, timestamp, hash, errors). Actions become operations after dispatch.
|
|
14
14
|
|
|
15
|
+
## Technology Primer
|
|
16
|
+
|
|
17
|
+
- **Reactor**: The core Powerhouse engine. It is modular and storage-agnostic, loads document models at runtime, and synchronizes documents across nodes via drives.
|
|
18
|
+
- **Reactor Package**: A deployable bundle that extends the Reactor. It contains one or more document models, editors, processors, and subgraphs. A Vetra project generates a Reactor Package.
|
|
19
|
+
- **Connect**: The Powerhouse web application for document management. End users open Connect to browse drives, create documents, and interact with editors.
|
|
20
|
+
- **Switchboard**: The Powerhouse API service. It exposes GraphQL and MCP endpoints so external tools can read/write documents programmatically.
|
|
21
|
+
- **Vetra**: The local development environment for building Reactor Packages. It includes Vetra Studio (a local Connect instance) and Vetra Switchboard (a local Switchboard with reactor-mcp). Start it with \`ph vetra\`.
|
|
22
|
+
|
|
15
23
|
## CRITICAL: MCP Tool Usage Rules
|
|
16
24
|
|
|
17
25
|
**MANDATORY**: The \`reactor-mcp\` MUST BE USED when handling documents or document-models for the Powerhouse/Vetra ecosystem.
|
|
@@ -36,6 +44,12 @@ If the \`reactor-mcp\` server is unavailable, ask the user to run \`ph vetra\` o
|
|
|
36
44
|
- When in doubt, ask for clarification
|
|
37
45
|
- Break complex models into logical modules and operations
|
|
38
46
|
|
|
47
|
+
#### Document Type ID Format
|
|
48
|
+
|
|
49
|
+
- **Type ID**: \`{organization}/{document-type-name}\` (e.g., \`pizza-plaza/order\`, \`acme/invoice\`)
|
|
50
|
+
- **File extension**: 2-4 characters with leading dot (e.g., \`.ordr\`, \`.inv\`)
|
|
51
|
+
- **Name**: Must match \`/[a-zA-Z][a-zA-Z0-9 ]*/\` — human-readable, capitalized (e.g., \`"Order"\`, \`"Invoice"\`)
|
|
52
|
+
|
|
39
53
|
### 2. Pre-Implementation Requirements
|
|
40
54
|
|
|
41
55
|
**MANDATORY**: Check document model schema before making any MCP tool calls.
|
|
@@ -64,14 +78,29 @@ After doing changes to the code, or after creating a new document model or a new
|
|
|
64
78
|
|
|
65
79
|
## Document editor creation flow
|
|
66
80
|
|
|
67
|
-
|
|
81
|
+
**CRITICAL**: Creating a document editor is a **two-phase** process. You must NEVER skip Phase 1 or try to manually create editor files from scratch. The codegen system generates the boilerplate — your job is only to implement the UI inside it.
|
|
82
|
+
|
|
83
|
+
### Phase 1: Create the editor document via MCP (MANDATORY FIRST STEP)
|
|
84
|
+
|
|
85
|
+
**NEVER** start by writing editor code, creating component files, or looking at how to scaffold an editor manually. The **only** way to create a new editor is through the MCP tools:
|
|
86
|
+
|
|
87
|
+
1. Check if the document editor already exists. If it does, ask the user if a new one should be created or if the existing one should be reimplemented
|
|
88
|
+
2. If it's a new editor, get the document editor schema using \`mcp__reactor-mcp__getDocumentModelSchema\` with \`type: "powerhouse/document-editor"\`
|
|
89
|
+
3. Create a new editor document on the \`vetra-{hash}\` drive of type \`powerhouse/document-editor\` using \`mcp__reactor-mcp__addActions\` with the \`ADD_FILE\` action
|
|
90
|
+
4. Configure the editor document with the required actions (set the editor name, target document model, etc.) according to the schema
|
|
91
|
+
|
|
92
|
+
⚠️ **The editor document MUST be confirmed/published — if it is left as draft state, the codegen will NOT run and no editor files will be generated.** Make sure the document state is not "DRAFT" after creation.
|
|
93
|
+
|
|
94
|
+
5. Once the editor document is confirmed on the drive, the codegen automatically runs and generates boilerplate files in the \`editors/\` folder, including hooks, type definitions, and the editor component shell
|
|
95
|
+
|
|
96
|
+
### Phase 2: Implement the editor UI
|
|
97
|
+
|
|
98
|
+
Only **after** the codegen has produced the boilerplate files, proceed with the UI implementation:
|
|
68
99
|
|
|
69
|
-
-
|
|
70
|
-
- If it's a new editor, create a new editor document on the "vetra-{hash}" drive if available, of type \`powerhouse/document-editor\`
|
|
71
|
-
- Check the document editor schema and comply with it
|
|
72
|
-
- After adding the editor document to the \`vetra-{hash}\` drive, a new editor will be generated in the \`editors\` folder
|
|
100
|
+
- Inspect the generated files in the \`editors/\` folder — do NOT create new files for the main editor component; edit the generated one
|
|
73
101
|
- Inspect the hooks in \`editors/hooks\` as they should be useful
|
|
74
102
|
- Read the schema of the document model that the editor is for to know how to interact with it
|
|
103
|
+
- Every editor **MUST** include \`<DocumentToolbar />\` imported from \`@powerhousedao/design-system/connect/index\`. Place it at the top of the editor component — do not put anything next to it.
|
|
75
104
|
- Style the editor using tailwind classes or a style tag. If using a style tag, make sure to make the selectors specific to only apply to the editor component.
|
|
76
105
|
- Create modular components for the UI elements and place them on separate files to make it easier to maintain and update
|
|
77
106
|
- Consider using the React Components exported by \`@powerhousedao/design-system\` and \`@powerhousedao/document-engineering\`
|
|
@@ -222,9 +251,9 @@ Errors referenced in the reducer code will be imported automatically.
|
|
|
222
251
|
#### Error Definition Requirements
|
|
223
252
|
|
|
224
253
|
1. **Add error definitions** to operations using \`ADD_OPERATION_ERROR\`:
|
|
225
|
-
- \`
|
|
226
|
-
- \`
|
|
227
|
-
- \`
|
|
254
|
+
- \`errorCode\`: Uppercase snake_case (e.g., \`"MISSING_ID"\`, \`"ENTRY_NOT_FOUND"\`)
|
|
255
|
+
- \`errorName\`: PascalCase ending with "Error" (e.g., \`"MissingIdError"\`, \`"EntryNotFoundError"\`)
|
|
256
|
+
- \`errorDescription\`: Human-readable description of the error condition
|
|
228
257
|
|
|
229
258
|
2. **Error names must end with "Error"** for consistency and code generation
|
|
230
259
|
|
|
@@ -264,6 +293,47 @@ throw new MissingIdError("message");
|
|
|
264
293
|
- **InvalidInputError**: Business logic violations
|
|
265
294
|
- **PermissionDeniedError**: Access control violations
|
|
266
295
|
|
|
296
|
+
#### Testing Reducer Errors
|
|
297
|
+
|
|
298
|
+
**CRITICAL**: When a reducer throws an error, the operation is **still added** to the document but with an \`.error\` property containing the error message as a string.
|
|
299
|
+
|
|
300
|
+
**DO NOT** use \`.toThrow()\` or \`expect(() => ...).toThrow()\` patterns when testing reducer errors.
|
|
301
|
+
|
|
302
|
+
##### How Errors Work in Operations
|
|
303
|
+
|
|
304
|
+
1. The reducer throws an error (e.g., \`throw new InvalidNameError("message")\`)
|
|
305
|
+
2. The operation is still recorded in \`document.operations.global\` (or \`.local\`)
|
|
306
|
+
3. The error message is stored in \`operation.error\` as a string
|
|
307
|
+
4. **The state is NOT mutated** - it remains unchanged from before the operation
|
|
308
|
+
|
|
309
|
+
##### Accessing the Correct Operation Index
|
|
310
|
+
|
|
311
|
+
**CRITICAL**: You must access the correct operation index. The index corresponds to how many operations were dispatched before it.
|
|
312
|
+
|
|
313
|
+
- If this is the **first** operation dispatched, access \`[0]\`
|
|
314
|
+
- If 3 operations were dispatched **before** the failing one, access \`[3]\`
|
|
315
|
+
|
|
316
|
+
##### Example
|
|
317
|
+
|
|
318
|
+
~~~typescript
|
|
319
|
+
it("should return error and not mutate state", () => {
|
|
320
|
+
const document = utils.createDocument();
|
|
321
|
+
const initialState = document.state.global.name;
|
|
322
|
+
|
|
323
|
+
const updatedDocument = reducer(document, setName({ name: "invalid" }));
|
|
324
|
+
|
|
325
|
+
// Access the correct operation index (0 = first operation)
|
|
326
|
+
expect(updatedDocument.operations.global[0].error).toBe(
|
|
327
|
+
"Name is not allowed",
|
|
328
|
+
);
|
|
329
|
+
// State remains unchanged
|
|
330
|
+
expect(updatedDocument.state.global.name).toBe(initialState);
|
|
331
|
+
});
|
|
332
|
+
|
|
333
|
+
// ❌ WRONG - Never use toThrow()
|
|
334
|
+
expect(() => reducer(document, setName({ name: "invalid" }))).toThrow();
|
|
335
|
+
~~~
|
|
336
|
+
|
|
267
337
|
## Document Model Structure
|
|
268
338
|
|
|
269
339
|
### Core Components
|
|
@@ -306,6 +376,15 @@ throw new MissingIdError("message");
|
|
|
306
376
|
- Use required fields \`!\` only when absolutely necessary
|
|
307
377
|
- Defaults handled by operations, not schema
|
|
308
378
|
|
|
379
|
+
#### Mandatory vs Optional Field Rules
|
|
380
|
+
|
|
381
|
+
A user must always be able to create an **empty document** without providing any information. This drives the following rules:
|
|
382
|
+
|
|
383
|
+
- **Root type properties** can only be mandatory (\`!\`) if they have a logical default value (e.g., empty array, enum initial status)
|
|
384
|
+
- **Collections** should always use \`[Type!]!\` — inner \`!\` means no nulls in the array, outer \`!\` means the array itself defaults to empty
|
|
385
|
+
- **Child object fields** can be mandatory only if all their required properties also have logical defaults
|
|
386
|
+
- Use \`enum\` types for workflow statuses (e.g., \`status: OrderStatus!\` where the enum has an initial value like \`DRAFT\`)
|
|
387
|
+
|
|
309
388
|
### ⚠️ CRITICAL: State Type Naming Convention
|
|
310
389
|
|
|
311
390
|
**MANDATORY**: The global state type name MUST follow this exact pattern:
|
|
@@ -361,12 +440,51 @@ type TodoListLocalState {
|
|
|
361
440
|
- **Objects in arrays**: Must include \`OID!\` field for unique identification
|
|
362
441
|
- Include \`OLabel\` for metadata when relevant
|
|
363
442
|
|
|
443
|
+
#### OID vs PHID Usage
|
|
444
|
+
|
|
445
|
+
- \`OID\` is used as **primary key** (\`id: OID!\`) and **foreign key** (\`otherObjectId: OID!\`) within a document
|
|
446
|
+
- \`PHID\` is **only** for referencing **external documents** (other documents in the drive), typically alongside cached properties (like a link preview — title/snippet may become stale)
|
|
447
|
+
- **NEVER** use the \`ID\` type — it is a common GraphQL convention but is not used in Powerhouse document models
|
|
448
|
+
|
|
449
|
+
#### Collection Sorting & Trees
|
|
450
|
+
|
|
451
|
+
- **No need for \`position\` or \`weight\` properties** — maintain order via array index; operations like \`MOVE_X\` reorder the array directly
|
|
452
|
+
- **Trees**: Always define as a flat list with \`parentId: OID\` (root nodes have \`parentId = null\`); do NOT use recursive/nested types
|
|
453
|
+
|
|
364
454
|
### Input Types
|
|
365
455
|
|
|
366
456
|
- Reflect user intent with descriptive names
|
|
367
457
|
- Simple, specific fields over complex nested types
|
|
368
458
|
- System auto-generates \`OID\` for new objects (users don't provide manually)
|
|
369
459
|
|
|
460
|
+
#### Input Type Naming Convention
|
|
461
|
+
|
|
462
|
+
- Root input type **MUST** be named \`<OperationName>Input\` (PascalCase of the operation name)
|
|
463
|
+
- Example: operation \`SET_CATEGORY_LABEL\` → input type \`SetCategoryLabelInput\`
|
|
464
|
+
- **Failing to follow this convention breaks the code generator**
|
|
465
|
+
|
|
466
|
+
#### Input Types Cannot Reference State Types
|
|
467
|
+
|
|
468
|
+
- In operation input schemas, **ONLY** \`enum\` types and scalar types from the state schema can be referenced directly
|
|
469
|
+
- All other state types must be **mirrored** with unique input types (e.g., state type \`MenuItem\` → input type \`NewMenuItemInput\` for the ADD operation)
|
|
470
|
+
- State \`enum\` types **MUST NOT** be redefined in input schemas — reference them directly
|
|
471
|
+
- Each operation should have its **own** input types; do not share mirror types across operations
|
|
472
|
+
|
|
473
|
+
#### Empty Input Workaround
|
|
474
|
+
|
|
475
|
+
- Input types with **zero fields** are not supported by the code generator
|
|
476
|
+
- Workaround: add \`_: Boolean\` as a dummy optional parameter
|
|
477
|
+
|
|
478
|
+
~~~graphql
|
|
479
|
+
# ❌ BAD - empty input type breaks codegen
|
|
480
|
+
input ClearAllInput {}
|
|
481
|
+
|
|
482
|
+
# ✅ GOOD - dummy field workaround
|
|
483
|
+
input ClearAllInput {
|
|
484
|
+
_: Boolean
|
|
485
|
+
}
|
|
486
|
+
~~~
|
|
487
|
+
|
|
370
488
|
## Working with Drives
|
|
371
489
|
|
|
372
490
|
**MANDATORY**: Check the document-drive schema before performing drive operations.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AGENTS.md.js","sourceRoot":"","sources":["../../../../src/templates/boilerplate/AGENTS.md.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAEhC,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAAA
|
|
1
|
+
{"version":3,"file":"AGENTS.md.js","sourceRoot":"","sources":["../../../../src/templates/boilerplate/AGENTS.md.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAEhC,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2gB/B,CAAC,GAAG,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export
|
|
1
|
+
export { agentsTemplate as claudeTemplate } from "./AGENTS.md.js";
|
|
2
2
|
//# sourceMappingURL=CLAUDE.md.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CLAUDE.md.d.ts","sourceRoot":"","sources":["../../../../src/templates/boilerplate/CLAUDE.md.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CLAUDE.md.d.ts","sourceRoot":"","sources":["../../../../src/templates/boilerplate/CLAUDE.md.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,IAAI,cAAc,EAAE,MAAM,gBAAgB,CAAC"}
|