@takeshape/schema 11.144.1 → 11.154.2
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/taxonomies.d.ts
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import type { ProjectSchemaJSON, ShapeJSON } from './project-schema/index.ts';
|
|
2
|
-
export type TaxonomyField = {
|
|
3
|
-
name: string;
|
|
4
|
-
key?: string;
|
|
5
|
-
};
|
|
6
|
-
export type Taxonomy = {
|
|
7
|
-
shapeId: string;
|
|
8
|
-
field: TaxonomyField;
|
|
9
|
-
};
|
|
10
|
-
export declare function getFirstStringFieldV3(shape: ShapeJSON, projectSchema: ProjectSchemaJSON): {
|
|
11
|
-
name: string;
|
|
12
|
-
key?: string;
|
|
13
|
-
} | null;
|
|
14
|
-
export declare const getTaxonomyField: (shape: ShapeJSON, projectSchema: ProjectSchemaJSON) => TaxonomyField | null;
|
|
15
|
-
export declare const getTaxonomies: (projectSchema: ProjectSchemaJSON) => Taxonomy[];
|
package/dist/taxonomies.js
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { weakMemoize } from '@takeshape/util';
|
|
2
|
-
import { createSchemaPropertyAccessor } from "./schema-util.js";
|
|
3
|
-
export function getFirstStringFieldV3(shape, projectSchema) {
|
|
4
|
-
const forms = projectSchema.forms?.[shape.name];
|
|
5
|
-
if (!forms?.default) {
|
|
6
|
-
return null;
|
|
7
|
-
}
|
|
8
|
-
const schemaProperties = createSchemaPropertyAccessor(projectSchema, shape);
|
|
9
|
-
const { order } = forms.default;
|
|
10
|
-
const name = order.find((name) => schemaProperties.getValue(name)?.type === 'string');
|
|
11
|
-
return name ? { name, key: schemaProperties.getKey(name) } : null;
|
|
12
|
-
}
|
|
13
|
-
export const getTaxonomyField = weakMemoize((shape, projectSchema) => shape.model?.type === 'taxonomy' ? getFirstStringFieldV3(shape, projectSchema) : null);
|
|
14
|
-
export const getTaxonomies = weakMemoize((projectSchema) => {
|
|
15
|
-
const { shapes } = projectSchema;
|
|
16
|
-
return Object.keys(shapes).reduce((result, shapeName) => {
|
|
17
|
-
const shape = shapes[shapeName];
|
|
18
|
-
const field = getTaxonomyField(shape, projectSchema);
|
|
19
|
-
if (field) {
|
|
20
|
-
result.push({ shapeId: shape.id, field });
|
|
21
|
-
}
|
|
22
|
-
return result;
|
|
23
|
-
}, []);
|
|
24
|
-
});
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { ProjectSchemaJSON } from '../project-schema/index.ts';
|
|
2
|
-
import type { ResolvedTemplate } from './types.ts';
|
|
3
|
-
export declare function resolveTemplate(projectSchema: ProjectSchemaJSON, templateName: string, shapeName: string): ResolvedTemplate;
|
|
4
|
-
/**
|
|
5
|
-
* Check if a string is a known template such as `PaginatedList`
|
|
6
|
-
*/
|
|
7
|
-
export declare function isValidTemplate(template: string): boolean;
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { CreateArgs, CreateResult, DeleteArgs, DeleteResult, DuplicateArgs, DuplicateResult, PaginatedList, SearchResults, TSGetArgs, TSGetSingletonArgs, TSListArgs, TSSearchArgs, UpdateArgs, UpdateResult } from "./templates.js";
|
|
2
|
-
const templateMappings = {
|
|
3
|
-
TSGetArgs,
|
|
4
|
-
TSGetSingletonArgs,
|
|
5
|
-
TSListArgs,
|
|
6
|
-
TSSearchArgs,
|
|
7
|
-
CreateArgs,
|
|
8
|
-
UpdateArgs,
|
|
9
|
-
DuplicateArgs,
|
|
10
|
-
DeleteArgs,
|
|
11
|
-
PaginatedList,
|
|
12
|
-
SearchResults,
|
|
13
|
-
CreateResult,
|
|
14
|
-
UpdateResult,
|
|
15
|
-
DuplicateResult,
|
|
16
|
-
DeleteResult
|
|
17
|
-
};
|
|
18
|
-
export function resolveTemplate(projectSchema, templateName, shapeName) {
|
|
19
|
-
const mapping = templateMappings[templateName];
|
|
20
|
-
if (!mapping) {
|
|
21
|
-
throw new Error(`Invalid shape template ${templateName}`);
|
|
22
|
-
}
|
|
23
|
-
if (projectSchema.shapes[shapeName] === undefined) {
|
|
24
|
-
throw new Error(`Unknown shape "${shapeName}" in template "${templateName}"`);
|
|
25
|
-
}
|
|
26
|
-
return mapping({ projectSchema }, projectSchema.shapes[shapeName]);
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* Check if a string is a known template such as `PaginatedList`
|
|
30
|
-
*/
|
|
31
|
-
export function isValidTemplate(template) {
|
|
32
|
-
return Boolean(templateMappings[template]);
|
|
33
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import type { TemplateVerbs } from './types.ts';
|
|
2
|
-
/**
|
|
3
|
-
* Construct a shape name used for a mutation input shape.
|
|
4
|
-
*/
|
|
5
|
-
export declare function getMutationInputShapeName(verb: TemplateVerbs): (shapeName: string) => string;
|
|
6
|
-
/**
|
|
7
|
-
* Create a shape name variant for an input.
|
|
8
|
-
*/
|
|
9
|
-
export declare function getInputShapeName(shapeName: string): string;
|
|
10
|
-
export declare function getOutputShapeName(name: string): string;
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { formatShapeName } from '@takeshape/util';
|
|
2
|
-
/**
|
|
3
|
-
* Construct a shape name used for a mutation input shape.
|
|
4
|
-
*/
|
|
5
|
-
export function getMutationInputShapeName(verb) {
|
|
6
|
-
return (shapeName) => {
|
|
7
|
-
return formatShapeName([verb, shapeName, 'input'], { shapeNameIndex: 1 });
|
|
8
|
-
};
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* Create a shape name variant for an input.
|
|
12
|
-
*/
|
|
13
|
-
export function getInputShapeName(shapeName) {
|
|
14
|
-
if (shapeName === 'TSRelationship') {
|
|
15
|
-
return shapeName;
|
|
16
|
-
}
|
|
17
|
-
return `${shapeName}Input`;
|
|
18
|
-
}
|
|
19
|
-
export function getOutputShapeName(name) {
|
|
20
|
-
return name.replace(/(?:Input|PartialInput)$/, '');
|
|
21
|
-
}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import type { ObjectSchema, PropertySchema, ShapeJSON } from '../project-schema/index.ts';
|
|
2
|
-
import type { ResolvedTemplate, TemplateContext } from './types.ts';
|
|
3
|
-
import { TemplateVerbs } from './types.ts';
|
|
4
|
-
export declare const TSGetArgs: (_context: unknown, shape: ShapeJSON) => ResolvedTemplate;
|
|
5
|
-
export declare const TSGetSingletonArgs: (_context: unknown, shape: ShapeJSON) => ResolvedTemplate;
|
|
6
|
-
export declare const TSListArgs: (context: TemplateContext, shape: ShapeJSON) => ResolvedTemplate;
|
|
7
|
-
export declare const TSSearchArgs: (context: TemplateContext, shape: ShapeJSON) => ResolvedTemplate;
|
|
8
|
-
export declare const CreateArgs: ({ projectSchema }: TemplateContext, shape: ShapeJSON) => ResolvedTemplate;
|
|
9
|
-
export declare const UpdateArgs: ({ projectSchema }: TemplateContext, shape: ShapeJSON) => ResolvedTemplate;
|
|
10
|
-
export declare const DuplicateArgs: ({ projectSchema }: TemplateContext, shape: ShapeJSON) => ResolvedTemplate;
|
|
11
|
-
export declare const DeleteArgs: ({ projectSchema }: TemplateContext, shape: ShapeJSON) => ResolvedTemplate;
|
|
12
|
-
export declare const PaginatedList: typeof getPaginatedListShape;
|
|
13
|
-
export declare const SearchResults: typeof getSearchResultsShape;
|
|
14
|
-
export declare const CreateResult: (_context: unknown, shape: ShapeJSON) => ResolvedTemplate;
|
|
15
|
-
export declare const UpdateResult: (_context: unknown, shape: ShapeJSON) => ResolvedTemplate;
|
|
16
|
-
export declare const DuplicateResult: (_context: unknown, shape: ShapeJSON) => ResolvedTemplate;
|
|
17
|
-
export declare const DeleteResult: (_context: unknown, shape: ShapeJSON) => ResolvedTemplate;
|
|
18
|
-
export declare const TSSearchSortInput: ShapeJSON;
|
|
19
|
-
export declare const commonSearchProps: Record<string, PropertySchema>;
|
|
20
|
-
export declare const localeProps: ObjectSchema;
|
|
21
|
-
export declare const termsProps: ObjectSchema;
|
|
22
|
-
export declare const TSContentStructureInput: ShapeJSON;
|
|
23
|
-
export declare function getPaginatedListShape(_context: unknown, shape: ShapeJSON): ResolvedTemplate;
|
|
24
|
-
export declare function getSearchResultsShape(_context: unknown, shape: ShapeJSON): ResolvedTemplate;
|
|
25
|
-
export declare function getIDQueryArgs(templateName: string): (_context: unknown, shape: ShapeJSON) => ResolvedTemplate;
|
|
26
|
-
/**
|
|
27
|
-
* Construct shapes for a mutation inputs, given source shape info.
|
|
28
|
-
*/
|
|
29
|
-
export declare function getMutationArgs(templateName: string, verb: TemplateVerbs): ({ projectSchema }: TemplateContext, shape: ShapeJSON) => ResolvedTemplate;
|
|
30
|
-
export declare function getMutationResultType(verb: TemplateVerbs): (_context: unknown, shape: ShapeJSON) => ResolvedTemplate;
|
|
31
|
-
export declare const commonSearchArgs: ObjectSchema;
|
|
32
|
-
export declare function getShapeListQueryArgs(templateName: string, legacyArgs: boolean): (context: TemplateContext, shape: ShapeJSON) => ResolvedTemplate;
|
|
@@ -1,316 +0,0 @@
|
|
|
1
|
-
import { deepClone, formatShapeName, isDefined, visit } from '@takeshape/util';
|
|
2
|
-
import get from 'lodash/get.js';
|
|
3
|
-
import keyBy from 'lodash/keyBy.js';
|
|
4
|
-
import { createInputSchema } from "../create-input-schema.js";
|
|
5
|
-
import { listTypePrefix } from "../migration/index.js";
|
|
6
|
-
import { getFlattenedTemplateShapeName, getRef, getRefShapeName, serializeRef } from "../refs.js";
|
|
7
|
-
import { createShape, getShapeDependencies } from "../schema-util.js";
|
|
8
|
-
import { isCachedShape } from "../types/index.js";
|
|
9
|
-
import { mergeObjectSchemas, mergeSchemaProperties } from "../util/merge.js";
|
|
10
|
-
import { getInputShapeName, getMutationInputShapeName } from "./names.js";
|
|
11
|
-
import { TemplateVerbs } from "./types.js";
|
|
12
|
-
import { getWhereSearchArg } from "./where.js";
|
|
13
|
-
export const TSGetArgs = getIDQueryArgs('TSGetArgs');
|
|
14
|
-
export const TSGetSingletonArgs = getIDQueryArgs('TSGetSingletonArgs');
|
|
15
|
-
export const TSListArgs = getShapeListQueryArgs('TSListArgs', true);
|
|
16
|
-
export const TSSearchArgs = getShapeListQueryArgs('TSSearchArgs', false);
|
|
17
|
-
export const CreateArgs = getMutationArgs('CreateArgs', TemplateVerbs.Create);
|
|
18
|
-
export const UpdateArgs = getMutationArgs('UpdateArgs', TemplateVerbs.Update);
|
|
19
|
-
export const DuplicateArgs = getMutationArgs('DuplicateArgs', TemplateVerbs.Duplicate);
|
|
20
|
-
export const DeleteArgs = getMutationArgs('DeleteArgs', TemplateVerbs.Delete);
|
|
21
|
-
export const PaginatedList = getPaginatedListShape;
|
|
22
|
-
export const SearchResults = getSearchResultsShape;
|
|
23
|
-
export const CreateResult = getMutationResultType(TemplateVerbs.Create);
|
|
24
|
-
export const UpdateResult = getMutationResultType(TemplateVerbs.Update);
|
|
25
|
-
export const DuplicateResult = getMutationResultType(TemplateVerbs.Duplicate);
|
|
26
|
-
export const DeleteResult = getMutationResultType(TemplateVerbs.Delete);
|
|
27
|
-
export const TSSearchSortInput = createShape('TSSearchSortInput', {
|
|
28
|
-
type: 'object',
|
|
29
|
-
properties: {
|
|
30
|
-
field: { type: 'string' },
|
|
31
|
-
order: {
|
|
32
|
-
type: 'string',
|
|
33
|
-
description: '"asc" for ascending or "desc" for descending'
|
|
34
|
-
}
|
|
35
|
-
},
|
|
36
|
-
required: ['field', 'order']
|
|
37
|
-
});
|
|
38
|
-
export const commonSearchProps = {
|
|
39
|
-
terms: { type: 'string' },
|
|
40
|
-
from: {
|
|
41
|
-
type: 'integer',
|
|
42
|
-
description: 'The offset from the first result you want to fetch.'
|
|
43
|
-
},
|
|
44
|
-
size: {
|
|
45
|
-
type: 'integer',
|
|
46
|
-
description: 'The maximum number of items to return.'
|
|
47
|
-
},
|
|
48
|
-
filter: {
|
|
49
|
-
type: 'object',
|
|
50
|
-
description: 'An elasticsearch style filter. Overrides onlyEnabled.'
|
|
51
|
-
},
|
|
52
|
-
sort: {
|
|
53
|
-
type: 'array',
|
|
54
|
-
description: 'An list of fields to sort by.',
|
|
55
|
-
items: {
|
|
56
|
-
'@ref': `local:${TSSearchSortInput.name}`
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
};
|
|
60
|
-
export const localeProps = {
|
|
61
|
-
type: 'object',
|
|
62
|
-
properties: {
|
|
63
|
-
locale: { type: 'string' },
|
|
64
|
-
enableLocaleFallback: { type: 'boolean', default: true }
|
|
65
|
-
}
|
|
66
|
-
};
|
|
67
|
-
export const termsProps = {
|
|
68
|
-
type: 'object',
|
|
69
|
-
properties: {
|
|
70
|
-
terms: { type: 'string' }
|
|
71
|
-
}
|
|
72
|
-
};
|
|
73
|
-
export const TSContentStructureInput = createShape('TSContentStructureInput', {
|
|
74
|
-
type: 'object',
|
|
75
|
-
properties: {
|
|
76
|
-
path: {
|
|
77
|
-
type: 'string',
|
|
78
|
-
description: 'A deep path to the array being updated (e.g. a.b[1].c).'
|
|
79
|
-
},
|
|
80
|
-
structure: {
|
|
81
|
-
type: 'array',
|
|
82
|
-
description: 'An array where the indices represent the to index, and the values represent the from index.' +
|
|
83
|
-
'For example to transform ["a","b","c","d"] into ["c","a"], this value would be [2,0].',
|
|
84
|
-
items: {
|
|
85
|
-
type: 'integer'
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
},
|
|
89
|
-
required: ['path']
|
|
90
|
-
}, { description: 'Describes a structural update to an array of data.' });
|
|
91
|
-
export function getPaginatedListShape(_context, shape) {
|
|
92
|
-
const shapeName = `${shape.name}${listTypePrefix}`;
|
|
93
|
-
return {
|
|
94
|
-
shapeName,
|
|
95
|
-
dependencies: {
|
|
96
|
-
[shapeName]: createShape(shapeName, {
|
|
97
|
-
type: 'object',
|
|
98
|
-
properties: {
|
|
99
|
-
items: { type: 'array', items: { '@ref': `local:${shape.name}` } },
|
|
100
|
-
total: { type: 'integer' }
|
|
101
|
-
},
|
|
102
|
-
required: ['items', 'total']
|
|
103
|
-
})
|
|
104
|
-
}
|
|
105
|
-
};
|
|
106
|
-
}
|
|
107
|
-
export function getSearchResultsShape(_context, shape) {
|
|
108
|
-
const shapeName = `${shape.name}SearchResults`;
|
|
109
|
-
return {
|
|
110
|
-
shapeName,
|
|
111
|
-
dependencies: {
|
|
112
|
-
[shapeName]: createShape(shapeName, {
|
|
113
|
-
type: 'object',
|
|
114
|
-
properties: {
|
|
115
|
-
results: {
|
|
116
|
-
type: 'array',
|
|
117
|
-
items: { '@ref': `local:${shape.name}` }
|
|
118
|
-
},
|
|
119
|
-
total: { type: 'integer' }
|
|
120
|
-
},
|
|
121
|
-
required: ['results', 'total']
|
|
122
|
-
}, { description: `${shape.name} search results` })
|
|
123
|
-
}
|
|
124
|
-
};
|
|
125
|
-
}
|
|
126
|
-
const contentStructureFields = {
|
|
127
|
-
type: 'object',
|
|
128
|
-
properties: {
|
|
129
|
-
structure: {
|
|
130
|
-
type: 'array',
|
|
131
|
-
items: {
|
|
132
|
-
'@ref': 'local:TSContentStructureInput'
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
};
|
|
137
|
-
const idSchema = {
|
|
138
|
-
type: 'object',
|
|
139
|
-
properties: {
|
|
140
|
-
_id: { type: 'string' }
|
|
141
|
-
},
|
|
142
|
-
required: ['_id']
|
|
143
|
-
};
|
|
144
|
-
export function getIDQueryArgs(templateName) {
|
|
145
|
-
return (_context, shape) => {
|
|
146
|
-
const schema = shape.model?.type !== 'single' ? mergeSchemaProperties(idSchema, localeProps) : localeProps;
|
|
147
|
-
const shapeName = getFlattenedTemplateShapeName(shape.name, templateName);
|
|
148
|
-
return {
|
|
149
|
-
shapeName,
|
|
150
|
-
dependencies: {
|
|
151
|
-
[shapeName]: createShape(shapeName, schema)
|
|
152
|
-
}
|
|
153
|
-
};
|
|
154
|
-
};
|
|
155
|
-
}
|
|
156
|
-
function rewriteRefs(context, shapeSchema, rewriteShapeName) {
|
|
157
|
-
const newSchema = deepClone(shapeSchema);
|
|
158
|
-
visit(newSchema, ['$ref', '@ref'], (_, path) => {
|
|
159
|
-
const parentPath = path.slice(0, -1);
|
|
160
|
-
const value = get(newSchema, parentPath);
|
|
161
|
-
if ((value['@ref'] || value.$ref) && !parentPath.includes('@input') && !parentPath.includes('@output')) {
|
|
162
|
-
const refItem = getRef(context, value);
|
|
163
|
-
if (refItem) {
|
|
164
|
-
value['@ref'] = serializeRef(refItem.layerId === 'local' ? { ...refItem, shapeName: rewriteShapeName(refItem.shapeName) } : refItem);
|
|
165
|
-
if (value.$ref) {
|
|
166
|
-
delete value.$ref;
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
}
|
|
170
|
-
});
|
|
171
|
-
return newSchema;
|
|
172
|
-
}
|
|
173
|
-
/**
|
|
174
|
-
* Construct shapes for a mutation inputs, given source shape info.
|
|
175
|
-
*/
|
|
176
|
-
export function getMutationArgs(templateName, verb) {
|
|
177
|
-
const getShapeName = getMutationInputShapeName(verb);
|
|
178
|
-
const addLocale = verb === TemplateVerbs.Update || verb === TemplateVerbs.Duplicate;
|
|
179
|
-
const addStructure = verb === TemplateVerbs.Update;
|
|
180
|
-
const isUpdate = verb === TemplateVerbs.Update || verb === TemplateVerbs.Duplicate;
|
|
181
|
-
return ({ projectSchema }, shape) => {
|
|
182
|
-
const inputName = getShapeName(shape.name);
|
|
183
|
-
const isSingleton = shape.model && shape.model.type === 'single';
|
|
184
|
-
const shouldRequireId = !isSingleton &&
|
|
185
|
-
(verb === TemplateVerbs.Update || verb === TemplateVerbs.Delete || verb === TemplateVerbs.Duplicate);
|
|
186
|
-
let rewrittenSchema;
|
|
187
|
-
let inputShapeSchema;
|
|
188
|
-
if (verb !== TemplateVerbs.Delete) {
|
|
189
|
-
rewrittenSchema = createInputSchema(shape.schema, { isUpdate });
|
|
190
|
-
inputShapeSchema = rewriteRefs(projectSchema, rewrittenSchema, getInputShapeName);
|
|
191
|
-
}
|
|
192
|
-
const inputShape = createShape(inputName, mergeObjectSchemas(shouldRequireId ? idSchema : undefined, inputShapeSchema), { description: `${verb} ${shape.name} input` });
|
|
193
|
-
const argsShapeName = getFlattenedTemplateShapeName(shape.name, templateName);
|
|
194
|
-
const argsShape = createShape(argsShapeName, mergeObjectSchemas({
|
|
195
|
-
type: 'object',
|
|
196
|
-
properties: {
|
|
197
|
-
input: { '@ref': `local:${inputShape.name}` },
|
|
198
|
-
clientMutationId: { type: 'string' }
|
|
199
|
-
},
|
|
200
|
-
required: ['input']
|
|
201
|
-
}, addStructure ? contentStructureFields : undefined, addLocale ? localeProps : undefined));
|
|
202
|
-
return {
|
|
203
|
-
shapeName: argsShapeName,
|
|
204
|
-
dependencies: {
|
|
205
|
-
[inputName]: inputShape,
|
|
206
|
-
[argsShapeName]: argsShape,
|
|
207
|
-
...(verb !== TemplateVerbs.Delete &&
|
|
208
|
-
keyBy(getShapeDependencies(projectSchema,
|
|
209
|
-
// get the shape dependencies of the shape with the @input swapped
|
|
210
|
-
createShape(inputShape.name, rewrittenSchema), (propSchema) => {
|
|
211
|
-
if (propSchema['@resolver']) {
|
|
212
|
-
return false;
|
|
213
|
-
}
|
|
214
|
-
const shapeName = getRefShapeName(projectSchema, propSchema);
|
|
215
|
-
if (shapeName) {
|
|
216
|
-
return shapeName !== 'TSRelationship' && !projectSchema.shapes[getInputShapeName(shapeName)];
|
|
217
|
-
}
|
|
218
|
-
return true;
|
|
219
|
-
})
|
|
220
|
-
.map((shapeName) => {
|
|
221
|
-
const shape = projectSchema.shapes[shapeName];
|
|
222
|
-
if (!shape) {
|
|
223
|
-
return;
|
|
224
|
-
}
|
|
225
|
-
// We only allow partial input at the top-level
|
|
226
|
-
return createShape(getInputShapeName(shapeName), rewriteRefs(projectSchema, createInputSchema(shape.schema), getInputShapeName));
|
|
227
|
-
})
|
|
228
|
-
.filter(isDefined), 'name')),
|
|
229
|
-
...(addStructure ? { TSContentStructureInput } : {})
|
|
230
|
-
}
|
|
231
|
-
};
|
|
232
|
-
};
|
|
233
|
-
}
|
|
234
|
-
export function getMutationResultType(verb) {
|
|
235
|
-
return (_context, shape) => {
|
|
236
|
-
const shapeName = formatShapeName([verb, shape.name, 'result'], {
|
|
237
|
-
shapeNameIndex: 1
|
|
238
|
-
});
|
|
239
|
-
const result = verb === TemplateVerbs.Delete ? { type: 'boolean' } : { '@ref': `local:${shape.name}` };
|
|
240
|
-
return {
|
|
241
|
-
shapeName,
|
|
242
|
-
dependencies: {
|
|
243
|
-
[shapeName]: createShape(shapeName, {
|
|
244
|
-
type: 'object',
|
|
245
|
-
properties: {
|
|
246
|
-
clientMutationId: { type: 'string' },
|
|
247
|
-
result
|
|
248
|
-
}
|
|
249
|
-
})
|
|
250
|
-
}
|
|
251
|
-
};
|
|
252
|
-
};
|
|
253
|
-
}
|
|
254
|
-
export const commonSearchArgs = {
|
|
255
|
-
type: 'object',
|
|
256
|
-
properties: {
|
|
257
|
-
terms: { type: 'string' },
|
|
258
|
-
from: {
|
|
259
|
-
type: 'integer',
|
|
260
|
-
description: 'The offset from the first result you want to fetch.'
|
|
261
|
-
},
|
|
262
|
-
size: {
|
|
263
|
-
type: 'integer',
|
|
264
|
-
description: 'The maximum number of items to return.'
|
|
265
|
-
},
|
|
266
|
-
filter: {
|
|
267
|
-
type: 'object',
|
|
268
|
-
description: 'An elasticsearch style filter. Overrides onlyEnabled.'
|
|
269
|
-
},
|
|
270
|
-
sort: {
|
|
271
|
-
type: 'array',
|
|
272
|
-
description: 'An list of fields to sort by.',
|
|
273
|
-
items: {
|
|
274
|
-
'@ref': `local:${TSSearchSortInput.name}`
|
|
275
|
-
}
|
|
276
|
-
}
|
|
277
|
-
}
|
|
278
|
-
};
|
|
279
|
-
const legacyListArgs = {
|
|
280
|
-
type: 'object',
|
|
281
|
-
properties: {
|
|
282
|
-
onlyEnabled: {
|
|
283
|
-
type: 'boolean',
|
|
284
|
-
default: true,
|
|
285
|
-
description: 'Filter out content that is not enabled. Defaults to true.'
|
|
286
|
-
}
|
|
287
|
-
}
|
|
288
|
-
};
|
|
289
|
-
const shapeFilterProps = {
|
|
290
|
-
type: 'object',
|
|
291
|
-
properties: {
|
|
292
|
-
shapeNames: { type: 'array', items: { type: 'string' } },
|
|
293
|
-
shapeIds: { type: 'array', items: { type: 'string' } },
|
|
294
|
-
contentTypeNames: { type: 'array', items: { type: 'string' } },
|
|
295
|
-
contentTypeIds: { type: 'array', items: { type: 'string' } }
|
|
296
|
-
}
|
|
297
|
-
};
|
|
298
|
-
export function getShapeListQueryArgs(templateName, legacyArgs) {
|
|
299
|
-
return (context, shape) => {
|
|
300
|
-
const { projectSchema } = context;
|
|
301
|
-
const isAllShapes = shape.name === 'TSSearchable';
|
|
302
|
-
const shapeName = isAllShapes ? templateName : getFlattenedTemplateShapeName(shape.name, templateName);
|
|
303
|
-
const shapes = isAllShapes
|
|
304
|
-
? Object.values(projectSchema.shapes).filter((s) => s.model !== undefined || isCachedShape(s))
|
|
305
|
-
: [shape];
|
|
306
|
-
const { schema, dependencies } = getWhereSearchArg(projectSchema, shapes);
|
|
307
|
-
return {
|
|
308
|
-
shapeName,
|
|
309
|
-
dependencies: {
|
|
310
|
-
...dependencies,
|
|
311
|
-
TSSearchSortInput,
|
|
312
|
-
[shapeName]: createShape(shapeName, mergeObjectSchemas(commonSearchArgs, localeProps, legacyArgs ? legacyListArgs : undefined, isAllShapes ? shapeFilterProps : undefined, schema))
|
|
313
|
-
}
|
|
314
|
-
};
|
|
315
|
-
};
|
|
316
|
-
}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import type { ProjectSchemaJSON, ShapeJSON, ShapeMap } from '../project-schema/index.ts';
|
|
2
|
-
export type ResolvedTemplate = {
|
|
3
|
-
shapeName: string;
|
|
4
|
-
dependencies: ShapeMap;
|
|
5
|
-
};
|
|
6
|
-
export type TemplateContext = {
|
|
7
|
-
projectSchema: ProjectSchemaJSON;
|
|
8
|
-
};
|
|
9
|
-
export type TemplateShapeFactory = (context: TemplateContext, shape: ShapeJSON) => ResolvedTemplate;
|
|
10
|
-
export declare enum TemplateVerbs {
|
|
11
|
-
Create = "create",
|
|
12
|
-
Update = "update",
|
|
13
|
-
Duplicate = "duplicate",
|
|
14
|
-
Delete = "delete"
|
|
15
|
-
}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import type { Maybe } from '@takeshape/util';
|
|
2
|
-
import type { ObjectSchema, ProjectSchemaJSON, PropertySchema, ShapeJSON, ShapeMap } from '../project-schema/index.ts';
|
|
3
|
-
import type { ResolvedTemplate } from './types.ts';
|
|
4
|
-
export declare const MAX_RELATIONSHIP_DEPTH = 1;
|
|
5
|
-
export declare const exceededRelationshipDepth: (depth?: number) => boolean;
|
|
6
|
-
type ComparisonOperatorKey = 'eq' | 'lt' | 'lte' | 'gt' | 'gte' | 'in' | 'match' | 'regexp';
|
|
7
|
-
type ShapeThunk = ShapeJSON | (() => ShapeJSON);
|
|
8
|
-
declare class ShapeCache {
|
|
9
|
-
thunks: Map<string, ShapeThunk>;
|
|
10
|
-
unresolved: Set<string>;
|
|
11
|
-
has(shapeName: string): boolean;
|
|
12
|
-
set(shapeName: string, thunk: ShapeThunk): void;
|
|
13
|
-
resolveAll(): ShapeMap;
|
|
14
|
-
}
|
|
15
|
-
export declare const fieldTypeComparison: Record<string, {
|
|
16
|
-
comparators: ComparisonOperatorKey[];
|
|
17
|
-
type: 'string' | 'number' | 'integer' | 'boolean';
|
|
18
|
-
}>;
|
|
19
|
-
export declare const comparatorDescriptions: Record<string, string>;
|
|
20
|
-
export declare const booleanOperators: string[];
|
|
21
|
-
export declare const boolOpDescriptionMap: Record<string, string>;
|
|
22
|
-
export declare function getFieldTypeComparison(fieldType: string): Maybe<Record<string, PropertySchema>>;
|
|
23
|
-
export type PropertyContext = {
|
|
24
|
-
shapeCache: ShapeCache;
|
|
25
|
-
conflictingProperties?: Set<string>;
|
|
26
|
-
projectSchema: ProjectSchemaJSON;
|
|
27
|
-
relationshipDepth: number;
|
|
28
|
-
booleanOperators?: boolean;
|
|
29
|
-
};
|
|
30
|
-
export declare function getFields(typeName: string, shapes: ShapeJSON[], context: PropertyContext): Record<string, PropertySchema>;
|
|
31
|
-
export declare function getPropertyComparisonType(name: string, prop: PropertySchema, shapeName: string, context: PropertyContext): Maybe<Record<string, PropertySchema>>;
|
|
32
|
-
export declare function getWhereShape(projectSchema: ProjectSchemaJSON, selectedShapes: ShapeJSON[]): ResolvedTemplate;
|
|
33
|
-
export declare function getWhereSearchArg(projectSchema: ProjectSchemaJSON, selectedShapes: ShapeJSON[]): {
|
|
34
|
-
schema: ObjectSchema;
|
|
35
|
-
dependencies: ShapeMap;
|
|
36
|
-
};
|
|
37
|
-
export {};
|