@remkoj/optimizely-graph-functions 6.0.0-pre1 → 6.0.0-pre11

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 (66) hide show
  1. package/LICENSE +12 -12
  2. package/README.md +56 -14
  3. package/dist/_transform/cleanFragments.d.ts +10 -0
  4. package/dist/_transform/cleanFragments.js +39 -0
  5. package/dist/_transform/cleanFragments.js.map +1 -0
  6. package/dist/_transform/cleanSpreads.d.ts +10 -0
  7. package/dist/_transform/cleanSpreads.js +36 -0
  8. package/dist/_transform/cleanSpreads.js.map +1 -0
  9. package/dist/_transform/handleDependDirective.d.ts +11 -0
  10. package/dist/_transform/handleDependDirective.js +121 -0
  11. package/dist/_transform/handleDependDirective.js.map +1 -0
  12. package/dist/_transform/injectComponentDocuments.d.ts +13 -0
  13. package/dist/_transform/injectComponentDocuments.js +122 -0
  14. package/dist/_transform/injectComponentDocuments.js.map +1 -0
  15. package/dist/_transform/injectPageQueries.d.ts +4 -0
  16. package/dist/_transform/injectPageQueries.js +81 -0
  17. package/dist/_transform/injectPageQueries.js.map +1 -0
  18. package/dist/_transform/injectSectionQueries.d.ts +4 -0
  19. package/dist/_transform/injectSectionQueries.js +81 -0
  20. package/dist/_transform/injectSectionQueries.js.map +1 -0
  21. package/dist/_transform/normalizeFragmentNames.d.ts +12 -0
  22. package/dist/_transform/normalizeFragmentNames.js +75 -0
  23. package/dist/_transform/normalizeFragmentNames.js.map +1 -0
  24. package/dist/_transform/normalizeQueryNames.d.ts +12 -0
  25. package/dist/_transform/normalizeQueryNames.js +83 -0
  26. package/dist/_transform/normalizeQueryNames.js.map +1 -0
  27. package/dist/_transform/options.d.ts +3 -0
  28. package/dist/_transform/options.js +21 -0
  29. package/dist/_transform/options.js.map +1 -0
  30. package/dist/_transform/performInjections.d.ts +24 -0
  31. package/dist/_transform/performInjections.js +225 -0
  32. package/dist/_transform/performInjections.js.map +1 -0
  33. package/dist/_transform/removeReferenceItem.d.ts +11 -0
  34. package/dist/_transform/removeReferenceItem.js +113 -0
  35. package/dist/_transform/removeReferenceItem.js.map +1 -0
  36. package/dist/_transform/tools.d.ts +34 -0
  37. package/dist/_transform/tools.js +103 -0
  38. package/dist/_transform/tools.js.map +1 -0
  39. package/dist/cms/index.d.ts +17 -0
  40. package/dist/cms/index.js +88 -0
  41. package/dist/cms/index.js.map +1 -0
  42. package/dist/contenttype-loader.d.ts +58 -0
  43. package/dist/contenttype-loader.js +332 -0
  44. package/dist/contenttype-loader.js.map +1 -0
  45. package/dist/document-ast-plugin.d.ts +1 -0
  46. package/dist/document-ast-plugin.js +15 -0
  47. package/dist/document-ast-plugin.js.map +1 -0
  48. package/dist/documents/fragments.cms13.js +148 -39
  49. package/dist/documents/fragments.cms13.js.map +1 -1
  50. package/dist/documents/queries.cms13.js +9 -3
  51. package/dist/documents/queries.cms13.js.map +1 -1
  52. package/dist/embedded-loader.js +31 -16
  53. package/dist/embedded-loader.js.map +1 -1
  54. package/dist/index.d.ts +2 -5
  55. package/dist/index.js.map +1 -1
  56. package/dist/preset.d.ts +2 -4
  57. package/dist/preset.js +38 -43
  58. package/dist/preset.js.map +1 -1
  59. package/dist/tools.d.ts +4 -0
  60. package/dist/tools.js +20 -0
  61. package/dist/tools.js.map +1 -0
  62. package/dist/transform.d.ts +12 -1
  63. package/dist/transform.js +43 -58
  64. package/dist/transform.js.map +1 -1
  65. package/dist/types.d.ts +34 -0
  66. package/package.json +20 -13
@@ -14,24 +14,39 @@ const EmbeddedLoader = async (documentUri, config) => {
14
14
  const docId = new URL(documentUri);
15
15
  if (docId.protocol != "opti-cms:")
16
16
  throw new Error("[Optimizely Graph Functions - Embedded Documents] Unsupported protocol, only the \"opti-cms:\" protocol is supported");
17
- let rawData;
17
+ try {
18
+ const parsed = docId.pathname.split('/').filter(x => x && x.length > 0);
19
+ const requireTarget = `./documents/${parsed.at(0) ?? 'undefined'}.cms${parsed.at(1) ?? '13'}`;
20
+ const rawData = require(requireTarget).default;
21
+ return generateDocument(rawData, documentUri);
22
+ }
23
+ catch (e) {
24
+ console.error(e);
25
+ throw e;
26
+ }
27
+ /*
28
+ let rawData: string | string[] | undefined;
18
29
  switch (docId.pathname) {
19
- case "/fragments/13":
20
- rawData = require("./documents/fragments.cms13").default;
21
- break;
22
- case "/queries/13":
23
- rawData = require("./documents/queries.cms13").default;
24
- break;
25
- case "/fragments/12":
26
- rawData = require("./documents/fragments.cms12").default;
27
- break;
28
- case "/queries/12":
29
- rawData = require("./documents/queries.cms12").default;
30
- break;
31
- default:
32
- throw new Error(`[Optimizely Graph Functions - Embedded Documents] Path not found: ${docId.pathname}`);
30
+ case "/fragments/13":
31
+ rawData = require("./documents/fragments.cms13").default
32
+ break
33
+
34
+ case "/queries/13":
35
+ rawData = require("./documents/queries.cms13").default
36
+ break
37
+
38
+ case "/fragments/12":
39
+ rawData = require("./documents/fragments.cms12").default
40
+ break
41
+
42
+ case "/queries/12":
43
+ rawData = require("./documents/queries.cms12").default
44
+ break
45
+
46
+ default:
47
+ throw new Error(`[Optimizely Graph Functions - Embedded Documents] Path not found: ${docId.pathname}`)
33
48
  }
34
- return generateDocument(rawData, documentUri);
49
+ return generateDocument(rawData, documentUri)*/
35
50
  };
36
51
  function generateDocument(rawData, location) {
37
52
  if (rawData == undefined)
@@ -1 +1 @@
1
- {"version":3,"file":"embedded-loader.js","sourceRoot":"","sources":["../src/embedded-loader.ts"],"names":[],"mappings":";;AACA,qCAA+B;AAU/B;;;;;;;;GAQG;AACH,MAAM,cAAc,GAAoB,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE;IAClE,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAA;IAClC,IAAI,KAAK,CAAC,QAAQ,IAAI,WAAW;QAC7B,MAAM,IAAI,KAAK,CAAC,sHAAsH,CAAC,CAAA;IAE3I,IAAI,OAAuC,CAAA;IAC3C,QAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;QACpB,KAAK,eAAe;YAChB,OAAO,GAAG,OAAO,CAAC,6BAA6B,CAAC,CAAC,OAAO,CAAA;YACxD,MAAK;QAET,KAAK,aAAa;YACd,OAAO,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC,OAAO,CAAA;YACtD,MAAK;QAET,KAAK,eAAe;YAChB,OAAO,GAAG,OAAO,CAAC,6BAA6B,CAAC,CAAC,OAAO,CAAA;YACxD,MAAK;QAET,KAAK,aAAa;YACd,OAAO,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC,OAAO,CAAA;YACtD,MAAK;QAET;YACI,MAAM,IAAI,KAAK,CAAC,qEAAsE,KAAK,CAAC,QAAS,EAAE,CAAC,CAAA;IAChH,CAAC;IAED,OAAO,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;AACjD,CAAC,CAAA;AAED,SAAS,gBAAgB,CAAC,OAAsC,EAAE,QAAiB;IAE/E,IAAI,OAAO,IAAI,SAAS;QACpB,OAAO,SAAS,CAAA;IACpB,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;IACtE,MAAM,QAAQ,GAAG,IAAA,eAAK,EAAC,MAAM,CAAC,CAAA;IAE9B,OAAO;QACH,QAAQ;QACR,QAAQ;QACR,MAAM;QACN,IAAI,EAAE,QAAQ;KACjB,CAAA;AACL,CAAC;AAED,kBAAe,cAAc,CAAA"}
1
+ {"version":3,"file":"embedded-loader.js","sourceRoot":"","sources":["../src/embedded-loader.ts"],"names":[],"mappings":";;AACA,qCAA+B;AAU/B;;;;;;;;GAQG;AACH,MAAM,cAAc,GAAmB,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE;IACnE,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAA;IAClC,IAAI,KAAK,CAAC,QAAQ,IAAI,WAAW;QAC/B,MAAM,IAAI,KAAK,CAAC,sHAAsH,CAAC,CAAA;IAEzI,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACxE,MAAM,aAAa,GAAG,eAAe,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,WAAW,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;QAC9F,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,OAAO,CAAA;QAC9C,OAAO,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;IAC/C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAChB,MAAM,CAAC,CAAA;IACT,CAAC;IACD;;;;;;;;;;;;;;;;;;;;;;mDAsB+C;AACjD,CAAC,CAAA;AAED,SAAS,gBAAgB,CAAC,OAAsC,EAAE,QAAiB;IACjF,IAAI,OAAO,IAAI,SAAS;QACtB,OAAO,SAAS,CAAA;IAClB,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;IACtE,MAAM,QAAQ,GAAG,IAAA,eAAK,EAAC,MAAM,CAAC,CAAA;IAE9B,OAAO;QACL,QAAQ;QACR,QAAQ;QACR,MAAM;QACN,IAAI,EAAE,QAAQ;KACf,CAAA;AACH,CAAC;AAED,kBAAe,cAAc,CAAA"}
package/dist/index.d.ts CHANGED
@@ -1,9 +1,6 @@
1
1
  import type { CodegenPlugin, PluginFunction, PluginValidateFn } from '@graphql-codegen/plugin-helpers';
2
- export type PluginOptions = {
3
- functions?: string[];
4
- prettyPrintQuery?: boolean;
5
- clientPath?: string;
6
- };
2
+ import type { PluginOptions } from './types';
3
+ export type { PluginOptions } from './types';
7
4
  export declare const DefaultFunctions: string[];
8
5
  export declare function pickPluginOptions(options: Record<string, any>): PluginOptions;
9
6
  /**
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/preset.d.ts CHANGED
@@ -1,7 +1,5 @@
1
1
  import { type Types } from '@graphql-codegen/plugin-helpers';
2
- import { type ClientPresetConfig as ClientPresetOptions } from '@graphql-codegen/client-preset';
3
- import { type PluginOptions } from './index';
4
- import { type TransformOptions } from './types';
5
- export type PresetOptions = ClientPresetOptions & PluginOptions & TransformOptions;
2
+ import type { PresetOptions } from './types';
3
+ export type { PresetOptions } from './types';
6
4
  export declare const preset: Types.OutputPreset<PresetOptions>;
7
5
  export default preset;
package/dist/preset.js CHANGED
@@ -34,12 +34,13 @@ var __importStar = (this && this.__importStar) || (function () {
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.preset = void 0;
37
- const graphql_1 = require("graphql");
38
37
  // Import base preset
39
38
  const client_preset_1 = require("@graphql-codegen/client-preset");
39
+ const GraphQLRequestPlugin = __importStar(require("@graphql-codegen/typescript-graphql-request"));
40
+ const AddPlugin = __importStar(require("@graphql-codegen/add"));
40
41
  // Import injected parts
41
42
  const index_1 = __importStar(require("./index"));
42
- const transform_1 = __importStar(require("./transform"));
43
+ const transform_1 = require("./transform");
43
44
  exports.preset = {
44
45
  /**
45
46
  * Prepare the documents to be parsed by this preset, without modifying the original array
@@ -88,48 +89,41 @@ exports.preset = {
88
89
  }
89
90
  };
90
91
  }
91
- // Extend the document transforms in order to apply the transformations
92
- // needed to automatically inject Block, Page & Element fragments
93
- options.documentTransforms = [
94
- ...(options.documentTransforms || []),
95
- {
96
- name: 'optly-transform',
97
- transformObject: transform_1.default,
98
- config: {
99
- ...options.config,
100
- ...(0, transform_1.pickTransformOptions)(options.presetConfig)
101
- }
92
+ // Apply all changes to the document set, prior to validating it. They're executed in the order of the array
93
+ const dt = options.documentTransforms || [];
94
+ dt.unshift({
95
+ name: "Optimizely CMS Document Transforms",
96
+ transformObject: {
97
+ transform: (tOpts) => (0, transform_1.executeDocumentTransforms)(tOpts.documents, [
98
+ transform_1.cleanFragments, // Remove fragments that target non-existing types
99
+ transform_1.normalizeFragmentNames, // Allow overriding of built-in fragments
100
+ transform_1.normalizeQueryNames, // Allow overriding of built-in queries
101
+ transform_1.injectComponentDocuments, // Inject fragments to fetch component data
102
+ transform_1.injectPageQueries, // Inject queries to fetch page/experience data
103
+ transform_1.injectSectionQueries, // Inject queries to fetch section data
104
+ transform_1.performInjections, // Run injections of component fragments adjacent to placeholder fragments
105
+ transform_1.cleanFragmentSpreads, // Remove all fragment spreads that target a fragment that does not exist in the documents
106
+ transform_1.handleDependDirective // Remove the "item" field in queries and fragments from the "ContentReference" type if it's not in the schema
107
+ ], options)
102
108
  }
103
- ];
104
- // The packages contain quite a few utility fragments, however these
105
- // can cause errors if there're no Content Types using the types
106
- // targeted by these fragments as they won't be available in Optimizely
107
- // Graph - so we're removing them first
108
- options.documents = options.documents.map(doc => {
109
- if (doc.document) {
110
- const newDocument = (0, graphql_1.visit)(doc.document, {
111
- FragmentDefinition: {
112
- enter: (node) => {
113
- if (!options.schema.definitions.some(x => (x.kind == graphql_1.Kind.OBJECT_TYPE_DEFINITION || x.kind == graphql_1.Kind.INTERFACE_TYPE_DEFINITION) && x.name.value == node.typeCondition.name.value)) {
114
- if (options.presetConfig.verbose)
115
- console.log(`⚠ Removing fragment ${node.name.value} from the documents, as its target ${node.typeCondition.name.value} is not available in the schema`);
116
- return null;
117
- }
118
- }
119
- }
120
- });
121
- return {
122
- ...doc,
123
- document: newDocument
124
- };
125
- }
126
- return doc;
127
109
  });
110
+ options.documentTransforms = dt;
111
+ /*options.documents = await executeDocumentTransforms(options.documents, [
112
+ cleanFragments, // Remove fragments that target non-existing types
113
+ normalizeFragmentNames, // Allow overriding of built-in fragments
114
+ normalizeQueryNames, // Allow overriding of built-in queries
115
+ injectComponentDocuments, // Inject fragments to fetch component data
116
+ injectPageQueries, // Inject queries to fetch page/experience data
117
+ injectSectionQueries, // Inject queries to fetch section data
118
+ performInjections, // Run injections of component fragments adjacent to placeholder fragments
119
+ cleanFragmentSpreads, // Remove all fragment spreads that target a fragment that does not exist in the documents
120
+ handleDependDirective // Remove the "item" field in queries and fragments from the "ContentReference" type if it's not in the schema
121
+ ], options);*/
128
122
  // Build the preset files
129
123
  const section = await client_preset_1.preset.buildGeneratesSection(options);
130
- // Add GraphQL Request Client
131
- /*section.push({
132
- filename: `${ options.baseOutputDir}client.ts`,
124
+ // Add GraphQL Request Client.
125
+ section.push({
126
+ filename: `${options.baseOutputDir}client.ts`,
133
127
  pluginMap: {
134
128
  "add": AddPlugin,
135
129
  "typescript-graphql-request": GraphQLRequestPlugin
@@ -156,8 +150,9 @@ exports.preset = {
156
150
  profiler: options.profiler,
157
151
  documents: options.documents,
158
152
  documentTransforms: options.documentTransforms
159
- })*/
160
- // Add the functions file
153
+ });
154
+ // Add the functions file, which will materialize the defined
155
+ // functions.
161
156
  section.push({
162
157
  filename: `${options.baseOutputDir}functions.ts`,
163
158
  pluginMap: {
@@ -178,7 +173,7 @@ exports.preset = {
178
173
  documents: options.documents,
179
174
  documentTransforms: options.documentTransforms
180
175
  });
181
- // Update all sections for Optimizely Graph
176
+ // Update file generation configs
182
177
  section.forEach((fileConfig, idx) => {
183
178
  // Modify index.ts with additional exports
184
179
  if (fileConfig.filename.endsWith("index.ts")) {
@@ -1 +1 @@
1
- {"version":3,"file":"preset.js","sourceRoot":"","sources":["../src/preset.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"preset.js","sourceRoot":"","sources":["../src/preset.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export declare function ucFirst<S extends string>(input: S): Capitalize<S>;
2
+ export declare function lcFirst<S extends string>(input: S): Uncapitalize<S>;
3
+ export declare function trimStart(target: string, toTrim?: string): string;
4
+ export declare function isNonEmptyString<S extends string>(toTest: S | null | undefined | object | number | boolean): toTest is S;
package/dist/tools.js ADDED
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ucFirst = ucFirst;
4
+ exports.lcFirst = lcFirst;
5
+ exports.trimStart = trimStart;
6
+ exports.isNonEmptyString = isNonEmptyString;
7
+ function ucFirst(input) {
8
+ return (input.substring(0, 1).toUpperCase() + input.substring(1));
9
+ }
10
+ function lcFirst(input) {
11
+ return (input.substring(0, 1).toLowerCase() + input.substring(1));
12
+ }
13
+ function trimStart(target, toTrim = ' ') {
14
+ const regex = new RegExp(`/^(${toTrim})+/`);
15
+ return target.replace(regex, '');
16
+ }
17
+ function isNonEmptyString(toTest) {
18
+ return typeof toTest === 'string' && toTest.length > 0;
19
+ }
20
+ //# sourceMappingURL=tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":";;AAAA,0BAEC;AAED,0BAEC;AAED,8BAGC;AAED,4CAEC;AAfD,SAAgB,OAAO,CAAmB,KAAQ;IAChD,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAkB,CAAC;AACrF,CAAC;AAED,SAAgB,OAAO,CAAmB,KAAQ;IAChD,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAoB,CAAC;AACvF,CAAC;AAED,SAAgB,SAAS,CAAC,MAAc,EAAE,SAAiB,GAAG;IAC5D,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,MAAM,MAAM,KAAK,CAAC,CAAA;IAC3C,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;AAClC,CAAC;AAED,SAAgB,gBAAgB,CAAmB,MAAwD;IACzG,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAA;AACxD,CAAC"}
@@ -1,6 +1,17 @@
1
1
  import { type Types } from '@graphql-codegen/plugin-helpers';
2
2
  import type { TransformOptions } from './types';
3
- export declare function pickTransformOptions(options: Record<string, any>): TransformOptions;
3
+ export { cleanFragments } from "./_transform/cleanFragments";
4
+ export { injectComponentDocuments } from "./_transform/injectComponentDocuments";
5
+ export { normalizeFragmentNames } from "./_transform/normalizeFragmentNames";
6
+ export { normalizeQueryNames } from "./_transform/normalizeQueryNames";
7
+ export { pickTransformOptions } from "./_transform/options";
8
+ export { injectPageQueries } from "./_transform/injectPageQueries";
9
+ export { injectSectionQueries } from "./_transform/injectSectionQueries";
10
+ export { performInjections } from "./_transform/performInjections";
11
+ export { cleanFragmentSpreads } from "./_transform/cleanSpreads";
12
+ export { handleDependDirective } from "./_transform/handleDependDirective";
13
+ export type TransformFn<T = any> = (files: Types.DocumentFile[], options: Types.PresetFnArgs<T>) => Promise<Types.DocumentFile[]> | Types.DocumentFile[];
14
+ export declare function executeDocumentTransforms<T = any>(files: Types.DocumentFile[], transforms: Array<TransformFn<T>>, options: Types.PresetFnArgs<T>): Promise<Types.DocumentFile[]>;
4
15
  export declare const transform: Types.DocumentTransformFunction<TransformOptions>;
5
16
  declare const _default: {
6
17
  transform: Types.DocumentTransformFunction<TransformOptions>;
package/dist/transform.js CHANGED
@@ -1,71 +1,56 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.transform = void 0;
4
- exports.pickTransformOptions = pickTransformOptions;
3
+ exports.transform = exports.handleDependDirective = exports.cleanFragmentSpreads = exports.performInjections = exports.injectSectionQueries = exports.injectPageQueries = exports.pickTransformOptions = exports.normalizeQueryNames = exports.normalizeFragmentNames = exports.injectComponentDocuments = exports.cleanFragments = void 0;
4
+ exports.executeDocumentTransforms = executeDocumentTransforms;
5
5
  const graphql_1 = require("graphql");
6
- function pickTransformOptions(options) {
7
- return {
8
- injections: options.injections ?? [],
9
- verbose: options.verbose ?? false,
10
- recursion: options.recursion ?? true
11
- };
6
+ var cleanFragments_1 = require("./_transform/cleanFragments");
7
+ Object.defineProperty(exports, "cleanFragments", { enumerable: true, get: function () { return cleanFragments_1.cleanFragments; } });
8
+ var injectComponentDocuments_1 = require("./_transform/injectComponentDocuments");
9
+ Object.defineProperty(exports, "injectComponentDocuments", { enumerable: true, get: function () { return injectComponentDocuments_1.injectComponentDocuments; } });
10
+ var normalizeFragmentNames_1 = require("./_transform/normalizeFragmentNames");
11
+ Object.defineProperty(exports, "normalizeFragmentNames", { enumerable: true, get: function () { return normalizeFragmentNames_1.normalizeFragmentNames; } });
12
+ var normalizeQueryNames_1 = require("./_transform/normalizeQueryNames");
13
+ Object.defineProperty(exports, "normalizeQueryNames", { enumerable: true, get: function () { return normalizeQueryNames_1.normalizeQueryNames; } });
14
+ var options_1 = require("./_transform/options");
15
+ Object.defineProperty(exports, "pickTransformOptions", { enumerable: true, get: function () { return options_1.pickTransformOptions; } });
16
+ var injectPageQueries_1 = require("./_transform/injectPageQueries");
17
+ Object.defineProperty(exports, "injectPageQueries", { enumerable: true, get: function () { return injectPageQueries_1.injectPageQueries; } });
18
+ var injectSectionQueries_1 = require("./_transform/injectSectionQueries");
19
+ Object.defineProperty(exports, "injectSectionQueries", { enumerable: true, get: function () { return injectSectionQueries_1.injectSectionQueries; } });
20
+ var performInjections_1 = require("./_transform/performInjections");
21
+ Object.defineProperty(exports, "performInjections", { enumerable: true, get: function () { return performInjections_1.performInjections; } });
22
+ var cleanSpreads_1 = require("./_transform/cleanSpreads");
23
+ Object.defineProperty(exports, "cleanFragmentSpreads", { enumerable: true, get: function () { return cleanSpreads_1.cleanFragmentSpreads; } });
24
+ var handleDependDirective_1 = require("./_transform/handleDependDirective");
25
+ Object.defineProperty(exports, "handleDependDirective", { enumerable: true, get: function () { return handleDependDirective_1.handleDependDirective; } });
26
+ async function executeDocumentTransforms(files, transforms, options) {
27
+ let transformedFiles = files;
28
+ for (const transform of transforms)
29
+ transformedFiles = await transform(transformedFiles, options);
30
+ return transformedFiles;
12
31
  }
13
- const transform = ({ documents: files, config, schema, pluginContext }) => {
14
- if (config.verbose)
32
+ const options_2 = require("./_transform/options");
33
+ const performInjections_2 = require("./_transform/performInjections");
34
+ const transform = async ({ documents: files, config, schema, pluginContext }) => {
35
+ // Create context
36
+ const transformConfig = { ...options_2.defaultOptions, ...config };
37
+ if (transformConfig.verbose)
15
38
  console.debug(`[ OPTIMIZELY ] Starting Optimizely Graph Query & Fragment transformations`);
16
- const injections = config.injections ?? [];
17
- // Retrieve component fragments
18
- if (config.verbose)
19
- console.debug(`[ OPTIMIZELY ] Searching for fragments to inject`);
20
- const componentFragments = {};
21
- files.forEach(file => {
22
- if (!file.document)
23
- return;
24
- const applicableInjections = injections.filter(injection => !injection.pathRegex || (new RegExp(injection.pathRegex)).test(file.location ?? ""));
25
- if (!applicableInjections || applicableInjections.length == 0)
26
- return;
27
- (0, graphql_1.visit)(file.document, {
28
- FragmentDefinition: {
29
- enter(node) {
30
- const matchingInjections = applicableInjections.filter(injection => !injection.nameRegex || (new RegExp(injection.nameRegex)).test(node.name.value));
31
- if (!matchingInjections || matchingInjections.length == 0)
32
- return false;
33
- matchingInjections.forEach(injection => {
34
- if (config.verbose)
35
- console.debug(`[ OPTIMIZELY ] Found ${node.name.value} for ${injection.into} in file ${node.loc?.source?.name}`);
36
- if (!componentFragments[injection.into])
37
- componentFragments[injection.into] = [];
38
- if (!componentFragments[injection.into].some(f => f.name.value == node.name.value))
39
- componentFragments[injection.into].push(node);
40
- });
41
- return undefined;
42
- }
43
- }
44
- });
45
- });
39
+ // Process all documents to extract the fragments that must be injected
40
+ const componentFragments = await (0, performInjections_2.getComponentFragments)(files, transformConfig);
46
41
  // Get the names we actually need to inject into, and return when none are present
47
- const intoNames = Object.getOwnPropertyNames(componentFragments);
42
+ const intoNames = Array.from(componentFragments.keys());
48
43
  if (intoNames.length == 0)
49
44
  return files;
50
45
  if (config.verbose)
51
- console.debug(`[ OPTIMIZELY ] Update queries & fragments using the fragment(s): ${intoNames.join(', ')}`);
46
+ intoNames.forEach(intoName => {
47
+ console.debug(`[ OPTIMIZELY ] Update queries & fragments using the fragment ${intoName} to also use the fragments: ${(componentFragments.get(intoName) ?? []).map(x => x.name).join(',')}`);
48
+ });
52
49
  // Update the documents
53
50
  const transformedFiles = files.map(file => {
54
51
  if (config.verbose)
55
52
  console.debug(`[ OPTIMIZELY ] Processing ${file.location}`);
56
53
  const document = file.document ? (0, graphql_1.visit)(file.document, {
57
- // Remove fragments from the preset, for which the target type does not exist
58
- /*FragmentDefinition: {
59
- enter(node) {
60
- if (file.location && !fs.existsSync(file.location)) {
61
- const typePresent = schema.definitions.some(definition => (definition.kind == Kind.OBJECT_TYPE_DEFINITION || definition.kind == Kind.INTERFACE_TYPE_DEFINITION) && definition.name.value == node.typeCondition.name.value)
62
- if (!typePresent) {
63
- if (config.verbose) console.debug(`[OPTIMIZELY] Type ${ node.typeCondition.name.value } not found, dropping fragment ${ node.name.value }`)
64
- return null
65
- }
66
- }
67
- }
68
- },*/
69
54
  // Replace the fragment occurances
70
55
  SelectionSet: {
71
56
  leave(node, key, parent, path, ancestors) {
@@ -86,10 +71,10 @@ const transform = ({ documents: files, config, schema, pluginContext }) => {
86
71
  console.debug(`[ OPTIMIZELY ] Identified usage of fragment(s) ${sectionsToAdd.join(', ')} in ${parentName}, starting injection procedure`);
87
72
  const newSelections = []; //.filter(selection => !(selection.kind == Kind.FRAGMENT_SPREAD && intoNames.includes(selection.name.value)))
88
73
  sectionsToAdd.forEach(sectionName => {
89
- const addedSelections = componentFragments[sectionName].map(fragment => {
90
- if (newSelections.some(selection => selection.kind == graphql_1.Kind.FRAGMENT_SPREAD && selection.name.value == fragment.name.value)) {
74
+ const addedSelections = (componentFragments.get(sectionName) ?? []).map(fragment => {
75
+ if (newSelections.some(selection => selection.kind == graphql_1.Kind.FRAGMENT_SPREAD && selection.name.value == fragment.name)) {
91
76
  if (config.verbose)
92
- console.debug(`[ OPTIMIZELY ] Fragment ${fragment.name.value} is already adjacent to ${sectionName}`);
77
+ console.debug(`[ OPTIMIZELY ] Fragment ${fragment.name} is already adjacent to ${sectionName}`);
93
78
  return undefined;
94
79
  }
95
80
  /*if (config.verbose)
@@ -99,7 +84,7 @@ const transform = ({ documents: files, config, schema, pluginContext }) => {
99
84
  directives: [],
100
85
  name: {
101
86
  kind: graphql_1.Kind.NAME,
102
- value: fragment.name.value
87
+ value: fragment.name
103
88
  }
104
89
  };
105
90
  }).filter(isNotNullOrUndefined);
@@ -1 +1 @@
1
- {"version":3,"file":"transform.js","sourceRoot":"","sources":["../src/transform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transform.js","sourceRoot":"","sources":["../src/transform.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -1,14 +1,37 @@
1
1
  import type { FragmentDefinitionNode, OperationDefinitionNode } from 'graphql';
2
+ import type { CmsIntegrationApiOptions } from '@remkoj/optimizely-cms-api';
3
+ import type { ClientPresetConfig as ClientPresetOptions } from '@graphql-codegen/client-preset';
4
+ export type PresetOptions = ClientPresetOptions & PluginOptions & TransformOptions;
5
+ export type PluginOptions = {
6
+ functions?: string[];
7
+ prettyPrintQuery?: boolean;
8
+ clientPath?: string;
9
+ };
2
10
  export type TransformOptions = {
3
11
  /**
4
12
  * Configure fragment injection targets and filters as a set of injection
5
13
  * rules.
6
14
  */
7
15
  injections?: Injection[];
16
+ /**
17
+ * Define whether the injection process should cleanup targeted fragments
18
+ * from the affected queries & fragments. Defaults to "true".
19
+ *
20
+ * Possible options:
21
+ * - `true`: Clean the targeted fragment spreads and proceed to remove the following fragment spreads: BlockData, PageData
22
+ * - `false`: Do not perform any cleaning
23
+ * - string[]: Remove the listed fragment spreads after processing
24
+ */
25
+ cleanup?: boolean | string[];
8
26
  /**
9
27
  * Enable verbose output
10
28
  */
11
29
  verbose?: boolean;
30
+ /**
31
+ * Override the keys to login to Optimizely CMS to fully auto-generate
32
+ * fragments during the compilation process.
33
+ */
34
+ cmsClient?: CmsIntegrationApiOptions;
12
35
  /**
13
36
  * Disables the recursive validation of GraphQL-Codegen and updates the
14
37
  * rules to ensure that the code is properly generated.
@@ -20,8 +43,19 @@ export type TransformOptions = {
20
43
  recursion?: boolean;
21
44
  };
22
45
  export type Injection = {
46
+ /**
47
+ * The fragment to inject the matching fragments. Matching is configured by
48
+ * `nameRegex` and `pathRegex`, if neither is provided, nothing will be
49
+ * injected.
50
+ */
23
51
  into: string;
52
+ /**
53
+ * A Regex used to match the fragment names that must be injected.
54
+ */
24
55
  nameRegex?: string;
56
+ /**
57
+ * A Regex used to match the files from which the fragments must be injected.
58
+ */
25
59
  pathRegex?: string;
26
60
  };
27
61
  export type IntoMatchType = {
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "repository": "https://github.com/remkoj/optimizely-dxp-clients.git",
4
4
  "author": "Remko Jantzen <693172+remkoj@users.noreply.github.com>",
5
5
  "homepage": "https://github.com/remkoj/optimizely-dxp-clients",
6
- "version": "6.0.0-pre1",
6
+ "version": "6.0.0-pre11",
7
7
  "license": "Apache-2.0",
8
8
  "type": "commonjs",
9
9
  "description": "GraphQL Codegen preset for Optimizely Graph",
@@ -20,7 +20,8 @@
20
20
  "./preset": "./dist/preset.js",
21
21
  "./transform": "./dist/transform.js",
22
22
  "./documents": "./dist/documents/index.js",
23
- "./loader": "./dist/embedded-loader.js"
23
+ "./loader": "./dist/embedded-loader.js",
24
+ "./contenttype-loader": "./dist/contenttype-loader.js"
24
25
  },
25
26
  "typesVersions": {
26
27
  "*": {
@@ -38,27 +39,33 @@
38
39
  ],
39
40
  "loader": [
40
41
  "./dist/embedded-loader.d.ts"
42
+ ],
43
+ "contenttype-loader": [
44
+ "./dist/contenttype-loader.js"
41
45
  ]
42
46
  }
43
47
  },
44
48
  "devDependencies": {
45
- "@remkoj/optimizely-graph-client": "6.0.0-pre1",
46
- "@types/node": "^22.16.0",
47
- "typescript": "^5.8.3"
49
+ "@graphql-typed-document-node/core": "^3.2.0",
50
+ "@remkoj/optimizely-cms-api": "6.0.0-pre11",
51
+ "@remkoj/optimizely-graph-client": "6.0.0-pre11",
52
+ "@types/node": "^22.18.13",
53
+ "typescript": "^5.9.3"
48
54
  },
49
55
  "dependencies": {
50
- "@graphql-codegen/add": "^5.0.3",
51
- "@graphql-codegen/client-preset": "^4.8.3",
52
- "@graphql-codegen/plugin-helpers": "^5.1.1",
53
- "@graphql-codegen/typescript": "^4.1.6",
56
+ "@graphql-codegen/add": "^6.0.0",
57
+ "@graphql-codegen/client-preset": "^5.1.1",
58
+ "@graphql-codegen/plugin-helpers": "^6.0.0",
59
+ "@graphql-codegen/typescript": "^5.0.2",
54
60
  "@graphql-codegen/typescript-graphql-request": "^6.3.0",
55
- "@graphql-codegen/typescript-operations": "^4.6.1",
56
- "@graphql-typed-document-node/core": "^3.2.0",
57
- "@remkoj/optimizely-graph-client": "^6.0.0-pre1",
61
+ "@graphql-codegen/typescript-operations": "^5.0.2",
62
+ "@remkoj/optimizely-cms-api": "6.0.0-pre11",
63
+ "@remkoj/optimizely-graph-client": "6.0.0-pre11",
58
64
  "graphql": "^16.11.0",
59
- "graphql-request": "^7.2.0",
65
+ "graphql-request": "^7.3.1",
60
66
  "graphql-sock": "^1.0.1",
61
67
  "graphql-tag": "^2.12.6",
68
+ "node-object-hash": "^3.1.1",
62
69
  "tslib": "^2.8.1"
63
70
  },
64
71
  "scripts": {