eddev 0.1.30 → 0.1.33-beta-2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,36 @@
1
+ import { ReactElement } from "react";
2
+ export declare type ContentBlock<T extends keyof BlockProps | string = any> = {
3
+ blockName: T;
4
+ props: BlockProps extends keyof BlockProps ? BlockProps[T] : any;
5
+ innerBlocks: ContentBlock[];
6
+ innerHTML?: string;
7
+ innerContent?: string[];
8
+ rule: string;
9
+ inline: any;
10
+ };
11
+ declare type BlocksContext = {
12
+ ancestors: ContentBlock[];
13
+ parent?: ContentBlock;
14
+ prev?: ContentBlock;
15
+ next?: ContentBlock;
16
+ current: ContentBlock;
17
+ };
18
+ export declare const BlocksContext: import("react").Context<BlocksContext | undefined>;
19
+ declare type Props = {
20
+ blocks: ContentBlock[];
21
+ wrapBlock?: (child: ReactElement, ctx: BlocksContext) => ReactElement;
22
+ spacer?: (ctx: {
23
+ ancestors: ContentBlock[];
24
+ parent?: ContentBlock;
25
+ prev: ContentBlock | null;
26
+ next: ContentBlock | null;
27
+ }) => ReactElement | null;
28
+ };
29
+ export declare type GenericBlockProps = {
30
+ innerHTML?: string;
31
+ innerContent?: string[];
32
+ innerBlocks?: ContentBlock[];
33
+ children: ReactElement | null;
34
+ };
35
+ export declare function ContentBlocks(props: Props): JSX.Element | null;
36
+ export {};
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
14
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
15
+ if (ar || !(i in from)) {
16
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
17
+ ar[i] = from[i];
18
+ }
19
+ }
20
+ return to.concat(ar || Array.prototype.slice.call(from));
21
+ };
22
+ var __importDefault = (this && this.__importDefault) || function (mod) {
23
+ return (mod && mod.__esModule) ? mod : { "default": mod };
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.ContentBlocks = exports.BlocksContext = void 0;
27
+ var jsx_runtime_1 = require("react/jsx-runtime");
28
+ // @ts-ignore
29
+ var blocks_1 = __importDefault(require("@manifest/blocks"));
30
+ var blockAttributes_1 = require("./blockAttributes");
31
+ var react_1 = require("react");
32
+ exports.BlocksContext = (0, react_1.createContext)(undefined);
33
+ function ContentBlocks(props) {
34
+ if (!Array.isArray(props.blocks))
35
+ return null;
36
+ var parentContext = (0, react_1.useContext)(exports.BlocksContext);
37
+ var blocks = (0, react_1.useMemo)(function () {
38
+ return props.blocks.map(function (block, index) {
39
+ // Create a context object for the current block
40
+ var ctx = __assign(__assign({}, parentContext), { ancestors: __spreadArray(__spreadArray([], ((parentContext === null || parentContext === void 0 ? void 0 : parentContext.ancestors) || []), true), [parentContext === null || parentContext === void 0 ? void 0 : parentContext.current], false).filter(Boolean), parent: parentContext === null || parentContext === void 0 ? void 0 : parentContext.current, current: block, prev: props.blocks[index - 1], next: props.blocks[index + 1] });
41
+ // Figure out the
42
+ var blockNode;
43
+ if (block.blockName in blocks_1.default) {
44
+ var Component = blocks_1.default[block.blockName];
45
+ if (!Component)
46
+ return (0, jsx_runtime_1.jsx)(react_1.Fragment, {}, void 0);
47
+ blockNode = ((0, jsx_runtime_1.jsx)(blockAttributes_1.InlineEditingContextProvider, __assign({ values: block.inline, innerBlocks: block.innerBlocks }, { children: (0, jsx_runtime_1.jsx)(Component, __assign({}, block.props, { innerHTML: block.innerHTML,
48
+ // innerBlocks={block.innerBlocks}
49
+ children: Array.isArray(block.innerBlocks) && block.innerBlocks.length ? ((0, jsx_runtime_1.jsx)(ContentBlocks, { blocks: block.innerBlocks }, void 0)) : null }), void 0) }), void 0));
50
+ }
51
+ else if (block.innerHTML) {
52
+ blockNode = (0, jsx_runtime_1.jsx)("div", { dangerouslySetInnerHTML: { __html: block.innerHTML } }, void 0);
53
+ }
54
+ else {
55
+ blockNode = null;
56
+ }
57
+ return [ctx, block, blockNode];
58
+ });
59
+ }, [props.blocks]);
60
+ var layout = (0, react_1.useMemo)(function () {
61
+ return blocks.filter(Boolean).map(function (_a, index) {
62
+ var ctx = _a[0], block = _a[1], blockNode = _a[2];
63
+ // Exit early if the block is null
64
+ if (blockNode === null)
65
+ return (0, jsx_runtime_1.jsx)(react_1.Fragment, {}, index);
66
+ // Custom wrap function?
67
+ if (props.wrapBlock) {
68
+ blockNode = props.wrapBlock(blockNode, ctx);
69
+ }
70
+ // Wrap the block in a context provider
71
+ blockNode = (0, jsx_runtime_1.jsx)(exports.BlocksContext.Provider, __assign({ value: ctx }, { children: blockNode }), void 0);
72
+ // Custom spacer function?
73
+ var spaceBefore = null;
74
+ var spaceAfter = null;
75
+ if (props.spacer) {
76
+ // Before block
77
+ spaceBefore = props.spacer(__assign(__assign({}, ctx), { prev: ctx.prev || null, next: ctx.current || null }));
78
+ // After block (last block only)
79
+ if (index === props.blocks.length - 1) {
80
+ spaceAfter = props.spacer(__assign(__assign({}, ctx), { prev: block, next: null }));
81
+ }
82
+ }
83
+ // Attempt to wrap the block
84
+ return ((0, jsx_runtime_1.jsxs)(react_1.Fragment, { children: [spaceBefore, blockNode, spaceAfter] }, index));
85
+ });
86
+ }, [blocks, props.wrapBlock, props.spacer]);
87
+ return (0, jsx_runtime_1.jsx)(react_1.Fragment, { children: layout }, void 0);
88
+ }
89
+ exports.ContentBlocks = ContentBlocks;
@@ -1,4 +1,4 @@
1
- import { ContentBlock } from "../components/ContentBlocks";
1
+ import { ContentBlock } from "./ContentBlocks";
2
2
  import { PropsWithChildren } from "react";
3
3
  interface Attributes {
4
4
  [key: string]: any;
package/blocks/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export * from "./installGutenbergHooks";
2
2
  export * from "./defineBlock";
3
3
  export * from "./inlineEditing";
4
+ export * from "./ContentBlocks";
4
5
  export { useInlineEditableValue, useInnerBlocks } from "./blockAttributes";
package/blocks/index.js CHANGED
@@ -14,6 +14,7 @@ exports.useInnerBlocks = exports.useInlineEditableValue = void 0;
14
14
  __exportStar(require("./installGutenbergHooks"), exports);
15
15
  __exportStar(require("./defineBlock"), exports);
16
16
  __exportStar(require("./inlineEditing"), exports);
17
+ __exportStar(require("./ContentBlocks"), exports);
17
18
  var blockAttributes_1 = require("./blockAttributes");
18
19
  Object.defineProperty(exports, "useInlineEditableValue", { enumerable: true, get: function () { return blockAttributes_1.useInlineEditableValue; } });
19
20
  Object.defineProperty(exports, "useInnerBlocks", { enumerable: true, get: function () { return blockAttributes_1.useInnerBlocks; } });
@@ -26,7 +26,7 @@ exports.InnerBlocks = exports.EditableText = void 0;
26
26
  var jsx_runtime_1 = require("react/jsx-runtime");
27
27
  // @ts-ignore
28
28
  var block_editor_1 = require("@wordpress/block-editor");
29
- var components_1 = require("../components");
29
+ var ContentBlocks_1 = require("./ContentBlocks");
30
30
  var react_1 = require("react");
31
31
  var blockAttributes_1 = require("./blockAttributes");
32
32
  var react_2 = require("@stitches/react");
@@ -84,7 +84,7 @@ function InnerBlocks(props) {
84
84
  }
85
85
  else {
86
86
  var blocks = (0, blockAttributes_1.useInnerBlocks)();
87
- return (0, jsx_runtime_1.jsx)(components_1.ContentBlocks, { blocks: blocks }, void 0);
87
+ return (0, jsx_runtime_1.jsx)(ContentBlocks_1.ContentBlocks, { blocks: blocks }, void 0);
88
88
  }
89
89
  }
90
90
  exports.InnerBlocks = InnerBlocks;
@@ -76,7 +76,7 @@ var mini_css_extract_plugin_1 = __importDefault(require("mini-css-extract-plugin
76
76
  var autoprefixer_1 = __importDefault(require("autoprefixer"));
77
77
  function getWebpackConfig(opts) {
78
78
  return __awaiter(this, void 0, void 0, function () {
79
- var compiling, ALIAS, ENTRY, PLUGINS, RULES, DEFINES, VIRTUAL_MODULES, EXTERNALS, virtualModules, isServerless, isBrowser, isSSR, isDev, entryDir, distSuffix, outputFolder, loadableManifestFile, writeVirtualModule, updateTemplateRouter, templateLookupPattern, _a, updateBlocksManifest, blockLookupManifest, _b;
79
+ var compiling, ALIAS, ENTRY, PLUGINS, RULES, DEFINES, VIRTUAL_MODULES, EXTERNALS, virtualModules, isServerless, isBrowser, isSSR, isDev, entryDir, distSuffix, outputFolder, loadableManifestFile, writeVirtualModule, updateTemplateRouter, templateLookupPattern, _a, updateBlocksManifest, blockLookupManifest, _b, buildID;
80
80
  return __generator(this, function (_c) {
81
81
  switch (_c.label) {
82
82
  case 0:
@@ -360,6 +360,7 @@ function getWebpackConfig(opts) {
360
360
  if (opts.isAdmin) {
361
361
  EXTERNALS["react"] = "React";
362
362
  }
363
+ buildID = Date.now();
363
364
  return [2 /*return*/, {
364
365
  mode: opts.mode,
365
366
  context: opts.baseDirectory,
@@ -372,8 +373,10 @@ function getWebpackConfig(opts) {
372
373
  // chunkIds: "named",
373
374
  },
374
375
  output: {
375
- filename: "[name].".concat(opts.isAdmin ? "admin" : "frontend", ".js"),
376
- publicPath: isDev ? "//127.0.0.1:".concat(opts.hotPort, "/") : "/wp-content/themes/".concat(opts.themeName, "/dist/").concat(distSuffix, "/"),
376
+ filename: "[name].".concat(opts.isAdmin ? "admin" : "frontend", ".js?v=").concat(buildID),
377
+ chunkFilename: "[name].".concat(opts.isAdmin ? "admin" : "frontend", ".js?v=").concat(buildID),
378
+ // publicPath: isDev ? `//127.0.0.1:${opts.hotPort}/` : `/wp-content/themes/${opts.themeName}/dist/${distSuffix}/`,
379
+ publicPath: "/wp-content/themes/".concat(opts.themeName, "/dist/").concat(distSuffix, "/"),
377
380
  path: outputFolder,
378
381
  globalObject: isSSR ? "this" : "self",
379
382
  clean: true,
@@ -105,6 +105,7 @@ var graphqlPatterns = {
105
105
  blocks: "./blocks/**/*.graphql",
106
106
  views: "./views/**/*.graphql",
107
107
  queries: "./queries/**/*.graphql",
108
+ fragments: "./queries/fragments/**/*.graphql",
108
109
  };
109
110
  var tsxPatterns = {
110
111
  blocks: "./blocks/**/*.tsx",
@@ -288,10 +289,12 @@ function beginWork(opts) {
288
289
  // exportFragmentSpreadSubTypes: true,
289
290
  inlineFragmentTypes: "combine",
290
291
  onlyOperationTypes: true,
292
+ skipTypename: true,
293
+ preResolveTypes: true,
291
294
  },
292
295
  },
293
296
  "types.views.ts": {
294
- documents: __spreadArray([], documentSets.views, true),
297
+ documents: __spreadArray(__spreadArray([], documentSets.views, true), documentSets.fragments, true),
295
298
  plugins: [
296
299
  {
297
300
  files: {},
@@ -311,7 +314,7 @@ function beginWork(opts) {
311
314
  },
312
315
  },
313
316
  "types.blocks.ts": {
314
- documents: __spreadArray([], documentSets.blocks, true),
317
+ documents: __spreadArray(__spreadArray([], documentSets.blocks, true), documentSets.fragments, true),
315
318
  plugins: [
316
319
  {
317
320
  files: {},
@@ -332,7 +335,7 @@ function beginWork(opts) {
332
335
  var item = _d[_i];
333
336
  if (item.name.value === "block") {
334
337
  var blockField = (_c = (_b = (_a = item === null || item === void 0 ? void 0 : item.selectionSet) === null || _a === void 0 ? void 0 : _a.selections[0]) === null || _b === void 0 ? void 0 : _b.name) === null || _c === void 0 ? void 0 : _c.value;
335
- blockSelection = "Exclude<".concat(importedName, "[\"block\"][").concat(JSON.stringify(blockField), "], null>");
338
+ blockSelection = "Exclude<".concat(importedName, "[\"block\"][").concat(JSON.stringify(blockField), "], null | undefined>");
336
339
  }
337
340
  else {
338
341
  queryKeyVals.push([JSON.stringify(item.name.value), "".concat(importedName, "[").concat(JSON.stringify(item.name.value), "]")].join(": "));
@@ -459,9 +462,11 @@ function beginWork(opts) {
459
462
  });
460
463
  }); };
461
464
  watchGlob(Path.resolve(opts.baseDirectory, "./acf-json/*.json"), function (path) {
465
+ needsSchemaFetch = true;
462
466
  maybeRegenerate_1(path);
463
467
  });
464
468
  watchGlob(Path.resolve(opts.baseDirectory, "./backend/**/*.php"), function (path) {
469
+ needsSchemaFetch = true;
465
470
  maybeRegenerate_1(path);
466
471
  });
467
472
  watchGlob(envFile, function () {
@@ -1,3 +1,2 @@
1
- export * from "./ContentBlocks";
2
1
  export * from "./AdminBar";
3
2
  export * from "./InlinePage";
@@ -10,6 +10,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
10
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
- __exportStar(require("./ContentBlocks"), exports);
14
13
  __exportStar(require("./AdminBar"), exports);
15
14
  __exportStar(require("./InlinePage"), exports);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eddev",
3
- "version": "0.1.30",
3
+ "version": "0.1.33-beta-2",
4
4
  "main": "./index.js",
5
5
  "license": "MIT",
6
6
  "bin": {
@@ -1,5 +0,0 @@
1
- export declare type CodegenOptions = {
2
- baseDirectory: string;
3
- watch: boolean;
4
- };
5
- export declare function beginWork(opts: CodegenOptions): Promise<void>;
@@ -1,543 +0,0 @@
1
- "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
- if (k2 === undefined) k2 = k;
15
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
16
- }) : (function(o, m, k, k2) {
17
- if (k2 === undefined) k2 = k;
18
- o[k2] = m[k];
19
- }));
20
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
21
- Object.defineProperty(o, "default", { enumerable: true, value: v });
22
- }) : function(o, v) {
23
- o["default"] = v;
24
- });
25
- var __importStar = (this && this.__importStar) || function (mod) {
26
- if (mod && mod.__esModule) return mod;
27
- var result = {};
28
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
29
- __setModuleDefault(result, mod);
30
- return result;
31
- };
32
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
33
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
34
- return new (P || (P = Promise))(function (resolve, reject) {
35
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
36
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
37
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
38
- step((generator = generator.apply(thisArg, _arguments || [])).next());
39
- });
40
- };
41
- var __generator = (this && this.__generator) || function (thisArg, body) {
42
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
43
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
44
- function verb(n) { return function (v) { return step([n, v]); }; }
45
- function step(op) {
46
- if (f) throw new TypeError("Generator is already executing.");
47
- while (_) try {
48
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
49
- if (y = 0, t) op = [op[0] & 2, t.value];
50
- switch (op[0]) {
51
- case 0: case 1: t = op; break;
52
- case 4: _.label++; return { value: op[1], done: false };
53
- case 5: _.label++; y = op[1]; op = [0]; continue;
54
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
55
- default:
56
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
57
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
58
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
59
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
60
- if (t[2]) _.ops.pop();
61
- _.trys.pop(); continue;
62
- }
63
- op = body.call(thisArg, _);
64
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
65
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
66
- }
67
- };
68
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
69
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
70
- if (ar || !(i in from)) {
71
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
72
- ar[i] = from[i];
73
- }
74
- }
75
- return to.concat(ar || Array.prototype.slice.call(from));
76
- };
77
- var __importDefault = (this && this.__importDefault) || function (mod) {
78
- return (mod && mod.__esModule) ? mod : { "default": mod };
79
- };
80
- Object.defineProperty(exports, "__esModule", { value: true });
81
- exports.beginWork = void 0;
82
- var worker_threads_1 = require("worker_threads");
83
- var chokidar_1 = require("chokidar");
84
- var Path = __importStar(require("path"));
85
- var fs_1 = require("fs");
86
- var graphql_1 = require("graphql");
87
- var load_1 = require("@graphql-tools/load");
88
- var url_loader_1 = require("@graphql-tools/url-loader");
89
- // import { generate } from "@graphql-codegen/cli"
90
- var core_1 = require("@graphql-codegen/core");
91
- var glob_promise_1 = __importDefault(require("glob-promise"));
92
- var promises_1 = require("fs/promises");
93
- // Plugins
94
- var typescriptPlugin = __importStar(require("@graphql-codegen/typescript"));
95
- var typescriptOperationsPlugin = __importStar(require("@graphql-codegen/typescript-operations"));
96
- var CodegenNoDuplicates = __importStar(require("./graphql-codegen/graphql-codegen-no-duplicates"));
97
- var CodegenFiles = __importStar(require("./graphql-codegen/graphql-codegen-files"));
98
- var CodegenQueries = __importStar(require("./graphql-codegen/graphql-codegen-queries"));
99
- var sendSignal = function (sig) {
100
- if (worker_threads_1.parentPort) {
101
- worker_threads_1.parentPort.postMessage(sig);
102
- }
103
- };
104
- var graphqlPatterns = {
105
- blocks: "./blocks/**/*.graphql",
106
- views: "./views/**/*.graphql",
107
- queries: "./queries/**/*.graphql",
108
- };
109
- var tsxPatterns = {
110
- blocks: "./blocks/**/*.tsx",
111
- views: "./views/**/*.tsx",
112
- };
113
- function beginWork(opts) {
114
- return __awaiter(this, void 0, void 0, function () {
115
- var envFile, endpoint, schemaFile, schema, rawSchema, lastSchemaHash, regenerating, needsSchemaFetch, loadSchemaFromWordPress, regenerate, regenerateBecauseChanges, key, key, maybeRegenerate_1;
116
- var _this = this;
117
- return __generator(this, function (_a) {
118
- sendSignal({
119
- code: "ready",
120
- });
121
- envFile = Path.resolve(opts.baseDirectory, "./.env");
122
- endpoint = process.env.DEBUG_GRAPHQL_URL;
123
- schemaFile = Path.resolve(opts.baseDirectory, "schema.json") //relative(process.cwd(), Path.join(opts.baseDirectory, "schema.json"))
124
- ;
125
- schema = null;
126
- rawSchema = null;
127
- lastSchemaHash = "";
128
- regenerating = false;
129
- needsSchemaFetch = true;
130
- loadSchemaFromWordPress = function () { return __awaiter(_this, void 0, void 0, function () {
131
- var hash;
132
- return __generator(this, function (_a) {
133
- switch (_a.label) {
134
- case 0: return [4 /*yield*/, (0, load_1.loadSchema)(endpoint, {
135
- loaders: [new url_loader_1.UrlLoader()],
136
- })];
137
- case 1:
138
- rawSchema = _a.sent();
139
- schema = (0, graphql_1.introspectionFromSchema)(rawSchema, {
140
- descriptions: true,
141
- schemaDescription: false,
142
- specifiedByUrl: true,
143
- });
144
- hash = JSON.stringify(schema);
145
- if (hash !== lastSchemaHash) {
146
- lastSchemaHash = hash;
147
- return [2 /*return*/, true];
148
- }
149
- else {
150
- return [2 /*return*/, false];
151
- }
152
- return [2 /*return*/];
153
- }
154
- });
155
- }); };
156
- regenerate = debounce(100, function () { return __awaiter(_this, void 0, void 0, function () {
157
- var startTime, hasChanged, err_1, documentSets, parseErrors, _loop_1, _a, _b, _i, key, generates, errors, _c, _d, _e, file, base, config, output, err_2;
158
- var _this = this;
159
- return __generator(this, function (_f) {
160
- switch (_f.label) {
161
- case 0:
162
- regenerating = true;
163
- startTime = Date.now();
164
- if (!needsSchemaFetch) return [3 /*break*/, 5];
165
- sendSignal({
166
- code: "fetching",
167
- });
168
- // Show an error if no endpoint was found
169
- if (!endpoint) {
170
- sendSignal({
171
- code: "error",
172
- errors: ["Could not find DEBUG_GRAPHQL_URL value in .env"],
173
- });
174
- regenerating = false;
175
- return [2 /*return*/];
176
- }
177
- _f.label = 1;
178
- case 1:
179
- _f.trys.push([1, 3, , 4]);
180
- return [4 /*yield*/, loadSchemaFromWordPress()];
181
- case 2:
182
- hasChanged = _f.sent();
183
- return [3 /*break*/, 4];
184
- case 3:
185
- err_1 = _f.sent();
186
- // Error loading schema
187
- sendSignal({
188
- code: "error",
189
- errors: ["Could not load GraphQL schema from server:\n" + String(err_1)],
190
- });
191
- regenerating = false;
192
- return [2 /*return*/];
193
- case 4:
194
- // Store the schema file
195
- (0, fs_1.writeFileSync)(schemaFile, JSON.stringify(schema), {
196
- encoding: "utf-8",
197
- });
198
- // No need to refetch
199
- needsSchemaFetch = false;
200
- _f.label = 5;
201
- case 5:
202
- documentSets = {};
203
- parseErrors = [];
204
- _loop_1 = function (key) {
205
- var pattern, files;
206
- return __generator(this, function (_g) {
207
- switch (_g.label) {
208
- case 0:
209
- pattern = graphqlPatterns[key];
210
- // Find all the documents by globbing
211
- documentSets[key] = [];
212
- return [4 /*yield*/, (0, glob_promise_1.default)(Path.resolve(opts.baseDirectory, pattern))];
213
- case 1:
214
- files = _g.sent();
215
- return [4 /*yield*/, Promise.all(files.map(function (file) { return __awaiter(_this, void 0, void 0, function () {
216
- var contents, document_1, err_3;
217
- return __generator(this, function (_a) {
218
- switch (_a.label) {
219
- case 0:
220
- _a.trys.push([0, 2, , 3]);
221
- return [4 /*yield*/, (0, promises_1.readFile)(file)];
222
- case 1:
223
- contents = (_a.sent()).toString();
224
- document_1 = (0, graphql_1.parse)(contents);
225
- documentSets[key].push({
226
- document: document_1,
227
- rawSDL: contents,
228
- location: file,
229
- });
230
- return [3 /*break*/, 3];
231
- case 2:
232
- err_3 = _a.sent();
233
- parseErrors.push("Error parsing \"".concat(file.replace(opts.baseDirectory, ""), ":\n").concat(err_3));
234
- return [3 /*break*/, 3];
235
- case 3: return [2 /*return*/];
236
- }
237
- });
238
- }); }))];
239
- case 2:
240
- _g.sent();
241
- return [2 /*return*/];
242
- }
243
- });
244
- };
245
- _a = [];
246
- for (_b in graphqlPatterns)
247
- _a.push(_b);
248
- _i = 0;
249
- _f.label = 6;
250
- case 6:
251
- if (!(_i < _a.length)) return [3 /*break*/, 9];
252
- key = _a[_i];
253
- return [5 /*yield**/, _loop_1(key)];
254
- case 7:
255
- _f.sent();
256
- _f.label = 8;
257
- case 8:
258
- _i++;
259
- return [3 /*break*/, 6];
260
- case 9:
261
- if (parseErrors.length > 0) {
262
- sendSignal({
263
- code: "error",
264
- errors: parseErrors,
265
- });
266
- regenerating = false;
267
- return [2 /*return*/];
268
- }
269
- generates = {
270
- "types.graphql.ts": {
271
- documents: __spreadArray(__spreadArray(__spreadArray([], documentSets.queries, true), documentSets.views, true), documentSets.blocks, true),
272
- plugins: [
273
- {
274
- typescript: {},
275
- },
276
- {
277
- typescriptOperations: {},
278
- },
279
- ],
280
- pluginMap: {
281
- typescript: typescriptPlugin,
282
- typescriptOperations: typescriptOperationsPlugin,
283
- noDuplicates: CodegenNoDuplicates,
284
- },
285
- config: {
286
- // maybeValue: "T",
287
- avoidOptionals: true,
288
- // exportFragmentSpreadSubTypes: true,
289
- inlineFragmentTypes: "combine",
290
- onlyOperationTypes: true,
291
- },
292
- },
293
- "types.views.ts": {
294
- documents: __spreadArray([], documentSets.views, true),
295
- plugins: [
296
- {
297
- files: {},
298
- },
299
- ],
300
- pluginMap: {
301
- files: CodegenFiles,
302
- },
303
- config: {
304
- rootDir: opts.baseDirectory,
305
- folderName: "views",
306
- globalName: "ViewProps",
307
- additionalTypes: {
308
- _html: "{ \"template\": string, \"htmlContent\": string }",
309
- _app: "{ children: any }",
310
- },
311
- },
312
- },
313
- "types.blocks.ts": {
314
- documents: __spreadArray([], documentSets.blocks, true),
315
- plugins: [
316
- {
317
- files: {},
318
- },
319
- ],
320
- pluginMap: {
321
- files: CodegenFiles,
322
- },
323
- config: {
324
- rootDir: opts.baseDirectory,
325
- globalName: "BlockProps",
326
- folderName: "blocks",
327
- getType: function (importedName, def) {
328
- var _a, _b, _c;
329
- var queryKeyVals = [];
330
- var blockSelection = "";
331
- for (var _i = 0, _d = def.selectionSet.selections; _i < _d.length; _i++) {
332
- var item = _d[_i];
333
- if (item.name.value === "block") {
334
- var blockField = (_c = (_b = (_a = item === null || item === void 0 ? void 0 : item.selectionSet) === null || _a === void 0 ? void 0 : _a.selections[0]) === null || _b === void 0 ? void 0 : _b.name) === null || _c === void 0 ? void 0 : _c.value;
335
- blockSelection = "Exclude<".concat(importedName, "[\"block\"][").concat(JSON.stringify(blockField), "], null>");
336
- }
337
- else {
338
- queryKeyVals.push([JSON.stringify(item.name.value), "".concat(importedName, "[").concat(JSON.stringify(item.name.value), "]")].join(": "));
339
- }
340
- }
341
- var type = [];
342
- if (queryKeyVals.length)
343
- type.push("{".concat(queryKeyVals.join(",\n"), "}"));
344
- if (blockSelection)
345
- type.push(blockSelection);
346
- if (type.length === 0)
347
- return {};
348
- return type.join(" & ");
349
- },
350
- },
351
- },
352
- "hooks/queries.ts": {
353
- documents: __spreadArray([], documentSets.queries, true),
354
- plugins: [
355
- {
356
- queries: {},
357
- },
358
- ],
359
- pluginMap: {
360
- queries: CodegenQueries,
361
- },
362
- config: {
363
- rootDir: opts.baseDirectory,
364
- },
365
- },
366
- };
367
- // Notify of generation start
368
- sendSignal({
369
- code: "generating",
370
- });
371
- errors = [];
372
- _c = 0, _d = Object.entries(generates);
373
- _f.label = 10;
374
- case 10:
375
- if (!(_c < _d.length)) return [3 /*break*/, 15];
376
- _e = _d[_c], file = _e[0], base = _e[1];
377
- _f.label = 11;
378
- case 11:
379
- _f.trys.push([11, 13, , 14]);
380
- config = __assign(__assign({}, base), { documents: base.documents.sort(function (a, b) { return a.location.localeCompare(b.location); }), filename: Path.join(opts.baseDirectory, file), schema: rawSchema });
381
- return [4 /*yield*/, (0, core_1.codegen)(config)
382
- // Write the file
383
- ];
384
- case 12:
385
- output = _f.sent();
386
- // Write the file
387
- writeFileIfUnchanged(file, output);
388
- return [3 /*break*/, 14];
389
- case 13:
390
- err_2 = _f.sent();
391
- errors.push(String(err_2));
392
- return [3 /*break*/, 14];
393
- case 14:
394
- _c++;
395
- return [3 /*break*/, 10];
396
- case 15:
397
- // Success/fail
398
- if (errors.length) {
399
- sendSignal({
400
- code: "error",
401
- errors: errors,
402
- });
403
- }
404
- else {
405
- sendSignal({
406
- code: "success",
407
- duration: Date.now() - startTime,
408
- });
409
- }
410
- regenerating = false;
411
- return [2 /*return*/];
412
- }
413
- });
414
- }); });
415
- regenerateBecauseChanges = function (reason) {
416
- sendSignal({
417
- code: "invalidated",
418
- reason: reason.replace(opts.baseDirectory, ""),
419
- });
420
- regenerate();
421
- };
422
- if (opts.watch) {
423
- for (key in graphqlPatterns) {
424
- watchGlob(Path.resolve(opts.baseDirectory, graphqlPatterns[key]), function (path) {
425
- regenerateBecauseChanges(path);
426
- });
427
- }
428
- for (key in tsxPatterns) {
429
- watchFilenames(Path.resolve(opts.baseDirectory, tsxPatterns[key]), function (path) {
430
- regenerateBecauseChanges(path);
431
- });
432
- }
433
- maybeRegenerate_1 = function (path) { return __awaiter(_this, void 0, void 0, function () {
434
- var hasChanged;
435
- return __generator(this, function (_a) {
436
- switch (_a.label) {
437
- case 0:
438
- sendSignal({
439
- code: "invalidated",
440
- reason: path.replace(opts.baseDirectory, ""),
441
- });
442
- if (!!regenerating) return [3 /*break*/, 2];
443
- return [4 /*yield*/, loadSchemaFromWordPress()];
444
- case 1:
445
- hasChanged = _a.sent();
446
- if (hasChanged) {
447
- regenerateBecauseChanges(path);
448
- return [2 /*return*/];
449
- }
450
- _a.label = 2;
451
- case 2:
452
- sendSignal({
453
- code: "success",
454
- reason: "No changes to schema",
455
- duration: 0,
456
- });
457
- return [2 /*return*/];
458
- }
459
- });
460
- }); };
461
- watchGlob(Path.resolve(opts.baseDirectory, "./acf-json/*.json"), function (path) {
462
- maybeRegenerate_1(path);
463
- });
464
- watchGlob(Path.resolve(opts.baseDirectory, "./backend/**/*.php"), function (path) {
465
- maybeRegenerate_1(path);
466
- });
467
- watchGlob(envFile, function () {
468
- var _a;
469
- // Parse the env file and extract the endpoint
470
- var nextEndpoint = "";
471
- try {
472
- var contents = (0, fs_1.readFileSync)(envFile, "utf8");
473
- nextEndpoint = (_a = contents.match(/DEBUG_GRAPHQL_URL=(.*)/)) === null || _a === void 0 ? void 0 : _a[1];
474
- }
475
- catch (err) {
476
- sendSignal({
477
- code: "error",
478
- errors: ["Unable to read .env file"],
479
- });
480
- return;
481
- }
482
- if (endpoint !== nextEndpoint && nextEndpoint) {
483
- needsSchemaFetch = true;
484
- regenerate();
485
- }
486
- });
487
- }
488
- regenerate();
489
- return [2 /*return*/];
490
- });
491
- });
492
- }
493
- exports.beginWork = beginWork;
494
- function watchGlob(glob, callback) {
495
- var watcher = (0, chokidar_1.watch)(glob, {
496
- ignoreInitial: true,
497
- persistent: true,
498
- });
499
- watcher.on("ready", function () {
500
- watcher.on("all", function (event, path) {
501
- callback(path);
502
- });
503
- });
504
- return watcher;
505
- }
506
- function watchFilenames(glob, callback) {
507
- var watcher = (0, chokidar_1.watch)(glob, {
508
- ignoreInitial: true,
509
- persistent: true,
510
- });
511
- watcher.on("ready", function () {
512
- watcher.on("add", function (path) {
513
- callback(path);
514
- });
515
- watcher.on("unlink", function (path) {
516
- callback(path);
517
- });
518
- });
519
- return watcher;
520
- }
521
- function writeFileIfUnchanged(file, contents) {
522
- if ((0, fs_1.existsSync)(file)) {
523
- var existing = (0, fs_1.readFileSync)(file).toString();
524
- if (existing === contents)
525
- return;
526
- }
527
- (0, fs_1.writeFileSync)(file, contents);
528
- }
529
- function debounce(wait, fn) {
530
- var timeout;
531
- var debounced = function () {
532
- var args = [];
533
- for (var _i = 0; _i < arguments.length; _i++) {
534
- args[_i] = arguments[_i];
535
- }
536
- clearTimeout(timeout);
537
- timeout = setTimeout(function () {
538
- fn.apply(void 0, args);
539
- }, wait);
540
- };
541
- return debounced;
542
- }
543
- beginWork(worker_threads_1.workerData);
@@ -1,2 +0,0 @@
1
- import { WebpackWorkerOptions } from "./get-webpack-config";
2
- export declare function beginWork(opts: WebpackWorkerOptions): Promise<void>;
@@ -1,160 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
- function verb(n) { return function (v) { return step([n, v]); }; }
15
- function step(op) {
16
- if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
18
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
- if (y = 0, t) op = [op[0] & 2, t.value];
20
- switch (op[0]) {
21
- case 0: case 1: t = op; break;
22
- case 4: _.label++; return { value: op[1], done: false };
23
- case 5: _.label++; y = op[1]; op = [0]; continue;
24
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
- default:
26
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
- if (t[2]) _.ops.pop();
31
- _.trys.pop(); continue;
32
- }
33
- op = body.call(thisArg, _);
34
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
- }
37
- };
38
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
39
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
40
- if (ar || !(i in from)) {
41
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
42
- ar[i] = from[i];
43
- }
44
- }
45
- return to.concat(ar || Array.prototype.slice.call(from));
46
- };
47
- var __importDefault = (this && this.__importDefault) || function (mod) {
48
- return (mod && mod.__esModule) ? mod : { "default": mod };
49
- };
50
- Object.defineProperty(exports, "__esModule", { value: true });
51
- exports.beginWork = void 0;
52
- var webpack_1 = __importDefault(require("webpack"));
53
- var webpack_dev_server_1 = __importDefault(require("webpack-dev-server"));
54
- var worker_threads_1 = require("worker_threads");
55
- var get_webpack_config_1 = __importDefault(require("./get-webpack-config"));
56
- var sendSignal = function (sig) {
57
- if (worker_threads_1.parentPort) {
58
- worker_threads_1.parentPort.postMessage(sig);
59
- }
60
- };
61
- function beginWork(opts) {
62
- return __awaiter(this, void 0, void 0, function () {
63
- function extractErrorMessage(str) {
64
- return str
65
- .replace(/Module build failed[^\n]+\n/, "")
66
- .replaceAll(opts.baseDirectory, "./")
67
- .replace(/\s+at\s[\s\S]+/, "");
68
- }
69
- function webpackToCompilerError(err, type) {
70
- return {
71
- type: type,
72
- details: err.details,
73
- message: extractErrorMessage(err.message),
74
- file: err.moduleName || "",
75
- loc: err.loc,
76
- };
77
- }
78
- var compiler, _a, server;
79
- return __generator(this, function (_b) {
80
- switch (_b.label) {
81
- case 0:
82
- sendSignal({
83
- code: "compiling",
84
- });
85
- _a = webpack_1.default;
86
- return [4 /*yield*/, (0, get_webpack_config_1.default)(opts)];
87
- case 1:
88
- compiler = _a.apply(void 0, [_b.sent()]);
89
- if (opts.hotPort) {
90
- server = new webpack_dev_server_1.default(compiler, {
91
- liveReload: false,
92
- compress: true,
93
- hotOnly: true,
94
- disableHostCheck: true,
95
- host: "127.0.0.1",
96
- port: opts.hotPort,
97
- writeToDisk: true,
98
- transportMode: "ws",
99
- publicPath: "/",
100
- public: "http://127.0.0.1:" + opts.hotPort,
101
- overlay: true,
102
- sockPort: opts.hotPort,
103
- contentBase: false,
104
- noInfo: true,
105
- // quiet: true,
106
- // clientLogLevel: "silent",
107
- headers: {
108
- "Access-Control-Allow-Origin": "*",
109
- "Access-Control-Allow-Methods": "GET, POST, PUT, DELETE, PATCH, OPTIONS",
110
- "Access-Control-Allow-Headers": "X-Requested-With, content-type, Authorization",
111
- },
112
- });
113
- server.listen(opts.hotPort);
114
- }
115
- compiler.hooks.beforeCompile.tap("eddev", function () {
116
- sendSignal({
117
- code: "compiling",
118
- });
119
- });
120
- compiler.hooks.invalid.tap("eddev", function (filename) {
121
- sendSignal({
122
- code: "invalidated",
123
- changedFile: filename,
124
- });
125
- });
126
- compiler.hooks.done.tap("eddev", function (_a) {
127
- var _b, _c;
128
- var compilation = _a.compilation;
129
- var stats = compilation.getStats().toJson({
130
- all: true,
131
- errorDetails: true,
132
- errors: true,
133
- errorStack: true,
134
- errorsCount: true,
135
- colors: true,
136
- timings: true,
137
- });
138
- var errors = ((_b = stats.errors) === null || _b === void 0 ? void 0 : _b.map(function (err) { return webpackToCompilerError(err, "error"); })) || [];
139
- var warnings = ((_c = stats.warnings) === null || _c === void 0 ? void 0 : _c.map(function (err) { return webpackToCompilerError(err, "warning"); })) || [];
140
- if (errors.length) {
141
- sendSignal({
142
- code: "error",
143
- errors: __spreadArray(__spreadArray([], warnings, true), errors, true),
144
- });
145
- }
146
- else {
147
- sendSignal({
148
- code: "finished",
149
- duration: stats.time,
150
- errors: __spreadArray(__spreadArray([], warnings, true), errors, true),
151
- });
152
- }
153
- });
154
- return [2 /*return*/];
155
- }
156
- });
157
- });
158
- }
159
- exports.beginWork = beginWork;
160
- beginWork(worker_threads_1.workerData);
package/cli/generate.d.ts DELETED
@@ -1 +0,0 @@
1
- export default function generate(): Promise<void>;
package/cli/generate.js DELETED
@@ -1,46 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
- function verb(n) { return function (v) { return step([n, v]); }; }
15
- function step(op) {
16
- if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
18
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
- if (y = 0, t) op = [op[0] & 2, t.value];
20
- switch (op[0]) {
21
- case 0: case 1: t = op; break;
22
- case 4: _.label++; return { value: op[1], done: false };
23
- case 5: _.label++; y = op[1]; op = [0]; continue;
24
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
- default:
26
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
- if (t[2]) _.ops.pop();
31
- _.trys.pop(); continue;
32
- }
33
- op = body.call(thisArg, _);
34
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
- }
37
- };
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- function generate() {
40
- return __awaiter(this, void 0, void 0, function () {
41
- return __generator(this, function (_a) {
42
- throw new Error("This command has been deprecated! Please use `yarn dev` instead.");
43
- });
44
- });
45
- }
46
- exports.default = generate;