@strapi/plugin-graphql 5.37.1 → 5.38.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/admin/index.js.map +1 -1
- package/dist/admin/index.mjs.map +1 -1
- package/dist/admin/package.json.js +1 -133
- package/dist/admin/package.json.js.map +1 -1
- package/dist/admin/package.json.mjs +2 -120
- package/dist/admin/package.json.mjs.map +1 -1
- package/dist/admin/utils/prefixPluginTranslations.js.map +1 -1
- package/dist/admin/utils/prefixPluginTranslations.mjs.map +1 -1
- package/dist/server/bootstrap.js.map +1 -1
- package/dist/server/bootstrap.mjs.map +1 -1
- package/dist/server/config/default-config.js.map +1 -1
- package/dist/server/config/default-config.mjs.map +1 -1
- package/dist/server/config/index.js.map +1 -1
- package/dist/server/config/index.mjs.map +1 -1
- package/dist/server/format-graphql-error.js.map +1 -1
- package/dist/server/format-graphql-error.mjs.map +1 -1
- package/dist/server/index.js +4 -4
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.mjs.map +1 -1
- package/dist/server/services/builders/dynamic-zones.js.map +1 -1
- package/dist/server/services/builders/dynamic-zones.mjs.map +1 -1
- package/dist/server/services/builders/entity.js.map +1 -1
- package/dist/server/services/builders/entity.mjs.map +1 -1
- package/dist/server/services/builders/enums.js.map +1 -1
- package/dist/server/services/builders/enums.mjs.map +1 -1
- package/dist/server/services/builders/filters/content-type.js.map +1 -1
- package/dist/server/services/builders/filters/content-type.mjs.map +1 -1
- package/dist/server/services/builders/filters/index.js.map +1 -1
- package/dist/server/services/builders/filters/index.mjs.map +1 -1
- package/dist/server/services/builders/filters/operators/and.js.map +1 -1
- package/dist/server/services/builders/filters/operators/and.mjs.map +1 -1
- package/dist/server/services/builders/filters/operators/between.js.map +1 -1
- package/dist/server/services/builders/filters/operators/between.mjs.map +1 -1
- package/dist/server/services/builders/filters/operators/contains.js.map +1 -1
- package/dist/server/services/builders/filters/operators/contains.mjs.map +1 -1
- package/dist/server/services/builders/filters/operators/containsi.js.map +1 -1
- package/dist/server/services/builders/filters/operators/containsi.mjs.map +1 -1
- package/dist/server/services/builders/filters/operators/ends-with.js.map +1 -1
- package/dist/server/services/builders/filters/operators/ends-with.mjs.map +1 -1
- package/dist/server/services/builders/filters/operators/eq.js.map +1 -1
- package/dist/server/services/builders/filters/operators/eq.mjs.map +1 -1
- package/dist/server/services/builders/filters/operators/eqi.js.map +1 -1
- package/dist/server/services/builders/filters/operators/eqi.mjs.map +1 -1
- package/dist/server/services/builders/filters/operators/gt.js.map +1 -1
- package/dist/server/services/builders/filters/operators/gt.mjs.map +1 -1
- package/dist/server/services/builders/filters/operators/gte.js.map +1 -1
- package/dist/server/services/builders/filters/operators/gte.mjs.map +1 -1
- package/dist/server/services/builders/filters/operators/in.js.map +1 -1
- package/dist/server/services/builders/filters/operators/in.mjs.map +1 -1
- package/dist/server/services/builders/filters/operators/index.js.map +1 -1
- package/dist/server/services/builders/filters/operators/index.mjs +4 -4
- package/dist/server/services/builders/filters/operators/index.mjs.map +1 -1
- package/dist/server/services/builders/filters/operators/lt.js.map +1 -1
- package/dist/server/services/builders/filters/operators/lt.mjs.map +1 -1
- package/dist/server/services/builders/filters/operators/lte.js.map +1 -1
- package/dist/server/services/builders/filters/operators/lte.mjs.map +1 -1
- package/dist/server/services/builders/filters/operators/ne.js.map +1 -1
- package/dist/server/services/builders/filters/operators/ne.mjs.map +1 -1
- package/dist/server/services/builders/filters/operators/nei.js.map +1 -1
- package/dist/server/services/builders/filters/operators/nei.mjs.map +1 -1
- package/dist/server/services/builders/filters/operators/not-contains.js.map +1 -1
- package/dist/server/services/builders/filters/operators/not-contains.mjs.map +1 -1
- package/dist/server/services/builders/filters/operators/not-containsi.js.map +1 -1
- package/dist/server/services/builders/filters/operators/not-containsi.mjs.map +1 -1
- package/dist/server/services/builders/filters/operators/not-in.js.map +1 -1
- package/dist/server/services/builders/filters/operators/not-in.mjs.map +1 -1
- package/dist/server/services/builders/filters/operators/not-null.js.map +1 -1
- package/dist/server/services/builders/filters/operators/not-null.mjs.map +1 -1
- package/dist/server/services/builders/filters/operators/not.js.map +1 -1
- package/dist/server/services/builders/filters/operators/not.mjs.map +1 -1
- package/dist/server/services/builders/filters/operators/null.js.map +1 -1
- package/dist/server/services/builders/filters/operators/null.mjs.map +1 -1
- package/dist/server/services/builders/filters/operators/or.js.map +1 -1
- package/dist/server/services/builders/filters/operators/or.mjs.map +1 -1
- package/dist/server/services/builders/filters/operators/starts-with.js.map +1 -1
- package/dist/server/services/builders/filters/operators/starts-with.mjs.map +1 -1
- package/dist/server/services/builders/generic-morph.js.map +1 -1
- package/dist/server/services/builders/generic-morph.mjs.map +1 -1
- package/dist/server/services/builders/index.js.map +1 -1
- package/dist/server/services/builders/index.mjs.map +1 -1
- package/dist/server/services/builders/input.js.map +1 -1
- package/dist/server/services/builders/input.mjs.map +1 -1
- package/dist/server/services/builders/mutations/collection-type.js.map +1 -1
- package/dist/server/services/builders/mutations/collection-type.mjs.map +1 -1
- package/dist/server/services/builders/mutations/index.js.map +1 -1
- package/dist/server/services/builders/mutations/index.mjs.map +1 -1
- package/dist/server/services/builders/mutations/single-type.js.map +1 -1
- package/dist/server/services/builders/mutations/single-type.mjs.map +1 -1
- package/dist/server/services/builders/queries/collection-type.js.map +1 -1
- package/dist/server/services/builders/queries/collection-type.mjs.map +1 -1
- package/dist/server/services/builders/queries/index.js.map +1 -1
- package/dist/server/services/builders/queries/index.mjs.map +1 -1
- package/dist/server/services/builders/queries/single-type.js.map +1 -1
- package/dist/server/services/builders/queries/single-type.mjs.map +1 -1
- package/dist/server/services/builders/relation-response-collection.js.map +1 -1
- package/dist/server/services/builders/relation-response-collection.mjs.map +1 -1
- package/dist/server/services/builders/resolvers/association.js.map +1 -1
- package/dist/server/services/builders/resolvers/association.mjs +1 -1
- package/dist/server/services/builders/resolvers/association.mjs.map +1 -1
- package/dist/server/services/builders/resolvers/component.js.map +1 -1
- package/dist/server/services/builders/resolvers/component.mjs.map +1 -1
- package/dist/server/services/builders/resolvers/dynamic-zone.js.map +1 -1
- package/dist/server/services/builders/resolvers/dynamic-zone.mjs.map +1 -1
- package/dist/server/services/builders/resolvers/index.js.map +1 -1
- package/dist/server/services/builders/resolvers/index.mjs.map +1 -1
- package/dist/server/services/builders/resolvers/pagination.js.map +1 -1
- package/dist/server/services/builders/resolvers/pagination.mjs.map +1 -1
- package/dist/server/services/builders/resolvers/query.js.map +1 -1
- package/dist/server/services/builders/resolvers/query.mjs.map +1 -1
- package/dist/server/services/builders/response-collection.js.map +1 -1
- package/dist/server/services/builders/response-collection.mjs.map +1 -1
- package/dist/server/services/builders/response.js.map +1 -1
- package/dist/server/services/builders/response.mjs.map +1 -1
- package/dist/server/services/builders/type.js +1 -3
- package/dist/server/services/builders/type.js.map +1 -1
- package/dist/server/services/builders/type.mjs +1 -3
- package/dist/server/services/builders/type.mjs.map +1 -1
- package/dist/server/services/builders/utils.js.map +1 -1
- package/dist/server/services/builders/utils.mjs +2 -2
- package/dist/server/services/builders/utils.mjs.map +1 -1
- package/dist/server/services/constants.js.map +1 -1
- package/dist/server/services/constants.mjs.map +1 -1
- package/dist/server/services/content-api/index.js.map +1 -1
- package/dist/server/services/content-api/index.mjs.map +1 -1
- package/dist/server/services/content-api/policy.js.map +1 -1
- package/dist/server/services/content-api/policy.mjs +1 -1
- package/dist/server/services/content-api/policy.mjs.map +1 -1
- package/dist/server/services/content-api/register-functions/collection-type.js.map +1 -1
- package/dist/server/services/content-api/register-functions/collection-type.mjs.map +1 -1
- package/dist/server/services/content-api/register-functions/component.js.map +1 -1
- package/dist/server/services/content-api/register-functions/component.mjs.map +1 -1
- package/dist/server/services/content-api/register-functions/dynamic-zones.js.map +1 -1
- package/dist/server/services/content-api/register-functions/dynamic-zones.mjs.map +1 -1
- package/dist/server/services/content-api/register-functions/enums.js.map +1 -1
- package/dist/server/services/content-api/register-functions/enums.mjs.map +1 -1
- package/dist/server/services/content-api/register-functions/filters.js.map +1 -1
- package/dist/server/services/content-api/register-functions/filters.mjs.map +1 -1
- package/dist/server/services/content-api/register-functions/inputs.js.map +1 -1
- package/dist/server/services/content-api/register-functions/inputs.mjs.map +1 -1
- package/dist/server/services/content-api/register-functions/internals.js.map +1 -1
- package/dist/server/services/content-api/register-functions/internals.mjs.map +1 -1
- package/dist/server/services/content-api/register-functions/polymorphic.js.map +1 -1
- package/dist/server/services/content-api/register-functions/polymorphic.mjs.map +1 -1
- package/dist/server/services/content-api/register-functions/scalars.js.map +1 -1
- package/dist/server/services/content-api/register-functions/scalars.mjs.map +1 -1
- package/dist/server/services/content-api/register-functions/single-type.js.map +1 -1
- package/dist/server/services/content-api/register-functions/single-type.mjs.map +1 -1
- package/dist/server/services/content-api/wrap-resolvers.js.map +1 -1
- package/dist/server/services/content-api/wrap-resolvers.mjs.map +1 -1
- package/dist/server/services/extension/extension.js.map +1 -1
- package/dist/server/services/extension/extension.mjs.map +1 -1
- package/dist/server/services/extension/shadow-crud-manager.js.map +1 -1
- package/dist/server/services/extension/shadow-crud-manager.mjs.map +1 -1
- package/dist/server/services/format/index.js.map +1 -1
- package/dist/server/services/format/index.mjs.map +1 -1
- package/dist/server/services/format/return-types.js.map +1 -1
- package/dist/server/services/format/return-types.mjs.map +1 -1
- package/dist/server/services/index.js +8 -8
- package/dist/server/services/index.js.map +1 -1
- package/dist/server/services/index.mjs.map +1 -1
- package/dist/server/services/internals/args/index.js.map +1 -1
- package/dist/server/services/internals/args/index.mjs.map +1 -1
- package/dist/server/services/internals/args/pagination.js.map +1 -1
- package/dist/server/services/internals/args/pagination.mjs.map +1 -1
- package/dist/server/services/internals/args/publication-status.js.map +1 -1
- package/dist/server/services/internals/args/publication-status.mjs.map +1 -1
- package/dist/server/services/internals/args/sort.js.map +1 -1
- package/dist/server/services/internals/args/sort.mjs.map +1 -1
- package/dist/server/services/internals/helpers/get-enabled-scalars.js.map +1 -1
- package/dist/server/services/internals/helpers/get-enabled-scalars.mjs.map +1 -1
- package/dist/server/services/internals/helpers/index.js.map +1 -1
- package/dist/server/services/internals/helpers/index.mjs.map +1 -1
- package/dist/server/services/internals/index.js +8 -8
- package/dist/server/services/internals/index.js.map +1 -1
- package/dist/server/services/internals/index.mjs.map +1 -1
- package/dist/server/services/internals/scalars/date.js.map +1 -1
- package/dist/server/services/internals/scalars/date.mjs.map +1 -1
- package/dist/server/services/internals/scalars/index.js.map +1 -1
- package/dist/server/services/internals/scalars/index.mjs +1 -1
- package/dist/server/services/internals/scalars/index.mjs.map +1 -1
- package/dist/server/services/internals/scalars/time.js.map +1 -1
- package/dist/server/services/internals/scalars/time.mjs +1 -1
- package/dist/server/services/internals/scalars/time.mjs.map +1 -1
- package/dist/server/services/internals/types/delete-mutation-response.js.map +1 -1
- package/dist/server/services/internals/types/delete-mutation-response.mjs.map +1 -1
- package/dist/server/services/internals/types/error.js.map +1 -1
- package/dist/server/services/internals/types/error.mjs.map +1 -1
- package/dist/server/services/internals/types/filters.js.map +1 -1
- package/dist/server/services/internals/types/filters.mjs.map +1 -1
- package/dist/server/services/internals/types/index.js.map +1 -1
- package/dist/server/services/internals/types/index.mjs.map +1 -1
- package/dist/server/services/internals/types/pagination.js.map +1 -1
- package/dist/server/services/internals/types/pagination.mjs.map +1 -1
- package/dist/server/services/internals/types/publication-status.js.map +1 -1
- package/dist/server/services/internals/types/publication-status.mjs.map +1 -1
- package/dist/server/services/internals/types/response-collection-meta.js.map +1 -1
- package/dist/server/services/internals/types/response-collection-meta.mjs.map +1 -1
- package/dist/server/services/type-registry.js.map +1 -1
- package/dist/server/services/type-registry.mjs.map +1 -1
- package/dist/server/services/utils/attributes.js.map +1 -1
- package/dist/server/services/utils/attributes.mjs.map +1 -1
- package/dist/server/services/utils/index.js.map +1 -1
- package/dist/server/services/utils/index.mjs.map +1 -1
- package/dist/server/services/utils/mappers/entity-to-response-entity.js.map +1 -1
- package/dist/server/services/utils/mappers/entity-to-response-entity.mjs +5 -5
- package/dist/server/services/utils/mappers/entity-to-response-entity.mjs.map +1 -1
- package/dist/server/services/utils/mappers/graphql-filters-to-strapi-query.js.map +1 -1
- package/dist/server/services/utils/mappers/graphql-filters-to-strapi-query.mjs.map +1 -1
- package/dist/server/services/utils/mappers/graphql-scalar-to-operators.js.map +1 -1
- package/dist/server/services/utils/mappers/graphql-scalar-to-operators.mjs.map +1 -1
- package/dist/server/services/utils/mappers/index.js.map +1 -1
- package/dist/server/services/utils/mappers/index.mjs.map +1 -1
- package/dist/server/services/utils/mappers/strapi-scalar-to-graphql-scalar.js.map +1 -1
- package/dist/server/services/utils/mappers/strapi-scalar-to-graphql-scalar.mjs.map +1 -1
- package/dist/server/services/utils/naming.js.map +1 -1
- package/dist/server/services/utils/naming.mjs.map +1 -1
- package/dist/server/services/utils/playground.js.map +1 -1
- package/dist/server/services/utils/playground.mjs.map +1 -1
- package/package.json +8 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"polymorphic.js","sources":["../../../../../server/src/services/content-api/register-functions/polymorphic.ts"],"sourcesContent":["import { unionType } from 'nexus';\nimport type { Struct } from '@strapi/types';\nimport type { Context } from '../../types';\n\nconst registerPolymorphicContentType = (\n contentType: Struct.Schema,\n { registry, strapi }: Context\n) => {\n const { service: getService } = strapi.plugin('graphql');\n\n const {\n naming,\n attributes: { isMorphRelation },\n } = getService('utils');\n const { KINDS } = getService('constants');\n\n const { attributes = {} } = contentType;\n\n // Isolate its polymorphic attributes\n const morphAttributes = Object.entries(attributes).filter(([, attribute]) =>\n isMorphRelation(attribute)\n );\n\n // For each one of those polymorphic attribute\n for (const [attributeName, attribute] of morphAttributes) {\n const name = naming.getMorphRelationTypeName(contentType, attributeName);\n const { target } = attribute as any;\n\n // Ignore those whose target is not an array\n if (!Array.isArray(target)) {\n continue;\n }\n\n // Transform target UIDs into types names\n const members = target\n // Get content types definitions\n .map((uid) => strapi.getModel(uid))\n // Resolve types names\n .map((contentType) => naming.getTypeName(contentType));\n\n // Register the new polymorphic union type\n registry.register(\n name,\n\n unionType({\n name,\n\n resolveType(obj) {\n const contentType = strapi.getModel(obj.__type);\n\n if (!contentType) {\n return null;\n }\n\n if (contentType.modelType === 'component') {\n return naming.getComponentName(contentType);\n }\n\n return naming.getTypeName(contentType);\n },\n\n definition(t) {\n t.members(...members);\n },\n }),\n\n { kind: KINDS.morph, contentType, attributeName }\n );\n }\n};\n\nexport { registerPolymorphicContentType };\n"],"names":["registerPolymorphicContentType","contentType","registry","strapi","service","getService","plugin","naming","attributes","isMorphRelation","KINDS","morphAttributes","Object","entries","filter","attribute","attributeName","name","getMorphRelationTypeName","target","Array","isArray","members","map","uid","getModel","getTypeName","register","unionType","resolveType","obj","__type","modelType","getComponentName","definition","t","kind","morph"],"mappings":";;;;AAIA,MAAMA,iCAAiC,CACrCC,WAAAA,EACA,EAAEC,QAAQ,EAAEC,MAAM,EAAW,GAAA;AAE7B,IAAA,MAAM,EAAEC,
|
|
1
|
+
{"version":3,"file":"polymorphic.js","sources":["../../../../../server/src/services/content-api/register-functions/polymorphic.ts"],"sourcesContent":["import { unionType } from 'nexus';\nimport type { Struct } from '@strapi/types';\nimport type { Context } from '../../types';\n\nconst registerPolymorphicContentType = (\n contentType: Struct.Schema,\n { registry, strapi }: Context\n) => {\n const { service: getService } = strapi.plugin('graphql');\n\n const {\n naming,\n attributes: { isMorphRelation },\n } = getService('utils');\n const { KINDS } = getService('constants');\n\n const { attributes = {} } = contentType;\n\n // Isolate its polymorphic attributes\n const morphAttributes = Object.entries(attributes).filter(([, attribute]) =>\n isMorphRelation(attribute)\n );\n\n // For each one of those polymorphic attribute\n for (const [attributeName, attribute] of morphAttributes) {\n const name = naming.getMorphRelationTypeName(contentType, attributeName);\n const { target } = attribute as any;\n\n // Ignore those whose target is not an array\n if (!Array.isArray(target)) {\n continue;\n }\n\n // Transform target UIDs into types names\n const members = target\n // Get content types definitions\n .map((uid) => strapi.getModel(uid))\n // Resolve types names\n .map((contentType) => naming.getTypeName(contentType));\n\n // Register the new polymorphic union type\n registry.register(\n name,\n\n unionType({\n name,\n\n resolveType(obj) {\n const contentType = strapi.getModel(obj.__type);\n\n if (!contentType) {\n return null;\n }\n\n if (contentType.modelType === 'component') {\n return naming.getComponentName(contentType);\n }\n\n return naming.getTypeName(contentType);\n },\n\n definition(t) {\n t.members(...members);\n },\n }),\n\n { kind: KINDS.morph, contentType, attributeName }\n );\n }\n};\n\nexport { registerPolymorphicContentType };\n"],"names":["registerPolymorphicContentType","contentType","registry","strapi","service","getService","plugin","naming","attributes","isMorphRelation","KINDS","morphAttributes","Object","entries","filter","attribute","attributeName","name","getMorphRelationTypeName","target","Array","isArray","members","map","uid","getModel","getTypeName","register","unionType","resolveType","obj","__type","modelType","getComponentName","definition","t","kind","morph"],"mappings":";;;;AAIA,MAAMA,iCAAiC,CACrCC,WAAAA,EACA,EAAEC,QAAQ,EAAEC,MAAM,EAAW,GAAA;AAE7B,IAAA,MAAM,EAAEC,OAAAA,EAASC,UAAU,EAAE,GAAGF,MAAAA,CAAOG,MAAM,CAAC,SAAA,CAAA;IAE9C,MAAM,EACJC,MAAM,EACNC,UAAAA,EAAY,EAAEC,eAAe,EAAE,EAChC,GAAGJ,UAAAA,CAAW,OAAA,CAAA;AACf,IAAA,MAAM,EAAEK,KAAK,EAAE,GAAGL,UAAAA,CAAW,WAAA,CAAA;AAE7B,IAAA,MAAM,EAAEG,UAAAA,GAAa,EAAE,EAAE,GAAGP,WAAAA;;IAG5B,MAAMU,eAAAA,GAAkBC,MAAAA,CAAOC,OAAO,CAACL,UAAAA,CAAAA,CAAYM,MAAM,CAAC,CAAC,GAAGC,SAAAA,CAAU,GACtEN,eAAAA,CAAgBM,SAAAA,CAAAA,CAAAA;;AAIlB,IAAA,KAAK,MAAM,CAACC,aAAAA,EAAeD,SAAAA,CAAU,IAAIJ,eAAAA,CAAiB;AACxD,QAAA,MAAMM,IAAAA,GAAOV,MAAAA,CAAOW,wBAAwB,CAACjB,WAAAA,EAAae,aAAAA,CAAAA;QAC1D,MAAM,EAAEG,MAAM,EAAE,GAAGJ,SAAAA;;AAGnB,QAAA,IAAI,CAACK,KAAAA,CAAMC,OAAO,CAACF,MAAAA,CAAAA,EAAS;AAC1B,YAAA;AACF,QAAA;;QAGA,MAAMG,OAAAA,GAAUH,MACd;AACCI,SAAAA,GAAG,CAAC,CAACC,GAAAA,GAAQrB,OAAOsB,QAAQ,CAACD,KAC9B;AACCD,SAAAA,GAAG,CAAC,CAACtB,WAAAA,GAAgBM,MAAAA,CAAOmB,WAAW,CAACzB,WAAAA,CAAAA,CAAAA;;QAG3CC,QAAAA,CAASyB,QAAQ,CACfV,IAAAA,EAEAW,eAAAA,CAAU;AACRX,YAAAA,IAAAA;AAEAY,YAAAA,WAAAA,CAAAA,CAAYC,GAAG,EAAA;AACb,gBAAA,MAAM7B,WAAAA,GAAcE,MAAAA,CAAOsB,QAAQ,CAACK,IAAIC,MAAM,CAAA;AAE9C,gBAAA,IAAI,CAAC9B,WAAAA,EAAa;oBAChB,OAAO,IAAA;AACT,gBAAA;gBAEA,IAAIA,WAAAA,CAAY+B,SAAS,KAAK,WAAA,EAAa;oBACzC,OAAOzB,MAAAA,CAAO0B,gBAAgB,CAAChC,WAAAA,CAAAA;AACjC,gBAAA;gBAEA,OAAOM,MAAAA,CAAOmB,WAAW,CAACzB,WAAAA,CAAAA;AAC5B,YAAA,CAAA;AAEAiC,YAAAA,UAAAA,CAAAA,CAAWC,CAAC,EAAA;AACVA,gBAAAA,CAAAA,CAAEb,OAAO,CAAA,GAAIA,OAAAA,CAAAA;AACf,YAAA;SACF,CAAA,EAEA;AAAEc,YAAAA,IAAAA,EAAM1B,MAAM2B,KAAK;AAAEpC,YAAAA,WAAAA;AAAae,YAAAA;AAAc,SAAA,CAAA;AAEpD,IAAA;AACF;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"polymorphic.mjs","sources":["../../../../../server/src/services/content-api/register-functions/polymorphic.ts"],"sourcesContent":["import { unionType } from 'nexus';\nimport type { Struct } from '@strapi/types';\nimport type { Context } from '../../types';\n\nconst registerPolymorphicContentType = (\n contentType: Struct.Schema,\n { registry, strapi }: Context\n) => {\n const { service: getService } = strapi.plugin('graphql');\n\n const {\n naming,\n attributes: { isMorphRelation },\n } = getService('utils');\n const { KINDS } = getService('constants');\n\n const { attributes = {} } = contentType;\n\n // Isolate its polymorphic attributes\n const morphAttributes = Object.entries(attributes).filter(([, attribute]) =>\n isMorphRelation(attribute)\n );\n\n // For each one of those polymorphic attribute\n for (const [attributeName, attribute] of morphAttributes) {\n const name = naming.getMorphRelationTypeName(contentType, attributeName);\n const { target } = attribute as any;\n\n // Ignore those whose target is not an array\n if (!Array.isArray(target)) {\n continue;\n }\n\n // Transform target UIDs into types names\n const members = target\n // Get content types definitions\n .map((uid) => strapi.getModel(uid))\n // Resolve types names\n .map((contentType) => naming.getTypeName(contentType));\n\n // Register the new polymorphic union type\n registry.register(\n name,\n\n unionType({\n name,\n\n resolveType(obj) {\n const contentType = strapi.getModel(obj.__type);\n\n if (!contentType) {\n return null;\n }\n\n if (contentType.modelType === 'component') {\n return naming.getComponentName(contentType);\n }\n\n return naming.getTypeName(contentType);\n },\n\n definition(t) {\n t.members(...members);\n },\n }),\n\n { kind: KINDS.morph, contentType, attributeName }\n );\n }\n};\n\nexport { registerPolymorphicContentType };\n"],"names":["registerPolymorphicContentType","contentType","registry","strapi","service","getService","plugin","naming","attributes","isMorphRelation","KINDS","morphAttributes","Object","entries","filter","attribute","attributeName","name","getMorphRelationTypeName","target","Array","isArray","members","map","uid","getModel","getTypeName","register","unionType","resolveType","obj","__type","modelType","getComponentName","definition","t","kind","morph"],"mappings":";;AAIA,MAAMA,iCAAiC,CACrCC,WAAAA,EACA,EAAEC,QAAQ,EAAEC,MAAM,EAAW,GAAA;AAE7B,IAAA,MAAM,EAAEC,
|
|
1
|
+
{"version":3,"file":"polymorphic.mjs","sources":["../../../../../server/src/services/content-api/register-functions/polymorphic.ts"],"sourcesContent":["import { unionType } from 'nexus';\nimport type { Struct } from '@strapi/types';\nimport type { Context } from '../../types';\n\nconst registerPolymorphicContentType = (\n contentType: Struct.Schema,\n { registry, strapi }: Context\n) => {\n const { service: getService } = strapi.plugin('graphql');\n\n const {\n naming,\n attributes: { isMorphRelation },\n } = getService('utils');\n const { KINDS } = getService('constants');\n\n const { attributes = {} } = contentType;\n\n // Isolate its polymorphic attributes\n const morphAttributes = Object.entries(attributes).filter(([, attribute]) =>\n isMorphRelation(attribute)\n );\n\n // For each one of those polymorphic attribute\n for (const [attributeName, attribute] of morphAttributes) {\n const name = naming.getMorphRelationTypeName(contentType, attributeName);\n const { target } = attribute as any;\n\n // Ignore those whose target is not an array\n if (!Array.isArray(target)) {\n continue;\n }\n\n // Transform target UIDs into types names\n const members = target\n // Get content types definitions\n .map((uid) => strapi.getModel(uid))\n // Resolve types names\n .map((contentType) => naming.getTypeName(contentType));\n\n // Register the new polymorphic union type\n registry.register(\n name,\n\n unionType({\n name,\n\n resolveType(obj) {\n const contentType = strapi.getModel(obj.__type);\n\n if (!contentType) {\n return null;\n }\n\n if (contentType.modelType === 'component') {\n return naming.getComponentName(contentType);\n }\n\n return naming.getTypeName(contentType);\n },\n\n definition(t) {\n t.members(...members);\n },\n }),\n\n { kind: KINDS.morph, contentType, attributeName }\n );\n }\n};\n\nexport { registerPolymorphicContentType };\n"],"names":["registerPolymorphicContentType","contentType","registry","strapi","service","getService","plugin","naming","attributes","isMorphRelation","KINDS","morphAttributes","Object","entries","filter","attribute","attributeName","name","getMorphRelationTypeName","target","Array","isArray","members","map","uid","getModel","getTypeName","register","unionType","resolveType","obj","__type","modelType","getComponentName","definition","t","kind","morph"],"mappings":";;AAIA,MAAMA,iCAAiC,CACrCC,WAAAA,EACA,EAAEC,QAAQ,EAAEC,MAAM,EAAW,GAAA;AAE7B,IAAA,MAAM,EAAEC,OAAAA,EAASC,UAAU,EAAE,GAAGF,MAAAA,CAAOG,MAAM,CAAC,SAAA,CAAA;IAE9C,MAAM,EACJC,MAAM,EACNC,UAAAA,EAAY,EAAEC,eAAe,EAAE,EAChC,GAAGJ,UAAAA,CAAW,OAAA,CAAA;AACf,IAAA,MAAM,EAAEK,KAAK,EAAE,GAAGL,UAAAA,CAAW,WAAA,CAAA;AAE7B,IAAA,MAAM,EAAEG,UAAAA,GAAa,EAAE,EAAE,GAAGP,WAAAA;;IAG5B,MAAMU,eAAAA,GAAkBC,MAAAA,CAAOC,OAAO,CAACL,UAAAA,CAAAA,CAAYM,MAAM,CAAC,CAAC,GAAGC,SAAAA,CAAU,GACtEN,eAAAA,CAAgBM,SAAAA,CAAAA,CAAAA;;AAIlB,IAAA,KAAK,MAAM,CAACC,aAAAA,EAAeD,SAAAA,CAAU,IAAIJ,eAAAA,CAAiB;AACxD,QAAA,MAAMM,IAAAA,GAAOV,MAAAA,CAAOW,wBAAwB,CAACjB,WAAAA,EAAae,aAAAA,CAAAA;QAC1D,MAAM,EAAEG,MAAM,EAAE,GAAGJ,SAAAA;;AAGnB,QAAA,IAAI,CAACK,KAAAA,CAAMC,OAAO,CAACF,MAAAA,CAAAA,EAAS;AAC1B,YAAA;AACF,QAAA;;QAGA,MAAMG,OAAAA,GAAUH,MACd;AACCI,SAAAA,GAAG,CAAC,CAACC,GAAAA,GAAQrB,OAAOsB,QAAQ,CAACD,KAC9B;AACCD,SAAAA,GAAG,CAAC,CAACtB,WAAAA,GAAgBM,MAAAA,CAAOmB,WAAW,CAACzB,WAAAA,CAAAA,CAAAA;;QAG3CC,QAAAA,CAASyB,QAAQ,CACfV,IAAAA,EAEAW,SAAAA,CAAU;AACRX,YAAAA,IAAAA;AAEAY,YAAAA,WAAAA,CAAAA,CAAYC,GAAG,EAAA;AACb,gBAAA,MAAM7B,WAAAA,GAAcE,MAAAA,CAAOsB,QAAQ,CAACK,IAAIC,MAAM,CAAA;AAE9C,gBAAA,IAAI,CAAC9B,WAAAA,EAAa;oBAChB,OAAO,IAAA;AACT,gBAAA;gBAEA,IAAIA,WAAAA,CAAY+B,SAAS,KAAK,WAAA,EAAa;oBACzC,OAAOzB,MAAAA,CAAO0B,gBAAgB,CAAChC,WAAAA,CAAAA;AACjC,gBAAA;gBAEA,OAAOM,MAAAA,CAAOmB,WAAW,CAACzB,WAAAA,CAAAA;AAC5B,YAAA,CAAA;AAEAiC,YAAAA,UAAAA,CAAAA,CAAWC,CAAC,EAAA;AACVA,gBAAAA,CAAAA,CAAEb,OAAO,CAAA,GAAIA,OAAAA,CAAAA;AACf,YAAA;SACF,CAAA,EAEA;AAAEc,YAAAA,IAAAA,EAAM1B,MAAM2B,KAAK;AAAEpC,YAAAA,WAAAA;AAAae,YAAAA;AAAc,SAAA,CAAA;AAEpD,IAAA;AACF;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scalars.js","sources":["../../../../../server/src/services/content-api/register-functions/scalars.ts"],"sourcesContent":["import type { Context } from '../../types';\n\nconst registerScalars = ({ registry, strapi }: Context) => {\n const { service: getService } = strapi.plugin('graphql');\n\n const { scalars } = getService('internals');\n const { KINDS } = getService('constants');\n\n Object.entries(scalars).forEach(([name, definition]) => {\n registry.register(name, definition, { kind: KINDS.scalar });\n });\n};\n\nexport { registerScalars };\n"],"names":["registerScalars","registry","strapi","service","getService","plugin","scalars","KINDS","Object","entries","forEach","name","definition","register","kind","scalar"],"mappings":";;AAEA,MAAMA,kBAAkB,CAAC,EAAEC,QAAQ,EAAEC,MAAM,EAAW,GAAA;AACpD,IAAA,MAAM,EAAEC,
|
|
1
|
+
{"version":3,"file":"scalars.js","sources":["../../../../../server/src/services/content-api/register-functions/scalars.ts"],"sourcesContent":["import type { Context } from '../../types';\n\nconst registerScalars = ({ registry, strapi }: Context) => {\n const { service: getService } = strapi.plugin('graphql');\n\n const { scalars } = getService('internals');\n const { KINDS } = getService('constants');\n\n Object.entries(scalars).forEach(([name, definition]) => {\n registry.register(name, definition, { kind: KINDS.scalar });\n });\n};\n\nexport { registerScalars };\n"],"names":["registerScalars","registry","strapi","service","getService","plugin","scalars","KINDS","Object","entries","forEach","name","definition","register","kind","scalar"],"mappings":";;AAEA,MAAMA,kBAAkB,CAAC,EAAEC,QAAQ,EAAEC,MAAM,EAAW,GAAA;AACpD,IAAA,MAAM,EAAEC,OAAAA,EAASC,UAAU,EAAE,GAAGF,MAAAA,CAAOG,MAAM,CAAC,SAAA,CAAA;AAE9C,IAAA,MAAM,EAAEC,OAAO,EAAE,GAAGF,UAAAA,CAAW,WAAA,CAAA;AAC/B,IAAA,MAAM,EAAEG,KAAK,EAAE,GAAGH,UAAAA,CAAW,WAAA,CAAA;IAE7BI,MAAAA,CAAOC,OAAO,CAACH,OAAAA,CAAAA,CAASI,OAAO,CAAC,CAAC,CAACC,MAAMC,UAAAA,CAAW,GAAA;QACjDX,QAAAA,CAASY,QAAQ,CAACF,IAAAA,EAAMC,UAAAA,EAAY;AAAEE,YAAAA,IAAAA,EAAMP,MAAMQ;AAAO,SAAA,CAAA;AAC3D,IAAA,CAAA,CAAA;AACF;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scalars.mjs","sources":["../../../../../server/src/services/content-api/register-functions/scalars.ts"],"sourcesContent":["import type { Context } from '../../types';\n\nconst registerScalars = ({ registry, strapi }: Context) => {\n const { service: getService } = strapi.plugin('graphql');\n\n const { scalars } = getService('internals');\n const { KINDS } = getService('constants');\n\n Object.entries(scalars).forEach(([name, definition]) => {\n registry.register(name, definition, { kind: KINDS.scalar });\n });\n};\n\nexport { registerScalars };\n"],"names":["registerScalars","registry","strapi","service","getService","plugin","scalars","KINDS","Object","entries","forEach","name","definition","register","kind","scalar"],"mappings":"AAEA,MAAMA,kBAAkB,CAAC,EAAEC,QAAQ,EAAEC,MAAM,EAAW,GAAA;AACpD,IAAA,MAAM,EAAEC,
|
|
1
|
+
{"version":3,"file":"scalars.mjs","sources":["../../../../../server/src/services/content-api/register-functions/scalars.ts"],"sourcesContent":["import type { Context } from '../../types';\n\nconst registerScalars = ({ registry, strapi }: Context) => {\n const { service: getService } = strapi.plugin('graphql');\n\n const { scalars } = getService('internals');\n const { KINDS } = getService('constants');\n\n Object.entries(scalars).forEach(([name, definition]) => {\n registry.register(name, definition, { kind: KINDS.scalar });\n });\n};\n\nexport { registerScalars };\n"],"names":["registerScalars","registry","strapi","service","getService","plugin","scalars","KINDS","Object","entries","forEach","name","definition","register","kind","scalar"],"mappings":"AAEA,MAAMA,kBAAkB,CAAC,EAAEC,QAAQ,EAAEC,MAAM,EAAW,GAAA;AACpD,IAAA,MAAM,EAAEC,OAAAA,EAASC,UAAU,EAAE,GAAGF,MAAAA,CAAOG,MAAM,CAAC,SAAA,CAAA;AAE9C,IAAA,MAAM,EAAEC,OAAO,EAAE,GAAGF,UAAAA,CAAW,WAAA,CAAA;AAC/B,IAAA,MAAM,EAAEG,KAAK,EAAE,GAAGH,UAAAA,CAAW,WAAA,CAAA;IAE7BI,MAAAA,CAAOC,OAAO,CAACH,OAAAA,CAAAA,CAASI,OAAO,CAAC,CAAC,CAACC,MAAMC,UAAAA,CAAW,GAAA;QACjDX,QAAAA,CAASY,QAAQ,CAACF,IAAAA,EAAMC,UAAAA,EAAY;AAAEE,YAAAA,IAAAA,EAAMP,MAAMQ;AAAO,SAAA,CAAA;AAC3D,IAAA,CAAA,CAAA;AACF;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"single-type.js","sources":["../../../../../server/src/services/content-api/register-functions/single-type.ts"],"sourcesContent":["import type { Core, Struct } from '@strapi/types';\nimport type { TypeRegistry } from '../../type-registry';\n\nconst registerSingleType = (\n contentType: Struct.SingleTypeSchema,\n {\n registry,\n strapi,\n builders,\n }: {\n registry: TypeRegistry;\n strapi: Core.Strapi;\n builders: any;\n }\n) => {\n const { service: getService } = strapi.plugin('graphql');\n\n const { naming } = getService('utils');\n const { KINDS } = getService('constants');\n\n const extension = getService('extension');\n\n const types = {\n base: naming.getTypeName(contentType),\n entity: naming.getEntityName(contentType),\n response: naming.getEntityResponseName(contentType),\n responseCollection: naming.getEntityResponseCollectionName(contentType),\n relationResponseCollection: naming.getRelationResponseCollectionName(contentType),\n queries: naming.getEntityQueriesTypeName(contentType),\n mutations: naming.getEntityMutationsTypeName(contentType),\n };\n\n const getConfig = (kind: string) => ({ kind, contentType });\n\n // Single type's definition\n registry.register(types.base, builders.buildTypeDefinition(contentType), getConfig(KINDS.type));\n\n // Higher level entity definition\n registry.register(\n types.entity,\n builders.buildEntityDefinition(contentType),\n getConfig(KINDS.entity)\n );\n\n // Responses definition\n registry.register(\n types.response,\n builders.buildResponseDefinition(contentType),\n getConfig(KINDS.entityResponse)\n );\n\n // Response collection definition\n registry.register(\n types.responseCollection,\n builders.buildResponseCollectionDefinition(contentType),\n getConfig(KINDS.entityResponseCollection)\n );\n\n registry.register(\n types.relationResponseCollection,\n builders.buildRelationResponseCollectionDefinition(contentType),\n getConfig(KINDS.relationResponseCollection)\n );\n\n if (extension.shadowCRUD(contentType.uid).areQueriesEnabled()) {\n // Queries\n registry.register(\n types.queries,\n builders.buildSingleTypeQueries(contentType),\n getConfig(KINDS.query)\n );\n }\n\n if (extension.shadowCRUD(contentType.uid).areMutationsEnabled()) {\n // Mutations\n registry.register(\n types.mutations,\n builders.buildSingleTypeMutations(contentType),\n getConfig(KINDS.mutation)\n );\n }\n};\n\nexport { registerSingleType };\n"],"names":["registerSingleType","contentType","registry","strapi","builders","service","getService","plugin","naming","KINDS","extension","types","base","getTypeName","entity","getEntityName","response","getEntityResponseName","responseCollection","getEntityResponseCollectionName","relationResponseCollection","getRelationResponseCollectionName","queries","getEntityQueriesTypeName","mutations","getEntityMutationsTypeName","getConfig","kind","register","buildTypeDefinition","type","buildEntityDefinition","buildResponseDefinition","entityResponse","buildResponseCollectionDefinition","entityResponseCollection","buildRelationResponseCollectionDefinition","shadowCRUD","uid","areQueriesEnabled","buildSingleTypeQueries","query","areMutationsEnabled","buildSingleTypeMutations","mutation"],"mappings":";;
|
|
1
|
+
{"version":3,"file":"single-type.js","sources":["../../../../../server/src/services/content-api/register-functions/single-type.ts"],"sourcesContent":["import type { Core, Struct } from '@strapi/types';\nimport type { TypeRegistry } from '../../type-registry';\n\nconst registerSingleType = (\n contentType: Struct.SingleTypeSchema,\n {\n registry,\n strapi,\n builders,\n }: {\n registry: TypeRegistry;\n strapi: Core.Strapi;\n builders: any;\n }\n) => {\n const { service: getService } = strapi.plugin('graphql');\n\n const { naming } = getService('utils');\n const { KINDS } = getService('constants');\n\n const extension = getService('extension');\n\n const types = {\n base: naming.getTypeName(contentType),\n entity: naming.getEntityName(contentType),\n response: naming.getEntityResponseName(contentType),\n responseCollection: naming.getEntityResponseCollectionName(contentType),\n relationResponseCollection: naming.getRelationResponseCollectionName(contentType),\n queries: naming.getEntityQueriesTypeName(contentType),\n mutations: naming.getEntityMutationsTypeName(contentType),\n };\n\n const getConfig = (kind: string) => ({ kind, contentType });\n\n // Single type's definition\n registry.register(types.base, builders.buildTypeDefinition(contentType), getConfig(KINDS.type));\n\n // Higher level entity definition\n registry.register(\n types.entity,\n builders.buildEntityDefinition(contentType),\n getConfig(KINDS.entity)\n );\n\n // Responses definition\n registry.register(\n types.response,\n builders.buildResponseDefinition(contentType),\n getConfig(KINDS.entityResponse)\n );\n\n // Response collection definition\n registry.register(\n types.responseCollection,\n builders.buildResponseCollectionDefinition(contentType),\n getConfig(KINDS.entityResponseCollection)\n );\n\n registry.register(\n types.relationResponseCollection,\n builders.buildRelationResponseCollectionDefinition(contentType),\n getConfig(KINDS.relationResponseCollection)\n );\n\n if (extension.shadowCRUD(contentType.uid).areQueriesEnabled()) {\n // Queries\n registry.register(\n types.queries,\n builders.buildSingleTypeQueries(contentType),\n getConfig(KINDS.query)\n );\n }\n\n if (extension.shadowCRUD(contentType.uid).areMutationsEnabled()) {\n // Mutations\n registry.register(\n types.mutations,\n builders.buildSingleTypeMutations(contentType),\n getConfig(KINDS.mutation)\n );\n }\n};\n\nexport { registerSingleType };\n"],"names":["registerSingleType","contentType","registry","strapi","builders","service","getService","plugin","naming","KINDS","extension","types","base","getTypeName","entity","getEntityName","response","getEntityResponseName","responseCollection","getEntityResponseCollectionName","relationResponseCollection","getRelationResponseCollectionName","queries","getEntityQueriesTypeName","mutations","getEntityMutationsTypeName","getConfig","kind","register","buildTypeDefinition","type","buildEntityDefinition","buildResponseDefinition","entityResponse","buildResponseCollectionDefinition","entityResponseCollection","buildRelationResponseCollectionDefinition","shadowCRUD","uid","areQueriesEnabled","buildSingleTypeQueries","query","areMutationsEnabled","buildSingleTypeMutations","mutation"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"single-type.mjs","sources":["../../../../../server/src/services/content-api/register-functions/single-type.ts"],"sourcesContent":["import type { Core, Struct } from '@strapi/types';\nimport type { TypeRegistry } from '../../type-registry';\n\nconst registerSingleType = (\n contentType: Struct.SingleTypeSchema,\n {\n registry,\n strapi,\n builders,\n }: {\n registry: TypeRegistry;\n strapi: Core.Strapi;\n builders: any;\n }\n) => {\n const { service: getService } = strapi.plugin('graphql');\n\n const { naming } = getService('utils');\n const { KINDS } = getService('constants');\n\n const extension = getService('extension');\n\n const types = {\n base: naming.getTypeName(contentType),\n entity: naming.getEntityName(contentType),\n response: naming.getEntityResponseName(contentType),\n responseCollection: naming.getEntityResponseCollectionName(contentType),\n relationResponseCollection: naming.getRelationResponseCollectionName(contentType),\n queries: naming.getEntityQueriesTypeName(contentType),\n mutations: naming.getEntityMutationsTypeName(contentType),\n };\n\n const getConfig = (kind: string) => ({ kind, contentType });\n\n // Single type's definition\n registry.register(types.base, builders.buildTypeDefinition(contentType), getConfig(KINDS.type));\n\n // Higher level entity definition\n registry.register(\n types.entity,\n builders.buildEntityDefinition(contentType),\n getConfig(KINDS.entity)\n );\n\n // Responses definition\n registry.register(\n types.response,\n builders.buildResponseDefinition(contentType),\n getConfig(KINDS.entityResponse)\n );\n\n // Response collection definition\n registry.register(\n types.responseCollection,\n builders.buildResponseCollectionDefinition(contentType),\n getConfig(KINDS.entityResponseCollection)\n );\n\n registry.register(\n types.relationResponseCollection,\n builders.buildRelationResponseCollectionDefinition(contentType),\n getConfig(KINDS.relationResponseCollection)\n );\n\n if (extension.shadowCRUD(contentType.uid).areQueriesEnabled()) {\n // Queries\n registry.register(\n types.queries,\n builders.buildSingleTypeQueries(contentType),\n getConfig(KINDS.query)\n );\n }\n\n if (extension.shadowCRUD(contentType.uid).areMutationsEnabled()) {\n // Mutations\n registry.register(\n types.mutations,\n builders.buildSingleTypeMutations(contentType),\n getConfig(KINDS.mutation)\n );\n }\n};\n\nexport { registerSingleType };\n"],"names":["registerSingleType","contentType","registry","strapi","builders","service","getService","plugin","naming","KINDS","extension","types","base","getTypeName","entity","getEntityName","response","getEntityResponseName","responseCollection","getEntityResponseCollectionName","relationResponseCollection","getRelationResponseCollectionName","queries","getEntityQueriesTypeName","mutations","getEntityMutationsTypeName","getConfig","kind","register","buildTypeDefinition","type","buildEntityDefinition","buildResponseDefinition","entityResponse","buildResponseCollectionDefinition","entityResponseCollection","buildRelationResponseCollectionDefinition","shadowCRUD","uid","areQueriesEnabled","buildSingleTypeQueries","query","areMutationsEnabled","buildSingleTypeMutations","mutation"],"mappings":"
|
|
1
|
+
{"version":3,"file":"single-type.mjs","sources":["../../../../../server/src/services/content-api/register-functions/single-type.ts"],"sourcesContent":["import type { Core, Struct } from '@strapi/types';\nimport type { TypeRegistry } from '../../type-registry';\n\nconst registerSingleType = (\n contentType: Struct.SingleTypeSchema,\n {\n registry,\n strapi,\n builders,\n }: {\n registry: TypeRegistry;\n strapi: Core.Strapi;\n builders: any;\n }\n) => {\n const { service: getService } = strapi.plugin('graphql');\n\n const { naming } = getService('utils');\n const { KINDS } = getService('constants');\n\n const extension = getService('extension');\n\n const types = {\n base: naming.getTypeName(contentType),\n entity: naming.getEntityName(contentType),\n response: naming.getEntityResponseName(contentType),\n responseCollection: naming.getEntityResponseCollectionName(contentType),\n relationResponseCollection: naming.getRelationResponseCollectionName(contentType),\n queries: naming.getEntityQueriesTypeName(contentType),\n mutations: naming.getEntityMutationsTypeName(contentType),\n };\n\n const getConfig = (kind: string) => ({ kind, contentType });\n\n // Single type's definition\n registry.register(types.base, builders.buildTypeDefinition(contentType), getConfig(KINDS.type));\n\n // Higher level entity definition\n registry.register(\n types.entity,\n builders.buildEntityDefinition(contentType),\n getConfig(KINDS.entity)\n );\n\n // Responses definition\n registry.register(\n types.response,\n builders.buildResponseDefinition(contentType),\n getConfig(KINDS.entityResponse)\n );\n\n // Response collection definition\n registry.register(\n types.responseCollection,\n builders.buildResponseCollectionDefinition(contentType),\n getConfig(KINDS.entityResponseCollection)\n );\n\n registry.register(\n types.relationResponseCollection,\n builders.buildRelationResponseCollectionDefinition(contentType),\n getConfig(KINDS.relationResponseCollection)\n );\n\n if (extension.shadowCRUD(contentType.uid).areQueriesEnabled()) {\n // Queries\n registry.register(\n types.queries,\n builders.buildSingleTypeQueries(contentType),\n getConfig(KINDS.query)\n );\n }\n\n if (extension.shadowCRUD(contentType.uid).areMutationsEnabled()) {\n // Mutations\n registry.register(\n types.mutations,\n builders.buildSingleTypeMutations(contentType),\n getConfig(KINDS.mutation)\n );\n }\n};\n\nexport { registerSingleType };\n"],"names":["registerSingleType","contentType","registry","strapi","builders","service","getService","plugin","naming","KINDS","extension","types","base","getTypeName","entity","getEntityName","response","getEntityResponseName","responseCollection","getEntityResponseCollectionName","relationResponseCollection","getRelationResponseCollectionName","queries","getEntityQueriesTypeName","mutations","getEntityMutationsTypeName","getConfig","kind","register","buildTypeDefinition","type","buildEntityDefinition","buildResponseDefinition","entityResponse","buildResponseCollectionDefinition","entityResponseCollection","buildRelationResponseCollectionDefinition","shadowCRUD","uid","areQueriesEnabled","buildSingleTypeQueries","query","areMutationsEnabled","buildSingleTypeMutations","mutation"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrap-resolvers.js","sources":["../../../../server/src/services/content-api/wrap-resolvers.ts"],"sourcesContent":["import { get, getOr, isFunction, first, isNil } from 'lodash/fp';\nimport {\n GraphQLObjectType,\n GraphQLResolveInfo,\n GraphQLSchema,\n GraphQLFieldResolver,\n} from 'graphql';\nimport { errors } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\n\nimport { createPoliciesMiddleware } from './policy';\n\nconst { ForbiddenError } = errors;\n\nconst introspectionQueries = [\n '__Schema',\n '__Type',\n '__Field',\n '__InputValue',\n '__EnumValue',\n '__Directive',\n];\n\ntype GraphQLMiddleware = (\n resolve: GraphQLFieldResolver<any, any>,\n parents: unknown,\n args: unknown,\n context: unknown,\n info: GraphQLResolveInfo\n) => any;\n\n/**\n * Get & parse middlewares definitions from the resolver's config\n * @param {object} resolverConfig\n * @param {object} strapi\n * @return {function[]}\n */\nconst parseMiddlewares = (resolverConfig: any, strapi: Core.Strapi): GraphQLMiddleware[] => {\n const resolverMiddlewares = getOr([], 'middlewares', resolverConfig);\n\n // TODO: [v4] to factorize with compose endpoints (routes)\n return resolverMiddlewares.map(\n (middleware: string | Core.MiddlewareHandler | { name: string; options: any }) => {\n if (isFunction(middleware)) {\n return middleware;\n }\n\n if (typeof middleware === 'string') {\n return strapi.middleware(middleware);\n }\n\n if (typeof middleware === 'object') {\n const { name, options = {} } = middleware;\n\n return strapi.middleware(name)(options, { strapi });\n }\n\n throw new Error(\n `Invalid middleware type, expected (function,string,object), received ${typeof middleware}`\n );\n }\n );\n};\n\n/**\n * Wrap the schema's resolvers if they've been\n * customized using the GraphQL extension service\n * @param {object} options\n * @param {GraphQLSchema} options.schema\n * @param {object} options.strapi\n * @param {object} options.extension\n * @return {GraphQLSchema}\n */\nconst wrapResolvers = ({\n schema,\n strapi,\n extension = {},\n}: {\n schema: GraphQLSchema;\n strapi: Core.Strapi;\n extension: any;\n}) => {\n // Get all the registered resolvers configuration\n const { resolversConfig = {} } = extension;\n\n // Fields filters\n const isValidFieldName = (field: string) => !field.startsWith('__');\n\n const typeMap = schema.getTypeMap();\n\n Object.entries(typeMap).forEach(([type, definition]) => {\n const isGraphQLObjectType = definition instanceof GraphQLObjectType;\n const isIgnoredType = introspectionQueries.includes(type);\n\n if (!isGraphQLObjectType || isIgnoredType) {\n return;\n }\n\n const fields = definition.getFields();\n const fieldsToProcess = Object.entries(fields).filter(([field]) => isValidFieldName(field));\n\n for (const [fieldName, fieldDefinition] of fieldsToProcess) {\n const defaultResolver = get(fieldName);\n\n const path = `${type}.${fieldName}`;\n const resolverConfig = getOr({}, path, resolversConfig);\n\n const { resolve: baseResolver = defaultResolver } = fieldDefinition;\n\n // Parse & initialize the middlewares\n const middlewares = parseMiddlewares(resolverConfig, strapi);\n\n // Generate the policy middleware\n const policyMiddleware = createPoliciesMiddleware(resolverConfig, { strapi });\n\n // Add the policyMiddleware at the end of the middlewares collection\n middlewares.push(policyMiddleware);\n\n // Bind every middleware to the next one\n const boundMiddlewares = middlewares.map((middleware, index, collection) => {\n return (parents: unknown, args: unknown, context: unknown, info: GraphQLResolveInfo) =>\n middleware(\n // Make sure the last middleware in the list calls the baseResolver\n index >= collection.length - 1 ? baseResolver : boundMiddlewares[index + 1],\n parents,\n args,\n context,\n info\n );\n });\n\n /**\n * GraphQL authorization flow\n * @param {object} context\n * @return {Promise<void>}\n */\n const authorize = async ({ context }: any) => {\n const authConfig = get('auth', resolverConfig);\n const authContext = get('state.auth', context);\n\n const isValidType = ['Mutation', 'Query', 'Subscription'].includes(type);\n const hasConfig = !isNil(authConfig);\n\n const isAuthDisabled = authConfig === false;\n\n if ((isValidType || hasConfig) && !isAuthDisabled) {\n try {\n await strapi.auth.verify(authContext, authConfig);\n } catch (error) {\n throw new ForbiddenError();\n }\n }\n };\n\n /**\n * Base resolver wrapper that handles authorization, middlewares & policies\n * @return {Promise<any>}\n */\n fieldDefinition.resolve = async (parent, args, context, info) => {\n await authorize({ context });\n\n // Execute middlewares (including the policy middleware which will always be included)\n return first(boundMiddlewares)!(parent, args, context, info);\n };\n }\n });\n\n return schema;\n};\n\nexport { wrapResolvers };\n"],"names":["ForbiddenError","errors","introspectionQueries","parseMiddlewares","resolverConfig","strapi","resolverMiddlewares","getOr","map","middleware","isFunction","name","options","Error","wrapResolvers","schema","extension","resolversConfig","isValidFieldName","field","startsWith","typeMap","getTypeMap","Object","entries","forEach","type","definition","isGraphQLObjectType","GraphQLObjectType","isIgnoredType","includes","fields","getFields","fieldsToProcess","filter","fieldName","fieldDefinition","defaultResolver","get","path","resolve","baseResolver","middlewares","policyMiddleware","createPoliciesMiddleware","push","boundMiddlewares","index","collection","parents","args","context","info","length","authorize","authConfig","authContext","isValidType","hasConfig","isNil","isAuthDisabled","auth","verify","error","parent","first"],"mappings":";;;;;;;AAYA,MAAM,EAAEA,cAAc,EAAE,GAAGC,YAAAA;AAE3B,MAAMC,
|
|
1
|
+
{"version":3,"file":"wrap-resolvers.js","sources":["../../../../server/src/services/content-api/wrap-resolvers.ts"],"sourcesContent":["import { get, getOr, isFunction, first, isNil } from 'lodash/fp';\nimport {\n GraphQLObjectType,\n GraphQLResolveInfo,\n GraphQLSchema,\n GraphQLFieldResolver,\n} from 'graphql';\nimport { errors } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\n\nimport { createPoliciesMiddleware } from './policy';\n\nconst { ForbiddenError } = errors;\n\nconst introspectionQueries = [\n '__Schema',\n '__Type',\n '__Field',\n '__InputValue',\n '__EnumValue',\n '__Directive',\n];\n\ntype GraphQLMiddleware = (\n resolve: GraphQLFieldResolver<any, any>,\n parents: unknown,\n args: unknown,\n context: unknown,\n info: GraphQLResolveInfo\n) => any;\n\n/**\n * Get & parse middlewares definitions from the resolver's config\n * @param {object} resolverConfig\n * @param {object} strapi\n * @return {function[]}\n */\nconst parseMiddlewares = (resolverConfig: any, strapi: Core.Strapi): GraphQLMiddleware[] => {\n const resolverMiddlewares = getOr([], 'middlewares', resolverConfig);\n\n // TODO: [v4] to factorize with compose endpoints (routes)\n return resolverMiddlewares.map(\n (middleware: string | Core.MiddlewareHandler | { name: string; options: any }) => {\n if (isFunction(middleware)) {\n return middleware;\n }\n\n if (typeof middleware === 'string') {\n return strapi.middleware(middleware);\n }\n\n if (typeof middleware === 'object') {\n const { name, options = {} } = middleware;\n\n return strapi.middleware(name)(options, { strapi });\n }\n\n throw new Error(\n `Invalid middleware type, expected (function,string,object), received ${typeof middleware}`\n );\n }\n );\n};\n\n/**\n * Wrap the schema's resolvers if they've been\n * customized using the GraphQL extension service\n * @param {object} options\n * @param {GraphQLSchema} options.schema\n * @param {object} options.strapi\n * @param {object} options.extension\n * @return {GraphQLSchema}\n */\nconst wrapResolvers = ({\n schema,\n strapi,\n extension = {},\n}: {\n schema: GraphQLSchema;\n strapi: Core.Strapi;\n extension: any;\n}) => {\n // Get all the registered resolvers configuration\n const { resolversConfig = {} } = extension;\n\n // Fields filters\n const isValidFieldName = (field: string) => !field.startsWith('__');\n\n const typeMap = schema.getTypeMap();\n\n Object.entries(typeMap).forEach(([type, definition]) => {\n const isGraphQLObjectType = definition instanceof GraphQLObjectType;\n const isIgnoredType = introspectionQueries.includes(type);\n\n if (!isGraphQLObjectType || isIgnoredType) {\n return;\n }\n\n const fields = definition.getFields();\n const fieldsToProcess = Object.entries(fields).filter(([field]) => isValidFieldName(field));\n\n for (const [fieldName, fieldDefinition] of fieldsToProcess) {\n const defaultResolver = get(fieldName);\n\n const path = `${type}.${fieldName}`;\n const resolverConfig = getOr({}, path, resolversConfig);\n\n const { resolve: baseResolver = defaultResolver } = fieldDefinition;\n\n // Parse & initialize the middlewares\n const middlewares = parseMiddlewares(resolverConfig, strapi);\n\n // Generate the policy middleware\n const policyMiddleware = createPoliciesMiddleware(resolverConfig, { strapi });\n\n // Add the policyMiddleware at the end of the middlewares collection\n middlewares.push(policyMiddleware);\n\n // Bind every middleware to the next one\n const boundMiddlewares = middlewares.map((middleware, index, collection) => {\n return (parents: unknown, args: unknown, context: unknown, info: GraphQLResolveInfo) =>\n middleware(\n // Make sure the last middleware in the list calls the baseResolver\n index >= collection.length - 1 ? baseResolver : boundMiddlewares[index + 1],\n parents,\n args,\n context,\n info\n );\n });\n\n /**\n * GraphQL authorization flow\n * @param {object} context\n * @return {Promise<void>}\n */\n const authorize = async ({ context }: any) => {\n const authConfig = get('auth', resolverConfig);\n const authContext = get('state.auth', context);\n\n const isValidType = ['Mutation', 'Query', 'Subscription'].includes(type);\n const hasConfig = !isNil(authConfig);\n\n const isAuthDisabled = authConfig === false;\n\n if ((isValidType || hasConfig) && !isAuthDisabled) {\n try {\n await strapi.auth.verify(authContext, authConfig);\n } catch (error) {\n throw new ForbiddenError();\n }\n }\n };\n\n /**\n * Base resolver wrapper that handles authorization, middlewares & policies\n * @return {Promise<any>}\n */\n fieldDefinition.resolve = async (parent, args, context, info) => {\n await authorize({ context });\n\n // Execute middlewares (including the policy middleware which will always be included)\n return first(boundMiddlewares)!(parent, args, context, info);\n };\n }\n });\n\n return schema;\n};\n\nexport { wrapResolvers };\n"],"names":["ForbiddenError","errors","introspectionQueries","parseMiddlewares","resolverConfig","strapi","resolverMiddlewares","getOr","map","middleware","isFunction","name","options","Error","wrapResolvers","schema","extension","resolversConfig","isValidFieldName","field","startsWith","typeMap","getTypeMap","Object","entries","forEach","type","definition","isGraphQLObjectType","GraphQLObjectType","isIgnoredType","includes","fields","getFields","fieldsToProcess","filter","fieldName","fieldDefinition","defaultResolver","get","path","resolve","baseResolver","middlewares","policyMiddleware","createPoliciesMiddleware","push","boundMiddlewares","index","collection","parents","args","context","info","length","authorize","authConfig","authContext","isValidType","hasConfig","isNil","isAuthDisabled","auth","verify","error","parent","first"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrap-resolvers.mjs","sources":["../../../../server/src/services/content-api/wrap-resolvers.ts"],"sourcesContent":["import { get, getOr, isFunction, first, isNil } from 'lodash/fp';\nimport {\n GraphQLObjectType,\n GraphQLResolveInfo,\n GraphQLSchema,\n GraphQLFieldResolver,\n} from 'graphql';\nimport { errors } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\n\nimport { createPoliciesMiddleware } from './policy';\n\nconst { ForbiddenError } = errors;\n\nconst introspectionQueries = [\n '__Schema',\n '__Type',\n '__Field',\n '__InputValue',\n '__EnumValue',\n '__Directive',\n];\n\ntype GraphQLMiddleware = (\n resolve: GraphQLFieldResolver<any, any>,\n parents: unknown,\n args: unknown,\n context: unknown,\n info: GraphQLResolveInfo\n) => any;\n\n/**\n * Get & parse middlewares definitions from the resolver's config\n * @param {object} resolverConfig\n * @param {object} strapi\n * @return {function[]}\n */\nconst parseMiddlewares = (resolverConfig: any, strapi: Core.Strapi): GraphQLMiddleware[] => {\n const resolverMiddlewares = getOr([], 'middlewares', resolverConfig);\n\n // TODO: [v4] to factorize with compose endpoints (routes)\n return resolverMiddlewares.map(\n (middleware: string | Core.MiddlewareHandler | { name: string; options: any }) => {\n if (isFunction(middleware)) {\n return middleware;\n }\n\n if (typeof middleware === 'string') {\n return strapi.middleware(middleware);\n }\n\n if (typeof middleware === 'object') {\n const { name, options = {} } = middleware;\n\n return strapi.middleware(name)(options, { strapi });\n }\n\n throw new Error(\n `Invalid middleware type, expected (function,string,object), received ${typeof middleware}`\n );\n }\n );\n};\n\n/**\n * Wrap the schema's resolvers if they've been\n * customized using the GraphQL extension service\n * @param {object} options\n * @param {GraphQLSchema} options.schema\n * @param {object} options.strapi\n * @param {object} options.extension\n * @return {GraphQLSchema}\n */\nconst wrapResolvers = ({\n schema,\n strapi,\n extension = {},\n}: {\n schema: GraphQLSchema;\n strapi: Core.Strapi;\n extension: any;\n}) => {\n // Get all the registered resolvers configuration\n const { resolversConfig = {} } = extension;\n\n // Fields filters\n const isValidFieldName = (field: string) => !field.startsWith('__');\n\n const typeMap = schema.getTypeMap();\n\n Object.entries(typeMap).forEach(([type, definition]) => {\n const isGraphQLObjectType = definition instanceof GraphQLObjectType;\n const isIgnoredType = introspectionQueries.includes(type);\n\n if (!isGraphQLObjectType || isIgnoredType) {\n return;\n }\n\n const fields = definition.getFields();\n const fieldsToProcess = Object.entries(fields).filter(([field]) => isValidFieldName(field));\n\n for (const [fieldName, fieldDefinition] of fieldsToProcess) {\n const defaultResolver = get(fieldName);\n\n const path = `${type}.${fieldName}`;\n const resolverConfig = getOr({}, path, resolversConfig);\n\n const { resolve: baseResolver = defaultResolver } = fieldDefinition;\n\n // Parse & initialize the middlewares\n const middlewares = parseMiddlewares(resolverConfig, strapi);\n\n // Generate the policy middleware\n const policyMiddleware = createPoliciesMiddleware(resolverConfig, { strapi });\n\n // Add the policyMiddleware at the end of the middlewares collection\n middlewares.push(policyMiddleware);\n\n // Bind every middleware to the next one\n const boundMiddlewares = middlewares.map((middleware, index, collection) => {\n return (parents: unknown, args: unknown, context: unknown, info: GraphQLResolveInfo) =>\n middleware(\n // Make sure the last middleware in the list calls the baseResolver\n index >= collection.length - 1 ? baseResolver : boundMiddlewares[index + 1],\n parents,\n args,\n context,\n info\n );\n });\n\n /**\n * GraphQL authorization flow\n * @param {object} context\n * @return {Promise<void>}\n */\n const authorize = async ({ context }: any) => {\n const authConfig = get('auth', resolverConfig);\n const authContext = get('state.auth', context);\n\n const isValidType = ['Mutation', 'Query', 'Subscription'].includes(type);\n const hasConfig = !isNil(authConfig);\n\n const isAuthDisabled = authConfig === false;\n\n if ((isValidType || hasConfig) && !isAuthDisabled) {\n try {\n await strapi.auth.verify(authContext, authConfig);\n } catch (error) {\n throw new ForbiddenError();\n }\n }\n };\n\n /**\n * Base resolver wrapper that handles authorization, middlewares & policies\n * @return {Promise<any>}\n */\n fieldDefinition.resolve = async (parent, args, context, info) => {\n await authorize({ context });\n\n // Execute middlewares (including the policy middleware which will always be included)\n return first(boundMiddlewares)!(parent, args, context, info);\n };\n }\n });\n\n return schema;\n};\n\nexport { wrapResolvers };\n"],"names":["ForbiddenError","errors","introspectionQueries","parseMiddlewares","resolverConfig","strapi","resolverMiddlewares","getOr","map","middleware","isFunction","name","options","Error","wrapResolvers","schema","extension","resolversConfig","isValidFieldName","field","startsWith","typeMap","getTypeMap","Object","entries","forEach","type","definition","isGraphQLObjectType","GraphQLObjectType","isIgnoredType","includes","fields","getFields","fieldsToProcess","filter","fieldName","fieldDefinition","defaultResolver","get","path","resolve","baseResolver","middlewares","policyMiddleware","createPoliciesMiddleware","push","boundMiddlewares","index","collection","parents","args","context","info","length","authorize","authConfig","authContext","isValidType","hasConfig","isNil","isAuthDisabled","auth","verify","error","parent","first"],"mappings":";;;;;AAYA,MAAM,EAAEA,cAAc,EAAE,GAAGC,MAAAA;AAE3B,MAAMC,
|
|
1
|
+
{"version":3,"file":"wrap-resolvers.mjs","sources":["../../../../server/src/services/content-api/wrap-resolvers.ts"],"sourcesContent":["import { get, getOr, isFunction, first, isNil } from 'lodash/fp';\nimport {\n GraphQLObjectType,\n GraphQLResolveInfo,\n GraphQLSchema,\n GraphQLFieldResolver,\n} from 'graphql';\nimport { errors } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\n\nimport { createPoliciesMiddleware } from './policy';\n\nconst { ForbiddenError } = errors;\n\nconst introspectionQueries = [\n '__Schema',\n '__Type',\n '__Field',\n '__InputValue',\n '__EnumValue',\n '__Directive',\n];\n\ntype GraphQLMiddleware = (\n resolve: GraphQLFieldResolver<any, any>,\n parents: unknown,\n args: unknown,\n context: unknown,\n info: GraphQLResolveInfo\n) => any;\n\n/**\n * Get & parse middlewares definitions from the resolver's config\n * @param {object} resolverConfig\n * @param {object} strapi\n * @return {function[]}\n */\nconst parseMiddlewares = (resolverConfig: any, strapi: Core.Strapi): GraphQLMiddleware[] => {\n const resolverMiddlewares = getOr([], 'middlewares', resolverConfig);\n\n // TODO: [v4] to factorize with compose endpoints (routes)\n return resolverMiddlewares.map(\n (middleware: string | Core.MiddlewareHandler | { name: string; options: any }) => {\n if (isFunction(middleware)) {\n return middleware;\n }\n\n if (typeof middleware === 'string') {\n return strapi.middleware(middleware);\n }\n\n if (typeof middleware === 'object') {\n const { name, options = {} } = middleware;\n\n return strapi.middleware(name)(options, { strapi });\n }\n\n throw new Error(\n `Invalid middleware type, expected (function,string,object), received ${typeof middleware}`\n );\n }\n );\n};\n\n/**\n * Wrap the schema's resolvers if they've been\n * customized using the GraphQL extension service\n * @param {object} options\n * @param {GraphQLSchema} options.schema\n * @param {object} options.strapi\n * @param {object} options.extension\n * @return {GraphQLSchema}\n */\nconst wrapResolvers = ({\n schema,\n strapi,\n extension = {},\n}: {\n schema: GraphQLSchema;\n strapi: Core.Strapi;\n extension: any;\n}) => {\n // Get all the registered resolvers configuration\n const { resolversConfig = {} } = extension;\n\n // Fields filters\n const isValidFieldName = (field: string) => !field.startsWith('__');\n\n const typeMap = schema.getTypeMap();\n\n Object.entries(typeMap).forEach(([type, definition]) => {\n const isGraphQLObjectType = definition instanceof GraphQLObjectType;\n const isIgnoredType = introspectionQueries.includes(type);\n\n if (!isGraphQLObjectType || isIgnoredType) {\n return;\n }\n\n const fields = definition.getFields();\n const fieldsToProcess = Object.entries(fields).filter(([field]) => isValidFieldName(field));\n\n for (const [fieldName, fieldDefinition] of fieldsToProcess) {\n const defaultResolver = get(fieldName);\n\n const path = `${type}.${fieldName}`;\n const resolverConfig = getOr({}, path, resolversConfig);\n\n const { resolve: baseResolver = defaultResolver } = fieldDefinition;\n\n // Parse & initialize the middlewares\n const middlewares = parseMiddlewares(resolverConfig, strapi);\n\n // Generate the policy middleware\n const policyMiddleware = createPoliciesMiddleware(resolverConfig, { strapi });\n\n // Add the policyMiddleware at the end of the middlewares collection\n middlewares.push(policyMiddleware);\n\n // Bind every middleware to the next one\n const boundMiddlewares = middlewares.map((middleware, index, collection) => {\n return (parents: unknown, args: unknown, context: unknown, info: GraphQLResolveInfo) =>\n middleware(\n // Make sure the last middleware in the list calls the baseResolver\n index >= collection.length - 1 ? baseResolver : boundMiddlewares[index + 1],\n parents,\n args,\n context,\n info\n );\n });\n\n /**\n * GraphQL authorization flow\n * @param {object} context\n * @return {Promise<void>}\n */\n const authorize = async ({ context }: any) => {\n const authConfig = get('auth', resolverConfig);\n const authContext = get('state.auth', context);\n\n const isValidType = ['Mutation', 'Query', 'Subscription'].includes(type);\n const hasConfig = !isNil(authConfig);\n\n const isAuthDisabled = authConfig === false;\n\n if ((isValidType || hasConfig) && !isAuthDisabled) {\n try {\n await strapi.auth.verify(authContext, authConfig);\n } catch (error) {\n throw new ForbiddenError();\n }\n }\n };\n\n /**\n * Base resolver wrapper that handles authorization, middlewares & policies\n * @return {Promise<any>}\n */\n fieldDefinition.resolve = async (parent, args, context, info) => {\n await authorize({ context });\n\n // Execute middlewares (including the policy middleware which will always be included)\n return first(boundMiddlewares)!(parent, args, context, info);\n };\n }\n });\n\n return schema;\n};\n\nexport { wrapResolvers };\n"],"names":["ForbiddenError","errors","introspectionQueries","parseMiddlewares","resolverConfig","strapi","resolverMiddlewares","getOr","map","middleware","isFunction","name","options","Error","wrapResolvers","schema","extension","resolversConfig","isValidFieldName","field","startsWith","typeMap","getTypeMap","Object","entries","forEach","type","definition","isGraphQLObjectType","GraphQLObjectType","isIgnoredType","includes","fields","getFields","fieldsToProcess","filter","fieldName","fieldDefinition","defaultResolver","get","path","resolve","baseResolver","middlewares","policyMiddleware","createPoliciesMiddleware","push","boundMiddlewares","index","collection","parents","args","context","info","length","authorize","authConfig","authContext","isValidType","hasConfig","isNil","isAuthDisabled","auth","verify","error","parent","first"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension.js","sources":["../../../../server/src/services/extension/extension.ts"],"sourcesContent":["import * as nexus from 'nexus';\nimport { merge } from 'lodash/fp';\nimport type { Core } from '@strapi/types';\nimport type * as Nexus from 'nexus';\n\nimport createShadowCRUDManager from './shadow-crud-manager';\n\nexport type Configuration = {\n types?: NexusGen[];\n typeDefs?: string;\n resolvers?: object;\n resolversConfig?: object;\n plugins?: Nexus.PluginConfig[];\n};\n\nexport type ConfigurationFactory = (options: {\n strapi: Core.Strapi;\n nexus: typeof nexus;\n typeRegistry: object;\n}) => Configuration;\n\nexport type Extension = {\n types: NexusGen[];\n typeDefs: string[];\n resolvers: object;\n resolversConfig: object;\n plugins: Nexus.PluginConfig[];\n};\n\nconst getDefaultState = (): Extension => ({\n types: [],\n typeDefs: [],\n resolvers: {},\n resolversConfig: {},\n plugins: [],\n});\n\nconst createExtension = ({ strapi }: { strapi: Core.Strapi }) => {\n const configs: Array<Configuration | ConfigurationFactory> = [];\n\n return {\n shadowCRUD: createShadowCRUDManager(),\n\n /**\n * Register a new extension configuration\n */\n use(configuration: Configuration | ConfigurationFactory) {\n configs.push(configuration);\n\n return this;\n },\n\n /**\n * Convert the registered configuration into a single extension object & return it\n */\n generate({ typeRegistry }: { typeRegistry: object }) {\n const resolveConfig = (config: Configuration | ConfigurationFactory): Configuration => {\n return typeof config === 'function' ? config({ strapi, nexus, typeRegistry }) : config;\n };\n\n // Evaluate & merge every registered configuration object, then return the result\n return configs.reduce((acc, configuration) => {\n const { types, typeDefs, resolvers, resolversConfig, plugins } =\n resolveConfig(configuration);\n\n // Register type definitions\n if (typeof typeDefs === 'string') {\n acc.typeDefs.push(typeDefs);\n }\n\n // Register nexus types\n if (Array.isArray(types)) {\n acc.types.push(...types);\n }\n\n // Register nexus plugins\n if (Array.isArray(plugins)) {\n acc.plugins.push(...plugins);\n }\n\n // Register resolvers\n if (typeof resolvers === 'object') {\n acc.resolvers = merge(acc.resolvers, resolvers);\n }\n\n // Register resolvers configuration\n if (typeof resolversConfig === 'object') {\n // TODO: smarter merge for auth, middlewares & policies\n acc.resolversConfig = merge(resolversConfig, acc.resolversConfig);\n }\n\n return acc;\n }, getDefaultState());\n },\n };\n};\n\nexport default createExtension;\n"],"names":["getDefaultState","types","typeDefs","resolvers","resolversConfig","plugins","createExtension","strapi","configs","shadowCRUD","createShadowCRUDManager","use","configuration","push","generate","typeRegistry","resolveConfig","config","nexus","reduce","acc","Array","isArray","merge"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AA6BA,MAAMA,eAAAA,GAAkB,KAAkB;AACxCC,QAAAA,KAAAA,EAAO,EAAE;AACTC,QAAAA,QAAAA,EAAU,EAAE;AACZC,QAAAA,SAAAA,EAAW,EAAC;AACZC,QAAAA,eAAAA,EAAiB,EAAC;AAClBC,QAAAA,OAAAA,EAAS;KACX,CAAA;AAEA,MAAMC,
|
|
1
|
+
{"version":3,"file":"extension.js","sources":["../../../../server/src/services/extension/extension.ts"],"sourcesContent":["import * as nexus from 'nexus';\nimport { merge } from 'lodash/fp';\nimport type { Core } from '@strapi/types';\nimport type * as Nexus from 'nexus';\n\nimport createShadowCRUDManager from './shadow-crud-manager';\n\nexport type Configuration = {\n types?: NexusGen[];\n typeDefs?: string;\n resolvers?: object;\n resolversConfig?: object;\n plugins?: Nexus.PluginConfig[];\n};\n\nexport type ConfigurationFactory = (options: {\n strapi: Core.Strapi;\n nexus: typeof nexus;\n typeRegistry: object;\n}) => Configuration;\n\nexport type Extension = {\n types: NexusGen[];\n typeDefs: string[];\n resolvers: object;\n resolversConfig: object;\n plugins: Nexus.PluginConfig[];\n};\n\nconst getDefaultState = (): Extension => ({\n types: [],\n typeDefs: [],\n resolvers: {},\n resolversConfig: {},\n plugins: [],\n});\n\nconst createExtension = ({ strapi }: { strapi: Core.Strapi }) => {\n const configs: Array<Configuration | ConfigurationFactory> = [];\n\n return {\n shadowCRUD: createShadowCRUDManager(),\n\n /**\n * Register a new extension configuration\n */\n use(configuration: Configuration | ConfigurationFactory) {\n configs.push(configuration);\n\n return this;\n },\n\n /**\n * Convert the registered configuration into a single extension object & return it\n */\n generate({ typeRegistry }: { typeRegistry: object }) {\n const resolveConfig = (config: Configuration | ConfigurationFactory): Configuration => {\n return typeof config === 'function' ? config({ strapi, nexus, typeRegistry }) : config;\n };\n\n // Evaluate & merge every registered configuration object, then return the result\n return configs.reduce((acc, configuration) => {\n const { types, typeDefs, resolvers, resolversConfig, plugins } =\n resolveConfig(configuration);\n\n // Register type definitions\n if (typeof typeDefs === 'string') {\n acc.typeDefs.push(typeDefs);\n }\n\n // Register nexus types\n if (Array.isArray(types)) {\n acc.types.push(...types);\n }\n\n // Register nexus plugins\n if (Array.isArray(plugins)) {\n acc.plugins.push(...plugins);\n }\n\n // Register resolvers\n if (typeof resolvers === 'object') {\n acc.resolvers = merge(acc.resolvers, resolvers);\n }\n\n // Register resolvers configuration\n if (typeof resolversConfig === 'object') {\n // TODO: smarter merge for auth, middlewares & policies\n acc.resolversConfig = merge(resolversConfig, acc.resolversConfig);\n }\n\n return acc;\n }, getDefaultState());\n },\n };\n};\n\nexport default createExtension;\n"],"names":["getDefaultState","types","typeDefs","resolvers","resolversConfig","plugins","createExtension","strapi","configs","shadowCRUD","createShadowCRUDManager","use","configuration","push","generate","typeRegistry","resolveConfig","config","nexus","reduce","acc","Array","isArray","merge"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AA6BA,MAAMA,eAAAA,GAAkB,KAAkB;AACxCC,QAAAA,KAAAA,EAAO,EAAE;AACTC,QAAAA,QAAAA,EAAU,EAAE;AACZC,QAAAA,SAAAA,EAAW,EAAC;AACZC,QAAAA,eAAAA,EAAiB,EAAC;AAClBC,QAAAA,OAAAA,EAAS;KACX,CAAA;AAEA,MAAMC,eAAAA,GAAkB,CAAC,EAAEC,MAAM,EAA2B,GAAA;AAC1D,IAAA,MAAMC,UAAuD,EAAE;IAE/D,OAAO;QACLC,UAAAA,EAAYC,iBAAAA,EAAAA;AAEZ;;AAEC,QACDC,KAAIC,aAAmD,EAAA;AACrDJ,YAAAA,OAAAA,CAAQK,IAAI,CAACD,aAAAA,CAAAA;AAEb,YAAA,OAAO,IAAI;AACb,QAAA,CAAA;AAEA;;QAGAE,QAAAA,CAAAA,CAAS,EAAEC,YAAY,EAA4B,EAAA;AACjD,YAAA,MAAMC,gBAAgB,CAACC,MAAAA,GAAAA;gBACrB,OAAO,OAAOA,MAAAA,KAAW,UAAA,GAAaA,MAAAA,CAAO;AAAEV,oBAAAA,MAAAA;AAAQW,2BAAAA,gBAAAA;AAAOH,oBAAAA;iBAAa,CAAA,GAAKE,MAAAA;AAClF,YAAA,CAAA;;AAGA,YAAA,OAAOT,OAAAA,CAAQW,MAAM,CAAC,CAACC,GAAAA,EAAKR,aAAAA,GAAAA;AAC1B,gBAAA,MAAM,EAAEX,KAAK,EAAEC,QAAQ,EAAEC,SAAS,EAAEC,eAAe,EAAEC,OAAO,EAAE,GAC5DW,aAAAA,CAAcJ,aAAAA,CAAAA;;gBAGhB,IAAI,OAAOV,aAAa,QAAA,EAAU;oBAChCkB,GAAAA,CAAIlB,QAAQ,CAACW,IAAI,CAACX,QAAAA,CAAAA;AACpB,gBAAA;;gBAGA,IAAImB,KAAAA,CAAMC,OAAO,CAACrB,KAAAA,CAAAA,EAAQ;oBACxBmB,GAAAA,CAAInB,KAAK,CAACY,IAAI,CAAA,GAAIZ,KAAAA,CAAAA;AACpB,gBAAA;;gBAGA,IAAIoB,KAAAA,CAAMC,OAAO,CAACjB,OAAAA,CAAAA,EAAU;oBAC1Be,GAAAA,CAAIf,OAAO,CAACQ,IAAI,CAAA,GAAIR,OAAAA,CAAAA;AACtB,gBAAA;;gBAGA,IAAI,OAAOF,cAAc,QAAA,EAAU;AACjCiB,oBAAAA,GAAAA,CAAIjB,SAAS,GAAGoB,QAAAA,CAAMH,GAAAA,CAAIjB,SAAS,EAAEA,SAAAA,CAAAA;AACvC,gBAAA;;gBAGA,IAAI,OAAOC,oBAAoB,QAAA,EAAU;;AAEvCgB,oBAAAA,GAAAA,CAAIhB,eAAe,GAAGmB,QAAAA,CAAMnB,eAAAA,EAAiBgB,IAAIhB,eAAe,CAAA;AAClE,gBAAA;gBAEA,OAAOgB,GAAAA;YACT,CAAA,EAAGpB,eAAAA,EAAAA,CAAAA;AACL,QAAA;AACF,KAAA;AACF;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extension.mjs","sources":["../../../../server/src/services/extension/extension.ts"],"sourcesContent":["import * as nexus from 'nexus';\nimport { merge } from 'lodash/fp';\nimport type { Core } from '@strapi/types';\nimport type * as Nexus from 'nexus';\n\nimport createShadowCRUDManager from './shadow-crud-manager';\n\nexport type Configuration = {\n types?: NexusGen[];\n typeDefs?: string;\n resolvers?: object;\n resolversConfig?: object;\n plugins?: Nexus.PluginConfig[];\n};\n\nexport type ConfigurationFactory = (options: {\n strapi: Core.Strapi;\n nexus: typeof nexus;\n typeRegistry: object;\n}) => Configuration;\n\nexport type Extension = {\n types: NexusGen[];\n typeDefs: string[];\n resolvers: object;\n resolversConfig: object;\n plugins: Nexus.PluginConfig[];\n};\n\nconst getDefaultState = (): Extension => ({\n types: [],\n typeDefs: [],\n resolvers: {},\n resolversConfig: {},\n plugins: [],\n});\n\nconst createExtension = ({ strapi }: { strapi: Core.Strapi }) => {\n const configs: Array<Configuration | ConfigurationFactory> = [];\n\n return {\n shadowCRUD: createShadowCRUDManager(),\n\n /**\n * Register a new extension configuration\n */\n use(configuration: Configuration | ConfigurationFactory) {\n configs.push(configuration);\n\n return this;\n },\n\n /**\n * Convert the registered configuration into a single extension object & return it\n */\n generate({ typeRegistry }: { typeRegistry: object }) {\n const resolveConfig = (config: Configuration | ConfigurationFactory): Configuration => {\n return typeof config === 'function' ? config({ strapi, nexus, typeRegistry }) : config;\n };\n\n // Evaluate & merge every registered configuration object, then return the result\n return configs.reduce((acc, configuration) => {\n const { types, typeDefs, resolvers, resolversConfig, plugins } =\n resolveConfig(configuration);\n\n // Register type definitions\n if (typeof typeDefs === 'string') {\n acc.typeDefs.push(typeDefs);\n }\n\n // Register nexus types\n if (Array.isArray(types)) {\n acc.types.push(...types);\n }\n\n // Register nexus plugins\n if (Array.isArray(plugins)) {\n acc.plugins.push(...plugins);\n }\n\n // Register resolvers\n if (typeof resolvers === 'object') {\n acc.resolvers = merge(acc.resolvers, resolvers);\n }\n\n // Register resolvers configuration\n if (typeof resolversConfig === 'object') {\n // TODO: smarter merge for auth, middlewares & policies\n acc.resolversConfig = merge(resolversConfig, acc.resolversConfig);\n }\n\n return acc;\n }, getDefaultState());\n },\n };\n};\n\nexport default createExtension;\n"],"names":["getDefaultState","types","typeDefs","resolvers","resolversConfig","plugins","createExtension","strapi","configs","shadowCRUD","createShadowCRUDManager","use","configuration","push","generate","typeRegistry","resolveConfig","config","nexus","reduce","acc","Array","isArray","merge"],"mappings":";;;;AA6BA,MAAMA,eAAAA,GAAkB,KAAkB;AACxCC,QAAAA,KAAAA,EAAO,EAAE;AACTC,QAAAA,QAAAA,EAAU,EAAE;AACZC,QAAAA,SAAAA,EAAW,EAAC;AACZC,QAAAA,eAAAA,EAAiB,EAAC;AAClBC,QAAAA,OAAAA,EAAS;KACX,CAAA;AAEA,MAAMC,
|
|
1
|
+
{"version":3,"file":"extension.mjs","sources":["../../../../server/src/services/extension/extension.ts"],"sourcesContent":["import * as nexus from 'nexus';\nimport { merge } from 'lodash/fp';\nimport type { Core } from '@strapi/types';\nimport type * as Nexus from 'nexus';\n\nimport createShadowCRUDManager from './shadow-crud-manager';\n\nexport type Configuration = {\n types?: NexusGen[];\n typeDefs?: string;\n resolvers?: object;\n resolversConfig?: object;\n plugins?: Nexus.PluginConfig[];\n};\n\nexport type ConfigurationFactory = (options: {\n strapi: Core.Strapi;\n nexus: typeof nexus;\n typeRegistry: object;\n}) => Configuration;\n\nexport type Extension = {\n types: NexusGen[];\n typeDefs: string[];\n resolvers: object;\n resolversConfig: object;\n plugins: Nexus.PluginConfig[];\n};\n\nconst getDefaultState = (): Extension => ({\n types: [],\n typeDefs: [],\n resolvers: {},\n resolversConfig: {},\n plugins: [],\n});\n\nconst createExtension = ({ strapi }: { strapi: Core.Strapi }) => {\n const configs: Array<Configuration | ConfigurationFactory> = [];\n\n return {\n shadowCRUD: createShadowCRUDManager(),\n\n /**\n * Register a new extension configuration\n */\n use(configuration: Configuration | ConfigurationFactory) {\n configs.push(configuration);\n\n return this;\n },\n\n /**\n * Convert the registered configuration into a single extension object & return it\n */\n generate({ typeRegistry }: { typeRegistry: object }) {\n const resolveConfig = (config: Configuration | ConfigurationFactory): Configuration => {\n return typeof config === 'function' ? config({ strapi, nexus, typeRegistry }) : config;\n };\n\n // Evaluate & merge every registered configuration object, then return the result\n return configs.reduce((acc, configuration) => {\n const { types, typeDefs, resolvers, resolversConfig, plugins } =\n resolveConfig(configuration);\n\n // Register type definitions\n if (typeof typeDefs === 'string') {\n acc.typeDefs.push(typeDefs);\n }\n\n // Register nexus types\n if (Array.isArray(types)) {\n acc.types.push(...types);\n }\n\n // Register nexus plugins\n if (Array.isArray(plugins)) {\n acc.plugins.push(...plugins);\n }\n\n // Register resolvers\n if (typeof resolvers === 'object') {\n acc.resolvers = merge(acc.resolvers, resolvers);\n }\n\n // Register resolvers configuration\n if (typeof resolversConfig === 'object') {\n // TODO: smarter merge for auth, middlewares & policies\n acc.resolversConfig = merge(resolversConfig, acc.resolversConfig);\n }\n\n return acc;\n }, getDefaultState());\n },\n };\n};\n\nexport default createExtension;\n"],"names":["getDefaultState","types","typeDefs","resolvers","resolversConfig","plugins","createExtension","strapi","configs","shadowCRUD","createShadowCRUDManager","use","configuration","push","generate","typeRegistry","resolveConfig","config","nexus","reduce","acc","Array","isArray","merge"],"mappings":";;;;AA6BA,MAAMA,eAAAA,GAAkB,KAAkB;AACxCC,QAAAA,KAAAA,EAAO,EAAE;AACTC,QAAAA,QAAAA,EAAU,EAAE;AACZC,QAAAA,SAAAA,EAAW,EAAC;AACZC,QAAAA,eAAAA,EAAiB,EAAC;AAClBC,QAAAA,OAAAA,EAAS;KACX,CAAA;AAEA,MAAMC,eAAAA,GAAkB,CAAC,EAAEC,MAAM,EAA2B,GAAA;AAC1D,IAAA,MAAMC,UAAuD,EAAE;IAE/D,OAAO;QACLC,UAAAA,EAAYC,uBAAAA,EAAAA;AAEZ;;AAEC,QACDC,KAAIC,aAAmD,EAAA;AACrDJ,YAAAA,OAAAA,CAAQK,IAAI,CAACD,aAAAA,CAAAA;AAEb,YAAA,OAAO,IAAI;AACb,QAAA,CAAA;AAEA;;QAGAE,QAAAA,CAAAA,CAAS,EAAEC,YAAY,EAA4B,EAAA;AACjD,YAAA,MAAMC,gBAAgB,CAACC,MAAAA,GAAAA;gBACrB,OAAO,OAAOA,MAAAA,KAAW,UAAA,GAAaA,MAAAA,CAAO;AAAEV,oBAAAA,MAAAA;AAAQW,oBAAAA,KAAAA;AAAOH,oBAAAA;iBAAa,CAAA,GAAKE,MAAAA;AAClF,YAAA,CAAA;;AAGA,YAAA,OAAOT,OAAAA,CAAQW,MAAM,CAAC,CAACC,GAAAA,EAAKR,aAAAA,GAAAA;AAC1B,gBAAA,MAAM,EAAEX,KAAK,EAAEC,QAAQ,EAAEC,SAAS,EAAEC,eAAe,EAAEC,OAAO,EAAE,GAC5DW,aAAAA,CAAcJ,aAAAA,CAAAA;;gBAGhB,IAAI,OAAOV,aAAa,QAAA,EAAU;oBAChCkB,GAAAA,CAAIlB,QAAQ,CAACW,IAAI,CAACX,QAAAA,CAAAA;AACpB,gBAAA;;gBAGA,IAAImB,KAAAA,CAAMC,OAAO,CAACrB,KAAAA,CAAAA,EAAQ;oBACxBmB,GAAAA,CAAInB,KAAK,CAACY,IAAI,CAAA,GAAIZ,KAAAA,CAAAA;AACpB,gBAAA;;gBAGA,IAAIoB,KAAAA,CAAMC,OAAO,CAACjB,OAAAA,CAAAA,EAAU;oBAC1Be,GAAAA,CAAIf,OAAO,CAACQ,IAAI,CAAA,GAAIR,OAAAA,CAAAA;AACtB,gBAAA;;gBAGA,IAAI,OAAOF,cAAc,QAAA,EAAU;AACjCiB,oBAAAA,GAAAA,CAAIjB,SAAS,GAAGoB,KAAAA,CAAMH,GAAAA,CAAIjB,SAAS,EAAEA,SAAAA,CAAAA;AACvC,gBAAA;;gBAGA,IAAI,OAAOC,oBAAoB,QAAA,EAAU;;AAEvCgB,oBAAAA,GAAAA,CAAIhB,eAAe,GAAGmB,KAAAA,CAAMnB,eAAAA,EAAiBgB,IAAIhB,eAAe,CAAA;AAClE,gBAAA;gBAEA,OAAOgB,GAAAA;YACT,CAAA,EAAGpB,eAAAA,EAAAA,CAAAA;AACL,QAAA;AACF,KAAA;AACF;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shadow-crud-manager.js","sources":["../../../../server/src/services/extension/shadow-crud-manager.ts"],"sourcesContent":["export type ContentTypeConfig = {\n enabled: boolean;\n\n mutations: boolean;\n queries: boolean;\n\n disabledActions: string[];\n fields: Map<string, FieldConfig>;\n};\n\nexport type FieldConfig = {\n enabled: boolean;\n\n input: boolean;\n output: boolean;\n\n filters: boolean;\n};\n\nconst getDefaultContentTypeConfig = (): ContentTypeConfig => ({\n enabled: true,\n\n mutations: true,\n queries: true,\n\n disabledActions: [],\n fields: new Map(),\n});\n\nconst getDefaultFieldConfig = (): FieldConfig => ({\n enabled: true,\n\n input: true,\n output: true,\n\n filters: true,\n});\n\nconst ALL_ACTIONS = '*';\n\nexport default () => {\n const configs = new Map<string, ContentTypeConfig>();\n\n return (uid: string) => {\n if (!configs.has(uid)) {\n configs.set(uid, getDefaultContentTypeConfig());\n }\n\n return {\n isEnabled() {\n return configs.get(uid)!.enabled;\n },\n\n isDisabled() {\n return !this.isEnabled();\n },\n\n areQueriesEnabled() {\n return configs.get(uid)!.queries;\n },\n\n areQueriesDisabled() {\n return !this.areQueriesEnabled();\n },\n\n areMutationsEnabled() {\n return configs.get(uid)!.mutations;\n },\n\n areMutationsDisabled() {\n return !this.areMutationsEnabled();\n },\n\n isActionEnabled(action: string) {\n const matchingActions = [action, ALL_ACTIONS];\n\n return configs\n .get(uid)!\n .disabledActions.every((action) => !matchingActions.includes(action));\n },\n\n isActionDisabled(action: string) {\n return !this.isActionEnabled(action);\n },\n\n disable() {\n configs.get(uid)!.enabled = false;\n\n return this;\n },\n\n disableQueries() {\n configs.get(uid)!.queries = false;\n\n return this;\n },\n\n disableMutations() {\n configs.get(uid)!.mutations = false;\n\n return this;\n },\n\n disableAction(action: string) {\n const config = configs.get(uid)!;\n\n if (!config.disabledActions.includes(action)) {\n config.disabledActions.push(action);\n }\n\n return this;\n },\n\n disableActions(actions = []) {\n actions.forEach((action) => this.disableAction(action));\n\n return this;\n },\n\n field(fieldName: string) {\n const { fields } = configs.get(uid)!;\n\n if (!fields.has(fieldName)) {\n fields.set(fieldName, getDefaultFieldConfig());\n }\n\n return {\n isEnabled() {\n return fields.get(fieldName)!.enabled;\n },\n\n hasInputEnabled() {\n return fields.get(fieldName)!.input;\n },\n\n hasOutputEnabled() {\n return fields.get(fieldName)!.output;\n },\n\n hasFiltersEnabeld() {\n return fields.get(fieldName)!.filters;\n },\n\n disable() {\n fields.set(fieldName, {\n enabled: false,\n\n output: false,\n input: false,\n\n filters: false,\n });\n\n return this;\n },\n\n disableOutput() {\n fields.get(fieldName)!.output = false;\n\n return this;\n },\n\n disableInput() {\n fields.get(fieldName)!.input = false;\n\n return this;\n },\n\n disableFilters() {\n fields.get(fieldName)!.filters = false;\n\n return this;\n },\n };\n },\n };\n };\n};\n"],"names":["getDefaultContentTypeConfig","enabled","mutations","queries","disabledActions","fields","Map","getDefaultFieldConfig","input","output","filters","ALL_ACTIONS","configs","uid","has","set","isEnabled","get","isDisabled","areQueriesEnabled","areQueriesDisabled","areMutationsEnabled","areMutationsDisabled","isActionEnabled","action","matchingActions","every","includes","isActionDisabled","disable","disableQueries","disableMutations","disableAction","config","push","disableActions","actions","forEach","field","fieldName","hasInputEnabled","hasOutputEnabled","hasFiltersEnabeld","disableOutput","disableInput","disableFilters"],"mappings":";;AAmBA,MAAMA,2BAAAA,GAA8B,KAA0B;QAC5DC,
|
|
1
|
+
{"version":3,"file":"shadow-crud-manager.js","sources":["../../../../server/src/services/extension/shadow-crud-manager.ts"],"sourcesContent":["export type ContentTypeConfig = {\n enabled: boolean;\n\n mutations: boolean;\n queries: boolean;\n\n disabledActions: string[];\n fields: Map<string, FieldConfig>;\n};\n\nexport type FieldConfig = {\n enabled: boolean;\n\n input: boolean;\n output: boolean;\n\n filters: boolean;\n};\n\nconst getDefaultContentTypeConfig = (): ContentTypeConfig => ({\n enabled: true,\n\n mutations: true,\n queries: true,\n\n disabledActions: [],\n fields: new Map(),\n});\n\nconst getDefaultFieldConfig = (): FieldConfig => ({\n enabled: true,\n\n input: true,\n output: true,\n\n filters: true,\n});\n\nconst ALL_ACTIONS = '*';\n\nexport default () => {\n const configs = new Map<string, ContentTypeConfig>();\n\n return (uid: string) => {\n if (!configs.has(uid)) {\n configs.set(uid, getDefaultContentTypeConfig());\n }\n\n return {\n isEnabled() {\n return configs.get(uid)!.enabled;\n },\n\n isDisabled() {\n return !this.isEnabled();\n },\n\n areQueriesEnabled() {\n return configs.get(uid)!.queries;\n },\n\n areQueriesDisabled() {\n return !this.areQueriesEnabled();\n },\n\n areMutationsEnabled() {\n return configs.get(uid)!.mutations;\n },\n\n areMutationsDisabled() {\n return !this.areMutationsEnabled();\n },\n\n isActionEnabled(action: string) {\n const matchingActions = [action, ALL_ACTIONS];\n\n return configs\n .get(uid)!\n .disabledActions.every((action) => !matchingActions.includes(action));\n },\n\n isActionDisabled(action: string) {\n return !this.isActionEnabled(action);\n },\n\n disable() {\n configs.get(uid)!.enabled = false;\n\n return this;\n },\n\n disableQueries() {\n configs.get(uid)!.queries = false;\n\n return this;\n },\n\n disableMutations() {\n configs.get(uid)!.mutations = false;\n\n return this;\n },\n\n disableAction(action: string) {\n const config = configs.get(uid)!;\n\n if (!config.disabledActions.includes(action)) {\n config.disabledActions.push(action);\n }\n\n return this;\n },\n\n disableActions(actions = []) {\n actions.forEach((action) => this.disableAction(action));\n\n return this;\n },\n\n field(fieldName: string) {\n const { fields } = configs.get(uid)!;\n\n if (!fields.has(fieldName)) {\n fields.set(fieldName, getDefaultFieldConfig());\n }\n\n return {\n isEnabled() {\n return fields.get(fieldName)!.enabled;\n },\n\n hasInputEnabled() {\n return fields.get(fieldName)!.input;\n },\n\n hasOutputEnabled() {\n return fields.get(fieldName)!.output;\n },\n\n hasFiltersEnabeld() {\n return fields.get(fieldName)!.filters;\n },\n\n disable() {\n fields.set(fieldName, {\n enabled: false,\n\n output: false,\n input: false,\n\n filters: false,\n });\n\n return this;\n },\n\n disableOutput() {\n fields.get(fieldName)!.output = false;\n\n return this;\n },\n\n disableInput() {\n fields.get(fieldName)!.input = false;\n\n return this;\n },\n\n disableFilters() {\n fields.get(fieldName)!.filters = false;\n\n return this;\n },\n };\n },\n };\n };\n};\n"],"names":["getDefaultContentTypeConfig","enabled","mutations","queries","disabledActions","fields","Map","getDefaultFieldConfig","input","output","filters","ALL_ACTIONS","configs","uid","has","set","isEnabled","get","isDisabled","areQueriesEnabled","areQueriesDisabled","areMutationsEnabled","areMutationsDisabled","isActionEnabled","action","matchingActions","every","includes","isActionDisabled","disable","disableQueries","disableMutations","disableAction","config","push","disableActions","actions","forEach","field","fieldName","hasInputEnabled","hasOutputEnabled","hasFiltersEnabeld","disableOutput","disableInput","disableFilters"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shadow-crud-manager.mjs","sources":["../../../../server/src/services/extension/shadow-crud-manager.ts"],"sourcesContent":["export type ContentTypeConfig = {\n enabled: boolean;\n\n mutations: boolean;\n queries: boolean;\n\n disabledActions: string[];\n fields: Map<string, FieldConfig>;\n};\n\nexport type FieldConfig = {\n enabled: boolean;\n\n input: boolean;\n output: boolean;\n\n filters: boolean;\n};\n\nconst getDefaultContentTypeConfig = (): ContentTypeConfig => ({\n enabled: true,\n\n mutations: true,\n queries: true,\n\n disabledActions: [],\n fields: new Map(),\n});\n\nconst getDefaultFieldConfig = (): FieldConfig => ({\n enabled: true,\n\n input: true,\n output: true,\n\n filters: true,\n});\n\nconst ALL_ACTIONS = '*';\n\nexport default () => {\n const configs = new Map<string, ContentTypeConfig>();\n\n return (uid: string) => {\n if (!configs.has(uid)) {\n configs.set(uid, getDefaultContentTypeConfig());\n }\n\n return {\n isEnabled() {\n return configs.get(uid)!.enabled;\n },\n\n isDisabled() {\n return !this.isEnabled();\n },\n\n areQueriesEnabled() {\n return configs.get(uid)!.queries;\n },\n\n areQueriesDisabled() {\n return !this.areQueriesEnabled();\n },\n\n areMutationsEnabled() {\n return configs.get(uid)!.mutations;\n },\n\n areMutationsDisabled() {\n return !this.areMutationsEnabled();\n },\n\n isActionEnabled(action: string) {\n const matchingActions = [action, ALL_ACTIONS];\n\n return configs\n .get(uid)!\n .disabledActions.every((action) => !matchingActions.includes(action));\n },\n\n isActionDisabled(action: string) {\n return !this.isActionEnabled(action);\n },\n\n disable() {\n configs.get(uid)!.enabled = false;\n\n return this;\n },\n\n disableQueries() {\n configs.get(uid)!.queries = false;\n\n return this;\n },\n\n disableMutations() {\n configs.get(uid)!.mutations = false;\n\n return this;\n },\n\n disableAction(action: string) {\n const config = configs.get(uid)!;\n\n if (!config.disabledActions.includes(action)) {\n config.disabledActions.push(action);\n }\n\n return this;\n },\n\n disableActions(actions = []) {\n actions.forEach((action) => this.disableAction(action));\n\n return this;\n },\n\n field(fieldName: string) {\n const { fields } = configs.get(uid)!;\n\n if (!fields.has(fieldName)) {\n fields.set(fieldName, getDefaultFieldConfig());\n }\n\n return {\n isEnabled() {\n return fields.get(fieldName)!.enabled;\n },\n\n hasInputEnabled() {\n return fields.get(fieldName)!.input;\n },\n\n hasOutputEnabled() {\n return fields.get(fieldName)!.output;\n },\n\n hasFiltersEnabeld() {\n return fields.get(fieldName)!.filters;\n },\n\n disable() {\n fields.set(fieldName, {\n enabled: false,\n\n output: false,\n input: false,\n\n filters: false,\n });\n\n return this;\n },\n\n disableOutput() {\n fields.get(fieldName)!.output = false;\n\n return this;\n },\n\n disableInput() {\n fields.get(fieldName)!.input = false;\n\n return this;\n },\n\n disableFilters() {\n fields.get(fieldName)!.filters = false;\n\n return this;\n },\n };\n },\n };\n };\n};\n"],"names":["getDefaultContentTypeConfig","enabled","mutations","queries","disabledActions","fields","Map","getDefaultFieldConfig","input","output","filters","ALL_ACTIONS","configs","uid","has","set","isEnabled","get","isDisabled","areQueriesEnabled","areQueriesDisabled","areMutationsEnabled","areMutationsDisabled","isActionEnabled","action","matchingActions","every","includes","isActionDisabled","disable","disableQueries","disableMutations","disableAction","config","push","disableActions","actions","forEach","field","fieldName","hasInputEnabled","hasOutputEnabled","hasFiltersEnabeld","disableOutput","disableInput","disableFilters"],"mappings":"AAmBA,MAAMA,2BAAAA,GAA8B,KAA0B;QAC5DC,
|
|
1
|
+
{"version":3,"file":"shadow-crud-manager.mjs","sources":["../../../../server/src/services/extension/shadow-crud-manager.ts"],"sourcesContent":["export type ContentTypeConfig = {\n enabled: boolean;\n\n mutations: boolean;\n queries: boolean;\n\n disabledActions: string[];\n fields: Map<string, FieldConfig>;\n};\n\nexport type FieldConfig = {\n enabled: boolean;\n\n input: boolean;\n output: boolean;\n\n filters: boolean;\n};\n\nconst getDefaultContentTypeConfig = (): ContentTypeConfig => ({\n enabled: true,\n\n mutations: true,\n queries: true,\n\n disabledActions: [],\n fields: new Map(),\n});\n\nconst getDefaultFieldConfig = (): FieldConfig => ({\n enabled: true,\n\n input: true,\n output: true,\n\n filters: true,\n});\n\nconst ALL_ACTIONS = '*';\n\nexport default () => {\n const configs = new Map<string, ContentTypeConfig>();\n\n return (uid: string) => {\n if (!configs.has(uid)) {\n configs.set(uid, getDefaultContentTypeConfig());\n }\n\n return {\n isEnabled() {\n return configs.get(uid)!.enabled;\n },\n\n isDisabled() {\n return !this.isEnabled();\n },\n\n areQueriesEnabled() {\n return configs.get(uid)!.queries;\n },\n\n areQueriesDisabled() {\n return !this.areQueriesEnabled();\n },\n\n areMutationsEnabled() {\n return configs.get(uid)!.mutations;\n },\n\n areMutationsDisabled() {\n return !this.areMutationsEnabled();\n },\n\n isActionEnabled(action: string) {\n const matchingActions = [action, ALL_ACTIONS];\n\n return configs\n .get(uid)!\n .disabledActions.every((action) => !matchingActions.includes(action));\n },\n\n isActionDisabled(action: string) {\n return !this.isActionEnabled(action);\n },\n\n disable() {\n configs.get(uid)!.enabled = false;\n\n return this;\n },\n\n disableQueries() {\n configs.get(uid)!.queries = false;\n\n return this;\n },\n\n disableMutations() {\n configs.get(uid)!.mutations = false;\n\n return this;\n },\n\n disableAction(action: string) {\n const config = configs.get(uid)!;\n\n if (!config.disabledActions.includes(action)) {\n config.disabledActions.push(action);\n }\n\n return this;\n },\n\n disableActions(actions = []) {\n actions.forEach((action) => this.disableAction(action));\n\n return this;\n },\n\n field(fieldName: string) {\n const { fields } = configs.get(uid)!;\n\n if (!fields.has(fieldName)) {\n fields.set(fieldName, getDefaultFieldConfig());\n }\n\n return {\n isEnabled() {\n return fields.get(fieldName)!.enabled;\n },\n\n hasInputEnabled() {\n return fields.get(fieldName)!.input;\n },\n\n hasOutputEnabled() {\n return fields.get(fieldName)!.output;\n },\n\n hasFiltersEnabeld() {\n return fields.get(fieldName)!.filters;\n },\n\n disable() {\n fields.set(fieldName, {\n enabled: false,\n\n output: false,\n input: false,\n\n filters: false,\n });\n\n return this;\n },\n\n disableOutput() {\n fields.get(fieldName)!.output = false;\n\n return this;\n },\n\n disableInput() {\n fields.get(fieldName)!.input = false;\n\n return this;\n },\n\n disableFilters() {\n fields.get(fieldName)!.filters = false;\n\n return this;\n },\n };\n },\n };\n };\n};\n"],"names":["getDefaultContentTypeConfig","enabled","mutations","queries","disabledActions","fields","Map","getDefaultFieldConfig","input","output","filters","ALL_ACTIONS","configs","uid","has","set","isEnabled","get","isDisabled","areQueriesEnabled","areQueriesDisabled","areMutationsEnabled","areMutationsDisabled","isActionEnabled","action","matchingActions","every","includes","isActionDisabled","disable","disableQueries","disableMutations","disableAction","config","push","disableActions","actions","forEach","field","fieldName","hasInputEnabled","hasOutputEnabled","hasFiltersEnabeld","disableOutput","disableInput","disableFilters"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../server/src/services/format/index.ts"],"sourcesContent":["import returnTypes from './return-types';\n\nexport default () => ({\n returnTypes: returnTypes(),\n});\n"],"names":["returnTypes"],"mappings":";;;;AAEA,aAAe,CAAA,KAAO;QACpBA,
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../server/src/services/format/index.ts"],"sourcesContent":["import returnTypes from './return-types';\n\nexport default () => ({\n returnTypes: returnTypes(),\n});\n"],"names":["returnTypes"],"mappings":";;;;AAEA,aAAe,CAAA,KAAO;QACpBA,WAAAA,EAAaA,WAAAA;AACf,KAAA,CAAC;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../server/src/services/format/index.ts"],"sourcesContent":["import returnTypes from './return-types';\n\nexport default () => ({\n returnTypes: returnTypes(),\n});\n"],"names":["returnTypes"],"mappings":";;AAEA,aAAe,CAAA,KAAO;QACpBA,
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../server/src/services/format/index.ts"],"sourcesContent":["import returnTypes from './return-types';\n\nexport default () => ({\n returnTypes: returnTypes(),\n});\n"],"names":["returnTypes"],"mappings":";;AAEA,aAAe,CAAA,KAAO;QACpBA,WAAAA,EAAaA,WAAAA;AACf,KAAA,CAAC;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"return-types.js","sources":["../../../../server/src/services/format/return-types.ts"],"sourcesContent":["export type InfoType = {\n args?: unknown;\n resourceUID?: string;\n};\n\nexport default () => ({\n toEntityResponse(value: unknown, info: InfoType = {}) {\n const { args = {}, resourceUID } = info;\n\n return { value, info: { args, resourceUID } };\n },\n\n toEntityResponseCollection(nodes: unknown[], info: InfoType = {}) {\n const { args = {}, resourceUID } = info;\n\n return { nodes, info: { args, resourceUID } };\n },\n});\n"],"names":["toEntityResponse","value","info","args","resourceUID","toEntityResponseCollection","nodes"],"mappings":";;AAKA,kBAAe,CAAA,KAAO;AACpBA,QAAAA,gBAAAA,CAAAA,CAAiBC,KAAc,EAAEC,
|
|
1
|
+
{"version":3,"file":"return-types.js","sources":["../../../../server/src/services/format/return-types.ts"],"sourcesContent":["export type InfoType = {\n args?: unknown;\n resourceUID?: string;\n};\n\nexport default () => ({\n toEntityResponse(value: unknown, info: InfoType = {}) {\n const { args = {}, resourceUID } = info;\n\n return { value, info: { args, resourceUID } };\n },\n\n toEntityResponseCollection(nodes: unknown[], info: InfoType = {}) {\n const { args = {}, resourceUID } = info;\n\n return { nodes, info: { args, resourceUID } };\n },\n});\n"],"names":["toEntityResponse","value","info","args","resourceUID","toEntityResponseCollection","nodes"],"mappings":";;AAKA,kBAAe,CAAA,KAAO;AACpBA,QAAAA,gBAAAA,CAAAA,CAAiBC,KAAc,EAAEC,IAAAA,GAAiB,EAAE,EAAA;AAClD,YAAA,MAAM,EAAEC,IAAAA,GAAO,EAAE,EAAEC,WAAW,EAAE,GAAGF,IAAAA;YAEnC,OAAO;AAAED,gBAAAA,KAAAA;gBAAOC,IAAAA,EAAM;AAAEC,oBAAAA,IAAAA;AAAMC,oBAAAA;AAAY;AAAE,aAAA;AAC9C,QAAA,CAAA;AAEAC,QAAAA,0BAAAA,CAAAA,CAA2BC,KAAgB,EAAEJ,IAAAA,GAAiB,EAAE,EAAA;AAC9D,YAAA,MAAM,EAAEC,IAAAA,GAAO,EAAE,EAAEC,WAAW,EAAE,GAAGF,IAAAA;YAEnC,OAAO;AAAEI,gBAAAA,KAAAA;gBAAOJ,IAAAA,EAAM;AAAEC,oBAAAA,IAAAA;AAAMC,oBAAAA;AAAY;AAAE,aAAA;AAC9C,QAAA;AACF,KAAA,CAAC;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"return-types.mjs","sources":["../../../../server/src/services/format/return-types.ts"],"sourcesContent":["export type InfoType = {\n args?: unknown;\n resourceUID?: string;\n};\n\nexport default () => ({\n toEntityResponse(value: unknown, info: InfoType = {}) {\n const { args = {}, resourceUID } = info;\n\n return { value, info: { args, resourceUID } };\n },\n\n toEntityResponseCollection(nodes: unknown[], info: InfoType = {}) {\n const { args = {}, resourceUID } = info;\n\n return { nodes, info: { args, resourceUID } };\n },\n});\n"],"names":["toEntityResponse","value","info","args","resourceUID","toEntityResponseCollection","nodes"],"mappings":"AAKA,kBAAe,CAAA,KAAO;AACpBA,QAAAA,gBAAAA,CAAAA,CAAiBC,KAAc,EAAEC,
|
|
1
|
+
{"version":3,"file":"return-types.mjs","sources":["../../../../server/src/services/format/return-types.ts"],"sourcesContent":["export type InfoType = {\n args?: unknown;\n resourceUID?: string;\n};\n\nexport default () => ({\n toEntityResponse(value: unknown, info: InfoType = {}) {\n const { args = {}, resourceUID } = info;\n\n return { value, info: { args, resourceUID } };\n },\n\n toEntityResponseCollection(nodes: unknown[], info: InfoType = {}) {\n const { args = {}, resourceUID } = info;\n\n return { nodes, info: { args, resourceUID } };\n },\n});\n"],"names":["toEntityResponse","value","info","args","resourceUID","toEntityResponseCollection","nodes"],"mappings":"AAKA,kBAAe,CAAA,KAAO;AACpBA,QAAAA,gBAAAA,CAAAA,CAAiBC,KAAc,EAAEC,IAAAA,GAAiB,EAAE,EAAA;AAClD,YAAA,MAAM,EAAEC,IAAAA,GAAO,EAAE,EAAEC,WAAW,EAAE,GAAGF,IAAAA;YAEnC,OAAO;AAAED,gBAAAA,KAAAA;gBAAOC,IAAAA,EAAM;AAAEC,oBAAAA,IAAAA;AAAMC,oBAAAA;AAAY;AAAE,aAAA;AAC9C,QAAA,CAAA;AAEAC,QAAAA,0BAAAA,CAAAA,CAA2BC,KAAgB,EAAEJ,IAAAA,GAAiB,EAAE,EAAA;AAC9D,YAAA,MAAM,EAAEC,IAAAA,GAAO,EAAE,EAAEC,WAAW,EAAE,GAAGF,IAAAA;YAEnC,OAAO;AAAEI,gBAAAA,KAAAA;gBAAOJ,IAAAA,EAAM;AAAEC,oBAAAA,IAAAA;AAAMC,oBAAAA;AAAY;AAAE,aAAA;AAC9C,QAAA;AACF,KAAA,CAAC;;;;"}
|
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var index$
|
|
3
|
+
var index$3 = require('./content-api/index.js');
|
|
4
4
|
var typeRegistry = require('./type-registry.js');
|
|
5
|
-
var index
|
|
5
|
+
var index = require('./utils/index.js');
|
|
6
6
|
var constants = require('./constants.js');
|
|
7
|
-
var index$
|
|
8
|
-
var index = require('./builders/index.js');
|
|
7
|
+
var index$1 = require('./internals/index.js');
|
|
8
|
+
var index$4 = require('./builders/index.js');
|
|
9
9
|
var extension = require('./extension/extension.js');
|
|
10
10
|
var index$2 = require('./format/index.js');
|
|
11
11
|
|
|
12
12
|
const services = {
|
|
13
|
-
builders: index,
|
|
14
|
-
'content-api': index$
|
|
13
|
+
builders: index$4,
|
|
14
|
+
'content-api': index$3,
|
|
15
15
|
constants,
|
|
16
16
|
extension,
|
|
17
17
|
format: index$2,
|
|
18
|
-
internals: index$
|
|
18
|
+
internals: index$1,
|
|
19
19
|
'type-registry': typeRegistry,
|
|
20
|
-
utils: index
|
|
20
|
+
utils: index
|
|
21
21
|
};
|
|
22
22
|
|
|
23
23
|
exports.services = services;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../server/src/services/index.ts"],"sourcesContent":["import contentAPI from './content-api';\nimport typeRegistry from './type-registry';\nimport utils from './utils';\nimport constants from './constants';\nimport internals from './internals';\nimport builders from './builders';\nimport extension from './extension';\nimport format from './format';\n\nexport const services = {\n builders,\n 'content-api': contentAPI,\n constants,\n extension,\n format,\n internals,\n 'type-registry': typeRegistry,\n utils,\n};\n"],"names":["services","builders","contentAPI","constants","extension","format","internals","typeRegistry","utils"],"mappings":";;;;;;;;;;;MASaA,
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../server/src/services/index.ts"],"sourcesContent":["import contentAPI from './content-api';\nimport typeRegistry from './type-registry';\nimport utils from './utils';\nimport constants from './constants';\nimport internals from './internals';\nimport builders from './builders';\nimport extension from './extension';\nimport format from './format';\n\nexport const services = {\n builders,\n 'content-api': contentAPI,\n constants,\n extension,\n format,\n internals,\n 'type-registry': typeRegistry,\n utils,\n};\n"],"names":["services","builders","contentAPI","constants","extension","format","internals","typeRegistry","utils"],"mappings":";;;;;;;;;;;MASaA,QAAAA,GAAW;AACtBC,cAAAA,OAAAA;IACA,aAAA,EAAeC,OAAAA;AACfC,IAAAA,SAAAA;AACAC,IAAAA,SAAAA;AACAC,YAAAA,OAAAA;AACAC,eAAAA,OAAAA;IACA,eAAA,EAAiBC,YAAAA;AACjBC,WAAAA;AACF;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../server/src/services/index.ts"],"sourcesContent":["import contentAPI from './content-api';\nimport typeRegistry from './type-registry';\nimport utils from './utils';\nimport constants from './constants';\nimport internals from './internals';\nimport builders from './builders';\nimport extension from './extension';\nimport format from './format';\n\nexport const services = {\n builders,\n 'content-api': contentAPI,\n constants,\n extension,\n format,\n internals,\n 'type-registry': typeRegistry,\n utils,\n};\n"],"names":["services","builders","contentAPI","constants","extension","format","internals","typeRegistry","utils"],"mappings":";;;;;;;;;MASaA,
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../server/src/services/index.ts"],"sourcesContent":["import contentAPI from './content-api';\nimport typeRegistry from './type-registry';\nimport utils from './utils';\nimport constants from './constants';\nimport internals from './internals';\nimport builders from './builders';\nimport extension from './extension';\nimport format from './format';\n\nexport const services = {\n builders,\n 'content-api': contentAPI,\n constants,\n extension,\n format,\n internals,\n 'type-registry': typeRegistry,\n utils,\n};\n"],"names":["services","builders","contentAPI","constants","extension","format","internals","typeRegistry","utils"],"mappings":";;;;;;;;;MASaA,QAAAA,GAAW;AACtBC,IAAAA,QAAAA;IACA,aAAA,EAAeC,UAAAA;AACfC,IAAAA,SAAAA;AACAC,eAAAA,eAAAA;AACAC,IAAAA,MAAAA;AACAC,IAAAA,SAAAA;IACA,eAAA,EAAiBC,YAAAA;AACjBC,IAAAA;AACF;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../server/src/services/internals/args/index.ts"],"sourcesContent":["import SortArg from './sort';\nimport publicationStatus from './publication-status';\nimport hasPublishedVersion from './has-published-version';\nimport PaginationArg from './pagination';\nimport type { Context } from '../../types';\n\nexport default (context: Context) => ({\n SortArg,\n PaginationArg,\n PublicationStatusArg: publicationStatus(context),\n HasPublishedVersionArg: hasPublishedVersion(),\n});\n"],"names":["context","SortArg","PaginationArg","PublicationStatusArg","publicationStatus","HasPublishedVersionArg","hasPublishedVersion"],"mappings":";;;;;;;AAMA,WAAe,CAAA,CAACA,OAAAA,IAAsB;AACpCC,iBAAAA,IAAAA;AACAC,uBAAAA,UAAAA;AACAC,QAAAA,oBAAAA,EAAsBC,
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../server/src/services/internals/args/index.ts"],"sourcesContent":["import SortArg from './sort';\nimport publicationStatus from './publication-status';\nimport hasPublishedVersion from './has-published-version';\nimport PaginationArg from './pagination';\nimport type { Context } from '../../types';\n\nexport default (context: Context) => ({\n SortArg,\n PaginationArg,\n PublicationStatusArg: publicationStatus(context),\n HasPublishedVersionArg: hasPublishedVersion(),\n});\n"],"names":["context","SortArg","PaginationArg","PublicationStatusArg","publicationStatus","HasPublishedVersionArg","hasPublishedVersion"],"mappings":";;;;;;;AAMA,WAAe,CAAA,CAACA,OAAAA,IAAsB;AACpCC,iBAAAA,IAAAA;AACAC,uBAAAA,UAAAA;AACAC,QAAAA,oBAAAA,EAAsBC,iBAAAA,CAAkBJ,OAAAA,CAAAA;QACxCK,sBAAAA,EAAwBC,mBAAAA;AAC1B,KAAA,CAAC;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../../server/src/services/internals/args/index.ts"],"sourcesContent":["import SortArg from './sort';\nimport publicationStatus from './publication-status';\nimport hasPublishedVersion from './has-published-version';\nimport PaginationArg from './pagination';\nimport type { Context } from '../../types';\n\nexport default (context: Context) => ({\n SortArg,\n PaginationArg,\n PublicationStatusArg: publicationStatus(context),\n HasPublishedVersionArg: hasPublishedVersion(),\n});\n"],"names":["context","SortArg","PaginationArg","PublicationStatusArg","publicationStatus","HasPublishedVersionArg","hasPublishedVersion"],"mappings":";;;;;AAMA,WAAe,CAAA,CAACA,OAAAA,IAAsB;AACpCC,QAAAA,OAAAA;AACAC,QAAAA,aAAAA;AACAC,QAAAA,oBAAAA,EAAsBC,
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../server/src/services/internals/args/index.ts"],"sourcesContent":["import SortArg from './sort';\nimport publicationStatus from './publication-status';\nimport hasPublishedVersion from './has-published-version';\nimport PaginationArg from './pagination';\nimport type { Context } from '../../types';\n\nexport default (context: Context) => ({\n SortArg,\n PaginationArg,\n PublicationStatusArg: publicationStatus(context),\n HasPublishedVersionArg: hasPublishedVersion(),\n});\n"],"names":["context","SortArg","PaginationArg","PublicationStatusArg","publicationStatus","HasPublishedVersionArg","hasPublishedVersion"],"mappings":";;;;;AAMA,WAAe,CAAA,CAACA,OAAAA,IAAsB;AACpCC,QAAAA,OAAAA;AACAC,QAAAA,aAAAA;AACAC,QAAAA,oBAAAA,EAAsBC,iBAAAA,CAAkBJ,OAAAA,CAAAA;QACxCK,sBAAAA,EAAwBC,mBAAAA;AAC1B,KAAA,CAAC;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pagination.js","sources":["../../../../../server/src/services/internals/args/pagination.ts"],"sourcesContent":["import { arg, inputObjectType } from 'nexus';\n\nconst PaginationInputType = inputObjectType({\n name: 'PaginationArg',\n\n definition(t) {\n t.int('page');\n t.int('pageSize');\n t.int('start');\n t.int('limit');\n },\n});\n\nexport default arg({\n type: PaginationInputType,\n default: {},\n});\n"],"names":["PaginationInputType","inputObjectType","name","definition","t","int","arg","type","default"],"mappings":";;;;AAEA,MAAMA,sBAAsBC,
|
|
1
|
+
{"version":3,"file":"pagination.js","sources":["../../../../../server/src/services/internals/args/pagination.ts"],"sourcesContent":["import { arg, inputObjectType } from 'nexus';\n\nconst PaginationInputType = inputObjectType({\n name: 'PaginationArg',\n\n definition(t) {\n t.int('page');\n t.int('pageSize');\n t.int('start');\n t.int('limit');\n },\n});\n\nexport default arg({\n type: PaginationInputType,\n default: {},\n});\n"],"names":["PaginationInputType","inputObjectType","name","definition","t","int","arg","type","default"],"mappings":";;;;AAEA,MAAMA,sBAAsBC,qBAAAA,CAAgB;IAC1CC,IAAAA,EAAM,eAAA;AAENC,IAAAA,UAAAA,CAAAA,CAAWC,CAAC,EAAA;AACVA,QAAAA,CAAAA,CAAEC,GAAG,CAAC,MAAA,CAAA;AACND,QAAAA,CAAAA,CAAEC,GAAG,CAAC,UAAA,CAAA;AACND,QAAAA,CAAAA,CAAEC,GAAG,CAAC,OAAA,CAAA;AACND,QAAAA,CAAAA,CAAEC,GAAG,CAAC,OAAA,CAAA;AACR,IAAA;AACF,CAAA,CAAA;AAEA,oBAAeC,SAAAA,CAAI;IACjBC,IAAAA,EAAMP,mBAAAA;AACNQ,IAAAA,OAAAA,EAAS;AACX,CAAA,CAAA;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pagination.mjs","sources":["../../../../../server/src/services/internals/args/pagination.ts"],"sourcesContent":["import { arg, inputObjectType } from 'nexus';\n\nconst PaginationInputType = inputObjectType({\n name: 'PaginationArg',\n\n definition(t) {\n t.int('page');\n t.int('pageSize');\n t.int('start');\n t.int('limit');\n },\n});\n\nexport default arg({\n type: PaginationInputType,\n default: {},\n});\n"],"names":["PaginationInputType","inputObjectType","name","definition","t","int","arg","type","default"],"mappings":";;AAEA,MAAMA,sBAAsBC,
|
|
1
|
+
{"version":3,"file":"pagination.mjs","sources":["../../../../../server/src/services/internals/args/pagination.ts"],"sourcesContent":["import { arg, inputObjectType } from 'nexus';\n\nconst PaginationInputType = inputObjectType({\n name: 'PaginationArg',\n\n definition(t) {\n t.int('page');\n t.int('pageSize');\n t.int('start');\n t.int('limit');\n },\n});\n\nexport default arg({\n type: PaginationInputType,\n default: {},\n});\n"],"names":["PaginationInputType","inputObjectType","name","definition","t","int","arg","type","default"],"mappings":";;AAEA,MAAMA,sBAAsBC,eAAAA,CAAgB;IAC1CC,IAAAA,EAAM,eAAA;AAENC,IAAAA,UAAAA,CAAAA,CAAWC,CAAC,EAAA;AACVA,QAAAA,CAAAA,CAAEC,GAAG,CAAC,MAAA,CAAA;AACND,QAAAA,CAAAA,CAAEC,GAAG,CAAC,UAAA,CAAA;AACND,QAAAA,CAAAA,CAAEC,GAAG,CAAC,OAAA,CAAA;AACND,QAAAA,CAAAA,CAAEC,GAAG,CAAC,OAAA,CAAA;AACR,IAAA;AACF,CAAA,CAAA;AAEA,oBAAeC,GAAAA,CAAI;IACjBC,IAAAA,EAAMP,mBAAAA;AACNQ,IAAAA,OAAAA,EAAS;AACX,CAAA,CAAA;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publication-status.js","sources":["../../../../../server/src/services/internals/args/publication-status.ts"],"sourcesContent":["import { arg } from 'nexus';\nimport { Context } from '../../types';\n\nexport default ({ strapi }: Context) => {\n const { PUBLICATION_STATUS_TYPE_NAME } = strapi.plugin('graphql').service('constants');\n\n return arg({\n type: PUBLICATION_STATUS_TYPE_NAME,\n default: 'published',\n });\n};\n"],"names":["strapi","PUBLICATION_STATUS_TYPE_NAME","plugin","service","arg","type","default"],"mappings":";;;;AAGA,wBAAe,CAAA,CAAC,EAAEA,MAAM,EAAW,GAAA;IACjC,MAAM,EAAEC,4BAA4B,EAAE,GAAGD,OAAOE,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"publication-status.js","sources":["../../../../../server/src/services/internals/args/publication-status.ts"],"sourcesContent":["import { arg } from 'nexus';\nimport { Context } from '../../types';\n\nexport default ({ strapi }: Context) => {\n const { PUBLICATION_STATUS_TYPE_NAME } = strapi.plugin('graphql').service('constants');\n\n return arg({\n type: PUBLICATION_STATUS_TYPE_NAME,\n default: 'published',\n });\n};\n"],"names":["strapi","PUBLICATION_STATUS_TYPE_NAME","plugin","service","arg","type","default"],"mappings":";;;;AAGA,wBAAe,CAAA,CAAC,EAAEA,MAAM,EAAW,GAAA;IACjC,MAAM,EAAEC,4BAA4B,EAAE,GAAGD,OAAOE,MAAM,CAAC,SAAA,CAAA,CAAWC,OAAO,CAAC,WAAA,CAAA;AAE1E,IAAA,OAAOC,SAAAA,CAAI;QACTC,IAAAA,EAAMJ,4BAAAA;QACNK,OAAAA,EAAS;AACX,KAAA,CAAA;AACF,CAAA;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publication-status.mjs","sources":["../../../../../server/src/services/internals/args/publication-status.ts"],"sourcesContent":["import { arg } from 'nexus';\nimport { Context } from '../../types';\n\nexport default ({ strapi }: Context) => {\n const { PUBLICATION_STATUS_TYPE_NAME } = strapi.plugin('graphql').service('constants');\n\n return arg({\n type: PUBLICATION_STATUS_TYPE_NAME,\n default: 'published',\n });\n};\n"],"names":["strapi","PUBLICATION_STATUS_TYPE_NAME","plugin","service","arg","type","default"],"mappings":";;AAGA,wBAAe,CAAA,CAAC,EAAEA,MAAM,EAAW,GAAA;IACjC,MAAM,EAAEC,4BAA4B,EAAE,GAAGD,OAAOE,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"publication-status.mjs","sources":["../../../../../server/src/services/internals/args/publication-status.ts"],"sourcesContent":["import { arg } from 'nexus';\nimport { Context } from '../../types';\n\nexport default ({ strapi }: Context) => {\n const { PUBLICATION_STATUS_TYPE_NAME } = strapi.plugin('graphql').service('constants');\n\n return arg({\n type: PUBLICATION_STATUS_TYPE_NAME,\n default: 'published',\n });\n};\n"],"names":["strapi","PUBLICATION_STATUS_TYPE_NAME","plugin","service","arg","type","default"],"mappings":";;AAGA,wBAAe,CAAA,CAAC,EAAEA,MAAM,EAAW,GAAA;IACjC,MAAM,EAAEC,4BAA4B,EAAE,GAAGD,OAAOE,MAAM,CAAC,SAAA,CAAA,CAAWC,OAAO,CAAC,WAAA,CAAA;AAE1E,IAAA,OAAOC,GAAAA,CAAI;QACTC,IAAAA,EAAMJ,4BAAAA;QACNK,OAAAA,EAAS;AACX,KAAA,CAAA;AACF,CAAA;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sort.js","sources":["../../../../../server/src/services/internals/args/sort.ts"],"sourcesContent":["import { arg, list } from 'nexus';\n\nconst SortArg = arg({\n type: list('String'),\n default: [],\n});\n\nexport default SortArg;\n"],"names":["SortArg","arg","type","list","default"],"mappings":";;;;AAEA,MAAMA,UAAUC,
|
|
1
|
+
{"version":3,"file":"sort.js","sources":["../../../../../server/src/services/internals/args/sort.ts"],"sourcesContent":["import { arg, list } from 'nexus';\n\nconst SortArg = arg({\n type: list('String'),\n default: [],\n});\n\nexport default SortArg;\n"],"names":["SortArg","arg","type","list","default"],"mappings":";;;;AAEA,MAAMA,UAAUC,SAAAA,CAAI;AAClBC,IAAAA,IAAAA,EAAMC,UAAAA,CAAK,QAAA,CAAA;AACXC,IAAAA,OAAAA,EAAS;AACX,CAAA;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sort.mjs","sources":["../../../../../server/src/services/internals/args/sort.ts"],"sourcesContent":["import { arg, list } from 'nexus';\n\nconst SortArg = arg({\n type: list('String'),\n default: [],\n});\n\nexport default SortArg;\n"],"names":["SortArg","arg","type","list","default"],"mappings":";;AAEA,MAAMA,UAAUC,
|
|
1
|
+
{"version":3,"file":"sort.mjs","sources":["../../../../../server/src/services/internals/args/sort.ts"],"sourcesContent":["import { arg, list } from 'nexus';\n\nconst SortArg = arg({\n type: list('String'),\n default: [],\n});\n\nexport default SortArg;\n"],"names":["SortArg","arg","type","list","default"],"mappings":";;AAEA,MAAMA,UAAUC,GAAAA,CAAI;AAClBC,IAAAA,IAAAA,EAAMC,IAAAA,CAAK,QAAA,CAAA;AACXC,IAAAA,OAAAA,EAAS;AACX,CAAA;;;;"}
|