polen 0.11.0-next.15 → 0.11.0-next.17
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/build/api/{api.d.ts → $$.d.ts} +6 -3
- package/build/api/$$.d.ts.map +1 -0
- package/build/api/$$.js +13 -0
- package/build/api/$$.js.map +1 -0
- package/build/api/$.d.ts +2 -0
- package/build/api/$.d.ts.map +1 -0
- package/build/api/$.js +2 -0
- package/build/api/$.js.map +1 -0
- package/build/api/config/$$.d.ts +1 -0
- package/build/api/config/$$.d.ts.map +1 -1
- package/build/api/config/$$.js +1 -0
- package/build/api/config/$$.js.map +1 -1
- package/build/api/config/home.d.ts +639 -0
- package/build/api/config/home.d.ts.map +1 -0
- package/build/api/config/home.js +487 -0
- package/build/api/config/home.js.map +1 -0
- package/build/api/config/input.d.ts +1307 -9
- package/build/api/config/input.d.ts.map +1 -1
- package/build/api/config/input.js +102 -24
- package/build/api/config/input.js.map +1 -1
- package/build/api/config/normalized.d.ts +2261 -129
- package/build/api/config/normalized.d.ts.map +1 -1
- package/build/api/config/normalized.js +424 -27
- package/build/api/config/normalized.js.map +1 -1
- package/build/api/config-template/template.d.ts +2991 -0
- package/build/api/config-template/template.d.ts.map +1 -0
- package/build/api/config-template/template.js +53 -0
- package/build/api/config-template/template.js.map +1 -0
- package/build/api/content/$$.d.ts +1 -0
- package/build/api/content/$$.d.ts.map +1 -1
- package/build/api/content/$$.js +1 -0
- package/build/api/content/$$.js.map +1 -1
- package/build/api/content/mdx-compiler.d.ts +54 -0
- package/build/api/content/mdx-compiler.d.ts.map +1 -0
- package/build/api/content/mdx-compiler.js +68 -0
- package/build/api/content/mdx-compiler.js.map +1 -0
- package/build/api/content/navbar.js +1 -1
- package/build/api/content/navbar.js.map +1 -1
- package/build/api/examples/$$.d.ts +8 -0
- package/build/api/examples/$$.d.ts.map +1 -0
- package/build/api/examples/$$.js +8 -0
- package/build/api/examples/$$.js.map +1 -0
- package/build/api/examples/$.d.ts +2 -0
- package/build/api/examples/$.d.ts.map +1 -0
- package/build/api/examples/$.js +2 -0
- package/build/api/examples/$.js.map +1 -0
- package/build/api/examples/config.d.ts +709 -0
- package/build/api/examples/config.d.ts.map +1 -0
- package/build/api/examples/config.js +169 -0
- package/build/api/examples/config.js.map +1 -0
- package/build/api/examples/diagnostic/diagnostic.d.ts +152 -0
- package/build/api/examples/diagnostic/diagnostic.d.ts.map +1 -0
- package/build/api/examples/diagnostic/diagnostic.js +20 -0
- package/build/api/examples/diagnostic/diagnostic.js.map +1 -0
- package/build/api/examples/diagnostic/duplicate-content.d.ts +55 -0
- package/build/api/examples/diagnostic/duplicate-content.d.ts.map +1 -0
- package/build/api/examples/diagnostic/duplicate-content.js +22 -0
- package/build/api/examples/diagnostic/duplicate-content.js.map +1 -0
- package/build/api/examples/diagnostic/invalid-filename.d.ts +43 -0
- package/build/api/examples/diagnostic/invalid-filename.d.ts.map +1 -0
- package/build/api/examples/diagnostic/invalid-filename.js +16 -0
- package/build/api/examples/diagnostic/invalid-filename.js.map +1 -0
- package/build/api/examples/diagnostic/missing-versions.d.ts +52 -0
- package/build/api/examples/diagnostic/missing-versions.d.ts.map +1 -0
- package/build/api/examples/diagnostic/missing-versions.js +21 -0
- package/build/api/examples/diagnostic/missing-versions.js.map +1 -0
- package/build/api/examples/diagnostic/unknown-version.d.ts +52 -0
- package/build/api/examples/diagnostic/unknown-version.d.ts.map +1 -0
- package/build/api/examples/diagnostic/unknown-version.js +21 -0
- package/build/api/examples/diagnostic/unknown-version.js.map +1 -0
- package/build/api/examples/diagnostic/unused-default.d.ts +49 -0
- package/build/api/examples/diagnostic/unused-default.d.ts.map +1 -0
- package/build/api/examples/diagnostic/unused-default.js +19 -0
- package/build/api/examples/diagnostic/unused-default.js.map +1 -0
- package/build/api/examples/diagnostic/validation-error.d.ts +63 -0
- package/build/api/examples/diagnostic/validation-error.d.ts.map +1 -0
- package/build/api/examples/diagnostic/validation-error.js +21 -0
- package/build/api/examples/diagnostic/validation-error.js.map +1 -0
- package/build/api/examples/diagnostic/validator.d.ts +13 -0
- package/build/api/examples/diagnostic/validator.d.ts.map +1 -0
- package/build/api/examples/diagnostic/validator.js +115 -0
- package/build/api/examples/diagnostic/validator.js.map +1 -0
- package/build/api/examples/filter.d.ts +19 -0
- package/build/api/examples/filter.d.ts.map +1 -0
- package/build/api/examples/filter.js +64 -0
- package/build/api/examples/filter.js.map +1 -0
- package/build/api/examples/scanner.d.ts +18 -0
- package/build/api/examples/scanner.d.ts.map +1 -0
- package/build/api/examples/scanner.js +268 -0
- package/build/api/examples/scanner.js.map +1 -0
- package/build/api/examples/schemas/catalog.d.ts +248 -0
- package/build/api/examples/schemas/catalog.d.ts.map +1 -0
- package/build/api/examples/schemas/catalog.js +42 -0
- package/build/api/examples/schemas/catalog.js.map +1 -0
- package/build/api/examples/schemas/example/$$.d.ts +2 -0
- package/build/api/examples/schemas/example/$$.d.ts.map +1 -0
- package/build/api/examples/schemas/example/$$.js +2 -0
- package/build/api/examples/schemas/example/$$.js.map +1 -0
- package/build/api/examples/schemas/example/$.d.ts +2 -0
- package/build/api/examples/schemas/example/$.d.ts.map +1 -0
- package/build/api/examples/schemas/example/$.js +2 -0
- package/build/api/examples/schemas/example/$.js.map +1 -0
- package/build/api/examples/schemas/example/example.d.ts +134 -0
- package/build/api/examples/schemas/example/example.d.ts.map +1 -0
- package/build/api/examples/schemas/example/example.js +51 -0
- package/build/api/examples/schemas/example/example.js.map +1 -0
- package/build/api/examples/schemas/type-usage-index.d.ts +72 -0
- package/build/api/examples/schemas/type-usage-index.d.ts.map +1 -0
- package/build/api/examples/schemas/type-usage-index.js +64 -0
- package/build/api/examples/schemas/type-usage-index.js.map +1 -0
- package/build/api/examples/type-generator.d.ts +8 -0
- package/build/api/examples/type-generator.d.ts.map +1 -0
- package/build/api/examples/type-generator.js +36 -0
- package/build/api/examples/type-generator.js.map +1 -0
- package/build/api/examples/type-usage-indexer.d.ts +18 -0
- package/build/api/examples/type-usage-indexer.d.ts.map +1 -0
- package/build/api/examples/type-usage-indexer.js +219 -0
- package/build/api/examples/type-usage-indexer.js.map +1 -0
- package/build/api/iso/schema/routing.js +2 -2
- package/build/api/iso/schema/routing.js.map +1 -1
- package/build/api/project/$$.d.ts +2 -0
- package/build/api/project/$$.d.ts.map +1 -0
- package/build/api/project/$$.js +2 -0
- package/build/api/project/$$.js.map +1 -0
- package/build/api/project/$.d.ts +2 -0
- package/build/api/project/$.d.ts.map +1 -0
- package/build/api/project/$.js +2 -0
- package/build/api/project/$.js.map +1 -0
- package/build/api/schema/config-schema.d.ts +3 -3
- package/build/api/schema/input-sources/directory.d.ts +31 -31
- package/build/api/schema/input-sources/file.d.ts +31 -31
- package/build/api/schema/input-sources/introspection-file.d.ts +31 -31
- package/build/api/schema/input-sources/introspection.d.ts +31 -31
- package/build/api/schema/input-sources/memory.d.ts +31 -31
- package/build/api/schema/input-sources/versioned-directory.d.ts +68 -79
- package/build/api/schema/input-sources/versioned-directory.d.ts.map +1 -1
- package/build/api/schema/input-sources/versioned-directory.js +8 -6
- package/build/api/schema/input-sources/versioned-directory.js.map +1 -1
- package/build/api/schema/load.js +1 -1
- package/build/api/schema/load.js.map +1 -1
- package/build/api/typings/$$.d.ts +2 -0
- package/build/api/typings/$$.d.ts.map +1 -0
- package/build/api/typings/$$.js +2 -0
- package/build/api/typings/$$.js.map +1 -0
- package/build/api/typings/$.d.ts +2 -0
- package/build/api/typings/$.d.ts.map +1 -0
- package/build/api/typings/$.js +2 -0
- package/build/api/typings/$.js.map +1 -0
- package/build/api/typings/typings.d.ts +88 -0
- package/build/api/typings/typings.d.ts.map +1 -0
- package/build/api/typings/typings.js +180 -0
- package/build/api/typings/typings.js.map +1 -0
- package/build/cli/_/parameters.d.ts +4 -4
- package/build/cli/_/parameters.d.ts.map +1 -1
- package/build/cli/_/parameters.js +4 -10
- package/build/cli/_/parameters.js.map +1 -1
- package/build/cli/commands/build.d.ts +9 -10
- package/build/cli/commands/build.d.ts.map +1 -1
- package/build/cli/commands/build.js +36 -50
- package/build/cli/commands/build.js.map +1 -1
- package/build/cli/commands/cache/delete.d.ts +6 -1
- package/build/cli/commands/cache/delete.d.ts.map +1 -1
- package/build/cli/commands/cache/delete.js +12 -20
- package/build/cli/commands/cache/delete.js.map +1 -1
- package/build/cli/commands/cache/show.d.ts +5 -1
- package/build/cli/commands/cache/show.d.ts.map +1 -1
- package/build/cli/commands/cache/show.js +51 -59
- package/build/cli/commands/cache/show.js.map +1 -1
- package/build/cli/commands/cache.d.ts +10 -2
- package/build/cli/commands/cache.d.ts.map +1 -1
- package/build/cli/commands/cache.js +17 -6
- package/build/cli/commands/cache.js.map +1 -1
- package/build/cli/commands/config/create.d.ts +6 -1
- package/build/cli/commands/config/create.d.ts.map +1 -1
- package/build/cli/commands/config/create.js +27 -24
- package/build/cli/commands/config/create.js.map +1 -1
- package/build/cli/commands/config.d.ts +7 -2
- package/build/cli/commands/config.d.ts.map +1 -1
- package/build/cli/commands/config.js +15 -6
- package/build/cli/commands/config.js.map +1 -1
- package/build/cli/commands/create.d.ts +9 -1
- package/build/cli/commands/create.d.ts.map +1 -1
- package/build/cli/commands/create.js +63 -61
- package/build/cli/commands/create.js.map +1 -1
- package/build/cli/commands/dev.d.ts +9 -1
- package/build/cli/commands/dev.d.ts.map +1 -1
- package/build/cli/commands/dev.js +41 -51
- package/build/cli/commands/dev.js.map +1 -1
- package/build/cli/commands/hero-image.d.ts +8 -0
- package/build/cli/commands/hero-image.d.ts.map +1 -0
- package/build/cli/commands/hero-image.js +235 -0
- package/build/cli/commands/hero-image.js.map +1 -0
- package/build/cli/commands/open.d.ts +10 -1
- package/build/cli/commands/open.d.ts.map +1 -1
- package/build/cli/commands/open.js +93 -107
- package/build/cli/commands/open.js.map +1 -1
- package/build/cli/commands/static/rebase.d.ts +8 -1
- package/build/cli/commands/static/rebase.d.ts.map +1 -1
- package/build/cli/commands/static/rebase.js +43 -29
- package/build/cli/commands/static/rebase.js.map +1 -1
- package/build/cli/commands/static.d.ts +9 -2
- package/build/cli/commands/static.d.ts.map +1 -1
- package/build/cli/commands/static.js +28 -6
- package/build/cli/commands/static.js.map +1 -1
- package/build/cli/index.d.ts +54 -1
- package/build/cli/index.d.ts.map +1 -1
- package/build/cli/index.js +77 -8
- package/build/cli/index.js.map +1 -1
- package/build/lib/ai-image-generation/$$.d.ts +3 -0
- package/build/lib/ai-image-generation/$$.d.ts.map +1 -0
- package/build/lib/ai-image-generation/$$.js +3 -0
- package/build/lib/ai-image-generation/$$.js.map +1 -0
- package/build/lib/ai-image-generation/$.d.ts +2 -0
- package/build/lib/ai-image-generation/$.d.ts.map +1 -0
- package/build/lib/ai-image-generation/$.js +2 -0
- package/build/lib/ai-image-generation/$.js.map +1 -0
- package/build/lib/ai-image-generation/ai-image-generation.d.ts +132 -0
- package/build/lib/ai-image-generation/ai-image-generation.d.ts.map +1 -0
- package/build/lib/ai-image-generation/ai-image-generation.js +170 -0
- package/build/lib/ai-image-generation/ai-image-generation.js.map +1 -0
- package/build/lib/ai-image-generation/providers/pollinations.d.ts +22 -0
- package/build/lib/ai-image-generation/providers/pollinations.d.ts.map +1 -0
- package/build/lib/ai-image-generation/providers/pollinations.js +45 -0
- package/build/lib/ai-image-generation/providers/pollinations.js.map +1 -0
- package/build/lib/ai-image-generation/service.d.ts +42 -0
- package/build/lib/ai-image-generation/service.d.ts.map +1 -0
- package/build/lib/ai-image-generation/service.js +147 -0
- package/build/lib/ai-image-generation/service.js.map +1 -0
- package/build/lib/catalog/catalog.d.ts +7823 -717
- package/build/lib/catalog/catalog.d.ts.map +1 -1
- package/build/lib/catalog/catalog.js +25 -2
- package/build/lib/catalog/catalog.js.map +1 -1
- package/build/lib/catalog/unversioned.d.ts +245 -245
- package/build/lib/catalog/unversioned.d.ts.map +1 -1
- package/build/lib/catalog/versioned.d.ts +540 -609
- package/build/lib/catalog/versioned.d.ts.map +1 -1
- package/build/lib/catalog/versioned.js +38 -1
- package/build/lib/catalog/versioned.js.map +1 -1
- package/build/lib/catalog-statistics/$$.d.ts +5 -0
- package/build/lib/catalog-statistics/$$.d.ts.map +1 -0
- package/build/lib/catalog-statistics/$$.js +5 -0
- package/build/lib/catalog-statistics/$$.js.map +1 -0
- package/build/lib/catalog-statistics/$.d.ts +2 -0
- package/build/lib/catalog-statistics/$.d.ts.map +1 -0
- package/build/lib/catalog-statistics/$.js +2 -0
- package/build/lib/catalog-statistics/$.js.map +1 -0
- package/build/lib/catalog-statistics/analyze-catalog.d.ts +8 -0
- package/build/lib/catalog-statistics/analyze-catalog.d.ts.map +1 -0
- package/build/lib/catalog-statistics/analyze-catalog.js +132 -0
- package/build/lib/catalog-statistics/analyze-catalog.js.map +1 -0
- package/build/lib/catalog-statistics/analyze-options.d.ts +16 -0
- package/build/lib/catalog-statistics/analyze-options.d.ts.map +1 -0
- package/build/lib/catalog-statistics/analyze-options.js +2 -0
- package/build/lib/catalog-statistics/analyze-options.js.map +1 -0
- package/build/lib/catalog-statistics/analyze-schema.d.ts +8 -0
- package/build/lib/catalog-statistics/analyze-schema.d.ts.map +1 -0
- package/build/lib/catalog-statistics/analyze-schema.js +185 -0
- package/build/lib/catalog-statistics/analyze-schema.js.map +1 -0
- package/build/lib/catalog-statistics/data.d.ts +195 -0
- package/build/lib/catalog-statistics/data.d.ts.map +1 -0
- package/build/lib/catalog-statistics/data.js +176 -0
- package/build/lib/catalog-statistics/data.js.map +1 -0
- package/build/lib/catalog-statistics/report.d.ts +841 -0
- package/build/lib/catalog-statistics/report.d.ts.map +1 -0
- package/build/lib/catalog-statistics/report.js +37 -0
- package/build/lib/catalog-statistics/report.js.map +1 -0
- package/build/lib/change/change.d.ts +185 -185
- package/build/lib/change/change.d.ts.map +1 -1
- package/build/lib/change/criticality.d.ts +2 -2
- package/build/lib/change/criticality.d.ts.map +1 -1
- package/build/lib/date-only/date-only.d.ts +1 -1
- package/build/lib/date-only/date-only.d.ts.map +1 -1
- package/build/lib/diagnostic/$$.d.ts +6 -0
- package/build/lib/diagnostic/$$.d.ts.map +1 -0
- package/build/lib/diagnostic/$$.js +6 -0
- package/build/lib/diagnostic/$$.js.map +1 -0
- package/build/lib/diagnostic/$.d.ts +2 -0
- package/build/lib/diagnostic/$.d.ts.map +1 -0
- package/build/lib/diagnostic/$.js +2 -0
- package/build/lib/diagnostic/$.js.map +1 -0
- package/build/lib/diagnostic/control.d.ts +79 -0
- package/build/lib/diagnostic/control.d.ts.map +1 -0
- package/build/lib/diagnostic/control.js +107 -0
- package/build/lib/diagnostic/control.js.map +1 -0
- package/build/lib/diagnostic/diagnostic.d.ts +130 -0
- package/build/lib/diagnostic/diagnostic.d.ts.map +1 -0
- package/build/lib/diagnostic/diagnostic.js +106 -0
- package/build/lib/diagnostic/diagnostic.js.map +1 -0
- package/build/lib/diagnostic/filter.d.ts +11 -0
- package/build/lib/diagnostic/filter.d.ts.map +1 -0
- package/build/lib/diagnostic/filter.js +16 -0
- package/build/lib/diagnostic/filter.js.map +1 -0
- package/build/lib/diagnostic/reporter.d.ts +22 -0
- package/build/lib/diagnostic/reporter.d.ts.map +1 -0
- package/build/lib/diagnostic/reporter.js +66 -0
- package/build/lib/diagnostic/reporter.js.map +1 -0
- package/build/lib/diagnostic/severity.d.ts +32 -0
- package/build/lib/diagnostic/severity.d.ts.map +1 -0
- package/build/lib/diagnostic/severity.js +73 -0
- package/build/lib/diagnostic/severity.js.map +1 -0
- package/build/lib/directed-filter/$$.d.ts +2 -0
- package/build/lib/directed-filter/$$.d.ts.map +1 -0
- package/build/lib/directed-filter/$$.js +2 -0
- package/build/lib/directed-filter/$$.js.map +1 -0
- package/build/lib/directed-filter/$.d.ts +2 -0
- package/build/lib/directed-filter/$.d.ts.map +1 -0
- package/build/lib/directed-filter/$.js +2 -0
- package/build/lib/directed-filter/$.js.map +1 -0
- package/build/lib/directed-filter/directed-filter.d.ts +127 -0
- package/build/lib/directed-filter/directed-filter.d.ts.map +1 -0
- package/build/lib/directed-filter/directed-filter.js +153 -0
- package/build/lib/directed-filter/directed-filter.js.map +1 -0
- package/build/lib/document/$$.d.ts +4 -0
- package/build/lib/document/$$.d.ts.map +1 -0
- package/build/lib/document/$$.js +4 -0
- package/build/lib/document/$$.js.map +1 -0
- package/build/lib/document/$.d.ts +2 -0
- package/build/lib/document/$.d.ts.map +1 -0
- package/build/lib/document/$.js +2 -0
- package/build/lib/document/$.js.map +1 -0
- package/build/lib/document/document.d.ts +59 -0
- package/build/lib/document/document.d.ts.map +1 -0
- package/build/lib/document/document.js +23 -0
- package/build/lib/document/document.js.map +1 -0
- package/build/lib/document/unversioned.d.ts +38 -0
- package/build/lib/document/unversioned.d.ts.map +1 -0
- package/build/lib/document/unversioned.js +22 -0
- package/build/lib/document/unversioned.js.map +1 -0
- package/build/lib/document/versioned.d.ts +58 -0
- package/build/lib/document/versioned.d.ts.map +1 -0
- package/build/lib/document/versioned.js +82 -0
- package/build/lib/document/versioned.js.map +1 -0
- package/build/lib/effect-cli-help-markdown/$$.d.ts +2 -0
- package/build/lib/effect-cli-help-markdown/$$.d.ts.map +1 -0
- package/build/lib/effect-cli-help-markdown/$$.js +2 -0
- package/build/lib/effect-cli-help-markdown/$$.js.map +1 -0
- package/build/lib/effect-cli-help-markdown/$.d.ts +2 -0
- package/build/lib/effect-cli-help-markdown/$.d.ts.map +1 -0
- package/build/lib/effect-cli-help-markdown/$.js +2 -0
- package/build/lib/effect-cli-help-markdown/$.js.map +1 -0
- package/build/lib/effect-cli-help-markdown/effect-cli-help-markdown.d.ts +32 -0
- package/build/lib/effect-cli-help-markdown/effect-cli-help-markdown.d.ts.map +1 -0
- package/build/lib/effect-cli-help-markdown/effect-cli-help-markdown.js +477 -0
- package/build/lib/effect-cli-help-markdown/effect-cli-help-markdown.js.map +1 -0
- package/build/lib/effect-glob/$$.d.ts +2 -0
- package/build/lib/effect-glob/$$.d.ts.map +1 -0
- package/build/lib/effect-glob/$$.js +2 -0
- package/build/lib/effect-glob/$$.js.map +1 -0
- package/build/lib/effect-glob/$.d.ts +2 -0
- package/build/lib/effect-glob/$.d.ts.map +1 -0
- package/build/lib/effect-glob/$.js +2 -0
- package/build/lib/effect-glob/$.js.map +1 -0
- package/build/lib/effect-glob/effect-glob.d.ts +13 -0
- package/build/lib/effect-glob/effect-glob.d.ts.map +1 -0
- package/build/lib/effect-glob/effect-glob.js +18 -0
- package/build/lib/effect-glob/effect-glob.js.map +1 -0
- package/build/lib/file-path/$$.d.ts +3 -0
- package/build/lib/file-path/$$.d.ts.map +1 -1
- package/build/lib/file-path/$$.js +3 -3
- package/build/lib/file-path/$$.js.map +1 -1
- package/build/lib/file-path/$.d.ts +1 -1
- package/build/lib/file-path/$.d.ts.map +1 -1
- package/build/lib/file-path/$.js +1 -1
- package/build/lib/file-path/$.js.map +1 -1
- package/build/lib/file-path/absolute.d.ts +38 -0
- package/build/lib/file-path/absolute.d.ts.map +1 -0
- package/build/lib/file-path/absolute.js +47 -0
- package/build/lib/file-path/absolute.js.map +1 -0
- package/build/lib/file-path/file-path.d.ts +41 -43
- package/build/lib/file-path/file-path.d.ts.map +1 -1
- package/build/lib/file-path/file-path.js +15 -87
- package/build/lib/file-path/file-path.js.map +1 -1
- package/build/lib/file-path/relative.d.ts +38 -0
- package/build/lib/file-path/relative.d.ts.map +1 -0
- package/build/lib/file-path/relative.js +51 -0
- package/build/lib/file-path/relative.js.map +1 -0
- package/build/lib/file-path/segment/$.d.ts +2 -0
- package/build/lib/file-path/segment/$.d.ts.map +1 -0
- package/build/lib/file-path/segment/$.js +2 -0
- package/build/lib/file-path/segment/$.js.map +1 -0
- package/build/lib/file-path/segment/segment.d.ts +45 -0
- package/build/lib/file-path/segment/segment.d.ts.map +1 -0
- package/build/lib/file-path/segment/segment.js +96 -0
- package/build/lib/file-path/segment/segment.js.map +1 -0
- package/build/lib/file-router/linter.d.ts +214 -34
- package/build/lib/file-router/linter.d.ts.map +1 -1
- package/build/lib/file-router/linter.js +66 -12
- package/build/lib/file-router/linter.js.map +1 -1
- package/build/lib/graph/graph.d.ts +1 -1
- package/build/lib/graph/graph.d.ts.map +1 -1
- package/build/lib/graphql-error/$$.d.ts +2 -0
- package/build/lib/graphql-error/$$.d.ts.map +1 -0
- package/build/lib/graphql-error/$$.js +2 -0
- package/build/lib/graphql-error/$$.js.map +1 -0
- package/build/lib/graphql-error/$.d.ts +2 -0
- package/build/lib/graphql-error/$.d.ts.map +1 -0
- package/build/lib/graphql-error/$.js +2 -0
- package/build/lib/graphql-error/$.js.map +1 -0
- package/build/lib/graphql-error/graphql-error.d.ts +150 -0
- package/build/lib/graphql-error/graphql-error.d.ts.map +1 -0
- package/build/lib/graphql-error/graphql-error.js +57 -0
- package/build/lib/graphql-error/graphql-error.js.map +1 -0
- package/build/lib/kit-temp/effect.d.ts +14 -0
- package/build/lib/kit-temp/effect.d.ts.map +1 -1
- package/build/lib/kit-temp/effect.js +29 -0
- package/build/lib/kit-temp/effect.js.map +1 -1
- package/build/lib/kit-temp/ob.d.ts +4 -0
- package/build/lib/kit-temp/ob.d.ts.map +1 -1
- package/build/lib/kit-temp/ob.js +3 -1
- package/build/lib/kit-temp/ob.js.map +1 -1
- package/build/lib/kit-temp/resource.d.ts +1 -2
- package/build/lib/kit-temp/resource.d.ts.map +1 -1
- package/build/lib/kit-temp/resource.js +1 -2
- package/build/lib/kit-temp/resource.js.map +1 -1
- package/build/lib/lifecycles/lifecycles.js +1 -1
- package/build/lib/lifecycles/lifecycles.js.map +1 -1
- package/build/lib/react-router-effect/route-helpers.d.ts +9 -3
- package/build/lib/react-router-effect/route-helpers.d.ts.map +1 -1
- package/build/lib/react-router-effect/route-helpers.js +54 -6
- package/build/lib/react-router-effect/route-helpers.js.map +1 -1
- package/build/lib/react-router-effect/route.d.ts.map +1 -1
- package/build/lib/react-router-effect/route.js +13 -1
- package/build/lib/react-router-effect/route.js.map +1 -1
- package/build/lib/react-router-effect/types.d.ts +10 -2
- package/build/lib/react-router-effect/types.d.ts.map +1 -1
- package/build/lib/react-router-effect/use-loader-data.d.ts +3 -3
- package/build/lib/react-router-effect/use-loader-data.d.ts.map +1 -1
- package/build/lib/react-router-effect/use-loader-data.js +2 -2
- package/build/lib/react-router-effect/use-loader-data.js.map +1 -1
- package/build/lib/revision/revision.d.ts +925 -925
- package/build/lib/revision/revision.d.ts.map +1 -1
- package/build/lib/schema/schema.d.ts +553 -629
- package/build/lib/schema/schema.d.ts.map +1 -1
- package/build/lib/schema/unversioned.d.ts +865 -865
- package/build/lib/schema/unversioned.d.ts.map +1 -1
- package/build/lib/schema/versioned.d.ts +495 -583
- package/build/lib/schema/versioned.d.ts.map +1 -1
- package/build/lib/schema-definition/schema-definition.d.ts +1 -1
- package/build/lib/schema-definition/schema-definition.d.ts.map +1 -1
- package/build/lib/semver/official-release.d.ts +1 -1
- package/build/lib/semver/official-release.d.ts.map +1 -1
- package/build/lib/semver/pre-release.d.ts +1 -1
- package/build/lib/semver/pre-release.d.ts.map +1 -1
- package/build/lib/semver/semver.d.ts +1 -1
- package/build/lib/semver/semver.d.ts.map +1 -1
- package/build/lib/swiss/$$.d.ts +5 -0
- package/build/lib/swiss/$$.d.ts.map +1 -0
- package/build/lib/swiss/$$.js +6 -0
- package/build/lib/swiss/$$.js.map +1 -0
- package/build/lib/swiss/$.d.ts +2 -0
- package/build/lib/swiss/$.d.ts.map +1 -0
- package/build/lib/swiss/$.js +3 -0
- package/build/lib/swiss/$.js.map +1 -0
- package/build/lib/swiss/grid.d.ts +17 -0
- package/build/lib/swiss/grid.d.ts.map +1 -0
- package/build/lib/swiss/grid.js +30 -0
- package/build/lib/swiss/grid.js.map +1 -0
- package/build/lib/swiss/items.d.ts +53 -0
- package/build/lib/swiss/items.d.ts.map +1 -0
- package/build/lib/swiss/items.js +188 -0
- package/build/lib/swiss/items.js.map +1 -0
- package/build/lib/swiss/styles.css +298 -0
- package/build/lib/swiss/subgrid.d.ts +25 -0
- package/build/lib/swiss/subgrid.d.ts.map +1 -0
- package/build/lib/swiss/subgrid.js +48 -0
- package/build/lib/swiss/subgrid.js.map +1 -0
- package/build/lib/swiss/types.d.ts +340 -0
- package/build/lib/swiss/types.d.ts.map +1 -0
- package/build/lib/swiss/types.js +2 -0
- package/build/lib/swiss/types.js.map +1 -0
- package/build/lib/swiss/utils.d.ts +37 -0
- package/build/lib/swiss/utils.d.ts.map +1 -0
- package/build/lib/swiss/utils.js +163 -0
- package/build/lib/swiss/utils.js.map +1 -0
- package/build/lib/version/custom.d.ts +11 -30
- package/build/lib/version/custom.d.ts.map +1 -1
- package/build/lib/version/custom.js +3 -7
- package/build/lib/version/custom.js.map +1 -1
- package/build/lib/version/date.d.ts +11 -30
- package/build/lib/version/date.d.ts.map +1 -1
- package/build/lib/version/date.js +3 -7
- package/build/lib/version/date.js.map +1 -1
- package/build/lib/version/integer.d.ts +11 -30
- package/build/lib/version/integer.d.ts.map +1 -1
- package/build/lib/version/integer.js +3 -7
- package/build/lib/version/integer.js.map +1 -1
- package/build/lib/version/semver.d.ts +11 -30
- package/build/lib/version/semver.d.ts.map +1 -1
- package/build/lib/version/semver.js +3 -7
- package/build/lib/version/semver.js.map +1 -1
- package/build/lib/version/version.d.ts +17 -333
- package/build/lib/version/version.d.ts.map +1 -1
- package/build/lib/version/version.js +11 -11
- package/build/lib/version/version.js.map +1 -1
- package/build/lib/version-selection/$$.d.ts +2 -0
- package/build/lib/version-selection/$$.d.ts.map +1 -0
- package/build/lib/version-selection/$$.js +2 -0
- package/build/lib/version-selection/$$.js.map +1 -0
- package/build/lib/version-selection/$.d.ts +2 -0
- package/build/lib/version-selection/$.d.ts.map +1 -0
- package/build/lib/version-selection/$.js +2 -0
- package/build/lib/version-selection/$.js.map +1 -0
- package/build/lib/version-selection/version-selection.d.ts +42 -0
- package/build/lib/version-selection/version-selection.d.ts.map +1 -0
- package/build/lib/version-selection/version-selection.js +86 -0
- package/build/lib/version-selection/version-selection.js.map +1 -0
- package/build/lib/vite-reactive/$$.d.ts +2 -0
- package/build/lib/vite-reactive/$$.d.ts.map +1 -0
- package/build/lib/vite-reactive/$$.js +2 -0
- package/build/lib/vite-reactive/$$.js.map +1 -0
- package/build/lib/vite-reactive/$.d.ts +2 -0
- package/build/lib/vite-reactive/$.d.ts.map +1 -0
- package/build/lib/vite-reactive/$.js +2 -0
- package/build/lib/vite-reactive/$.js.map +1 -0
- package/build/lib/vite-reactive/reactive-asset-plugin.d.ts +71 -0
- package/build/lib/vite-reactive/reactive-asset-plugin.d.ts.map +1 -0
- package/build/lib/vite-reactive/reactive-asset-plugin.js +155 -0
- package/build/lib/vite-reactive/reactive-asset-plugin.js.map +1 -0
- package/build/template/components/Carousel.d.ts +25 -0
- package/build/template/components/Carousel.d.ts.map +1 -0
- package/build/template/components/Carousel.js +134 -0
- package/build/template/components/Carousel.js.map +1 -0
- package/build/template/components/CarouselPill.d.ts +19 -0
- package/build/template/components/CarouselPill.d.ts.map +1 -0
- package/build/template/components/CarouselPill.js +31 -0
- package/build/template/components/CarouselPill.js.map +1 -0
- package/build/template/components/Changelog/Changelog.d.ts.map +1 -1
- package/build/template/components/Changelog/Changelog.js +19 -13
- package/build/template/components/Changelog/Changelog.js.map +1 -1
- package/build/template/components/Changelog/groups/TypeOperation.d.ts +2 -0
- package/build/template/components/Changelog/groups/TypeOperation.d.ts.map +1 -1
- package/build/template/components/Changelog/groups/TypeOperation.js +31 -5
- package/build/template/components/Changelog/groups/TypeOperation.js.map +1 -1
- package/build/template/components/CodeBlock.js +2 -2
- package/build/template/components/CodeBlock.js.map +1 -1
- package/build/template/components/DevelopmentTip.d.ts +13 -0
- package/build/template/components/DevelopmentTip.d.ts.map +1 -0
- package/build/template/components/DevelopmentTip.js +16 -0
- package/build/template/components/DevelopmentTip.js.map +1 -0
- package/build/template/components/ExampleLink.d.ts +11 -0
- package/build/template/components/ExampleLink.d.ts.map +1 -0
- package/build/template/components/ExampleLink.js +13 -0
- package/build/template/components/ExampleLink.js.map +1 -0
- package/build/template/components/Field.js +1 -1
- package/build/template/components/Field.js.map +1 -1
- package/build/template/components/GraphQLDocument.d.ts +25 -0
- package/build/template/components/GraphQLDocument.d.ts.map +1 -0
- package/build/template/components/GraphQLDocument.js +68 -0
- package/build/template/components/GraphQLDocument.js.map +1 -0
- package/build/template/components/GraphQLInteractive/GraphQLInteractive.d.ts +6 -2
- package/build/template/components/GraphQLInteractive/GraphQLInteractive.d.ts.map +1 -1
- package/build/template/components/GraphQLInteractive/GraphQLInteractive.js +8 -2
- package/build/template/components/GraphQLInteractive/GraphQLInteractive.js.map +1 -1
- package/build/template/components/HamburgerMenu.d.ts +11 -1
- package/build/template/components/HamburgerMenu.d.ts.map +1 -1
- package/build/template/components/HamburgerMenu.js.map +1 -1
- package/build/template/components/Logo.d.ts +8 -1
- package/build/template/components/Logo.d.ts.map +1 -1
- package/build/template/components/Logo.js +27 -12
- package/build/template/components/Logo.js.map +1 -1
- package/build/template/components/NamedType.d.ts.map +1 -1
- package/build/template/components/NamedType.js +12 -4
- package/build/template/components/NamedType.js.map +1 -1
- package/build/template/components/SimpleVersionPicker.d.ts +15 -0
- package/build/template/components/SimpleVersionPicker.d.ts.map +1 -0
- package/build/template/components/SimpleVersionPicker.js +15 -0
- package/build/template/components/SimpleVersionPicker.js.map +1 -0
- package/build/template/components/TypeAnnotation.d.ts.map +1 -1
- package/build/template/components/TypeAnnotation.js +8 -15
- package/build/template/components/TypeAnnotation.js.map +1 -1
- package/build/template/components/VersionCoveragePicker.d.ts +17 -0
- package/build/template/components/VersionCoveragePicker.d.ts.map +1 -0
- package/build/template/components/VersionCoveragePicker.js +28 -0
- package/build/template/components/VersionCoveragePicker.js.map +1 -0
- package/build/template/components/VersionPicker.d.ts.map +1 -1
- package/build/template/components/VersionPicker.js +13 -18
- package/build/template/components/VersionPicker.js.map +1 -1
- package/build/template/components/home/ExamplesSection.d.ts +13 -0
- package/build/template/components/home/ExamplesSection.d.ts.map +1 -0
- package/build/template/components/home/ExamplesSection.js +15 -0
- package/build/template/components/home/ExamplesSection.js.map +1 -0
- package/build/template/components/home/FeaturesGrid.d.ts +12 -0
- package/build/template/components/home/FeaturesGrid.d.ts.map +1 -0
- package/build/template/components/home/FeaturesGrid.js +73 -0
- package/build/template/components/home/FeaturesGrid.js.map +1 -0
- package/build/template/components/home/HeroSection.d.ts +16 -0
- package/build/template/components/home/HeroSection.d.ts.map +1 -0
- package/build/template/components/home/HeroSection.js +178 -0
- package/build/template/components/home/HeroSection.js.map +1 -0
- package/build/template/components/home/PlaygroundPreview.d.ts +9 -0
- package/build/template/components/home/PlaygroundPreview.d.ts.map +1 -0
- package/build/template/components/home/PlaygroundPreview.js +38 -0
- package/build/template/components/home/PlaygroundPreview.js.map +1 -0
- package/build/template/components/home/QuickStart.d.ts +11 -0
- package/build/template/components/home/QuickStart.d.ts.map +1 -0
- package/build/template/components/home/QuickStart.js +74 -0
- package/build/template/components/home/QuickStart.js.map +1 -0
- package/build/template/components/home/RecentChanges.d.ts +8 -0
- package/build/template/components/home/RecentChanges.d.ts.map +1 -0
- package/build/template/components/home/RecentChanges.js +61 -0
- package/build/template/components/home/RecentChanges.js.map +1 -0
- package/build/template/components/home/Resources.d.ts +24 -0
- package/build/template/components/home/Resources.d.ts.map +1 -0
- package/build/template/components/home/Resources.js +53 -0
- package/build/template/components/home/Resources.js.map +1 -0
- package/build/template/components/home/SocialProof.d.ts +13 -0
- package/build/template/components/home/SocialProof.d.ts.map +1 -0
- package/build/template/components/home/SocialProof.js +47 -0
- package/build/template/components/home/SocialProof.js.map +1 -0
- package/build/template/components/navbar/DefaultNavbar.d.ts.map +1 -1
- package/build/template/components/navbar/DefaultNavbar.js +5 -6
- package/build/template/components/navbar/DefaultNavbar.js.map +1 -1
- package/build/template/components/sidebar/Sidebar.d.ts +10 -1
- package/build/template/components/sidebar/Sidebar.d.ts.map +1 -1
- package/build/template/components/sidebar/Sidebar.js.map +1 -1
- package/build/template/components/sidebar/SidebarItem.d.ts +11 -2
- package/build/template/components/sidebar/SidebarItem.d.ts.map +1 -1
- package/build/template/components/sidebar/SidebarItem.js.map +1 -1
- package/build/template/components/swiss/SwissHeading.d.ts +10 -0
- package/build/template/components/swiss/SwissHeading.d.ts.map +1 -0
- package/build/template/components/swiss/SwissHeading.js +26 -0
- package/build/template/components/swiss/SwissHeading.js.map +1 -0
- package/build/template/components/swiss/index.d.ts +2 -0
- package/build/template/components/swiss/index.d.ts.map +1 -0
- package/build/template/components/swiss/index.js +2 -0
- package/build/template/components/swiss/index.js.map +1 -0
- package/build/template/contexts/GraphqlLifecycleContext.d.ts +1 -13
- package/build/template/contexts/GraphqlLifecycleContext.d.ts.map +1 -1
- package/build/template/entry.client.js +3 -3
- package/build/template/entry.client.js.map +1 -1
- package/build/template/hooks/use-examples.d.ts +38 -0
- package/build/template/hooks/use-examples.d.ts.map +1 -0
- package/build/template/hooks/use-examples.js +37 -0
- package/build/template/hooks/use-examples.js.map +1 -0
- package/build/template/hooks/use-highlighted.d.ts +14 -0
- package/build/template/hooks/use-highlighted.d.ts.map +1 -0
- package/build/template/hooks/use-highlighted.js +41 -0
- package/build/template/hooks/use-highlighted.js.map +1 -0
- package/build/template/layouts/SidebarLayout.d.ts +9 -1
- package/build/template/layouts/SidebarLayout.d.ts.map +1 -1
- package/build/template/layouts/SidebarLayout.js +4 -7
- package/build/template/layouts/SidebarLayout.js.map +1 -1
- package/build/template/layouts/index.d.ts +0 -1
- package/build/template/layouts/index.d.ts.map +1 -1
- package/build/template/layouts/index.js +0 -1
- package/build/template/layouts/index.js.map +1 -1
- package/build/template/lib/polen-url.js +3 -3
- package/build/template/lib/polen-url.js.map +1 -1
- package/build/template/providers/mdx.d.ts +8 -0
- package/build/template/providers/mdx.d.ts.map +1 -0
- package/build/template/providers/mdx.js +44 -0
- package/build/template/providers/mdx.js.map +1 -0
- package/build/template/routes/changelog.d.ts +4 -19
- package/build/template/routes/changelog.d.ts.map +1 -1
- package/build/template/routes/changelog.js +160 -26
- package/build/template/routes/changelog.js.map +1 -1
- package/build/template/routes/examples/_.d.ts +65 -0
- package/build/template/routes/examples/_.d.ts.map +1 -0
- package/build/template/routes/examples/_.js +56 -0
- package/build/template/routes/examples/_.js.map +1 -0
- package/build/template/routes/examples/_index.d.ts +39 -0
- package/build/template/routes/examples/_index.d.ts.map +1 -0
- package/build/template/routes/examples/_index.js +54 -0
- package/build/template/routes/examples/_index.js.map +1 -0
- package/build/template/routes/examples/name.d.ts +31 -0
- package/build/template/routes/examples/name.d.ts.map +1 -0
- package/build/template/routes/examples/name.js +50 -0
- package/build/template/routes/examples/name.js.map +1 -0
- package/build/template/routes/index.d.ts +1 -1
- package/build/template/routes/index.d.ts.map +1 -1
- package/build/template/routes/index.js +23 -3
- package/build/template/routes/index.js.map +1 -1
- package/build/template/routes/pages.d.ts.map +1 -1
- package/build/template/routes/pages.js +4 -44
- package/build/template/routes/pages.js.map +1 -1
- package/build/template/routes/reference.d.ts.map +1 -1
- package/build/template/routes/reference.js +54 -39
- package/build/template/routes/reference.js.map +1 -1
- package/build/template/routes/root.d.ts +3 -2
- package/build/template/routes/root.d.ts.map +1 -1
- package/build/template/routes/root.js +57 -17
- package/build/template/routes/root.js.map +1 -1
- package/build/template/server/create-page-html-response.js +2 -2
- package/build/template/server/create-page-html-response.js.map +1 -1
- package/build/template/server/main.js +5 -5
- package/build/template/server/main.js.map +1 -1
- package/build/template/server/view.js +3 -3
- package/build/template/server/view.js.map +1 -1
- package/build/template/stores/changelog.d.ts +31 -31
- package/build/template/stores/changelog.js +3 -3
- package/build/template/stores/changelog.js.map +1 -1
- package/build/template/stores/schema.d.ts +1 -1
- package/build/template/stores/toast.d.ts +1 -1
- package/build/template/theme/swiss-sharp.css +117 -0
- package/build/template/theme/swiss-sharp.d.ts +9 -0
- package/build/template/theme/swiss-sharp.d.ts.map +1 -0
- package/build/template/theme/swiss-sharp.js +13 -0
- package/build/template/theme/swiss-sharp.js.map +1 -0
- package/build/vite/config.d.ts +1 -1
- package/build/vite/config.d.ts.map +1 -1
- package/build/vite/logger.d.ts +2 -2
- package/build/vite/logger.d.ts.map +1 -1
- package/build/vite/logger.js +0 -1
- package/build/vite/logger.js.map +1 -1
- package/build/vite/plugins/branding.d.ts +2 -2
- package/build/vite/plugins/branding.d.ts.map +1 -1
- package/build/vite/plugins/branding.js +125 -10
- package/build/vite/plugins/branding.js.map +1 -1
- package/build/vite/plugins/build.d.ts +1 -1
- package/build/vite/plugins/build.d.ts.map +1 -1
- package/build/vite/plugins/config.d.ts +17 -0
- package/build/vite/plugins/config.d.ts.map +1 -0
- package/build/vite/plugins/config.js +33 -0
- package/build/vite/plugins/config.js.map +1 -0
- package/build/vite/plugins/core.d.ts +1 -5
- package/build/vite/plugins/core.d.ts.map +1 -1
- package/build/vite/plugins/core.js +43 -127
- package/build/vite/plugins/core.js.map +1 -1
- package/build/vite/plugins/examples.d.ts +23 -0
- package/build/vite/plugins/examples.d.ts.map +1 -0
- package/build/vite/plugins/examples.js +149 -0
- package/build/vite/plugins/examples.js.map +1 -0
- package/build/vite/plugins/hooks.d.ts +12 -0
- package/build/vite/plugins/hooks.d.ts.map +1 -0
- package/build/vite/plugins/hooks.js +41 -0
- package/build/vite/plugins/hooks.js.map +1 -0
- package/build/vite/plugins/index.d.ts +2 -1
- package/build/vite/plugins/index.d.ts.map +1 -1
- package/build/vite/plugins/index.js +2 -1
- package/build/vite/plugins/index.js.map +1 -1
- package/build/vite/plugins/main.d.ts +1 -1
- package/build/vite/plugins/main.d.ts.map +1 -1
- package/build/vite/plugins/manifest.d.ts +1 -1
- package/build/vite/plugins/manifest.d.ts.map +1 -1
- package/build/vite/plugins/navbar.d.ts +16 -0
- package/build/vite/plugins/navbar.d.ts.map +1 -0
- package/build/vite/plugins/navbar.js +60 -0
- package/build/vite/plugins/navbar.js.map +1 -0
- package/build/vite/plugins/pages.d.ts +10 -4
- package/build/vite/plugins/pages.d.ts.map +1 -1
- package/build/vite/plugins/pages.js +48 -120
- package/build/vite/plugins/pages.js.map +1 -1
- package/build/vite/plugins/routes-manifest.d.ts +1 -1
- package/build/vite/plugins/routes-manifest.d.ts.map +1 -1
- package/build/vite/plugins/routes-manifest.js +13 -16
- package/build/vite/plugins/routes-manifest.js.map +1 -1
- package/build/vite/plugins/schemas.d.ts +30 -0
- package/build/vite/plugins/schemas.d.ts.map +1 -0
- package/build/vite/plugins/schemas.js +116 -0
- package/build/vite/plugins/schemas.js.map +1 -0
- package/build/vite/plugins/serve.d.ts +1 -1
- package/build/vite/plugins/serve.d.ts.map +1 -1
- package/package.json +62 -11
- package/src/api/{api.ts → $$.ts} +6 -2
- package/src/api/$.ts +1 -0
- package/src/api/config/$$.ts +1 -0
- package/src/api/config/home.ts +542 -0
- package/src/api/config/input.ts +109 -26
- package/src/api/config/normalized.ts +474 -30
- package/src/api/config-template/template.ts +77 -0
- package/src/api/content/$$.ts +1 -0
- package/src/api/content/mdx-compiler.ts +74 -0
- package/src/api/content/navbar.test.ts +3 -3
- package/src/api/content/navbar.ts +1 -1
- package/src/api/examples/$$.ts +7 -0
- package/src/api/examples/$.test.ts +201 -0
- package/src/api/examples/$.ts +1 -0
- package/src/api/examples/config.test.ts +92 -0
- package/src/api/examples/config.ts +242 -0
- package/src/api/examples/diagnostic/diagnostic.ts +30 -0
- package/src/api/examples/diagnostic/duplicate-content.ts +25 -0
- package/src/api/examples/diagnostic/invalid-filename.ts +19 -0
- package/src/api/examples/diagnostic/missing-versions.ts +24 -0
- package/src/api/examples/diagnostic/unknown-version.ts +24 -0
- package/src/api/examples/diagnostic/unused-default.ts +22 -0
- package/src/api/examples/diagnostic/validation-error.ts +24 -0
- package/src/api/examples/diagnostic/validator.test.ts +292 -0
- package/src/api/examples/diagnostic/validator.ts +176 -0
- package/src/api/examples/filter.test.ts +56 -0
- package/src/api/examples/filter.ts +82 -0
- package/src/api/examples/scanner.ts +346 -0
- package/src/api/examples/schemas/catalog.ts +51 -0
- package/src/api/examples/schemas/example/$$.ts +1 -0
- package/src/api/examples/schemas/example/$.ts +1 -0
- package/src/api/examples/schemas/example/example.ts +73 -0
- package/src/api/examples/schemas/type-usage-index.ts +75 -0
- package/src/api/examples/type-generator.ts +49 -0
- package/src/api/examples/type-usage-indexer.test.ts +276 -0
- package/src/api/examples/type-usage-indexer.ts +291 -0
- package/src/api/iso/schema/routing.ts +2 -2
- package/src/api/project/$.ts +1 -0
- package/src/api/schema/$.test.ts +2 -2
- package/src/api/schema/input-sources/versioned-directory.ts +11 -6
- package/src/api/schema/load.ts +1 -1
- package/src/api/typings/$$.ts +1 -0
- package/src/api/typings/$.ts +1 -0
- package/src/api/typings/typings.ts +273 -0
- package/src/cli/_/parameters.ts +12 -12
- package/src/cli/commands/build.ts +58 -67
- package/src/cli/commands/cache/delete.ts +17 -24
- package/src/cli/commands/cache/show.ts +70 -72
- package/src/cli/commands/cache.ts +24 -6
- package/src/cli/commands/config/create.ts +37 -31
- package/src/cli/commands/config.ts +22 -6
- package/src/cli/commands/create.ts +104 -84
- package/src/cli/commands/dev.ts +59 -65
- package/src/cli/commands/hero-image.ts +282 -0
- package/src/cli/commands/open.ts +139 -140
- package/src/cli/commands/static/rebase.ts +61 -39
- package/src/cli/commands/static.ts +36 -6
- package/src/cli/index.ts +103 -8
- package/src/lib/ai-image-generation/$$.ts +2 -0
- package/src/lib/ai-image-generation/$.test.ts +344 -0
- package/src/lib/ai-image-generation/$.ts +1 -0
- package/src/lib/ai-image-generation/ai-image-generation.ts +231 -0
- package/src/lib/ai-image-generation/providers/pollinations.ts +65 -0
- package/src/lib/ai-image-generation/service.ts +185 -0
- package/src/lib/catalog/catalog.ts +30 -3
- package/src/lib/catalog/unversioned.ts +1 -1
- package/src/lib/catalog/versioned.ts +51 -2
- package/src/lib/catalog-statistics/$$.ts +4 -0
- package/src/lib/catalog-statistics/$.test.ts +161 -0
- package/src/lib/catalog-statistics/$.ts +1 -0
- package/src/lib/catalog-statistics/analyze-catalog.ts +158 -0
- package/src/lib/catalog-statistics/analyze-options.ts +15 -0
- package/src/lib/catalog-statistics/analyze-schema.ts +226 -0
- package/src/lib/catalog-statistics/data.ts +196 -0
- package/src/lib/catalog-statistics/report.ts +45 -0
- package/src/lib/change/change.ts +1 -1
- package/src/lib/change/criticality.ts +2 -2
- package/src/lib/date-only/date-only.ts +1 -1
- package/src/lib/diagnostic/$$.ts +5 -0
- package/src/lib/diagnostic/$.test.ts +109 -0
- package/src/lib/diagnostic/$.ts +1 -0
- package/src/lib/diagnostic/control.test.ts +75 -0
- package/src/lib/diagnostic/control.ts +140 -0
- package/src/lib/diagnostic/diagnostic.ts +144 -0
- package/src/lib/diagnostic/filter.ts +21 -0
- package/src/lib/diagnostic/reporter.ts +74 -0
- package/src/lib/diagnostic/severity.ts +93 -0
- package/src/lib/directed-filter/$$.ts +1 -0
- package/src/lib/directed-filter/$.test.ts +169 -0
- package/src/lib/directed-filter/$.ts +1 -0
- package/src/lib/directed-filter/directed-filter.ts +241 -0
- package/src/lib/document/$$.ts +3 -0
- package/src/lib/document/$.ts +1 -0
- package/src/lib/document/document.ts +37 -0
- package/src/lib/document/unversioned.ts +35 -0
- package/src/lib/document/versioned.ts +106 -0
- package/src/lib/effect-cli-help-markdown/$$.ts +1 -0
- package/src/lib/effect-cli-help-markdown/$.test.ts +49 -0
- package/src/lib/effect-cli-help-markdown/$.ts +1 -0
- package/src/lib/effect-cli-help-markdown/effect-cli-help-markdown.ts +699 -0
- package/src/lib/effect-glob/$$.ts +1 -0
- package/src/lib/effect-glob/$.ts +1 -0
- package/src/lib/effect-glob/effect-glob.ts +33 -0
- package/src/lib/file-path/$$.ts +3 -4
- package/src/lib/file-path/$.test.ts +45 -0
- package/src/lib/file-path/$.ts +1 -1
- package/src/lib/file-path/absolute.ts +66 -0
- package/src/lib/file-path/file-path.ts +17 -117
- package/src/lib/file-path/relative.ts +72 -0
- package/src/lib/file-path/segment/$.ts +1 -0
- package/src/lib/file-path/{file-path.test.ts → segment/segment.test.ts} +2 -2
- package/src/lib/file-path/segment/segment.ts +134 -0
- package/src/lib/file-router/linter.ts +82 -49
- package/src/lib/graph/graph.ts +1 -1
- package/src/lib/graphql-error/$$.ts +1 -0
- package/src/lib/graphql-error/$.ts +1 -0
- package/src/lib/graphql-error/graphql-error.ts +74 -0
- package/src/lib/kit-temp/effect.ts +69 -0
- package/src/lib/kit-temp/ob.ts +13 -0
- package/src/lib/kit-temp/other.test.ts +1 -1
- package/src/lib/kit-temp/resource.ts +1 -2
- package/src/lib/lifecycles/lifecycles.ts +1 -1
- package/src/lib/react-router-effect/route-helpers.ts +71 -8
- package/src/lib/react-router-effect/route.ts +14 -1
- package/src/lib/react-router-effect/types.ts +11 -3
- package/src/lib/react-router-effect/use-loader-data.ts +3 -3
- package/src/lib/revision/revision.ts +1 -1
- package/src/lib/schema/$.test.ts +1 -1
- package/src/lib/schema/schema.ts +1 -1
- package/src/lib/schema/unversioned.ts +1 -1
- package/src/lib/schema-definition/schema-definition.ts +1 -1
- package/src/lib/semver/official-release.ts +1 -1
- package/src/lib/semver/pre-release.ts +1 -1
- package/src/lib/semver/semver.ts +1 -1
- package/src/lib/swiss/$$.ts +5 -0
- package/src/lib/swiss/$.test.ts +89 -0
- package/src/lib/swiss/$.ts +2 -0
- package/src/lib/swiss/grid.tsx +61 -0
- package/src/lib/swiss/items.tsx +288 -0
- package/src/lib/swiss/styles.css +298 -0
- package/src/lib/swiss/subgrid.tsx +83 -0
- package/src/lib/swiss/types.ts +353 -0
- package/src/lib/swiss/utils.ts +144 -0
- package/src/lib/version/$.test.ts +2 -2
- package/src/lib/version/custom.ts +2 -13
- package/src/lib/version/date.ts +2 -13
- package/src/lib/version/integer.ts +2 -13
- package/src/lib/version/semver.ts +2 -13
- package/src/lib/version/version.ts +15 -12
- package/src/lib/version-selection/$$.ts +1 -0
- package/src/lib/version-selection/$.ts +1 -0
- package/src/lib/version-selection/version-selection.ts +117 -0
- package/src/lib/vite-reactive/$$.ts +1 -0
- package/src/lib/vite-reactive/$.ts +1 -0
- package/src/lib/vite-reactive/reactive-asset-plugin.ts +280 -0
- package/src/template/components/Carousel.tsx +224 -0
- package/src/template/components/CarouselPill.tsx +101 -0
- package/src/template/components/Changelog/Changelog.tsx +22 -12
- package/src/template/components/Changelog/groups/TypeOperation.tsx +53 -5
- package/src/template/components/CodeBlock.tsx +2 -2
- package/src/template/components/DevelopmentTip.tsx +43 -0
- package/src/template/components/ExampleLink.tsx +25 -0
- package/src/template/components/Field.tsx +1 -1
- package/src/template/components/GraphQLDocument.tsx +146 -0
- package/src/template/components/GraphQLInteractive/GraphQLInteractive.tsx +25 -3
- package/src/template/components/HamburgerMenu.tsx +14 -1
- package/src/template/components/Logo.tsx +35 -15
- package/src/template/components/NamedType.tsx +27 -3
- package/src/template/components/SimpleVersionPicker.tsx +48 -0
- package/src/template/components/TypeAnnotation.tsx +8 -26
- package/src/template/components/VersionCoveragePicker.tsx +57 -0
- package/src/template/components/VersionPicker.tsx +20 -31
- package/src/template/components/home/ExamplesSection.tsx +49 -0
- package/src/template/components/home/FeaturesGrid.tsx +135 -0
- package/src/template/components/home/HeroSection.tsx +379 -0
- package/src/template/components/home/PlaygroundPreview.tsx +138 -0
- package/src/template/components/home/QuickStart.tsx +132 -0
- package/src/template/components/home/RecentChanges.tsx +154 -0
- package/src/template/components/home/Resources.tsx +207 -0
- package/src/template/components/home/SocialProof.tsx +109 -0
- package/src/template/components/navbar/DefaultNavbar.tsx +23 -12
- package/src/template/components/sidebar/Sidebar.tsx +14 -1
- package/src/template/components/sidebar/SidebarItem.tsx +18 -6
- package/src/template/components/swiss/SwissHeading.tsx +44 -0
- package/src/template/components/swiss/index.ts +1 -0
- package/src/template/entry.client.tsx +3 -3
- package/src/template/hooks/use-examples.ts +46 -0
- package/src/template/hooks/use-highlighted.ts +57 -0
- package/src/template/layouts/SidebarLayout.tsx +34 -27
- package/src/template/layouts/index.ts +0 -1
- package/src/template/lib/polen-url.ts +3 -3
- package/src/template/providers/mdx.tsx +75 -0
- package/src/template/routes/changelog.tsx +253 -28
- package/src/template/routes/examples/_.tsx +90 -0
- package/src/template/routes/examples/_index.tsx +93 -0
- package/src/template/routes/examples/name.tsx +69 -0
- package/src/template/routes/index.tsx +48 -2
- package/src/template/routes/pages.tsx +5 -67
- package/src/template/routes/reference.tsx +41 -19
- package/src/template/routes/root.tsx +94 -38
- package/src/template/server/create-page-html-response.ts +2 -2
- package/src/template/server/main.ts +6 -6
- package/src/template/server/view.ts +3 -3
- package/src/template/stores/changelog.ts +3 -3
- package/src/template/theme/swiss-sharp.css +117 -0
- package/src/template/theme/swiss-sharp.ts +14 -0
- package/src/types/virtual-modules.d.ts +26 -19
- package/src/vite/config.ts +1 -1
- package/src/vite/logger.ts +2 -3
- package/src/vite/plugins/branding.ts +141 -12
- package/src/vite/plugins/build.ts +1 -1
- package/src/vite/plugins/config.ts +57 -0
- package/src/vite/plugins/core.ts +45 -167
- package/src/vite/plugins/examples.ts +201 -0
- package/src/vite/plugins/hooks.ts +49 -0
- package/src/vite/plugins/index.ts +2 -1
- package/src/vite/plugins/main.ts +1 -1
- package/src/vite/plugins/manifest.ts +1 -1
- package/src/vite/plugins/navbar.ts +102 -0
- package/src/vite/plugins/pages.ts +70 -155
- package/src/vite/plugins/routes-manifest.ts +16 -14
- package/src/vite/plugins/schemas.ts +145 -0
- package/src/vite/plugins/serve.ts +1 -1
- package/build/api/api.d.ts.map +0 -1
- package/build/api/api.js +0 -9
- package/build/api/api.js.map +0 -1
- package/build/api/index.d.ts +0 -2
- package/build/api/index.d.ts.map +0 -1
- package/build/api/index.js +0 -2
- package/build/api/index.js.map +0 -1
- package/build/api/project/index.d.ts +0 -2
- package/build/api/project/index.d.ts.map +0 -1
- package/build/api/project/index.js +0 -2
- package/build/api/project/index.js.map +0 -1
- package/build/cli/commands/$default.d.ts +0 -3
- package/build/cli/commands/$default.d.ts.map +0 -1
- package/build/cli/commands/$default.js +0 -89
- package/build/cli/commands/$default.js.map +0 -1
- package/build/cli/commands/cache/$default.d.ts +0 -3
- package/build/cli/commands/cache/$default.d.ts.map +0 -1
- package/build/cli/commands/cache/$default.js +0 -10
- package/build/cli/commands/cache/$default.js.map +0 -1
- package/build/cli/commands/config/$default.d.ts +0 -2
- package/build/cli/commands/config/$default.d.ts.map +0 -1
- package/build/cli/commands/config/$default.js +0 -7
- package/build/cli/commands/config/$default.js.map +0 -1
- package/build/cli/commands/static/$default.d.ts +0 -3
- package/build/cli/commands/static/$default.d.ts.map +0 -1
- package/build/cli/commands/static/$default.js +0 -38
- package/build/cli/commands/static/$default.js.map +0 -1
- package/build/cli-effect/_/parameters.d.ts +0 -7
- package/build/cli-effect/_/parameters.d.ts.map +0 -1
- package/build/cli-effect/_/parameters.js +0 -7
- package/build/cli-effect/_/parameters.js.map +0 -1
- package/build/cli-effect/commands/build.d.ts +0 -11
- package/build/cli-effect/commands/build.d.ts.map +0 -1
- package/build/cli-effect/commands/build.js +0 -40
- package/build/cli-effect/commands/build.js.map +0 -1
- package/build/cli-effect/commands/cache/delete.d.ts +0 -7
- package/build/cli-effect/commands/cache/delete.d.ts.map +0 -1
- package/build/cli-effect/commands/cache/delete.js +0 -15
- package/build/cli-effect/commands/cache/delete.js.map +0 -1
- package/build/cli-effect/commands/cache/show.d.ts +0 -6
- package/build/cli-effect/commands/cache/show.d.ts.map +0 -1
- package/build/cli-effect/commands/cache/show.js +0 -80
- package/build/cli-effect/commands/cache/show.js.map +0 -1
- package/build/cli-effect/commands/cache.d.ts +0 -11
- package/build/cli-effect/commands/cache.d.ts.map +0 -1
- package/build/cli-effect/commands/cache.js +0 -18
- package/build/cli-effect/commands/cache.js.map +0 -1
- package/build/cli-effect/commands/config/create.d.ts +0 -7
- package/build/cli-effect/commands/config/create.d.ts.map +0 -1
- package/build/cli-effect/commands/config/create.js +0 -36
- package/build/cli-effect/commands/config/create.js.map +0 -1
- package/build/cli-effect/commands/config.d.ts +0 -8
- package/build/cli-effect/commands/config.d.ts.map +0 -1
- package/build/cli-effect/commands/config.js +0 -16
- package/build/cli-effect/commands/config.js.map +0 -1
- package/build/cli-effect/commands/create.d.ts +0 -10
- package/build/cli-effect/commands/create.d.ts.map +0 -1
- package/build/cli-effect/commands/create.js +0 -112
- package/build/cli-effect/commands/create.js.map +0 -1
- package/build/cli-effect/commands/dev.d.ts +0 -10
- package/build/cli-effect/commands/dev.d.ts.map +0 -1
- package/build/cli-effect/commands/dev.js +0 -48
- package/build/cli-effect/commands/dev.js.map +0 -1
- package/build/cli-effect/commands/open.d.ts +0 -11
- package/build/cli-effect/commands/open.d.ts.map +0 -1
- package/build/cli-effect/commands/open.js +0 -131
- package/build/cli-effect/commands/open.js.map +0 -1
- package/build/cli-effect/commands/static/rebase.d.ts +0 -9
- package/build/cli-effect/commands/static/rebase.d.ts.map +0 -1
- package/build/cli-effect/commands/static/rebase.js +0 -44
- package/build/cli-effect/commands/static/rebase.js.map +0 -1
- package/build/cli-effect/commands/static.d.ts +0 -10
- package/build/cli-effect/commands/static.d.ts.map +0 -1
- package/build/cli-effect/commands/static.js +0 -29
- package/build/cli-effect/commands/static.js.map +0 -1
- package/build/cli-effect/index.d.ts +0 -3
- package/build/cli-effect/index.d.ts.map +0 -1
- package/build/cli-effect/index.js +0 -61
- package/build/cli-effect/index.js.map +0 -1
- package/build/lib/file-router/diagnostic-reporter.d.ts +0 -3
- package/build/lib/file-router/diagnostic-reporter.d.ts.map +0 -1
- package/build/lib/file-router/diagnostic-reporter.js +0 -18
- package/build/lib/file-router/diagnostic-reporter.js.map +0 -1
- package/build/lib/task/$$.d.ts +0 -3
- package/build/lib/task/$$.d.ts.map +0 -1
- package/build/lib/task/$$.js +0 -3
- package/build/lib/task/$$.js.map +0 -1
- package/build/lib/task/$.d.ts +0 -2
- package/build/lib/task/$.d.ts.map +0 -1
- package/build/lib/task/$.js +0 -2
- package/build/lib/task/$.js.map +0 -1
- package/build/lib/task/report.d.ts +0 -28
- package/build/lib/task/report.d.ts.map +0 -1
- package/build/lib/task/report.js +0 -33
- package/build/lib/task/report.js.map +0 -1
- package/build/lib/task/task.d.ts +0 -45
- package/build/lib/task/task.d.ts.map +0 -1
- package/build/lib/task/task.js +0 -71
- package/build/lib/task/task.js.map +0 -1
- package/build/project-data.d.ts +0 -10
- package/build/project-data.d.ts.map +0 -1
- package/build/project-data.js +0 -2
- package/build/project-data.js.map +0 -1
- package/build/template/catalog-bridge.d.ts +0 -1837
- package/build/template/catalog-bridge.d.ts.map +0 -1
- package/build/template/catalog-bridge.js +0 -87
- package/build/template/catalog-bridge.js.map +0 -1
- package/build/template/data/catalog.d.ts +0 -3
- package/build/template/data/catalog.d.ts.map +0 -1
- package/build/template/data/catalog.js +0 -7
- package/build/template/data/catalog.js.map +0 -1
- package/build/template/layouts/ChangelogLayout.d.ts +0 -9
- package/build/template/layouts/ChangelogLayout.d.ts.map +0 -1
- package/build/template/layouts/ChangelogLayout.js +0 -97
- package/build/template/layouts/ChangelogLayout.js.map +0 -1
- package/build/vite/plugins/schema-assets.d.ts +0 -20
- package/build/vite/plugins/schema-assets.d.ts.map +0 -1
- package/build/vite/plugins/schema-assets.js +0 -225
- package/build/vite/plugins/schema-assets.js.map +0 -1
- package/src/api/index.ts +0 -1
- package/src/cli/commands/$default.ts +0 -102
- package/src/cli/commands/cache/$default.ts +0 -10
- package/src/cli/commands/config/$default.ts +0 -7
- package/src/cli/commands/static/$default.ts +0 -43
- package/src/cli-effect/_/parameters.ts +0 -17
- package/src/cli-effect/commands/build.ts +0 -66
- package/src/cli-effect/commands/cache/delete.ts +0 -21
- package/src/cli-effect/commands/cache/show.ts +0 -99
- package/src/cli-effect/commands/cache.ts +0 -27
- package/src/cli-effect/commands/config/create.ts +0 -49
- package/src/cli-effect/commands/config.ts +0 -25
- package/src/cli-effect/commands/create.ts +0 -167
- package/src/cli-effect/commands/dev.ts +0 -72
- package/src/cli-effect/commands/open.ts +0 -183
- package/src/cli-effect/commands/static/rebase.ts +0 -66
- package/src/cli-effect/commands/static.ts +0 -39
- package/src/cli-effect/index.ts +0 -79
- package/src/lib/file-router/diagnostic-reporter.ts +0 -22
- package/src/lib/task/$$.ts +0 -2
- package/src/lib/task/$.test.ts +0 -210
- package/src/lib/task/$.ts +0 -1
- package/src/lib/task/report.ts +0 -72
- package/src/lib/task/task.ts +0 -129
- package/src/project-data.ts +0 -10
- package/src/template/catalog-bridge.ts +0 -102
- package/src/template/data/catalog.ts +0 -7
- package/src/template/layouts/ChangelogLayout.tsx +0 -185
- package/src/vite/plugins/schema-assets.ts +0 -265
- /package/src/api/project/{index.ts → $$.ts} +0 -0
@@ -0,0 +1,276 @@
|
|
1
|
+
import { Catalog } from '#lib/catalog/$'
|
2
|
+
import { Document } from '#lib/document/$'
|
3
|
+
import { Schema } from '#lib/schema/$'
|
4
|
+
import { Version } from '#lib/version/$'
|
5
|
+
import { HashMap, HashSet, Schema as S } from 'effect'
|
6
|
+
import { buildSchema } from 'graphql'
|
7
|
+
import { describe, expect, test } from 'vitest'
|
8
|
+
import { Example } from './schemas/example/example.js'
|
9
|
+
import * as ExampleReferenceModule from './schemas/type-usage-index.js'
|
10
|
+
import { createTypeUsageIndex, getExampleReferencesForType } from './type-usage-indexer.js'
|
11
|
+
|
12
|
+
describe('type-usage-indexer', () => {
|
13
|
+
const schemaString = `
|
14
|
+
type Query {
|
15
|
+
user(id: ID!): User
|
16
|
+
users: [User!]!
|
17
|
+
product(id: ID!): Product
|
18
|
+
}
|
19
|
+
|
20
|
+
type User {
|
21
|
+
id: ID!
|
22
|
+
name: String!
|
23
|
+
email: String!
|
24
|
+
}
|
25
|
+
|
26
|
+
type Product {
|
27
|
+
id: ID!
|
28
|
+
name: String!
|
29
|
+
price: Float!
|
30
|
+
}
|
31
|
+
|
32
|
+
interface Node {
|
33
|
+
id: ID!
|
34
|
+
}
|
35
|
+
|
36
|
+
union SearchResult = User | Product
|
37
|
+
`
|
38
|
+
|
39
|
+
const schemaDef = buildSchema(schemaString)
|
40
|
+
const version1 = Version.decodeSync('1.0.0')
|
41
|
+
const version2 = Version.decodeSync('2.0.0')
|
42
|
+
|
43
|
+
describe('createTypeUsageIndex', () => {
|
44
|
+
test('indexes unversioned examples', () => {
|
45
|
+
const example = Example.make({
|
46
|
+
name: 'get-user',
|
47
|
+
path: 'examples/get-user.graphql',
|
48
|
+
document: Document.Unversioned.make({
|
49
|
+
document: 'query { user(id: "1") { id name } }',
|
50
|
+
}),
|
51
|
+
})
|
52
|
+
|
53
|
+
const catalog = Catalog.Unversioned.make({
|
54
|
+
schema: Schema.Unversioned.make({
|
55
|
+
definition: schemaDef,
|
56
|
+
revisions: [],
|
57
|
+
}),
|
58
|
+
})
|
59
|
+
|
60
|
+
const index = createTypeUsageIndex([example], catalog)
|
61
|
+
|
62
|
+
// For unversioned examples, they get indexed with the latest version (1.0.0 default)
|
63
|
+
const defaultVersion = Version.decodeSync('1.0.0')
|
64
|
+
|
65
|
+
// Should index Query and User types
|
66
|
+
const queryRefs = getExampleReferencesForType(index, 'Query')
|
67
|
+
const userRefs = getExampleReferencesForType(index, 'User')
|
68
|
+
|
69
|
+
expect(HashSet.size(queryRefs)).toBe(1)
|
70
|
+
expect([...queryRefs][0]).toEqual({ name: 'get-user', version: defaultVersion })
|
71
|
+
|
72
|
+
expect(HashSet.size(userRefs)).toBe(1)
|
73
|
+
expect([...userRefs][0]).toEqual({ name: 'get-user', version: defaultVersion })
|
74
|
+
|
75
|
+
// Should not index Product type (not used)
|
76
|
+
const productRefs = getExampleReferencesForType(index, 'Product')
|
77
|
+
expect(HashSet.size(productRefs)).toBe(0)
|
78
|
+
})
|
79
|
+
|
80
|
+
test('indexes versioned examples', () => {
|
81
|
+
const example = Example.make({
|
82
|
+
name: 'get-user-versioned',
|
83
|
+
path: 'examples/get-user-versioned.graphql',
|
84
|
+
document: Document.Versioned.make({
|
85
|
+
versionDocuments: HashMap.make(
|
86
|
+
[version1, 'query { user(id: "1") { id } }'],
|
87
|
+
[version2, 'query { user(id: "1") { id name email } }'],
|
88
|
+
),
|
89
|
+
}),
|
90
|
+
})
|
91
|
+
|
92
|
+
const catalog = Catalog.Versioned.make({
|
93
|
+
entries: HashMap.make(
|
94
|
+
[
|
95
|
+
version1,
|
96
|
+
Schema.Versioned.make({
|
97
|
+
version: version1,
|
98
|
+
definition: schemaDef,
|
99
|
+
branchPoint: null,
|
100
|
+
revisions: [],
|
101
|
+
}),
|
102
|
+
],
|
103
|
+
[
|
104
|
+
version2,
|
105
|
+
Schema.Versioned.make({
|
106
|
+
version: version2,
|
107
|
+
definition: schemaDef,
|
108
|
+
branchPoint: null,
|
109
|
+
revisions: [],
|
110
|
+
}),
|
111
|
+
],
|
112
|
+
),
|
113
|
+
})
|
114
|
+
|
115
|
+
const index = createTypeUsageIndex([example], catalog)
|
116
|
+
|
117
|
+
// Check version 1 references
|
118
|
+
const userRefsV1 = getExampleReferencesForType(index, 'User', version1)
|
119
|
+
expect(HashSet.size(userRefsV1)).toBe(1)
|
120
|
+
expect([...userRefsV1][0]).toEqual({ name: 'get-user-versioned', version: version1 })
|
121
|
+
|
122
|
+
// Check version 2 references
|
123
|
+
const userRefsV2 = getExampleReferencesForType(index, 'User', version2)
|
124
|
+
expect(HashSet.size(userRefsV2)).toBe(1)
|
125
|
+
expect([...userRefsV2][0]).toEqual({ name: 'get-user-versioned', version: version2 })
|
126
|
+
})
|
127
|
+
|
128
|
+
test('deduplicates example references using HashSet', () => {
|
129
|
+
// Create two examples that use the same types
|
130
|
+
const example1 = Example.make({
|
131
|
+
name: 'get-user-1',
|
132
|
+
path: 'examples/get-user-1.graphql',
|
133
|
+
document: Document.Unversioned.make({
|
134
|
+
document: 'query { user(id: "1") { id name } }',
|
135
|
+
}),
|
136
|
+
})
|
137
|
+
|
138
|
+
const example2 = Example.make({
|
139
|
+
name: 'get-user-2',
|
140
|
+
path: 'examples/get-user-2.graphql',
|
141
|
+
document: Document.Unversioned.make({
|
142
|
+
document: 'query { user(id: "2") { id name } }',
|
143
|
+
}),
|
144
|
+
})
|
145
|
+
|
146
|
+
const catalog = Catalog.Unversioned.make({
|
147
|
+
schema: Schema.Unversioned.make({
|
148
|
+
definition: schemaDef,
|
149
|
+
revisions: [],
|
150
|
+
}),
|
151
|
+
})
|
152
|
+
|
153
|
+
const index = createTypeUsageIndex([example1, example2], catalog)
|
154
|
+
|
155
|
+
// For unversioned examples with unversioned catalog, use default version
|
156
|
+
const defaultVersion = Version.decodeSync('1.0.0')
|
157
|
+
|
158
|
+
// Both examples should be indexed for User type
|
159
|
+
const userRefs = getExampleReferencesForType(index, 'User')
|
160
|
+
expect(HashSet.size(userRefs)).toBe(2)
|
161
|
+
|
162
|
+
const refNames = [...userRefs].map(ref => ref.name).sort()
|
163
|
+
expect(refNames).toEqual(['get-user-1', 'get-user-2'])
|
164
|
+
|
165
|
+
// All should have the same version
|
166
|
+
for (const ref of userRefs) {
|
167
|
+
expect(ref.version).toEqual(defaultVersion)
|
168
|
+
}
|
169
|
+
})
|
170
|
+
|
171
|
+
test('handles interface and union types', () => {
|
172
|
+
const example = Example.make({
|
173
|
+
name: 'search',
|
174
|
+
path: 'examples/search.graphql',
|
175
|
+
document: Document.Unversioned.make({
|
176
|
+
document: `
|
177
|
+
query {
|
178
|
+
user(id: "1") {
|
179
|
+
... on Node {
|
180
|
+
id
|
181
|
+
}
|
182
|
+
}
|
183
|
+
}
|
184
|
+
`,
|
185
|
+
}),
|
186
|
+
})
|
187
|
+
|
188
|
+
const catalog = Catalog.Unversioned.make({
|
189
|
+
schema: Schema.Unversioned.make({
|
190
|
+
definition: schemaDef,
|
191
|
+
revisions: [],
|
192
|
+
}),
|
193
|
+
})
|
194
|
+
|
195
|
+
const index = createTypeUsageIndex([example], catalog)
|
196
|
+
|
197
|
+
// For unversioned example with unversioned catalog
|
198
|
+
const defaultVersion = Version.decodeSync('1.0.0')
|
199
|
+
|
200
|
+
// Should index the Node interface
|
201
|
+
const nodeRefs = getExampleReferencesForType(index, 'Node')
|
202
|
+
expect(HashSet.size(nodeRefs)).toBe(1)
|
203
|
+
expect([...nodeRefs][0]).toEqual({ name: 'search', version: defaultVersion })
|
204
|
+
})
|
205
|
+
|
206
|
+
test('indexes examples with version sets', () => {
|
207
|
+
// Create a versioned document where multiple versions share the same document
|
208
|
+
const versionSet = HashSet.make(version1, version2)
|
209
|
+
const example = Example.make({
|
210
|
+
name: 'shared-example',
|
211
|
+
path: 'examples/shared.graphql',
|
212
|
+
document: Document.Versioned.make({
|
213
|
+
versionDocuments: HashMap.make(
|
214
|
+
[versionSet, 'query { user(id: "1") { id name } }'],
|
215
|
+
),
|
216
|
+
}),
|
217
|
+
})
|
218
|
+
|
219
|
+
const catalog = Catalog.Versioned.make({
|
220
|
+
entries: HashMap.make(
|
221
|
+
[
|
222
|
+
version1,
|
223
|
+
Schema.Versioned.make({
|
224
|
+
version: version1,
|
225
|
+
definition: schemaDef,
|
226
|
+
branchPoint: null,
|
227
|
+
revisions: [],
|
228
|
+
}),
|
229
|
+
],
|
230
|
+
[
|
231
|
+
version2,
|
232
|
+
Schema.Versioned.make({
|
233
|
+
version: version2,
|
234
|
+
definition: schemaDef,
|
235
|
+
branchPoint: null,
|
236
|
+
revisions: [],
|
237
|
+
}),
|
238
|
+
],
|
239
|
+
),
|
240
|
+
})
|
241
|
+
|
242
|
+
const index = createTypeUsageIndex([example], catalog)
|
243
|
+
|
244
|
+
// Both versions should have the same example reference
|
245
|
+
const userRefsV1 = getExampleReferencesForType(index, 'User', version1)
|
246
|
+
expect(HashSet.size(userRefsV1)).toBe(1)
|
247
|
+
expect([...userRefsV1][0]).toEqual({ name: 'shared-example', version: version1 })
|
248
|
+
|
249
|
+
const userRefsV2 = getExampleReferencesForType(index, 'User', version2)
|
250
|
+
expect(HashSet.size(userRefsV2)).toBe(1)
|
251
|
+
expect([...userRefsV2][0]).toEqual({ name: 'shared-example', version: version2 })
|
252
|
+
})
|
253
|
+
})
|
254
|
+
|
255
|
+
describe('ExampleReference', () => {
|
256
|
+
test('ExampleReference structural equality works with HashSet', () => {
|
257
|
+
// Use the Schema's make constructor to create Data instances with proper Equal/Hash support
|
258
|
+
const version = Version.decodeSync('1.0.0')
|
259
|
+
|
260
|
+
const ref1 = ExampleReferenceModule.ExampleReference.make({ name: 'example1', version })
|
261
|
+
const ref2 = ExampleReferenceModule.ExampleReference.make({ name: 'example1', version })
|
262
|
+
const ref3 = ExampleReferenceModule.ExampleReference.make({ name: 'example2', version })
|
263
|
+
|
264
|
+
// Create a HashSet and add references
|
265
|
+
let set = HashSet.empty<ExampleReferenceModule.ExampleReference>()
|
266
|
+
set = HashSet.add(set, ref1)
|
267
|
+
set = HashSet.add(set, ref2) // Should not increase size (duplicate)
|
268
|
+
set = HashSet.add(set, ref3)
|
269
|
+
|
270
|
+
// Should have only 2 unique references
|
271
|
+
expect(HashSet.size(set)).toBe(2)
|
272
|
+
expect(HashSet.has(set, ExampleReferenceModule.ExampleReference.make({ name: 'example1', version }))).toBe(true)
|
273
|
+
expect(HashSet.has(set, ExampleReferenceModule.ExampleReference.make({ name: 'example2', version }))).toBe(true)
|
274
|
+
})
|
275
|
+
})
|
276
|
+
})
|
@@ -0,0 +1,291 @@
|
|
1
|
+
import { Catalog } from '#lib/catalog/$'
|
2
|
+
import { Document } from '#lib/document/$'
|
3
|
+
import { Schema } from '#lib/schema/$'
|
4
|
+
import { Version } from '#lib/version/$'
|
5
|
+
import { HashMap, HashSet, Option } from 'effect'
|
6
|
+
import { Schema as S } from 'effect'
|
7
|
+
import {
|
8
|
+
type DocumentNode,
|
9
|
+
getNamedType,
|
10
|
+
type GraphQLSchema,
|
11
|
+
isInterfaceType,
|
12
|
+
isObjectType,
|
13
|
+
isUnionType,
|
14
|
+
Kind,
|
15
|
+
parse,
|
16
|
+
visit,
|
17
|
+
} from 'graphql'
|
18
|
+
import type { Example } from './schemas/example/example.js'
|
19
|
+
import { ExampleReference, type TypeUsageIndex, UNVERSIONED_KEY, type VersionKey } from './schemas/type-usage-index.js'
|
20
|
+
|
21
|
+
// ============================================================================
|
22
|
+
// Type Extraction
|
23
|
+
// ============================================================================
|
24
|
+
|
25
|
+
/**
|
26
|
+
* Extract all named types referenced in a GraphQL document.
|
27
|
+
*
|
28
|
+
* This includes:
|
29
|
+
* - Types referenced in fields
|
30
|
+
* - Types referenced in fragments (inline and spreads)
|
31
|
+
* - For interfaces: both the interface and all implementations
|
32
|
+
* - For unions: both the union and all member types
|
33
|
+
*/
|
34
|
+
const extractTypesFromQuery = (
|
35
|
+
documentString: string,
|
36
|
+
schema: GraphQLSchema,
|
37
|
+
): Set<string> => {
|
38
|
+
const types = new Set<string>()
|
39
|
+
const visitedTypes = new Set<string>() // Prevent infinite recursion
|
40
|
+
|
41
|
+
let ast: DocumentNode
|
42
|
+
try {
|
43
|
+
ast = parse(documentString)
|
44
|
+
} catch {
|
45
|
+
// If parsing fails, return empty set
|
46
|
+
return types
|
47
|
+
}
|
48
|
+
|
49
|
+
// Helper to add a type and its related types
|
50
|
+
const addType = (typeName: string) => {
|
51
|
+
if (visitedTypes.has(typeName)) return
|
52
|
+
visitedTypes.add(typeName)
|
53
|
+
types.add(typeName)
|
54
|
+
|
55
|
+
const type = schema.getType(typeName)
|
56
|
+
if (!type) return
|
57
|
+
|
58
|
+
// If interface, add all implementations
|
59
|
+
if (isInterfaceType(type)) {
|
60
|
+
const implementations = schema.getImplementations(type)
|
61
|
+
for (const impl of implementations.objects) {
|
62
|
+
types.add(impl.name)
|
63
|
+
}
|
64
|
+
for (const impl of implementations.interfaces) {
|
65
|
+
types.add(impl.name)
|
66
|
+
}
|
67
|
+
} // If union, add all member types
|
68
|
+
else if (isUnionType(type)) {
|
69
|
+
for (const member of type.getTypes()) {
|
70
|
+
types.add(member.name)
|
71
|
+
}
|
72
|
+
}
|
73
|
+
}
|
74
|
+
|
75
|
+
// Helper to resolve field type from selection
|
76
|
+
const resolveFieldType = (
|
77
|
+
fieldName: string,
|
78
|
+
parentTypeName: string | null,
|
79
|
+
): string | null => {
|
80
|
+
if (!parentTypeName) return null
|
81
|
+
|
82
|
+
const parentType = schema.getType(parentTypeName)
|
83
|
+
if (!parentType || !isObjectType(parentType) && !isInterfaceType(parentType)) {
|
84
|
+
return null
|
85
|
+
}
|
86
|
+
|
87
|
+
const field = parentType.getFields()[fieldName]
|
88
|
+
if (!field) return null
|
89
|
+
|
90
|
+
const namedType = getNamedType(field.type)
|
91
|
+
return namedType.name
|
92
|
+
}
|
93
|
+
|
94
|
+
// Track the current type context as we traverse
|
95
|
+
let currentType: string | null = null
|
96
|
+
|
97
|
+
visit(ast, {
|
98
|
+
[Kind.OPERATION_DEFINITION]: (node) => {
|
99
|
+
// Set initial type based on operation
|
100
|
+
switch (node.operation) {
|
101
|
+
case 'query':
|
102
|
+
currentType = schema.getQueryType()?.name ?? null
|
103
|
+
break
|
104
|
+
case 'mutation':
|
105
|
+
currentType = schema.getMutationType()?.name ?? null
|
106
|
+
break
|
107
|
+
case 'subscription':
|
108
|
+
currentType = schema.getSubscriptionType()?.name ?? null
|
109
|
+
break
|
110
|
+
}
|
111
|
+
if (currentType) {
|
112
|
+
addType(currentType)
|
113
|
+
}
|
114
|
+
},
|
115
|
+
|
116
|
+
[Kind.FIELD]: {
|
117
|
+
enter(node) {
|
118
|
+
if (!currentType) return
|
119
|
+
|
120
|
+
// Special handling for __typename
|
121
|
+
if (node.name.value === '__typename') return
|
122
|
+
|
123
|
+
const fieldType = resolveFieldType(node.name.value, currentType)
|
124
|
+
if (fieldType) {
|
125
|
+
addType(fieldType)
|
126
|
+
// Update context for nested selections
|
127
|
+
if (node.selectionSet) {
|
128
|
+
currentType = fieldType
|
129
|
+
}
|
130
|
+
}
|
131
|
+
},
|
132
|
+
leave(node) {
|
133
|
+
// Restore parent context when leaving field with selection set
|
134
|
+
if (node.selectionSet && currentType) {
|
135
|
+
// This is simplified - in production would need proper context stack
|
136
|
+
}
|
137
|
+
},
|
138
|
+
},
|
139
|
+
|
140
|
+
[Kind.INLINE_FRAGMENT]: (node) => {
|
141
|
+
if (node.typeCondition) {
|
142
|
+
const typeName = node.typeCondition.name.value
|
143
|
+
addType(typeName)
|
144
|
+
currentType = typeName
|
145
|
+
}
|
146
|
+
},
|
147
|
+
|
148
|
+
[Kind.FRAGMENT_SPREAD]: (node) => {
|
149
|
+
// Fragment spreads reference fragment definitions which have their own type
|
150
|
+
// In a full implementation, we'd look up the fragment definition
|
151
|
+
},
|
152
|
+
|
153
|
+
[Kind.FRAGMENT_DEFINITION]: (node) => {
|
154
|
+
const typeName = node.typeCondition.name.value
|
155
|
+
addType(typeName)
|
156
|
+
currentType = typeName
|
157
|
+
},
|
158
|
+
})
|
159
|
+
|
160
|
+
return types
|
161
|
+
}
|
162
|
+
|
163
|
+
// ============================================================================
|
164
|
+
// Helper Functions
|
165
|
+
// ============================================================================
|
166
|
+
|
167
|
+
/**
|
168
|
+
* Get a schema by version from the catalog.
|
169
|
+
*/
|
170
|
+
const getSchemaByVersion = (
|
171
|
+
catalog: Catalog.Catalog,
|
172
|
+
version: Version.Version,
|
173
|
+
): Schema.Schema | undefined => {
|
174
|
+
if (Catalog.Versioned.is(catalog)) {
|
175
|
+
// Use HashMap.get for O(1) lookup
|
176
|
+
return HashMap.get(catalog.entries, version).pipe(Option.getOrElse(() => undefined))
|
177
|
+
}
|
178
|
+
// For unversioned catalog, return the single schema if version matches
|
179
|
+
if (Catalog.Unversioned.is(catalog)) {
|
180
|
+
// Unversioned catalogs don't have versions, so we can't match
|
181
|
+
return undefined
|
182
|
+
}
|
183
|
+
return undefined
|
184
|
+
}
|
185
|
+
|
186
|
+
// ============================================================================
|
187
|
+
// Index Creation
|
188
|
+
// ============================================================================
|
189
|
+
|
190
|
+
/**
|
191
|
+
* Create a type usage index from examples and schemas.
|
192
|
+
*
|
193
|
+
* Processes all examples and their documents (versioned or unversioned)
|
194
|
+
* to build an index of which types are used in which examples.
|
195
|
+
*/
|
196
|
+
export const createTypeUsageIndex = (
|
197
|
+
examples: readonly Example[],
|
198
|
+
schemasCatalog: Catalog.Catalog,
|
199
|
+
): TypeUsageIndex => {
|
200
|
+
let index = HashMap.empty<VersionKey, HashMap.HashMap<string, HashSet.HashSet<ExampleReference>>>()
|
201
|
+
|
202
|
+
for (const example of examples) {
|
203
|
+
// Process based on document type
|
204
|
+
if (Document.Unversioned.is(example.document)) {
|
205
|
+
// Unversioned document
|
206
|
+
const schema = Catalog.getLatest(schemasCatalog)
|
207
|
+
const types = extractTypesFromQuery(example.document.document, schema.definition)
|
208
|
+
|
209
|
+
for (const typeName of types) {
|
210
|
+
// For unversioned, use the latest version from the catalog
|
211
|
+
const latestVersion = Catalog.getLatestVersion(schemasCatalog) ?? Version.fromString('1.0.0')
|
212
|
+
index = addExampleToIndex(index, UNVERSIONED_KEY, typeName, example, latestVersion)
|
213
|
+
}
|
214
|
+
} else if (Document.Versioned.is(example.document)) {
|
215
|
+
// Versioned document - process each version covered
|
216
|
+
const allVersions = Document.Versioned.getAllVersions(example.document)
|
217
|
+
|
218
|
+
for (const version of allVersions) {
|
219
|
+
const schema = getSchemaByVersion(schemasCatalog, version)
|
220
|
+
if (!schema) continue
|
221
|
+
|
222
|
+
const documentString = Document.Versioned.getContentForVersion(example.document, version)
|
223
|
+
if (!documentString) continue
|
224
|
+
|
225
|
+
const types = extractTypesFromQuery(documentString, schema.definition)
|
226
|
+
|
227
|
+
for (const typeName of types) {
|
228
|
+
index = addExampleToIndex(index, version, typeName, example, version)
|
229
|
+
}
|
230
|
+
}
|
231
|
+
}
|
232
|
+
}
|
233
|
+
|
234
|
+
return index
|
235
|
+
}
|
236
|
+
|
237
|
+
/**
|
238
|
+
* Helper to add an example to the index for a specific version and type.
|
239
|
+
*/
|
240
|
+
const addExampleToIndex = (
|
241
|
+
index: TypeUsageIndex,
|
242
|
+
versionKey: VersionKey,
|
243
|
+
typeName: string,
|
244
|
+
example: Example,
|
245
|
+
version: Version.Version,
|
246
|
+
): TypeUsageIndex => {
|
247
|
+
// Create lightweight reference using the schema's make constructor
|
248
|
+
const exampleRef = ExampleReference.make({ name: example.name, version })
|
249
|
+
|
250
|
+
// Get or create the version's type map
|
251
|
+
const versionMap = HashMap.get(index, versionKey).pipe(
|
252
|
+
Option.getOrElse(HashMap.empty<string, HashSet.HashSet<S.Schema.Type<typeof ExampleReference>>>),
|
253
|
+
)
|
254
|
+
|
255
|
+
// Get or create the type's example set
|
256
|
+
const examples = HashMap.get(versionMap, typeName).pipe(
|
257
|
+
Option.getOrElse(HashSet.empty<S.Schema.Type<typeof ExampleReference>>),
|
258
|
+
)
|
259
|
+
|
260
|
+
// Add example reference to set (HashSet handles deduplication automatically)
|
261
|
+
const updatedExamples = HashSet.add(examples, exampleRef)
|
262
|
+
|
263
|
+
// Update both maps immutably
|
264
|
+
const updatedVersionMap = HashMap.set(
|
265
|
+
versionMap,
|
266
|
+
typeName,
|
267
|
+
updatedExamples,
|
268
|
+
)
|
269
|
+
|
270
|
+
return HashMap.set(index, versionKey, updatedVersionMap)
|
271
|
+
}
|
272
|
+
|
273
|
+
// ============================================================================
|
274
|
+
// Query Functions
|
275
|
+
// ============================================================================
|
276
|
+
|
277
|
+
/**
|
278
|
+
* Get example references that use a specific type in a specific version.
|
279
|
+
*/
|
280
|
+
export const getExampleReferencesForType = (
|
281
|
+
typeUsageIndex: TypeUsageIndex,
|
282
|
+
typeName: string,
|
283
|
+
version: Version.Version | null = null,
|
284
|
+
): HashSet.HashSet<S.Schema.Type<typeof ExampleReference>> => {
|
285
|
+
const versionKey = version ?? UNVERSIONED_KEY
|
286
|
+
|
287
|
+
return HashMap.get(typeUsageIndex, versionKey).pipe(
|
288
|
+
Option.flatMap(versionMap => HashMap.get(versionMap, typeName)),
|
289
|
+
Option.getOrElse(HashSet.empty<S.Schema.Type<typeof ExampleReference>>),
|
290
|
+
)
|
291
|
+
}
|
@@ -40,7 +40,7 @@ export const createReferenceVersionPath = (version?: Version.Version): string =>
|
|
40
40
|
if (version === undefined) return ''
|
41
41
|
// VERSION_LATEST is not used with the Version type anymore
|
42
42
|
// Just use the version string directly
|
43
|
-
return `/${segmentLiterals.version}/${Version.
|
43
|
+
return `/${segmentLiterals.version}/${Version.encodeSync(version)}`
|
44
44
|
}
|
45
45
|
|
46
46
|
export const joinSegmentsAndPaths = (
|
@@ -153,7 +153,7 @@ export const createChangelogUrl = (revisionDate: string, schema: Schema.Schema):
|
|
153
153
|
// Create base changelog path with version if needed
|
154
154
|
const version = Schema.getVersion(schema)
|
155
155
|
const changelogBase = version
|
156
|
-
? joinSegmentsAndPaths(segmentLiterals.changelog, segmentLiterals.version, Version.
|
156
|
+
? joinSegmentsAndPaths(segmentLiterals.changelog, segmentLiterals.version, Version.encodeSync(version))
|
157
157
|
: `/${segmentLiterals.changelog}`
|
158
158
|
|
159
159
|
// Add anchor for the specific date
|
@@ -0,0 +1 @@
|
|
1
|
+
export * as Project from './$$.js'
|
package/src/api/schema/$.test.ts
CHANGED
@@ -3,7 +3,7 @@ import { Catalog } from '#lib/catalog/$'
|
|
3
3
|
import { Grafaid } from '#lib/grafaid'
|
4
4
|
import { MemoryFilesystem } from '#lib/memory-filesystem/$'
|
5
5
|
import * as NodeFileSystem from '@effect/platform-node/NodeFileSystem'
|
6
|
-
import { Effect } from 'effect'
|
6
|
+
import { Effect, HashMap } from 'effect'
|
7
7
|
import { expect } from 'vitest'
|
8
8
|
import { Test } from '../../../tests/unit/helpers/test.js'
|
9
9
|
import { Schema } from './$.js'
|
@@ -421,7 +421,7 @@ testWithFileSystem<BaseTestCase & {
|
|
421
421
|
expect(result!._tag).toBe('CatalogVersioned')
|
422
422
|
if (expected.versionCount !== undefined) {
|
423
423
|
const versioned = result as Catalog.Versioned.Versioned
|
424
|
-
expect(versioned.entries
|
424
|
+
expect(HashMap.size(versioned.entries)).toBe(expected.versionCount)
|
425
425
|
}
|
426
426
|
} else {
|
427
427
|
expect(result!._tag).toBe('CatalogUnversioned')
|
@@ -10,7 +10,7 @@ import { debugPolen } from '#singletons/debug'
|
|
10
10
|
import { PlatformError } from '@effect/platform/Error'
|
11
11
|
import { FileSystem } from '@effect/platform/FileSystem'
|
12
12
|
import { Arr, Path } from '@wollybeard/kit'
|
13
|
-
import { Effect } from 'effect'
|
13
|
+
import { Effect, HashMap } from 'effect'
|
14
14
|
import type { GraphQLSchema } from 'graphql'
|
15
15
|
|
16
16
|
const debug = debugPolen.sub(`schema:data-source-versioned-schema-directory`)
|
@@ -247,7 +247,7 @@ export const readOrThrow = (
|
|
247
247
|
// Build a map of versions for parent lookups
|
248
248
|
const versionMap = new Map<string, typeof versions[0]>()
|
249
249
|
for (const version of versions) {
|
250
|
-
versionMap.set(Version.
|
250
|
+
versionMap.set(Version.encodeSync(version.version), version)
|
251
251
|
}
|
252
252
|
|
253
253
|
// Create catalog entries for each version
|
@@ -257,7 +257,7 @@ export const readOrThrow = (
|
|
257
257
|
// Get parent schema for first revision comparison if this is a branched version
|
258
258
|
let parentSchemaForComparison: GraphQLSchema | null = null
|
259
259
|
if (version.parentVersion && version.branchDate) {
|
260
|
-
const parentVersionStr = Version.
|
260
|
+
const parentVersionStr = Version.encodeSync(version.parentVersion)
|
261
261
|
const parentVersionData = versionMap.get(parentVersionStr)
|
262
262
|
if (parentVersionData) {
|
263
263
|
const matchingRevisionIndex = parentVersionData.revisions.findIndex(
|
@@ -301,14 +301,14 @@ export const readOrThrow = (
|
|
301
301
|
{ concurrency: 1 }, // Sequential for correct changeset calculation
|
302
302
|
)
|
303
303
|
|
304
|
-
// Get the latest schema definition
|
304
|
+
// Get the latest schema definition (last element since revisions are still in chronological order)
|
305
305
|
const latestRevision = version.revisions[version.revisions.length - 1]
|
306
306
|
const schemaDefinition = latestRevision?.schema ?? Grafaid.Schema.empty
|
307
307
|
|
308
308
|
// Find parent schema based on parentVersion and branchDate
|
309
309
|
let parentSchema: Schema.Versioned.Versioned | null = null
|
310
310
|
if (version.parentVersion) {
|
311
|
-
const parentVersionStr = Version.
|
311
|
+
const parentVersionStr = Version.encodeSync(version.parentVersion)
|
312
312
|
const parentVersionData = versionMap.get(parentVersionStr)
|
313
313
|
|
314
314
|
if (parentVersionData) {
|
@@ -393,9 +393,14 @@ export const readOrThrow = (
|
|
393
393
|
// Reverse to have newest first
|
394
394
|
catalogEntries.reverse()
|
395
395
|
|
396
|
+
// Convert array to HashMap with version as key
|
397
|
+
const entriesMap = HashMap.fromIterable(
|
398
|
+
catalogEntries.map(entry => [entry.version, entry] as const),
|
399
|
+
)
|
400
|
+
|
396
401
|
debug(`computed ${catalogEntries.length} entries`)
|
397
402
|
return Catalog.Versioned.make({
|
398
|
-
entries:
|
403
|
+
entries: entriesMap,
|
399
404
|
})
|
400
405
|
})
|
401
406
|
|
package/src/api/schema/load.ts
CHANGED
@@ -142,7 +142,7 @@ export const loadOrNull = (
|
|
142
142
|
const catalog = loadedSchema.data as Catalog.Catalog
|
143
143
|
Catalog.fold(
|
144
144
|
(versioned) => {
|
145
|
-
for (const schema of versioned
|
145
|
+
for (const schema of Catalog.Versioned.getAll(versioned)) {
|
146
146
|
Augmentations.apply(schema.definition, augmentations)
|
147
147
|
}
|
148
148
|
},
|
@@ -0,0 +1 @@
|
|
1
|
+
export * from './typings.js'
|
@@ -0,0 +1 @@
|
|
1
|
+
export * as Typings from './$$.js'
|