@takeshape/schema 11.143.2 → 11.154.1
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/examples/latest/all-fields-shapes-inline.json +1 -1
- package/examples/latest/all-fields-shapes.json +1 -1
- package/examples/latest/betzino.json +1 -1
- package/examples/latest/blog-schema.json +1 -1
- package/examples/latest/brewery-schema.json +1 -1
- package/examples/latest/chat-agent-schema.json +1 -1
- package/examples/latest/clear-cache-schema.json +1 -1
- package/examples/latest/complex-project-schema.json +1 -1
- package/examples/latest/complex-schema.json +1 -1
- package/examples/latest/edit-schema.json +1 -1
- package/examples/latest/frank-and-fred-schema.json +1 -1
- package/examples/latest/generate-agent-schema.json +1 -1
- package/examples/latest/klirr-schema.json +1 -1
- package/examples/latest/layers/rick-and-morty-layer.json +1 -1
- package/examples/latest/layers/shopify-layer-2023-01.json +1 -1
- package/examples/latest/layers/shopify-storefront-2023-04.json +1 -1
- package/examples/latest/layers/wordpress-2024-01.json +1 -1
- package/examples/latest/massive-schema.json +1 -1
- package/examples/latest/mill-components-schema.json +1 -1
- package/examples/latest/nested-shape-arrays.json +1 -1
- package/examples/latest/one-earth.json +1 -1
- package/examples/latest/pet-oneof-array.json +1 -1
- package/examples/latest/post-schema.json +1 -1
- package/examples/latest/pruned-shopify-product-schema.json +1 -1
- package/examples/latest/rag-example.json +1 -1
- package/examples/latest/real-world-schema.json +1 -1
- package/examples/latest/recursive-repeater-schema.json +1 -1
- package/examples/latest/recursive-schema.json +1 -1
- package/examples/latest/rick-and-morty-ast.json +1 -1
- package/examples/latest/rick-and-morty-graphql.json +1 -1
- package/examples/latest/rick-and-morty-rest.json +1 -1
- package/examples/latest/rick-and-morty-user-schema.json +1 -1
- package/examples/latest/rick-and-morty-with-indexing.json +1 -1
- package/examples/latest/schema-where-filter.json +1 -1
- package/examples/latest/schema-with-repeater-draftjs.json +1 -1
- package/examples/latest/schema-with-rick-and-morty.json +1 -1
- package/examples/latest/shape-books-v3_2_0.json +1 -1
- package/examples/latest/shape-books.json +1 -1
- package/examples/latest/shape-editor-schema-edited.json +1 -1
- package/examples/latest/shape-editor-schema-initial.json +1 -1
- package/examples/latest/shapedb-crud-every-prop-type.json +1 -1
- package/examples/latest/shopify-lookbook.json +1 -1
- package/examples/latest/shopify-product-2022-07.json +1 -1
- package/examples/latest/shopify-product-2023-04.json +1 -1
- package/examples/latest/shopify-store-with-widget.json +1 -1
- package/examples/latest/stripe-product-runtime-schema.json +1 -1
- package/examples/latest/stripe-starter-resolved.json +1 -1
- package/examples/latest/user-schema-no-required.json +1 -1
- package/examples/latest/user-schema-with-defaults.json +1 -1
- package/examples/latest/valvoline-ai-demo.json +1461 -1421
- package/examples/latest/vector-search-schema.json +1 -1
- package/package.json +10 -9
- package/dist/agents.d.ts +0 -62
- package/dist/agents.js +0 -338
- package/dist/api-version.d.ts +0 -5
- package/dist/api-version.js +0 -17
- package/dist/auth-schemas.d.ts +0 -128
- package/dist/auth-schemas.js +0 -7
- package/dist/auth-utils.d.ts +0 -5
- package/dist/auth-utils.js +0 -6
- package/dist/builtin-schema.d.ts +0 -18
- package/dist/builtin-schema.js +0 -683
- package/dist/constants.d.ts +0 -1
- package/dist/constants.js +0 -1
- package/dist/content-schema-transform.d.ts +0 -35
- package/dist/content-schema-transform.js +0 -162
- package/dist/create-input-schema.d.ts +0 -9
- package/dist/create-input-schema.js +0 -68
- package/dist/enum.d.ts +0 -2
- package/dist/enum.js +0 -9
- package/dist/flatten-templates.d.ts +0 -2
- package/dist/flatten-templates.js +0 -20
- package/dist/get-is-leaf.d.ts +0 -3
- package/dist/get-is-leaf.js +0 -56
- package/dist/index.d.ts +0 -62
- package/dist/index.js +0 -59
- package/dist/interfaces.d.ts +0 -14
- package/dist/interfaces.js +0 -86
- package/dist/layers/layers.d.ts +0 -26
- package/dist/layers/layers.js +0 -301
- package/dist/layers/refs.d.ts +0 -102
- package/dist/layers/refs.js +0 -220
- package/dist/layers/type-utils.d.ts +0 -59
- package/dist/layers/type-utils.js +0 -118
- package/dist/layers/visitor.d.ts +0 -5
- package/dist/layers/visitor.js +0 -38
- package/dist/migration/index.d.ts +0 -73
- package/dist/migration/index.js +0 -103
- package/dist/migration/to/v3.0.0.d.ts +0 -4
- package/dist/migration/to/v3.0.0.js +0 -212
- package/dist/migration/to/v3.1.0.d.ts +0 -4
- package/dist/migration/to/v3.1.0.js +0 -194
- package/dist/migration/to/v3.10.0.d.ts +0 -4
- package/dist/migration/to/v3.10.0.js +0 -67
- package/dist/migration/to/v3.11.0.d.ts +0 -4
- package/dist/migration/to/v3.11.0.js +0 -85
- package/dist/migration/to/v3.12.3.d.ts +0 -4
- package/dist/migration/to/v3.12.3.js +0 -87
- package/dist/migration/to/v3.13.0.d.ts +0 -4
- package/dist/migration/to/v3.13.0.js +0 -17
- package/dist/migration/to/v3.17.0.d.ts +0 -4
- package/dist/migration/to/v3.17.0.js +0 -22
- package/dist/migration/to/v3.18.0.d.ts +0 -4
- package/dist/migration/to/v3.18.0.js +0 -64
- package/dist/migration/to/v3.18.1.d.ts +0 -4
- package/dist/migration/to/v3.18.1.js +0 -12
- package/dist/migration/to/v3.18.2.d.ts +0 -4
- package/dist/migration/to/v3.18.2.js +0 -19
- package/dist/migration/to/v3.20.0.d.ts +0 -4
- package/dist/migration/to/v3.20.0.js +0 -24
- package/dist/migration/to/v3.22.0.d.ts +0 -4
- package/dist/migration/to/v3.22.0.js +0 -25
- package/dist/migration/to/v3.24.0.d.ts +0 -4
- package/dist/migration/to/v3.24.0.js +0 -11
- package/dist/migration/to/v3.25.0.d.ts +0 -4
- package/dist/migration/to/v3.25.0.js +0 -11
- package/dist/migration/to/v3.3.0.d.ts +0 -4
- package/dist/migration/to/v3.3.0.js +0 -13
- package/dist/migration/to/v3.31.0.d.ts +0 -4
- package/dist/migration/to/v3.31.0.js +0 -38
- package/dist/migration/to/v3.32.0.d.ts +0 -4
- package/dist/migration/to/v3.32.0.js +0 -59
- package/dist/migration/to/v3.34.0.d.ts +0 -6
- package/dist/migration/to/v3.34.0.js +0 -111
- package/dist/migration/to/v3.36.0.d.ts +0 -4
- package/dist/migration/to/v3.36.0.js +0 -22
- package/dist/migration/to/v3.39.0.d.ts +0 -4
- package/dist/migration/to/v3.39.0.js +0 -45
- package/dist/migration/to/v3.40.0.d.ts +0 -4
- package/dist/migration/to/v3.40.0.js +0 -26
- package/dist/migration/to/v3.46.0.d.ts +0 -4
- package/dist/migration/to/v3.46.0.js +0 -35
- package/dist/migration/to/v3.57.0.d.ts +0 -4
- package/dist/migration/to/v3.57.0.js +0 -18
- package/dist/migration/to/v3.9.0.d.ts +0 -4
- package/dist/migration/to/v3.9.0.js +0 -79
- package/dist/migration/types.d.ts +0 -26
- package/dist/migration/types.js +0 -3
- package/dist/migration/utils.d.ts +0 -2
- package/dist/migration/utils.js +0 -6
- package/dist/mocks.d.ts +0 -14
- package/dist/mocks.js +0 -58
- package/dist/models/agent.d.ts +0 -3
- package/dist/models/agent.js +0 -29
- package/dist/models/project-schema.d.ts +0 -18
- package/dist/models/project-schema.js +0 -119
- package/dist/models/query.d.ts +0 -3
- package/dist/models/query.js +0 -38
- package/dist/models/runtime-schema.d.ts +0 -9
- package/dist/models/runtime-schema.js +0 -20
- package/dist/models/shape.d.ts +0 -4
- package/dist/models/shape.js +0 -36
- package/dist/models/types.d.ts +0 -36
- package/dist/models/types.js +0 -1
- package/dist/models/user-schema.d.ts +0 -7
- package/dist/models/user-schema.js +0 -9
- package/dist/patterns.d.ts +0 -12
- package/dist/patterns.js +0 -1
- package/dist/project-schema/index.d.ts +0 -211
- package/dist/project-schema/index.js +0 -83
- package/dist/project-schema/latest.d.ts +0 -2619
- package/dist/project-schema/latest.js +0 -7
- package/dist/project-schema/migrate.d.ts +0 -4
- package/dist/project-schema/migrate.js +0 -218
- package/dist/project-schema/v1.0.0.d.ts +0 -299
- package/dist/project-schema/v1.0.0.js +0 -7
- package/dist/project-schema/v3.0.0.d.ts +0 -478
- package/dist/project-schema/v3.0.0.js +0 -7
- package/dist/project-schema/v3.1.0.d.ts +0 -621
- package/dist/project-schema/v3.1.0.js +0 -7
- package/dist/project-schema/v3.10.0.d.ts +0 -1201
- package/dist/project-schema/v3.10.0.js +0 -7
- package/dist/project-schema/v3.11.0.d.ts +0 -1210
- package/dist/project-schema/v3.11.0.js +0 -7
- package/dist/project-schema/v3.12.0.d.ts +0 -1214
- package/dist/project-schema/v3.12.0.js +0 -7
- package/dist/project-schema/v3.12.1.d.ts +0 -1273
- package/dist/project-schema/v3.12.1.js +0 -7
- package/dist/project-schema/v3.12.2.d.ts +0 -1283
- package/dist/project-schema/v3.12.2.js +0 -7
- package/dist/project-schema/v3.12.3.d.ts +0 -1306
- package/dist/project-schema/v3.12.3.js +0 -7
- package/dist/project-schema/v3.13.0.d.ts +0 -1317
- package/dist/project-schema/v3.13.0.js +0 -7
- package/dist/project-schema/v3.13.1.d.ts +0 -1412
- package/dist/project-schema/v3.13.1.js +0 -7
- package/dist/project-schema/v3.14.0.d.ts +0 -1436
- package/dist/project-schema/v3.14.0.js +0 -7
- package/dist/project-schema/v3.15.0.d.ts +0 -1458
- package/dist/project-schema/v3.15.0.js +0 -7
- package/dist/project-schema/v3.16.0.d.ts +0 -1470
- package/dist/project-schema/v3.16.0.js +0 -7
- package/dist/project-schema/v3.17.0.d.ts +0 -1467
- package/dist/project-schema/v3.17.0.js +0 -7
- package/dist/project-schema/v3.17.1.d.ts +0 -1468
- package/dist/project-schema/v3.17.1.js +0 -7
- package/dist/project-schema/v3.18.0.d.ts +0 -1333
- package/dist/project-schema/v3.18.0.js +0 -7
- package/dist/project-schema/v3.18.1.d.ts +0 -1332
- package/dist/project-schema/v3.18.1.js +0 -7
- package/dist/project-schema/v3.18.2.d.ts +0 -1332
- package/dist/project-schema/v3.18.2.js +0 -7
- package/dist/project-schema/v3.19.0.d.ts +0 -1336
- package/dist/project-schema/v3.19.0.js +0 -7
- package/dist/project-schema/v3.2.0.d.ts +0 -632
- package/dist/project-schema/v3.2.0.js +0 -7
- package/dist/project-schema/v3.20.0.d.ts +0 -1336
- package/dist/project-schema/v3.20.0.js +0 -7
- package/dist/project-schema/v3.21.0.d.ts +0 -1338
- package/dist/project-schema/v3.21.0.js +0 -7
- package/dist/project-schema/v3.22.0.d.ts +0 -1344
- package/dist/project-schema/v3.22.0.js +0 -7
- package/dist/project-schema/v3.23.0.d.ts +0 -1376
- package/dist/project-schema/v3.23.0.js +0 -7
- package/dist/project-schema/v3.24.0.d.ts +0 -1364
- package/dist/project-schema/v3.24.0.js +0 -7
- package/dist/project-schema/v3.25.0.d.ts +0 -1363
- package/dist/project-schema/v3.25.0.js +0 -7
- package/dist/project-schema/v3.26.0.d.ts +0 -1388
- package/dist/project-schema/v3.26.0.js +0 -7
- package/dist/project-schema/v3.27.0.d.ts +0 -1397
- package/dist/project-schema/v3.27.0.js +0 -7
- package/dist/project-schema/v3.28.0.d.ts +0 -1416
- package/dist/project-schema/v3.28.0.js +0 -7
- package/dist/project-schema/v3.29.0.d.ts +0 -1423
- package/dist/project-schema/v3.29.0.js +0 -7
- package/dist/project-schema/v3.3.0.d.ts +0 -632
- package/dist/project-schema/v3.3.0.js +0 -7
- package/dist/project-schema/v3.30.0.d.ts +0 -1416
- package/dist/project-schema/v3.30.0.js +0 -7
- package/dist/project-schema/v3.31.0.d.ts +0 -1448
- package/dist/project-schema/v3.31.0.js +0 -7
- package/dist/project-schema/v3.32.0.d.ts +0 -1439
- package/dist/project-schema/v3.32.0.js +0 -7
- package/dist/project-schema/v3.33.0.d.ts +0 -1445
- package/dist/project-schema/v3.33.0.js +0 -7
- package/dist/project-schema/v3.34.0.d.ts +0 -1445
- package/dist/project-schema/v3.34.0.js +0 -7
- package/dist/project-schema/v3.35.0.d.ts +0 -1464
- package/dist/project-schema/v3.35.0.js +0 -7
- package/dist/project-schema/v3.36.0.d.ts +0 -1470
- package/dist/project-schema/v3.36.0.js +0 -7
- package/dist/project-schema/v3.37.0.d.ts +0 -1522
- package/dist/project-schema/v3.37.0.js +0 -7
- package/dist/project-schema/v3.38.0.d.ts +0 -1522
- package/dist/project-schema/v3.38.0.js +0 -7
- package/dist/project-schema/v3.39.0.d.ts +0 -1529
- package/dist/project-schema/v3.39.0.js +0 -7
- package/dist/project-schema/v3.4.0.d.ts +0 -624
- package/dist/project-schema/v3.4.0.js +0 -7
- package/dist/project-schema/v3.40.0.d.ts +0 -1530
- package/dist/project-schema/v3.40.0.js +0 -7
- package/dist/project-schema/v3.41.0.d.ts +0 -1530
- package/dist/project-schema/v3.41.0.js +0 -7
- package/dist/project-schema/v3.42.0.d.ts +0 -1534
- package/dist/project-schema/v3.42.0.js +0 -7
- package/dist/project-schema/v3.43.0.d.ts +0 -1536
- package/dist/project-schema/v3.43.0.js +0 -7
- package/dist/project-schema/v3.44.0.d.ts +0 -1621
- package/dist/project-schema/v3.44.0.js +0 -7
- package/dist/project-schema/v3.45.0.d.ts +0 -1650
- package/dist/project-schema/v3.45.0.js +0 -7
- package/dist/project-schema/v3.46.0.d.ts +0 -1703
- package/dist/project-schema/v3.46.0.js +0 -7
- package/dist/project-schema/v3.47.0.d.ts +0 -1736
- package/dist/project-schema/v3.47.0.js +0 -7
- package/dist/project-schema/v3.48.0.d.ts +0 -2208
- package/dist/project-schema/v3.48.0.js +0 -7
- package/dist/project-schema/v3.49.0.d.ts +0 -2217
- package/dist/project-schema/v3.49.0.js +0 -7
- package/dist/project-schema/v3.5.0.d.ts +0 -649
- package/dist/project-schema/v3.5.0.js +0 -7
- package/dist/project-schema/v3.5.1.d.ts +0 -649
- package/dist/project-schema/v3.5.1.js +0 -7
- package/dist/project-schema/v3.50.0.d.ts +0 -2269
- package/dist/project-schema/v3.50.0.js +0 -7
- package/dist/project-schema/v3.51.0.d.ts +0 -2269
- package/dist/project-schema/v3.51.0.js +0 -7
- package/dist/project-schema/v3.52.0.d.ts +0 -2269
- package/dist/project-schema/v3.52.0.js +0 -7
- package/dist/project-schema/v3.53.0.d.ts +0 -2350
- package/dist/project-schema/v3.53.0.js +0 -7
- package/dist/project-schema/v3.54.0.d.ts +0 -2369
- package/dist/project-schema/v3.54.0.js +0 -7
- package/dist/project-schema/v3.55.0.d.ts +0 -2369
- package/dist/project-schema/v3.55.0.js +0 -7
- package/dist/project-schema/v3.56.0.d.ts +0 -2405
- package/dist/project-schema/v3.56.0.js +0 -7
- package/dist/project-schema/v3.57.0.d.ts +0 -2601
- package/dist/project-schema/v3.57.0.js +0 -7
- package/dist/project-schema/v3.58.0.d.ts +0 -2601
- package/dist/project-schema/v3.58.0.js +0 -7
- package/dist/project-schema/v3.59.0.d.ts +0 -2619
- package/dist/project-schema/v3.59.0.js +0 -7
- package/dist/project-schema/v3.6.0.d.ts +0 -658
- package/dist/project-schema/v3.6.0.js +0 -7
- package/dist/project-schema/v3.7.0.d.ts +0 -961
- package/dist/project-schema/v3.7.0.js +0 -7
- package/dist/project-schema/v3.8.0.d.ts +0 -979
- package/dist/project-schema/v3.8.0.js +0 -7
- package/dist/project-schema/v3.9.0.d.ts +0 -1178
- package/dist/project-schema/v3.9.0.js +0 -7
- package/dist/project-schema/v4.0.0.d.ts +0 -1328
- package/dist/project-schema/v4.0.0.js +0 -7
- package/dist/refs.d.ts +0 -218
- package/dist/refs.js +0 -616
- package/dist/relationships.d.ts +0 -40
- package/dist/relationships.js +0 -302
- package/dist/resolvers/ai/abort-agent-message-args.d.ts +0 -16
- package/dist/resolvers/ai/abort-agent-message-args.js +0 -13
- package/dist/resolvers/ai/abort-agent-message-response.d.ts +0 -39
- package/dist/resolvers/ai/abort-agent-message-response.js +0 -19
- package/dist/resolvers/ai/agent-chat-args.d.ts +0 -17
- package/dist/resolvers/ai/agent-chat-args.js +0 -14
- package/dist/resolvers/ai/agent-chat-payload.d.ts +0 -35
- package/dist/resolvers/ai/agent-chat-payload.js +0 -26
- package/dist/resolvers/ai/agent-chat-response.d.ts +0 -289
- package/dist/resolvers/ai/agent-chat-response.js +0 -21
- package/dist/resolvers/ai/agent-generate-args.d.ts +0 -17
- package/dist/resolvers/ai/agent-generate-args.js +0 -14
- package/dist/resolvers/ai/agent-message-input.d.ts +0 -73
- package/dist/resolvers/ai/agent-message-input.js +0 -39
- package/dist/resolvers/ai/agent-message-output.d.ts +0 -169
- package/dist/resolvers/ai/agent-message-output.js +0 -77
- package/dist/resolvers/ai/agent-message-payload.d.ts +0 -507
- package/dist/resolvers/ai/agent-message-payload.js +0 -156
- package/dist/resolvers/ai/agent-run-mode.d.ts +0 -7
- package/dist/resolvers/ai/agent-run-mode.js +0 -9
- package/dist/resolvers/ai/agent-session-payload.d.ts +0 -515
- package/dist/resolvers/ai/agent-session-payload.js +0 -175
- package/dist/resolvers/ai/create-agent-session-response.d.ts +0 -199
- package/dist/resolvers/ai/create-agent-session-response.js +0 -9
- package/dist/resolvers/ai/embedding-search.d.ts +0 -54
- package/dist/resolvers/ai/embedding-search.js +0 -46
- package/dist/resolvers/ai/get-agent-message-args.d.ts +0 -16
- package/dist/resolvers/ai/get-agent-message-args.js +0 -13
- package/dist/resolvers/ai/get-agent-message-response.d.ts +0 -805
- package/dist/resolvers/ai/get-agent-message-response.js +0 -63
- package/dist/resolvers/ai/inspect-agent-args.d.ts +0 -16
- package/dist/resolvers/ai/inspect-agent-args.js +0 -13
- package/dist/resolvers/ai/inspect-agent-response.d.ts +0 -504
- package/dist/resolvers/ai/inspect-agent-response.js +0 -48
- package/dist/resolvers/ai/send-agent-feedback-args.d.ts +0 -52
- package/dist/resolvers/ai/send-agent-feedback-args.js +0 -16
- package/dist/resolvers/ai/send-agent-message-args.d.ts +0 -48
- package/dist/resolvers/ai/send-agent-message-args.js +0 -36
- package/dist/resolvers/ai/send-agent-message-response.d.ts +0 -353
- package/dist/resolvers/ai/send-agent-message-response.js +0 -51
- package/dist/resolvers/ai/types.d.ts +0 -6
- package/dist/resolvers/ai/types.js +0 -1
- package/dist/resolvers/takeshape/assets/asset-image-meta.d.ts +0 -79
- package/dist/resolvers/takeshape/assets/asset-image-meta.js +0 -98
- package/dist/resolvers/takeshape/assets/asset-image-params.d.ts +0 -901
- package/dist/resolvers/takeshape/assets/asset-image-params.js +0 -726
- package/dist/resolvers/takeshape/assets/asset-image.d.ts +0 -17
- package/dist/resolvers/takeshape/assets/asset-image.js +0 -15
- package/dist/resolvers/takeshape/assets/asset.d.ts +0 -125
- package/dist/resolvers/takeshape/assets/asset.js +0 -107
- package/dist/resolvers/takeshape/assets/constants.d.ts +0 -11
- package/dist/resolvers/takeshape/assets/constants.js +0 -11
- package/dist/resolvers/takeshape/builtins/constants.d.ts +0 -1
- package/dist/resolvers/takeshape/builtins/constants.js +0 -1
- package/dist/runtime-schema.d.ts +0 -6
- package/dist/runtime-schema.js +0 -85
- package/dist/scalars.d.ts +0 -2
- package/dist/scalars.js +0 -4
- package/dist/schema-transform.d.ts +0 -19
- package/dist/schema-transform.js +0 -74
- package/dist/schema-util.d.ts +0 -266
- package/dist/schema-util.js +0 -1127
- package/dist/schemas/auth-schemas.json +0 -374
- package/dist/schemas/index.d.ts +0 -4
- package/dist/schemas/index.js +0 -170
- package/dist/schemas/project-schema/experimental-2025-07.json +0 -1297
- package/dist/schemas/project-schema/latest.d.ts +0 -180
- package/dist/schemas/project-schema/latest.js +0 -11
- package/dist/schemas/project-schema/latest.json +0 -4846
- package/dist/schemas/project-schema/meta-schema-v1.0.0.json +0 -193
- package/dist/schemas/project-schema/meta-schema-v3.0.0.json +0 -608
- package/dist/schemas/project-schema/meta-schema-v3.1.0.json +0 -608
- package/dist/schemas/project-schema/meta-schema-v3.2.0.json +0 -612
- package/dist/schemas/project-schema/meta-schema-v3.3.0.json +0 -612
- package/dist/schemas/project-schema/meta-schema-v3.4.0.json +0 -637
- package/dist/schemas/project-schema/meta-schema-v3.5.0.json +0 -626
- package/dist/schemas/project-schema/meta-schema-v3.5.1.json +0 -626
- package/dist/schemas/project-schema/meta-schema-v3.6.0.json +0 -629
- package/dist/schemas/project-schema/meta-schema-v3.7.0.json +0 -1137
- package/dist/schemas/project-schema/meta-schema-v3.8.0.json +0 -1137
- package/dist/schemas/project-schema/meta-schema-v3.9.0.json +0 -1477
- package/dist/schemas/project-schema/v1.0.0.json +0 -321
- package/dist/schemas/project-schema/v3.0.0.json +0 -414
- package/dist/schemas/project-schema/v3.1.0.json +0 -572
- package/dist/schemas/project-schema/v3.10.0.json +0 -2097
- package/dist/schemas/project-schema/v3.11.0.json +0 -2141
- package/dist/schemas/project-schema/v3.12.0.json +0 -2144
- package/dist/schemas/project-schema/v3.12.1.json +0 -2282
- package/dist/schemas/project-schema/v3.12.2.json +0 -2304
- package/dist/schemas/project-schema/v3.12.3.json +0 -2357
- package/dist/schemas/project-schema/v3.13.0.json +0 -2377
- package/dist/schemas/project-schema/v3.14.0.json +0 -2385
- package/dist/schemas/project-schema/v3.15.0.json +0 -2365
- package/dist/schemas/project-schema/v3.16.0.json +0 -2373
- package/dist/schemas/project-schema/v3.17.0.json +0 -2378
- package/dist/schemas/project-schema/v3.17.1.json +0 -2380
- package/dist/schemas/project-schema/v3.18.0.json +0 -2356
- package/dist/schemas/project-schema/v3.18.1.json +0 -2357
- package/dist/schemas/project-schema/v3.18.2.json +0 -2357
- package/dist/schemas/project-schema/v3.19.0.json +0 -2369
- package/dist/schemas/project-schema/v3.2.0.json +0 -580
- package/dist/schemas/project-schema/v3.20.0.json +0 -2369
- package/dist/schemas/project-schema/v3.21.0.json +0 -2376
- package/dist/schemas/project-schema/v3.22.0.json +0 -2381
- package/dist/schemas/project-schema/v3.23.0.json +0 -2456
- package/dist/schemas/project-schema/v3.24.0.json +0 -2556
- package/dist/schemas/project-schema/v3.25.0.json +0 -2552
- package/dist/schemas/project-schema/v3.26.0.json +0 -2599
- package/dist/schemas/project-schema/v3.27.0.json +0 -2611
- package/dist/schemas/project-schema/v3.28.0.json +0 -2656
- package/dist/schemas/project-schema/v3.29.0.json +0 -2670
- package/dist/schemas/project-schema/v3.3.0.json +0 -581
- package/dist/schemas/project-schema/v3.30.0.json +0 -2656
- package/dist/schemas/project-schema/v3.31.0.json +0 -2714
- package/dist/schemas/project-schema/v3.32.0.json +0 -2708
- package/dist/schemas/project-schema/v3.33.0.json +0 -2715
- package/dist/schemas/project-schema/v3.34.0.json +0 -2715
- package/dist/schemas/project-schema/v3.35.0.json +0 -2748
- package/dist/schemas/project-schema/v3.36.0.json +0 -2756
- package/dist/schemas/project-schema/v3.37.0.json +0 -2821
- package/dist/schemas/project-schema/v3.38.0.json +0 -2819
- package/dist/schemas/project-schema/v3.39.0.json +0 -2827
- package/dist/schemas/project-schema/v3.4.0.json +0 -571
- package/dist/schemas/project-schema/v3.40.0.json +0 -2830
- package/dist/schemas/project-schema/v3.41.0.json +0 -2830
- package/dist/schemas/project-schema/v3.42.0.json +0 -2835
- package/dist/schemas/project-schema/v3.43.0.json +0 -2841
- package/dist/schemas/project-schema/v3.44.0.json +0 -3013
- package/dist/schemas/project-schema/v3.45.0.json +0 -3064
- package/dist/schemas/project-schema/v3.46.0.json +0 -3136
- package/dist/schemas/project-schema/v3.47.0.json +0 -3189
- package/dist/schemas/project-schema/v3.48.0.json +0 -3196
- package/dist/schemas/project-schema/v3.49.0.json +0 -3239
- package/dist/schemas/project-schema/v3.5.0.json +0 -571
- package/dist/schemas/project-schema/v3.5.1.json +0 -571
- package/dist/schemas/project-schema/v3.50.0.json +0 -3320
- package/dist/schemas/project-schema/v3.51.0.json +0 -3326
- package/dist/schemas/project-schema/v3.52.0.json +0 -3326
- package/dist/schemas/project-schema/v3.53.0.json +0 -3476
- package/dist/schemas/project-schema/v3.54.0.json +0 -3512
- package/dist/schemas/project-schema/v3.55.0.json +0 -3515
- package/dist/schemas/project-schema/v3.56.0.json +0 -3530
- package/dist/schemas/project-schema/v3.57.0.json +0 -4815
- package/dist/schemas/project-schema/v3.58.0.json +0 -4815
- package/dist/schemas/project-schema/v3.59.0.json +0 -4846
- package/dist/schemas/project-schema/v3.6.0.json +0 -587
- package/dist/schemas/project-schema/v3.7.0.json +0 -587
- package/dist/schemas/project-schema/v3.8.0.json +0 -604
- package/dist/schemas/project-schema/v3.9.0.json +0 -604
- package/dist/schemas/project-schema/v4.0.0.json +0 -2316
- package/dist/schemas/project-schema.json +0 -214
- package/dist/service-dependencies.d.ts +0 -13
- package/dist/service-dependencies.js +0 -165
- package/dist/services/services.d.ts +0 -31
- package/dist/services/services.js +0 -145
- package/dist/services/types.d.ts +0 -11
- package/dist/services/types.js +0 -1
- package/dist/services/util.d.ts +0 -16
- package/dist/services/util.js +0 -36
- package/dist/shape-paths.d.ts +0 -7
- package/dist/shape-paths.js +0 -28
- package/dist/taxonomies.d.ts +0 -15
- package/dist/taxonomies.js +0 -24
- package/dist/template-shapes/index.d.ts +0 -7
- package/dist/template-shapes/index.js +0 -33
- package/dist/template-shapes/names.d.ts +0 -10
- package/dist/template-shapes/names.js +0 -21
- package/dist/template-shapes/templates.d.ts +0 -32
- package/dist/template-shapes/templates.js +0 -316
- package/dist/template-shapes/types.d.ts +0 -15
- package/dist/template-shapes/types.js +0 -7
- package/dist/template-shapes/where.d.ts +0 -37
- package/dist/template-shapes/where.js +0 -400
- package/dist/types/index.d.ts +0 -3
- package/dist/types/index.js +0 -2
- package/dist/types/transforms.d.ts +0 -15
- package/dist/types/transforms.js +0 -1
- package/dist/types/types.d.ts +0 -200
- package/dist/types/types.js +0 -10
- package/dist/types/utils.d.ts +0 -112
- package/dist/types/utils.js +0 -269
- package/dist/unions.d.ts +0 -14
- package/dist/unions.js +0 -77
- package/dist/util/ai-tools.d.ts +0 -2
- package/dist/util/ai-tools.js +0 -14
- package/dist/util/api-indexing.d.ts +0 -9
- package/dist/util/api-indexing.js +0 -57
- package/dist/util/coerce-value.d.ts +0 -9
- package/dist/util/coerce-value.js +0 -32
- package/dist/util/detect-cycles.d.ts +0 -7
- package/dist/util/detect-cycles.js +0 -45
- package/dist/util/expressions.d.ts +0 -34
- package/dist/util/expressions.js +0 -350
- package/dist/util/find-shape-at-path.d.ts +0 -21
- package/dist/util/find-shape-at-path.js +0 -53
- package/dist/util/form-config.d.ts +0 -11
- package/dist/util/form-config.js +0 -62
- package/dist/util/get-conflicting-properties.d.ts +0 -6
- package/dist/util/get-conflicting-properties.js +0 -55
- package/dist/util/get-return-shape.d.ts +0 -4
- package/dist/util/get-return-shape.js +0 -30
- package/dist/util/has-arg.d.ts +0 -6
- package/dist/util/has-arg.js +0 -25
- package/dist/util/is-asset-property.d.ts +0 -3
- package/dist/util/is-asset-property.js +0 -11
- package/dist/util/mcp.d.ts +0 -8
- package/dist/util/mcp.js +0 -21
- package/dist/util/merge.d.ts +0 -15
- package/dist/util/merge.js +0 -254
- package/dist/util/patch-schema.d.ts +0 -8
- package/dist/util/patch-schema.js +0 -51
- package/dist/util/query-field-path.d.ts +0 -9
- package/dist/util/query-field-path.js +0 -23
- package/dist/util/shapes.d.ts +0 -5
- package/dist/util/shapes.js +0 -22
- package/dist/validate/ai.d.ts +0 -6
- package/dist/validate/ai.js +0 -183
- package/dist/validate/errors.d.ts +0 -3
- package/dist/validate/errors.js +0 -20
- package/dist/validate/types.d.ts +0 -1
- package/dist/validate/types.js +0 -1
- package/dist/validate/util.d.ts +0 -3
- package/dist/validate/util.js +0 -28
- package/dist/validate/validate.d.ts +0 -80
- package/dist/validate/validate.js +0 -1058
- package/dist/versions.d.ts +0 -4
- package/dist/versions.js +0 -4
- package/dist/workflows.d.ts +0 -14
- package/dist/workflows.js +0 -66
package/dist/layers/layers.js
DELETED
|
@@ -1,301 +0,0 @@
|
|
|
1
|
-
import { deepClone, isDefined, isRecord } from '@takeshape/util';
|
|
2
|
-
import set from 'lodash/set.js';
|
|
3
|
-
import uniq from 'lodash/uniq.js';
|
|
4
|
-
import minimatch from 'minimatch';
|
|
5
|
-
import { parseTemplateShape } from "../refs.js";
|
|
6
|
-
import { dereferenceSchema, getArgsReferenceWithPath, getRefOrItemsRef, parseReturnShape, refItemToString, splitAtRef } from "./refs.js";
|
|
7
|
-
import { isAllOfSchema, isObjectSchema, isOneOfSchema, isRefSchema } from "./type-utils.js";
|
|
8
|
-
import { visitSchemaProperties } from "./visitor.js";
|
|
9
|
-
const layerDefaults = {
|
|
10
|
-
namespace: '',
|
|
11
|
-
visibility: []
|
|
12
|
-
};
|
|
13
|
-
function filterMap(prefix, fields, filters) {
|
|
14
|
-
const result = {};
|
|
15
|
-
for (const [name, value] of Object.entries(fields)) {
|
|
16
|
-
for (const filter of filters) {
|
|
17
|
-
if (minimatch(`${prefix}.${name}`, filter)) {
|
|
18
|
-
result[name] = value;
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
return result;
|
|
23
|
-
}
|
|
24
|
-
function filterLayer(layerSchema, filters) {
|
|
25
|
-
return {
|
|
26
|
-
...layerSchema,
|
|
27
|
-
queries: filterMap('queries', layerSchema.queries ?? {}, filters),
|
|
28
|
-
mutations: filterMap('mutations', layerSchema.mutations ?? {}, filters),
|
|
29
|
-
shapes: filterMap('shapes', layerSchema.shapes ?? {}, filters),
|
|
30
|
-
workflows: filterMap('workflows', layerSchema.workflows ?? {}, filters)
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
// TODO use non-versioned util eventually
|
|
34
|
-
export function isObjectSchemaV4_0_0(maybeObjectSchema) {
|
|
35
|
-
return maybeObjectSchema.type === 'object' && isRecord(maybeObjectSchema.properties);
|
|
36
|
-
}
|
|
37
|
-
function mergeShape(a, b) {
|
|
38
|
-
if (b.override === 'extend') {
|
|
39
|
-
if (isObjectSchemaV4_0_0(a.schema) && isObjectSchemaV4_0_0(b.schema)) {
|
|
40
|
-
const combinedRequired = uniq((a.schema.required ?? []).concat(b.schema.required ?? []));
|
|
41
|
-
const combinedSchema = {
|
|
42
|
-
type: 'object',
|
|
43
|
-
properties: {
|
|
44
|
-
...a.schema.properties,
|
|
45
|
-
...b.schema.properties
|
|
46
|
-
}
|
|
47
|
-
};
|
|
48
|
-
if (combinedRequired.length) {
|
|
49
|
-
combinedSchema.required = combinedRequired;
|
|
50
|
-
}
|
|
51
|
-
return { ...a, ...b, schema: combinedSchema };
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
return b;
|
|
55
|
-
}
|
|
56
|
-
function assignShapes(flattenedShapes, layerShapes) {
|
|
57
|
-
for (const [shapeName, shape] of Object.entries(layerShapes)) {
|
|
58
|
-
flattenedShapes[shapeName] = flattenedShapes[shapeName] ? mergeShape(flattenedShapes[shapeName], shape) : shape;
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
function addRef(refs, ref, predicate) {
|
|
62
|
-
if (ref && (!predicate || predicate(ref))) {
|
|
63
|
-
refs.push(ref);
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
* Walk through a `ProjectSchema` and collect all the `ref`s.
|
|
68
|
-
*/
|
|
69
|
-
export function getAllRefsInShapes(shapes, predicate) {
|
|
70
|
-
const items = [];
|
|
71
|
-
const shapeVisitor = (schema, schemaPath) => {
|
|
72
|
-
if (schema['@args'] && typeof schema['@args'] === 'object') {
|
|
73
|
-
visitSchemaProperties(schema['@args'], schemaPath.concat(['@args']), (argSchema, argPath) => {
|
|
74
|
-
addRef(items, getRefOrItemsRef(argSchema, argPath), predicate);
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
addRef(items, getArgsReferenceWithPath(schema, schemaPath), predicate);
|
|
78
|
-
const newPath = schema.items ? schemaPath.concat('items') : schemaPath;
|
|
79
|
-
const newSchema = schema.items ?? schema;
|
|
80
|
-
if (isRefSchema(newSchema)) {
|
|
81
|
-
addRef(items, getRefOrItemsRef(newSchema, newPath), predicate);
|
|
82
|
-
}
|
|
83
|
-
else if (isObjectSchema(newSchema) || isAllOfSchema(newSchema) || isOneOfSchema(newSchema)) {
|
|
84
|
-
visitSchemaProperties(newSchema, newPath, shapeVisitor);
|
|
85
|
-
}
|
|
86
|
-
};
|
|
87
|
-
for (const [shapeName, shape] of Object.entries(shapes)) {
|
|
88
|
-
visitSchemaProperties(shape.schema, ['shapes', shapeName, 'schema'], shapeVisitor);
|
|
89
|
-
}
|
|
90
|
-
return items;
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* Get all refs
|
|
94
|
-
*/
|
|
95
|
-
export function getAllRefsInQuery(shapes, queryPath, query, predicate) {
|
|
96
|
-
const refItems = [];
|
|
97
|
-
const propertyVisitor = (propSchema, propSchemaPath) => {
|
|
98
|
-
addRef(refItems, getRefOrItemsRef(propSchema, propSchemaPath), predicate);
|
|
99
|
-
};
|
|
100
|
-
if (query.args && typeof query.args === 'string') {
|
|
101
|
-
addRef(refItems, getArgsReferenceWithPath(query, queryPath), predicate);
|
|
102
|
-
}
|
|
103
|
-
if (query.args && typeof query.args === 'object') {
|
|
104
|
-
visitSchemaProperties(dereferenceSchema(shapes, query.args), queryPath, propertyVisitor);
|
|
105
|
-
}
|
|
106
|
-
if (query.shape) {
|
|
107
|
-
const refItem = parseReturnShape(query.shape).ref;
|
|
108
|
-
if (refItem) {
|
|
109
|
-
addRef(refItems, {
|
|
110
|
-
...refItem,
|
|
111
|
-
path: queryPath.concat(['shape'])
|
|
112
|
-
}, predicate);
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
return refItems;
|
|
116
|
-
}
|
|
117
|
-
/**
|
|
118
|
-
* Collect refs from `queries` or `mutations`.
|
|
119
|
-
*/
|
|
120
|
-
export function getAllRefsInQueries(context, rootPropertyName, predicate) {
|
|
121
|
-
const refItems = [];
|
|
122
|
-
const rootPath = [rootPropertyName];
|
|
123
|
-
for (const [queryName, query] of Object.entries(context[rootPropertyName])) {
|
|
124
|
-
const queryPath = rootPath.concat([queryName]);
|
|
125
|
-
const queryRefs = getAllRefsInQuery(context.shapes, queryPath, query, predicate);
|
|
126
|
-
if (queryRefs.length) {
|
|
127
|
-
refItems.push(...queryRefs);
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
return refItems;
|
|
131
|
-
}
|
|
132
|
-
/**
|
|
133
|
-
* Get all refs in a ProjectSchema
|
|
134
|
-
* @param predicate return true to include the ref in
|
|
135
|
-
*/
|
|
136
|
-
export function getAllRefs(projectSchema, predicate) {
|
|
137
|
-
return [
|
|
138
|
-
...getAllRefsInShapes(projectSchema.shapes, predicate),
|
|
139
|
-
...getAllRefsInQueries(projectSchema, 'queries', predicate),
|
|
140
|
-
...getAllRefsInQueries(projectSchema, 'mutations', predicate)
|
|
141
|
-
];
|
|
142
|
-
}
|
|
143
|
-
export function collectReferencedShapeNames(layerId, refSet) {
|
|
144
|
-
const addLayerId = (ref) => ({ ...ref, layerId });
|
|
145
|
-
const collect = (schema) => {
|
|
146
|
-
const args = schema['@args'];
|
|
147
|
-
if (args && typeof args === 'object') {
|
|
148
|
-
Object.values(args.properties).forEach(collect);
|
|
149
|
-
}
|
|
150
|
-
const argsRefItem = getArgsReferenceWithPath(schema);
|
|
151
|
-
if (argsRefItem) {
|
|
152
|
-
refSet.add(refItemToString(addLayerId(argsRefItem)));
|
|
153
|
-
}
|
|
154
|
-
const refItem = getRefOrItemsRef(schema);
|
|
155
|
-
if (refItem) {
|
|
156
|
-
refSet.add(refItemToString(addLayerId(refItem)));
|
|
157
|
-
}
|
|
158
|
-
};
|
|
159
|
-
return collect;
|
|
160
|
-
}
|
|
161
|
-
function collectServiceRefs(flattenedSchema, getLayer) {
|
|
162
|
-
const refs = new Set(getAllRefs(flattenedSchema, (refItem) => refItem.layerId !== 'local').map(refItemToString));
|
|
163
|
-
if (refs.size) {
|
|
164
|
-
for (const ref of refs) {
|
|
165
|
-
const [layerId, shapeName] = splitAtRef(ref);
|
|
166
|
-
if (layerId !== 'local') {
|
|
167
|
-
const layer = getLayer(layerId);
|
|
168
|
-
const shape = layer?.shapes?.[shapeName];
|
|
169
|
-
if (shape) {
|
|
170
|
-
visitSchemaProperties(shape.schema, ['schema'], collectReferencedShapeNames(layerId, refs));
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
return refs;
|
|
176
|
-
}
|
|
177
|
-
function ensureServiceLayer(flattenedSchema, layerId) {
|
|
178
|
-
flattenedSchema.serviceLayers ||= {};
|
|
179
|
-
let serviceLayer = flattenedSchema.serviceLayers[layerId];
|
|
180
|
-
if (!serviceLayer) {
|
|
181
|
-
serviceLayer = {
|
|
182
|
-
layerId,
|
|
183
|
-
schemaVersion: '4.0.0',
|
|
184
|
-
shapes: {},
|
|
185
|
-
queries: {},
|
|
186
|
-
mutations: {}
|
|
187
|
-
};
|
|
188
|
-
flattenedSchema.serviceLayers[layerId] = serviceLayer;
|
|
189
|
-
}
|
|
190
|
-
return serviceLayer;
|
|
191
|
-
}
|
|
192
|
-
function rewriteLayerId(localShapes, layerId, query) {
|
|
193
|
-
const newQuery = deepClone(query);
|
|
194
|
-
const propertyVisitor = (propSchema, propSchemaPath) => {
|
|
195
|
-
const ref = (propSchema.items ?? propSchema)['@ref'];
|
|
196
|
-
if (ref) {
|
|
197
|
-
const [argsLayerId, shapeName] = splitAtRef(ref);
|
|
198
|
-
if (argsLayerId === 'local' && !localShapes[shapeName]) {
|
|
199
|
-
const path = propSchemaPath.concat(propSchema.items ? ['items', '@ref'] : ['@ref']);
|
|
200
|
-
set(newQuery, path, `${layerId}:${shapeName}`);
|
|
201
|
-
}
|
|
202
|
-
}
|
|
203
|
-
};
|
|
204
|
-
if (query.args) {
|
|
205
|
-
if (typeof query.args === 'string') {
|
|
206
|
-
const [argsLayerId, shapeName] = splitAtRef(parseTemplateShape(query.args).shapeName);
|
|
207
|
-
if (argsLayerId === 'local' && !localShapes[shapeName]) {
|
|
208
|
-
newQuery.args = `${layerId}:${shapeName}`;
|
|
209
|
-
}
|
|
210
|
-
}
|
|
211
|
-
else {
|
|
212
|
-
visitSchemaProperties(query.args, ['args'], propertyVisitor);
|
|
213
|
-
}
|
|
214
|
-
}
|
|
215
|
-
if (typeof query.shape === 'string') {
|
|
216
|
-
const [argsLayerId, shapeName] = splitAtRef(parseTemplateShape(query.shape).shapeName);
|
|
217
|
-
if (argsLayerId === 'local' && !localShapes[shapeName]) {
|
|
218
|
-
newQuery.shape = `${layerId}:${shapeName}`;
|
|
219
|
-
}
|
|
220
|
-
}
|
|
221
|
-
else {
|
|
222
|
-
const ref = query.shape.items['@ref'];
|
|
223
|
-
if (ref) {
|
|
224
|
-
const [argsLayerId, shapeName] = splitAtRef(ref);
|
|
225
|
-
if (argsLayerId === 'local' && !localShapes[shapeName]) {
|
|
226
|
-
set(newQuery, ['shape', 'items', '@ref'], `${layerId}:${shapeName}`);
|
|
227
|
-
}
|
|
228
|
-
}
|
|
229
|
-
}
|
|
230
|
-
return newQuery;
|
|
231
|
-
}
|
|
232
|
-
function assignQueries(localShapes, queries, layerId, layerQueries) {
|
|
233
|
-
for (const [queryName, query] of Object.entries(layerQueries)) {
|
|
234
|
-
queries[queryName] = rewriteLayerId(localShapes, layerId, query);
|
|
235
|
-
}
|
|
236
|
-
}
|
|
237
|
-
export function flattenSchema(projectSchema, getLayer) {
|
|
238
|
-
const { layers, ...rest } = projectSchema;
|
|
239
|
-
const flattenedSchema = {
|
|
240
|
-
...rest,
|
|
241
|
-
shapes: {},
|
|
242
|
-
queries: {},
|
|
243
|
-
mutations: {},
|
|
244
|
-
workflows: {},
|
|
245
|
-
forms: {}
|
|
246
|
-
};
|
|
247
|
-
const filteredLayers = layers
|
|
248
|
-
.reverse()
|
|
249
|
-
.map((layer) => {
|
|
250
|
-
const config = typeof layer === 'string' ? { ...layerDefaults, id: layer } : layer;
|
|
251
|
-
const layerSchema = getLayer(config.id);
|
|
252
|
-
if (!layerSchema) {
|
|
253
|
-
throw new Error(`Unable to flatten schema for project ${projectSchema.projectId}. Cannot get layer ${config.id}`);
|
|
254
|
-
}
|
|
255
|
-
return config.visibility?.length ? filterLayer(layerSchema, config.visibility) : undefined;
|
|
256
|
-
})
|
|
257
|
-
.filter(isDefined);
|
|
258
|
-
for (const filteredLayer of filteredLayers) {
|
|
259
|
-
const { layerId } = filteredLayer;
|
|
260
|
-
// Preserve original queries
|
|
261
|
-
if (projectSchema.services?.[layerId]) {
|
|
262
|
-
const serviceLayer = ensureServiceLayer(flattenedSchema, layerId);
|
|
263
|
-
if (serviceLayer.queries && filteredLayer.queries) {
|
|
264
|
-
Object.assign(serviceLayer.queries, filteredLayer.queries);
|
|
265
|
-
}
|
|
266
|
-
if (serviceLayer.mutations && filteredLayer.mutations) {
|
|
267
|
-
Object.assign(serviceLayer.mutations, filteredLayer.mutations);
|
|
268
|
-
}
|
|
269
|
-
}
|
|
270
|
-
if (filteredLayer.workflows) {
|
|
271
|
-
Object.assign(flattenedSchema.workflows, filteredLayer.workflows);
|
|
272
|
-
}
|
|
273
|
-
if (flattenedSchema.forms && filteredLayer.forms) {
|
|
274
|
-
Object.assign(flattenedSchema.forms, filteredLayer.forms);
|
|
275
|
-
}
|
|
276
|
-
if (filteredLayer.shapes) {
|
|
277
|
-
assignShapes(flattenedSchema.shapes, filteredLayer.shapes);
|
|
278
|
-
}
|
|
279
|
-
}
|
|
280
|
-
for (const filteredLayer of filteredLayers) {
|
|
281
|
-
if (filteredLayer.queries) {
|
|
282
|
-
assignQueries(flattenedSchema.shapes, flattenedSchema.queries, filteredLayer.layerId, filteredLayer.queries);
|
|
283
|
-
}
|
|
284
|
-
if (filteredLayer.mutations) {
|
|
285
|
-
assignQueries(flattenedSchema.shapes, flattenedSchema.mutations, filteredLayer.layerId, filteredLayer.mutations);
|
|
286
|
-
}
|
|
287
|
-
}
|
|
288
|
-
// Preserve original service schema shapes
|
|
289
|
-
for (const refStr of collectServiceRefs(flattenedSchema, getLayer)) {
|
|
290
|
-
const [layerId, shapeName] = splitAtRef(refStr);
|
|
291
|
-
if (layerId !== 'local') {
|
|
292
|
-
const shape = getLayer(layerId)?.shapes?.[shapeName];
|
|
293
|
-
if (shape) {
|
|
294
|
-
const serviceLayer = ensureServiceLayer(flattenedSchema, layerId);
|
|
295
|
-
serviceLayer.shapes ||= {};
|
|
296
|
-
serviceLayer.shapes[shapeName] = shape;
|
|
297
|
-
}
|
|
298
|
-
}
|
|
299
|
-
}
|
|
300
|
-
return flattenedSchema;
|
|
301
|
-
}
|
package/dist/layers/refs.d.ts
DELETED
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
import type { Maybe } from '@takeshape/util';
|
|
2
|
-
import type { PropertySchemaV4_0_0, QueryJSONV4_0_0, ReturnShapeV4_0_0, ShapeJSONV4_0_0, ShapeMapV4_0_0 } from '../project-schema/index.ts';
|
|
3
|
-
import type { SchemaPath } from '../types/index.ts';
|
|
4
|
-
/**
|
|
5
|
-
* This interface describes a parsed `@ref` or `$ref`.
|
|
6
|
-
* The intended usage is to convert a schema with a ref to a RefItem which can then
|
|
7
|
-
* be passed to the various rich utilities in this file.
|
|
8
|
-
*/
|
|
9
|
-
export type RefItem = {
|
|
10
|
-
typeName: string;
|
|
11
|
-
layerId: string;
|
|
12
|
-
template?: string;
|
|
13
|
-
};
|
|
14
|
-
/**
|
|
15
|
-
* Adds a schema path, needed when visiting a whole schema to report errors.
|
|
16
|
-
*/
|
|
17
|
-
export type RefItemWithPath = {
|
|
18
|
-
path: SchemaPath;
|
|
19
|
-
} & RefItem;
|
|
20
|
-
/**
|
|
21
|
-
* Safely turn a "template" shape reference (`@args`, `args`, `shape`) into a `RefItem`
|
|
22
|
-
*
|
|
23
|
-
* @param context A partial project schema
|
|
24
|
-
* @param refExpression
|
|
25
|
-
* A ref expression might include "template" name and refer to a local or remote
|
|
26
|
-
* shape, `Foo` or `CreateArgs<Foo>` or `CreateArgs<remote:Foo>`.*
|
|
27
|
-
*/
|
|
28
|
-
export declare function refExpressionToRefItem(refExpression: string): RefItem;
|
|
29
|
-
/**
|
|
30
|
-
* Sugar for converting a `refExpression` directly into a shape, without the
|
|
31
|
-
* intermediate `refItem`.
|
|
32
|
-
*
|
|
33
|
-
* @param context A partial project schema
|
|
34
|
-
* @param refExpression
|
|
35
|
-
* A ref expression might include "template" name and refer to a local or remote
|
|
36
|
-
* shape, `Foo` or `CreateArgs<Foo>` or `CreateArgs<remote:Foo>`.
|
|
37
|
-
*/
|
|
38
|
-
export declare function refExpressionToShape(shapes: ShapeMapV4_0_0, refExpression: string): Maybe<ShapeJSONV4_0_0>;
|
|
39
|
-
/**
|
|
40
|
-
* Provided a service name and a referenced type. Supports 2 or 3 part
|
|
41
|
-
* references, e.g., `shopify:my-store:ProductInput` or `my-store:ProductInput`.
|
|
42
|
-
*
|
|
43
|
-
* @returns
|
|
44
|
-
* A 2 member array, where 0 is the service name, 1 is the referenced type.
|
|
45
|
-
*/
|
|
46
|
-
export declare function splitAtRef(atRef: string): [string, string];
|
|
47
|
-
/**
|
|
48
|
-
* Parses and returns a typeName, serviceKey, and potentially a namespace for
|
|
49
|
-
* the type.
|
|
50
|
-
*/
|
|
51
|
-
export declare function atRefToRefItem(atRef: string, template?: string): RefItem;
|
|
52
|
-
/**
|
|
53
|
-
* Given a content schema and project schema, finds a `@ref` or `$ref` and
|
|
54
|
-
* returns a `RefItem` suitable for loading a referenced schema...
|
|
55
|
-
*/
|
|
56
|
-
export declare function getRef(refSchema: PropertySchemaV4_0_0): Maybe<RefItem>;
|
|
57
|
-
export declare function getRefWithPath(refSchema: PropertySchemaV4_0_0, schemaPath?: SchemaPath): Maybe<RefItemWithPath>;
|
|
58
|
-
/**
|
|
59
|
-
* Tests for a `@ref` or `$ref` property directly on the passed schema.
|
|
60
|
-
*
|
|
61
|
-
* @param schema Any schema that might could have a ref property.
|
|
62
|
-
*/
|
|
63
|
-
export declare function hasRefProperty(schema: PropertySchemaV4_0_0): boolean;
|
|
64
|
-
/**
|
|
65
|
-
* From a schema with a ref, will return the top-level ref, and potentially
|
|
66
|
-
* a ref item from a nested `items` property.
|
|
67
|
-
*/
|
|
68
|
-
export declare function getRefOrItemsRef(refSchema: PropertySchemaV4_0_0, schemaPath?: SchemaPath): Maybe<RefItemWithPath>;
|
|
69
|
-
/**
|
|
70
|
-
* Turns a `RefItem` into an `@ref`.
|
|
71
|
-
*/
|
|
72
|
-
export declare function refItemToString(refItem: RefItem): string;
|
|
73
|
-
/**
|
|
74
|
-
* Get a Shape referenced by a `RefItem`.
|
|
75
|
-
*/
|
|
76
|
-
export declare function refItemToShape(shapes: ShapeMapV4_0_0, refItem: RefItem): Maybe<ShapeJSONV4_0_0>;
|
|
77
|
-
/**
|
|
78
|
-
* Helper fn to omit `ref` props from the target schema, and then extend it with the source schema.
|
|
79
|
-
*/
|
|
80
|
-
export declare const omitRefAndExtend: (targetSchema: PropertySchemaV4_0_0, sourceSchema: PropertySchemaV4_0_0) => import("lodash").Omit<PropertySchemaV4_0_0, "@ref" | "$ref"> & PropertySchemaV4_0_0;
|
|
81
|
-
/**
|
|
82
|
-
* If there is a $ref, this will insert a content schema from the top level
|
|
83
|
-
* in place of the reference.
|
|
84
|
-
*/
|
|
85
|
-
export declare function followRef(shapes: ShapeMapV4_0_0, contentSchema: PropertySchemaV4_0_0): PropertySchemaV4_0_0;
|
|
86
|
-
/**
|
|
87
|
-
* Returns whether a schema has refs.
|
|
88
|
-
*/
|
|
89
|
-
export declare function hasRef(contentSchema: PropertySchemaV4_0_0): boolean;
|
|
90
|
-
/**
|
|
91
|
-
* Returns whether a schema has refs which can be followed.
|
|
92
|
-
*/
|
|
93
|
-
export declare function hasResolvableRef(shapes: ShapeMapV4_0_0, contentSchema: PropertySchemaV4_0_0): boolean;
|
|
94
|
-
export declare function getArgsReferenceWithPath(argsSchema: PropertySchemaV4_0_0 | QueryJSONV4_0_0, schemaPath?: SchemaPath): Maybe<RefItemWithPath>;
|
|
95
|
-
export declare function dereferenceSchema(shapes: ShapeMapV4_0_0, shapeOrFieldSchema: PropertySchemaV4_0_0, schemaPath?: SchemaPath): PropertySchemaV4_0_0;
|
|
96
|
-
export type ParsedReturnShape = {
|
|
97
|
-
isArray: boolean;
|
|
98
|
-
template?: string;
|
|
99
|
-
shapeName: string;
|
|
100
|
-
ref?: RefItem;
|
|
101
|
-
};
|
|
102
|
-
export declare function parseReturnShape(shape: ReturnShapeV4_0_0): ParsedReturnShape;
|
package/dist/layers/refs.js
DELETED
|
@@ -1,220 +0,0 @@
|
|
|
1
|
-
import { mergeWithArrayConcat } from '@takeshape/util';
|
|
2
|
-
import assign from 'lodash/fp/assign.js';
|
|
3
|
-
import omit from 'lodash/fp/omit.js';
|
|
4
|
-
import isEmpty from 'lodash/isEmpty.js';
|
|
5
|
-
import { parseTemplateShape } from "../refs.js";
|
|
6
|
-
import { isAllOfSchema, isOneOfSchema, isRefSchema } from "./type-utils.js";
|
|
7
|
-
/**
|
|
8
|
-
* Safely turn a "template" shape reference (`@args`, `args`, `shape`) into a `RefItem`
|
|
9
|
-
*
|
|
10
|
-
* @param context A partial project schema
|
|
11
|
-
* @param refExpression
|
|
12
|
-
* A ref expression might include "template" name and refer to a local or remote
|
|
13
|
-
* shape, `Foo` or `CreateArgs<Foo>` or `CreateArgs<remote:Foo>`.*
|
|
14
|
-
*/
|
|
15
|
-
export function refExpressionToRefItem(refExpression) {
|
|
16
|
-
const { shapeName, template } = parseTemplateShape(refExpression);
|
|
17
|
-
return atRefToRefItem(shapeName, template);
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Sugar for converting a `refExpression` directly into a shape, without the
|
|
21
|
-
* intermediate `refItem`.
|
|
22
|
-
*
|
|
23
|
-
* @param context A partial project schema
|
|
24
|
-
* @param refExpression
|
|
25
|
-
* A ref expression might include "template" name and refer to a local or remote
|
|
26
|
-
* shape, `Foo` or `CreateArgs<Foo>` or `CreateArgs<remote:Foo>`.
|
|
27
|
-
*/
|
|
28
|
-
export function refExpressionToShape(shapes, refExpression) {
|
|
29
|
-
return refItemToShape(shapes, refExpressionToRefItem(refExpression));
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Provided a service name and a referenced type. Supports 2 or 3 part
|
|
33
|
-
* references, e.g., `shopify:my-store:ProductInput` or `my-store:ProductInput`.
|
|
34
|
-
*
|
|
35
|
-
* @returns
|
|
36
|
-
* A 2 member array, where 0 is the service name, 1 is the referenced type.
|
|
37
|
-
*/
|
|
38
|
-
export function splitAtRef(atRef) {
|
|
39
|
-
const refParts = atRef.split(':');
|
|
40
|
-
if (refParts.length === 1) {
|
|
41
|
-
return ['local', atRef];
|
|
42
|
-
}
|
|
43
|
-
if (refParts.length === 2) {
|
|
44
|
-
return [refParts[0], refParts[1]];
|
|
45
|
-
}
|
|
46
|
-
throw new Error(`Invalid ref string ${atRef}`);
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Parses and returns a typeName, serviceKey, and potentially a namespace for
|
|
50
|
-
* the type.
|
|
51
|
-
*/
|
|
52
|
-
export function atRefToRefItem(atRef, template) {
|
|
53
|
-
const [serviceKey, typeName] = splitAtRef(atRef);
|
|
54
|
-
return {
|
|
55
|
-
typeName,
|
|
56
|
-
layerId: serviceKey,
|
|
57
|
-
template
|
|
58
|
-
};
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* Given a content schema and project schema, finds a `@ref` or `$ref` and
|
|
62
|
-
* returns a `RefItem` suitable for loading a referenced schema...
|
|
63
|
-
*/
|
|
64
|
-
export function getRef(refSchema) {
|
|
65
|
-
if (refSchema['@ref']) {
|
|
66
|
-
// @ref: my-service:ShapeName
|
|
67
|
-
return atRefToRefItem(refSchema['@ref']);
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
export function getRefWithPath(refSchema, schemaPath = []) {
|
|
71
|
-
const refItem = getRef(refSchema);
|
|
72
|
-
if (refItem) {
|
|
73
|
-
return {
|
|
74
|
-
...refItem,
|
|
75
|
-
path: schemaPath.concat(['@ref'])
|
|
76
|
-
};
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
/**
|
|
80
|
-
* Tests for a `@ref` or `$ref` property directly on the passed schema.
|
|
81
|
-
*
|
|
82
|
-
* @param schema Any schema that might could have a ref property.
|
|
83
|
-
*/
|
|
84
|
-
export function hasRefProperty(schema) {
|
|
85
|
-
return Boolean(schema['@ref'] ?? schema.$ref);
|
|
86
|
-
}
|
|
87
|
-
/**
|
|
88
|
-
* From a schema with a ref, will return the top-level ref, and potentially
|
|
89
|
-
* a ref item from a nested `items` property.
|
|
90
|
-
*/
|
|
91
|
-
export function getRefOrItemsRef(refSchema, schemaPath = []) {
|
|
92
|
-
const refItem = getRefWithPath(refSchema, schemaPath);
|
|
93
|
-
if (refItem) {
|
|
94
|
-
return refItem;
|
|
95
|
-
}
|
|
96
|
-
if (refSchema.items) {
|
|
97
|
-
return getRefOrItemsRef(refSchema.items, schemaPath.concat(['items']));
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* Turns a `RefItem` into an `@ref`.
|
|
102
|
-
*/
|
|
103
|
-
export function refItemToString(refItem) {
|
|
104
|
-
return `${refItem.layerId}:${refItem.typeName}`;
|
|
105
|
-
}
|
|
106
|
-
/**
|
|
107
|
-
* Get a Shape referenced by a `RefItem`.
|
|
108
|
-
*/
|
|
109
|
-
export function refItemToShape(shapes, refItem) {
|
|
110
|
-
return shapes[refItemToString(refItem)];
|
|
111
|
-
}
|
|
112
|
-
/**
|
|
113
|
-
* Helper fn to omit `ref` props from the target schema, and then extend it with the source schema.
|
|
114
|
-
*/
|
|
115
|
-
export const omitRefAndExtend = (targetSchema, sourceSchema) => assign(omit(['@ref', '$ref'], targetSchema), sourceSchema);
|
|
116
|
-
/**
|
|
117
|
-
* If there is a $ref, this will insert a content schema from the top level
|
|
118
|
-
* in place of the reference.
|
|
119
|
-
*/
|
|
120
|
-
export function followRef(shapes, contentSchema) {
|
|
121
|
-
const refItem = getRef(contentSchema);
|
|
122
|
-
if (refItem) {
|
|
123
|
-
const referencedSchema = refItemToShape(shapes, refItem)?.schema;
|
|
124
|
-
if (referencedSchema) {
|
|
125
|
-
return omitRefAndExtend(contentSchema, referencedSchema);
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
return contentSchema;
|
|
129
|
-
}
|
|
130
|
-
/**
|
|
131
|
-
* Returns whether a schema has refs.
|
|
132
|
-
*/
|
|
133
|
-
export function hasRef(contentSchema) {
|
|
134
|
-
if (isRefSchema(contentSchema)) {
|
|
135
|
-
return true;
|
|
136
|
-
}
|
|
137
|
-
if (isAllOfSchema(contentSchema)) {
|
|
138
|
-
return Boolean(contentSchema.allOf.find(hasRef));
|
|
139
|
-
}
|
|
140
|
-
if (isOneOfSchema(contentSchema)) {
|
|
141
|
-
return Boolean(contentSchema.oneOf.find(hasRef));
|
|
142
|
-
}
|
|
143
|
-
return false;
|
|
144
|
-
}
|
|
145
|
-
/**
|
|
146
|
-
* Returns whether a schema has refs which can be followed.
|
|
147
|
-
*/
|
|
148
|
-
export function hasResolvableRef(shapes, contentSchema) {
|
|
149
|
-
if (isRefSchema(contentSchema)) {
|
|
150
|
-
return Boolean(refItemToShape(shapes, getRef(contentSchema)));
|
|
151
|
-
}
|
|
152
|
-
if (isAllOfSchema(contentSchema)) {
|
|
153
|
-
return Boolean(contentSchema.allOf.find((s) => hasResolvableRef(shapes, s)));
|
|
154
|
-
}
|
|
155
|
-
if (isOneOfSchema(contentSchema)) {
|
|
156
|
-
return Boolean(contentSchema.oneOf.find((s) => hasResolvableRef(shapes, s)));
|
|
157
|
-
}
|
|
158
|
-
return false;
|
|
159
|
-
}
|
|
160
|
-
export function getArgsReferenceWithPath(argsSchema, schemaPath = []) {
|
|
161
|
-
const isQuery = 'args' in argsSchema;
|
|
162
|
-
const args = isQuery ? argsSchema.args : argsSchema['@args'];
|
|
163
|
-
const refItem = typeof args === 'string' ? refExpressionToRefItem(args) : undefined;
|
|
164
|
-
if (refItem) {
|
|
165
|
-
return {
|
|
166
|
-
...refItem,
|
|
167
|
-
path: schemaPath.concat([isQuery ? 'args' : '@args'])
|
|
168
|
-
};
|
|
169
|
-
}
|
|
170
|
-
}
|
|
171
|
-
/*
|
|
172
|
-
* Helper fn to omit `allOf` props from the target schema, and then extend it with the source schema.
|
|
173
|
-
*/
|
|
174
|
-
const omitAllOfAndExtend = (targetSchema, sourceSchema) => assign(omit(['allOf'], targetSchema), sourceSchema);
|
|
175
|
-
export function dereferenceSchema(shapes, shapeOrFieldSchema, schemaPath = []) {
|
|
176
|
-
const resolveAll = (resolveSchema, resolvePath) => {
|
|
177
|
-
try {
|
|
178
|
-
if (isAllOfSchema(resolveSchema)) {
|
|
179
|
-
const allOfSchema = resolveSchema.allOf
|
|
180
|
-
.map((stub, index) => resolveAll(stub, [...resolvePath, 'allOf', index]))
|
|
181
|
-
.reduce((prev, curr) => mergeWithArrayConcat(prev, curr), {});
|
|
182
|
-
return isEmpty(allOfSchema) ? undefined : omitAllOfAndExtend(resolveSchema, allOfSchema);
|
|
183
|
-
}
|
|
184
|
-
if (isRefSchema(resolveSchema)) {
|
|
185
|
-
const refItem = getRefWithPath(resolveSchema);
|
|
186
|
-
if (!refItem) {
|
|
187
|
-
throw new Error('ref could not be parsed');
|
|
188
|
-
}
|
|
189
|
-
const refSchema = refItemToShape(shapes, refItem);
|
|
190
|
-
if (refSchema) {
|
|
191
|
-
return resolveAll(omitRefAndExtend(resolveSchema, refSchema), refItem.path);
|
|
192
|
-
}
|
|
193
|
-
return;
|
|
194
|
-
}
|
|
195
|
-
return resolveSchema;
|
|
196
|
-
}
|
|
197
|
-
catch (err) {
|
|
198
|
-
throw new Error(`error at '${resolvePath.join('.')}', ${err.message}`);
|
|
199
|
-
}
|
|
200
|
-
};
|
|
201
|
-
return resolveAll(shapeOrFieldSchema, schemaPath) ?? shapeOrFieldSchema;
|
|
202
|
-
}
|
|
203
|
-
export function parseReturnShape(shape) {
|
|
204
|
-
if (typeof shape === 'object') {
|
|
205
|
-
if (isRefSchema(shape.items)) {
|
|
206
|
-
const ref = getRef(shape.items);
|
|
207
|
-
if (!ref) {
|
|
208
|
-
throw new Error(`Could not parse ${JSON.stringify(shape.items)}: invalid ref`);
|
|
209
|
-
}
|
|
210
|
-
return { isArray: true, ref, shapeName: refItemToString(ref) };
|
|
211
|
-
}
|
|
212
|
-
if (typeof shape.items.type !== 'string') {
|
|
213
|
-
throw new Error(`Could not parse ${JSON.stringify(shape.items)}: invalid type`);
|
|
214
|
-
}
|
|
215
|
-
return { isArray: true, shapeName: shape.items.type };
|
|
216
|
-
}
|
|
217
|
-
const ref = refExpressionToRefItem(shape);
|
|
218
|
-
const shapeName = refItemToString(ref);
|
|
219
|
-
return { isArray: false, shapeName, ref, template: ref.template };
|
|
220
|
-
}
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import type { AllOfSchemaV4_0_0, AwsLambdaResolverV4_0_0, BasicResolverV4_0_0, ComposeResolverV4_0_0, DirectiveConfigV4_0_0, DirectiveMappingArrayV4_0_0, DirectiveMappingMapV4_0_0, GraphqlResolverV4_0_0, ObjectSchemaV4_0_0, OneOfSchemaV4_0_0, ParameterOpMappingV4_0_0, ParameterOpNestedV4_0_0, ParameterOpOpV4_0_0, ParameterOpV4_0_0, ParameterOpValueV4_0_0, ParameterSerializeContentOptionsV4_0_0, ParameterSerializeOptionsV4_0_0, ParameterSerializeStyleOptionsV4_0_0, PropertySchemaV4_0_0, RefSchemaLegacyV4_0_0, RefSchemaV4_0_0, RestResolverV4_0_0, ReturnShapeArraySchemaV4_0_0, TakeshapeResolverV4_0_0, UtilResolverV4_0_0 } from '../project-schema/index.ts';
|
|
2
|
-
/** Resolver Type Utils **/
|
|
3
|
-
/**
|
|
4
|
-
* Only tests that the shape is right, not that the name is correct. That's a job for the validator.
|
|
5
|
-
*/
|
|
6
|
-
export declare function isBasicResolver(resolver: unknown): resolver is BasicResolverV4_0_0;
|
|
7
|
-
export declare function isComposeResolver(resolver: unknown): resolver is ComposeResolverV4_0_0;
|
|
8
|
-
export declare function isTakeshapeResolver(resolver: BasicResolverV4_0_0): resolver is TakeshapeResolverV4_0_0;
|
|
9
|
-
export declare function isGraphqlResolver(resolver: BasicResolverV4_0_0): resolver is GraphqlResolverV4_0_0;
|
|
10
|
-
export declare function isRestResolver(resolver: BasicResolverV4_0_0): resolver is RestResolverV4_0_0;
|
|
11
|
-
export declare function isAwsLambdaResolver(resolver: BasicResolverV4_0_0): resolver is AwsLambdaResolverV4_0_0;
|
|
12
|
-
export declare function isUtilResolver(resolver: BasicResolverV4_0_0): resolver is UtilResolverV4_0_0;
|
|
13
|
-
/** Directive Mapping Utils **/
|
|
14
|
-
/**
|
|
15
|
-
* Determine whether the ambiguous Directive structure is a DirectiveMappingMap
|
|
16
|
-
*/
|
|
17
|
-
export declare function isDirectiveMappingMap(maybeMap: DirectiveMappingMapV4_0_0 | DirectiveMappingArrayV4_0_0 | DirectiveConfigV4_0_0): maybeMap is DirectiveMappingMapV4_0_0;
|
|
18
|
-
/**
|
|
19
|
-
* Determine whether the ambiguous Directive structure is a DirectiveMappingArray
|
|
20
|
-
*/
|
|
21
|
-
export declare function isDirectiveMappingArray(maybeArray: DirectiveMappingMapV4_0_0 | DirectiveMappingArrayV4_0_0 | DirectiveConfigV4_0_0): maybeArray is DirectiveMappingArrayV4_0_0;
|
|
22
|
-
/**
|
|
23
|
-
* Determine whether the ambiguous Directive structure is a DirectiveConfig array
|
|
24
|
-
*/
|
|
25
|
-
export declare function isDirectiveConfig(maybeConfig: DirectiveMappingMapV4_0_0 | DirectiveMappingArrayV4_0_0 | DirectiveConfigV4_0_0): maybeConfig is DirectiveConfigV4_0_0;
|
|
26
|
-
/**
|
|
27
|
-
* Determine whether a ParameterSerializeOption is a content type serializer
|
|
28
|
-
*/
|
|
29
|
-
export declare function isParameterSerializeContentOptions(maybeContent: ParameterSerializeOptionsV4_0_0): maybeContent is ParameterSerializeContentOptionsV4_0_0;
|
|
30
|
-
/**
|
|
31
|
-
* Determine whether an unknown variable is a `ParameterOp`
|
|
32
|
-
*/
|
|
33
|
-
export declare function isParameterOp(maybeOp: unknown): maybeOp is ParameterOpV4_0_0;
|
|
34
|
-
/**
|
|
35
|
-
* Determine whether a `ParameterOp` is a `ParameterOpNested`
|
|
36
|
-
*/
|
|
37
|
-
export declare function isParameterOpNested(maybeOp: ParameterOpV4_0_0): maybeOp is ParameterOpNestedV4_0_0;
|
|
38
|
-
/**
|
|
39
|
-
* Determine whether a `ParameterOp` is a `ParameterOpMapping`
|
|
40
|
-
*/
|
|
41
|
-
export declare function isParameterOpMapping(maybeOp: ParameterOpV4_0_0): maybeOp is ParameterOpMappingV4_0_0;
|
|
42
|
-
/**
|
|
43
|
-
* Determine whether a `ParameterOp` is a `ParameterOpMapping`
|
|
44
|
-
*/
|
|
45
|
-
export declare function isParameterOpValue(maybeOp: ParameterOpV4_0_0): maybeOp is ParameterOpValueV4_0_0;
|
|
46
|
-
/**
|
|
47
|
-
* Determine whether a `ParameterOp` is a `ParameterOpOp`
|
|
48
|
-
*/
|
|
49
|
-
export declare function isParameterOpOp(maybeOp: ParameterOpV4_0_0): maybeOp is ParameterOpOpV4_0_0;
|
|
50
|
-
/**
|
|
51
|
-
* Determine whether a ParameterSerializeOption is a style serializer
|
|
52
|
-
*/
|
|
53
|
-
export declare function isParameterSerializeStyleOptions(maybeStyle: ParameterSerializeOptionsV4_0_0): maybeStyle is ParameterSerializeStyleOptionsV4_0_0;
|
|
54
|
-
/** Typeguards for different types of shape schemas **/
|
|
55
|
-
export declare function isRefSchema(maybeRefSchema: PropertySchemaV4_0_0): maybeRefSchema is RefSchemaV4_0_0 | RefSchemaLegacyV4_0_0;
|
|
56
|
-
export declare function isAllOfSchema(schema: PropertySchemaV4_0_0): schema is AllOfSchemaV4_0_0;
|
|
57
|
-
export declare function isOneOfSchema(schema: PropertySchemaV4_0_0): schema is OneOfSchemaV4_0_0;
|
|
58
|
-
export declare function isArraySchema(schema: PropertySchemaV4_0_0): schema is ReturnShapeArraySchemaV4_0_0;
|
|
59
|
-
export declare function isObjectSchema(schema: PropertySchemaV4_0_0): schema is ObjectSchemaV4_0_0;
|