@tinacms/cli 0.0.0-8c4ebd1-20241218045206 → 0.0.0-8e4b842-20241220011109
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js
CHANGED
|
@@ -4,9 +4,6 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
4
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
5
|
var __getProtoOf = Object.getPrototypeOf;
|
|
6
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
-
var __commonJS = (cb, mod) => function __require() {
|
|
8
|
-
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
9
|
-
};
|
|
10
7
|
var __export = (target, all) => {
|
|
11
8
|
for (var name2 in all)
|
|
12
9
|
__defProp(target, name2, { get: all[name2], enumerable: true });
|
|
@@ -25,2088 +22,605 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
25
22
|
));
|
|
26
23
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
27
24
|
|
|
28
|
-
//
|
|
29
|
-
var
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
33
|
-
exports.removeExtension = exports.fileExistsAsync = exports.readJsonFromDiskAsync = exports.readJsonFromDiskSync = exports.fileExistsSync = void 0;
|
|
34
|
-
var fs15 = require("fs");
|
|
35
|
-
function fileExistsSync(path15) {
|
|
36
|
-
if (!fs15.existsSync(path15)) {
|
|
37
|
-
return false;
|
|
38
|
-
}
|
|
39
|
-
try {
|
|
40
|
-
var stats = fs15.statSync(path15);
|
|
41
|
-
return stats.isFile();
|
|
42
|
-
} catch (err) {
|
|
43
|
-
return false;
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
exports.fileExistsSync = fileExistsSync;
|
|
47
|
-
function readJsonFromDiskSync(packageJsonPath) {
|
|
48
|
-
if (!fs15.existsSync(packageJsonPath)) {
|
|
49
|
-
return void 0;
|
|
50
|
-
}
|
|
51
|
-
return require(packageJsonPath);
|
|
52
|
-
}
|
|
53
|
-
exports.readJsonFromDiskSync = readJsonFromDiskSync;
|
|
54
|
-
function readJsonFromDiskAsync(path15, callback) {
|
|
55
|
-
fs15.readFile(path15, "utf8", function(err, result) {
|
|
56
|
-
if (err || !result) {
|
|
57
|
-
return callback();
|
|
58
|
-
}
|
|
59
|
-
var json = JSON.parse(result);
|
|
60
|
-
return callback(void 0, json);
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
exports.readJsonFromDiskAsync = readJsonFromDiskAsync;
|
|
64
|
-
function fileExistsAsync(path22, callback2) {
|
|
65
|
-
fs15.stat(path22, function(err, stats) {
|
|
66
|
-
if (err) {
|
|
67
|
-
return callback2(void 0, false);
|
|
68
|
-
}
|
|
69
|
-
callback2(void 0, stats ? stats.isFile() : false);
|
|
70
|
-
});
|
|
71
|
-
}
|
|
72
|
-
exports.fileExistsAsync = fileExistsAsync;
|
|
73
|
-
function removeExtension(path15) {
|
|
74
|
-
return path15.substring(0, path15.lastIndexOf(".")) || path15;
|
|
75
|
-
}
|
|
76
|
-
exports.removeExtension = removeExtension;
|
|
77
|
-
}
|
|
25
|
+
// src/index.ts
|
|
26
|
+
var src_exports = {};
|
|
27
|
+
__export(src_exports, {
|
|
28
|
+
default: () => src_default
|
|
78
29
|
});
|
|
30
|
+
module.exports = __toCommonJS(src_exports);
|
|
31
|
+
var import_clipanion8 = require("clipanion");
|
|
79
32
|
|
|
80
|
-
//
|
|
81
|
-
var
|
|
82
|
-
"../../../node_modules/.pnpm/tsconfig-paths@4.2.0/node_modules/tsconfig-paths/lib/mapping-entry.js"(exports) {
|
|
83
|
-
"use strict";
|
|
84
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
85
|
-
exports.getAbsoluteMappingEntries = void 0;
|
|
86
|
-
var path15 = require("path");
|
|
87
|
-
function getAbsoluteMappingEntries(absoluteBaseUrl, paths, addMatchAll) {
|
|
88
|
-
var sortedKeys = sortByLongestPrefix(Object.keys(paths));
|
|
89
|
-
var absolutePaths = [];
|
|
90
|
-
for (var _i = 0, sortedKeys_1 = sortedKeys; _i < sortedKeys_1.length; _i++) {
|
|
91
|
-
var key = sortedKeys_1[_i];
|
|
92
|
-
absolutePaths.push({
|
|
93
|
-
pattern: key,
|
|
94
|
-
paths: paths[key].map(function(pathToResolve) {
|
|
95
|
-
return path15.resolve(absoluteBaseUrl, pathToResolve);
|
|
96
|
-
})
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
if (!paths["*"] && addMatchAll) {
|
|
100
|
-
absolutePaths.push({
|
|
101
|
-
pattern: "*",
|
|
102
|
-
paths: ["".concat(absoluteBaseUrl.replace(/\/$/, ""), "/*")]
|
|
103
|
-
});
|
|
104
|
-
}
|
|
105
|
-
return absolutePaths;
|
|
106
|
-
}
|
|
107
|
-
exports.getAbsoluteMappingEntries = getAbsoluteMappingEntries;
|
|
108
|
-
function sortByLongestPrefix(arr) {
|
|
109
|
-
return arr.concat().sort(function(a, b) {
|
|
110
|
-
return getPrefixLength(b) - getPrefixLength(a);
|
|
111
|
-
});
|
|
112
|
-
}
|
|
113
|
-
function getPrefixLength(pattern) {
|
|
114
|
-
var prefixLength = pattern.indexOf("*");
|
|
115
|
-
return pattern.substr(0, prefixLength).length;
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
});
|
|
33
|
+
// package.json
|
|
34
|
+
var version = "1.7.0";
|
|
119
35
|
|
|
120
|
-
//
|
|
121
|
-
var
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
var path15 = require("path");
|
|
127
|
-
var path_1 = require("path");
|
|
128
|
-
var filesystem_1 = require_filesystem();
|
|
129
|
-
function getPathsToTry(extensions, absolutePathMappings, requestedModule) {
|
|
130
|
-
if (!absolutePathMappings || !requestedModule || requestedModule[0] === ".") {
|
|
131
|
-
return void 0;
|
|
132
|
-
}
|
|
133
|
-
var pathsToTry = [];
|
|
134
|
-
for (var _i = 0, absolutePathMappings_1 = absolutePathMappings; _i < absolutePathMappings_1.length; _i++) {
|
|
135
|
-
var entry = absolutePathMappings_1[_i];
|
|
136
|
-
var starMatch = entry.pattern === requestedModule ? "" : matchStar(entry.pattern, requestedModule);
|
|
137
|
-
if (starMatch !== void 0) {
|
|
138
|
-
var _loop_1 = function(physicalPathPattern2) {
|
|
139
|
-
var physicalPath = physicalPathPattern2.replace("*", starMatch);
|
|
140
|
-
pathsToTry.push({ type: "file", path: physicalPath });
|
|
141
|
-
pathsToTry.push.apply(pathsToTry, extensions.map(function(e) {
|
|
142
|
-
return { type: "extension", path: physicalPath + e };
|
|
143
|
-
}));
|
|
144
|
-
pathsToTry.push({
|
|
145
|
-
type: "package",
|
|
146
|
-
path: path15.join(physicalPath, "/package.json")
|
|
147
|
-
});
|
|
148
|
-
var indexPath = path15.join(physicalPath, "/index");
|
|
149
|
-
pathsToTry.push.apply(pathsToTry, extensions.map(function(e) {
|
|
150
|
-
return { type: "index", path: indexPath + e };
|
|
151
|
-
}));
|
|
152
|
-
};
|
|
153
|
-
for (var _a = 0, _b = entry.paths; _a < _b.length; _a++) {
|
|
154
|
-
var physicalPathPattern = _b[_a];
|
|
155
|
-
_loop_1(physicalPathPattern);
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
return pathsToTry.length === 0 ? void 0 : pathsToTry;
|
|
160
|
-
}
|
|
161
|
-
exports.getPathsToTry = getPathsToTry;
|
|
162
|
-
function getStrippedPath(tryPath) {
|
|
163
|
-
return tryPath.type === "index" ? (0, path_1.dirname)(tryPath.path) : tryPath.type === "file" ? tryPath.path : tryPath.type === "extension" ? (0, filesystem_1.removeExtension)(tryPath.path) : tryPath.type === "package" ? tryPath.path : exhaustiveTypeException(tryPath.type);
|
|
164
|
-
}
|
|
165
|
-
exports.getStrippedPath = getStrippedPath;
|
|
166
|
-
function exhaustiveTypeException(check) {
|
|
167
|
-
throw new Error("Unknown type ".concat(check));
|
|
168
|
-
}
|
|
169
|
-
exports.exhaustiveTypeException = exhaustiveTypeException;
|
|
170
|
-
function matchStar(pattern, search) {
|
|
171
|
-
if (search.length < pattern.length) {
|
|
172
|
-
return void 0;
|
|
173
|
-
}
|
|
174
|
-
if (pattern === "*") {
|
|
175
|
-
return search;
|
|
176
|
-
}
|
|
177
|
-
var star = pattern.indexOf("*");
|
|
178
|
-
if (star === -1) {
|
|
179
|
-
return void 0;
|
|
180
|
-
}
|
|
181
|
-
var part1 = pattern.substring(0, star);
|
|
182
|
-
var part2 = pattern.substring(star + 1);
|
|
183
|
-
if (search.substr(0, star) !== part1) {
|
|
184
|
-
return void 0;
|
|
185
|
-
}
|
|
186
|
-
if (search.substr(search.length - part2.length) !== part2) {
|
|
187
|
-
return void 0;
|
|
188
|
-
}
|
|
189
|
-
return search.substr(star, search.length - part2.length);
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
});
|
|
36
|
+
// src/next/commands/dev-command/index.ts
|
|
37
|
+
var import_clipanion2 = require("clipanion");
|
|
38
|
+
var import_fs_extra6 = __toESM(require("fs-extra"));
|
|
39
|
+
var import_path5 = __toESM(require("path"));
|
|
40
|
+
var import_chokidar = __toESM(require("chokidar"));
|
|
41
|
+
var import_graphql10 = require("@tinacms/graphql");
|
|
193
42
|
|
|
194
|
-
//
|
|
195
|
-
var
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
var MappingEntry = require_mapping_entry();
|
|
203
|
-
var TryPath = require_try_path();
|
|
204
|
-
function createMatchPath(absoluteBaseUrl, paths, mainFields, addMatchAll) {
|
|
205
|
-
if (mainFields === void 0) {
|
|
206
|
-
mainFields = ["main"];
|
|
207
|
-
}
|
|
208
|
-
if (addMatchAll === void 0) {
|
|
209
|
-
addMatchAll = true;
|
|
210
|
-
}
|
|
211
|
-
var absolutePaths = MappingEntry.getAbsoluteMappingEntries(absoluteBaseUrl, paths, addMatchAll);
|
|
212
|
-
return function(requestedModule, readJson, fileExists, extensions) {
|
|
213
|
-
return matchFromAbsolutePaths(absolutePaths, requestedModule, readJson, fileExists, extensions, mainFields);
|
|
214
|
-
};
|
|
215
|
-
}
|
|
216
|
-
exports.createMatchPath = createMatchPath;
|
|
217
|
-
function matchFromAbsolutePaths(absolutePathMappings, requestedModule, readJson, fileExists, extensions, mainFields) {
|
|
218
|
-
if (readJson === void 0) {
|
|
219
|
-
readJson = Filesystem.readJsonFromDiskSync;
|
|
220
|
-
}
|
|
221
|
-
if (fileExists === void 0) {
|
|
222
|
-
fileExists = Filesystem.fileExistsSync;
|
|
223
|
-
}
|
|
224
|
-
if (extensions === void 0) {
|
|
225
|
-
extensions = Object.keys(require.extensions);
|
|
226
|
-
}
|
|
227
|
-
if (mainFields === void 0) {
|
|
228
|
-
mainFields = ["main"];
|
|
229
|
-
}
|
|
230
|
-
var tryPaths = TryPath.getPathsToTry(extensions, absolutePathMappings, requestedModule);
|
|
231
|
-
if (!tryPaths) {
|
|
232
|
-
return void 0;
|
|
233
|
-
}
|
|
234
|
-
return findFirstExistingPath(tryPaths, readJson, fileExists, mainFields);
|
|
235
|
-
}
|
|
236
|
-
exports.matchFromAbsolutePaths = matchFromAbsolutePaths;
|
|
237
|
-
function findFirstExistingMainFieldMappedFile(packageJson, mainFields, packageJsonPath, fileExists) {
|
|
238
|
-
for (var index = 0; index < mainFields.length; index++) {
|
|
239
|
-
var mainFieldSelector = mainFields[index];
|
|
240
|
-
var candidateMapping = typeof mainFieldSelector === "string" ? packageJson[mainFieldSelector] : mainFieldSelector.reduce(function(obj, key) {
|
|
241
|
-
return obj[key];
|
|
242
|
-
}, packageJson);
|
|
243
|
-
if (candidateMapping && typeof candidateMapping === "string") {
|
|
244
|
-
var candidateFilePath = path15.join(path15.dirname(packageJsonPath), candidateMapping);
|
|
245
|
-
if (fileExists(candidateFilePath)) {
|
|
246
|
-
return candidateFilePath;
|
|
247
|
-
}
|
|
248
|
-
}
|
|
249
|
-
}
|
|
250
|
-
return void 0;
|
|
251
|
-
}
|
|
252
|
-
function findFirstExistingPath(tryPaths, readJson, fileExists, mainFields) {
|
|
253
|
-
if (readJson === void 0) {
|
|
254
|
-
readJson = Filesystem.readJsonFromDiskSync;
|
|
255
|
-
}
|
|
256
|
-
if (mainFields === void 0) {
|
|
257
|
-
mainFields = ["main"];
|
|
258
|
-
}
|
|
259
|
-
for (var _i = 0, tryPaths_1 = tryPaths; _i < tryPaths_1.length; _i++) {
|
|
260
|
-
var tryPath = tryPaths_1[_i];
|
|
261
|
-
if (tryPath.type === "file" || tryPath.type === "extension" || tryPath.type === "index") {
|
|
262
|
-
if (fileExists(tryPath.path)) {
|
|
263
|
-
return TryPath.getStrippedPath(tryPath);
|
|
264
|
-
}
|
|
265
|
-
} else if (tryPath.type === "package") {
|
|
266
|
-
var packageJson = readJson(tryPath.path);
|
|
267
|
-
if (packageJson) {
|
|
268
|
-
var mainFieldMappedFile = findFirstExistingMainFieldMappedFile(packageJson, mainFields, tryPath.path, fileExists);
|
|
269
|
-
if (mainFieldMappedFile) {
|
|
270
|
-
return mainFieldMappedFile;
|
|
271
|
-
}
|
|
272
|
-
}
|
|
273
|
-
} else {
|
|
274
|
-
TryPath.exhaustiveTypeException(tryPath.type);
|
|
275
|
-
}
|
|
276
|
-
}
|
|
277
|
-
return void 0;
|
|
278
|
-
}
|
|
279
|
-
}
|
|
280
|
-
});
|
|
43
|
+
// src/next/config-manager.ts
|
|
44
|
+
var import_fs_extra = __toESM(require("fs-extra"));
|
|
45
|
+
var import_path = __toESM(require("path"));
|
|
46
|
+
var import_os = __toESM(require("os"));
|
|
47
|
+
var esbuild = __toESM(require("esbuild"));
|
|
48
|
+
var dotenv = __toESM(require("dotenv"));
|
|
49
|
+
var import_normalize_path = __toESM(require("normalize-path"));
|
|
50
|
+
var import_chalk2 = __toESM(require("chalk"));
|
|
281
51
|
|
|
282
|
-
//
|
|
283
|
-
var
|
|
284
|
-
"../../../node_modules/.pnpm/tsconfig-paths@4.2.0/node_modules/tsconfig-paths/lib/match-path-async.js"(exports) {
|
|
285
|
-
"use strict";
|
|
286
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
287
|
-
exports.matchFromAbsolutePathsAsync = exports.createMatchPathAsync = void 0;
|
|
288
|
-
var path15 = require("path");
|
|
289
|
-
var TryPath = require_try_path();
|
|
290
|
-
var MappingEntry = require_mapping_entry();
|
|
291
|
-
var Filesystem = require_filesystem();
|
|
292
|
-
function createMatchPathAsync(absoluteBaseUrl, paths, mainFields, addMatchAll) {
|
|
293
|
-
if (mainFields === void 0) {
|
|
294
|
-
mainFields = ["main"];
|
|
295
|
-
}
|
|
296
|
-
if (addMatchAll === void 0) {
|
|
297
|
-
addMatchAll = true;
|
|
298
|
-
}
|
|
299
|
-
var absolutePaths = MappingEntry.getAbsoluteMappingEntries(absoluteBaseUrl, paths, addMatchAll);
|
|
300
|
-
return function(requestedModule, readJson, fileExists, extensions, callback) {
|
|
301
|
-
return matchFromAbsolutePathsAsync(absolutePaths, requestedModule, readJson, fileExists, extensions, callback, mainFields);
|
|
302
|
-
};
|
|
303
|
-
}
|
|
304
|
-
exports.createMatchPathAsync = createMatchPathAsync;
|
|
305
|
-
function matchFromAbsolutePathsAsync(absolutePathMappings, requestedModule, readJson, fileExists, extensions, callback, mainFields) {
|
|
306
|
-
if (readJson === void 0) {
|
|
307
|
-
readJson = Filesystem.readJsonFromDiskAsync;
|
|
308
|
-
}
|
|
309
|
-
if (fileExists === void 0) {
|
|
310
|
-
fileExists = Filesystem.fileExistsAsync;
|
|
311
|
-
}
|
|
312
|
-
if (extensions === void 0) {
|
|
313
|
-
extensions = Object.keys(require.extensions);
|
|
314
|
-
}
|
|
315
|
-
if (mainFields === void 0) {
|
|
316
|
-
mainFields = ["main"];
|
|
317
|
-
}
|
|
318
|
-
var tryPaths = TryPath.getPathsToTry(extensions, absolutePathMappings, requestedModule);
|
|
319
|
-
if (!tryPaths) {
|
|
320
|
-
return callback();
|
|
321
|
-
}
|
|
322
|
-
findFirstExistingPath(tryPaths, readJson, fileExists, callback, 0, mainFields);
|
|
323
|
-
}
|
|
324
|
-
exports.matchFromAbsolutePathsAsync = matchFromAbsolutePathsAsync;
|
|
325
|
-
function findFirstExistingMainFieldMappedFile(packageJson, mainFields, packageJsonPath, fileExistsAsync, doneCallback, index) {
|
|
326
|
-
if (index === void 0) {
|
|
327
|
-
index = 0;
|
|
328
|
-
}
|
|
329
|
-
if (index >= mainFields.length) {
|
|
330
|
-
return doneCallback(void 0, void 0);
|
|
331
|
-
}
|
|
332
|
-
var tryNext = function() {
|
|
333
|
-
return findFirstExistingMainFieldMappedFile(packageJson, mainFields, packageJsonPath, fileExistsAsync, doneCallback, index + 1);
|
|
334
|
-
};
|
|
335
|
-
var mainFieldSelector = mainFields[index];
|
|
336
|
-
var mainFieldMapping = typeof mainFieldSelector === "string" ? packageJson[mainFieldSelector] : mainFieldSelector.reduce(function(obj, key) {
|
|
337
|
-
return obj[key];
|
|
338
|
-
}, packageJson);
|
|
339
|
-
if (typeof mainFieldMapping !== "string") {
|
|
340
|
-
return tryNext();
|
|
341
|
-
}
|
|
342
|
-
var mappedFilePath = path15.join(path15.dirname(packageJsonPath), mainFieldMapping);
|
|
343
|
-
fileExistsAsync(mappedFilePath, function(err, exists) {
|
|
344
|
-
if (err) {
|
|
345
|
-
return doneCallback(err);
|
|
346
|
-
}
|
|
347
|
-
if (exists) {
|
|
348
|
-
return doneCallback(void 0, mappedFilePath);
|
|
349
|
-
}
|
|
350
|
-
return tryNext();
|
|
351
|
-
});
|
|
352
|
-
}
|
|
353
|
-
function findFirstExistingPath(tryPaths, readJson, fileExists, doneCallback, index, mainFields) {
|
|
354
|
-
if (index === void 0) {
|
|
355
|
-
index = 0;
|
|
356
|
-
}
|
|
357
|
-
if (mainFields === void 0) {
|
|
358
|
-
mainFields = ["main"];
|
|
359
|
-
}
|
|
360
|
-
var tryPath = tryPaths[index];
|
|
361
|
-
if (tryPath.type === "file" || tryPath.type === "extension" || tryPath.type === "index") {
|
|
362
|
-
fileExists(tryPath.path, function(err, exists) {
|
|
363
|
-
if (err) {
|
|
364
|
-
return doneCallback(err);
|
|
365
|
-
}
|
|
366
|
-
if (exists) {
|
|
367
|
-
return doneCallback(void 0, TryPath.getStrippedPath(tryPath));
|
|
368
|
-
}
|
|
369
|
-
if (index === tryPaths.length - 1) {
|
|
370
|
-
return doneCallback();
|
|
371
|
-
}
|
|
372
|
-
return findFirstExistingPath(tryPaths, readJson, fileExists, doneCallback, index + 1, mainFields);
|
|
373
|
-
});
|
|
374
|
-
} else if (tryPath.type === "package") {
|
|
375
|
-
readJson(tryPath.path, function(err, packageJson) {
|
|
376
|
-
if (err) {
|
|
377
|
-
return doneCallback(err);
|
|
378
|
-
}
|
|
379
|
-
if (packageJson) {
|
|
380
|
-
return findFirstExistingMainFieldMappedFile(packageJson, mainFields, tryPath.path, fileExists, function(mainFieldErr, mainFieldMappedFile) {
|
|
381
|
-
if (mainFieldErr) {
|
|
382
|
-
return doneCallback(mainFieldErr);
|
|
383
|
-
}
|
|
384
|
-
if (mainFieldMappedFile) {
|
|
385
|
-
return doneCallback(void 0, mainFieldMappedFile);
|
|
386
|
-
}
|
|
387
|
-
return findFirstExistingPath(tryPaths, readJson, fileExists, doneCallback, index + 1, mainFields);
|
|
388
|
-
});
|
|
389
|
-
}
|
|
390
|
-
return findFirstExistingPath(tryPaths, readJson, fileExists, doneCallback, index + 1, mainFields);
|
|
391
|
-
});
|
|
392
|
-
} else {
|
|
393
|
-
TryPath.exhaustiveTypeException(tryPath.type);
|
|
394
|
-
}
|
|
395
|
-
}
|
|
396
|
-
}
|
|
397
|
-
});
|
|
52
|
+
// src/logger/index.ts
|
|
53
|
+
var import_chalk = __toESM(require("chalk"));
|
|
398
54
|
|
|
399
|
-
//
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
module2.exports.ID_Start = /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/;
|
|
404
|
-
module2.exports.ID_Continue = /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF9\u1D00-\u1DF9\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDE00-\uDE3E\uDE47\uDE50-\uDE83\uDE86-\uDE99\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/;
|
|
55
|
+
// src/logger/is-unicode-supported.ts
|
|
56
|
+
function isUnicodeSupported() {
|
|
57
|
+
if (process.platform !== "win32") {
|
|
58
|
+
return process.env.TERM !== "linux";
|
|
405
59
|
}
|
|
406
|
-
}
|
|
60
|
+
return Boolean(process.env.CI) || Boolean(process.env.WT_SESSION) || Boolean(process.env.TERMINUS_SUBLIME) || process.env.ConEmuTask === "{cmd::Cmder}" || process.env.TERM_PROGRAM === "Terminus-Sublime" || process.env.TERM_PROGRAM === "vscode" || process.env.TERM === "xterm-256color" || process.env.TERM === "alacritty" || process.env.TERMINAL_EMULATOR === "JetBrains-JediTerm";
|
|
61
|
+
}
|
|
407
62
|
|
|
408
|
-
//
|
|
409
|
-
var
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
63
|
+
// src/logger/index.ts
|
|
64
|
+
var import_log4js = __toESM(require("log4js"));
|
|
65
|
+
var logger = import_log4js.default.getLogger();
|
|
66
|
+
import_log4js.default.configure({
|
|
67
|
+
appenders: {
|
|
68
|
+
out: { type: "stdout", layout: { type: "messagePassThrough" } }
|
|
69
|
+
},
|
|
70
|
+
categories: { default: { appenders: ["out"], level: "info" } }
|
|
71
|
+
});
|
|
72
|
+
logger.level = "info";
|
|
73
|
+
function ansiRegex() {
|
|
74
|
+
const pattern = [
|
|
75
|
+
"[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
|
|
76
|
+
"(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"
|
|
77
|
+
].join("|");
|
|
78
|
+
return new RegExp(pattern, "g");
|
|
79
|
+
}
|
|
80
|
+
var bar = "\u2502";
|
|
81
|
+
var strip = (str) => str.replace(ansiRegex(), "");
|
|
82
|
+
var note = (message = "", title = "") => {
|
|
83
|
+
const lines = `
|
|
84
|
+
${message}
|
|
85
|
+
`.split("\n");
|
|
86
|
+
const len = lines.reduce((sum, ln) => {
|
|
87
|
+
ln = strip(ln);
|
|
88
|
+
return ln.length > sum ? ln.length : sum;
|
|
89
|
+
}, 0) + 2;
|
|
90
|
+
const msg = lines.map(
|
|
91
|
+
(ln) => `${import_chalk.default.gray(bar)} ${import_chalk.default.white(ln)}${" ".repeat(
|
|
92
|
+
len - strip(ln).length
|
|
93
|
+
)}${import_chalk.default.gray(bar)}`
|
|
94
|
+
).join("\n");
|
|
95
|
+
const underscoreLen = len - title.length - 1 > 0 ? len - title.length - 1 : 0;
|
|
96
|
+
process.stdout.write(
|
|
97
|
+
`${import_chalk.default.gray(bar)}
|
|
98
|
+
${import_chalk.default.green("\u25CB")} ${import_chalk.default.reset(
|
|
99
|
+
title
|
|
100
|
+
)} ${import_chalk.default.gray("\u2500".repeat(underscoreLen) + "\u256E")}
|
|
101
|
+
${msg}
|
|
102
|
+
${import_chalk.default.gray(
|
|
103
|
+
"\u251C" + "\u2500".repeat(len + 2) + "\u256F"
|
|
104
|
+
)}
|
|
105
|
+
`
|
|
106
|
+
);
|
|
107
|
+
};
|
|
108
|
+
var summary = (content) => {
|
|
109
|
+
const outString = [];
|
|
110
|
+
let longestKey = 0;
|
|
111
|
+
content.items.forEach((item) => {
|
|
112
|
+
item.subItems.forEach((subItem) => {
|
|
113
|
+
if (subItem.key.length > longestKey) {
|
|
114
|
+
longestKey = subItem.key.length;
|
|
427
115
|
}
|
|
428
|
-
};
|
|
116
|
+
});
|
|
117
|
+
});
|
|
118
|
+
content.items.forEach((item) => {
|
|
119
|
+
outString.push(`${item.emoji} ${import_chalk.default.cyan(item.heading)}`);
|
|
120
|
+
item.subItems.forEach((subItem) => {
|
|
121
|
+
const spaces = longestKey - subItem.key.length + 4;
|
|
122
|
+
outString.push(
|
|
123
|
+
` ${subItem.key}:${[...Array(spaces)].join(" ")}${import_chalk.default.cyan(
|
|
124
|
+
subItem.value
|
|
125
|
+
)}`
|
|
126
|
+
);
|
|
127
|
+
});
|
|
128
|
+
outString.push(``);
|
|
129
|
+
});
|
|
130
|
+
if (process.env.CI) {
|
|
131
|
+
logger.info(JSON.stringify(content, null, 2));
|
|
132
|
+
} else {
|
|
133
|
+
note(outString.join("\n"), content.heading);
|
|
429
134
|
}
|
|
430
|
-
}
|
|
135
|
+
};
|
|
136
|
+
var unicode = isUnicodeSupported();
|
|
137
|
+
var s = (c, fallback) => unicode ? c : fallback;
|
|
138
|
+
var S_STEP_ACTIVE = s("\u25C6", "*");
|
|
139
|
+
var S_STEP_CANCEL = s("\u25A0", "x");
|
|
140
|
+
var S_STEP_ERROR = s("\u25B2", "x");
|
|
141
|
+
var S_STEP_SUBMIT = s("\u25C7", "o");
|
|
142
|
+
var S_BAR_START = s("\u250C", "T");
|
|
143
|
+
var S_BAR = s("\u2502", "|");
|
|
144
|
+
var S_BAR_END = s("\u2514", "\u2014");
|
|
145
|
+
var S_RADIO_ACTIVE = s("\u25CF", ">");
|
|
146
|
+
var S_RADIO_INACTIVE = s("\u25CB", " ");
|
|
147
|
+
var S_CHECKBOX_ACTIVE = s("\u25FB", "[\u2022]");
|
|
148
|
+
var S_CHECKBOX_SELECTED = s("\u25FC", "[+]");
|
|
149
|
+
var S_CHECKBOX_INACTIVE = s("\u25FB", "[ ]");
|
|
150
|
+
var S_PASSWORD_MASK = s("\u25AA", "\u2022");
|
|
151
|
+
var S_BAR_H = s("\u2500", "-");
|
|
152
|
+
var S_CORNER_TOP_RIGHT = s("\u256E", "+");
|
|
153
|
+
var S_CONNECT_LEFT = s("\u251C", "+");
|
|
154
|
+
var S_CORNER_BOTTOM_RIGHT = s("\u256F", "+");
|
|
155
|
+
var S_INFO = s("\u25CF", "\u2022");
|
|
156
|
+
var S_SUCCESS = s("\u25C6", "*");
|
|
157
|
+
var S_WARN = s("\u25B2", "!");
|
|
158
|
+
var S_ERROR = s("\u25A0", "x");
|
|
431
159
|
|
|
432
|
-
//
|
|
433
|
-
var
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
return
|
|
463
|
-
};
|
|
464
|
-
function internalize(holder, name2, reviver) {
|
|
465
|
-
const value = holder[name2];
|
|
466
|
-
if (value != null && typeof value === "object") {
|
|
467
|
-
if (Array.isArray(value)) {
|
|
468
|
-
for (let i = 0; i < value.length; i++) {
|
|
469
|
-
const key2 = String(i);
|
|
470
|
-
const replacement = internalize(value, key2, reviver);
|
|
471
|
-
if (replacement === void 0) {
|
|
472
|
-
delete value[key2];
|
|
473
|
-
} else {
|
|
474
|
-
Object.defineProperty(value, key2, {
|
|
475
|
-
value: replacement,
|
|
476
|
-
writable: true,
|
|
477
|
-
enumerable: true,
|
|
478
|
-
configurable: true
|
|
479
|
-
});
|
|
480
|
-
}
|
|
481
|
-
}
|
|
482
|
-
} else {
|
|
483
|
-
for (const key2 in value) {
|
|
484
|
-
const replacement = internalize(value, key2, reviver);
|
|
485
|
-
if (replacement === void 0) {
|
|
486
|
-
delete value[key2];
|
|
487
|
-
} else {
|
|
488
|
-
Object.defineProperty(value, key2, {
|
|
489
|
-
value: replacement,
|
|
490
|
-
writable: true,
|
|
491
|
-
enumerable: true,
|
|
492
|
-
configurable: true
|
|
493
|
-
});
|
|
494
|
-
}
|
|
495
|
-
}
|
|
496
|
-
}
|
|
497
|
-
}
|
|
498
|
-
return reviver.call(holder, name2, value);
|
|
499
|
-
}
|
|
500
|
-
var lexState;
|
|
501
|
-
var buffer;
|
|
502
|
-
var doubleQuote;
|
|
503
|
-
var sign;
|
|
504
|
-
var c;
|
|
505
|
-
function lex() {
|
|
506
|
-
lexState = "default";
|
|
507
|
-
buffer = "";
|
|
508
|
-
doubleQuote = false;
|
|
509
|
-
sign = 1;
|
|
510
|
-
for (; ; ) {
|
|
511
|
-
c = peek();
|
|
512
|
-
const token2 = lexStates[lexState]();
|
|
513
|
-
if (token2) {
|
|
514
|
-
return token2;
|
|
515
|
-
}
|
|
516
|
-
}
|
|
517
|
-
}
|
|
518
|
-
function peek() {
|
|
519
|
-
if (source[pos]) {
|
|
520
|
-
return String.fromCodePoint(source.codePointAt(pos));
|
|
521
|
-
}
|
|
522
|
-
}
|
|
523
|
-
function read() {
|
|
524
|
-
const c2 = peek();
|
|
525
|
-
if (c2 === "\n") {
|
|
526
|
-
line++;
|
|
527
|
-
column = 0;
|
|
528
|
-
} else if (c2) {
|
|
529
|
-
column += c2.length;
|
|
530
|
-
} else {
|
|
531
|
-
column++;
|
|
532
|
-
}
|
|
533
|
-
if (c2) {
|
|
534
|
-
pos += c2.length;
|
|
535
|
-
}
|
|
536
|
-
return c2;
|
|
537
|
-
}
|
|
538
|
-
var lexStates = {
|
|
539
|
-
default() {
|
|
540
|
-
switch (c) {
|
|
541
|
-
case " ":
|
|
542
|
-
case "\v":
|
|
543
|
-
case "\f":
|
|
544
|
-
case " ":
|
|
545
|
-
case "\xA0":
|
|
546
|
-
case "\uFEFF":
|
|
547
|
-
case "\n":
|
|
548
|
-
case "\r":
|
|
549
|
-
case "\u2028":
|
|
550
|
-
case "\u2029":
|
|
551
|
-
read();
|
|
552
|
-
return;
|
|
553
|
-
case "/":
|
|
554
|
-
read();
|
|
555
|
-
lexState = "comment";
|
|
556
|
-
return;
|
|
557
|
-
case void 0:
|
|
558
|
-
read();
|
|
559
|
-
return newToken("eof");
|
|
560
|
-
}
|
|
561
|
-
if (util.isSpaceSeparator(c)) {
|
|
562
|
-
read();
|
|
563
|
-
return;
|
|
564
|
-
}
|
|
565
|
-
return lexStates[parseState]();
|
|
566
|
-
},
|
|
567
|
-
comment() {
|
|
568
|
-
switch (c) {
|
|
569
|
-
case "*":
|
|
570
|
-
read();
|
|
571
|
-
lexState = "multiLineComment";
|
|
572
|
-
return;
|
|
573
|
-
case "/":
|
|
574
|
-
read();
|
|
575
|
-
lexState = "singleLineComment";
|
|
576
|
-
return;
|
|
577
|
-
}
|
|
578
|
-
throw invalidChar(read());
|
|
579
|
-
},
|
|
580
|
-
multiLineComment() {
|
|
581
|
-
switch (c) {
|
|
582
|
-
case "*":
|
|
583
|
-
read();
|
|
584
|
-
lexState = "multiLineCommentAsterisk";
|
|
585
|
-
return;
|
|
586
|
-
case void 0:
|
|
587
|
-
throw invalidChar(read());
|
|
588
|
-
}
|
|
589
|
-
read();
|
|
590
|
-
},
|
|
591
|
-
multiLineCommentAsterisk() {
|
|
592
|
-
switch (c) {
|
|
593
|
-
case "*":
|
|
594
|
-
read();
|
|
595
|
-
return;
|
|
596
|
-
case "/":
|
|
597
|
-
read();
|
|
598
|
-
lexState = "default";
|
|
599
|
-
return;
|
|
600
|
-
case void 0:
|
|
601
|
-
throw invalidChar(read());
|
|
602
|
-
}
|
|
603
|
-
read();
|
|
604
|
-
lexState = "multiLineComment";
|
|
605
|
-
},
|
|
606
|
-
singleLineComment() {
|
|
607
|
-
switch (c) {
|
|
608
|
-
case "\n":
|
|
609
|
-
case "\r":
|
|
610
|
-
case "\u2028":
|
|
611
|
-
case "\u2029":
|
|
612
|
-
read();
|
|
613
|
-
lexState = "default";
|
|
614
|
-
return;
|
|
615
|
-
case void 0:
|
|
616
|
-
read();
|
|
617
|
-
return newToken("eof");
|
|
618
|
-
}
|
|
619
|
-
read();
|
|
620
|
-
},
|
|
621
|
-
value() {
|
|
622
|
-
switch (c) {
|
|
623
|
-
case "{":
|
|
624
|
-
case "[":
|
|
625
|
-
return newToken("punctuator", read());
|
|
626
|
-
case "n":
|
|
627
|
-
read();
|
|
628
|
-
literal("ull");
|
|
629
|
-
return newToken("null", null);
|
|
630
|
-
case "t":
|
|
631
|
-
read();
|
|
632
|
-
literal("rue");
|
|
633
|
-
return newToken("boolean", true);
|
|
634
|
-
case "f":
|
|
635
|
-
read();
|
|
636
|
-
literal("alse");
|
|
637
|
-
return newToken("boolean", false);
|
|
638
|
-
case "-":
|
|
639
|
-
case "+":
|
|
640
|
-
if (read() === "-") {
|
|
641
|
-
sign = -1;
|
|
642
|
-
}
|
|
643
|
-
lexState = "sign";
|
|
644
|
-
return;
|
|
645
|
-
case ".":
|
|
646
|
-
buffer = read();
|
|
647
|
-
lexState = "decimalPointLeading";
|
|
648
|
-
return;
|
|
649
|
-
case "0":
|
|
650
|
-
buffer = read();
|
|
651
|
-
lexState = "zero";
|
|
652
|
-
return;
|
|
653
|
-
case "1":
|
|
654
|
-
case "2":
|
|
655
|
-
case "3":
|
|
656
|
-
case "4":
|
|
657
|
-
case "5":
|
|
658
|
-
case "6":
|
|
659
|
-
case "7":
|
|
660
|
-
case "8":
|
|
661
|
-
case "9":
|
|
662
|
-
buffer = read();
|
|
663
|
-
lexState = "decimalInteger";
|
|
664
|
-
return;
|
|
665
|
-
case "I":
|
|
666
|
-
read();
|
|
667
|
-
literal("nfinity");
|
|
668
|
-
return newToken("numeric", Infinity);
|
|
669
|
-
case "N":
|
|
670
|
-
read();
|
|
671
|
-
literal("aN");
|
|
672
|
-
return newToken("numeric", NaN);
|
|
673
|
-
case '"':
|
|
674
|
-
case "'":
|
|
675
|
-
doubleQuote = read() === '"';
|
|
676
|
-
buffer = "";
|
|
677
|
-
lexState = "string";
|
|
678
|
-
return;
|
|
679
|
-
}
|
|
680
|
-
throw invalidChar(read());
|
|
681
|
-
},
|
|
682
|
-
identifierNameStartEscape() {
|
|
683
|
-
if (c !== "u") {
|
|
684
|
-
throw invalidChar(read());
|
|
685
|
-
}
|
|
686
|
-
read();
|
|
687
|
-
const u = unicodeEscape();
|
|
688
|
-
switch (u) {
|
|
689
|
-
case "$":
|
|
690
|
-
case "_":
|
|
691
|
-
break;
|
|
692
|
-
default:
|
|
693
|
-
if (!util.isIdStartChar(u)) {
|
|
694
|
-
throw invalidIdentifier();
|
|
695
|
-
}
|
|
696
|
-
break;
|
|
697
|
-
}
|
|
698
|
-
buffer += u;
|
|
699
|
-
lexState = "identifierName";
|
|
700
|
-
},
|
|
701
|
-
identifierName() {
|
|
702
|
-
switch (c) {
|
|
703
|
-
case "$":
|
|
704
|
-
case "_":
|
|
705
|
-
case "\u200C":
|
|
706
|
-
case "\u200D":
|
|
707
|
-
buffer += read();
|
|
708
|
-
return;
|
|
709
|
-
case "\\":
|
|
710
|
-
read();
|
|
711
|
-
lexState = "identifierNameEscape";
|
|
712
|
-
return;
|
|
713
|
-
}
|
|
714
|
-
if (util.isIdContinueChar(c)) {
|
|
715
|
-
buffer += read();
|
|
716
|
-
return;
|
|
717
|
-
}
|
|
718
|
-
return newToken("identifier", buffer);
|
|
719
|
-
},
|
|
720
|
-
identifierNameEscape() {
|
|
721
|
-
if (c !== "u") {
|
|
722
|
-
throw invalidChar(read());
|
|
723
|
-
}
|
|
724
|
-
read();
|
|
725
|
-
const u = unicodeEscape();
|
|
726
|
-
switch (u) {
|
|
727
|
-
case "$":
|
|
728
|
-
case "_":
|
|
729
|
-
case "\u200C":
|
|
730
|
-
case "\u200D":
|
|
731
|
-
break;
|
|
732
|
-
default:
|
|
733
|
-
if (!util.isIdContinueChar(u)) {
|
|
734
|
-
throw invalidIdentifier();
|
|
735
|
-
}
|
|
736
|
-
break;
|
|
737
|
-
}
|
|
738
|
-
buffer += u;
|
|
739
|
-
lexState = "identifierName";
|
|
740
|
-
},
|
|
741
|
-
sign() {
|
|
742
|
-
switch (c) {
|
|
743
|
-
case ".":
|
|
744
|
-
buffer = read();
|
|
745
|
-
lexState = "decimalPointLeading";
|
|
746
|
-
return;
|
|
747
|
-
case "0":
|
|
748
|
-
buffer = read();
|
|
749
|
-
lexState = "zero";
|
|
750
|
-
return;
|
|
751
|
-
case "1":
|
|
752
|
-
case "2":
|
|
753
|
-
case "3":
|
|
754
|
-
case "4":
|
|
755
|
-
case "5":
|
|
756
|
-
case "6":
|
|
757
|
-
case "7":
|
|
758
|
-
case "8":
|
|
759
|
-
case "9":
|
|
760
|
-
buffer = read();
|
|
761
|
-
lexState = "decimalInteger";
|
|
762
|
-
return;
|
|
763
|
-
case "I":
|
|
764
|
-
read();
|
|
765
|
-
literal("nfinity");
|
|
766
|
-
return newToken("numeric", sign * Infinity);
|
|
767
|
-
case "N":
|
|
768
|
-
read();
|
|
769
|
-
literal("aN");
|
|
770
|
-
return newToken("numeric", NaN);
|
|
771
|
-
}
|
|
772
|
-
throw invalidChar(read());
|
|
773
|
-
},
|
|
774
|
-
zero() {
|
|
775
|
-
switch (c) {
|
|
776
|
-
case ".":
|
|
777
|
-
buffer += read();
|
|
778
|
-
lexState = "decimalPoint";
|
|
779
|
-
return;
|
|
780
|
-
case "e":
|
|
781
|
-
case "E":
|
|
782
|
-
buffer += read();
|
|
783
|
-
lexState = "decimalExponent";
|
|
784
|
-
return;
|
|
785
|
-
case "x":
|
|
786
|
-
case "X":
|
|
787
|
-
buffer += read();
|
|
788
|
-
lexState = "hexadecimal";
|
|
789
|
-
return;
|
|
790
|
-
}
|
|
791
|
-
return newToken("numeric", sign * 0);
|
|
792
|
-
},
|
|
793
|
-
decimalInteger() {
|
|
794
|
-
switch (c) {
|
|
795
|
-
case ".":
|
|
796
|
-
buffer += read();
|
|
797
|
-
lexState = "decimalPoint";
|
|
798
|
-
return;
|
|
799
|
-
case "e":
|
|
800
|
-
case "E":
|
|
801
|
-
buffer += read();
|
|
802
|
-
lexState = "decimalExponent";
|
|
803
|
-
return;
|
|
804
|
-
}
|
|
805
|
-
if (util.isDigit(c)) {
|
|
806
|
-
buffer += read();
|
|
807
|
-
return;
|
|
808
|
-
}
|
|
809
|
-
return newToken("numeric", sign * Number(buffer));
|
|
810
|
-
},
|
|
811
|
-
decimalPointLeading() {
|
|
812
|
-
if (util.isDigit(c)) {
|
|
813
|
-
buffer += read();
|
|
814
|
-
lexState = "decimalFraction";
|
|
815
|
-
return;
|
|
816
|
-
}
|
|
817
|
-
throw invalidChar(read());
|
|
818
|
-
},
|
|
819
|
-
decimalPoint() {
|
|
820
|
-
switch (c) {
|
|
821
|
-
case "e":
|
|
822
|
-
case "E":
|
|
823
|
-
buffer += read();
|
|
824
|
-
lexState = "decimalExponent";
|
|
825
|
-
return;
|
|
826
|
-
}
|
|
827
|
-
if (util.isDigit(c)) {
|
|
828
|
-
buffer += read();
|
|
829
|
-
lexState = "decimalFraction";
|
|
830
|
-
return;
|
|
831
|
-
}
|
|
832
|
-
return newToken("numeric", sign * Number(buffer));
|
|
833
|
-
},
|
|
834
|
-
decimalFraction() {
|
|
835
|
-
switch (c) {
|
|
836
|
-
case "e":
|
|
837
|
-
case "E":
|
|
838
|
-
buffer += read();
|
|
839
|
-
lexState = "decimalExponent";
|
|
840
|
-
return;
|
|
841
|
-
}
|
|
842
|
-
if (util.isDigit(c)) {
|
|
843
|
-
buffer += read();
|
|
844
|
-
return;
|
|
845
|
-
}
|
|
846
|
-
return newToken("numeric", sign * Number(buffer));
|
|
847
|
-
},
|
|
848
|
-
decimalExponent() {
|
|
849
|
-
switch (c) {
|
|
850
|
-
case "+":
|
|
851
|
-
case "-":
|
|
852
|
-
buffer += read();
|
|
853
|
-
lexState = "decimalExponentSign";
|
|
854
|
-
return;
|
|
855
|
-
}
|
|
856
|
-
if (util.isDigit(c)) {
|
|
857
|
-
buffer += read();
|
|
858
|
-
lexState = "decimalExponentInteger";
|
|
859
|
-
return;
|
|
860
|
-
}
|
|
861
|
-
throw invalidChar(read());
|
|
862
|
-
},
|
|
863
|
-
decimalExponentSign() {
|
|
864
|
-
if (util.isDigit(c)) {
|
|
865
|
-
buffer += read();
|
|
866
|
-
lexState = "decimalExponentInteger";
|
|
867
|
-
return;
|
|
868
|
-
}
|
|
869
|
-
throw invalidChar(read());
|
|
870
|
-
},
|
|
871
|
-
decimalExponentInteger() {
|
|
872
|
-
if (util.isDigit(c)) {
|
|
873
|
-
buffer += read();
|
|
874
|
-
return;
|
|
875
|
-
}
|
|
876
|
-
return newToken("numeric", sign * Number(buffer));
|
|
877
|
-
},
|
|
878
|
-
hexadecimal() {
|
|
879
|
-
if (util.isHexDigit(c)) {
|
|
880
|
-
buffer += read();
|
|
881
|
-
lexState = "hexadecimalInteger";
|
|
882
|
-
return;
|
|
883
|
-
}
|
|
884
|
-
throw invalidChar(read());
|
|
885
|
-
},
|
|
886
|
-
hexadecimalInteger() {
|
|
887
|
-
if (util.isHexDigit(c)) {
|
|
888
|
-
buffer += read();
|
|
889
|
-
return;
|
|
890
|
-
}
|
|
891
|
-
return newToken("numeric", sign * Number(buffer));
|
|
892
|
-
},
|
|
893
|
-
string() {
|
|
894
|
-
switch (c) {
|
|
895
|
-
case "\\":
|
|
896
|
-
read();
|
|
897
|
-
buffer += escape();
|
|
898
|
-
return;
|
|
899
|
-
case '"':
|
|
900
|
-
if (doubleQuote) {
|
|
901
|
-
read();
|
|
902
|
-
return newToken("string", buffer);
|
|
903
|
-
}
|
|
904
|
-
buffer += read();
|
|
905
|
-
return;
|
|
906
|
-
case "'":
|
|
907
|
-
if (!doubleQuote) {
|
|
908
|
-
read();
|
|
909
|
-
return newToken("string", buffer);
|
|
910
|
-
}
|
|
911
|
-
buffer += read();
|
|
912
|
-
return;
|
|
913
|
-
case "\n":
|
|
914
|
-
case "\r":
|
|
915
|
-
throw invalidChar(read());
|
|
916
|
-
case "\u2028":
|
|
917
|
-
case "\u2029":
|
|
918
|
-
separatorChar(c);
|
|
919
|
-
break;
|
|
920
|
-
case void 0:
|
|
921
|
-
throw invalidChar(read());
|
|
922
|
-
}
|
|
923
|
-
buffer += read();
|
|
924
|
-
},
|
|
925
|
-
start() {
|
|
926
|
-
switch (c) {
|
|
927
|
-
case "{":
|
|
928
|
-
case "[":
|
|
929
|
-
return newToken("punctuator", read());
|
|
930
|
-
}
|
|
931
|
-
lexState = "value";
|
|
932
|
-
},
|
|
933
|
-
beforePropertyName() {
|
|
934
|
-
switch (c) {
|
|
935
|
-
case "$":
|
|
936
|
-
case "_":
|
|
937
|
-
buffer = read();
|
|
938
|
-
lexState = "identifierName";
|
|
939
|
-
return;
|
|
940
|
-
case "\\":
|
|
941
|
-
read();
|
|
942
|
-
lexState = "identifierNameStartEscape";
|
|
943
|
-
return;
|
|
944
|
-
case "}":
|
|
945
|
-
return newToken("punctuator", read());
|
|
946
|
-
case '"':
|
|
947
|
-
case "'":
|
|
948
|
-
doubleQuote = read() === '"';
|
|
949
|
-
lexState = "string";
|
|
950
|
-
return;
|
|
951
|
-
}
|
|
952
|
-
if (util.isIdStartChar(c)) {
|
|
953
|
-
buffer += read();
|
|
954
|
-
lexState = "identifierName";
|
|
955
|
-
return;
|
|
956
|
-
}
|
|
957
|
-
throw invalidChar(read());
|
|
958
|
-
},
|
|
959
|
-
afterPropertyName() {
|
|
960
|
-
if (c === ":") {
|
|
961
|
-
return newToken("punctuator", read());
|
|
962
|
-
}
|
|
963
|
-
throw invalidChar(read());
|
|
964
|
-
},
|
|
965
|
-
beforePropertyValue() {
|
|
966
|
-
lexState = "value";
|
|
967
|
-
},
|
|
968
|
-
afterPropertyValue() {
|
|
969
|
-
switch (c) {
|
|
970
|
-
case ",":
|
|
971
|
-
case "}":
|
|
972
|
-
return newToken("punctuator", read());
|
|
973
|
-
}
|
|
974
|
-
throw invalidChar(read());
|
|
975
|
-
},
|
|
976
|
-
beforeArrayValue() {
|
|
977
|
-
if (c === "]") {
|
|
978
|
-
return newToken("punctuator", read());
|
|
979
|
-
}
|
|
980
|
-
lexState = "value";
|
|
981
|
-
},
|
|
982
|
-
afterArrayValue() {
|
|
983
|
-
switch (c) {
|
|
984
|
-
case ",":
|
|
985
|
-
case "]":
|
|
986
|
-
return newToken("punctuator", read());
|
|
987
|
-
}
|
|
988
|
-
throw invalidChar(read());
|
|
989
|
-
},
|
|
990
|
-
end() {
|
|
991
|
-
throw invalidChar(read());
|
|
992
|
-
}
|
|
993
|
-
};
|
|
994
|
-
function newToken(type, value) {
|
|
995
|
-
return {
|
|
996
|
-
type,
|
|
997
|
-
value,
|
|
998
|
-
line,
|
|
999
|
-
column
|
|
1000
|
-
};
|
|
160
|
+
// src/next/config-manager.ts
|
|
161
|
+
var TINA_FOLDER = "tina";
|
|
162
|
+
var LEGACY_TINA_FOLDER = ".tina";
|
|
163
|
+
var GENERATED_FOLDER = "__generated__";
|
|
164
|
+
var GRAPHQL_JSON_FILE = "_graphql.json";
|
|
165
|
+
var GRAPHQL_GQL_FILE = "schema.gql";
|
|
166
|
+
var SCHEMA_JSON_FILE = "_schema.json";
|
|
167
|
+
var LOOKUP_JSON_FILE = "_lookup.json";
|
|
168
|
+
var ConfigManager = class {
|
|
169
|
+
constructor({
|
|
170
|
+
rootPath = process.cwd(),
|
|
171
|
+
tinaGraphQLVersion,
|
|
172
|
+
legacyNoSDK
|
|
173
|
+
}) {
|
|
174
|
+
this.rootPath = (0, import_normalize_path.default)(rootPath);
|
|
175
|
+
this.tinaGraphQLVersionFromCLI = tinaGraphQLVersion;
|
|
176
|
+
this.legacyNoSDK = legacyNoSDK;
|
|
177
|
+
}
|
|
178
|
+
isUsingTs() {
|
|
179
|
+
return [".ts", ".tsx"].includes(import_path.default.extname(this.tinaConfigFilePath));
|
|
180
|
+
}
|
|
181
|
+
hasSelfHostedConfig() {
|
|
182
|
+
return !!this.selfHostedDatabaseFilePath;
|
|
183
|
+
}
|
|
184
|
+
hasSeparateContentRoot() {
|
|
185
|
+
return this.rootPath !== this.contentRootPath;
|
|
186
|
+
}
|
|
187
|
+
shouldSkipSDK() {
|
|
188
|
+
var _a;
|
|
189
|
+
if (this.legacyNoSDK) {
|
|
190
|
+
return this.legacyNoSDK;
|
|
1001
191
|
}
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
|
|
192
|
+
return ((_a = this.config.client) == null ? void 0 : _a.skip) || false;
|
|
193
|
+
}
|
|
194
|
+
async processConfig() {
|
|
195
|
+
this.tinaFolderPath = await this.getTinaFolderPath(this.rootPath);
|
|
196
|
+
this.envFilePath = import_path.default.resolve(
|
|
197
|
+
import_path.default.join(this.tinaFolderPath, "..", ".env")
|
|
198
|
+
);
|
|
199
|
+
dotenv.config({ path: this.envFilePath });
|
|
200
|
+
this.tinaConfigFilePath = await this.getPathWithExtension(
|
|
201
|
+
import_path.default.join(this.tinaFolderPath, "config")
|
|
202
|
+
);
|
|
203
|
+
if (!this.tinaConfigFilePath) {
|
|
204
|
+
throw new Error(
|
|
205
|
+
`Unable to find config file in ${this.tinaFolderPath}. Looking for a file named "config.{ts,tsx,js,jsx}"`
|
|
206
|
+
);
|
|
1010
207
|
}
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
|
|
1026
|
-
|
|
1027
|
-
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
|
|
1031
|
-
|
|
1032
|
-
|
|
1033
|
-
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1062
|
-
|
|
1063
|
-
|
|
1064
|
-
|
|
1065
|
-
|
|
1066
|
-
|
|
208
|
+
this.selfHostedDatabaseFilePath = await this.getPathWithExtension(
|
|
209
|
+
import_path.default.join(this.tinaFolderPath, "database")
|
|
210
|
+
);
|
|
211
|
+
this.generatedFolderPath = import_path.default.join(this.tinaFolderPath, GENERATED_FOLDER);
|
|
212
|
+
this.generatedCachePath = import_path.default.join(
|
|
213
|
+
this.generatedFolderPath,
|
|
214
|
+
".cache",
|
|
215
|
+
String(new Date().getTime())
|
|
216
|
+
);
|
|
217
|
+
this.generatedGraphQLGQLPath = import_path.default.join(
|
|
218
|
+
this.generatedFolderPath,
|
|
219
|
+
GRAPHQL_GQL_FILE
|
|
220
|
+
);
|
|
221
|
+
this.generatedGraphQLJSONPath = import_path.default.join(
|
|
222
|
+
this.generatedFolderPath,
|
|
223
|
+
GRAPHQL_JSON_FILE
|
|
224
|
+
);
|
|
225
|
+
this.generatedSchemaJSONPath = import_path.default.join(
|
|
226
|
+
this.generatedFolderPath,
|
|
227
|
+
SCHEMA_JSON_FILE
|
|
228
|
+
);
|
|
229
|
+
this.generatedLookupJSONPath = import_path.default.join(
|
|
230
|
+
this.generatedFolderPath,
|
|
231
|
+
LOOKUP_JSON_FILE
|
|
232
|
+
);
|
|
233
|
+
this.generatedQueriesFilePath = import_path.default.join(
|
|
234
|
+
this.generatedFolderPath,
|
|
235
|
+
"queries.gql"
|
|
236
|
+
);
|
|
237
|
+
this.generatedFragmentsFilePath = import_path.default.join(
|
|
238
|
+
this.generatedFolderPath,
|
|
239
|
+
"frags.gql"
|
|
240
|
+
);
|
|
241
|
+
this.generatedTypesTSFilePath = import_path.default.join(
|
|
242
|
+
this.generatedFolderPath,
|
|
243
|
+
"types.ts"
|
|
244
|
+
);
|
|
245
|
+
this.generatedTypesJSFilePath = import_path.default.join(
|
|
246
|
+
this.generatedFolderPath,
|
|
247
|
+
"types.js"
|
|
248
|
+
);
|
|
249
|
+
this.generatedTypesDFilePath = import_path.default.join(
|
|
250
|
+
this.generatedFolderPath,
|
|
251
|
+
"types.d.ts"
|
|
252
|
+
);
|
|
253
|
+
this.userQueriesAndFragmentsGlob = import_path.default.join(
|
|
254
|
+
this.tinaFolderPath,
|
|
255
|
+
"queries/**/*.{graphql,gql}"
|
|
256
|
+
);
|
|
257
|
+
this.generatedQueriesAndFragmentsGlob = import_path.default.join(
|
|
258
|
+
this.generatedFolderPath,
|
|
259
|
+
"*.{graphql,gql}"
|
|
260
|
+
);
|
|
261
|
+
this.generatedClientTSFilePath = import_path.default.join(
|
|
262
|
+
this.generatedFolderPath,
|
|
263
|
+
"client.ts"
|
|
264
|
+
);
|
|
265
|
+
this.generatedClientJSFilePath = import_path.default.join(
|
|
266
|
+
this.generatedFolderPath,
|
|
267
|
+
"client.js"
|
|
268
|
+
);
|
|
269
|
+
this.generatedClientDFilePath = import_path.default.join(
|
|
270
|
+
this.generatedFolderPath,
|
|
271
|
+
"client.d.ts"
|
|
272
|
+
);
|
|
273
|
+
this.generatedDatabaseClientDFilePath = import_path.default.join(
|
|
274
|
+
this.generatedFolderPath,
|
|
275
|
+
"databaseClient.d.ts"
|
|
276
|
+
);
|
|
277
|
+
this.generatedDatabaseClientTSFilePath = import_path.default.join(
|
|
278
|
+
this.generatedFolderPath,
|
|
279
|
+
"databaseClient.ts"
|
|
280
|
+
);
|
|
281
|
+
this.generatedDatabaseClientJSFilePath = import_path.default.join(
|
|
282
|
+
this.generatedFolderPath,
|
|
283
|
+
"databaseClient.js"
|
|
284
|
+
);
|
|
285
|
+
const clientExists = this.isUsingTs() ? await import_fs_extra.default.pathExists(this.generatedClientTSFilePath) : await import_fs_extra.default.pathExists(this.generatedClientJSFilePath);
|
|
286
|
+
if (!clientExists) {
|
|
287
|
+
const file = "export default ()=>({})\nexport const client = ()=>({})";
|
|
288
|
+
if (this.isUsingTs()) {
|
|
289
|
+
await import_fs_extra.default.outputFile(this.generatedClientTSFilePath, file);
|
|
290
|
+
} else {
|
|
291
|
+
await import_fs_extra.default.outputFile(this.generatedClientJSFilePath, file);
|
|
1067
292
|
}
|
|
1068
|
-
return read();
|
|
1069
293
|
}
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
294
|
+
const { config: config2, prebuildPath, watchList } = await this.loadConfigFile(
|
|
295
|
+
this.generatedFolderPath,
|
|
296
|
+
this.tinaConfigFilePath
|
|
297
|
+
);
|
|
298
|
+
this.watchList = watchList;
|
|
299
|
+
this.config = config2;
|
|
300
|
+
this.prebuildFilePath = prebuildPath;
|
|
301
|
+
this.publicFolderPath = import_path.default.join(
|
|
302
|
+
this.rootPath,
|
|
303
|
+
this.config.build.publicFolder
|
|
304
|
+
);
|
|
305
|
+
this.outputFolderPath = import_path.default.join(
|
|
306
|
+
this.publicFolderPath,
|
|
307
|
+
this.config.build.outputFolder
|
|
308
|
+
);
|
|
309
|
+
this.outputHTMLFilePath = import_path.default.join(this.outputFolderPath, "index.html");
|
|
310
|
+
this.outputGitignorePath = import_path.default.join(this.outputFolderPath, ".gitignore");
|
|
311
|
+
const fullLocalContentPath = import_path.default.join(
|
|
312
|
+
this.tinaFolderPath,
|
|
313
|
+
this.config.localContentPath || ""
|
|
314
|
+
);
|
|
315
|
+
if (this.config.localContentPath) {
|
|
316
|
+
const localContentPathExists = await import_fs_extra.default.pathExists(fullLocalContentPath);
|
|
317
|
+
if (localContentPathExists) {
|
|
318
|
+
logger.info(`Using separate content repo at ${fullLocalContentPath}`);
|
|
319
|
+
this.contentRootPath = fullLocalContentPath;
|
|
320
|
+
} else {
|
|
321
|
+
logger.warn(
|
|
322
|
+
`${import_chalk2.default.yellow("Warning:")} The localContentPath ${import_chalk2.default.cyan(
|
|
323
|
+
fullLocalContentPath
|
|
324
|
+
)} does not exist. Please create it or remove the localContentPath from your config file at ${import_chalk2.default.cyan(
|
|
325
|
+
this.tinaConfigFilePath
|
|
326
|
+
)}`
|
|
327
|
+
);
|
|
1093
328
|
}
|
|
1094
|
-
return String.fromCodePoint(parseInt(buffer2, 16));
|
|
1095
329
|
}
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
if (token.type === "eof") {
|
|
1099
|
-
throw invalidEOF();
|
|
1100
|
-
}
|
|
1101
|
-
push();
|
|
1102
|
-
},
|
|
1103
|
-
beforePropertyName() {
|
|
1104
|
-
switch (token.type) {
|
|
1105
|
-
case "identifier":
|
|
1106
|
-
case "string":
|
|
1107
|
-
key = token.value;
|
|
1108
|
-
parseState = "afterPropertyName";
|
|
1109
|
-
return;
|
|
1110
|
-
case "punctuator":
|
|
1111
|
-
pop();
|
|
1112
|
-
return;
|
|
1113
|
-
case "eof":
|
|
1114
|
-
throw invalidEOF();
|
|
1115
|
-
}
|
|
1116
|
-
},
|
|
1117
|
-
afterPropertyName() {
|
|
1118
|
-
if (token.type === "eof") {
|
|
1119
|
-
throw invalidEOF();
|
|
1120
|
-
}
|
|
1121
|
-
parseState = "beforePropertyValue";
|
|
1122
|
-
},
|
|
1123
|
-
beforePropertyValue() {
|
|
1124
|
-
if (token.type === "eof") {
|
|
1125
|
-
throw invalidEOF();
|
|
1126
|
-
}
|
|
1127
|
-
push();
|
|
1128
|
-
},
|
|
1129
|
-
beforeArrayValue() {
|
|
1130
|
-
if (token.type === "eof") {
|
|
1131
|
-
throw invalidEOF();
|
|
1132
|
-
}
|
|
1133
|
-
if (token.type === "punctuator" && token.value === "]") {
|
|
1134
|
-
pop();
|
|
1135
|
-
return;
|
|
1136
|
-
}
|
|
1137
|
-
push();
|
|
1138
|
-
},
|
|
1139
|
-
afterPropertyValue() {
|
|
1140
|
-
if (token.type === "eof") {
|
|
1141
|
-
throw invalidEOF();
|
|
1142
|
-
}
|
|
1143
|
-
switch (token.value) {
|
|
1144
|
-
case ",":
|
|
1145
|
-
parseState = "beforePropertyName";
|
|
1146
|
-
return;
|
|
1147
|
-
case "}":
|
|
1148
|
-
pop();
|
|
1149
|
-
}
|
|
1150
|
-
},
|
|
1151
|
-
afterArrayValue() {
|
|
1152
|
-
if (token.type === "eof") {
|
|
1153
|
-
throw invalidEOF();
|
|
1154
|
-
}
|
|
1155
|
-
switch (token.value) {
|
|
1156
|
-
case ",":
|
|
1157
|
-
parseState = "beforeArrayValue";
|
|
1158
|
-
return;
|
|
1159
|
-
case "]":
|
|
1160
|
-
pop();
|
|
1161
|
-
}
|
|
1162
|
-
},
|
|
1163
|
-
end() {
|
|
1164
|
-
}
|
|
1165
|
-
};
|
|
1166
|
-
function push() {
|
|
1167
|
-
let value;
|
|
1168
|
-
switch (token.type) {
|
|
1169
|
-
case "punctuator":
|
|
1170
|
-
switch (token.value) {
|
|
1171
|
-
case "{":
|
|
1172
|
-
value = {};
|
|
1173
|
-
break;
|
|
1174
|
-
case "[":
|
|
1175
|
-
value = [];
|
|
1176
|
-
break;
|
|
1177
|
-
}
|
|
1178
|
-
break;
|
|
1179
|
-
case "null":
|
|
1180
|
-
case "boolean":
|
|
1181
|
-
case "numeric":
|
|
1182
|
-
case "string":
|
|
1183
|
-
value = token.value;
|
|
1184
|
-
break;
|
|
1185
|
-
}
|
|
1186
|
-
if (root === void 0) {
|
|
1187
|
-
root = value;
|
|
1188
|
-
} else {
|
|
1189
|
-
const parent = stack[stack.length - 1];
|
|
1190
|
-
if (Array.isArray(parent)) {
|
|
1191
|
-
parent.push(value);
|
|
1192
|
-
} else {
|
|
1193
|
-
Object.defineProperty(parent, key, {
|
|
1194
|
-
value,
|
|
1195
|
-
writable: true,
|
|
1196
|
-
enumerable: true,
|
|
1197
|
-
configurable: true
|
|
1198
|
-
});
|
|
1199
|
-
}
|
|
1200
|
-
}
|
|
1201
|
-
if (value !== null && typeof value === "object") {
|
|
1202
|
-
stack.push(value);
|
|
1203
|
-
if (Array.isArray(value)) {
|
|
1204
|
-
parseState = "beforeArrayValue";
|
|
1205
|
-
} else {
|
|
1206
|
-
parseState = "beforePropertyName";
|
|
1207
|
-
}
|
|
1208
|
-
} else {
|
|
1209
|
-
const current = stack[stack.length - 1];
|
|
1210
|
-
if (current == null) {
|
|
1211
|
-
parseState = "end";
|
|
1212
|
-
} else if (Array.isArray(current)) {
|
|
1213
|
-
parseState = "afterArrayValue";
|
|
1214
|
-
} else {
|
|
1215
|
-
parseState = "afterPropertyValue";
|
|
1216
|
-
}
|
|
1217
|
-
}
|
|
1218
|
-
}
|
|
1219
|
-
function pop() {
|
|
1220
|
-
stack.pop();
|
|
1221
|
-
const current = stack[stack.length - 1];
|
|
1222
|
-
if (current == null) {
|
|
1223
|
-
parseState = "end";
|
|
1224
|
-
} else if (Array.isArray(current)) {
|
|
1225
|
-
parseState = "afterArrayValue";
|
|
1226
|
-
} else {
|
|
1227
|
-
parseState = "afterPropertyValue";
|
|
1228
|
-
}
|
|
330
|
+
if (!this.contentRootPath) {
|
|
331
|
+
this.contentRootPath = this.rootPath;
|
|
1229
332
|
}
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
|
-
|
|
1233
|
-
|
|
1234
|
-
|
|
1235
|
-
|
|
1236
|
-
|
|
1237
|
-
|
|
1238
|
-
|
|
1239
|
-
|
|
1240
|
-
|
|
1241
|
-
|
|
1242
|
-
|
|
1243
|
-
function separatorChar(c2) {
|
|
1244
|
-
console.warn(`JSON5: '${formatChar(c2)}' in strings is not valid ECMAScript; consider escaping`);
|
|
1245
|
-
}
|
|
1246
|
-
function formatChar(c2) {
|
|
1247
|
-
const replacements = {
|
|
1248
|
-
"'": "\\'",
|
|
1249
|
-
'"': '\\"',
|
|
1250
|
-
"\\": "\\\\",
|
|
1251
|
-
"\b": "\\b",
|
|
1252
|
-
"\f": "\\f",
|
|
1253
|
-
"\n": "\\n",
|
|
1254
|
-
"\r": "\\r",
|
|
1255
|
-
" ": "\\t",
|
|
1256
|
-
"\v": "\\v",
|
|
1257
|
-
"\0": "\\0",
|
|
1258
|
-
"\u2028": "\\u2028",
|
|
1259
|
-
"\u2029": "\\u2029"
|
|
1260
|
-
};
|
|
1261
|
-
if (replacements[c2]) {
|
|
1262
|
-
return replacements[c2];
|
|
1263
|
-
}
|
|
1264
|
-
if (c2 < " ") {
|
|
1265
|
-
const hexString = c2.charCodeAt(0).toString(16);
|
|
1266
|
-
return "\\x" + ("00" + hexString).substring(hexString.length);
|
|
1267
|
-
}
|
|
1268
|
-
return c2;
|
|
333
|
+
this.generatedFolderPathContentRepo = import_path.default.join(
|
|
334
|
+
await this.getTinaFolderPath(this.contentRootPath),
|
|
335
|
+
GENERATED_FOLDER
|
|
336
|
+
);
|
|
337
|
+
this.spaMainPath = require.resolve("@tinacms/app");
|
|
338
|
+
this.spaRootPath = import_path.default.join(this.spaMainPath, "..", "..");
|
|
339
|
+
}
|
|
340
|
+
async getTinaFolderPath(rootPath) {
|
|
341
|
+
const tinaFolderPath = import_path.default.join(rootPath, TINA_FOLDER);
|
|
342
|
+
const tinaFolderExists = await import_fs_extra.default.pathExists(tinaFolderPath);
|
|
343
|
+
if (tinaFolderExists) {
|
|
344
|
+
this.isUsingLegacyFolder = false;
|
|
345
|
+
return tinaFolderPath;
|
|
1269
346
|
}
|
|
1270
|
-
|
|
1271
|
-
|
|
1272
|
-
|
|
1273
|
-
|
|
1274
|
-
return
|
|
347
|
+
const legacyFolderPath = import_path.default.join(rootPath, LEGACY_TINA_FOLDER);
|
|
348
|
+
const legacyFolderExists = await import_fs_extra.default.pathExists(legacyFolderPath);
|
|
349
|
+
if (legacyFolderExists) {
|
|
350
|
+
this.isUsingLegacyFolder = true;
|
|
351
|
+
return legacyFolderPath;
|
|
1275
352
|
}
|
|
353
|
+
throw new Error(
|
|
354
|
+
`Unable to find Tina folder, if you're working in folder outside of the Tina config be sure to specify --rootPath`
|
|
355
|
+
);
|
|
1276
356
|
}
|
|
1277
|
-
|
|
1278
|
-
|
|
1279
|
-
|
|
1280
|
-
var require_stringify = __commonJS({
|
|
1281
|
-
"../../../node_modules/.pnpm/json5@2.2.3/node_modules/json5/lib/stringify.js"(exports, module2) {
|
|
1282
|
-
var util = require_util();
|
|
1283
|
-
module2.exports = function stringify(value, replacer, space) {
|
|
1284
|
-
const stack = [];
|
|
1285
|
-
let indent = "";
|
|
1286
|
-
let propertyList;
|
|
1287
|
-
let replacerFunc;
|
|
1288
|
-
let gap = "";
|
|
1289
|
-
let quote;
|
|
1290
|
-
if (replacer != null && typeof replacer === "object" && !Array.isArray(replacer)) {
|
|
1291
|
-
space = replacer.space;
|
|
1292
|
-
quote = replacer.quote;
|
|
1293
|
-
replacer = replacer.replacer;
|
|
1294
|
-
}
|
|
1295
|
-
if (typeof replacer === "function") {
|
|
1296
|
-
replacerFunc = replacer;
|
|
1297
|
-
} else if (Array.isArray(replacer)) {
|
|
1298
|
-
propertyList = [];
|
|
1299
|
-
for (const v of replacer) {
|
|
1300
|
-
let item;
|
|
1301
|
-
if (typeof v === "string") {
|
|
1302
|
-
item = v;
|
|
1303
|
-
} else if (typeof v === "number" || v instanceof String || v instanceof Number) {
|
|
1304
|
-
item = String(v);
|
|
1305
|
-
}
|
|
1306
|
-
if (item !== void 0 && propertyList.indexOf(item) < 0) {
|
|
1307
|
-
propertyList.push(item);
|
|
1308
|
-
}
|
|
1309
|
-
}
|
|
1310
|
-
}
|
|
1311
|
-
if (space instanceof Number) {
|
|
1312
|
-
space = Number(space);
|
|
1313
|
-
} else if (space instanceof String) {
|
|
1314
|
-
space = String(space);
|
|
1315
|
-
}
|
|
1316
|
-
if (typeof space === "number") {
|
|
1317
|
-
if (space > 0) {
|
|
1318
|
-
space = Math.min(10, Math.floor(space));
|
|
1319
|
-
gap = " ".substr(0, space);
|
|
1320
|
-
}
|
|
1321
|
-
} else if (typeof space === "string") {
|
|
1322
|
-
gap = space.substr(0, 10);
|
|
1323
|
-
}
|
|
1324
|
-
return serializeProperty("", { "": value });
|
|
1325
|
-
function serializeProperty(key, holder) {
|
|
1326
|
-
let value2 = holder[key];
|
|
1327
|
-
if (value2 != null) {
|
|
1328
|
-
if (typeof value2.toJSON5 === "function") {
|
|
1329
|
-
value2 = value2.toJSON5(key);
|
|
1330
|
-
} else if (typeof value2.toJSON === "function") {
|
|
1331
|
-
value2 = value2.toJSON(key);
|
|
1332
|
-
}
|
|
1333
|
-
}
|
|
1334
|
-
if (replacerFunc) {
|
|
1335
|
-
value2 = replacerFunc.call(holder, key, value2);
|
|
1336
|
-
}
|
|
1337
|
-
if (value2 instanceof Number) {
|
|
1338
|
-
value2 = Number(value2);
|
|
1339
|
-
} else if (value2 instanceof String) {
|
|
1340
|
-
value2 = String(value2);
|
|
1341
|
-
} else if (value2 instanceof Boolean) {
|
|
1342
|
-
value2 = value2.valueOf();
|
|
1343
|
-
}
|
|
1344
|
-
switch (value2) {
|
|
1345
|
-
case null:
|
|
1346
|
-
return "null";
|
|
1347
|
-
case true:
|
|
1348
|
-
return "true";
|
|
1349
|
-
case false:
|
|
1350
|
-
return "false";
|
|
1351
|
-
}
|
|
1352
|
-
if (typeof value2 === "string") {
|
|
1353
|
-
return quoteString(value2, false);
|
|
1354
|
-
}
|
|
1355
|
-
if (typeof value2 === "number") {
|
|
1356
|
-
return String(value2);
|
|
1357
|
-
}
|
|
1358
|
-
if (typeof value2 === "object") {
|
|
1359
|
-
return Array.isArray(value2) ? serializeArray(value2) : serializeObject(value2);
|
|
1360
|
-
}
|
|
1361
|
-
return void 0;
|
|
1362
|
-
}
|
|
1363
|
-
function quoteString(value2) {
|
|
1364
|
-
const quotes = {
|
|
1365
|
-
"'": 0.1,
|
|
1366
|
-
'"': 0.2
|
|
1367
|
-
};
|
|
1368
|
-
const replacements = {
|
|
1369
|
-
"'": "\\'",
|
|
1370
|
-
'"': '\\"',
|
|
1371
|
-
"\\": "\\\\",
|
|
1372
|
-
"\b": "\\b",
|
|
1373
|
-
"\f": "\\f",
|
|
1374
|
-
"\n": "\\n",
|
|
1375
|
-
"\r": "\\r",
|
|
1376
|
-
" ": "\\t",
|
|
1377
|
-
"\v": "\\v",
|
|
1378
|
-
"\0": "\\0",
|
|
1379
|
-
"\u2028": "\\u2028",
|
|
1380
|
-
"\u2029": "\\u2029"
|
|
1381
|
-
};
|
|
1382
|
-
let product = "";
|
|
1383
|
-
for (let i = 0; i < value2.length; i++) {
|
|
1384
|
-
const c = value2[i];
|
|
1385
|
-
switch (c) {
|
|
1386
|
-
case "'":
|
|
1387
|
-
case '"':
|
|
1388
|
-
quotes[c]++;
|
|
1389
|
-
product += c;
|
|
1390
|
-
continue;
|
|
1391
|
-
case "\0":
|
|
1392
|
-
if (util.isDigit(value2[i + 1])) {
|
|
1393
|
-
product += "\\x00";
|
|
1394
|
-
continue;
|
|
1395
|
-
}
|
|
1396
|
-
}
|
|
1397
|
-
if (replacements[c]) {
|
|
1398
|
-
product += replacements[c];
|
|
1399
|
-
continue;
|
|
1400
|
-
}
|
|
1401
|
-
if (c < " ") {
|
|
1402
|
-
let hexString = c.charCodeAt(0).toString(16);
|
|
1403
|
-
product += "\\x" + ("00" + hexString).substring(hexString.length);
|
|
1404
|
-
continue;
|
|
1405
|
-
}
|
|
1406
|
-
product += c;
|
|
1407
|
-
}
|
|
1408
|
-
const quoteChar = quote || Object.keys(quotes).reduce((a, b) => quotes[a] < quotes[b] ? a : b);
|
|
1409
|
-
product = product.replace(new RegExp(quoteChar, "g"), replacements[quoteChar]);
|
|
1410
|
-
return quoteChar + product + quoteChar;
|
|
1411
|
-
}
|
|
1412
|
-
function serializeObject(value2) {
|
|
1413
|
-
if (stack.indexOf(value2) >= 0) {
|
|
1414
|
-
throw TypeError("Converting circular structure to JSON5");
|
|
1415
|
-
}
|
|
1416
|
-
stack.push(value2);
|
|
1417
|
-
let stepback = indent;
|
|
1418
|
-
indent = indent + gap;
|
|
1419
|
-
let keys = propertyList || Object.keys(value2);
|
|
1420
|
-
let partial = [];
|
|
1421
|
-
for (const key of keys) {
|
|
1422
|
-
const propertyString = serializeProperty(key, value2);
|
|
1423
|
-
if (propertyString !== void 0) {
|
|
1424
|
-
let member = serializeKey(key) + ":";
|
|
1425
|
-
if (gap !== "") {
|
|
1426
|
-
member += " ";
|
|
1427
|
-
}
|
|
1428
|
-
member += propertyString;
|
|
1429
|
-
partial.push(member);
|
|
1430
|
-
}
|
|
1431
|
-
}
|
|
1432
|
-
let final;
|
|
1433
|
-
if (partial.length === 0) {
|
|
1434
|
-
final = "{}";
|
|
1435
|
-
} else {
|
|
1436
|
-
let properties;
|
|
1437
|
-
if (gap === "") {
|
|
1438
|
-
properties = partial.join(",");
|
|
1439
|
-
final = "{" + properties + "}";
|
|
1440
|
-
} else {
|
|
1441
|
-
let separator = ",\n" + indent;
|
|
1442
|
-
properties = partial.join(separator);
|
|
1443
|
-
final = "{\n" + indent + properties + ",\n" + stepback + "}";
|
|
1444
|
-
}
|
|
1445
|
-
}
|
|
1446
|
-
stack.pop();
|
|
1447
|
-
indent = stepback;
|
|
1448
|
-
return final;
|
|
1449
|
-
}
|
|
1450
|
-
function serializeKey(key) {
|
|
1451
|
-
if (key.length === 0) {
|
|
1452
|
-
return quoteString(key, true);
|
|
1453
|
-
}
|
|
1454
|
-
const firstChar = String.fromCodePoint(key.codePointAt(0));
|
|
1455
|
-
if (!util.isIdStartChar(firstChar)) {
|
|
1456
|
-
return quoteString(key, true);
|
|
1457
|
-
}
|
|
1458
|
-
for (let i = firstChar.length; i < key.length; i++) {
|
|
1459
|
-
if (!util.isIdContinueChar(String.fromCodePoint(key.codePointAt(i)))) {
|
|
1460
|
-
return quoteString(key, true);
|
|
1461
|
-
}
|
|
1462
|
-
}
|
|
1463
|
-
return key;
|
|
1464
|
-
}
|
|
1465
|
-
function serializeArray(value2) {
|
|
1466
|
-
if (stack.indexOf(value2) >= 0) {
|
|
1467
|
-
throw TypeError("Converting circular structure to JSON5");
|
|
1468
|
-
}
|
|
1469
|
-
stack.push(value2);
|
|
1470
|
-
let stepback = indent;
|
|
1471
|
-
indent = indent + gap;
|
|
1472
|
-
let partial = [];
|
|
1473
|
-
for (let i = 0; i < value2.length; i++) {
|
|
1474
|
-
const propertyString = serializeProperty(String(i), value2);
|
|
1475
|
-
partial.push(propertyString !== void 0 ? propertyString : "null");
|
|
1476
|
-
}
|
|
1477
|
-
let final;
|
|
1478
|
-
if (partial.length === 0) {
|
|
1479
|
-
final = "[]";
|
|
1480
|
-
} else {
|
|
1481
|
-
if (gap === "") {
|
|
1482
|
-
let properties = partial.join(",");
|
|
1483
|
-
final = "[" + properties + "]";
|
|
1484
|
-
} else {
|
|
1485
|
-
let separator = ",\n" + indent;
|
|
1486
|
-
let properties = partial.join(separator);
|
|
1487
|
-
final = "[\n" + indent + properties + ",\n" + stepback + "]";
|
|
1488
|
-
}
|
|
1489
|
-
}
|
|
1490
|
-
stack.pop();
|
|
1491
|
-
indent = stepback;
|
|
1492
|
-
return final;
|
|
1493
|
-
}
|
|
1494
|
-
};
|
|
1495
|
-
}
|
|
1496
|
-
});
|
|
1497
|
-
|
|
1498
|
-
// ../../../node_modules/.pnpm/json5@2.2.3/node_modules/json5/lib/index.js
|
|
1499
|
-
var require_lib = __commonJS({
|
|
1500
|
-
"../../../node_modules/.pnpm/json5@2.2.3/node_modules/json5/lib/index.js"(exports, module2) {
|
|
1501
|
-
var parse2 = require_parse();
|
|
1502
|
-
var stringify = require_stringify();
|
|
1503
|
-
var JSON5 = {
|
|
1504
|
-
parse: parse2,
|
|
1505
|
-
stringify
|
|
1506
|
-
};
|
|
1507
|
-
module2.exports = JSON5;
|
|
1508
|
-
}
|
|
1509
|
-
});
|
|
1510
|
-
|
|
1511
|
-
// ../../../node_modules/.pnpm/strip-bom@3.0.0/node_modules/strip-bom/index.js
|
|
1512
|
-
var require_strip_bom = __commonJS({
|
|
1513
|
-
"../../../node_modules/.pnpm/strip-bom@3.0.0/node_modules/strip-bom/index.js"(exports, module2) {
|
|
1514
|
-
"use strict";
|
|
1515
|
-
module2.exports = (x) => {
|
|
1516
|
-
if (typeof x !== "string") {
|
|
1517
|
-
throw new TypeError("Expected a string, got " + typeof x);
|
|
1518
|
-
}
|
|
1519
|
-
if (x.charCodeAt(0) === 65279) {
|
|
1520
|
-
return x.slice(1);
|
|
1521
|
-
}
|
|
1522
|
-
return x;
|
|
1523
|
-
};
|
|
1524
|
-
}
|
|
1525
|
-
});
|
|
1526
|
-
|
|
1527
|
-
// ../../../node_modules/.pnpm/tsconfig-paths@4.2.0/node_modules/tsconfig-paths/lib/tsconfig-loader.js
|
|
1528
|
-
var require_tsconfig_loader = __commonJS({
|
|
1529
|
-
"../../../node_modules/.pnpm/tsconfig-paths@4.2.0/node_modules/tsconfig-paths/lib/tsconfig-loader.js"(exports) {
|
|
1530
|
-
"use strict";
|
|
1531
|
-
var __assign = exports && exports.__assign || function() {
|
|
1532
|
-
__assign = Object.assign || function(t) {
|
|
1533
|
-
for (var s2, i = 1, n = arguments.length; i < n; i++) {
|
|
1534
|
-
s2 = arguments[i];
|
|
1535
|
-
for (var p in s2)
|
|
1536
|
-
if (Object.prototype.hasOwnProperty.call(s2, p))
|
|
1537
|
-
t[p] = s2[p];
|
|
1538
|
-
}
|
|
1539
|
-
return t;
|
|
1540
|
-
};
|
|
1541
|
-
return __assign.apply(this, arguments);
|
|
1542
|
-
};
|
|
1543
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
1544
|
-
exports.loadTsconfig = exports.walkForTsConfig = exports.tsConfigLoader = void 0;
|
|
1545
|
-
var path15 = require("path");
|
|
1546
|
-
var fs15 = require("fs");
|
|
1547
|
-
var JSON5 = require_lib();
|
|
1548
|
-
var StripBom = require_strip_bom();
|
|
1549
|
-
function tsConfigLoader(_a) {
|
|
1550
|
-
var getEnv = _a.getEnv, cwd = _a.cwd, _b = _a.loadSync, loadSync = _b === void 0 ? loadSyncDefault : _b;
|
|
1551
|
-
var TS_NODE_PROJECT = getEnv("TS_NODE_PROJECT");
|
|
1552
|
-
var TS_NODE_BASEURL = getEnv("TS_NODE_BASEURL");
|
|
1553
|
-
var loadResult = loadSync(cwd, TS_NODE_PROJECT, TS_NODE_BASEURL);
|
|
1554
|
-
return loadResult;
|
|
1555
|
-
}
|
|
1556
|
-
exports.tsConfigLoader = tsConfigLoader;
|
|
1557
|
-
function loadSyncDefault(cwd, filename, baseUrl) {
|
|
1558
|
-
var configPath = resolveConfigPath(cwd, filename);
|
|
1559
|
-
if (!configPath) {
|
|
1560
|
-
return {
|
|
1561
|
-
tsConfigPath: void 0,
|
|
1562
|
-
baseUrl: void 0,
|
|
1563
|
-
paths: void 0
|
|
1564
|
-
};
|
|
1565
|
-
}
|
|
1566
|
-
var config2 = loadTsconfig(configPath);
|
|
357
|
+
getTinaGraphQLVersion() {
|
|
358
|
+
if (this.tinaGraphQLVersionFromCLI) {
|
|
359
|
+
const version2 = this.tinaGraphQLVersionFromCLI.split(".");
|
|
1567
360
|
return {
|
|
1568
|
-
|
|
1569
|
-
|
|
1570
|
-
|
|
361
|
+
fullVersion: this.tinaGraphQLVersionFromCLI,
|
|
362
|
+
major: version2[0] || "x",
|
|
363
|
+
minor: version2[1] || "x",
|
|
364
|
+
patch: version2[2] || "x"
|
|
1571
365
|
};
|
|
1572
366
|
}
|
|
1573
|
-
|
|
1574
|
-
|
|
1575
|
-
|
|
1576
|
-
|
|
1577
|
-
|
|
1578
|
-
if (fs15.statSync(cwd).isFile()) {
|
|
1579
|
-
return path15.resolve(cwd);
|
|
1580
|
-
}
|
|
1581
|
-
var configAbsolutePath = walkForTsConfig(cwd);
|
|
1582
|
-
return configAbsolutePath ? path15.resolve(configAbsolutePath) : void 0;
|
|
1583
|
-
}
|
|
1584
|
-
function walkForTsConfig(directory, readdirSync) {
|
|
1585
|
-
if (readdirSync === void 0) {
|
|
1586
|
-
readdirSync = fs15.readdirSync;
|
|
1587
|
-
}
|
|
1588
|
-
var files = readdirSync(directory);
|
|
1589
|
-
var filesToCheck = ["tsconfig.json", "jsconfig.json"];
|
|
1590
|
-
for (var _i = 0, filesToCheck_1 = filesToCheck; _i < filesToCheck_1.length; _i++) {
|
|
1591
|
-
var fileToCheck = filesToCheck_1[_i];
|
|
1592
|
-
if (files.indexOf(fileToCheck) !== -1) {
|
|
1593
|
-
return path15.join(directory, fileToCheck);
|
|
1594
|
-
}
|
|
1595
|
-
}
|
|
1596
|
-
var parentDirectory = path15.dirname(directory);
|
|
1597
|
-
if (directory === parentDirectory) {
|
|
1598
|
-
return void 0;
|
|
1599
|
-
}
|
|
1600
|
-
return walkForTsConfig(parentDirectory, readdirSync);
|
|
1601
|
-
}
|
|
1602
|
-
exports.walkForTsConfig = walkForTsConfig;
|
|
1603
|
-
function loadTsconfig(configFilePath, existsSync, readFileSync) {
|
|
1604
|
-
if (existsSync === void 0) {
|
|
1605
|
-
existsSync = fs15.existsSync;
|
|
1606
|
-
}
|
|
1607
|
-
if (readFileSync === void 0) {
|
|
1608
|
-
readFileSync = function(filename) {
|
|
1609
|
-
return fs15.readFileSync(filename, "utf8");
|
|
1610
|
-
};
|
|
1611
|
-
}
|
|
1612
|
-
if (!existsSync(configFilePath)) {
|
|
1613
|
-
return void 0;
|
|
1614
|
-
}
|
|
1615
|
-
var configString = readFileSync(configFilePath);
|
|
1616
|
-
var cleanedJson = StripBom(configString);
|
|
1617
|
-
var config2;
|
|
1618
|
-
try {
|
|
1619
|
-
config2 = JSON5.parse(cleanedJson);
|
|
1620
|
-
} catch (e) {
|
|
1621
|
-
throw new Error("".concat(configFilePath, " is malformed ").concat(e.message));
|
|
1622
|
-
}
|
|
1623
|
-
var extendedConfig = config2.extends;
|
|
1624
|
-
if (extendedConfig) {
|
|
1625
|
-
var base = void 0;
|
|
1626
|
-
if (Array.isArray(extendedConfig)) {
|
|
1627
|
-
base = extendedConfig.reduce(function(currBase, extendedConfigElement) {
|
|
1628
|
-
return mergeTsconfigs(currBase, loadTsconfigFromExtends(configFilePath, extendedConfigElement, existsSync, readFileSync));
|
|
1629
|
-
}, {});
|
|
1630
|
-
} else {
|
|
1631
|
-
base = loadTsconfigFromExtends(configFilePath, extendedConfig, existsSync, readFileSync);
|
|
1632
|
-
}
|
|
1633
|
-
return mergeTsconfigs(base, config2);
|
|
1634
|
-
}
|
|
1635
|
-
return config2;
|
|
1636
|
-
}
|
|
1637
|
-
exports.loadTsconfig = loadTsconfig;
|
|
1638
|
-
function loadTsconfigFromExtends(configFilePath, extendedConfigValue, existsSync, readFileSync) {
|
|
1639
|
-
var _a;
|
|
1640
|
-
if (typeof extendedConfigValue === "string" && extendedConfigValue.indexOf(".json") === -1) {
|
|
1641
|
-
extendedConfigValue += ".json";
|
|
1642
|
-
}
|
|
1643
|
-
var currentDir = path15.dirname(configFilePath);
|
|
1644
|
-
var extendedConfigPath = path15.join(currentDir, extendedConfigValue);
|
|
1645
|
-
if (extendedConfigValue.indexOf("/") !== -1 && extendedConfigValue.indexOf(".") !== -1 && !existsSync(extendedConfigPath)) {
|
|
1646
|
-
extendedConfigPath = path15.join(currentDir, "node_modules", extendedConfigValue);
|
|
1647
|
-
}
|
|
1648
|
-
var config2 = loadTsconfig(extendedConfigPath, existsSync, readFileSync) || {};
|
|
1649
|
-
if ((_a = config2.compilerOptions) === null || _a === void 0 ? void 0 : _a.baseUrl) {
|
|
1650
|
-
var extendsDir = path15.dirname(extendedConfigValue);
|
|
1651
|
-
config2.compilerOptions.baseUrl = path15.join(extendsDir, config2.compilerOptions.baseUrl);
|
|
1652
|
-
}
|
|
1653
|
-
return config2;
|
|
1654
|
-
}
|
|
1655
|
-
function mergeTsconfigs(base, config2) {
|
|
1656
|
-
base = base || {};
|
|
1657
|
-
config2 = config2 || {};
|
|
1658
|
-
return __assign(__assign(__assign({}, base), config2), { compilerOptions: __assign(__assign({}, base.compilerOptions), config2.compilerOptions) });
|
|
367
|
+
const generatedSchema = import_fs_extra.default.readJSONSync(this.generatedSchemaJSONPath);
|
|
368
|
+
if (!generatedSchema || !(typeof (generatedSchema == null ? void 0 : generatedSchema.version) !== "undefined")) {
|
|
369
|
+
throw new Error(
|
|
370
|
+
`Can not find Tina GraphQL version in ${this.generatedSchemaJSONPath}`
|
|
371
|
+
);
|
|
1659
372
|
}
|
|
373
|
+
return generatedSchema.version;
|
|
1660
374
|
}
|
|
1661
|
-
|
|
1662
|
-
|
|
1663
|
-
|
|
1664
|
-
var require_config_loader = __commonJS({
|
|
1665
|
-
"../../../node_modules/.pnpm/tsconfig-paths@4.2.0/node_modules/tsconfig-paths/lib/config-loader.js"(exports) {
|
|
1666
|
-
"use strict";
|
|
1667
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
1668
|
-
exports.configLoader = exports.loadConfig = void 0;
|
|
1669
|
-
var TsConfigLoader2 = require_tsconfig_loader();
|
|
1670
|
-
var path15 = require("path");
|
|
1671
|
-
function loadConfig2(cwd) {
|
|
1672
|
-
if (cwd === void 0) {
|
|
1673
|
-
cwd = process.cwd();
|
|
1674
|
-
}
|
|
1675
|
-
return configLoader({ cwd });
|
|
1676
|
-
}
|
|
1677
|
-
exports.loadConfig = loadConfig2;
|
|
1678
|
-
function configLoader(_a) {
|
|
1679
|
-
var cwd = _a.cwd, explicitParams = _a.explicitParams, _b = _a.tsConfigLoader, tsConfigLoader = _b === void 0 ? TsConfigLoader2.tsConfigLoader : _b;
|
|
1680
|
-
if (explicitParams) {
|
|
1681
|
-
var absoluteBaseUrl = path15.isAbsolute(explicitParams.baseUrl) ? explicitParams.baseUrl : path15.join(cwd, explicitParams.baseUrl);
|
|
1682
|
-
return {
|
|
1683
|
-
resultType: "success",
|
|
1684
|
-
configFileAbsolutePath: "",
|
|
1685
|
-
baseUrl: explicitParams.baseUrl,
|
|
1686
|
-
absoluteBaseUrl,
|
|
1687
|
-
paths: explicitParams.paths,
|
|
1688
|
-
mainFields: explicitParams.mainFields,
|
|
1689
|
-
addMatchAll: explicitParams.addMatchAll
|
|
1690
|
-
};
|
|
1691
|
-
}
|
|
1692
|
-
var loadResult = tsConfigLoader({
|
|
1693
|
-
cwd,
|
|
1694
|
-
getEnv: function(key) {
|
|
1695
|
-
return process.env[key];
|
|
1696
|
-
}
|
|
1697
|
-
});
|
|
1698
|
-
if (!loadResult.tsConfigPath) {
|
|
1699
|
-
return {
|
|
1700
|
-
resultType: "failed",
|
|
1701
|
-
message: "Couldn't find tsconfig.json"
|
|
1702
|
-
};
|
|
1703
|
-
}
|
|
1704
|
-
return {
|
|
1705
|
-
resultType: "success",
|
|
1706
|
-
configFileAbsolutePath: loadResult.tsConfigPath,
|
|
1707
|
-
baseUrl: loadResult.baseUrl,
|
|
1708
|
-
absoluteBaseUrl: path15.resolve(path15.dirname(loadResult.tsConfigPath), loadResult.baseUrl || ""),
|
|
1709
|
-
paths: loadResult.paths || {},
|
|
1710
|
-
addMatchAll: loadResult.baseUrl !== void 0
|
|
1711
|
-
};
|
|
375
|
+
printGeneratedClientFilePath() {
|
|
376
|
+
if (this.isUsingTs()) {
|
|
377
|
+
return this.generatedClientTSFilePath.replace(`${this.rootPath}/`, "");
|
|
1712
378
|
}
|
|
1713
|
-
|
|
379
|
+
return this.generatedClientJSFilePath.replace(`${this.rootPath}/`, "");
|
|
1714
380
|
}
|
|
1715
|
-
|
|
1716
|
-
|
|
1717
|
-
|
|
1718
|
-
|
|
1719
|
-
|
|
1720
|
-
|
|
1721
|
-
|
|
1722
|
-
|
|
1723
|
-
|
|
1724
|
-
o = o[key2] || {};
|
|
1725
|
-
});
|
|
1726
|
-
var key = keys[keys.length - 1];
|
|
1727
|
-
return key in o;
|
|
1728
|
-
}
|
|
1729
|
-
function isNumber(x) {
|
|
1730
|
-
if (typeof x === "number") {
|
|
1731
|
-
return true;
|
|
1732
|
-
}
|
|
1733
|
-
if (/^0x[0-9a-f]+$/i.test(x)) {
|
|
1734
|
-
return true;
|
|
1735
|
-
}
|
|
1736
|
-
return /^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(x);
|
|
381
|
+
printGeneratedTypesFilePath() {
|
|
382
|
+
return this.generatedTypesTSFilePath.replace(`${this.rootPath}/`, "");
|
|
383
|
+
}
|
|
384
|
+
printoutputHTMLFilePath() {
|
|
385
|
+
return this.outputHTMLFilePath.replace(`${this.publicFolderPath}/`, "");
|
|
386
|
+
}
|
|
387
|
+
printRelativePath(filename) {
|
|
388
|
+
if (filename) {
|
|
389
|
+
return filename.replace(/\\/g, "/").replace(`${this.rootPath}/`, "");
|
|
1737
390
|
}
|
|
1738
|
-
|
|
1739
|
-
|
|
391
|
+
throw `No path provided to print`;
|
|
392
|
+
}
|
|
393
|
+
printPrebuildFilePath() {
|
|
394
|
+
return this.prebuildFilePath.replace(/\\/g, "/").replace(`${this.rootPath}/${this.tinaFolderPath}/`, "");
|
|
395
|
+
}
|
|
396
|
+
printContentRelativePath(filename) {
|
|
397
|
+
if (filename) {
|
|
398
|
+
return filename.replace(/\\/g, "/").replace(`${this.contentRootPath}/`, "");
|
|
1740
399
|
}
|
|
1741
|
-
|
|
1742
|
-
|
|
1743
|
-
|
|
1744
|
-
|
|
1745
|
-
|
|
1746
|
-
|
|
1747
|
-
|
|
1748
|
-
|
|
1749
|
-
};
|
|
1750
|
-
if (typeof opts.unknown === "function") {
|
|
1751
|
-
flags.unknownFn = opts.unknown;
|
|
1752
|
-
}
|
|
1753
|
-
if (typeof opts.boolean === "boolean" && opts.boolean) {
|
|
1754
|
-
flags.allBools = true;
|
|
1755
|
-
} else {
|
|
1756
|
-
[].concat(opts.boolean).filter(Boolean).forEach(function(key2) {
|
|
1757
|
-
flags.bools[key2] = true;
|
|
1758
|
-
});
|
|
1759
|
-
}
|
|
1760
|
-
var aliases = {};
|
|
1761
|
-
function aliasIsBoolean(key2) {
|
|
1762
|
-
return aliases[key2].some(function(x) {
|
|
1763
|
-
return flags.bools[x];
|
|
1764
|
-
});
|
|
1765
|
-
}
|
|
1766
|
-
Object.keys(opts.alias || {}).forEach(function(key2) {
|
|
1767
|
-
aliases[key2] = [].concat(opts.alias[key2]);
|
|
1768
|
-
aliases[key2].forEach(function(x) {
|
|
1769
|
-
aliases[x] = [key2].concat(aliases[key2].filter(function(y) {
|
|
1770
|
-
return x !== y;
|
|
1771
|
-
}));
|
|
1772
|
-
});
|
|
1773
|
-
});
|
|
1774
|
-
[].concat(opts.string).filter(Boolean).forEach(function(key2) {
|
|
1775
|
-
flags.strings[key2] = true;
|
|
1776
|
-
if (aliases[key2]) {
|
|
1777
|
-
[].concat(aliases[key2]).forEach(function(k) {
|
|
1778
|
-
flags.strings[k] = true;
|
|
1779
|
-
});
|
|
1780
|
-
}
|
|
1781
|
-
});
|
|
1782
|
-
var defaults = opts.default || {};
|
|
1783
|
-
var argv = { _: [] };
|
|
1784
|
-
function argDefined(key2, arg2) {
|
|
1785
|
-
return flags.allBools && /^--[^=]+$/.test(arg2) || flags.strings[key2] || flags.bools[key2] || aliases[key2];
|
|
1786
|
-
}
|
|
1787
|
-
function setKey(obj, keys, value2) {
|
|
1788
|
-
var o = obj;
|
|
1789
|
-
for (var i2 = 0; i2 < keys.length - 1; i2++) {
|
|
1790
|
-
var key2 = keys[i2];
|
|
1791
|
-
if (isConstructorOrProto(o, key2)) {
|
|
1792
|
-
return;
|
|
1793
|
-
}
|
|
1794
|
-
if (o[key2] === void 0) {
|
|
1795
|
-
o[key2] = {};
|
|
1796
|
-
}
|
|
1797
|
-
if (o[key2] === Object.prototype || o[key2] === Number.prototype || o[key2] === String.prototype) {
|
|
1798
|
-
o[key2] = {};
|
|
1799
|
-
}
|
|
1800
|
-
if (o[key2] === Array.prototype) {
|
|
1801
|
-
o[key2] = [];
|
|
1802
|
-
}
|
|
1803
|
-
o = o[key2];
|
|
1804
|
-
}
|
|
1805
|
-
var lastKey = keys[keys.length - 1];
|
|
1806
|
-
if (isConstructorOrProto(o, lastKey)) {
|
|
400
|
+
throw `No path provided to print`;
|
|
401
|
+
}
|
|
402
|
+
async getPathWithExtension(filepath) {
|
|
403
|
+
const extensions = ["tsx", "ts", "jsx", "js"];
|
|
404
|
+
let result;
|
|
405
|
+
await Promise.all(
|
|
406
|
+
extensions.map(async (ext) => {
|
|
407
|
+
if (result) {
|
|
1807
408
|
return;
|
|
1808
409
|
}
|
|
1809
|
-
|
|
1810
|
-
|
|
1811
|
-
|
|
1812
|
-
|
|
1813
|
-
o = [];
|
|
1814
|
-
}
|
|
1815
|
-
if (o[lastKey] === void 0 || flags.bools[lastKey] || typeof o[lastKey] === "boolean") {
|
|
1816
|
-
o[lastKey] = value2;
|
|
1817
|
-
} else if (Array.isArray(o[lastKey])) {
|
|
1818
|
-
o[lastKey].push(value2);
|
|
1819
|
-
} else {
|
|
1820
|
-
o[lastKey] = [o[lastKey], value2];
|
|
1821
|
-
}
|
|
1822
|
-
}
|
|
1823
|
-
function setArg(key2, val, arg2) {
|
|
1824
|
-
if (arg2 && flags.unknownFn && !argDefined(key2, arg2)) {
|
|
1825
|
-
if (flags.unknownFn(arg2) === false) {
|
|
1826
|
-
return;
|
|
1827
|
-
}
|
|
410
|
+
const filepathWithExtension = `${filepath}.${ext}`;
|
|
411
|
+
const exists = import_fs_extra.default.existsSync(filepathWithExtension);
|
|
412
|
+
if (exists) {
|
|
413
|
+
result = filepathWithExtension;
|
|
1828
414
|
}
|
|
1829
|
-
|
|
1830
|
-
|
|
1831
|
-
|
|
1832
|
-
setKey(argv, x.split("."), value2);
|
|
1833
|
-
});
|
|
1834
|
-
}
|
|
1835
|
-
Object.keys(flags.bools).forEach(function(key2) {
|
|
1836
|
-
setArg(key2, defaults[key2] === void 0 ? false : defaults[key2]);
|
|
1837
|
-
});
|
|
1838
|
-
var notFlags = [];
|
|
1839
|
-
if (args.indexOf("--") !== -1) {
|
|
1840
|
-
notFlags = args.slice(args.indexOf("--") + 1);
|
|
1841
|
-
args = args.slice(0, args.indexOf("--"));
|
|
1842
|
-
}
|
|
1843
|
-
for (var i = 0; i < args.length; i++) {
|
|
1844
|
-
var arg = args[i];
|
|
1845
|
-
var key;
|
|
1846
|
-
var next;
|
|
1847
|
-
if (/^--.+=/.test(arg)) {
|
|
1848
|
-
var m = arg.match(/^--([^=]+)=([\s\S]*)$/);
|
|
1849
|
-
key = m[1];
|
|
1850
|
-
var value = m[2];
|
|
1851
|
-
if (flags.bools[key]) {
|
|
1852
|
-
value = value !== "false";
|
|
1853
|
-
}
|
|
1854
|
-
setArg(key, value, arg);
|
|
1855
|
-
} else if (/^--no-.+/.test(arg)) {
|
|
1856
|
-
key = arg.match(/^--no-(.+)/)[1];
|
|
1857
|
-
setArg(key, false, arg);
|
|
1858
|
-
} else if (/^--.+/.test(arg)) {
|
|
1859
|
-
key = arg.match(/^--(.+)/)[1];
|
|
1860
|
-
next = args[i + 1];
|
|
1861
|
-
if (next !== void 0 && !/^(-|--)[^-]/.test(next) && !flags.bools[key] && !flags.allBools && (aliases[key] ? !aliasIsBoolean(key) : true)) {
|
|
1862
|
-
setArg(key, next, arg);
|
|
1863
|
-
i += 1;
|
|
1864
|
-
} else if (/^(true|false)$/.test(next)) {
|
|
1865
|
-
setArg(key, next === "true", arg);
|
|
1866
|
-
i += 1;
|
|
1867
|
-
} else {
|
|
1868
|
-
setArg(key, flags.strings[key] ? "" : true, arg);
|
|
1869
|
-
}
|
|
1870
|
-
} else if (/^-[^-]+/.test(arg)) {
|
|
1871
|
-
var letters = arg.slice(1, -1).split("");
|
|
1872
|
-
var broken = false;
|
|
1873
|
-
for (var j = 0; j < letters.length; j++) {
|
|
1874
|
-
next = arg.slice(j + 2);
|
|
1875
|
-
if (next === "-") {
|
|
1876
|
-
setArg(letters[j], next, arg);
|
|
1877
|
-
continue;
|
|
1878
|
-
}
|
|
1879
|
-
if (/[A-Za-z]/.test(letters[j]) && next[0] === "=") {
|
|
1880
|
-
setArg(letters[j], next.slice(1), arg);
|
|
1881
|
-
broken = true;
|
|
1882
|
-
break;
|
|
1883
|
-
}
|
|
1884
|
-
if (/[A-Za-z]/.test(letters[j]) && /-?\d+(\.\d*)?(e-?\d+)?$/.test(next)) {
|
|
1885
|
-
setArg(letters[j], next, arg);
|
|
1886
|
-
broken = true;
|
|
1887
|
-
break;
|
|
1888
|
-
}
|
|
1889
|
-
if (letters[j + 1] && letters[j + 1].match(/\W/)) {
|
|
1890
|
-
setArg(letters[j], arg.slice(j + 2), arg);
|
|
1891
|
-
broken = true;
|
|
1892
|
-
break;
|
|
1893
|
-
} else {
|
|
1894
|
-
setArg(letters[j], flags.strings[letters[j]] ? "" : true, arg);
|
|
1895
|
-
}
|
|
1896
|
-
}
|
|
1897
|
-
key = arg.slice(-1)[0];
|
|
1898
|
-
if (!broken && key !== "-") {
|
|
1899
|
-
if (args[i + 1] && !/^(-|--)[^-]/.test(args[i + 1]) && !flags.bools[key] && (aliases[key] ? !aliasIsBoolean(key) : true)) {
|
|
1900
|
-
setArg(key, args[i + 1], arg);
|
|
1901
|
-
i += 1;
|
|
1902
|
-
} else if (args[i + 1] && /^(true|false)$/.test(args[i + 1])) {
|
|
1903
|
-
setArg(key, args[i + 1] === "true", arg);
|
|
1904
|
-
i += 1;
|
|
1905
|
-
} else {
|
|
1906
|
-
setArg(key, flags.strings[key] ? "" : true, arg);
|
|
1907
|
-
}
|
|
1908
|
-
}
|
|
1909
|
-
} else {
|
|
1910
|
-
if (!flags.unknownFn || flags.unknownFn(arg) !== false) {
|
|
1911
|
-
argv._.push(flags.strings._ || !isNumber(arg) ? arg : Number(arg));
|
|
1912
|
-
}
|
|
1913
|
-
if (opts.stopEarly) {
|
|
1914
|
-
argv._.push.apply(argv._, args.slice(i + 1));
|
|
1915
|
-
break;
|
|
1916
|
-
}
|
|
1917
|
-
}
|
|
1918
|
-
}
|
|
1919
|
-
Object.keys(defaults).forEach(function(k) {
|
|
1920
|
-
if (!hasKey(argv, k.split("."))) {
|
|
1921
|
-
setKey(argv, k.split("."), defaults[k]);
|
|
1922
|
-
(aliases[k] || []).forEach(function(x) {
|
|
1923
|
-
setKey(argv, x.split("."), defaults[k]);
|
|
1924
|
-
});
|
|
1925
|
-
}
|
|
1926
|
-
});
|
|
1927
|
-
if (opts["--"]) {
|
|
1928
|
-
argv["--"] = notFlags.slice();
|
|
1929
|
-
} else {
|
|
1930
|
-
notFlags.forEach(function(k) {
|
|
1931
|
-
argv._.push(k);
|
|
1932
|
-
});
|
|
1933
|
-
}
|
|
1934
|
-
return argv;
|
|
1935
|
-
};
|
|
415
|
+
})
|
|
416
|
+
);
|
|
417
|
+
return result;
|
|
1936
418
|
}
|
|
1937
|
-
|
|
1938
|
-
|
|
1939
|
-
|
|
1940
|
-
|
|
1941
|
-
|
|
1942
|
-
|
|
1943
|
-
|
|
1944
|
-
|
|
1945
|
-
|
|
1946
|
-
|
|
1947
|
-
|
|
1948
|
-
|
|
1949
|
-
|
|
1950
|
-
|
|
1951
|
-
|
|
1952
|
-
|
|
1953
|
-
|
|
1954
|
-
|
|
1955
|
-
|
|
1956
|
-
|
|
1957
|
-
|
|
1958
|
-
|
|
1959
|
-
|
|
1960
|
-
|
|
1961
|
-
|
|
1962
|
-
|
|
1963
|
-
|
|
1964
|
-
|
|
1965
|
-
|
|
1966
|
-
|
|
1967
|
-
|
|
1968
|
-
|
|
1969
|
-
|
|
1970
|
-
|
|
1971
|
-
|
|
1972
|
-
|
|
1973
|
-
|
|
1974
|
-
|
|
1975
|
-
"net",
|
|
1976
|
-
"os",
|
|
1977
|
-
"path",
|
|
1978
|
-
"punycode",
|
|
1979
|
-
"querystring",
|
|
1980
|
-
"readline",
|
|
1981
|
-
"stream",
|
|
1982
|
-
"string_decoder",
|
|
1983
|
-
"tls",
|
|
1984
|
-
"tty",
|
|
1985
|
-
"url",
|
|
1986
|
-
"util",
|
|
1987
|
-
"v8",
|
|
1988
|
-
"vm",
|
|
1989
|
-
"zlib"
|
|
1990
|
-
];
|
|
1991
|
-
var coreModules = {};
|
|
1992
|
-
for (var _i = 0, builtinModules_1 = builtinModules; _i < builtinModules_1.length; _i++) {
|
|
1993
|
-
var module_1 = builtinModules_1[_i];
|
|
1994
|
-
coreModules[module_1] = true;
|
|
1995
|
-
}
|
|
1996
|
-
return coreModules;
|
|
1997
|
-
}
|
|
1998
|
-
function register(params) {
|
|
1999
|
-
var cwd;
|
|
2000
|
-
var explicitParams;
|
|
2001
|
-
if (params) {
|
|
2002
|
-
cwd = params.cwd;
|
|
2003
|
-
if (params.baseUrl || params.paths) {
|
|
2004
|
-
explicitParams = params;
|
|
2005
|
-
}
|
|
2006
|
-
} else {
|
|
2007
|
-
var minimist = require_minimist();
|
|
2008
|
-
var argv = minimist(process.argv.slice(2), {
|
|
2009
|
-
string: ["project"],
|
|
2010
|
-
alias: {
|
|
2011
|
-
project: ["P"]
|
|
2012
|
-
}
|
|
2013
|
-
});
|
|
2014
|
-
cwd = argv.project;
|
|
2015
|
-
}
|
|
2016
|
-
var configLoaderResult = (0, config_loader_1.configLoader)({
|
|
2017
|
-
cwd: cwd !== null && cwd !== void 0 ? cwd : process.cwd(),
|
|
2018
|
-
explicitParams
|
|
2019
|
-
});
|
|
2020
|
-
if (configLoaderResult.resultType === "failed") {
|
|
2021
|
-
console.warn("".concat(configLoaderResult.message, ". tsconfig-paths will be skipped"));
|
|
2022
|
-
return noOp;
|
|
419
|
+
async loadDatabaseFile() {
|
|
420
|
+
const tmpdir = import_path.default.join(import_os.default.tmpdir(), Date.now().toString());
|
|
421
|
+
const outfile = import_path.default.join(tmpdir, "database.build.js");
|
|
422
|
+
await esbuild.build({
|
|
423
|
+
entryPoints: [this.selfHostedDatabaseFilePath],
|
|
424
|
+
bundle: true,
|
|
425
|
+
platform: "node",
|
|
426
|
+
outfile,
|
|
427
|
+
loader: loaders
|
|
428
|
+
});
|
|
429
|
+
const result = require(outfile);
|
|
430
|
+
import_fs_extra.default.removeSync(outfile);
|
|
431
|
+
return result.default;
|
|
432
|
+
}
|
|
433
|
+
async loadConfigFile(generatedFolderPath, configFilePath) {
|
|
434
|
+
const tmpdir = import_path.default.join(import_os.default.tmpdir(), Date.now().toString());
|
|
435
|
+
const prebuild = import_path.default.join(this.generatedFolderPath, "config.prebuild.jsx");
|
|
436
|
+
const outfile = import_path.default.join(tmpdir, "config.build.jsx");
|
|
437
|
+
const outfile2 = import_path.default.join(tmpdir, "config.build.js");
|
|
438
|
+
const tempTSConfigFile = import_path.default.join(tmpdir, "tsconfig.json");
|
|
439
|
+
import_fs_extra.default.outputFileSync(tempTSConfigFile, "{}");
|
|
440
|
+
const result2 = await esbuild.build({
|
|
441
|
+
entryPoints: [configFilePath],
|
|
442
|
+
bundle: true,
|
|
443
|
+
target: ["es2020"],
|
|
444
|
+
platform: "browser",
|
|
445
|
+
format: "esm",
|
|
446
|
+
logLevel: "silent",
|
|
447
|
+
packages: "external",
|
|
448
|
+
ignoreAnnotations: true,
|
|
449
|
+
outfile: prebuild,
|
|
450
|
+
loader: loaders,
|
|
451
|
+
metafile: true
|
|
452
|
+
});
|
|
453
|
+
const flattenedList = [];
|
|
454
|
+
Object.keys(result2.metafile.inputs).forEach((key) => {
|
|
455
|
+
if (key.includes("node_modules") || key.includes("__generated__")) {
|
|
456
|
+
return;
|
|
2023
457
|
}
|
|
2024
|
-
|
|
2025
|
-
|
|
2026
|
-
|
|
2027
|
-
|
|
2028
|
-
|
|
2029
|
-
|
|
2030
|
-
|
|
2031
|
-
|
|
2032
|
-
|
|
2033
|
-
|
|
2034
|
-
|
|
2035
|
-
|
|
2036
|
-
|
|
2037
|
-
|
|
2038
|
-
|
|
2039
|
-
|
|
2040
|
-
|
|
2041
|
-
|
|
458
|
+
flattenedList.push(key);
|
|
459
|
+
});
|
|
460
|
+
await esbuild.build({
|
|
461
|
+
entryPoints: [configFilePath],
|
|
462
|
+
bundle: true,
|
|
463
|
+
target: ["es2020"],
|
|
464
|
+
logLevel: "silent",
|
|
465
|
+
platform: "node",
|
|
466
|
+
outfile,
|
|
467
|
+
loader: loaders
|
|
468
|
+
});
|
|
469
|
+
await esbuild.build({
|
|
470
|
+
entryPoints: [outfile],
|
|
471
|
+
bundle: true,
|
|
472
|
+
logLevel: "silent",
|
|
473
|
+
platform: "node",
|
|
474
|
+
outfile: outfile2,
|
|
475
|
+
loader: loaders
|
|
476
|
+
});
|
|
477
|
+
let result;
|
|
478
|
+
try {
|
|
479
|
+
result = require(outfile2);
|
|
480
|
+
} catch (e) {
|
|
481
|
+
console.error("Unexpected error loading config");
|
|
482
|
+
console.error(e);
|
|
483
|
+
throw e;
|
|
2042
484
|
}
|
|
2043
|
-
|
|
2044
|
-
|
|
2045
|
-
|
|
2046
|
-
|
|
2047
|
-
|
|
2048
|
-
|
|
2049
|
-
|
|
2050
|
-
"use strict";
|
|
2051
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2052
|
-
exports.loadConfig = exports.register = exports.matchFromAbsolutePathsAsync = exports.createMatchPathAsync = exports.matchFromAbsolutePaths = exports.createMatchPath = void 0;
|
|
2053
|
-
var match_path_sync_1 = require_match_path_sync();
|
|
2054
|
-
Object.defineProperty(exports, "createMatchPath", { enumerable: true, get: function() {
|
|
2055
|
-
return match_path_sync_1.createMatchPath;
|
|
2056
|
-
} });
|
|
2057
|
-
Object.defineProperty(exports, "matchFromAbsolutePaths", { enumerable: true, get: function() {
|
|
2058
|
-
return match_path_sync_1.matchFromAbsolutePaths;
|
|
2059
|
-
} });
|
|
2060
|
-
var match_path_async_1 = require_match_path_async();
|
|
2061
|
-
Object.defineProperty(exports, "createMatchPathAsync", { enumerable: true, get: function() {
|
|
2062
|
-
return match_path_async_1.createMatchPathAsync;
|
|
2063
|
-
} });
|
|
2064
|
-
Object.defineProperty(exports, "matchFromAbsolutePathsAsync", { enumerable: true, get: function() {
|
|
2065
|
-
return match_path_async_1.matchFromAbsolutePathsAsync;
|
|
2066
|
-
} });
|
|
2067
|
-
var register_1 = require_register();
|
|
2068
|
-
Object.defineProperty(exports, "register", { enumerable: true, get: function() {
|
|
2069
|
-
return register_1.register;
|
|
2070
|
-
} });
|
|
2071
|
-
var config_loader_1 = require_config_loader();
|
|
2072
|
-
Object.defineProperty(exports, "loadConfig", { enumerable: true, get: function() {
|
|
2073
|
-
return config_loader_1.loadConfig;
|
|
2074
|
-
} });
|
|
485
|
+
import_fs_extra.default.removeSync(outfile);
|
|
486
|
+
import_fs_extra.default.removeSync(outfile2);
|
|
487
|
+
return {
|
|
488
|
+
config: result.default,
|
|
489
|
+
prebuildPath: prebuild,
|
|
490
|
+
watchList: flattenedList
|
|
491
|
+
};
|
|
2075
492
|
}
|
|
2076
|
-
}
|
|
493
|
+
};
|
|
494
|
+
var loaders = {
|
|
495
|
+
".aac": "file",
|
|
496
|
+
".css": "file",
|
|
497
|
+
".eot": "file",
|
|
498
|
+
".flac": "file",
|
|
499
|
+
".gif": "file",
|
|
500
|
+
".jpeg": "file",
|
|
501
|
+
".jpg": "file",
|
|
502
|
+
".json": "json",
|
|
503
|
+
".mp3": "file",
|
|
504
|
+
".mp4": "file",
|
|
505
|
+
".ogg": "file",
|
|
506
|
+
".otf": "file",
|
|
507
|
+
".png": "file",
|
|
508
|
+
".svg": "file",
|
|
509
|
+
".ttf": "file",
|
|
510
|
+
".wav": "file",
|
|
511
|
+
".webm": "file",
|
|
512
|
+
".webp": "file",
|
|
513
|
+
".woff": "file",
|
|
514
|
+
".woff2": "file",
|
|
515
|
+
".js": "jsx",
|
|
516
|
+
".jsx": "jsx",
|
|
517
|
+
".tsx": "tsx"
|
|
518
|
+
};
|
|
2077
519
|
|
|
2078
|
-
// src/
|
|
2079
|
-
var
|
|
2080
|
-
|
|
2081
|
-
|
|
2082
|
-
|
|
2083
|
-
|
|
2084
|
-
|
|
520
|
+
// src/next/commands/dev-command/html.ts
|
|
521
|
+
var errorHTML = `<style type="text/css">
|
|
522
|
+
#no-assets-placeholder body {
|
|
523
|
+
font-family: sans-serif;
|
|
524
|
+
font-size: 16px;
|
|
525
|
+
line-height: 1.4;
|
|
526
|
+
color: #333;
|
|
527
|
+
background-color: #f5f5f5;
|
|
528
|
+
}
|
|
529
|
+
#no-assets-placeholder {
|
|
530
|
+
max-width: 600px;
|
|
531
|
+
margin: 0 auto;
|
|
532
|
+
padding: 40px;
|
|
533
|
+
text-align: center;
|
|
534
|
+
background-color: #fff;
|
|
535
|
+
box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.1);
|
|
536
|
+
}
|
|
537
|
+
#no-assets-placeholder h1 {
|
|
538
|
+
font-size: 24px;
|
|
539
|
+
margin-bottom: 20px;
|
|
540
|
+
}
|
|
541
|
+
#no-assets-placeholder p {
|
|
542
|
+
margin-bottom: 10px;
|
|
543
|
+
}
|
|
544
|
+
#no-assets-placeholder a {
|
|
545
|
+
color: #0077cc;
|
|
546
|
+
text-decoration: none;
|
|
547
|
+
}
|
|
548
|
+
#no-assets-placeholder a:hover {
|
|
549
|
+
text-decoration: underline;
|
|
550
|
+
}
|
|
551
|
+
</style>
|
|
552
|
+
<div id="no-assets-placeholder">
|
|
553
|
+
<h1>Failed loading TinaCMS assets</h1>
|
|
554
|
+
<p>
|
|
555
|
+
Your TinaCMS configuration may be misconfigured, and we could not load
|
|
556
|
+
the assets for this page.
|
|
557
|
+
</p>
|
|
558
|
+
<p>
|
|
559
|
+
Please visit <a href="https://tina.io/docs/tina-cloud/faq/#how-do-i-resolve-failed-loading-tinacms-assets-error">this doc</a> for help.
|
|
560
|
+
</p>
|
|
561
|
+
</div>
|
|
562
|
+
</div>`.trim().replace(/[\r\n\s]+/g, " ");
|
|
563
|
+
var devHTML = (port) => `<!DOCTYPE html>
|
|
564
|
+
<html lang="en">
|
|
565
|
+
<head>
|
|
566
|
+
<meta charset="UTF-8" />
|
|
567
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
568
|
+
<title>TinaCMS</title>
|
|
569
|
+
</head>
|
|
2085
570
|
|
|
2086
|
-
|
|
2087
|
-
|
|
571
|
+
<!-- if development -->
|
|
572
|
+
<script type="module">
|
|
573
|
+
import RefreshRuntime from 'http://localhost:${port}/@react-refresh'
|
|
574
|
+
RefreshRuntime.injectIntoGlobalHook(window)
|
|
575
|
+
window.$RefreshReg$ = () => {}
|
|
576
|
+
window.$RefreshSig$ = () => (type) => type
|
|
577
|
+
window.__vite_plugin_react_preamble_installed__ = true
|
|
578
|
+
<\/script>
|
|
579
|
+
<script type="module" src="http://localhost:${port}/@vite/client"><\/script>
|
|
580
|
+
<script>
|
|
581
|
+
function handleLoadError() {
|
|
582
|
+
// Assets have failed to load
|
|
583
|
+
document.getElementById('root').innerHTML = '${errorHTML}';
|
|
584
|
+
}
|
|
585
|
+
<\/script>
|
|
586
|
+
<script
|
|
587
|
+
type="module"
|
|
588
|
+
src="http://localhost:${port}/src/main.tsx"
|
|
589
|
+
onerror="handleLoadError()"
|
|
590
|
+
><\/script>
|
|
591
|
+
<body class="tina-tailwind">
|
|
592
|
+
<div id="root"></div>
|
|
593
|
+
</body>
|
|
594
|
+
</html>`;
|
|
2088
595
|
|
|
2089
|
-
// src/
|
|
2090
|
-
var
|
|
2091
|
-
var
|
|
2092
|
-
var
|
|
2093
|
-
var
|
|
2094
|
-
var
|
|
596
|
+
// src/utils/theme.ts
|
|
597
|
+
var import_chalk3 = __toESM(require("chalk"));
|
|
598
|
+
var successText = import_chalk3.default.bold.green;
|
|
599
|
+
var focusText = import_chalk3.default.bold;
|
|
600
|
+
var dangerText = import_chalk3.default.bold.red;
|
|
601
|
+
var neutralText = import_chalk3.default.bold.cyan;
|
|
602
|
+
var linkText = import_chalk3.default.bold.cyan;
|
|
603
|
+
var labelText = import_chalk3.default.bold;
|
|
604
|
+
var cmdText = import_chalk3.default.inverse;
|
|
605
|
+
var indentedCmd = (str) => {
|
|
606
|
+
return ` \u2503 ` + str;
|
|
607
|
+
};
|
|
608
|
+
var indentText = (str) => {
|
|
609
|
+
return String(str).split("\n").map((line) => ` ${line}`).join("\n");
|
|
610
|
+
};
|
|
611
|
+
var logText = import_chalk3.default.italic.gray;
|
|
612
|
+
var warnText = import_chalk3.default.yellowBright.bgBlack;
|
|
613
|
+
var titleText = import_chalk3.default.bgHex("d2f1f8").hex("ec4816");
|
|
614
|
+
var CONFIRMATION_TEXT = import_chalk3.default.dim("enter to confirm");
|
|
2095
615
|
|
|
2096
|
-
// src/next/
|
|
2097
|
-
var
|
|
2098
|
-
var import_path2 = __toESM(require("path"));
|
|
2099
|
-
var import_os = __toESM(require("os"));
|
|
2100
|
-
var esbuild = __toESM(require("esbuild"));
|
|
2101
|
-
var dotenv = __toESM(require("dotenv"));
|
|
2102
|
-
var import_normalize_path2 = __toESM(require("normalize-path"));
|
|
2103
|
-
var import_chalk2 = __toESM(require("chalk"));
|
|
616
|
+
// src/next/commands/dev-command/server/index.ts
|
|
617
|
+
var import_vite3 = require("vite");
|
|
2104
618
|
|
|
2105
619
|
// src/next/vite/index.ts
|
|
2106
620
|
var import_node_path2 = __toESM(require("path"));
|
|
2107
621
|
var import_plugin_react = __toESM(require("@vitejs/plugin-react"));
|
|
2108
|
-
var
|
|
2109
|
-
var
|
|
622
|
+
var import_fs_extra2 = __toESM(require("fs-extra"));
|
|
623
|
+
var import_normalize_path2 = __toESM(require("normalize-path"));
|
|
2110
624
|
var import_vite = require("vite");
|
|
2111
625
|
|
|
2112
626
|
// src/next/vite/tailwind.ts
|
|
@@ -2273,936 +787,296 @@ var tinaTailwind = (spaPath, prebuildFilePath) => {
|
|
|
2273
787
|
103: "1.03"
|
|
2274
788
|
},
|
|
2275
789
|
transitionDuration: {
|
|
2276
|
-
0: "0ms",
|
|
2277
|
-
2e3: "2000ms"
|
|
2278
|
-
},
|
|
2279
|
-
boxShadow: {
|
|
2280
|
-
xs: "0 0 0 1px rgba(0, 0, 0, 0.05)",
|
|
2281
|
-
outline: "0 0 0 3px rgba(66, 153, 225, 0.5)"
|
|
2282
|
-
},
|
|
2283
|
-
colors: {
|
|
2284
|
-
blue: {
|
|
2285
|
-
50: "#DCEEFF",
|
|
2286
|
-
100: "#B4DBFF",
|
|
2287
|
-
200: "#85C5FE",
|
|
2288
|
-
300: "#4EABFE",
|
|
2289
|
-
400: "#2296fe",
|
|
2290
|
-
500: "#0084FF",
|
|
2291
|
-
600: "#0574e4",
|
|
2292
|
-
700: "#0D5DBD",
|
|
2293
|
-
800: "#144696",
|
|
2294
|
-
900: "#1D2C6C",
|
|
2295
|
-
1e3: "#241748"
|
|
2296
|
-
},
|
|
2297
|
-
gray: {
|
|
2298
|
-
50: "#F6F6F9",
|
|
2299
|
-
100: "#EDECF3",
|
|
2300
|
-
150: "#E6E3EF",
|
|
2301
|
-
200: "#E1DDEC",
|
|
2302
|
-
250: "#C9C5D5",
|
|
2303
|
-
300: "#b2adbe",
|
|
2304
|
-
400: "#918c9e",
|
|
2305
|
-
500: "#716c7f",
|
|
2306
|
-
600: "#565165",
|
|
2307
|
-
700: "#433e52",
|
|
2308
|
-
800: "#363145",
|
|
2309
|
-
900: "#252336",
|
|
2310
|
-
1e3: "#1c1b2e"
|
|
2311
|
-
},
|
|
2312
|
-
orange: {
|
|
2313
|
-
400: "#EB6337",
|
|
2314
|
-
500: "#EC4815",
|
|
2315
|
-
600: "#DC4419"
|
|
2316
|
-
},
|
|
2317
|
-
background: "#FFFFFF",
|
|
2318
|
-
foreground: "#0A0A0A",
|
|
2319
|
-
muted: "#F5F5F5",
|
|
2320
|
-
"muted-foreground": "#737373",
|
|
2321
|
-
popover: "#FFFFFF",
|
|
2322
|
-
"popover-foreground": "#0A0A0A",
|
|
2323
|
-
card: "#FFFFFF",
|
|
2324
|
-
"card-foreground": "#0A0A0A",
|
|
2325
|
-
border: "#E5E5E5",
|
|
2326
|
-
input: "#E5E5E5",
|
|
2327
|
-
primary: "#171717",
|
|
2328
|
-
"primary-foreground": "#FAFAFA",
|
|
2329
|
-
secondary: "#F5F5F5",
|
|
2330
|
-
"secondary-foreground": "#171717",
|
|
2331
|
-
accent: "#F5F5F5",
|
|
2332
|
-
"accent-foreground": "#171717",
|
|
2333
|
-
destructive: "#FF3B3B",
|
|
2334
|
-
"destructive-foreground": "#FAFAFA",
|
|
2335
|
-
ring: "#0A0A0A"
|
|
2336
|
-
},
|
|
2337
|
-
fontFamily: {
|
|
2338
|
-
sans: ["Inter", ...import_defaultTheme.default.fontFamily.sans]
|
|
2339
|
-
},
|
|
2340
|
-
lineHeight: {
|
|
2341
|
-
3: "12px",
|
|
2342
|
-
4: "16px",
|
|
2343
|
-
5: "20px",
|
|
2344
|
-
6: "24px",
|
|
2345
|
-
7: "28px",
|
|
2346
|
-
8: "32px",
|
|
2347
|
-
9: "36px",
|
|
2348
|
-
10: "40px"
|
|
2349
|
-
},
|
|
2350
|
-
maxWidth: {
|
|
2351
|
-
form: "900px"
|
|
2352
|
-
},
|
|
2353
|
-
screens: {
|
|
2354
|
-
xs: "320px",
|
|
2355
|
-
sm: "560px",
|
|
2356
|
-
md: "720px",
|
|
2357
|
-
lg: "1030px"
|
|
2358
|
-
}
|
|
2359
|
-
}
|
|
2360
|
-
},
|
|
2361
|
-
content,
|
|
2362
|
-
plugins: [
|
|
2363
|
-
(0, import_typography.default)({ className: "tina-prose" }),
|
|
2364
|
-
import_aspect_ratio.default,
|
|
2365
|
-
import_container_queries.default
|
|
2366
|
-
]
|
|
2367
|
-
});
|
|
2368
|
-
plugins.push(tw);
|
|
2369
|
-
return {
|
|
2370
|
-
css: {
|
|
2371
|
-
postcss: {
|
|
2372
|
-
plugins
|
|
2373
|
-
}
|
|
2374
|
-
}
|
|
2375
|
-
};
|
|
2376
|
-
}
|
|
2377
|
-
};
|
|
2378
|
-
};
|
|
2379
|
-
|
|
2380
|
-
// src/next/vite/index.ts
|
|
2381
|
-
async function listFilesRecursively({
|
|
2382
|
-
directoryPath,
|
|
2383
|
-
config: config2,
|
|
2384
|
-
roothPath
|
|
2385
|
-
}) {
|
|
2386
|
-
const fullDirectoryPath = import_node_path2.default.join(
|
|
2387
|
-
roothPath,
|
|
2388
|
-
config2.publicFolder,
|
|
2389
|
-
directoryPath
|
|
2390
|
-
);
|
|
2391
|
-
const exists = await import_fs_extra.default.pathExists(fullDirectoryPath);
|
|
2392
|
-
if (!exists) {
|
|
2393
|
-
return { "0": [] };
|
|
2394
|
-
}
|
|
2395
|
-
const items = await import_fs_extra.default.readdir(fullDirectoryPath);
|
|
2396
|
-
const staticMediaItems = [];
|
|
2397
|
-
for (const item of items) {
|
|
2398
|
-
const itemPath = import_node_path2.default.join(fullDirectoryPath, item);
|
|
2399
|
-
const stats = await import_fs_extra.default.promises.lstat(itemPath);
|
|
2400
|
-
const staticMediaItem = {
|
|
2401
|
-
id: item,
|
|
2402
|
-
filename: item,
|
|
2403
|
-
type: stats.isDirectory() ? "dir" : "file",
|
|
2404
|
-
directory: `${directoryPath.replace(config2.mediaRoot, "")}`,
|
|
2405
|
-
src: `/${import_node_path2.default.join(directoryPath, item)}`,
|
|
2406
|
-
thumbnails: {
|
|
2407
|
-
"75x75": `/${import_node_path2.default.join(directoryPath, item)}`,
|
|
2408
|
-
"400x400": `/${import_node_path2.default.join(directoryPath, item)}`,
|
|
2409
|
-
"1000x1000": `/${import_node_path2.default.join(directoryPath, item)}`
|
|
2410
|
-
}
|
|
2411
|
-
};
|
|
2412
|
-
if (stats.isDirectory()) {
|
|
2413
|
-
staticMediaItem.children = await listFilesRecursively({
|
|
2414
|
-
directoryPath: import_node_path2.default.join(directoryPath, item),
|
|
2415
|
-
config: config2,
|
|
2416
|
-
roothPath
|
|
2417
|
-
});
|
|
2418
|
-
}
|
|
2419
|
-
staticMediaItems.push(staticMediaItem);
|
|
2420
|
-
}
|
|
2421
|
-
function chunkArrayIntoObject(array, chunkSize) {
|
|
2422
|
-
const result = {};
|
|
2423
|
-
for (let i = 0; i < array.length; i += chunkSize) {
|
|
2424
|
-
const chunkKey = `${i / chunkSize * 20}`;
|
|
2425
|
-
result[chunkKey] = array.slice(i, i + chunkSize);
|
|
2426
|
-
}
|
|
2427
|
-
return result;
|
|
2428
|
-
}
|
|
2429
|
-
return chunkArrayIntoObject(staticMediaItems, 20);
|
|
2430
|
-
}
|
|
2431
|
-
var loadProjectConfig = async ({
|
|
2432
|
-
rootPath,
|
|
2433
|
-
viteConfigEnv
|
|
2434
|
-
}) => {
|
|
2435
|
-
if (viteConfigEnv) {
|
|
2436
|
-
const configFileJs = import_node_path2.default.join(rootPath, "vite.config.js");
|
|
2437
|
-
const configFileTs = import_node_path2.default.join(rootPath, "vite.config.ts");
|
|
2438
|
-
if (import_fs_extra.default.existsSync(configFileJs)) {
|
|
2439
|
-
return await (0, import_vite.loadConfigFromFile)(viteConfigEnv, configFileJs);
|
|
2440
|
-
} else if (import_fs_extra.default.existsSync(configFileTs)) {
|
|
2441
|
-
return await (0, import_vite.loadConfigFromFile)(viteConfigEnv, configFileTs);
|
|
2442
|
-
}
|
|
2443
|
-
}
|
|
2444
|
-
return { config: {} };
|
|
2445
|
-
};
|
|
2446
|
-
var createConfig = async ({
|
|
2447
|
-
configManager,
|
|
2448
|
-
database,
|
|
2449
|
-
apiURL,
|
|
2450
|
-
plugins = [],
|
|
2451
|
-
noWatch,
|
|
2452
|
-
rollupOptions,
|
|
2453
|
-
viteConfigEnv
|
|
2454
|
-
}) => {
|
|
2455
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _i;
|
|
2456
|
-
const projectConfig = await loadProjectConfig({
|
|
2457
|
-
rootPath: configManager.rootPath,
|
|
2458
|
-
viteConfigEnv
|
|
2459
|
-
});
|
|
2460
|
-
const publicEnv = {};
|
|
2461
|
-
Object.keys(process.env).forEach((key) => {
|
|
2462
|
-
if (key.startsWith("TINA_PUBLIC_") || key.startsWith("NEXT_PUBLIC_") || key === "NODE_ENV" || key === "HEAD") {
|
|
2463
|
-
try {
|
|
2464
|
-
if (typeof process.env[key] === "string") {
|
|
2465
|
-
publicEnv[key] = process.env[key];
|
|
2466
|
-
} else {
|
|
2467
|
-
publicEnv[key] = JSON.stringify(process.env[key]);
|
|
2468
|
-
}
|
|
2469
|
-
} catch (error) {
|
|
2470
|
-
console.warn(
|
|
2471
|
-
`Could not stringify public env process.env.${key} env variable`
|
|
2472
|
-
);
|
|
2473
|
-
console.warn(error);
|
|
2474
|
-
}
|
|
2475
|
-
}
|
|
2476
|
-
});
|
|
2477
|
-
const staticMediaPath = import_node_path2.default.join(
|
|
2478
|
-
configManager.generatedFolderPath,
|
|
2479
|
-
"static-media.json"
|
|
2480
|
-
);
|
|
2481
|
-
if ((_b = (_a = configManager.config.media) == null ? void 0 : _a.tina) == null ? void 0 : _b.static) {
|
|
2482
|
-
const staticMedia = await listFilesRecursively({
|
|
2483
|
-
directoryPath: ((_c = configManager.config.media.tina) == null ? void 0 : _c.mediaRoot) || "",
|
|
2484
|
-
config: configManager.config.media.tina,
|
|
2485
|
-
roothPath: configManager.rootPath
|
|
2486
|
-
});
|
|
2487
|
-
await import_fs_extra.default.outputFile(staticMediaPath, JSON.stringify(staticMedia, null, 2));
|
|
2488
|
-
} else {
|
|
2489
|
-
await import_fs_extra.default.outputFile(staticMediaPath, `[]`);
|
|
2490
|
-
}
|
|
2491
|
-
const alias = {
|
|
2492
|
-
TINA_IMPORT: configManager.prebuildFilePath,
|
|
2493
|
-
SCHEMA_IMPORT: configManager.generatedGraphQLJSONPath,
|
|
2494
|
-
STATIC_MEDIA_IMPORT: staticMediaPath,
|
|
2495
|
-
crypto: import_node_path2.default.join(configManager.spaRootPath, "src", "dummy-client.ts"),
|
|
2496
|
-
fs: import_node_path2.default.join(configManager.spaRootPath, "src", "dummy-client.ts"),
|
|
2497
|
-
os: import_node_path2.default.join(configManager.spaRootPath, "src", "dummy-client.ts"),
|
|
2498
|
-
path: import_node_path2.default.join(configManager.spaRootPath, "src", "dummy-client.ts")
|
|
2499
|
-
};
|
|
2500
|
-
if (configManager.shouldSkipSDK()) {
|
|
2501
|
-
alias["CLIENT_IMPORT"] = import_node_path2.default.join(
|
|
2502
|
-
configManager.spaRootPath,
|
|
2503
|
-
"src",
|
|
2504
|
-
"dummy-client.ts"
|
|
2505
|
-
);
|
|
2506
|
-
} else {
|
|
2507
|
-
alias["CLIENT_IMPORT"] = configManager.isUsingTs() ? configManager.generatedTypesTSFilePath : configManager.generatedTypesJSFilePath;
|
|
2508
|
-
}
|
|
2509
|
-
let basePath;
|
|
2510
|
-
if (configManager.config.build.basePath) {
|
|
2511
|
-
basePath = configManager.config.build.basePath;
|
|
2512
|
-
}
|
|
2513
|
-
const fullVersion = configManager.getTinaGraphQLVersion();
|
|
2514
|
-
const version2 = `${fullVersion.major}.${fullVersion.minor}`;
|
|
2515
|
-
const config2 = {
|
|
2516
|
-
root: configManager.spaRootPath,
|
|
2517
|
-
base: `/${basePath ? `${(0, import_normalize_path.default)(basePath)}/` : ""}${(0, import_normalize_path.default)(
|
|
2518
|
-
configManager.config.build.outputFolder
|
|
2519
|
-
)}/`,
|
|
2520
|
-
appType: "spa",
|
|
2521
|
-
resolve: {
|
|
2522
|
-
alias: {
|
|
2523
|
-
...(_d = projectConfig.config.resolve) == null ? void 0 : _d.alias,
|
|
2524
|
-
...alias
|
|
2525
|
-
},
|
|
2526
|
-
dedupe: ["graphql", "tinacms", "react", "react-dom", "react-router-dom"]
|
|
2527
|
-
},
|
|
2528
|
-
define: {
|
|
2529
|
-
"process.env": `new Object(${JSON.stringify(publicEnv)})`,
|
|
2530
|
-
"process.platform": `"${process.platform}"`,
|
|
2531
|
-
__API_URL__: `"${apiURL}"`,
|
|
2532
|
-
__BASE_PATH__: `"${((_f = (_e = configManager.config) == null ? void 0 : _e.build) == null ? void 0 : _f.basePath) || ""}"`,
|
|
2533
|
-
__TINA_GRAPHQL_VERSION__: version2
|
|
2534
|
-
},
|
|
2535
|
-
logLevel: "error",
|
|
2536
|
-
optimizeDeps: {
|
|
2537
|
-
force: true,
|
|
2538
|
-
include: ["react/jsx-runtime", "react/jsx-dev-runtime"]
|
|
2539
|
-
},
|
|
2540
|
-
server: {
|
|
2541
|
-
host: (_i = (_h = (_g = configManager.config) == null ? void 0 : _g.build) == null ? void 0 : _h.host) != null ? _i : false,
|
|
2542
|
-
watch: noWatch ? {
|
|
2543
|
-
ignored: ["**/*"]
|
|
2544
|
-
} : {
|
|
2545
|
-
ignored: [
|
|
2546
|
-
`${configManager.tinaFolderPath}/**/!(config.prebuild.jsx|_graphql.json)`
|
|
2547
|
-
]
|
|
2548
|
-
},
|
|
2549
|
-
fs: {
|
|
2550
|
-
strict: false
|
|
2551
|
-
}
|
|
2552
|
-
},
|
|
2553
|
-
build: {
|
|
2554
|
-
sourcemap: false,
|
|
2555
|
-
outDir: configManager.outputFolderPath,
|
|
2556
|
-
emptyOutDir: true,
|
|
2557
|
-
rollupOptions
|
|
2558
|
-
},
|
|
2559
|
-
plugins: [
|
|
2560
|
-
(0, import_plugin_react.default)({
|
|
2561
|
-
babel: {
|
|
2562
|
-
compact: true
|
|
2563
|
-
}
|
|
2564
|
-
}),
|
|
2565
|
-
(0, import_vite.splitVendorChunkPlugin)(),
|
|
2566
|
-
tinaTailwind(configManager.spaRootPath, configManager.prebuildFilePath),
|
|
2567
|
-
...plugins
|
|
2568
|
-
]
|
|
2569
|
-
};
|
|
2570
|
-
return config2;
|
|
2571
|
-
};
|
|
2572
|
-
|
|
2573
|
-
// src/next/config-manager.ts
|
|
2574
|
-
var import_tsconfig_paths = __toESM(require_lib2());
|
|
2575
|
-
var import_esbuild_plugin_alias_path = require("esbuild-plugin-alias-path");
|
|
2576
|
-
|
|
2577
|
-
// src/logger/index.ts
|
|
2578
|
-
var import_chalk = __toESM(require("chalk"));
|
|
2579
|
-
|
|
2580
|
-
// src/logger/is-unicode-supported.ts
|
|
2581
|
-
function isUnicodeSupported() {
|
|
2582
|
-
if (process.platform !== "win32") {
|
|
2583
|
-
return process.env.TERM !== "linux";
|
|
2584
|
-
}
|
|
2585
|
-
return Boolean(process.env.CI) || Boolean(process.env.WT_SESSION) || Boolean(process.env.TERMINUS_SUBLIME) || process.env.ConEmuTask === "{cmd::Cmder}" || process.env.TERM_PROGRAM === "Terminus-Sublime" || process.env.TERM_PROGRAM === "vscode" || process.env.TERM === "xterm-256color" || process.env.TERM === "alacritty" || process.env.TERMINAL_EMULATOR === "JetBrains-JediTerm";
|
|
2586
|
-
}
|
|
2587
|
-
|
|
2588
|
-
// src/logger/index.ts
|
|
2589
|
-
var import_log4js = __toESM(require("log4js"));
|
|
2590
|
-
var logger = import_log4js.default.getLogger();
|
|
2591
|
-
import_log4js.default.configure({
|
|
2592
|
-
appenders: {
|
|
2593
|
-
out: { type: "stdout", layout: { type: "messagePassThrough" } }
|
|
2594
|
-
},
|
|
2595
|
-
categories: { default: { appenders: ["out"], level: "info" } }
|
|
2596
|
-
});
|
|
2597
|
-
logger.level = "info";
|
|
2598
|
-
function ansiRegex() {
|
|
2599
|
-
const pattern = [
|
|
2600
|
-
"[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
|
|
2601
|
-
"(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"
|
|
2602
|
-
].join("|");
|
|
2603
|
-
return new RegExp(pattern, "g");
|
|
2604
|
-
}
|
|
2605
|
-
var bar = "\u2502";
|
|
2606
|
-
var strip = (str) => str.replace(ansiRegex(), "");
|
|
2607
|
-
var note = (message = "", title = "") => {
|
|
2608
|
-
const lines = `
|
|
2609
|
-
${message}
|
|
2610
|
-
`.split("\n");
|
|
2611
|
-
const len = lines.reduce((sum, ln) => {
|
|
2612
|
-
ln = strip(ln);
|
|
2613
|
-
return ln.length > sum ? ln.length : sum;
|
|
2614
|
-
}, 0) + 2;
|
|
2615
|
-
const msg = lines.map(
|
|
2616
|
-
(ln) => `${import_chalk.default.gray(bar)} ${import_chalk.default.white(ln)}${" ".repeat(
|
|
2617
|
-
len - strip(ln).length
|
|
2618
|
-
)}${import_chalk.default.gray(bar)}`
|
|
2619
|
-
).join("\n");
|
|
2620
|
-
const underscoreLen = len - title.length - 1 > 0 ? len - title.length - 1 : 0;
|
|
2621
|
-
process.stdout.write(
|
|
2622
|
-
`${import_chalk.default.gray(bar)}
|
|
2623
|
-
${import_chalk.default.green("\u25CB")} ${import_chalk.default.reset(
|
|
2624
|
-
title
|
|
2625
|
-
)} ${import_chalk.default.gray("\u2500".repeat(underscoreLen) + "\u256E")}
|
|
2626
|
-
${msg}
|
|
2627
|
-
${import_chalk.default.gray(
|
|
2628
|
-
"\u251C" + "\u2500".repeat(len + 2) + "\u256F"
|
|
2629
|
-
)}
|
|
2630
|
-
`
|
|
2631
|
-
);
|
|
2632
|
-
};
|
|
2633
|
-
var summary = (content) => {
|
|
2634
|
-
const outString = [];
|
|
2635
|
-
let longestKey = 0;
|
|
2636
|
-
content.items.forEach((item) => {
|
|
2637
|
-
item.subItems.forEach((subItem) => {
|
|
2638
|
-
if (subItem.key.length > longestKey) {
|
|
2639
|
-
longestKey = subItem.key.length;
|
|
2640
|
-
}
|
|
2641
|
-
});
|
|
2642
|
-
});
|
|
2643
|
-
content.items.forEach((item) => {
|
|
2644
|
-
outString.push(`${item.emoji} ${import_chalk.default.cyan(item.heading)}`);
|
|
2645
|
-
item.subItems.forEach((subItem) => {
|
|
2646
|
-
const spaces = longestKey - subItem.key.length + 4;
|
|
2647
|
-
outString.push(
|
|
2648
|
-
` ${subItem.key}:${[...Array(spaces)].join(" ")}${import_chalk.default.cyan(
|
|
2649
|
-
subItem.value
|
|
2650
|
-
)}`
|
|
2651
|
-
);
|
|
2652
|
-
});
|
|
2653
|
-
outString.push(``);
|
|
2654
|
-
});
|
|
2655
|
-
if (process.env.CI) {
|
|
2656
|
-
logger.info(JSON.stringify(content, null, 2));
|
|
2657
|
-
} else {
|
|
2658
|
-
note(outString.join("\n"), content.heading);
|
|
2659
|
-
}
|
|
2660
|
-
};
|
|
2661
|
-
var unicode = isUnicodeSupported();
|
|
2662
|
-
var s = (c, fallback) => unicode ? c : fallback;
|
|
2663
|
-
var S_STEP_ACTIVE = s("\u25C6", "*");
|
|
2664
|
-
var S_STEP_CANCEL = s("\u25A0", "x");
|
|
2665
|
-
var S_STEP_ERROR = s("\u25B2", "x");
|
|
2666
|
-
var S_STEP_SUBMIT = s("\u25C7", "o");
|
|
2667
|
-
var S_BAR_START = s("\u250C", "T");
|
|
2668
|
-
var S_BAR = s("\u2502", "|");
|
|
2669
|
-
var S_BAR_END = s("\u2514", "\u2014");
|
|
2670
|
-
var S_RADIO_ACTIVE = s("\u25CF", ">");
|
|
2671
|
-
var S_RADIO_INACTIVE = s("\u25CB", " ");
|
|
2672
|
-
var S_CHECKBOX_ACTIVE = s("\u25FB", "[\u2022]");
|
|
2673
|
-
var S_CHECKBOX_SELECTED = s("\u25FC", "[+]");
|
|
2674
|
-
var S_CHECKBOX_INACTIVE = s("\u25FB", "[ ]");
|
|
2675
|
-
var S_PASSWORD_MASK = s("\u25AA", "\u2022");
|
|
2676
|
-
var S_BAR_H = s("\u2500", "-");
|
|
2677
|
-
var S_CORNER_TOP_RIGHT = s("\u256E", "+");
|
|
2678
|
-
var S_CONNECT_LEFT = s("\u251C", "+");
|
|
2679
|
-
var S_CORNER_BOTTOM_RIGHT = s("\u256F", "+");
|
|
2680
|
-
var S_INFO = s("\u25CF", "\u2022");
|
|
2681
|
-
var S_SUCCESS = s("\u25C6", "*");
|
|
2682
|
-
var S_WARN = s("\u25B2", "!");
|
|
2683
|
-
var S_ERROR = s("\u25A0", "x");
|
|
2684
|
-
|
|
2685
|
-
// src/utils/alias-helpers.ts
|
|
2686
|
-
var import_path = __toESM(require("path"));
|
|
2687
|
-
function resolveTsPathsToEsbuildAliases(absoluteBaseUrl, paths) {
|
|
2688
|
-
return Object.entries(paths).reduce((aliases, [aliasKey, aliasPaths]) => {
|
|
2689
|
-
if (aliasKey === "@/*") {
|
|
2690
|
-
console.warn('Ignoring "@/*" alias due to potential conflicts.');
|
|
2691
|
-
return aliases;
|
|
2692
|
-
}
|
|
2693
|
-
const baseAliasPath = import_path.default.resolve(
|
|
2694
|
-
absoluteBaseUrl,
|
|
2695
|
-
aliasPaths[0].replace("*", "")
|
|
2696
|
-
);
|
|
2697
|
-
aliases[aliasKey] = baseAliasPath;
|
|
2698
|
-
return aliases;
|
|
2699
|
-
}, {});
|
|
2700
|
-
}
|
|
2701
|
-
|
|
2702
|
-
// src/next/config-manager.ts
|
|
2703
|
-
var TINA_FOLDER = "tina";
|
|
2704
|
-
var LEGACY_TINA_FOLDER = ".tina";
|
|
2705
|
-
var GENERATED_FOLDER = "__generated__";
|
|
2706
|
-
var GRAPHQL_JSON_FILE = "_graphql.json";
|
|
2707
|
-
var GRAPHQL_GQL_FILE = "schema.gql";
|
|
2708
|
-
var SCHEMA_JSON_FILE = "_schema.json";
|
|
2709
|
-
var LOOKUP_JSON_FILE = "_lookup.json";
|
|
2710
|
-
var ConfigManager = class {
|
|
2711
|
-
constructor({
|
|
2712
|
-
rootPath = process.cwd(),
|
|
2713
|
-
tinaGraphQLVersion,
|
|
2714
|
-
legacyNoSDK
|
|
2715
|
-
}) {
|
|
2716
|
-
this.rootPath = (0, import_normalize_path2.default)(rootPath);
|
|
2717
|
-
this.tinaGraphQLVersionFromCLI = tinaGraphQLVersion;
|
|
2718
|
-
this.legacyNoSDK = legacyNoSDK;
|
|
2719
|
-
}
|
|
2720
|
-
isUsingTs() {
|
|
2721
|
-
return [".ts", ".tsx"].includes(import_path2.default.extname(this.tinaConfigFilePath));
|
|
2722
|
-
}
|
|
2723
|
-
hasSelfHostedConfig() {
|
|
2724
|
-
return !!this.selfHostedDatabaseFilePath;
|
|
2725
|
-
}
|
|
2726
|
-
hasSeparateContentRoot() {
|
|
2727
|
-
return this.rootPath !== this.contentRootPath;
|
|
2728
|
-
}
|
|
2729
|
-
shouldSkipSDK() {
|
|
2730
|
-
var _a;
|
|
2731
|
-
if (this.legacyNoSDK) {
|
|
2732
|
-
return this.legacyNoSDK;
|
|
2733
|
-
}
|
|
2734
|
-
return ((_a = this.config.client) == null ? void 0 : _a.skip) || false;
|
|
2735
|
-
}
|
|
2736
|
-
async processConfig() {
|
|
2737
|
-
this.tinaFolderPath = await this.getTinaFolderPath(this.rootPath);
|
|
2738
|
-
this.envFilePath = import_path2.default.resolve(
|
|
2739
|
-
import_path2.default.join(this.tinaFolderPath, "..", ".env")
|
|
2740
|
-
);
|
|
2741
|
-
dotenv.config({ path: this.envFilePath });
|
|
2742
|
-
this.tinaConfigFilePath = await this.getPathWithExtension(
|
|
2743
|
-
import_path2.default.join(this.tinaFolderPath, "config")
|
|
2744
|
-
);
|
|
2745
|
-
if (!this.tinaConfigFilePath) {
|
|
2746
|
-
throw new Error(
|
|
2747
|
-
`Unable to find config file in ${this.tinaFolderPath}. Looking for a file named "config.{ts,tsx,js,jsx}"`
|
|
2748
|
-
);
|
|
2749
|
-
}
|
|
2750
|
-
this.selfHostedDatabaseFilePath = await this.getPathWithExtension(
|
|
2751
|
-
import_path2.default.join(this.tinaFolderPath, "database")
|
|
2752
|
-
);
|
|
2753
|
-
this.generatedFolderPath = import_path2.default.join(this.tinaFolderPath, GENERATED_FOLDER);
|
|
2754
|
-
this.generatedCachePath = import_path2.default.join(
|
|
2755
|
-
this.generatedFolderPath,
|
|
2756
|
-
".cache",
|
|
2757
|
-
String(new Date().getTime())
|
|
2758
|
-
);
|
|
2759
|
-
this.generatedGraphQLGQLPath = import_path2.default.join(
|
|
2760
|
-
this.generatedFolderPath,
|
|
2761
|
-
GRAPHQL_GQL_FILE
|
|
2762
|
-
);
|
|
2763
|
-
this.generatedGraphQLJSONPath = import_path2.default.join(
|
|
2764
|
-
this.generatedFolderPath,
|
|
2765
|
-
GRAPHQL_JSON_FILE
|
|
2766
|
-
);
|
|
2767
|
-
this.generatedSchemaJSONPath = import_path2.default.join(
|
|
2768
|
-
this.generatedFolderPath,
|
|
2769
|
-
SCHEMA_JSON_FILE
|
|
2770
|
-
);
|
|
2771
|
-
this.generatedLookupJSONPath = import_path2.default.join(
|
|
2772
|
-
this.generatedFolderPath,
|
|
2773
|
-
LOOKUP_JSON_FILE
|
|
2774
|
-
);
|
|
2775
|
-
this.generatedQueriesFilePath = import_path2.default.join(
|
|
2776
|
-
this.generatedFolderPath,
|
|
2777
|
-
"queries.gql"
|
|
2778
|
-
);
|
|
2779
|
-
this.generatedFragmentsFilePath = import_path2.default.join(
|
|
2780
|
-
this.generatedFolderPath,
|
|
2781
|
-
"frags.gql"
|
|
2782
|
-
);
|
|
2783
|
-
this.generatedTypesTSFilePath = import_path2.default.join(
|
|
2784
|
-
this.generatedFolderPath,
|
|
2785
|
-
"types.ts"
|
|
2786
|
-
);
|
|
2787
|
-
this.generatedTypesJSFilePath = import_path2.default.join(
|
|
2788
|
-
this.generatedFolderPath,
|
|
2789
|
-
"types.js"
|
|
2790
|
-
);
|
|
2791
|
-
this.generatedTypesDFilePath = import_path2.default.join(
|
|
2792
|
-
this.generatedFolderPath,
|
|
2793
|
-
"types.d.ts"
|
|
2794
|
-
);
|
|
2795
|
-
this.userQueriesAndFragmentsGlob = import_path2.default.join(
|
|
2796
|
-
this.tinaFolderPath,
|
|
2797
|
-
"queries/**/*.{graphql,gql}"
|
|
2798
|
-
);
|
|
2799
|
-
this.generatedQueriesAndFragmentsGlob = import_path2.default.join(
|
|
2800
|
-
this.generatedFolderPath,
|
|
2801
|
-
"*.{graphql,gql}"
|
|
2802
|
-
);
|
|
2803
|
-
this.generatedClientTSFilePath = import_path2.default.join(
|
|
2804
|
-
this.generatedFolderPath,
|
|
2805
|
-
"client.ts"
|
|
2806
|
-
);
|
|
2807
|
-
this.generatedClientJSFilePath = import_path2.default.join(
|
|
2808
|
-
this.generatedFolderPath,
|
|
2809
|
-
"client.js"
|
|
2810
|
-
);
|
|
2811
|
-
this.generatedClientDFilePath = import_path2.default.join(
|
|
2812
|
-
this.generatedFolderPath,
|
|
2813
|
-
"client.d.ts"
|
|
2814
|
-
);
|
|
2815
|
-
this.generatedDatabaseClientDFilePath = import_path2.default.join(
|
|
2816
|
-
this.generatedFolderPath,
|
|
2817
|
-
"databaseClient.d.ts"
|
|
2818
|
-
);
|
|
2819
|
-
this.generatedDatabaseClientTSFilePath = import_path2.default.join(
|
|
2820
|
-
this.generatedFolderPath,
|
|
2821
|
-
"databaseClient.ts"
|
|
2822
|
-
);
|
|
2823
|
-
this.generatedDatabaseClientJSFilePath = import_path2.default.join(
|
|
2824
|
-
this.generatedFolderPath,
|
|
2825
|
-
"databaseClient.js"
|
|
2826
|
-
);
|
|
2827
|
-
const clientExists = this.isUsingTs() ? await import_fs_extra2.default.pathExists(this.generatedClientTSFilePath) : await import_fs_extra2.default.pathExists(this.generatedClientJSFilePath);
|
|
2828
|
-
if (!clientExists) {
|
|
2829
|
-
const file = "export default ()=>({})\nexport const client = ()=>({})";
|
|
2830
|
-
if (this.isUsingTs()) {
|
|
2831
|
-
await import_fs_extra2.default.outputFile(this.generatedClientTSFilePath, file);
|
|
2832
|
-
} else {
|
|
2833
|
-
await import_fs_extra2.default.outputFile(this.generatedClientJSFilePath, file);
|
|
2834
|
-
}
|
|
2835
|
-
}
|
|
2836
|
-
const { config: config2, prebuildPath, watchList } = await this.loadConfigFile(
|
|
2837
|
-
this.generatedFolderPath,
|
|
2838
|
-
this.tinaConfigFilePath
|
|
2839
|
-
);
|
|
2840
|
-
this.watchList = watchList;
|
|
2841
|
-
this.config = config2;
|
|
2842
|
-
this.prebuildFilePath = prebuildPath;
|
|
2843
|
-
this.publicFolderPath = import_path2.default.join(
|
|
2844
|
-
this.rootPath,
|
|
2845
|
-
this.config.build.publicFolder
|
|
2846
|
-
);
|
|
2847
|
-
this.outputFolderPath = import_path2.default.join(
|
|
2848
|
-
this.publicFolderPath,
|
|
2849
|
-
this.config.build.outputFolder
|
|
2850
|
-
);
|
|
2851
|
-
this.outputHTMLFilePath = import_path2.default.join(this.outputFolderPath, "index.html");
|
|
2852
|
-
this.outputGitignorePath = import_path2.default.join(this.outputFolderPath, ".gitignore");
|
|
2853
|
-
const fullLocalContentPath = import_path2.default.join(
|
|
2854
|
-
this.tinaFolderPath,
|
|
2855
|
-
this.config.localContentPath || ""
|
|
2856
|
-
);
|
|
2857
|
-
if (this.config.localContentPath) {
|
|
2858
|
-
const localContentPathExists = await import_fs_extra2.default.pathExists(fullLocalContentPath);
|
|
2859
|
-
if (localContentPathExists) {
|
|
2860
|
-
logger.info(`Using separate content repo at ${fullLocalContentPath}`);
|
|
2861
|
-
this.contentRootPath = fullLocalContentPath;
|
|
2862
|
-
} else {
|
|
2863
|
-
logger.warn(
|
|
2864
|
-
`${import_chalk2.default.yellow("Warning:")} The localContentPath ${import_chalk2.default.cyan(
|
|
2865
|
-
fullLocalContentPath
|
|
2866
|
-
)} does not exist. Please create it or remove the localContentPath from your config file at ${import_chalk2.default.cyan(
|
|
2867
|
-
this.tinaConfigFilePath
|
|
2868
|
-
)}`
|
|
2869
|
-
);
|
|
2870
|
-
}
|
|
2871
|
-
}
|
|
2872
|
-
if (!this.contentRootPath) {
|
|
2873
|
-
this.contentRootPath = this.rootPath;
|
|
2874
|
-
}
|
|
2875
|
-
this.generatedFolderPathContentRepo = import_path2.default.join(
|
|
2876
|
-
await this.getTinaFolderPath(this.contentRootPath),
|
|
2877
|
-
GENERATED_FOLDER
|
|
2878
|
-
);
|
|
2879
|
-
this.spaMainPath = require.resolve("@tinacms/app");
|
|
2880
|
-
this.spaRootPath = import_path2.default.join(this.spaMainPath, "..", "..");
|
|
2881
|
-
}
|
|
2882
|
-
async getTinaFolderPath(rootPath) {
|
|
2883
|
-
const tinaFolderPath = import_path2.default.join(rootPath, TINA_FOLDER);
|
|
2884
|
-
const tinaFolderExists = await import_fs_extra2.default.pathExists(tinaFolderPath);
|
|
2885
|
-
if (tinaFolderExists) {
|
|
2886
|
-
this.isUsingLegacyFolder = false;
|
|
2887
|
-
return tinaFolderPath;
|
|
2888
|
-
}
|
|
2889
|
-
const legacyFolderPath = import_path2.default.join(rootPath, LEGACY_TINA_FOLDER);
|
|
2890
|
-
const legacyFolderExists = await import_fs_extra2.default.pathExists(legacyFolderPath);
|
|
2891
|
-
if (legacyFolderExists) {
|
|
2892
|
-
this.isUsingLegacyFolder = true;
|
|
2893
|
-
return legacyFolderPath;
|
|
2894
|
-
}
|
|
2895
|
-
throw new Error(
|
|
2896
|
-
`Unable to find Tina folder, if you're working in folder outside of the Tina config be sure to specify --rootPath`
|
|
2897
|
-
);
|
|
2898
|
-
}
|
|
2899
|
-
getTinaGraphQLVersion() {
|
|
2900
|
-
if (this.tinaGraphQLVersionFromCLI) {
|
|
2901
|
-
const version2 = this.tinaGraphQLVersionFromCLI.split(".");
|
|
790
|
+
0: "0ms",
|
|
791
|
+
2e3: "2000ms"
|
|
792
|
+
},
|
|
793
|
+
boxShadow: {
|
|
794
|
+
xs: "0 0 0 1px rgba(0, 0, 0, 0.05)",
|
|
795
|
+
outline: "0 0 0 3px rgba(66, 153, 225, 0.5)"
|
|
796
|
+
},
|
|
797
|
+
colors: {
|
|
798
|
+
blue: {
|
|
799
|
+
50: "#DCEEFF",
|
|
800
|
+
100: "#B4DBFF",
|
|
801
|
+
200: "#85C5FE",
|
|
802
|
+
300: "#4EABFE",
|
|
803
|
+
400: "#2296fe",
|
|
804
|
+
500: "#0084FF",
|
|
805
|
+
600: "#0574e4",
|
|
806
|
+
700: "#0D5DBD",
|
|
807
|
+
800: "#144696",
|
|
808
|
+
900: "#1D2C6C",
|
|
809
|
+
1e3: "#241748"
|
|
810
|
+
},
|
|
811
|
+
gray: {
|
|
812
|
+
50: "#F6F6F9",
|
|
813
|
+
100: "#EDECF3",
|
|
814
|
+
150: "#E6E3EF",
|
|
815
|
+
200: "#E1DDEC",
|
|
816
|
+
250: "#C9C5D5",
|
|
817
|
+
300: "#b2adbe",
|
|
818
|
+
400: "#918c9e",
|
|
819
|
+
500: "#716c7f",
|
|
820
|
+
600: "#565165",
|
|
821
|
+
700: "#433e52",
|
|
822
|
+
800: "#363145",
|
|
823
|
+
900: "#252336",
|
|
824
|
+
1e3: "#1c1b2e"
|
|
825
|
+
},
|
|
826
|
+
orange: {
|
|
827
|
+
400: "#EB6337",
|
|
828
|
+
500: "#EC4815",
|
|
829
|
+
600: "#DC4419"
|
|
830
|
+
},
|
|
831
|
+
background: "#FFFFFF",
|
|
832
|
+
foreground: "#0A0A0A",
|
|
833
|
+
muted: "#F5F5F5",
|
|
834
|
+
"muted-foreground": "#737373",
|
|
835
|
+
popover: "#FFFFFF",
|
|
836
|
+
"popover-foreground": "#0A0A0A",
|
|
837
|
+
card: "#FFFFFF",
|
|
838
|
+
"card-foreground": "#0A0A0A",
|
|
839
|
+
border: "#E5E5E5",
|
|
840
|
+
input: "#E5E5E5",
|
|
841
|
+
primary: "#171717",
|
|
842
|
+
"primary-foreground": "#FAFAFA",
|
|
843
|
+
secondary: "#F5F5F5",
|
|
844
|
+
"secondary-foreground": "#171717",
|
|
845
|
+
accent: "#F5F5F5",
|
|
846
|
+
"accent-foreground": "#171717",
|
|
847
|
+
destructive: "#FF3B3B",
|
|
848
|
+
"destructive-foreground": "#FAFAFA",
|
|
849
|
+
ring: "#0A0A0A"
|
|
850
|
+
},
|
|
851
|
+
fontFamily: {
|
|
852
|
+
sans: ["Inter", ...import_defaultTheme.default.fontFamily.sans]
|
|
853
|
+
},
|
|
854
|
+
lineHeight: {
|
|
855
|
+
3: "12px",
|
|
856
|
+
4: "16px",
|
|
857
|
+
5: "20px",
|
|
858
|
+
6: "24px",
|
|
859
|
+
7: "28px",
|
|
860
|
+
8: "32px",
|
|
861
|
+
9: "36px",
|
|
862
|
+
10: "40px"
|
|
863
|
+
},
|
|
864
|
+
maxWidth: {
|
|
865
|
+
form: "900px"
|
|
866
|
+
},
|
|
867
|
+
screens: {
|
|
868
|
+
xs: "320px",
|
|
869
|
+
sm: "560px",
|
|
870
|
+
md: "720px",
|
|
871
|
+
lg: "1030px"
|
|
872
|
+
}
|
|
873
|
+
}
|
|
874
|
+
},
|
|
875
|
+
content,
|
|
876
|
+
plugins: [
|
|
877
|
+
(0, import_typography.default)({ className: "tina-prose" }),
|
|
878
|
+
import_aspect_ratio.default,
|
|
879
|
+
import_container_queries.default
|
|
880
|
+
]
|
|
881
|
+
});
|
|
882
|
+
plugins.push(tw);
|
|
2902
883
|
return {
|
|
2903
|
-
|
|
2904
|
-
|
|
2905
|
-
|
|
2906
|
-
|
|
884
|
+
css: {
|
|
885
|
+
postcss: {
|
|
886
|
+
plugins
|
|
887
|
+
}
|
|
888
|
+
}
|
|
2907
889
|
};
|
|
2908
890
|
}
|
|
2909
|
-
|
|
2910
|
-
|
|
2911
|
-
|
|
2912
|
-
|
|
2913
|
-
|
|
2914
|
-
|
|
2915
|
-
|
|
2916
|
-
|
|
2917
|
-
|
|
2918
|
-
|
|
2919
|
-
|
|
2920
|
-
|
|
2921
|
-
|
|
2922
|
-
|
|
2923
|
-
|
|
2924
|
-
|
|
2925
|
-
|
|
2926
|
-
printoutputHTMLFilePath() {
|
|
2927
|
-
return this.outputHTMLFilePath.replace(`${this.publicFolderPath}/`, "");
|
|
2928
|
-
}
|
|
2929
|
-
printRelativePath(filename) {
|
|
2930
|
-
if (filename) {
|
|
2931
|
-
return filename.replace(/\\/g, "/").replace(`${this.rootPath}/`, "");
|
|
2932
|
-
}
|
|
2933
|
-
throw `No path provided to print`;
|
|
2934
|
-
}
|
|
2935
|
-
printPrebuildFilePath() {
|
|
2936
|
-
return this.prebuildFilePath.replace(/\\/g, "/").replace(`${this.rootPath}/${this.tinaFolderPath}/`, "");
|
|
2937
|
-
}
|
|
2938
|
-
printContentRelativePath(filename) {
|
|
2939
|
-
if (filename) {
|
|
2940
|
-
return filename.replace(/\\/g, "/").replace(`${this.contentRootPath}/`, "");
|
|
2941
|
-
}
|
|
2942
|
-
throw `No path provided to print`;
|
|
2943
|
-
}
|
|
2944
|
-
async getPathWithExtension(filepath) {
|
|
2945
|
-
const extensions = ["tsx", "ts", "jsx", "js"];
|
|
2946
|
-
let result;
|
|
2947
|
-
await Promise.all(
|
|
2948
|
-
extensions.map(async (ext) => {
|
|
2949
|
-
if (result) {
|
|
2950
|
-
return;
|
|
2951
|
-
}
|
|
2952
|
-
const filepathWithExtension = `${filepath}.${ext}`;
|
|
2953
|
-
const exists = import_fs_extra2.default.existsSync(filepathWithExtension);
|
|
2954
|
-
if (exists) {
|
|
2955
|
-
result = filepathWithExtension;
|
|
2956
|
-
}
|
|
2957
|
-
})
|
|
2958
|
-
);
|
|
2959
|
-
return result;
|
|
2960
|
-
}
|
|
2961
|
-
async loadDatabaseFile() {
|
|
2962
|
-
const tmpdir = import_path2.default.join(import_os.default.tmpdir(), Date.now().toString());
|
|
2963
|
-
const outfile = import_path2.default.join(tmpdir, "database.build.js");
|
|
2964
|
-
await esbuild.build({
|
|
2965
|
-
entryPoints: [this.selfHostedDatabaseFilePath],
|
|
2966
|
-
bundle: true,
|
|
2967
|
-
platform: "node",
|
|
2968
|
-
outfile,
|
|
2969
|
-
loader: loaders
|
|
2970
|
-
});
|
|
2971
|
-
const result = require(outfile);
|
|
2972
|
-
import_fs_extra2.default.removeSync(outfile);
|
|
2973
|
-
return result.default;
|
|
891
|
+
};
|
|
892
|
+
};
|
|
893
|
+
|
|
894
|
+
// src/next/vite/index.ts
|
|
895
|
+
async function listFilesRecursively({
|
|
896
|
+
directoryPath,
|
|
897
|
+
config: config2,
|
|
898
|
+
roothPath
|
|
899
|
+
}) {
|
|
900
|
+
const fullDirectoryPath = import_node_path2.default.join(
|
|
901
|
+
roothPath,
|
|
902
|
+
config2.publicFolder,
|
|
903
|
+
directoryPath
|
|
904
|
+
);
|
|
905
|
+
const exists = await import_fs_extra2.default.pathExists(fullDirectoryPath);
|
|
906
|
+
if (!exists) {
|
|
907
|
+
return { "0": [] };
|
|
2974
908
|
}
|
|
2975
|
-
|
|
2976
|
-
|
|
2977
|
-
|
|
2978
|
-
const
|
|
2979
|
-
|
|
2980
|
-
|
|
2981
|
-
|
|
2982
|
-
|
|
2983
|
-
|
|
2984
|
-
|
|
2985
|
-
|
|
2986
|
-
|
|
2987
|
-
|
|
2988
|
-
|
|
2989
|
-
|
|
2990
|
-
}
|
|
2991
|
-
});
|
|
2992
|
-
const tsconfigPath = import_path2.default.join(this.rootPath, "tsconfig.json");
|
|
2993
|
-
let dynamicAliases = {};
|
|
2994
|
-
if (import_fs_extra2.default.existsSync(tsconfigPath)) {
|
|
2995
|
-
const tsConfigResult = (0, import_tsconfig_paths.loadConfig)(tsconfigPath);
|
|
2996
|
-
if (tsConfigResult.resultType === "success") {
|
|
2997
|
-
const { absoluteBaseUrl, paths } = tsConfigResult;
|
|
2998
|
-
dynamicAliases = resolveTsPathsToEsbuildAliases(absoluteBaseUrl, paths);
|
|
2999
|
-
} else {
|
|
3000
|
-
console.error("Failed to load tsconfig.json:", tsConfigResult.message);
|
|
3001
|
-
throw new Error(`Invalid tsconfig.json at ${tsconfigPath}`);
|
|
909
|
+
const items = await import_fs_extra2.default.readdir(fullDirectoryPath);
|
|
910
|
+
const staticMediaItems = [];
|
|
911
|
+
for (const item of items) {
|
|
912
|
+
const itemPath = import_node_path2.default.join(fullDirectoryPath, item);
|
|
913
|
+
const stats = await import_fs_extra2.default.promises.lstat(itemPath);
|
|
914
|
+
const staticMediaItem = {
|
|
915
|
+
id: item,
|
|
916
|
+
filename: item,
|
|
917
|
+
type: stats.isDirectory() ? "dir" : "file",
|
|
918
|
+
directory: `${directoryPath.replace(config2.mediaRoot, "")}`,
|
|
919
|
+
src: `/${import_node_path2.default.join(directoryPath, item)}`,
|
|
920
|
+
thumbnails: {
|
|
921
|
+
"75x75": `/${import_node_path2.default.join(directoryPath, item)}`,
|
|
922
|
+
"400x400": `/${import_node_path2.default.join(directoryPath, item)}`,
|
|
923
|
+
"1000x1000": `/${import_node_path2.default.join(directoryPath, item)}`
|
|
3002
924
|
}
|
|
3003
|
-
}
|
|
3004
|
-
|
|
3005
|
-
|
|
3006
|
-
|
|
925
|
+
};
|
|
926
|
+
if (stats.isDirectory()) {
|
|
927
|
+
staticMediaItem.children = await listFilesRecursively({
|
|
928
|
+
directoryPath: import_node_path2.default.join(directoryPath, item),
|
|
929
|
+
config: config2,
|
|
930
|
+
roothPath
|
|
931
|
+
});
|
|
3007
932
|
}
|
|
3008
|
-
|
|
3009
|
-
|
|
3010
|
-
|
|
3011
|
-
|
|
3012
|
-
|
|
3013
|
-
|
|
3014
|
-
|
|
3015
|
-
logLevel: "silent",
|
|
3016
|
-
packages: "external",
|
|
3017
|
-
ignoreAnnotations: true,
|
|
3018
|
-
outfile: preBuildConfigPath,
|
|
3019
|
-
loader: loaders,
|
|
3020
|
-
metafile: true,
|
|
3021
|
-
plugins: Object.keys(dynamicAliases).length ? [(0, import_esbuild_plugin_alias_path.aliasPath)({ alias: dynamicAliases })] : []
|
|
3022
|
-
});
|
|
3023
|
-
const flattenedList = [];
|
|
3024
|
-
Object.keys(result2.metafile.inputs).forEach((key) => {
|
|
3025
|
-
if (key.includes("node_modules") || key.includes("__generated__")) {
|
|
3026
|
-
return;
|
|
3027
|
-
}
|
|
3028
|
-
flattenedList.push(key);
|
|
3029
|
-
});
|
|
3030
|
-
await esbuild.build({
|
|
3031
|
-
entryPoints: [configFilePath],
|
|
3032
|
-
bundle: true,
|
|
3033
|
-
target: ["es2020"],
|
|
3034
|
-
logLevel: "silent",
|
|
3035
|
-
platform: "node",
|
|
3036
|
-
outfile,
|
|
3037
|
-
loader: loaders,
|
|
3038
|
-
alias: (_a = viteConfig.config.resolve) == null ? void 0 : _a.alias
|
|
3039
|
-
});
|
|
3040
|
-
await esbuild.build({
|
|
3041
|
-
entryPoints: [outfile],
|
|
3042
|
-
bundle: true,
|
|
3043
|
-
logLevel: "silent",
|
|
3044
|
-
platform: "node",
|
|
3045
|
-
outfile: outfile2,
|
|
3046
|
-
loader: loaders
|
|
3047
|
-
});
|
|
3048
|
-
let result;
|
|
3049
|
-
try {
|
|
3050
|
-
result = require(outfile2);
|
|
3051
|
-
} catch (e) {
|
|
3052
|
-
console.error("Unexpected error loading config");
|
|
3053
|
-
console.error(e);
|
|
3054
|
-
throw e;
|
|
933
|
+
staticMediaItems.push(staticMediaItem);
|
|
934
|
+
}
|
|
935
|
+
function chunkArrayIntoObject(array, chunkSize) {
|
|
936
|
+
const result = {};
|
|
937
|
+
for (let i = 0; i < array.length; i += chunkSize) {
|
|
938
|
+
const chunkKey = `${i / chunkSize * 20}`;
|
|
939
|
+
result[chunkKey] = array.slice(i, i + chunkSize);
|
|
3055
940
|
}
|
|
3056
|
-
|
|
3057
|
-
import_fs_extra2.default.removeSync(outfile2);
|
|
3058
|
-
return {
|
|
3059
|
-
config: result.default,
|
|
3060
|
-
prebuildPath: preBuildConfigPath,
|
|
3061
|
-
watchList: flattenedList
|
|
3062
|
-
};
|
|
941
|
+
return result;
|
|
3063
942
|
}
|
|
3064
|
-
|
|
3065
|
-
var loaders = {
|
|
3066
|
-
".aac": "file",
|
|
3067
|
-
".css": "file",
|
|
3068
|
-
".eot": "file",
|
|
3069
|
-
".flac": "file",
|
|
3070
|
-
".gif": "file",
|
|
3071
|
-
".jpeg": "file",
|
|
3072
|
-
".jpg": "file",
|
|
3073
|
-
".json": "json",
|
|
3074
|
-
".mp3": "file",
|
|
3075
|
-
".mp4": "file",
|
|
3076
|
-
".ogg": "file",
|
|
3077
|
-
".otf": "file",
|
|
3078
|
-
".png": "file",
|
|
3079
|
-
".svg": "file",
|
|
3080
|
-
".ttf": "file",
|
|
3081
|
-
".wav": "file",
|
|
3082
|
-
".webm": "file",
|
|
3083
|
-
".webp": "file",
|
|
3084
|
-
".woff": "file",
|
|
3085
|
-
".woff2": "file",
|
|
3086
|
-
".js": "jsx",
|
|
3087
|
-
".jsx": "jsx",
|
|
3088
|
-
".tsx": "tsx"
|
|
3089
|
-
};
|
|
3090
|
-
|
|
3091
|
-
// src/next/commands/dev-command/html.ts
|
|
3092
|
-
var errorHTML = `<style type="text/css">
|
|
3093
|
-
#no-assets-placeholder body {
|
|
3094
|
-
font-family: sans-serif;
|
|
3095
|
-
font-size: 16px;
|
|
3096
|
-
line-height: 1.4;
|
|
3097
|
-
color: #333;
|
|
3098
|
-
background-color: #f5f5f5;
|
|
3099
|
-
}
|
|
3100
|
-
#no-assets-placeholder {
|
|
3101
|
-
max-width: 600px;
|
|
3102
|
-
margin: 0 auto;
|
|
3103
|
-
padding: 40px;
|
|
3104
|
-
text-align: center;
|
|
3105
|
-
background-color: #fff;
|
|
3106
|
-
box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.1);
|
|
3107
|
-
}
|
|
3108
|
-
#no-assets-placeholder h1 {
|
|
3109
|
-
font-size: 24px;
|
|
3110
|
-
margin-bottom: 20px;
|
|
3111
|
-
}
|
|
3112
|
-
#no-assets-placeholder p {
|
|
3113
|
-
margin-bottom: 10px;
|
|
3114
|
-
}
|
|
3115
|
-
#no-assets-placeholder a {
|
|
3116
|
-
color: #0077cc;
|
|
3117
|
-
text-decoration: none;
|
|
3118
|
-
}
|
|
3119
|
-
#no-assets-placeholder a:hover {
|
|
3120
|
-
text-decoration: underline;
|
|
943
|
+
return chunkArrayIntoObject(staticMediaItems, 20);
|
|
3121
944
|
}
|
|
3122
|
-
|
|
3123
|
-
|
|
3124
|
-
|
|
3125
|
-
|
|
3126
|
-
|
|
3127
|
-
|
|
3128
|
-
|
|
3129
|
-
|
|
3130
|
-
|
|
3131
|
-
|
|
3132
|
-
|
|
3133
|
-
|
|
3134
|
-
|
|
3135
|
-
|
|
3136
|
-
|
|
3137
|
-
|
|
3138
|
-
|
|
3139
|
-
|
|
3140
|
-
|
|
3141
|
-
|
|
3142
|
-
|
|
3143
|
-
|
|
3144
|
-
|
|
3145
|
-
|
|
3146
|
-
|
|
3147
|
-
|
|
3148
|
-
|
|
3149
|
-
|
|
3150
|
-
|
|
3151
|
-
|
|
3152
|
-
|
|
3153
|
-
|
|
3154
|
-
|
|
945
|
+
var createConfig = async ({
|
|
946
|
+
configManager,
|
|
947
|
+
database,
|
|
948
|
+
apiURL,
|
|
949
|
+
plugins = [],
|
|
950
|
+
noWatch,
|
|
951
|
+
rollupOptions
|
|
952
|
+
}) => {
|
|
953
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
954
|
+
const publicEnv = {};
|
|
955
|
+
Object.keys(process.env).forEach((key) => {
|
|
956
|
+
if (key.startsWith("TINA_PUBLIC_") || key.startsWith("NEXT_PUBLIC_") || key === "NODE_ENV" || key === "HEAD") {
|
|
957
|
+
try {
|
|
958
|
+
if (typeof process.env[key] === "string") {
|
|
959
|
+
publicEnv[key] = process.env[key];
|
|
960
|
+
} else {
|
|
961
|
+
publicEnv[key] = JSON.stringify(process.env[key]);
|
|
962
|
+
}
|
|
963
|
+
} catch (error) {
|
|
964
|
+
console.warn(
|
|
965
|
+
`Could not stringify public env process.env.${key} env variable`
|
|
966
|
+
);
|
|
967
|
+
console.warn(error);
|
|
968
|
+
}
|
|
969
|
+
}
|
|
970
|
+
});
|
|
971
|
+
const staticMediaPath = import_node_path2.default.join(
|
|
972
|
+
configManager.generatedFolderPath,
|
|
973
|
+
"static-media.json"
|
|
974
|
+
);
|
|
975
|
+
if ((_b = (_a = configManager.config.media) == null ? void 0 : _a.tina) == null ? void 0 : _b.static) {
|
|
976
|
+
const staticMedia = await listFilesRecursively({
|
|
977
|
+
directoryPath: ((_c = configManager.config.media.tina) == null ? void 0 : _c.mediaRoot) || "",
|
|
978
|
+
config: configManager.config.media.tina,
|
|
979
|
+
roothPath: configManager.rootPath
|
|
980
|
+
});
|
|
981
|
+
await import_fs_extra2.default.outputFile(staticMediaPath, JSON.stringify(staticMedia, null, 2));
|
|
982
|
+
} else {
|
|
983
|
+
await import_fs_extra2.default.outputFile(staticMediaPath, `[]`);
|
|
3155
984
|
}
|
|
3156
|
-
|
|
3157
|
-
|
|
3158
|
-
|
|
3159
|
-
|
|
3160
|
-
|
|
3161
|
-
|
|
3162
|
-
|
|
3163
|
-
|
|
3164
|
-
|
|
3165
|
-
|
|
3166
|
-
|
|
3167
|
-
|
|
3168
|
-
|
|
3169
|
-
|
|
3170
|
-
|
|
3171
|
-
|
|
3172
|
-
|
|
3173
|
-
|
|
3174
|
-
|
|
3175
|
-
|
|
3176
|
-
|
|
3177
|
-
|
|
3178
|
-
|
|
3179
|
-
|
|
3180
|
-
|
|
985
|
+
const alias = {
|
|
986
|
+
TINA_IMPORT: configManager.prebuildFilePath,
|
|
987
|
+
SCHEMA_IMPORT: configManager.generatedGraphQLJSONPath,
|
|
988
|
+
STATIC_MEDIA_IMPORT: staticMediaPath,
|
|
989
|
+
crypto: import_node_path2.default.join(configManager.spaRootPath, "src", "dummy-client.ts"),
|
|
990
|
+
fs: import_node_path2.default.join(configManager.spaRootPath, "src", "dummy-client.ts"),
|
|
991
|
+
os: import_node_path2.default.join(configManager.spaRootPath, "src", "dummy-client.ts"),
|
|
992
|
+
path: import_node_path2.default.join(configManager.spaRootPath, "src", "dummy-client.ts")
|
|
993
|
+
};
|
|
994
|
+
if (configManager.shouldSkipSDK()) {
|
|
995
|
+
alias["CLIENT_IMPORT"] = import_node_path2.default.join(
|
|
996
|
+
configManager.spaRootPath,
|
|
997
|
+
"src",
|
|
998
|
+
"dummy-client.ts"
|
|
999
|
+
);
|
|
1000
|
+
} else {
|
|
1001
|
+
alias["CLIENT_IMPORT"] = configManager.isUsingTs() ? configManager.generatedTypesTSFilePath : configManager.generatedTypesJSFilePath;
|
|
1002
|
+
}
|
|
1003
|
+
let basePath;
|
|
1004
|
+
if (configManager.config.build.basePath) {
|
|
1005
|
+
basePath = configManager.config.build.basePath;
|
|
1006
|
+
}
|
|
1007
|
+
const fullVersion = configManager.getTinaGraphQLVersion();
|
|
1008
|
+
const version2 = `${fullVersion.major}.${fullVersion.minor}`;
|
|
1009
|
+
const config2 = {
|
|
1010
|
+
root: configManager.spaRootPath,
|
|
1011
|
+
base: `/${basePath ? `${(0, import_normalize_path2.default)(basePath)}/` : ""}${(0, import_normalize_path2.default)(
|
|
1012
|
+
configManager.config.build.outputFolder
|
|
1013
|
+
)}/`,
|
|
1014
|
+
appType: "spa",
|
|
1015
|
+
resolve: {
|
|
1016
|
+
alias,
|
|
1017
|
+
dedupe: ["graphql", "tinacms", "react", "react-dom", "react-router-dom"]
|
|
1018
|
+
},
|
|
1019
|
+
define: {
|
|
1020
|
+
"process.env": `new Object(${JSON.stringify(publicEnv)})`,
|
|
1021
|
+
"process.platform": `"${process.platform}"`,
|
|
1022
|
+
__API_URL__: `"${apiURL}"`,
|
|
1023
|
+
__BASE_PATH__: `"${((_e = (_d = configManager.config) == null ? void 0 : _d.build) == null ? void 0 : _e.basePath) || ""}"`,
|
|
1024
|
+
__TINA_GRAPHQL_VERSION__: version2
|
|
1025
|
+
},
|
|
1026
|
+
logLevel: "error",
|
|
1027
|
+
optimizeDeps: {
|
|
1028
|
+
force: true,
|
|
1029
|
+
include: ["react/jsx-runtime", "react/jsx-dev-runtime"]
|
|
1030
|
+
},
|
|
1031
|
+
server: {
|
|
1032
|
+
host: (_h = (_g = (_f = configManager.config) == null ? void 0 : _f.build) == null ? void 0 : _g.host) != null ? _h : false,
|
|
1033
|
+
watch: noWatch ? {
|
|
1034
|
+
ignored: ["**/*"]
|
|
1035
|
+
} : {
|
|
1036
|
+
ignored: [
|
|
1037
|
+
`${configManager.tinaFolderPath}/**/!(config.prebuild.jsx|_graphql.json)`
|
|
1038
|
+
]
|
|
1039
|
+
},
|
|
1040
|
+
fs: {
|
|
1041
|
+
strict: false
|
|
1042
|
+
}
|
|
1043
|
+
},
|
|
1044
|
+
build: {
|
|
1045
|
+
sourcemap: false,
|
|
1046
|
+
outDir: configManager.outputFolderPath,
|
|
1047
|
+
emptyOutDir: true,
|
|
1048
|
+
rollupOptions
|
|
1049
|
+
},
|
|
1050
|
+
plugins: [
|
|
1051
|
+
(0, import_plugin_react.default)({
|
|
1052
|
+
babel: {
|
|
1053
|
+
compact: true
|
|
1054
|
+
}
|
|
1055
|
+
}),
|
|
1056
|
+
(0, import_vite.splitVendorChunkPlugin)(),
|
|
1057
|
+
tinaTailwind(configManager.spaRootPath, configManager.prebuildFilePath),
|
|
1058
|
+
...plugins
|
|
1059
|
+
]
|
|
1060
|
+
};
|
|
1061
|
+
return config2;
|
|
3181
1062
|
};
|
|
3182
|
-
var logText = import_chalk3.default.italic.gray;
|
|
3183
|
-
var warnText = import_chalk3.default.yellowBright.bgBlack;
|
|
3184
|
-
var titleText = import_chalk3.default.bgHex("d2f1f8").hex("ec4816");
|
|
3185
|
-
var CONFIRMATION_TEXT = import_chalk3.default.dim("enter to confirm");
|
|
3186
|
-
|
|
3187
|
-
// src/next/commands/dev-command/server/index.ts
|
|
3188
|
-
var import_vite4 = require("vite");
|
|
3189
1063
|
|
|
3190
1064
|
// src/next/vite/plugins.ts
|
|
3191
1065
|
var import_pluginutils = require("@rollup/pluginutils");
|
|
3192
1066
|
var import_fs = __toESM(require("fs"));
|
|
3193
|
-
var
|
|
1067
|
+
var import_vite2 = require("vite");
|
|
3194
1068
|
var import_esbuild = require("esbuild");
|
|
3195
|
-
var
|
|
1069
|
+
var import_path3 = __toESM(require("path"));
|
|
3196
1070
|
var import_body_parser = __toESM(require("body-parser"));
|
|
3197
1071
|
var import_cors = __toESM(require("cors"));
|
|
3198
1072
|
var import_graphql = require("@tinacms/graphql");
|
|
3199
1073
|
|
|
3200
1074
|
// src/next/commands/dev-command/server/media.ts
|
|
3201
1075
|
var import_fs_extra3 = __toESM(require("fs-extra"));
|
|
3202
|
-
var
|
|
1076
|
+
var import_path2 = __toESM(require("path"));
|
|
3203
1077
|
var import_busboy = __toESM(require("busboy"));
|
|
3204
1078
|
var createMediaRouter = (config2) => {
|
|
3205
|
-
const mediaFolder =
|
|
1079
|
+
const mediaFolder = import_path2.default.join(
|
|
3206
1080
|
config2.rootPath,
|
|
3207
1081
|
config2.publicFolder,
|
|
3208
1082
|
config2.mediaRoot
|
|
@@ -3230,8 +1104,8 @@ var createMediaRouter = (config2) => {
|
|
|
3230
1104
|
bb.on("file", async (_name, file, _info) => {
|
|
3231
1105
|
var _a;
|
|
3232
1106
|
const fullPath = decodeURI((_a = req.url) == null ? void 0 : _a.slice("/media/upload/".length));
|
|
3233
|
-
const saveTo =
|
|
3234
|
-
await import_fs_extra3.default.ensureDir(
|
|
1107
|
+
const saveTo = import_path2.default.join(mediaFolder, ...fullPath.split("/"));
|
|
1108
|
+
await import_fs_extra3.default.ensureDir(import_path2.default.dirname(saveTo));
|
|
3235
1109
|
file.pipe(import_fs_extra3.default.createWriteStream(saveTo));
|
|
3236
1110
|
});
|
|
3237
1111
|
bb.on("error", (error) => {
|
|
@@ -3266,7 +1140,7 @@ var MediaModel = class {
|
|
|
3266
1140
|
}
|
|
3267
1141
|
async listMedia(args) {
|
|
3268
1142
|
try {
|
|
3269
|
-
const folderPath = (0,
|
|
1143
|
+
const folderPath = (0, import_path2.join)(
|
|
3270
1144
|
this.rootPath,
|
|
3271
1145
|
this.publicFolder,
|
|
3272
1146
|
this.mediaRoot,
|
|
@@ -3281,7 +1155,7 @@ var MediaModel = class {
|
|
|
3281
1155
|
}
|
|
3282
1156
|
const filesStr = await import_fs_extra3.default.readdir(folderPath);
|
|
3283
1157
|
const filesProm = filesStr.map(async (file) => {
|
|
3284
|
-
const filePath = (0,
|
|
1158
|
+
const filePath = (0, import_path2.join)(folderPath, file);
|
|
3285
1159
|
const stat = await import_fs_extra3.default.stat(filePath);
|
|
3286
1160
|
let src = `/${file}`;
|
|
3287
1161
|
const isFile = stat.isFile();
|
|
@@ -3338,7 +1212,7 @@ var MediaModel = class {
|
|
|
3338
1212
|
}
|
|
3339
1213
|
async deleteMedia(args) {
|
|
3340
1214
|
try {
|
|
3341
|
-
const file = (0,
|
|
1215
|
+
const file = (0, import_path2.join)(
|
|
3342
1216
|
this.rootPath,
|
|
3343
1217
|
this.publicFolder,
|
|
3344
1218
|
this.mediaRoot,
|
|
@@ -3403,7 +1277,7 @@ var transformTsxPlugin = ({
|
|
|
3403
1277
|
const plug = {
|
|
3404
1278
|
name: "transform-tsx",
|
|
3405
1279
|
async transform(code, id) {
|
|
3406
|
-
const extName =
|
|
1280
|
+
const extName = import_path3.default.extname(id);
|
|
3407
1281
|
if (extName.startsWith(".tsx") || extName.startsWith(".ts")) {
|
|
3408
1282
|
const result = await (0, import_esbuild.transform)(code, { loader: "tsx" });
|
|
3409
1283
|
return {
|
|
@@ -3513,7 +1387,7 @@ function viteTransformExtension({
|
|
|
3513
1387
|
previousExport: exportAsDefault ? null : code
|
|
3514
1388
|
}
|
|
3515
1389
|
});
|
|
3516
|
-
const res = await (0,
|
|
1390
|
+
const res = await (0, import_vite2.transformWithEsbuild)(componentCode, id, {
|
|
3517
1391
|
loader: "jsx",
|
|
3518
1392
|
...esbuildOptions
|
|
3519
1393
|
});
|
|
@@ -3533,7 +1407,7 @@ var createDevServer = async (configManager, database, searchIndex, apiURL, noWat
|
|
|
3533
1407
|
devServerEndPointsPlugin({ apiURL, configManager, database, searchIndex }),
|
|
3534
1408
|
viteTransformExtension()
|
|
3535
1409
|
];
|
|
3536
|
-
return (0,
|
|
1410
|
+
return (0, import_vite3.createServer)(
|
|
3537
1411
|
await createConfig({
|
|
3538
1412
|
configManager,
|
|
3539
1413
|
database,
|
|
@@ -3548,10 +1422,6 @@ var createDevServer = async (configManager, database, searchIndex, apiURL, noWat
|
|
|
3548
1422
|
}
|
|
3549
1423
|
warn(warning);
|
|
3550
1424
|
}
|
|
3551
|
-
},
|
|
3552
|
-
viteConfigEnv: {
|
|
3553
|
-
command: "serve",
|
|
3554
|
-
mode: "development"
|
|
3555
1425
|
}
|
|
3556
1426
|
})
|
|
3557
1427
|
);
|
|
@@ -3559,7 +1429,7 @@ var createDevServer = async (configManager, database, searchIndex, apiURL, noWat
|
|
|
3559
1429
|
|
|
3560
1430
|
// src/next/codegen/index.ts
|
|
3561
1431
|
var import_fs_extra4 = __toESM(require("fs-extra"));
|
|
3562
|
-
var
|
|
1432
|
+
var import_path4 = __toESM(require("path"));
|
|
3563
1433
|
var import_graphql6 = require("graphql");
|
|
3564
1434
|
|
|
3565
1435
|
// src/next/codegen/codegen/index.ts
|
|
@@ -3805,11 +1675,11 @@ var Codegen = class {
|
|
|
3805
1675
|
this.noClientBuildCache = noClientBuildCache;
|
|
3806
1676
|
}
|
|
3807
1677
|
async writeConfigFile(fileName, data) {
|
|
3808
|
-
const filePath =
|
|
1678
|
+
const filePath = import_path4.default.join(this.configManager.generatedFolderPath, fileName);
|
|
3809
1679
|
await import_fs_extra4.default.ensureFile(filePath);
|
|
3810
1680
|
await import_fs_extra4.default.outputFile(filePath, data);
|
|
3811
1681
|
if (this.configManager.hasSeparateContentRoot()) {
|
|
3812
|
-
const filePath2 =
|
|
1682
|
+
const filePath2 = import_path4.default.join(
|
|
3813
1683
|
this.configManager.generatedFolderPathContentRepo,
|
|
3814
1684
|
fileName
|
|
3815
1685
|
);
|
|
@@ -4347,7 +2217,7 @@ var BaseCommand = class extends import_clipanion.Command {
|
|
|
4347
2217
|
pathFilter
|
|
4348
2218
|
});
|
|
4349
2219
|
const tinaPathUpdates = modified.filter(
|
|
4350
|
-
(
|
|
2220
|
+
(path14) => path14.startsWith(".tina/__generated__/_schema.json") || path14.startsWith("tina/tina-lock.json")
|
|
4351
2221
|
);
|
|
4352
2222
|
if (tinaPathUpdates.length > 0) {
|
|
4353
2223
|
res = await database.indexContent({
|
|
@@ -4462,14 +2332,14 @@ var DevCommand = class extends BaseCommand {
|
|
|
4462
2332
|
graphql: graphqlSchemaObject
|
|
4463
2333
|
});
|
|
4464
2334
|
import_fs_extra6.default.writeFileSync(
|
|
4465
|
-
|
|
2335
|
+
import_path5.default.join(configManager.tinaFolderPath, tinaLockFilename),
|
|
4466
2336
|
tinaLockContent
|
|
4467
2337
|
);
|
|
4468
2338
|
if (configManager.hasSeparateContentRoot()) {
|
|
4469
2339
|
const rootPath = await configManager.getTinaFolderPath(
|
|
4470
2340
|
configManager.contentRootPath
|
|
4471
2341
|
);
|
|
4472
|
-
const filePath =
|
|
2342
|
+
const filePath = import_path5.default.join(rootPath, tinaLockFilename);
|
|
4473
2343
|
await import_fs_extra6.default.ensureFile(filePath);
|
|
4474
2344
|
await import_fs_extra6.default.outputFile(filePath, tinaLockContent);
|
|
4475
2345
|
}
|
|
@@ -4616,7 +2486,7 @@ ${dangerText(e.message)}
|
|
|
4616
2486
|
watchContentFiles(configManager, database, searchIndexer) {
|
|
4617
2487
|
const collectionContentFiles = [];
|
|
4618
2488
|
configManager.config.schema.collections.forEach((collection) => {
|
|
4619
|
-
const collectionGlob = `${
|
|
2489
|
+
const collectionGlob = `${import_path5.default.join(
|
|
4620
2490
|
configManager.contentRootPath,
|
|
4621
2491
|
collection.path
|
|
4622
2492
|
)}/**/*.${collection.format || "md"}`;
|
|
@@ -4676,11 +2546,11 @@ var import_clipanion3 = require("clipanion");
|
|
|
4676
2546
|
var import_progress2 = __toESM(require("progress"));
|
|
4677
2547
|
var import_fs_extra7 = __toESM(require("fs-extra"));
|
|
4678
2548
|
var import_crypto = __toESM(require("crypto"));
|
|
4679
|
-
var
|
|
2549
|
+
var import_path6 = __toESM(require("path"));
|
|
4680
2550
|
var import_graphql11 = require("@tinacms/graphql");
|
|
4681
2551
|
|
|
4682
2552
|
// src/next/commands/build-command/server.ts
|
|
4683
|
-
var
|
|
2553
|
+
var import_vite5 = require("vite");
|
|
4684
2554
|
var buildProductionSpa = async (configManager, database, apiURL) => {
|
|
4685
2555
|
const publicEnv = {};
|
|
4686
2556
|
Object.keys(process.env).forEach((key) => {
|
|
@@ -4712,13 +2582,9 @@ var buildProductionSpa = async (configManager, database, apiURL) => {
|
|
|
4712
2582
|
}
|
|
4713
2583
|
warn(warning);
|
|
4714
2584
|
}
|
|
4715
|
-
},
|
|
4716
|
-
viteConfigEnv: {
|
|
4717
|
-
command: "build",
|
|
4718
|
-
mode: "production"
|
|
4719
2585
|
}
|
|
4720
2586
|
});
|
|
4721
|
-
return (0,
|
|
2587
|
+
return (0, import_vite5.build)(config2);
|
|
4722
2588
|
};
|
|
4723
2589
|
|
|
4724
2590
|
// src/next/commands/build-command/index.ts
|
|
@@ -5371,7 +3237,7 @@ Additional info: Branch: ${config2.branch}, Client ID: ${config2.clientId} `;
|
|
|
5371
3237
|
}
|
|
5372
3238
|
const localTinaSchema = JSON.parse(
|
|
5373
3239
|
await database.bridge.get(
|
|
5374
|
-
|
|
3240
|
+
import_path6.default.join(database.tinaDirectory, "__generated__", "_schema.json")
|
|
5375
3241
|
)
|
|
5376
3242
|
);
|
|
5377
3243
|
localTinaSchema.version = void 0;
|
|
@@ -5741,25 +3607,25 @@ var import_clipanion6 = require("clipanion");
|
|
|
5741
3607
|
|
|
5742
3608
|
// src/cmds/init/detectEnvironment.ts
|
|
5743
3609
|
var import_fs_extra8 = __toESM(require("fs-extra"));
|
|
5744
|
-
var
|
|
3610
|
+
var import_path7 = __toESM(require("path"));
|
|
5745
3611
|
var checkGitignoreForItem = async ({
|
|
5746
3612
|
baseDir,
|
|
5747
3613
|
line
|
|
5748
3614
|
}) => {
|
|
5749
|
-
const gitignoreContent = import_fs_extra8.default.readFileSync(
|
|
3615
|
+
const gitignoreContent = import_fs_extra8.default.readFileSync(import_path7.default.join(baseDir, ".gitignore")).toString();
|
|
5750
3616
|
return gitignoreContent.split("\n").some((item) => item === line);
|
|
5751
3617
|
};
|
|
5752
3618
|
var makeGeneratedFile = async (name2, generatedFileType, parentPath, opts) => {
|
|
5753
3619
|
const result = {
|
|
5754
|
-
fullPathTS:
|
|
3620
|
+
fullPathTS: import_path7.default.join(
|
|
5755
3621
|
parentPath,
|
|
5756
3622
|
`${name2}.${(opts == null ? void 0 : opts.typescriptSuffix) || (opts == null ? void 0 : opts.extensionOverride) || "ts"}`
|
|
5757
3623
|
),
|
|
5758
|
-
fullPathJS:
|
|
3624
|
+
fullPathJS: import_path7.default.join(
|
|
5759
3625
|
parentPath,
|
|
5760
3626
|
`${name2}.${(opts == null ? void 0 : opts.extensionOverride) || "js"}`
|
|
5761
3627
|
),
|
|
5762
|
-
fullPathOverride: (opts == null ? void 0 : opts.extensionOverride) ?
|
|
3628
|
+
fullPathOverride: (opts == null ? void 0 : opts.extensionOverride) ? import_path7.default.join(parentPath, `${name2}.${opts == null ? void 0 : opts.extensionOverride}`) : "",
|
|
5763
3629
|
generatedFileType,
|
|
5764
3630
|
name: name2,
|
|
5765
3631
|
parentPath,
|
|
@@ -5789,16 +3655,16 @@ var detectEnvironment = async ({
|
|
|
5789
3655
|
}) => {
|
|
5790
3656
|
var _a;
|
|
5791
3657
|
const hasForestryConfig = await import_fs_extra8.default.pathExists(
|
|
5792
|
-
|
|
3658
|
+
import_path7.default.join(pathToForestryConfig, ".forestry", "settings.yml")
|
|
5793
3659
|
);
|
|
5794
|
-
const sampleContentPath =
|
|
3660
|
+
const sampleContentPath = import_path7.default.join(
|
|
5795
3661
|
baseDir,
|
|
5796
3662
|
"content",
|
|
5797
3663
|
"posts",
|
|
5798
3664
|
"hello-world.md"
|
|
5799
3665
|
);
|
|
5800
|
-
const usingSrc = import_fs_extra8.default.pathExistsSync(
|
|
5801
|
-
const tinaFolder =
|
|
3666
|
+
const usingSrc = import_fs_extra8.default.pathExistsSync(import_path7.default.join(baseDir, "src")) && (import_fs_extra8.default.pathExistsSync(import_path7.default.join(baseDir, "src", "app")) || import_fs_extra8.default.pathExistsSync(import_path7.default.join(baseDir, "src", "pages")));
|
|
3667
|
+
const tinaFolder = import_path7.default.join(baseDir, "tina");
|
|
5802
3668
|
const tinaConfigExists = Boolean(
|
|
5803
3669
|
await import_fs_extra8.default.pathExists(tinaFolder) && (await import_fs_extra8.default.readdir(tinaFolder)).find((x) => x.includes("config"))
|
|
5804
3670
|
);
|
|
@@ -5812,12 +3678,12 @@ var detectEnvironment = async ({
|
|
|
5812
3678
|
"next-api-handler": await makeGeneratedFile(
|
|
5813
3679
|
"[...routes]",
|
|
5814
3680
|
"next-api-handler",
|
|
5815
|
-
|
|
3681
|
+
import_path7.default.join(...pagesDir, "api", "tina")
|
|
5816
3682
|
),
|
|
5817
3683
|
"reactive-example": await makeGeneratedFile(
|
|
5818
3684
|
"[filename]",
|
|
5819
3685
|
"reactive-example",
|
|
5820
|
-
|
|
3686
|
+
import_path7.default.join(...pagesDir, "demo", "blog"),
|
|
5821
3687
|
{
|
|
5822
3688
|
typescriptSuffix: "tsx"
|
|
5823
3689
|
}
|
|
@@ -5825,13 +3691,13 @@ var detectEnvironment = async ({
|
|
|
5825
3691
|
"users-json": await makeGeneratedFile(
|
|
5826
3692
|
"index",
|
|
5827
3693
|
"users-json",
|
|
5828
|
-
|
|
3694
|
+
import_path7.default.join(baseDir, "content", "users"),
|
|
5829
3695
|
{ extensionOverride: "json" }
|
|
5830
3696
|
),
|
|
5831
3697
|
"sample-content": await makeGeneratedFile(
|
|
5832
3698
|
"hello-world",
|
|
5833
3699
|
"sample-content",
|
|
5834
|
-
|
|
3700
|
+
import_path7.default.join(baseDir, "content", "posts"),
|
|
5835
3701
|
{ extensionOverride: "md" }
|
|
5836
3702
|
)
|
|
5837
3703
|
};
|
|
@@ -5857,13 +3723,13 @@ var detectEnvironment = async ({
|
|
|
5857
3723
|
);
|
|
5858
3724
|
}
|
|
5859
3725
|
}
|
|
5860
|
-
const hasGitIgnore = await import_fs_extra8.default.pathExists(
|
|
3726
|
+
const hasGitIgnore = await import_fs_extra8.default.pathExists(import_path7.default.join(".gitignore"));
|
|
5861
3727
|
const hasGitIgnoreNodeModules = hasGitIgnore && await checkGitignoreForItem({ baseDir, line: "node_modules" });
|
|
5862
3728
|
const hasEnvTina = hasGitIgnore && await checkGitignoreForItem({ baseDir, line: ".env.tina" });
|
|
5863
3729
|
const hasGitIgnoreEnv = hasGitIgnore && await checkGitignoreForItem({ baseDir, line: ".env" });
|
|
5864
3730
|
let frontMatterFormat;
|
|
5865
3731
|
if (hasForestryConfig) {
|
|
5866
|
-
const hugoConfigPath =
|
|
3732
|
+
const hugoConfigPath = import_path7.default.join(rootPath, "config.toml");
|
|
5867
3733
|
if (await import_fs_extra8.default.pathExists(hugoConfigPath)) {
|
|
5868
3734
|
const hugoConfig = await import_fs_extra8.default.readFile(hugoConfigPath, "utf8");
|
|
5869
3735
|
const metaDataFormat = (_a = hugoConfig.match(/metaDataFormat = "(.*)"/)) == null ? void 0 : _a[1];
|
|
@@ -6471,18 +4337,18 @@ var CLICommand = class {
|
|
|
6471
4337
|
};
|
|
6472
4338
|
|
|
6473
4339
|
// src/cmds/init/apply.ts
|
|
6474
|
-
var
|
|
4340
|
+
var import_path11 = __toESM(require("path"));
|
|
6475
4341
|
|
|
6476
4342
|
// src/cmds/forestry-migrate/index.ts
|
|
6477
4343
|
var import_fs_extra10 = __toESM(require("fs-extra"));
|
|
6478
|
-
var
|
|
4344
|
+
var import_path9 = __toESM(require("path"));
|
|
6479
4345
|
var import_js_yaml2 = __toESM(require("js-yaml"));
|
|
6480
4346
|
var import_minimatch = __toESM(require("minimatch"));
|
|
6481
4347
|
var import_graphql16 = require("@tinacms/graphql");
|
|
6482
4348
|
|
|
6483
4349
|
// src/cmds/forestry-migrate/util/index.ts
|
|
6484
4350
|
var import_fs_extra9 = __toESM(require("fs-extra"));
|
|
6485
|
-
var
|
|
4351
|
+
var import_path8 = __toESM(require("path"));
|
|
6486
4352
|
var import_js_yaml = __toESM(require("js-yaml"));
|
|
6487
4353
|
var import_zod = __toESM(require("zod"));
|
|
6488
4354
|
|
|
@@ -6893,7 +4759,7 @@ var transformForestryFieldsToTinaFields = ({
|
|
|
6893
4759
|
return tinaFields;
|
|
6894
4760
|
};
|
|
6895
4761
|
var getFieldsFromTemplates = ({ tem, pathToForestryConfig, skipBlocks = false }) => {
|
|
6896
|
-
const templatePath =
|
|
4762
|
+
const templatePath = import_path8.default.join(
|
|
6897
4763
|
pathToForestryConfig,
|
|
6898
4764
|
".forestry",
|
|
6899
4765
|
"front_matter",
|
|
@@ -6968,8 +4834,8 @@ var generateAllTemplates = async ({
|
|
|
6968
4834
|
pathToForestryConfig
|
|
6969
4835
|
}) => {
|
|
6970
4836
|
const allTemplates = (await import_fs_extra10.default.readdir(
|
|
6971
|
-
|
|
6972
|
-
)).map((tem) =>
|
|
4837
|
+
import_path9.default.join(pathToForestryConfig, ".forestry", "front_matter", "templates")
|
|
4838
|
+
)).map((tem) => import_path9.default.basename(tem, ".yml"));
|
|
6973
4839
|
const templateMap = /* @__PURE__ */ new Map();
|
|
6974
4840
|
const proms = allTemplates.map(async (tem) => {
|
|
6975
4841
|
try {
|
|
@@ -7111,9 +4977,9 @@ var generateCollectionFromForestrySection = (args) => {
|
|
|
7111
4977
|
return c;
|
|
7112
4978
|
} else if (section.type === "document") {
|
|
7113
4979
|
const filePath = section.path;
|
|
7114
|
-
const extname =
|
|
7115
|
-
const fileName =
|
|
7116
|
-
const dir =
|
|
4980
|
+
const extname = import_path9.default.extname(filePath);
|
|
4981
|
+
const fileName = import_path9.default.basename(filePath, extname);
|
|
4982
|
+
const dir = import_path9.default.dirname(filePath);
|
|
7117
4983
|
const ext = checkExt(extname);
|
|
7118
4984
|
if (ext) {
|
|
7119
4985
|
const fields = [];
|
|
@@ -7176,7 +5042,7 @@ var generateCollections = async ({
|
|
|
7176
5042
|
usingTypescript
|
|
7177
5043
|
});
|
|
7178
5044
|
const forestryConfig = await import_fs_extra10.default.readFile(
|
|
7179
|
-
|
|
5045
|
+
import_path9.default.join(pathToForestryConfig, ".forestry", "settings.yml")
|
|
7180
5046
|
);
|
|
7181
5047
|
rewriteTemplateKeysInDocs({
|
|
7182
5048
|
templateMap,
|
|
@@ -7207,11 +5073,11 @@ var rewriteTemplateKeysInDocs = (args) => {
|
|
|
7207
5073
|
const { templateObj } = templateMap.get(templateKey);
|
|
7208
5074
|
(_a = templateObj == null ? void 0 : templateObj.pages) == null ? void 0 : _a.forEach((page) => {
|
|
7209
5075
|
try {
|
|
7210
|
-
const filePath =
|
|
5076
|
+
const filePath = import_path9.default.join(page);
|
|
7211
5077
|
if (import_fs_extra10.default.lstatSync(filePath).isDirectory()) {
|
|
7212
5078
|
return;
|
|
7213
5079
|
}
|
|
7214
|
-
const extname =
|
|
5080
|
+
const extname = import_path9.default.extname(filePath);
|
|
7215
5081
|
const fileContent = import_fs_extra10.default.readFileSync(filePath).toString();
|
|
7216
5082
|
const content = (0, import_graphql16.parseFile)(
|
|
7217
5083
|
fileContent,
|
|
@@ -7243,7 +5109,7 @@ var import_fs_extra13 = __toESM(require("fs-extra"));
|
|
|
7243
5109
|
// src/next/commands/codemod-command/index.ts
|
|
7244
5110
|
var import_clipanion5 = require("clipanion");
|
|
7245
5111
|
var import_fs_extra11 = __toESM(require("fs-extra"));
|
|
7246
|
-
var
|
|
5112
|
+
var import_path10 = __toESM(require("path"));
|
|
7247
5113
|
var CodemodCommand = class extends import_clipanion5.Command {
|
|
7248
5114
|
constructor() {
|
|
7249
5115
|
super(...arguments);
|
|
@@ -7287,7 +5153,7 @@ var moveTinaFolder = async (rootPath = process.cwd()) => {
|
|
|
7287
5153
|
logger.error(e.message);
|
|
7288
5154
|
process.exit(1);
|
|
7289
5155
|
}
|
|
7290
|
-
const tinaDestination =
|
|
5156
|
+
const tinaDestination = import_path10.default.join(configManager.rootPath, "tina");
|
|
7291
5157
|
if (await import_fs_extra11.default.existsSync(tinaDestination)) {
|
|
7292
5158
|
logger.info(
|
|
7293
5159
|
`Folder already exists at ${tinaDestination}. Either delete this folder to complete the codemod, or ensure you have properly copied your config from the ".tina" folder.`
|
|
@@ -7302,7 +5168,7 @@ var moveTinaFolder = async (rootPath = process.cwd()) => {
|
|
|
7302
5168
|
};
|
|
7303
5169
|
var writeGitignore = async (rootPath) => {
|
|
7304
5170
|
await import_fs_extra11.default.outputFileSync(
|
|
7305
|
-
|
|
5171
|
+
import_path10.default.join(rootPath, "tina", ".gitignore"),
|
|
7306
5172
|
"__generated__"
|
|
7307
5173
|
);
|
|
7308
5174
|
};
|
|
@@ -8140,8 +6006,8 @@ async function apply({
|
|
|
8140
6006
|
await addConfigFile({
|
|
8141
6007
|
configArgs: {
|
|
8142
6008
|
config: config2,
|
|
8143
|
-
publicFolder:
|
|
8144
|
-
|
|
6009
|
+
publicFolder: import_path11.default.join(
|
|
6010
|
+
import_path11.default.relative(process.cwd(), pathToForestryConfig),
|
|
8145
6011
|
config2.publicFolder
|
|
8146
6012
|
),
|
|
8147
6013
|
collections,
|
|
@@ -8208,18 +6074,18 @@ var createPackageJSON = async () => {
|
|
|
8208
6074
|
};
|
|
8209
6075
|
var createGitignore = async ({ baseDir }) => {
|
|
8210
6076
|
logger.info(logText("No .gitignore found, creating one"));
|
|
8211
|
-
import_fs_extra13.default.outputFileSync(
|
|
6077
|
+
import_fs_extra13.default.outputFileSync(import_path11.default.join(baseDir, ".gitignore"), "node_modules");
|
|
8212
6078
|
};
|
|
8213
6079
|
var updateGitIgnore = async ({
|
|
8214
6080
|
baseDir,
|
|
8215
6081
|
items
|
|
8216
6082
|
}) => {
|
|
8217
6083
|
logger.info(logText(`Adding ${items.join(",")} to .gitignore`));
|
|
8218
|
-
const gitignoreContent = import_fs_extra13.default.readFileSync(
|
|
6084
|
+
const gitignoreContent = import_fs_extra13.default.readFileSync(import_path11.default.join(baseDir, ".gitignore")).toString();
|
|
8219
6085
|
const newGitignoreContent = [...gitignoreContent.split("\n"), ...items].join(
|
|
8220
6086
|
"\n"
|
|
8221
6087
|
);
|
|
8222
|
-
await import_fs_extra13.default.writeFile(
|
|
6088
|
+
await import_fs_extra13.default.writeFile(import_path11.default.join(baseDir, ".gitignore"), newGitignoreContent);
|
|
8223
6089
|
};
|
|
8224
6090
|
var addDependencies = async (config2, env, params) => {
|
|
8225
6091
|
var _a, _b, _c, _d, _e, _f, _g, _h, _i;
|
|
@@ -8289,22 +6155,22 @@ var writeGeneratedFile = async ({
|
|
|
8289
6155
|
content,
|
|
8290
6156
|
typescript
|
|
8291
6157
|
}) => {
|
|
8292
|
-
const { exists, path:
|
|
6158
|
+
const { exists, path: path14, parentPath } = generatedFile.resolve(typescript);
|
|
8293
6159
|
if (exists) {
|
|
8294
6160
|
if (overwrite) {
|
|
8295
|
-
logger.info(`Overwriting file at ${
|
|
8296
|
-
import_fs_extra13.default.outputFileSync(
|
|
6161
|
+
logger.info(`Overwriting file at ${path14}... \u2705`);
|
|
6162
|
+
import_fs_extra13.default.outputFileSync(path14, content);
|
|
8297
6163
|
} else {
|
|
8298
|
-
logger.info(`Not overwriting file at ${
|
|
6164
|
+
logger.info(`Not overwriting file at ${path14}.`);
|
|
8299
6165
|
logger.info(
|
|
8300
|
-
logText(`Please add the following to ${
|
|
6166
|
+
logText(`Please add the following to ${path14}:
|
|
8301
6167
|
${indentText(content)}}`)
|
|
8302
6168
|
);
|
|
8303
6169
|
}
|
|
8304
6170
|
} else {
|
|
8305
|
-
logger.info(`Adding file at ${
|
|
6171
|
+
logger.info(`Adding file at ${path14}... \u2705`);
|
|
8306
6172
|
await import_fs_extra13.default.ensureDir(parentPath);
|
|
8307
|
-
import_fs_extra13.default.outputFileSync(
|
|
6173
|
+
import_fs_extra13.default.outputFileSync(path14, content);
|
|
8308
6174
|
}
|
|
8309
6175
|
};
|
|
8310
6176
|
var addConfigFile = async ({
|
|
@@ -8387,7 +6253,7 @@ var addContentFile = async ({
|
|
|
8387
6253
|
return () => ({
|
|
8388
6254
|
exists: env.sampleContentExists,
|
|
8389
6255
|
path: env.sampleContentPath,
|
|
8390
|
-
parentPath:
|
|
6256
|
+
parentPath: import_path11.default.dirname(env.sampleContentPath)
|
|
8391
6257
|
});
|
|
8392
6258
|
}
|
|
8393
6259
|
},
|
|
@@ -8410,7 +6276,7 @@ ${titleText(" TinaCMS ")} backend initialized!`));
|
|
|
8410
6276
|
return `${x.key}=${x.value || "***"}`;
|
|
8411
6277
|
}).join("\n") + `
|
|
8412
6278
|
TINA_PUBLIC_IS_LOCAL=true`;
|
|
8413
|
-
const envFile =
|
|
6279
|
+
const envFile = import_path11.default.join(process.cwd(), ".env");
|
|
8414
6280
|
if (!import_fs_extra13.default.existsSync(envFile)) {
|
|
8415
6281
|
logger.info(`Adding .env file to your project... \u2705`);
|
|
8416
6282
|
import_fs_extra13.default.writeFileSync(envFile, envFileText);
|
|
@@ -8474,7 +6340,7 @@ var addReactiveFile = {
|
|
|
8474
6340
|
dataLayer
|
|
8475
6341
|
}) => {
|
|
8476
6342
|
var _a, _b;
|
|
8477
|
-
const packageJsonPath =
|
|
6343
|
+
const packageJsonPath = import_path11.default.join(baseDir, "package.json");
|
|
8478
6344
|
await writeGeneratedFile({
|
|
8479
6345
|
generatedFile,
|
|
8480
6346
|
typescript: config2.typescript,
|