@strapi/plugin-graphql 5.46.0 → 5.47.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.
Files changed (80) hide show
  1. package/dist/admin/index.js +1 -0
  2. package/dist/admin/index.js.map +1 -1
  3. package/dist/admin/index.mjs +1 -0
  4. package/dist/admin/index.mjs.map +1 -1
  5. package/dist/admin/translations/sk.json.js +10 -0
  6. package/dist/admin/translations/sk.json.js.map +1 -0
  7. package/dist/admin/translations/sk.json.mjs +8 -0
  8. package/dist/admin/translations/sk.json.mjs.map +1 -0
  9. package/dist/server/services/builders/resolvers/association.js +28 -23
  10. package/dist/server/services/builders/resolvers/association.js.map +1 -1
  11. package/dist/server/services/builders/resolvers/association.mjs +29 -24
  12. package/dist/server/services/builders/resolvers/association.mjs.map +1 -1
  13. package/dist/server/services/builders/resolvers/merge-publication-args.js +23 -0
  14. package/dist/server/services/builders/resolvers/merge-publication-args.js.map +1 -0
  15. package/dist/server/services/builders/resolvers/merge-publication-args.mjs +21 -0
  16. package/dist/server/services/builders/resolvers/merge-publication-args.mjs.map +1 -0
  17. package/dist/server/services/builders/resolvers/pagination.js +12 -1
  18. package/dist/server/services/builders/resolvers/pagination.js.map +1 -1
  19. package/dist/server/services/builders/resolvers/pagination.mjs +12 -1
  20. package/dist/server/services/builders/resolvers/pagination.mjs.map +1 -1
  21. package/dist/server/services/builders/resolvers/query.js +20 -13
  22. package/dist/server/services/builders/resolvers/query.js.map +1 -1
  23. package/dist/server/services/builders/resolvers/query.mjs +20 -13
  24. package/dist/server/services/builders/resolvers/query.mjs.map +1 -1
  25. package/dist/server/services/builders/utils.js +5 -3
  26. package/dist/server/services/builders/utils.js.map +1 -1
  27. package/dist/server/services/builders/utils.mjs +5 -3
  28. package/dist/server/services/builders/utils.mjs.map +1 -1
  29. package/dist/server/services/constants.js +2 -0
  30. package/dist/server/services/constants.js.map +1 -1
  31. package/dist/server/services/constants.mjs +2 -0
  32. package/dist/server/services/constants.mjs.map +1 -1
  33. package/dist/server/services/internals/args/has-published-version.js +4 -1
  34. package/dist/server/services/internals/args/has-published-version.js.map +1 -1
  35. package/dist/server/services/internals/args/has-published-version.mjs +4 -1
  36. package/dist/server/services/internals/args/has-published-version.mjs.map +1 -1
  37. package/dist/server/services/internals/args/index.js +3 -1
  38. package/dist/server/services/internals/args/index.js.map +1 -1
  39. package/dist/server/services/internals/args/index.mjs +3 -1
  40. package/dist/server/services/internals/args/index.mjs.map +1 -1
  41. package/dist/server/services/internals/args/publication-filter.js +13 -0
  42. package/dist/server/services/internals/args/publication-filter.js.map +1 -0
  43. package/dist/server/services/internals/args/publication-filter.mjs +11 -0
  44. package/dist/server/services/internals/args/publication-filter.mjs.map +1 -0
  45. package/dist/server/services/internals/types/index.js +3 -1
  46. package/dist/server/services/internals/types/index.js.map +1 -1
  47. package/dist/server/services/internals/types/index.mjs +3 -1
  48. package/dist/server/services/internals/types/index.mjs.map +1 -1
  49. package/dist/server/services/internals/types/publication-filter.js +25 -0
  50. package/dist/server/services/internals/types/publication-filter.js.map +1 -0
  51. package/dist/server/services/internals/types/publication-filter.mjs +23 -0
  52. package/dist/server/services/internals/types/publication-filter.mjs.map +1 -0
  53. package/dist/server/src/index.d.ts +8 -0
  54. package/dist/server/src/index.d.ts.map +1 -1
  55. package/dist/server/src/services/builders/index.d.ts +1 -0
  56. package/dist/server/src/services/builders/index.d.ts.map +1 -1
  57. package/dist/server/src/services/builders/resolvers/association.d.ts.map +1 -1
  58. package/dist/server/src/services/builders/resolvers/merge-publication-args.d.ts +9 -0
  59. package/dist/server/src/services/builders/resolvers/merge-publication-args.d.ts.map +1 -0
  60. package/dist/server/src/services/builders/resolvers/pagination.d.ts.map +1 -1
  61. package/dist/server/src/services/builders/resolvers/query.d.ts.map +1 -1
  62. package/dist/server/src/services/builders/utils.d.ts +1 -0
  63. package/dist/server/src/services/builders/utils.d.ts.map +1 -1
  64. package/dist/server/src/services/constants.d.ts +1 -0
  65. package/dist/server/src/services/constants.d.ts.map +1 -1
  66. package/dist/server/src/services/index.d.ts +8 -0
  67. package/dist/server/src/services/index.d.ts.map +1 -1
  68. package/dist/server/src/services/internals/args/has-published-version.d.ts +4 -0
  69. package/dist/server/src/services/internals/args/has-published-version.d.ts.map +1 -1
  70. package/dist/server/src/services/internals/args/index.d.ts +2 -0
  71. package/dist/server/src/services/internals/args/index.d.ts.map +1 -1
  72. package/dist/server/src/services/internals/args/publication-filter.d.ts +4 -0
  73. package/dist/server/src/services/internals/args/publication-filter.d.ts.map +1 -0
  74. package/dist/server/src/services/internals/index.d.ts +6 -0
  75. package/dist/server/src/services/internals/index.d.ts.map +1 -1
  76. package/dist/server/src/services/internals/types/index.d.ts +5 -0
  77. package/dist/server/src/services/internals/types/index.d.ts.map +1 -1
  78. package/dist/server/src/services/internals/types/publication-filter.d.ts +6 -0
  79. package/dist/server/src/services/internals/types/publication-filter.d.ts.map +1 -0
  80. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"query.js","sources":["../../../../../server/src/services/builders/resolvers/query.ts"],"sourcesContent":["import { omit } from 'lodash/fp';\nimport type { Schema } from '@strapi/types';\nimport type { Context } from '../../types';\n\nexport default ({ strapi }: Context) => ({\n buildQueriesResolvers({ contentType }: { contentType: Schema.ContentType }) {\n const { uid } = contentType;\n\n return {\n async findMany(parent: any, args: any, ctx: any) {\n await strapi.contentAPI.validate.query(args, contentType, {\n auth: ctx?.state?.auth,\n });\n\n const sanitizedQuery = await strapi.contentAPI.sanitize.query(args, contentType, {\n auth: ctx?.state?.auth,\n });\n\n return strapi.documents!(uid).findMany({ status: 'published', ...sanitizedQuery });\n },\n\n async findFirst(parent: any, args: any, ctx: any) {\n await strapi.contentAPI.validate.query(args, contentType, {\n auth: ctx?.state?.auth,\n });\n\n const sanitizedQuery = await strapi.contentAPI.sanitize.query(args, contentType, {\n auth: ctx?.state?.auth,\n });\n\n return strapi.documents!(uid).findFirst({ status: 'published', ...sanitizedQuery });\n },\n\n async findOne(parent: any, args: any, ctx: any) {\n const { documentId } = args;\n\n await strapi.contentAPI.validate.query(args, contentType, {\n auth: ctx?.state?.auth,\n });\n\n const sanitizedQuery = await strapi.contentAPI.sanitize.query(args, contentType, {\n auth: ctx?.state?.auth,\n });\n\n return strapi.documents!(uid).findOne({\n status: 'published',\n ...omit(['id', 'documentId'], sanitizedQuery),\n documentId,\n });\n },\n };\n },\n});\n"],"names":["strapi","buildQueriesResolvers","contentType","uid","findMany","parent","args","ctx","contentAPI","validate","query","auth","state","sanitizedQuery","sanitize","documents","status","findFirst","findOne","documentId","omit"],"mappings":";;;;AAIA,uBAAe,CAAA,CAAC,EAAEA,MAAM,EAAW,IAAM;QACvCC,qBAAAA,CAAAA,CAAsB,EAAEC,WAAW,EAAuC,EAAA;YACxE,MAAM,EAAEC,GAAG,EAAE,GAAGD,WAAAA;YAEhB,OAAO;AACL,gBAAA,MAAME,QAAAA,CAAAA,CAASC,MAAW,EAAEC,IAAS,EAAEC,GAAQ,EAAA;oBAC7C,MAAMP,MAAAA,CAAOQ,UAAU,CAACC,QAAQ,CAACC,KAAK,CAACJ,MAAMJ,WAAAA,EAAa;AACxDS,wBAAAA,IAAAA,EAAMJ,KAAKK,KAAAA,EAAOD;AACpB,qBAAA,CAAA;oBAEA,MAAME,cAAAA,GAAiB,MAAMb,MAAAA,CAAOQ,UAAU,CAACM,QAAQ,CAACJ,KAAK,CAACJ,IAAAA,EAAMJ,WAAAA,EAAa;AAC/ES,wBAAAA,IAAAA,EAAMJ,KAAKK,KAAAA,EAAOD;AACpB,qBAAA,CAAA;AAEA,oBAAA,OAAOX,MAAAA,CAAOe,SAAS,CAAEZ,GAAAA,CAAAA,CAAKC,QAAQ,CAAC;wBAAEY,MAAAA,EAAQ,WAAA;AAAa,wBAAA,GAAGH;AAAe,qBAAA,CAAA;AAClF,gBAAA,CAAA;AAEA,gBAAA,MAAMI,SAAAA,CAAAA,CAAUZ,MAAW,EAAEC,IAAS,EAAEC,GAAQ,EAAA;oBAC9C,MAAMP,MAAAA,CAAOQ,UAAU,CAACC,QAAQ,CAACC,KAAK,CAACJ,MAAMJ,WAAAA,EAAa;AACxDS,wBAAAA,IAAAA,EAAMJ,KAAKK,KAAAA,EAAOD;AACpB,qBAAA,CAAA;oBAEA,MAAME,cAAAA,GAAiB,MAAMb,MAAAA,CAAOQ,UAAU,CAACM,QAAQ,CAACJ,KAAK,CAACJ,IAAAA,EAAMJ,WAAAA,EAAa;AAC/ES,wBAAAA,IAAAA,EAAMJ,KAAKK,KAAAA,EAAOD;AACpB,qBAAA,CAAA;AAEA,oBAAA,OAAOX,MAAAA,CAAOe,SAAS,CAAEZ,GAAAA,CAAAA,CAAKc,SAAS,CAAC;wBAAED,MAAAA,EAAQ,WAAA;AAAa,wBAAA,GAAGH;AAAe,qBAAA,CAAA;AACnF,gBAAA,CAAA;AAEA,gBAAA,MAAMK,OAAAA,CAAAA,CAAQb,MAAW,EAAEC,IAAS,EAAEC,GAAQ,EAAA;oBAC5C,MAAM,EAAEY,UAAU,EAAE,GAAGb,IAAAA;oBAEvB,MAAMN,MAAAA,CAAOQ,UAAU,CAACC,QAAQ,CAACC,KAAK,CAACJ,MAAMJ,WAAAA,EAAa;AACxDS,wBAAAA,IAAAA,EAAMJ,KAAKK,KAAAA,EAAOD;AACpB,qBAAA,CAAA;oBAEA,MAAME,cAAAA,GAAiB,MAAMb,MAAAA,CAAOQ,UAAU,CAACM,QAAQ,CAACJ,KAAK,CAACJ,IAAAA,EAAMJ,WAAAA,EAAa;AAC/ES,wBAAAA,IAAAA,EAAMJ,KAAKK,KAAAA,EAAOD;AACpB,qBAAA,CAAA;AAEA,oBAAA,OAAOX,MAAAA,CAAOe,SAAS,CAAEZ,GAAAA,CAAAA,CAAKe,OAAO,CAAC;wBACpCF,MAAAA,EAAQ,WAAA;AACR,wBAAA,GAAGI,OAAAA,CAAK;AAAC,4BAAA,IAAA;AAAM,4BAAA;AAAa,yBAAA,EAAEP,cAAAA,CAAe;AAC7CM,wBAAAA;AACF,qBAAA,CAAA;AACF,gBAAA;AACF,aAAA;AACF,QAAA;AACF,KAAA,CAAC;;;;"}
1
+ {"version":3,"file":"query.js","sources":["../../../../../server/src/services/builders/resolvers/query.ts"],"sourcesContent":["import { omit } from 'lodash/fp';\nimport type { Schema } from '@strapi/types';\nimport type { Context } from '../../types';\n\nimport { mergePublicationFilterFromGraphQLArgs } from './merge-publication-args';\n\n/** Merge sanitized query with resolver args so GraphQL-coerced publication args are not dropped. */\nconst mergeDocumentListParams = (\n sanitizedQuery: Record<string, unknown>,\n args: Record<string, unknown>\n) => {\n const { status, ...rest } = sanitizedQuery;\n\n const merged: Record<string, unknown> = {\n ...rest,\n status: (status as 'draft' | 'published' | undefined) ?? 'published',\n };\n\n const { publicationFilter } = mergePublicationFilterFromGraphQLArgs(args);\n if (publicationFilter !== undefined) {\n merged.publicationFilter = publicationFilter;\n }\n\n return merged;\n};\n\nexport default ({ strapi }: Context) => ({\n buildQueriesResolvers({ contentType }: { contentType: Schema.ContentType }) {\n const { uid } = contentType;\n\n return {\n async findMany(parent: any, args: any, ctx: any) {\n await strapi.contentAPI.validate.query(args, contentType, {\n auth: ctx?.state?.auth,\n });\n\n const sanitizedQuery = (await strapi.contentAPI.sanitize.query(args, contentType, {\n auth: ctx?.state?.auth,\n })) as Record<string, unknown>;\n\n return strapi.documents!(uid).findMany(\n mergeDocumentListParams(sanitizedQuery, args) as any\n );\n },\n\n async findFirst(parent: any, args: any, ctx: any) {\n await strapi.contentAPI.validate.query(args, contentType, {\n auth: ctx?.state?.auth,\n });\n\n const sanitizedQuery = (await strapi.contentAPI.sanitize.query(args, contentType, {\n auth: ctx?.state?.auth,\n })) as Record<string, unknown>;\n\n return strapi.documents!(uid).findFirst(\n mergeDocumentListParams(sanitizedQuery, args) as any\n );\n },\n\n async findOne(parent: any, args: any, ctx: any) {\n const { documentId } = args;\n\n await strapi.contentAPI.validate.query(args, contentType, {\n auth: ctx?.state?.auth,\n });\n\n const sanitizedQuery = (await strapi.contentAPI.sanitize.query(args, contentType, {\n auth: ctx?.state?.auth,\n })) as Record<string, unknown>;\n\n const merged = mergeDocumentListParams(\n omit(['id', 'documentId'], sanitizedQuery) as Record<string, unknown>,\n args\n );\n\n return strapi.documents!(uid).findOne({ ...merged, documentId } as any);\n },\n };\n },\n});\n"],"names":["mergeDocumentListParams","sanitizedQuery","args","status","rest","merged","publicationFilter","mergePublicationFilterFromGraphQLArgs","undefined","strapi","buildQueriesResolvers","contentType","uid","findMany","parent","ctx","contentAPI","validate","query","auth","state","sanitize","documents","findFirst","findOne","documentId","omit"],"mappings":"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"}
@@ -1,5 +1,18 @@
1
1
  import { omit } from 'lodash/fp';
2
+ import { mergePublicationFilterFromGraphQLArgs } from './merge-publication-args.mjs';
2
3
 
4
+ /** Merge sanitized query with resolver args so GraphQL-coerced publication args are not dropped. */ const mergeDocumentListParams = (sanitizedQuery, args)=>{
5
+ const { status, ...rest } = sanitizedQuery;
6
+ const merged = {
7
+ ...rest,
8
+ status: status ?? 'published'
9
+ };
10
+ const { publicationFilter } = mergePublicationFilterFromGraphQLArgs(args);
11
+ if (publicationFilter !== undefined) {
12
+ merged.publicationFilter = publicationFilter;
13
+ }
14
+ return merged;
15
+ };
3
16
  var queriesResolvers = (({ strapi })=>({
4
17
  buildQueriesResolvers ({ contentType }) {
5
18
  const { uid } = contentType;
@@ -11,10 +24,7 @@ var queriesResolvers = (({ strapi })=>({
11
24
  const sanitizedQuery = await strapi.contentAPI.sanitize.query(args, contentType, {
12
25
  auth: ctx?.state?.auth
13
26
  });
14
- return strapi.documents(uid).findMany({
15
- status: 'published',
16
- ...sanitizedQuery
17
- });
27
+ return strapi.documents(uid).findMany(mergeDocumentListParams(sanitizedQuery, args));
18
28
  },
19
29
  async findFirst (parent, args, ctx) {
20
30
  await strapi.contentAPI.validate.query(args, contentType, {
@@ -23,10 +33,7 @@ var queriesResolvers = (({ strapi })=>({
23
33
  const sanitizedQuery = await strapi.contentAPI.sanitize.query(args, contentType, {
24
34
  auth: ctx?.state?.auth
25
35
  });
26
- return strapi.documents(uid).findFirst({
27
- status: 'published',
28
- ...sanitizedQuery
29
- });
36
+ return strapi.documents(uid).findFirst(mergeDocumentListParams(sanitizedQuery, args));
30
37
  },
31
38
  async findOne (parent, args, ctx) {
32
39
  const { documentId } = args;
@@ -36,12 +43,12 @@ var queriesResolvers = (({ strapi })=>({
36
43
  const sanitizedQuery = await strapi.contentAPI.sanitize.query(args, contentType, {
37
44
  auth: ctx?.state?.auth
38
45
  });
46
+ const merged = mergeDocumentListParams(omit([
47
+ 'id',
48
+ 'documentId'
49
+ ], sanitizedQuery), args);
39
50
  return strapi.documents(uid).findOne({
40
- status: 'published',
41
- ...omit([
42
- 'id',
43
- 'documentId'
44
- ], sanitizedQuery),
51
+ ...merged,
45
52
  documentId
46
53
  });
47
54
  }
@@ -1 +1 @@
1
- {"version":3,"file":"query.mjs","sources":["../../../../../server/src/services/builders/resolvers/query.ts"],"sourcesContent":["import { omit } from 'lodash/fp';\nimport type { Schema } from '@strapi/types';\nimport type { Context } from '../../types';\n\nexport default ({ strapi }: Context) => ({\n buildQueriesResolvers({ contentType }: { contentType: Schema.ContentType }) {\n const { uid } = contentType;\n\n return {\n async findMany(parent: any, args: any, ctx: any) {\n await strapi.contentAPI.validate.query(args, contentType, {\n auth: ctx?.state?.auth,\n });\n\n const sanitizedQuery = await strapi.contentAPI.sanitize.query(args, contentType, {\n auth: ctx?.state?.auth,\n });\n\n return strapi.documents!(uid).findMany({ status: 'published', ...sanitizedQuery });\n },\n\n async findFirst(parent: any, args: any, ctx: any) {\n await strapi.contentAPI.validate.query(args, contentType, {\n auth: ctx?.state?.auth,\n });\n\n const sanitizedQuery = await strapi.contentAPI.sanitize.query(args, contentType, {\n auth: ctx?.state?.auth,\n });\n\n return strapi.documents!(uid).findFirst({ status: 'published', ...sanitizedQuery });\n },\n\n async findOne(parent: any, args: any, ctx: any) {\n const { documentId } = args;\n\n await strapi.contentAPI.validate.query(args, contentType, {\n auth: ctx?.state?.auth,\n });\n\n const sanitizedQuery = await strapi.contentAPI.sanitize.query(args, contentType, {\n auth: ctx?.state?.auth,\n });\n\n return strapi.documents!(uid).findOne({\n status: 'published',\n ...omit(['id', 'documentId'], sanitizedQuery),\n documentId,\n });\n },\n };\n },\n});\n"],"names":["strapi","buildQueriesResolvers","contentType","uid","findMany","parent","args","ctx","contentAPI","validate","query","auth","state","sanitizedQuery","sanitize","documents","status","findFirst","findOne","documentId","omit"],"mappings":";;AAIA,uBAAe,CAAA,CAAC,EAAEA,MAAM,EAAW,IAAM;QACvCC,qBAAAA,CAAAA,CAAsB,EAAEC,WAAW,EAAuC,EAAA;YACxE,MAAM,EAAEC,GAAG,EAAE,GAAGD,WAAAA;YAEhB,OAAO;AACL,gBAAA,MAAME,QAAAA,CAAAA,CAASC,MAAW,EAAEC,IAAS,EAAEC,GAAQ,EAAA;oBAC7C,MAAMP,MAAAA,CAAOQ,UAAU,CAACC,QAAQ,CAACC,KAAK,CAACJ,MAAMJ,WAAAA,EAAa;AACxDS,wBAAAA,IAAAA,EAAMJ,KAAKK,KAAAA,EAAOD;AACpB,qBAAA,CAAA;oBAEA,MAAME,cAAAA,GAAiB,MAAMb,MAAAA,CAAOQ,UAAU,CAACM,QAAQ,CAACJ,KAAK,CAACJ,IAAAA,EAAMJ,WAAAA,EAAa;AAC/ES,wBAAAA,IAAAA,EAAMJ,KAAKK,KAAAA,EAAOD;AACpB,qBAAA,CAAA;AAEA,oBAAA,OAAOX,MAAAA,CAAOe,SAAS,CAAEZ,GAAAA,CAAAA,CAAKC,QAAQ,CAAC;wBAAEY,MAAAA,EAAQ,WAAA;AAAa,wBAAA,GAAGH;AAAe,qBAAA,CAAA;AAClF,gBAAA,CAAA;AAEA,gBAAA,MAAMI,SAAAA,CAAAA,CAAUZ,MAAW,EAAEC,IAAS,EAAEC,GAAQ,EAAA;oBAC9C,MAAMP,MAAAA,CAAOQ,UAAU,CAACC,QAAQ,CAACC,KAAK,CAACJ,MAAMJ,WAAAA,EAAa;AACxDS,wBAAAA,IAAAA,EAAMJ,KAAKK,KAAAA,EAAOD;AACpB,qBAAA,CAAA;oBAEA,MAAME,cAAAA,GAAiB,MAAMb,MAAAA,CAAOQ,UAAU,CAACM,QAAQ,CAACJ,KAAK,CAACJ,IAAAA,EAAMJ,WAAAA,EAAa;AAC/ES,wBAAAA,IAAAA,EAAMJ,KAAKK,KAAAA,EAAOD;AACpB,qBAAA,CAAA;AAEA,oBAAA,OAAOX,MAAAA,CAAOe,SAAS,CAAEZ,GAAAA,CAAAA,CAAKc,SAAS,CAAC;wBAAED,MAAAA,EAAQ,WAAA;AAAa,wBAAA,GAAGH;AAAe,qBAAA,CAAA;AACnF,gBAAA,CAAA;AAEA,gBAAA,MAAMK,OAAAA,CAAAA,CAAQb,MAAW,EAAEC,IAAS,EAAEC,GAAQ,EAAA;oBAC5C,MAAM,EAAEY,UAAU,EAAE,GAAGb,IAAAA;oBAEvB,MAAMN,MAAAA,CAAOQ,UAAU,CAACC,QAAQ,CAACC,KAAK,CAACJ,MAAMJ,WAAAA,EAAa;AACxDS,wBAAAA,IAAAA,EAAMJ,KAAKK,KAAAA,EAAOD;AACpB,qBAAA,CAAA;oBAEA,MAAME,cAAAA,GAAiB,MAAMb,MAAAA,CAAOQ,UAAU,CAACM,QAAQ,CAACJ,KAAK,CAACJ,IAAAA,EAAMJ,WAAAA,EAAa;AAC/ES,wBAAAA,IAAAA,EAAMJ,KAAKK,KAAAA,EAAOD;AACpB,qBAAA,CAAA;AAEA,oBAAA,OAAOX,MAAAA,CAAOe,SAAS,CAAEZ,GAAAA,CAAAA,CAAKe,OAAO,CAAC;wBACpCF,MAAAA,EAAQ,WAAA;AACR,wBAAA,GAAGI,IAAAA,CAAK;AAAC,4BAAA,IAAA;AAAM,4BAAA;AAAa,yBAAA,EAAEP,cAAAA,CAAe;AAC7CM,wBAAAA;AACF,qBAAA,CAAA;AACF,gBAAA;AACF,aAAA;AACF,QAAA;AACF,KAAA,CAAC;;;;"}
1
+ {"version":3,"file":"query.mjs","sources":["../../../../../server/src/services/builders/resolvers/query.ts"],"sourcesContent":["import { omit } from 'lodash/fp';\nimport type { Schema } from '@strapi/types';\nimport type { Context } from '../../types';\n\nimport { mergePublicationFilterFromGraphQLArgs } from './merge-publication-args';\n\n/** Merge sanitized query with resolver args so GraphQL-coerced publication args are not dropped. */\nconst mergeDocumentListParams = (\n sanitizedQuery: Record<string, unknown>,\n args: Record<string, unknown>\n) => {\n const { status, ...rest } = sanitizedQuery;\n\n const merged: Record<string, unknown> = {\n ...rest,\n status: (status as 'draft' | 'published' | undefined) ?? 'published',\n };\n\n const { publicationFilter } = mergePublicationFilterFromGraphQLArgs(args);\n if (publicationFilter !== undefined) {\n merged.publicationFilter = publicationFilter;\n }\n\n return merged;\n};\n\nexport default ({ strapi }: Context) => ({\n buildQueriesResolvers({ contentType }: { contentType: Schema.ContentType }) {\n const { uid } = contentType;\n\n return {\n async findMany(parent: any, args: any, ctx: any) {\n await strapi.contentAPI.validate.query(args, contentType, {\n auth: ctx?.state?.auth,\n });\n\n const sanitizedQuery = (await strapi.contentAPI.sanitize.query(args, contentType, {\n auth: ctx?.state?.auth,\n })) as Record<string, unknown>;\n\n return strapi.documents!(uid).findMany(\n mergeDocumentListParams(sanitizedQuery, args) as any\n );\n },\n\n async findFirst(parent: any, args: any, ctx: any) {\n await strapi.contentAPI.validate.query(args, contentType, {\n auth: ctx?.state?.auth,\n });\n\n const sanitizedQuery = (await strapi.contentAPI.sanitize.query(args, contentType, {\n auth: ctx?.state?.auth,\n })) as Record<string, unknown>;\n\n return strapi.documents!(uid).findFirst(\n mergeDocumentListParams(sanitizedQuery, args) as any\n );\n },\n\n async findOne(parent: any, args: any, ctx: any) {\n const { documentId } = args;\n\n await strapi.contentAPI.validate.query(args, contentType, {\n auth: ctx?.state?.auth,\n });\n\n const sanitizedQuery = (await strapi.contentAPI.sanitize.query(args, contentType, {\n auth: ctx?.state?.auth,\n })) as Record<string, unknown>;\n\n const merged = mergeDocumentListParams(\n omit(['id', 'documentId'], sanitizedQuery) as Record<string, unknown>,\n args\n );\n\n return strapi.documents!(uid).findOne({ ...merged, documentId } as any);\n },\n };\n },\n});\n"],"names":["mergeDocumentListParams","sanitizedQuery","args","status","rest","merged","publicationFilter","mergePublicationFilterFromGraphQLArgs","undefined","strapi","buildQueriesResolvers","contentType","uid","findMany","parent","ctx","contentAPI","validate","query","auth","state","sanitize","documents","findFirst","findOne","documentId","omit"],"mappings":"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"}
@@ -27,17 +27,19 @@ var utils = (({ strapi })=>{
27
27
  // builders/resolvers/association.ts + rootQueryArgsByPath). Omitting them broke
28
28
  // draft/published control for populated relations (e.g. github.com/strapi/strapi/issues/25746).
29
29
  //
30
- // Future direction: add `status` / `hasPublishedVersion` to GraphQL args on nested
30
+ // Future direction: add `status` / `hasPublishedVersion` / `publicationFilter` to GraphQL args on nested
31
31
  // to-many (and to-one) relation fields when the *target* content type has D&P, instead
32
32
  // of relying on root-level “context” that is easy to misread (args on User affecting
33
33
  // Articles). That would allow different publication settings per relation branch, match
34
34
  // how developers think about the graph, and let non-DP roots drop these args if desired.
35
35
  // Would require extending getContentTypeArgs(..., { isNested: true }) for D&P targets
36
- // and teaching association.ts to honor args.hasPublishedVersion on nested fields, not
36
+ // and teaching association.ts to honor args.publicationFilter on nested fields, not
37
37
  // only root inheritance.
38
38
  const publicationArgs = {
39
39
  status: args.PublicationStatusArg,
40
- hasPublishedVersion: args.HasPublishedVersionArg
40
+ // Deprecated: prefer `publicationFilter` (enum cohorts).
41
+ hasPublishedVersion: args.HasPublishedVersionArg,
42
+ publicationFilter: args.PublicationFilterArg
41
43
  };
42
44
  // Collection Types
43
45
  if (kind === 'collectionType') {
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../../server/src/services/builders/utils.ts"],"sourcesContent":["import { entries, mapValues, omit } from 'lodash/fp';\nimport { idArg, nonNull } from 'nexus';\nimport { pagination } from '@strapi/utils';\nimport type { Core, Struct } from '@strapi/types';\n\nconst { withDefaultPagination } = pagination;\n\ntype ContentTypeArgsOptions = {\n multiple?: boolean;\n isNested?: boolean;\n};\n\nexport default ({ strapi }: { strapi: Core.Strapi }) => {\n const { service: getService } = strapi.plugin('graphql');\n\n return {\n getContentTypeArgs(\n contentType: Struct.Schema,\n { multiple = true, isNested = false }: ContentTypeArgsOptions = {}\n ) {\n const { naming } = getService('utils');\n const { args } = getService('internals');\n\n const { modelType } = contentType;\n\n // Components\n if (modelType === 'component') {\n if (!multiple) return {};\n\n return {\n filters: naming.getFiltersInputTypeName(contentType),\n pagination: args.PaginationArg,\n sort: args.SortArg,\n };\n }\n\n const { kind } = contentType;\n\n // On non–D&P roots (e.g. User) these args do not version the parent document, but they\n // are required: association resolvers inherit them into nested D&P relations (see\n // builders/resolvers/association.ts + rootQueryArgsByPath). Omitting them broke\n // draft/published control for populated relations (e.g. github.com/strapi/strapi/issues/25746).\n //\n // Future direction: add `status` / `hasPublishedVersion` to GraphQL args on nested\n // to-many (and to-one) relation fields when the *target* content type has D&P, instead\n // of relying on root-level “context” that is easy to misread (args on User affecting\n // Articles). That would allow different publication settings per relation branch, match\n // how developers think about the graph, and let non-DP roots drop these args if desired.\n // Would require extending getContentTypeArgs(..., { isNested: true }) for D&P targets\n // and teaching association.ts to honor args.hasPublishedVersion on nested fields, not\n // only root inheritance.\n const publicationArgs = {\n status: args.PublicationStatusArg,\n hasPublishedVersion: args.HasPublishedVersionArg,\n };\n\n // Collection Types\n if (kind === 'collectionType') {\n if (!multiple) {\n return {\n documentId: nonNull(idArg()),\n ...publicationArgs,\n };\n }\n\n const params: Record<string, unknown> = {\n filters: naming.getFiltersInputTypeName(contentType),\n pagination: args.PaginationArg,\n sort: args.SortArg,\n };\n\n if (!isNested) {\n Object.assign(params, publicationArgs);\n }\n\n return params;\n }\n\n // Single Types\n if (kind === 'singleType') {\n const params: Record<string, unknown> = {};\n\n if (!isNested) {\n Object.assign(params, publicationArgs);\n }\n\n return params;\n }\n },\n\n /**\n * Filter an object entries and keep only those whose value is a unique scalar attribute\n */\n getUniqueScalarAttributes(attributes: Struct.SchemaAttributes) {\n const { isStrapiScalar } = getService('utils').attributes;\n\n const uniqueAttributes = entries(attributes).filter(\n ([, attribute]) => isStrapiScalar(attribute) && 'unique' in attribute && attribute.unique\n );\n\n return Object.fromEntries(uniqueAttributes);\n },\n\n /**\n * Map each value from an attribute to a FiltersInput type name\n * @param {object} attributes - The attributes object to transform\n * @return {Object<string, string>}\n */\n scalarAttributesToFiltersMap(attributes: Struct.SchemaAttributes) {\n return mapValues((attribute) => {\n const { mappers, naming } = getService('utils');\n\n const gqlScalar = mappers.strapiScalarToGraphQLScalar(attribute.type);\n\n return naming.getScalarFilterInputTypeName(gqlScalar);\n }, attributes);\n },\n\n /**\n * Apply basic transform to GQL args\n */\n transformArgs(\n args: any,\n {\n contentType,\n usePagination = false,\n }: { contentType: Struct.ContentTypeSchema; usePagination?: boolean }\n ) {\n const { mappers } = getService('utils');\n const { config } = strapi.plugin('graphql');\n const { pagination = {}, filters = {} } = args;\n\n // Init\n const newArgs = omit(['pagination', 'filters'], args);\n\n // Pagination\n if (usePagination) {\n const defaultLimit: number = config('defaultLimit');\n const maxLimit: number = config('maxLimit');\n\n Object.assign(\n newArgs,\n withDefaultPagination(pagination, {\n maxLimit,\n defaults: {\n offset: { limit: defaultLimit },\n page: { pageSize: defaultLimit },\n },\n })\n );\n }\n\n // Filters\n if (args.filters) {\n Object.assign(newArgs, {\n filters: mappers.graphQLFiltersToStrapiQuery(filters, contentType),\n });\n }\n\n return newArgs;\n },\n };\n};\n"],"names":["withDefaultPagination","pagination","strapi","service","getService","plugin","getContentTypeArgs","contentType","multiple","isNested","naming","args","modelType","filters","getFiltersInputTypeName","PaginationArg","sort","SortArg","kind","publicationArgs","status","PublicationStatusArg","hasPublishedVersion","HasPublishedVersionArg","documentId","nonNull","idArg","params","Object","assign","getUniqueScalarAttributes","attributes","isStrapiScalar","uniqueAttributes","entries","filter","attribute","unique","fromEntries","scalarAttributesToFiltersMap","mapValues","mappers","gqlScalar","strapiScalarToGraphQLScalar","type","getScalarFilterInputTypeName","transformArgs","usePagination","config","newArgs","omit","defaultLimit","maxLimit","defaults","offset","limit","page","pageSize","graphQLFiltersToStrapiQuery"],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sources":["../../../../server/src/services/builders/utils.ts"],"sourcesContent":["import { entries, mapValues, omit } from 'lodash/fp';\nimport { idArg, nonNull } from 'nexus';\nimport { pagination } from '@strapi/utils';\nimport type { Core, Struct } from '@strapi/types';\n\nconst { withDefaultPagination } = pagination;\n\ntype ContentTypeArgsOptions = {\n multiple?: boolean;\n isNested?: boolean;\n};\n\nexport default ({ strapi }: { strapi: Core.Strapi }) => {\n const { service: getService } = strapi.plugin('graphql');\n\n return {\n getContentTypeArgs(\n contentType: Struct.Schema,\n { multiple = true, isNested = false }: ContentTypeArgsOptions = {}\n ) {\n const { naming } = getService('utils');\n const { args } = getService('internals');\n\n const { modelType } = contentType;\n\n // Components\n if (modelType === 'component') {\n if (!multiple) return {};\n\n return {\n filters: naming.getFiltersInputTypeName(contentType),\n pagination: args.PaginationArg,\n sort: args.SortArg,\n };\n }\n\n const { kind } = contentType;\n\n // On non–D&P roots (e.g. User) these args do not version the parent document, but they\n // are required: association resolvers inherit them into nested D&P relations (see\n // builders/resolvers/association.ts + rootQueryArgsByPath). Omitting them broke\n // draft/published control for populated relations (e.g. github.com/strapi/strapi/issues/25746).\n //\n // Future direction: add `status` / `hasPublishedVersion` / `publicationFilter` to GraphQL args on nested\n // to-many (and to-one) relation fields when the *target* content type has D&P, instead\n // of relying on root-level “context” that is easy to misread (args on User affecting\n // Articles). That would allow different publication settings per relation branch, match\n // how developers think about the graph, and let non-DP roots drop these args if desired.\n // Would require extending getContentTypeArgs(..., { isNested: true }) for D&P targets\n // and teaching association.ts to honor args.publicationFilter on nested fields, not\n // only root inheritance.\n const publicationArgs = {\n status: args.PublicationStatusArg,\n // Deprecated: prefer `publicationFilter` (enum cohorts).\n hasPublishedVersion: args.HasPublishedVersionArg,\n publicationFilter: args.PublicationFilterArg,\n };\n\n // Collection Types\n if (kind === 'collectionType') {\n if (!multiple) {\n return {\n documentId: nonNull(idArg()),\n ...publicationArgs,\n };\n }\n\n const params: Record<string, unknown> = {\n filters: naming.getFiltersInputTypeName(contentType),\n pagination: args.PaginationArg,\n sort: args.SortArg,\n };\n\n if (!isNested) {\n Object.assign(params, publicationArgs);\n }\n\n return params;\n }\n\n // Single Types\n if (kind === 'singleType') {\n const params: Record<string, unknown> = {};\n\n if (!isNested) {\n Object.assign(params, publicationArgs);\n }\n\n return params;\n }\n },\n\n /**\n * Filter an object entries and keep only those whose value is a unique scalar attribute\n */\n getUniqueScalarAttributes(attributes: Struct.SchemaAttributes) {\n const { isStrapiScalar } = getService('utils').attributes;\n\n const uniqueAttributes = entries(attributes).filter(\n ([, attribute]) => isStrapiScalar(attribute) && 'unique' in attribute && attribute.unique\n );\n\n return Object.fromEntries(uniqueAttributes);\n },\n\n /**\n * Map each value from an attribute to a FiltersInput type name\n * @param {object} attributes - The attributes object to transform\n * @return {Object<string, string>}\n */\n scalarAttributesToFiltersMap(attributes: Struct.SchemaAttributes) {\n return mapValues((attribute) => {\n const { mappers, naming } = getService('utils');\n\n const gqlScalar = mappers.strapiScalarToGraphQLScalar(attribute.type);\n\n return naming.getScalarFilterInputTypeName(gqlScalar);\n }, attributes);\n },\n\n /**\n * Apply basic transform to GQL args\n */\n transformArgs(\n args: any,\n {\n contentType,\n usePagination = false,\n }: { contentType: Struct.ContentTypeSchema; usePagination?: boolean }\n ) {\n const { mappers } = getService('utils');\n const { config } = strapi.plugin('graphql');\n const { pagination = {}, filters = {} } = args;\n\n // Init\n const newArgs = omit(['pagination', 'filters'], args);\n\n // Pagination\n if (usePagination) {\n const defaultLimit: number = config('defaultLimit');\n const maxLimit: number = config('maxLimit');\n\n Object.assign(\n newArgs,\n withDefaultPagination(pagination, {\n maxLimit,\n defaults: {\n offset: { limit: defaultLimit },\n page: { pageSize: defaultLimit },\n },\n })\n );\n }\n\n // Filters\n if (args.filters) {\n Object.assign(newArgs, {\n filters: mappers.graphQLFiltersToStrapiQuery(filters, contentType),\n });\n }\n\n return newArgs;\n },\n };\n};\n"],"names":["withDefaultPagination","pagination","strapi","service","getService","plugin","getContentTypeArgs","contentType","multiple","isNested","naming","args","modelType","filters","getFiltersInputTypeName","PaginationArg","sort","SortArg","kind","publicationArgs","status","PublicationStatusArg","hasPublishedVersion","HasPublishedVersionArg","publicationFilter","PublicationFilterArg","documentId","nonNull","idArg","params","Object","assign","getUniqueScalarAttributes","attributes","isStrapiScalar","uniqueAttributes","entries","filter","attribute","unique","fromEntries","scalarAttributesToFiltersMap","mapValues","mappers","gqlScalar","strapiScalarToGraphQLScalar","type","getScalarFilterInputTypeName","transformArgs","usePagination","config","newArgs","omit","defaultLimit","maxLimit","defaults","offset","limit","page","pageSize","graphQLFiltersToStrapiQuery"],"mappings":"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"}
@@ -25,17 +25,19 @@ var utils = (({ strapi })=>{
25
25
  // builders/resolvers/association.ts + rootQueryArgsByPath). Omitting them broke
26
26
  // draft/published control for populated relations (e.g. github.com/strapi/strapi/issues/25746).
27
27
  //
28
- // Future direction: add `status` / `hasPublishedVersion` to GraphQL args on nested
28
+ // Future direction: add `status` / `hasPublishedVersion` / `publicationFilter` to GraphQL args on nested
29
29
  // to-many (and to-one) relation fields when the *target* content type has D&P, instead
30
30
  // of relying on root-level “context” that is easy to misread (args on User affecting
31
31
  // Articles). That would allow different publication settings per relation branch, match
32
32
  // how developers think about the graph, and let non-DP roots drop these args if desired.
33
33
  // Would require extending getContentTypeArgs(..., { isNested: true }) for D&P targets
34
- // and teaching association.ts to honor args.hasPublishedVersion on nested fields, not
34
+ // and teaching association.ts to honor args.publicationFilter on nested fields, not
35
35
  // only root inheritance.
36
36
  const publicationArgs = {
37
37
  status: args.PublicationStatusArg,
38
- hasPublishedVersion: args.HasPublishedVersionArg
38
+ // Deprecated: prefer `publicationFilter` (enum cohorts).
39
+ hasPublishedVersion: args.HasPublishedVersionArg,
40
+ publicationFilter: args.PublicationFilterArg
39
41
  };
40
42
  // Collection Types
41
43
  if (kind === 'collectionType') {
@@ -1 +1 @@
1
- {"version":3,"file":"utils.mjs","sources":["../../../../server/src/services/builders/utils.ts"],"sourcesContent":["import { entries, mapValues, omit } from 'lodash/fp';\nimport { idArg, nonNull } from 'nexus';\nimport { pagination } from '@strapi/utils';\nimport type { Core, Struct } from '@strapi/types';\n\nconst { withDefaultPagination } = pagination;\n\ntype ContentTypeArgsOptions = {\n multiple?: boolean;\n isNested?: boolean;\n};\n\nexport default ({ strapi }: { strapi: Core.Strapi }) => {\n const { service: getService } = strapi.plugin('graphql');\n\n return {\n getContentTypeArgs(\n contentType: Struct.Schema,\n { multiple = true, isNested = false }: ContentTypeArgsOptions = {}\n ) {\n const { naming } = getService('utils');\n const { args } = getService('internals');\n\n const { modelType } = contentType;\n\n // Components\n if (modelType === 'component') {\n if (!multiple) return {};\n\n return {\n filters: naming.getFiltersInputTypeName(contentType),\n pagination: args.PaginationArg,\n sort: args.SortArg,\n };\n }\n\n const { kind } = contentType;\n\n // On non–D&P roots (e.g. User) these args do not version the parent document, but they\n // are required: association resolvers inherit them into nested D&P relations (see\n // builders/resolvers/association.ts + rootQueryArgsByPath). Omitting them broke\n // draft/published control for populated relations (e.g. github.com/strapi/strapi/issues/25746).\n //\n // Future direction: add `status` / `hasPublishedVersion` to GraphQL args on nested\n // to-many (and to-one) relation fields when the *target* content type has D&P, instead\n // of relying on root-level “context” that is easy to misread (args on User affecting\n // Articles). That would allow different publication settings per relation branch, match\n // how developers think about the graph, and let non-DP roots drop these args if desired.\n // Would require extending getContentTypeArgs(..., { isNested: true }) for D&P targets\n // and teaching association.ts to honor args.hasPublishedVersion on nested fields, not\n // only root inheritance.\n const publicationArgs = {\n status: args.PublicationStatusArg,\n hasPublishedVersion: args.HasPublishedVersionArg,\n };\n\n // Collection Types\n if (kind === 'collectionType') {\n if (!multiple) {\n return {\n documentId: nonNull(idArg()),\n ...publicationArgs,\n };\n }\n\n const params: Record<string, unknown> = {\n filters: naming.getFiltersInputTypeName(contentType),\n pagination: args.PaginationArg,\n sort: args.SortArg,\n };\n\n if (!isNested) {\n Object.assign(params, publicationArgs);\n }\n\n return params;\n }\n\n // Single Types\n if (kind === 'singleType') {\n const params: Record<string, unknown> = {};\n\n if (!isNested) {\n Object.assign(params, publicationArgs);\n }\n\n return params;\n }\n },\n\n /**\n * Filter an object entries and keep only those whose value is a unique scalar attribute\n */\n getUniqueScalarAttributes(attributes: Struct.SchemaAttributes) {\n const { isStrapiScalar } = getService('utils').attributes;\n\n const uniqueAttributes = entries(attributes).filter(\n ([, attribute]) => isStrapiScalar(attribute) && 'unique' in attribute && attribute.unique\n );\n\n return Object.fromEntries(uniqueAttributes);\n },\n\n /**\n * Map each value from an attribute to a FiltersInput type name\n * @param {object} attributes - The attributes object to transform\n * @return {Object<string, string>}\n */\n scalarAttributesToFiltersMap(attributes: Struct.SchemaAttributes) {\n return mapValues((attribute) => {\n const { mappers, naming } = getService('utils');\n\n const gqlScalar = mappers.strapiScalarToGraphQLScalar(attribute.type);\n\n return naming.getScalarFilterInputTypeName(gqlScalar);\n }, attributes);\n },\n\n /**\n * Apply basic transform to GQL args\n */\n transformArgs(\n args: any,\n {\n contentType,\n usePagination = false,\n }: { contentType: Struct.ContentTypeSchema; usePagination?: boolean }\n ) {\n const { mappers } = getService('utils');\n const { config } = strapi.plugin('graphql');\n const { pagination = {}, filters = {} } = args;\n\n // Init\n const newArgs = omit(['pagination', 'filters'], args);\n\n // Pagination\n if (usePagination) {\n const defaultLimit: number = config('defaultLimit');\n const maxLimit: number = config('maxLimit');\n\n Object.assign(\n newArgs,\n withDefaultPagination(pagination, {\n maxLimit,\n defaults: {\n offset: { limit: defaultLimit },\n page: { pageSize: defaultLimit },\n },\n })\n );\n }\n\n // Filters\n if (args.filters) {\n Object.assign(newArgs, {\n filters: mappers.graphQLFiltersToStrapiQuery(filters, contentType),\n });\n }\n\n return newArgs;\n },\n };\n};\n"],"names":["withDefaultPagination","pagination","strapi","service","getService","plugin","getContentTypeArgs","contentType","multiple","isNested","naming","args","modelType","filters","getFiltersInputTypeName","PaginationArg","sort","SortArg","kind","publicationArgs","status","PublicationStatusArg","hasPublishedVersion","HasPublishedVersionArg","documentId","nonNull","idArg","params","Object","assign","getUniqueScalarAttributes","attributes","isStrapiScalar","uniqueAttributes","entries","filter","attribute","unique","fromEntries","scalarAttributesToFiltersMap","mapValues","mappers","gqlScalar","strapiScalarToGraphQLScalar","type","getScalarFilterInputTypeName","transformArgs","usePagination","config","newArgs","omit","defaultLimit","maxLimit","defaults","offset","limit","page","pageSize","graphQLFiltersToStrapiQuery"],"mappings":"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"}
1
+ {"version":3,"file":"utils.mjs","sources":["../../../../server/src/services/builders/utils.ts"],"sourcesContent":["import { entries, mapValues, omit } from 'lodash/fp';\nimport { idArg, nonNull } from 'nexus';\nimport { pagination } from '@strapi/utils';\nimport type { Core, Struct } from '@strapi/types';\n\nconst { withDefaultPagination } = pagination;\n\ntype ContentTypeArgsOptions = {\n multiple?: boolean;\n isNested?: boolean;\n};\n\nexport default ({ strapi }: { strapi: Core.Strapi }) => {\n const { service: getService } = strapi.plugin('graphql');\n\n return {\n getContentTypeArgs(\n contentType: Struct.Schema,\n { multiple = true, isNested = false }: ContentTypeArgsOptions = {}\n ) {\n const { naming } = getService('utils');\n const { args } = getService('internals');\n\n const { modelType } = contentType;\n\n // Components\n if (modelType === 'component') {\n if (!multiple) return {};\n\n return {\n filters: naming.getFiltersInputTypeName(contentType),\n pagination: args.PaginationArg,\n sort: args.SortArg,\n };\n }\n\n const { kind } = contentType;\n\n // On non–D&P roots (e.g. User) these args do not version the parent document, but they\n // are required: association resolvers inherit them into nested D&P relations (see\n // builders/resolvers/association.ts + rootQueryArgsByPath). Omitting them broke\n // draft/published control for populated relations (e.g. github.com/strapi/strapi/issues/25746).\n //\n // Future direction: add `status` / `hasPublishedVersion` / `publicationFilter` to GraphQL args on nested\n // to-many (and to-one) relation fields when the *target* content type has D&P, instead\n // of relying on root-level “context” that is easy to misread (args on User affecting\n // Articles). That would allow different publication settings per relation branch, match\n // how developers think about the graph, and let non-DP roots drop these args if desired.\n // Would require extending getContentTypeArgs(..., { isNested: true }) for D&P targets\n // and teaching association.ts to honor args.publicationFilter on nested fields, not\n // only root inheritance.\n const publicationArgs = {\n status: args.PublicationStatusArg,\n // Deprecated: prefer `publicationFilter` (enum cohorts).\n hasPublishedVersion: args.HasPublishedVersionArg,\n publicationFilter: args.PublicationFilterArg,\n };\n\n // Collection Types\n if (kind === 'collectionType') {\n if (!multiple) {\n return {\n documentId: nonNull(idArg()),\n ...publicationArgs,\n };\n }\n\n const params: Record<string, unknown> = {\n filters: naming.getFiltersInputTypeName(contentType),\n pagination: args.PaginationArg,\n sort: args.SortArg,\n };\n\n if (!isNested) {\n Object.assign(params, publicationArgs);\n }\n\n return params;\n }\n\n // Single Types\n if (kind === 'singleType') {\n const params: Record<string, unknown> = {};\n\n if (!isNested) {\n Object.assign(params, publicationArgs);\n }\n\n return params;\n }\n },\n\n /**\n * Filter an object entries and keep only those whose value is a unique scalar attribute\n */\n getUniqueScalarAttributes(attributes: Struct.SchemaAttributes) {\n const { isStrapiScalar } = getService('utils').attributes;\n\n const uniqueAttributes = entries(attributes).filter(\n ([, attribute]) => isStrapiScalar(attribute) && 'unique' in attribute && attribute.unique\n );\n\n return Object.fromEntries(uniqueAttributes);\n },\n\n /**\n * Map each value from an attribute to a FiltersInput type name\n * @param {object} attributes - The attributes object to transform\n * @return {Object<string, string>}\n */\n scalarAttributesToFiltersMap(attributes: Struct.SchemaAttributes) {\n return mapValues((attribute) => {\n const { mappers, naming } = getService('utils');\n\n const gqlScalar = mappers.strapiScalarToGraphQLScalar(attribute.type);\n\n return naming.getScalarFilterInputTypeName(gqlScalar);\n }, attributes);\n },\n\n /**\n * Apply basic transform to GQL args\n */\n transformArgs(\n args: any,\n {\n contentType,\n usePagination = false,\n }: { contentType: Struct.ContentTypeSchema; usePagination?: boolean }\n ) {\n const { mappers } = getService('utils');\n const { config } = strapi.plugin('graphql');\n const { pagination = {}, filters = {} } = args;\n\n // Init\n const newArgs = omit(['pagination', 'filters'], args);\n\n // Pagination\n if (usePagination) {\n const defaultLimit: number = config('defaultLimit');\n const maxLimit: number = config('maxLimit');\n\n Object.assign(\n newArgs,\n withDefaultPagination(pagination, {\n maxLimit,\n defaults: {\n offset: { limit: defaultLimit },\n page: { pageSize: defaultLimit },\n },\n })\n );\n }\n\n // Filters\n if (args.filters) {\n Object.assign(newArgs, {\n filters: mappers.graphQLFiltersToStrapiQuery(filters, contentType),\n });\n }\n\n return newArgs;\n },\n };\n};\n"],"names":["withDefaultPagination","pagination","strapi","service","getService","plugin","getContentTypeArgs","contentType","multiple","isNested","naming","args","modelType","filters","getFiltersInputTypeName","PaginationArg","sort","SortArg","kind","publicationArgs","status","PublicationStatusArg","hasPublishedVersion","HasPublishedVersionArg","publicationFilter","PublicationFilterArg","documentId","nonNull","idArg","params","Object","assign","getUniqueScalarAttributes","attributes","isStrapiScalar","uniqueAttributes","entries","filter","attribute","unique","fromEntries","scalarAttributesToFiltersMap","mapValues","mappers","gqlScalar","strapiScalarToGraphQLScalar","type","getScalarFilterInputTypeName","transformArgs","usePagination","config","newArgs","omit","defaultLimit","maxLimit","defaults","offset","limit","page","pageSize","graphQLFiltersToStrapiQuery"],"mappings":"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"}
@@ -3,6 +3,7 @@
3
3
  const PAGINATION_TYPE_NAME = 'Pagination';
4
4
  const DELETE_MUTATION_RESPONSE_TYPE_NAME = 'DeleteMutationResponse';
5
5
  const PUBLICATION_STATUS_TYPE_NAME = 'PublicationStatus';
6
+ const PUBLICATION_FILTER_TYPE_NAME = 'PublicationFilter';
6
7
  const ERROR_TYPE_NAME = 'Error';
7
8
  const RESPONSE_COLLECTION_META_TYPE_NAME = 'ResponseCollectionMeta';
8
9
  const GRAPHQL_SCALARS = [
@@ -125,6 +126,7 @@ var constants = (()=>({
125
126
  RESPONSE_COLLECTION_META_TYPE_NAME,
126
127
  DELETE_MUTATION_RESPONSE_TYPE_NAME,
127
128
  PUBLICATION_STATUS_TYPE_NAME,
129
+ PUBLICATION_FILTER_TYPE_NAME,
128
130
  GRAPHQL_SCALARS,
129
131
  STRAPI_SCALARS,
130
132
  GENERIC_MORPH_TYPENAME,
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sources":["../../../server/src/services/constants.ts"],"sourcesContent":["const PAGINATION_TYPE_NAME = 'Pagination';\nconst DELETE_MUTATION_RESPONSE_TYPE_NAME = 'DeleteMutationResponse';\nconst PUBLICATION_STATUS_TYPE_NAME = 'PublicationStatus';\nconst ERROR_TYPE_NAME = 'Error';\n\nconst RESPONSE_COLLECTION_META_TYPE_NAME = 'ResponseCollectionMeta';\n\nconst GRAPHQL_SCALARS = [\n 'ID',\n 'Boolean',\n 'Int',\n 'String',\n 'Long',\n 'Float',\n 'JSON',\n 'Date',\n 'Time',\n 'DateTime',\n] as const;\n\nconst STRAPI_SCALARS = [\n 'boolean',\n 'integer',\n 'string',\n 'richtext',\n 'blocks',\n 'enumeration',\n 'biginteger',\n 'float',\n 'decimal',\n 'json',\n 'date',\n 'time',\n 'datetime',\n 'timestamp',\n 'uid',\n 'email',\n 'password',\n 'text',\n] as const;\n\nconst SCALARS_ASSOCIATIONS = {\n uid: 'String',\n email: 'String',\n password: 'String',\n text: 'String',\n boolean: 'Boolean',\n integer: 'Int',\n string: 'String',\n enumeration: 'String',\n richtext: 'String',\n blocks: 'JSON',\n biginteger: 'Long',\n float: 'Float',\n decimal: 'Float',\n json: 'JSON',\n date: 'Date',\n time: 'Time',\n datetime: 'DateTime',\n timestamp: 'DateTime',\n} as const;\n\nconst GENERIC_MORPH_TYPENAME = 'GenericMorph';\n\nconst KINDS = {\n type: 'type',\n component: 'component',\n dynamicZone: 'dynamic-zone',\n enum: 'enum',\n entity: 'entity',\n entityResponse: 'entity-response',\n entityResponseCollection: 'entity-response-collection',\n relationResponseCollection: 'relation-response-collection',\n query: 'query',\n mutation: 'mutation',\n input: 'input',\n filtersInput: 'filters-input',\n scalar: 'scalar',\n morph: 'polymorphic',\n internal: 'internal',\n} as const;\n\nconst allOperators = [\n 'and',\n 'or',\n 'not',\n\n 'eq',\n 'eqi',\n 'ne',\n 'nei',\n\n 'startsWith',\n 'endsWith',\n\n 'contains',\n 'notContains',\n\n 'containsi',\n 'notContainsi',\n\n 'gt',\n 'gte',\n\n 'lt',\n 'lte',\n\n 'null',\n 'notNull',\n\n 'in',\n 'notIn',\n\n 'between',\n] as const;\n\nconst GRAPHQL_SCALAR_OPERATORS = {\n // ID\n ID: allOperators,\n // Booleans\n Boolean: allOperators,\n // Strings\n String: allOperators,\n // Numbers\n Int: allOperators,\n Long: allOperators,\n Float: allOperators,\n // Dates\n Date: allOperators,\n Time: allOperators,\n DateTime: allOperators,\n // Others\n JSON: allOperators,\n} as const;\n\nconst ERROR_CODES = {\n emptyDynamicZone: 'dynamiczone.empty',\n} as const;\n\nexport type Constants = {\n PAGINATION_TYPE_NAME: string;\n RESPONSE_COLLECTION_META_TYPE_NAME: string;\n PUBLICATION_STATE_TYPE_NAME: string;\n GRAPHQL_SCALARS: string[];\n STRAPI_SCALARS: string[];\n GENERIC_MORPH_TYPENAME: string;\n KINDS: typeof KINDS;\n GRAPHQL_SCALAR_OPERATORS: typeof GRAPHQL_SCALAR_OPERATORS;\n SCALARS_ASSOCIATIONS: typeof SCALARS_ASSOCIATIONS;\n ERROR_CODES: typeof ERROR_CODES;\n ERROR_TYPE_NAME: string;\n};\n\nexport default () => ({\n PAGINATION_TYPE_NAME,\n RESPONSE_COLLECTION_META_TYPE_NAME,\n DELETE_MUTATION_RESPONSE_TYPE_NAME,\n PUBLICATION_STATUS_TYPE_NAME,\n GRAPHQL_SCALARS,\n STRAPI_SCALARS,\n GENERIC_MORPH_TYPENAME,\n KINDS,\n GRAPHQL_SCALAR_OPERATORS,\n SCALARS_ASSOCIATIONS,\n ERROR_CODES,\n ERROR_TYPE_NAME,\n});\n"],"names":["PAGINATION_TYPE_NAME","DELETE_MUTATION_RESPONSE_TYPE_NAME","PUBLICATION_STATUS_TYPE_NAME","ERROR_TYPE_NAME","RESPONSE_COLLECTION_META_TYPE_NAME","GRAPHQL_SCALARS","STRAPI_SCALARS","SCALARS_ASSOCIATIONS","uid","email","password","text","boolean","integer","string","enumeration","richtext","blocks","biginteger","float","decimal","json","date","time","datetime","timestamp","GENERIC_MORPH_TYPENAME","KINDS","type","component","dynamicZone","enum","entity","entityResponse","entityResponseCollection","relationResponseCollection","query","mutation","input","filtersInput","scalar","morph","internal","allOperators","GRAPHQL_SCALAR_OPERATORS","ID","Boolean","String","Int","Long","Float","Date","Time","DateTime","JSON","ERROR_CODES","emptyDynamicZone"],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sources":["../../../server/src/services/constants.ts"],"sourcesContent":["const PAGINATION_TYPE_NAME = 'Pagination';\nconst DELETE_MUTATION_RESPONSE_TYPE_NAME = 'DeleteMutationResponse';\nconst PUBLICATION_STATUS_TYPE_NAME = 'PublicationStatus';\nconst PUBLICATION_FILTER_TYPE_NAME = 'PublicationFilter';\nconst ERROR_TYPE_NAME = 'Error';\n\nconst RESPONSE_COLLECTION_META_TYPE_NAME = 'ResponseCollectionMeta';\n\nconst GRAPHQL_SCALARS = [\n 'ID',\n 'Boolean',\n 'Int',\n 'String',\n 'Long',\n 'Float',\n 'JSON',\n 'Date',\n 'Time',\n 'DateTime',\n] as const;\n\nconst STRAPI_SCALARS = [\n 'boolean',\n 'integer',\n 'string',\n 'richtext',\n 'blocks',\n 'enumeration',\n 'biginteger',\n 'float',\n 'decimal',\n 'json',\n 'date',\n 'time',\n 'datetime',\n 'timestamp',\n 'uid',\n 'email',\n 'password',\n 'text',\n] as const;\n\nconst SCALARS_ASSOCIATIONS = {\n uid: 'String',\n email: 'String',\n password: 'String',\n text: 'String',\n boolean: 'Boolean',\n integer: 'Int',\n string: 'String',\n enumeration: 'String',\n richtext: 'String',\n blocks: 'JSON',\n biginteger: 'Long',\n float: 'Float',\n decimal: 'Float',\n json: 'JSON',\n date: 'Date',\n time: 'Time',\n datetime: 'DateTime',\n timestamp: 'DateTime',\n} as const;\n\nconst GENERIC_MORPH_TYPENAME = 'GenericMorph';\n\nconst KINDS = {\n type: 'type',\n component: 'component',\n dynamicZone: 'dynamic-zone',\n enum: 'enum',\n entity: 'entity',\n entityResponse: 'entity-response',\n entityResponseCollection: 'entity-response-collection',\n relationResponseCollection: 'relation-response-collection',\n query: 'query',\n mutation: 'mutation',\n input: 'input',\n filtersInput: 'filters-input',\n scalar: 'scalar',\n morph: 'polymorphic',\n internal: 'internal',\n} as const;\n\nconst allOperators = [\n 'and',\n 'or',\n 'not',\n\n 'eq',\n 'eqi',\n 'ne',\n 'nei',\n\n 'startsWith',\n 'endsWith',\n\n 'contains',\n 'notContains',\n\n 'containsi',\n 'notContainsi',\n\n 'gt',\n 'gte',\n\n 'lt',\n 'lte',\n\n 'null',\n 'notNull',\n\n 'in',\n 'notIn',\n\n 'between',\n] as const;\n\nconst GRAPHQL_SCALAR_OPERATORS = {\n // ID\n ID: allOperators,\n // Booleans\n Boolean: allOperators,\n // Strings\n String: allOperators,\n // Numbers\n Int: allOperators,\n Long: allOperators,\n Float: allOperators,\n // Dates\n Date: allOperators,\n Time: allOperators,\n DateTime: allOperators,\n // Others\n JSON: allOperators,\n} as const;\n\nconst ERROR_CODES = {\n emptyDynamicZone: 'dynamiczone.empty',\n} as const;\n\nexport type Constants = {\n PAGINATION_TYPE_NAME: string;\n RESPONSE_COLLECTION_META_TYPE_NAME: string;\n PUBLICATION_STATE_TYPE_NAME: string;\n GRAPHQL_SCALARS: string[];\n STRAPI_SCALARS: string[];\n GENERIC_MORPH_TYPENAME: string;\n KINDS: typeof KINDS;\n GRAPHQL_SCALAR_OPERATORS: typeof GRAPHQL_SCALAR_OPERATORS;\n SCALARS_ASSOCIATIONS: typeof SCALARS_ASSOCIATIONS;\n ERROR_CODES: typeof ERROR_CODES;\n ERROR_TYPE_NAME: string;\n};\n\nexport default () => ({\n PAGINATION_TYPE_NAME,\n RESPONSE_COLLECTION_META_TYPE_NAME,\n DELETE_MUTATION_RESPONSE_TYPE_NAME,\n PUBLICATION_STATUS_TYPE_NAME,\n PUBLICATION_FILTER_TYPE_NAME,\n GRAPHQL_SCALARS,\n STRAPI_SCALARS,\n GENERIC_MORPH_TYPENAME,\n KINDS,\n GRAPHQL_SCALAR_OPERATORS,\n SCALARS_ASSOCIATIONS,\n ERROR_CODES,\n ERROR_TYPE_NAME,\n});\n"],"names":["PAGINATION_TYPE_NAME","DELETE_MUTATION_RESPONSE_TYPE_NAME","PUBLICATION_STATUS_TYPE_NAME","PUBLICATION_FILTER_TYPE_NAME","ERROR_TYPE_NAME","RESPONSE_COLLECTION_META_TYPE_NAME","GRAPHQL_SCALARS","STRAPI_SCALARS","SCALARS_ASSOCIATIONS","uid","email","password","text","boolean","integer","string","enumeration","richtext","blocks","biginteger","float","decimal","json","date","time","datetime","timestamp","GENERIC_MORPH_TYPENAME","KINDS","type","component","dynamicZone","enum","entity","entityResponse","entityResponseCollection","relationResponseCollection","query","mutation","input","filtersInput","scalar","morph","internal","allOperators","GRAPHQL_SCALAR_OPERATORS","ID","Boolean","String","Int","Long","Float","Date","Time","DateTime","JSON","ERROR_CODES","emptyDynamicZone"],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  const PAGINATION_TYPE_NAME = 'Pagination';
2
2
  const DELETE_MUTATION_RESPONSE_TYPE_NAME = 'DeleteMutationResponse';
3
3
  const PUBLICATION_STATUS_TYPE_NAME = 'PublicationStatus';
4
+ const PUBLICATION_FILTER_TYPE_NAME = 'PublicationFilter';
4
5
  const ERROR_TYPE_NAME = 'Error';
5
6
  const RESPONSE_COLLECTION_META_TYPE_NAME = 'ResponseCollectionMeta';
6
7
  const GRAPHQL_SCALARS = [
@@ -123,6 +124,7 @@ var constants = (()=>({
123
124
  RESPONSE_COLLECTION_META_TYPE_NAME,
124
125
  DELETE_MUTATION_RESPONSE_TYPE_NAME,
125
126
  PUBLICATION_STATUS_TYPE_NAME,
127
+ PUBLICATION_FILTER_TYPE_NAME,
126
128
  GRAPHQL_SCALARS,
127
129
  STRAPI_SCALARS,
128
130
  GENERIC_MORPH_TYPENAME,
@@ -1 +1 @@
1
- {"version":3,"file":"constants.mjs","sources":["../../../server/src/services/constants.ts"],"sourcesContent":["const PAGINATION_TYPE_NAME = 'Pagination';\nconst DELETE_MUTATION_RESPONSE_TYPE_NAME = 'DeleteMutationResponse';\nconst PUBLICATION_STATUS_TYPE_NAME = 'PublicationStatus';\nconst ERROR_TYPE_NAME = 'Error';\n\nconst RESPONSE_COLLECTION_META_TYPE_NAME = 'ResponseCollectionMeta';\n\nconst GRAPHQL_SCALARS = [\n 'ID',\n 'Boolean',\n 'Int',\n 'String',\n 'Long',\n 'Float',\n 'JSON',\n 'Date',\n 'Time',\n 'DateTime',\n] as const;\n\nconst STRAPI_SCALARS = [\n 'boolean',\n 'integer',\n 'string',\n 'richtext',\n 'blocks',\n 'enumeration',\n 'biginteger',\n 'float',\n 'decimal',\n 'json',\n 'date',\n 'time',\n 'datetime',\n 'timestamp',\n 'uid',\n 'email',\n 'password',\n 'text',\n] as const;\n\nconst SCALARS_ASSOCIATIONS = {\n uid: 'String',\n email: 'String',\n password: 'String',\n text: 'String',\n boolean: 'Boolean',\n integer: 'Int',\n string: 'String',\n enumeration: 'String',\n richtext: 'String',\n blocks: 'JSON',\n biginteger: 'Long',\n float: 'Float',\n decimal: 'Float',\n json: 'JSON',\n date: 'Date',\n time: 'Time',\n datetime: 'DateTime',\n timestamp: 'DateTime',\n} as const;\n\nconst GENERIC_MORPH_TYPENAME = 'GenericMorph';\n\nconst KINDS = {\n type: 'type',\n component: 'component',\n dynamicZone: 'dynamic-zone',\n enum: 'enum',\n entity: 'entity',\n entityResponse: 'entity-response',\n entityResponseCollection: 'entity-response-collection',\n relationResponseCollection: 'relation-response-collection',\n query: 'query',\n mutation: 'mutation',\n input: 'input',\n filtersInput: 'filters-input',\n scalar: 'scalar',\n morph: 'polymorphic',\n internal: 'internal',\n} as const;\n\nconst allOperators = [\n 'and',\n 'or',\n 'not',\n\n 'eq',\n 'eqi',\n 'ne',\n 'nei',\n\n 'startsWith',\n 'endsWith',\n\n 'contains',\n 'notContains',\n\n 'containsi',\n 'notContainsi',\n\n 'gt',\n 'gte',\n\n 'lt',\n 'lte',\n\n 'null',\n 'notNull',\n\n 'in',\n 'notIn',\n\n 'between',\n] as const;\n\nconst GRAPHQL_SCALAR_OPERATORS = {\n // ID\n ID: allOperators,\n // Booleans\n Boolean: allOperators,\n // Strings\n String: allOperators,\n // Numbers\n Int: allOperators,\n Long: allOperators,\n Float: allOperators,\n // Dates\n Date: allOperators,\n Time: allOperators,\n DateTime: allOperators,\n // Others\n JSON: allOperators,\n} as const;\n\nconst ERROR_CODES = {\n emptyDynamicZone: 'dynamiczone.empty',\n} as const;\n\nexport type Constants = {\n PAGINATION_TYPE_NAME: string;\n RESPONSE_COLLECTION_META_TYPE_NAME: string;\n PUBLICATION_STATE_TYPE_NAME: string;\n GRAPHQL_SCALARS: string[];\n STRAPI_SCALARS: string[];\n GENERIC_MORPH_TYPENAME: string;\n KINDS: typeof KINDS;\n GRAPHQL_SCALAR_OPERATORS: typeof GRAPHQL_SCALAR_OPERATORS;\n SCALARS_ASSOCIATIONS: typeof SCALARS_ASSOCIATIONS;\n ERROR_CODES: typeof ERROR_CODES;\n ERROR_TYPE_NAME: string;\n};\n\nexport default () => ({\n PAGINATION_TYPE_NAME,\n RESPONSE_COLLECTION_META_TYPE_NAME,\n DELETE_MUTATION_RESPONSE_TYPE_NAME,\n PUBLICATION_STATUS_TYPE_NAME,\n GRAPHQL_SCALARS,\n STRAPI_SCALARS,\n GENERIC_MORPH_TYPENAME,\n KINDS,\n GRAPHQL_SCALAR_OPERATORS,\n SCALARS_ASSOCIATIONS,\n ERROR_CODES,\n ERROR_TYPE_NAME,\n});\n"],"names":["PAGINATION_TYPE_NAME","DELETE_MUTATION_RESPONSE_TYPE_NAME","PUBLICATION_STATUS_TYPE_NAME","ERROR_TYPE_NAME","RESPONSE_COLLECTION_META_TYPE_NAME","GRAPHQL_SCALARS","STRAPI_SCALARS","SCALARS_ASSOCIATIONS","uid","email","password","text","boolean","integer","string","enumeration","richtext","blocks","biginteger","float","decimal","json","date","time","datetime","timestamp","GENERIC_MORPH_TYPENAME","KINDS","type","component","dynamicZone","enum","entity","entityResponse","entityResponseCollection","relationResponseCollection","query","mutation","input","filtersInput","scalar","morph","internal","allOperators","GRAPHQL_SCALAR_OPERATORS","ID","Boolean","String","Int","Long","Float","Date","Time","DateTime","JSON","ERROR_CODES","emptyDynamicZone"],"mappings":"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"}
1
+ {"version":3,"file":"constants.mjs","sources":["../../../server/src/services/constants.ts"],"sourcesContent":["const PAGINATION_TYPE_NAME = 'Pagination';\nconst DELETE_MUTATION_RESPONSE_TYPE_NAME = 'DeleteMutationResponse';\nconst PUBLICATION_STATUS_TYPE_NAME = 'PublicationStatus';\nconst PUBLICATION_FILTER_TYPE_NAME = 'PublicationFilter';\nconst ERROR_TYPE_NAME = 'Error';\n\nconst RESPONSE_COLLECTION_META_TYPE_NAME = 'ResponseCollectionMeta';\n\nconst GRAPHQL_SCALARS = [\n 'ID',\n 'Boolean',\n 'Int',\n 'String',\n 'Long',\n 'Float',\n 'JSON',\n 'Date',\n 'Time',\n 'DateTime',\n] as const;\n\nconst STRAPI_SCALARS = [\n 'boolean',\n 'integer',\n 'string',\n 'richtext',\n 'blocks',\n 'enumeration',\n 'biginteger',\n 'float',\n 'decimal',\n 'json',\n 'date',\n 'time',\n 'datetime',\n 'timestamp',\n 'uid',\n 'email',\n 'password',\n 'text',\n] as const;\n\nconst SCALARS_ASSOCIATIONS = {\n uid: 'String',\n email: 'String',\n password: 'String',\n text: 'String',\n boolean: 'Boolean',\n integer: 'Int',\n string: 'String',\n enumeration: 'String',\n richtext: 'String',\n blocks: 'JSON',\n biginteger: 'Long',\n float: 'Float',\n decimal: 'Float',\n json: 'JSON',\n date: 'Date',\n time: 'Time',\n datetime: 'DateTime',\n timestamp: 'DateTime',\n} as const;\n\nconst GENERIC_MORPH_TYPENAME = 'GenericMorph';\n\nconst KINDS = {\n type: 'type',\n component: 'component',\n dynamicZone: 'dynamic-zone',\n enum: 'enum',\n entity: 'entity',\n entityResponse: 'entity-response',\n entityResponseCollection: 'entity-response-collection',\n relationResponseCollection: 'relation-response-collection',\n query: 'query',\n mutation: 'mutation',\n input: 'input',\n filtersInput: 'filters-input',\n scalar: 'scalar',\n morph: 'polymorphic',\n internal: 'internal',\n} as const;\n\nconst allOperators = [\n 'and',\n 'or',\n 'not',\n\n 'eq',\n 'eqi',\n 'ne',\n 'nei',\n\n 'startsWith',\n 'endsWith',\n\n 'contains',\n 'notContains',\n\n 'containsi',\n 'notContainsi',\n\n 'gt',\n 'gte',\n\n 'lt',\n 'lte',\n\n 'null',\n 'notNull',\n\n 'in',\n 'notIn',\n\n 'between',\n] as const;\n\nconst GRAPHQL_SCALAR_OPERATORS = {\n // ID\n ID: allOperators,\n // Booleans\n Boolean: allOperators,\n // Strings\n String: allOperators,\n // Numbers\n Int: allOperators,\n Long: allOperators,\n Float: allOperators,\n // Dates\n Date: allOperators,\n Time: allOperators,\n DateTime: allOperators,\n // Others\n JSON: allOperators,\n} as const;\n\nconst ERROR_CODES = {\n emptyDynamicZone: 'dynamiczone.empty',\n} as const;\n\nexport type Constants = {\n PAGINATION_TYPE_NAME: string;\n RESPONSE_COLLECTION_META_TYPE_NAME: string;\n PUBLICATION_STATE_TYPE_NAME: string;\n GRAPHQL_SCALARS: string[];\n STRAPI_SCALARS: string[];\n GENERIC_MORPH_TYPENAME: string;\n KINDS: typeof KINDS;\n GRAPHQL_SCALAR_OPERATORS: typeof GRAPHQL_SCALAR_OPERATORS;\n SCALARS_ASSOCIATIONS: typeof SCALARS_ASSOCIATIONS;\n ERROR_CODES: typeof ERROR_CODES;\n ERROR_TYPE_NAME: string;\n};\n\nexport default () => ({\n PAGINATION_TYPE_NAME,\n RESPONSE_COLLECTION_META_TYPE_NAME,\n DELETE_MUTATION_RESPONSE_TYPE_NAME,\n PUBLICATION_STATUS_TYPE_NAME,\n PUBLICATION_FILTER_TYPE_NAME,\n GRAPHQL_SCALARS,\n STRAPI_SCALARS,\n GENERIC_MORPH_TYPENAME,\n KINDS,\n GRAPHQL_SCALAR_OPERATORS,\n SCALARS_ASSOCIATIONS,\n ERROR_CODES,\n ERROR_TYPE_NAME,\n});\n"],"names":["PAGINATION_TYPE_NAME","DELETE_MUTATION_RESPONSE_TYPE_NAME","PUBLICATION_STATUS_TYPE_NAME","PUBLICATION_FILTER_TYPE_NAME","ERROR_TYPE_NAME","RESPONSE_COLLECTION_META_TYPE_NAME","GRAPHQL_SCALARS","STRAPI_SCALARS","SCALARS_ASSOCIATIONS","uid","email","password","text","boolean","integer","string","enumeration","richtext","blocks","biginteger","float","decimal","json","date","time","datetime","timestamp","GENERIC_MORPH_TYPENAME","KINDS","type","component","dynamicZone","enum","entity","entityResponse","entityResponseCollection","relationResponseCollection","query","mutation","input","filtersInput","scalar","morph","internal","allOperators","GRAPHQL_SCALAR_OPERATORS","ID","Boolean","String","Int","Long","Float","Date","Time","DateTime","JSON","ERROR_CODES","emptyDynamicZone"],"mappings":"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"}
@@ -2,7 +2,10 @@
2
2
 
3
3
  var nexus = require('nexus');
4
4
 
5
- var hasPublishedVersion = (()=>nexus.booleanArg());
5
+ /**
6
+ * @deprecated Use `publicationFilter` (`NEVER_PUBLISHED` / `HAS_PUBLISHED_VERSION`, etc.) instead.
7
+ * Kept for GraphQL backward compatibility with existing clients.
8
+ */ var hasPublishedVersion = (()=>nexus.booleanArg());
6
9
 
7
10
  module.exports = hasPublishedVersion;
8
11
  //# sourceMappingURL=has-published-version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"has-published-version.js","sources":["../../../../../server/src/services/internals/args/has-published-version.ts"],"sourcesContent":["import { booleanArg } from 'nexus';\n\nexport default () => booleanArg();\n"],"names":["booleanArg"],"mappings":";;;;AAEA,0BAAe,CAAA,IAAMA,gBAAAA,EAAW;;;;"}
1
+ {"version":3,"file":"has-published-version.js","sources":["../../../../../server/src/services/internals/args/has-published-version.ts"],"sourcesContent":["import { booleanArg } from 'nexus';\n\n/**\n * @deprecated Use `publicationFilter` (`NEVER_PUBLISHED` / `HAS_PUBLISHED_VERSION`, etc.) instead.\n * Kept for GraphQL backward compatibility with existing clients.\n */\nexport default () => booleanArg();\n"],"names":["booleanArg"],"mappings":";;;;AAEA;;;AAGC,IACD,0BAAe,CAAA,IAAMA,gBAAAA,EAAW;;;;"}
@@ -1,6 +1,9 @@
1
1
  import { booleanArg } from 'nexus';
2
2
 
3
- var hasPublishedVersion = (()=>booleanArg());
3
+ /**
4
+ * @deprecated Use `publicationFilter` (`NEVER_PUBLISHED` / `HAS_PUBLISHED_VERSION`, etc.) instead.
5
+ * Kept for GraphQL backward compatibility with existing clients.
6
+ */ var hasPublishedVersion = (()=>booleanArg());
4
7
 
5
8
  export { hasPublishedVersion as default };
6
9
  //# sourceMappingURL=has-published-version.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"has-published-version.mjs","sources":["../../../../../server/src/services/internals/args/has-published-version.ts"],"sourcesContent":["import { booleanArg } from 'nexus';\n\nexport default () => booleanArg();\n"],"names":["booleanArg"],"mappings":";;AAEA,0BAAe,CAAA,IAAMA,UAAAA,EAAW;;;;"}
1
+ {"version":3,"file":"has-published-version.mjs","sources":["../../../../../server/src/services/internals/args/has-published-version.ts"],"sourcesContent":["import { booleanArg } from 'nexus';\n\n/**\n * @deprecated Use `publicationFilter` (`NEVER_PUBLISHED` / `HAS_PUBLISHED_VERSION`, etc.) instead.\n * Kept for GraphQL backward compatibility with existing clients.\n */\nexport default () => booleanArg();\n"],"names":["booleanArg"],"mappings":";;AAEA;;;AAGC,IACD,0BAAe,CAAA,IAAMA,UAAAA,EAAW;;;;"}
@@ -3,13 +3,15 @@
3
3
  var sort = require('./sort.js');
4
4
  var publicationStatus = require('./publication-status.js');
5
5
  var hasPublishedVersion = require('./has-published-version.js');
6
+ var publicationFilter = require('./publication-filter.js');
6
7
  var pagination = require('./pagination.js');
7
8
 
8
9
  var args = ((context)=>({
9
10
  SortArg: sort,
10
11
  PaginationArg: pagination,
11
12
  PublicationStatusArg: publicationStatus(context),
12
- HasPublishedVersionArg: hasPublishedVersion()
13
+ /** @deprecated Use `PublicationFilterArg` instead. */ HasPublishedVersionArg: hasPublishedVersion(),
14
+ PublicationFilterArg: publicationFilter(context)
13
15
  }));
14
16
 
15
17
  module.exports = args;
@@ -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,iBAAAA,CAAkBJ,OAAAA,CAAAA;QACxCK,sBAAAA,EAAwBC,mBAAAA;AAC1B,KAAA,CAAC;;;;"}
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 publicationFilterArg from './publication-filter';\nimport PaginationArg from './pagination';\nimport type { Context } from '../../types';\n\nexport default (context: Context) => ({\n SortArg,\n PaginationArg,\n PublicationStatusArg: publicationStatus(context),\n /** @deprecated Use `PublicationFilterArg` instead. */\n HasPublishedVersionArg: hasPublishedVersion(),\n PublicationFilterArg: publicationFilterArg(context),\n});\n"],"names":["context","SortArg","PaginationArg","PublicationStatusArg","publicationStatus","HasPublishedVersionArg","hasPublishedVersion","PublicationFilterArg","publicationFilterArg"],"mappings":";;;;;;;;AAOA,WAAe,CAAA,CAACA,OAAAA,IAAsB;AACpCC,iBAAAA,IAAAA;AACAC,uBAAAA,UAAAA;AACAC,QAAAA,oBAAAA,EAAsBC,iBAAAA,CAAkBJ,OAAAA,CAAAA;AACxC,+DACAK,sBAAAA,EAAwBC,mBAAAA,EAAAA;AACxBC,QAAAA,oBAAAA,EAAsBC,iBAAAA,CAAqBR,OAAAA;AAC7C,KAAA,CAAC;;;;"}
@@ -1,13 +1,15 @@
1
1
  import SortArg from './sort.mjs';
2
2
  import publicationStatus from './publication-status.mjs';
3
3
  import hasPublishedVersion from './has-published-version.mjs';
4
+ import publicationFilterArg from './publication-filter.mjs';
4
5
  import PaginationArg from './pagination.mjs';
5
6
 
6
7
  var args = ((context)=>({
7
8
  SortArg,
8
9
  PaginationArg,
9
10
  PublicationStatusArg: publicationStatus(context),
10
- HasPublishedVersionArg: hasPublishedVersion()
11
+ /** @deprecated Use `PublicationFilterArg` instead. */ HasPublishedVersionArg: hasPublishedVersion(),
12
+ PublicationFilterArg: publicationFilterArg(context)
11
13
  }));
12
14
 
13
15
  export { args as default };
@@ -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,iBAAAA,CAAkBJ,OAAAA,CAAAA;QACxCK,sBAAAA,EAAwBC,mBAAAA;AAC1B,KAAA,CAAC;;;;"}
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 publicationFilterArg from './publication-filter';\nimport PaginationArg from './pagination';\nimport type { Context } from '../../types';\n\nexport default (context: Context) => ({\n SortArg,\n PaginationArg,\n PublicationStatusArg: publicationStatus(context),\n /** @deprecated Use `PublicationFilterArg` instead. */\n HasPublishedVersionArg: hasPublishedVersion(),\n PublicationFilterArg: publicationFilterArg(context),\n});\n"],"names":["context","SortArg","PaginationArg","PublicationStatusArg","publicationStatus","HasPublishedVersionArg","hasPublishedVersion","PublicationFilterArg","publicationFilterArg"],"mappings":";;;;;;AAOA,WAAe,CAAA,CAACA,OAAAA,IAAsB;AACpCC,QAAAA,OAAAA;AACAC,QAAAA,aAAAA;AACAC,QAAAA,oBAAAA,EAAsBC,iBAAAA,CAAkBJ,OAAAA,CAAAA;AACxC,+DACAK,sBAAAA,EAAwBC,mBAAAA,EAAAA;AACxBC,QAAAA,oBAAAA,EAAsBC,oBAAAA,CAAqBR,OAAAA;AAC7C,KAAA,CAAC;;;;"}
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ var nexus = require('nexus');
4
+
5
+ var publicationFilterArg = (({ strapi })=>{
6
+ const { PUBLICATION_FILTER_TYPE_NAME } = strapi.plugin('graphql').service('constants');
7
+ return nexus.arg({
8
+ type: PUBLICATION_FILTER_TYPE_NAME
9
+ });
10
+ });
11
+
12
+ module.exports = publicationFilterArg;
13
+ //# sourceMappingURL=publication-filter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publication-filter.js","sources":["../../../../../server/src/services/internals/args/publication-filter.ts"],"sourcesContent":["import { arg } from 'nexus';\nimport type { Context } from '../../types';\n\nexport default ({ strapi }: Context) => {\n const { PUBLICATION_FILTER_TYPE_NAME } = strapi.plugin('graphql').service('constants');\n\n return arg({\n type: PUBLICATION_FILTER_TYPE_NAME,\n });\n};\n"],"names":["strapi","PUBLICATION_FILTER_TYPE_NAME","plugin","service","arg","type"],"mappings":";;;;AAGA,2BAAe,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;AACR,KAAA,CAAA;AACF,CAAA;;;;"}
@@ -0,0 +1,11 @@
1
+ import { arg } from 'nexus';
2
+
3
+ var publicationFilterArg = (({ strapi })=>{
4
+ const { PUBLICATION_FILTER_TYPE_NAME } = strapi.plugin('graphql').service('constants');
5
+ return arg({
6
+ type: PUBLICATION_FILTER_TYPE_NAME
7
+ });
8
+ });
9
+
10
+ export { publicationFilterArg as default };
11
+ //# sourceMappingURL=publication-filter.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publication-filter.mjs","sources":["../../../../../server/src/services/internals/args/publication-filter.ts"],"sourcesContent":["import { arg } from 'nexus';\nimport type { Context } from '../../types';\n\nexport default ({ strapi }: Context) => {\n const { PUBLICATION_FILTER_TYPE_NAME } = strapi.plugin('graphql').service('constants');\n\n return arg({\n type: PUBLICATION_FILTER_TYPE_NAME,\n });\n};\n"],"names":["strapi","PUBLICATION_FILTER_TYPE_NAME","plugin","service","arg","type"],"mappings":";;AAGA,2BAAe,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;AACR,KAAA,CAAA;AACF,CAAA;;;;"}
@@ -4,6 +4,7 @@ var pagination = require('./pagination.js');
4
4
  var responseCollectionMeta = require('./response-collection-meta.js');
5
5
  var deleteMutationResponse = require('./delete-mutation-response.js');
6
6
  var publicationStatus = require('./publication-status.js');
7
+ var publicationFilter = require('./publication-filter.js');
7
8
  var filters = require('./filters.js');
8
9
  var error = require('./error.js');
9
10
 
@@ -18,7 +19,8 @@ var types = ((context)=>()=>{
18
19
  deleteDocumentResponse: deleteMutationResponse(context)
19
20
  },
20
21
  [KINDS.enum]: {
21
- publicationStatus: publicationStatus(context)
22
+ publicationStatus: publicationStatus(context),
23
+ publicationFilter: publicationFilter(context)
22
24
  },
23
25
  [KINDS.filtersInput]: {
24
26
  ...filters(context)
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../server/src/services/internals/types/index.ts"],"sourcesContent":["import pagination from './pagination';\nimport buildResponseCollectionMeta from './response-collection-meta';\nimport buildDeleteMutationResponse from './delete-mutation-response';\nimport publicationStatus from './publication-status';\nimport filters from './filters';\nimport error from './error';\nimport type { Context } from '../../types';\n\nexport default (context: Context) => () => {\n const { strapi } = context;\n\n const { KINDS } = strapi.plugin('graphql').service('constants');\n\n return {\n [KINDS.internal]: {\n error: error(context),\n pagination: pagination(context),\n responseCollectionMeta: buildResponseCollectionMeta(context),\n deleteDocumentResponse: buildDeleteMutationResponse(context),\n },\n\n [KINDS.enum]: {\n publicationStatus: publicationStatus(context),\n },\n\n [KINDS.filtersInput]: {\n ...filters(context),\n },\n };\n};\n"],"names":["context","strapi","KINDS","plugin","service","internal","error","pagination","responseCollectionMeta","buildResponseCollectionMeta","deleteDocumentResponse","buildDeleteMutationResponse","enum","publicationStatus","filtersInput","filters"],"mappings":";;;;;;;;;AAQA,YAAe,CAAA,CAACA,OAAAA,GAAqB,IAAA;QACnC,MAAM,EAAEC,MAAM,EAAE,GAAGD,OAAAA;QAEnB,MAAM,EAAEE,KAAK,EAAE,GAAGD,OAAOE,MAAM,CAAC,SAAA,CAAA,CAAWC,OAAO,CAAC,WAAA,CAAA;QAEnD,OAAO;YACL,CAACF,KAAAA,CAAMG,QAAQ,GAAG;AAChBC,gBAAAA,KAAAA,EAAOA,KAAAA,CAAMN,OAAAA,CAAAA;AACbO,gBAAAA,UAAAA,EAAYA,UAAAA,CAAWP,OAAAA,CAAAA;AACvBQ,gBAAAA,sBAAAA,EAAwBC,sBAAAA,CAA4BT,OAAAA,CAAAA;AACpDU,gBAAAA,sBAAAA,EAAwBC,sBAAAA,CAA4BX,OAAAA;AACtD,aAAA;YAEA,CAACE,KAAAA,CAAMU,IAAI,GAAG;AACZC,gBAAAA,iBAAAA,EAAmBA,iBAAAA,CAAkBb,OAAAA;AACvC,aAAA;YAEA,CAACE,KAAAA,CAAMY,YAAY,GAAG;AACpB,gBAAA,GAAGC,QAAQf,OAAAA;AACb;AACF,SAAA;AACF,IAAA,CAAA;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../server/src/services/internals/types/index.ts"],"sourcesContent":["import pagination from './pagination';\nimport buildResponseCollectionMeta from './response-collection-meta';\nimport buildDeleteMutationResponse from './delete-mutation-response';\nimport publicationStatus from './publication-status';\nimport publicationFilter from './publication-filter';\nimport filters from './filters';\nimport error from './error';\nimport type { Context } from '../../types';\n\nexport default (context: Context) => () => {\n const { strapi } = context;\n\n const { KINDS } = strapi.plugin('graphql').service('constants');\n\n return {\n [KINDS.internal]: {\n error: error(context),\n pagination: pagination(context),\n responseCollectionMeta: buildResponseCollectionMeta(context),\n deleteDocumentResponse: buildDeleteMutationResponse(context),\n },\n\n [KINDS.enum]: {\n publicationStatus: publicationStatus(context),\n publicationFilter: publicationFilter(context),\n },\n\n [KINDS.filtersInput]: {\n ...filters(context),\n },\n };\n};\n"],"names":["context","strapi","KINDS","plugin","service","internal","error","pagination","responseCollectionMeta","buildResponseCollectionMeta","deleteDocumentResponse","buildDeleteMutationResponse","enum","publicationStatus","publicationFilter","filtersInput","filters"],"mappings":";;;;;;;;;;AASA,YAAe,CAAA,CAACA,OAAAA,GAAqB,IAAA;QACnC,MAAM,EAAEC,MAAM,EAAE,GAAGD,OAAAA;QAEnB,MAAM,EAAEE,KAAK,EAAE,GAAGD,OAAOE,MAAM,CAAC,SAAA,CAAA,CAAWC,OAAO,CAAC,WAAA,CAAA;QAEnD,OAAO;YACL,CAACF,KAAAA,CAAMG,QAAQ,GAAG;AAChBC,gBAAAA,KAAAA,EAAOA,KAAAA,CAAMN,OAAAA,CAAAA;AACbO,gBAAAA,UAAAA,EAAYA,UAAAA,CAAWP,OAAAA,CAAAA;AACvBQ,gBAAAA,sBAAAA,EAAwBC,sBAAAA,CAA4BT,OAAAA,CAAAA;AACpDU,gBAAAA,sBAAAA,EAAwBC,sBAAAA,CAA4BX,OAAAA;AACtD,aAAA;YAEA,CAACE,KAAAA,CAAMU,IAAI,GAAG;AACZC,gBAAAA,iBAAAA,EAAmBA,iBAAAA,CAAkBb,OAAAA,CAAAA;AACrCc,gBAAAA,iBAAAA,EAAmBA,iBAAAA,CAAkBd,OAAAA;AACvC,aAAA;YAEA,CAACE,KAAAA,CAAMa,YAAY,GAAG;AACpB,gBAAA,GAAGC,QAAQhB,OAAAA;AACb;AACF,SAAA;AACF,IAAA,CAAA;;;;"}
@@ -2,6 +2,7 @@ import pagination from './pagination.mjs';
2
2
  import buildResponseCollectionMeta from './response-collection-meta.mjs';
3
3
  import buildDeleteMutationResponse from './delete-mutation-response.mjs';
4
4
  import publicationStatus from './publication-status.mjs';
5
+ import publicationFilter from './publication-filter.mjs';
5
6
  import filters from './filters.mjs';
6
7
  import error from './error.mjs';
7
8
 
@@ -16,7 +17,8 @@ var types = ((context)=>()=>{
16
17
  deleteDocumentResponse: buildDeleteMutationResponse(context)
17
18
  },
18
19
  [KINDS.enum]: {
19
- publicationStatus: publicationStatus(context)
20
+ publicationStatus: publicationStatus(context),
21
+ publicationFilter: publicationFilter(context)
20
22
  },
21
23
  [KINDS.filtersInput]: {
22
24
  ...filters(context)
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../server/src/services/internals/types/index.ts"],"sourcesContent":["import pagination from './pagination';\nimport buildResponseCollectionMeta from './response-collection-meta';\nimport buildDeleteMutationResponse from './delete-mutation-response';\nimport publicationStatus from './publication-status';\nimport filters from './filters';\nimport error from './error';\nimport type { Context } from '../../types';\n\nexport default (context: Context) => () => {\n const { strapi } = context;\n\n const { KINDS } = strapi.plugin('graphql').service('constants');\n\n return {\n [KINDS.internal]: {\n error: error(context),\n pagination: pagination(context),\n responseCollectionMeta: buildResponseCollectionMeta(context),\n deleteDocumentResponse: buildDeleteMutationResponse(context),\n },\n\n [KINDS.enum]: {\n publicationStatus: publicationStatus(context),\n },\n\n [KINDS.filtersInput]: {\n ...filters(context),\n },\n };\n};\n"],"names":["context","strapi","KINDS","plugin","service","internal","error","pagination","responseCollectionMeta","buildResponseCollectionMeta","deleteDocumentResponse","buildDeleteMutationResponse","enum","publicationStatus","filtersInput","filters"],"mappings":";;;;;;;AAQA,YAAe,CAAA,CAACA,OAAAA,GAAqB,IAAA;QACnC,MAAM,EAAEC,MAAM,EAAE,GAAGD,OAAAA;QAEnB,MAAM,EAAEE,KAAK,EAAE,GAAGD,OAAOE,MAAM,CAAC,SAAA,CAAA,CAAWC,OAAO,CAAC,WAAA,CAAA;QAEnD,OAAO;YACL,CAACF,KAAAA,CAAMG,QAAQ,GAAG;AAChBC,gBAAAA,KAAAA,EAAOA,KAAAA,CAAMN,OAAAA,CAAAA;AACbO,gBAAAA,UAAAA,EAAYA,UAAAA,CAAWP,OAAAA,CAAAA;AACvBQ,gBAAAA,sBAAAA,EAAwBC,2BAAAA,CAA4BT,OAAAA,CAAAA;AACpDU,gBAAAA,sBAAAA,EAAwBC,2BAAAA,CAA4BX,OAAAA;AACtD,aAAA;YAEA,CAACE,KAAAA,CAAMU,IAAI,GAAG;AACZC,gBAAAA,iBAAAA,EAAmBA,iBAAAA,CAAkBb,OAAAA;AACvC,aAAA;YAEA,CAACE,KAAAA,CAAMY,YAAY,GAAG;AACpB,gBAAA,GAAGC,QAAQf,OAAAA;AACb;AACF,SAAA;AACF,IAAA,CAAA;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../server/src/services/internals/types/index.ts"],"sourcesContent":["import pagination from './pagination';\nimport buildResponseCollectionMeta from './response-collection-meta';\nimport buildDeleteMutationResponse from './delete-mutation-response';\nimport publicationStatus from './publication-status';\nimport publicationFilter from './publication-filter';\nimport filters from './filters';\nimport error from './error';\nimport type { Context } from '../../types';\n\nexport default (context: Context) => () => {\n const { strapi } = context;\n\n const { KINDS } = strapi.plugin('graphql').service('constants');\n\n return {\n [KINDS.internal]: {\n error: error(context),\n pagination: pagination(context),\n responseCollectionMeta: buildResponseCollectionMeta(context),\n deleteDocumentResponse: buildDeleteMutationResponse(context),\n },\n\n [KINDS.enum]: {\n publicationStatus: publicationStatus(context),\n publicationFilter: publicationFilter(context),\n },\n\n [KINDS.filtersInput]: {\n ...filters(context),\n },\n };\n};\n"],"names":["context","strapi","KINDS","plugin","service","internal","error","pagination","responseCollectionMeta","buildResponseCollectionMeta","deleteDocumentResponse","buildDeleteMutationResponse","enum","publicationStatus","publicationFilter","filtersInput","filters"],"mappings":";;;;;;;;AASA,YAAe,CAAA,CAACA,OAAAA,GAAqB,IAAA;QACnC,MAAM,EAAEC,MAAM,EAAE,GAAGD,OAAAA;QAEnB,MAAM,EAAEE,KAAK,EAAE,GAAGD,OAAOE,MAAM,CAAC,SAAA,CAAA,CAAWC,OAAO,CAAC,WAAA,CAAA;QAEnD,OAAO;YACL,CAACF,KAAAA,CAAMG,QAAQ,GAAG;AAChBC,gBAAAA,KAAAA,EAAOA,KAAAA,CAAMN,OAAAA,CAAAA;AACbO,gBAAAA,UAAAA,EAAYA,UAAAA,CAAWP,OAAAA,CAAAA;AACvBQ,gBAAAA,sBAAAA,EAAwBC,2BAAAA,CAA4BT,OAAAA,CAAAA;AACpDU,gBAAAA,sBAAAA,EAAwBC,2BAAAA,CAA4BX,OAAAA;AACtD,aAAA;YAEA,CAACE,KAAAA,CAAMU,IAAI,GAAG;AACZC,gBAAAA,iBAAAA,EAAmBA,iBAAAA,CAAkBb,OAAAA,CAAAA;AACrCc,gBAAAA,iBAAAA,EAAmBA,iBAAAA,CAAkBd,OAAAA;AACvC,aAAA;YAEA,CAACE,KAAAA,CAAMa,YAAY,GAAG;AACpB,gBAAA,GAAGC,QAAQhB,OAAAA;AACb;AACF,SAAA;AACF,IAAA,CAAA;;;;"}