@teleporthq/teleport-plugin-next-static-paths 0.27.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2020 teleporthq
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,8 @@
1
+ import { ComponentPlugin, ComponentPluginFactory } from '@teleporthq/teleport-types';
2
+ interface StaticPropsPluginConfig {
3
+ componentChunkName?: string;
4
+ }
5
+ export declare const createStaticPathsPlugin: ComponentPluginFactory<StaticPropsPluginConfig>;
6
+ declare const _default: ComponentPlugin;
7
+ export default _default;
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,eAAe,EACf,sBAAsB,EAEvB,MAAM,4BAA4B,CAAA;AAGnC,UAAU,uBAAuB;IAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC5B;AAED,eAAO,MAAM,uBAAuB,EAAE,sBAAsB,CAAC,uBAAuB,CAkCnF,CAAA;;AAED,wBAAwC"}
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.createStaticPathsPlugin = void 0;
40
+ var teleport_types_1 = require("@teleporthq/teleport-types");
41
+ var utils_1 = require("./utils");
42
+ var createStaticPathsPlugin = function (config) {
43
+ var _a = (config || {}).componentChunkName, componentChunkName = _a === void 0 ? 'jsx-component' : _a;
44
+ var staticPathsPlugin = function (structure) { return __awaiter(void 0, void 0, void 0, function () {
45
+ var uidl, chunks, componentChunk, getStaticPathsAST;
46
+ var _a;
47
+ return __generator(this, function (_b) {
48
+ uidl = structure.uidl, chunks = structure.chunks;
49
+ if (!((_a = uidl.outputOptions) === null || _a === void 0 ? void 0 : _a.initialPathsData)) {
50
+ return [2 /*return*/, structure];
51
+ }
52
+ componentChunk = chunks.find(function (chunk) { return chunk.name === componentChunkName; });
53
+ if (!componentChunk) {
54
+ return [2 /*return*/, structure];
55
+ }
56
+ getStaticPathsAST = (0, utils_1.generateInitialPathsAST)(uidl.outputOptions.initialPathsData, undefined, uidl.outputOptions.pagination);
57
+ chunks.push({
58
+ name: 'getStaticPaths',
59
+ type: teleport_types_1.ChunkType.AST,
60
+ fileType: teleport_types_1.FileType.JS,
61
+ content: getStaticPathsAST,
62
+ linkAfter: [componentChunkName],
63
+ });
64
+ return [2 /*return*/, structure];
65
+ });
66
+ }); };
67
+ return staticPathsPlugin;
68
+ };
69
+ exports.createStaticPathsPlugin = createStaticPathsPlugin;
70
+ exports.default = (0, exports.createStaticPathsPlugin)();
71
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6DAKmC;AACnC,iCAAiD;AAM1C,IAAM,uBAAuB,GAAoD,UACtF,MAAM;IAEE,IAAA,KAAyC,CAAA,MAAM,IAAI,EAAE,CAAA,mBAAjB,EAApC,kBAAkB,mBAAG,eAAe,KAAA,CAAiB;IAE7D,IAAM,iBAAiB,GAAoB,UAAO,SAAS;;;;YACjD,IAAI,GAAa,SAAS,KAAtB,EAAE,MAAM,GAAK,SAAS,OAAd,CAAc;YAClC,IAAI,CAAC,CAAA,MAAA,IAAI,CAAC,aAAa,0CAAE,gBAAgB,CAAA,EAAE;gBACzC,sBAAO,SAAS,EAAA;aACjB;YAEK,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,IAAI,KAAK,kBAAkB,EAAjC,CAAiC,CAAC,CAAA;YAChF,IAAI,CAAC,cAAc,EAAE;gBACnB,sBAAO,SAAS,EAAA;aACjB;YAEK,iBAAiB,GAAG,IAAA,+BAAuB,EAC/C,IAAI,CAAC,aAAa,CAAC,gBAAgB,EACnC,SAAS,EACT,IAAI,CAAC,aAAa,CAAC,UAAU,CAC9B,CAAA;YAED,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,gBAAgB;gBACtB,IAAI,EAAE,0BAAS,CAAC,GAAG;gBACnB,QAAQ,EAAE,yBAAQ,CAAC,EAAE;gBACrB,OAAO,EAAE,iBAAiB;gBAC1B,SAAS,EAAE,CAAC,kBAAkB,CAAC;aAChC,CAAC,CAAA;YAEF,sBAAO,SAAS,EAAA;;SACjB,CAAA;IAED,OAAO,iBAAiB,CAAA;AAC1B,CAAC,CAAA;AAlCY,QAAA,uBAAuB,2BAkCnC;AAED,kBAAe,IAAA,+BAAuB,GAAE,CAAA"}
@@ -0,0 +1 @@
1
+ {"program":{"fileNames":["../../../../node_modules/typescript/lib/lib.es5.d.ts","../../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../../node_modules/typescript/lib/lib.dom.d.ts","../../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../teleport-types/dist/cjs/helper.d.ts","../../../teleport-types/dist/cjs/uidl.d.ts","../../../teleport-types/dist/cjs/generators.d.ts","../../../teleport-types/dist/cjs/errors.d.ts","../../../teleport-types/dist/cjs/vuidl.d.ts","../../../teleport-types/dist/cjs/index.d.ts","../../../../node_modules/@babel/types/lib/index.d.ts","../../../teleport-plugin-common/dist/cjs/builders/ast-builders.d.ts","../../../teleport-plugin-common/dist/cjs/utils/parsed-ast.d.ts","../../../teleport-plugin-common/dist/cjs/builders/style-builders.d.ts","../../../teleport-plugin-common/dist/cjs/builders/hast-builders.d.ts","../../../teleport-plugin-common/dist/cjs/node-handlers/node-to-jsx/types.d.ts","../../../teleport-plugin-common/dist/cjs/utils/ast-utils.d.ts","../../../teleport-plugin-common/dist/cjs/utils/style-utils.d.ts","../../../teleport-plugin-common/dist/cjs/utils/hast-utils.d.ts","../../../teleport-plugin-common/dist/cjs/node-handlers/node-to-html/types.d.ts","../../../teleport-plugin-common/dist/cjs/node-handlers/node-to-html/index.d.ts","../../../teleport-plugin-common/dist/cjs/node-handlers/node-to-jsx/index.d.ts","../../../teleport-plugin-common/dist/cjs/index.d.ts","../../src/utils.ts","../../src/index.ts","../../../../node_modules/@types/node/assert.d.ts","../../../../node_modules/@types/node/assert/strict.d.ts","../../../../node_modules/@types/node/globals.d.ts","../../../../node_modules/@types/node/async_hooks.d.ts","../../../../node_modules/@types/node/buffer.d.ts","../../../../node_modules/@types/node/child_process.d.ts","../../../../node_modules/@types/node/cluster.d.ts","../../../../node_modules/@types/node/console.d.ts","../../../../node_modules/@types/node/constants.d.ts","../../../../node_modules/@types/node/crypto.d.ts","../../../../node_modules/@types/node/dgram.d.ts","../../../../node_modules/@types/node/diagnostics_channel.d.ts","../../../../node_modules/@types/node/dns.d.ts","../../../../node_modules/@types/node/dns/promises.d.ts","../../../../node_modules/@types/node/domain.d.ts","../../../../node_modules/@types/node/events.d.ts","../../../../node_modules/@types/node/fs.d.ts","../../../../node_modules/@types/node/fs/promises.d.ts","../../../../node_modules/@types/node/http.d.ts","../../../../node_modules/@types/node/http2.d.ts","../../../../node_modules/@types/node/https.d.ts","../../../../node_modules/@types/node/inspector.d.ts","../../../../node_modules/@types/node/module.d.ts","../../../../node_modules/@types/node/net.d.ts","../../../../node_modules/@types/node/os.d.ts","../../../../node_modules/@types/node/path.d.ts","../../../../node_modules/@types/node/perf_hooks.d.ts","../../../../node_modules/@types/node/process.d.ts","../../../../node_modules/@types/node/punycode.d.ts","../../../../node_modules/@types/node/querystring.d.ts","../../../../node_modules/@types/node/readline.d.ts","../../../../node_modules/@types/node/repl.d.ts","../../../../node_modules/@types/node/stream.d.ts","../../../../node_modules/@types/node/stream/promises.d.ts","../../../../node_modules/@types/node/stream/consumers.d.ts","../../../../node_modules/@types/node/stream/web.d.ts","../../../../node_modules/@types/node/string_decoder.d.ts","../../../../node_modules/@types/node/timers.d.ts","../../../../node_modules/@types/node/timers/promises.d.ts","../../../../node_modules/@types/node/tls.d.ts","../../../../node_modules/@types/node/trace_events.d.ts","../../../../node_modules/@types/node/tty.d.ts","../../../../node_modules/@types/node/url.d.ts","../../../../node_modules/@types/node/util.d.ts","../../../../node_modules/@types/node/v8.d.ts","../../../../node_modules/@types/node/vm.d.ts","../../../../node_modules/@types/node/wasi.d.ts","../../../../node_modules/@types/node/worker_threads.d.ts","../../../../node_modules/@types/node/zlib.d.ts","../../../../node_modules/@types/node/globals.global.d.ts","../../../../node_modules/@types/node/index.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/cleanupSemantic.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/types.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/diffLines.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/printDiffs.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/index.d.ts","../../../../node_modules/@types/jest/node_modules/pretty-format/build/types.d.ts","../../../../node_modules/@types/jest/node_modules/pretty-format/build/index.d.ts","../../../../node_modules/@types/jest/index.d.ts","../../../../node_modules/@types/jest/ts3.2/index.d.ts"],"fileInfos":[{"version":"3ac1b83264055b28c0165688fda6dfcc39001e9e7828f649299101c23ad0a0c3","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","e21c071ca3e1b4a815d5f04a7475adcaeea5d64367e840dd0154096d705c3940",{"version":"72704b10d97777e15f1a581b73f88273037ef752d2e50b72287bd0a90af64fe6","affectsGlobalScope":true},{"version":"d8996609230d17e90484a2dd58f22668f9a05a3bfe00bfb1d6271171e54a31fb","affectsGlobalScope":true},{"version":"43fb1d932e4966a39a41b464a12a81899d9ae5f2c829063f5571b6b87e6d2f9c","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"0d5f52b3174bee6edb81260ebcd792692c32c81fd55499d69531496f3f2b25e7","affectsGlobalScope":true},{"version":"810627a82ac06fb5166da5ada4159c4ec11978dfbb0805fe804c86406dab8357","affectsGlobalScope":true},{"version":"62d80405c46c3f4c527ee657ae9d43fda65a0bf582292429aea1e69144a522a6","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"75ec0bdd727d887f1b79ed6619412ea72ba3c81d92d0787ccb64bab18d261f14","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"12a310447c5d23c7d0d5ca2af606e3bd08afda69100166730ab92c62999ebb9d","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"1b3fe904465430e030c93239a348f05e1be80640d91f2f004c3512c2c2c89f34","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"5075b36ab861c8c0c45377cb8c96270d7c65f0eeaf105d53fac6850da61f1027","affectsGlobalScope":true},{"version":"10bbdc1981b8d9310ee75bfac28ee0477bb2353e8529da8cff7cb26c409cb5e8","affectsGlobalScope":true},"fd0f56a96d995bf07780490eb65da40e9fbdf80c1ddc89fb5ef837d91849c6d8","9f1270c1185cdf2a091e50b70339c127f2ee7bc66160e83fc6787ea335f20a14","db2ea909d82eb6e05c4c162e83d40ffd164bbd3f268c9416b8f84c056f79c63a","71a689048584cde03cb508408ae7c3b04ad8f10af887865e8b65c27ed9d91488","ccdd58c6212ebce6230fe7b78d57ddad6cf4032334ebc8c87a88d475d40e7012","6ba1631f84ef4507073189c4ada06d6de8bac89375ea3b49e34e49006cc44a3f","2ff9995137f3e5d68971388ec58af0c79721626323884513f9f5e2e996ac1fdd","07e3907c42b7215b7f8ced0c990805f42862060e53c9c4c42c28e407648d52d9","7d69ac79c9de7620a1bdd926fd4b20b8e968d6467a220eac2a836988ab47c933","c7b126a023fbcbe6b07edf69283b049fc3ca6958bc19934cde610a0ab5ae8ef3","7383bcf1e3b4970ec58cddeb24becd4fcd207aa518ca46270a6872b63712c29e","caeb0e5ee606c0461616c3f884bc15e651e5de500973335ed360ab063deae8ca","15644fa386f870a3ff6202ec0c8acdc1007d0466004c37757490991ec2602d74","d4f36091f2a7fac55cac2d088d46e68f01cd5cf68e3db5770b3ba62641875e18","5a007f687f1be0ed103375930c7027eb6f10d0b826472f7f6d7a5b260502104e","531942c2bbd4ebc75da80f161ab9b8ad1c519a8a703bdbc7907805f9f92bc223","dcaef7f7c1f0cb2dba19a1a70cc8d5276faa68e50bc69d6a006d3aaaaa9f7aa7","ffd67adf9464cf9bcddc3954fcd27d59b60e85acb02101fefe8b0eb642a2be2f","59b8c7576043b12356b13745811130ae5fa9c37cbd7ec5e49ecac8e88b8c9992","d992548828f9d7f905d401ec57c41f241f7dfde4267e639aa8b2d33ecf90c8b0","e689f3e0af5e9bb2034ad2e16784fb1f231e41159080e944666ebc9d9f33dc09","0d5a2ee1fdfa82740e0103389b9efd6bfe145a20018a2da3c02b89666181f4d9","a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a",{"version":"2f6c9750131d5d2fdaba85c164a930dc07d2d7e7e8970b89d32864aa6c72620c","affectsGlobalScope":true},"56d13f223ab40f71840795f5bef2552a397a70666ee60878222407f3893fb8d0",{"version":"aeeee3998c5a730f8689f04038d41cf4245c9edbf6ef29a698e45b36e399b8ed","affectsGlobalScope":true},"95843d5cfafced8f3f8a5ce57d2335f0bcd361b9483587d12a25e4bd403b8216","afc6e96061af46bcff47246158caee7e056f5288783f2d83d6858cd25be1c565",{"version":"34f5bcac12b36d70304b73de5f5aab3bb91bd9919f984be80579ebcad03a624e","affectsGlobalScope":true},"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","90b94d3d2aa3432cc9dd2d15f56a38b166163fc555404c74243e1af29c5549d8","f50c975ab7b50e25a69e3d8a3773894125b44e9698924105f23b812bf7488baf","c993aac3b6d4a4620ef9651497069eb84806a131420e4f158ea9396fb8eb9b8c","76650408392bf49a8fbf3e2b6b302712a92d76af77b06e2da1cc8077359c4409","0af3121e68297b2247dd331c0d24dba599e50736a7517a5622d5591aae4a3122","6972fca26f6e9bd56197568d4379f99071a90766e06b4fcb5920a0130a9202be",{"version":"4a2628e95962c8ab756121faa3ac2ed348112ff7a87b5c286dd2cc3326546b4c","affectsGlobalScope":true},"80793b2277f31baa199234daed806fff0fb11491d1ebd3357e520c3558063f00","a049a59a02009fc023684fcfaf0ac526fe36c35dcc5d2b7d620c1750ba11b083","e3b886bacdd1fbf1f72e654596c80a55c7bc1d10bdf464aaf52f45ecd243862f","d2f5c67858e65ebb932c2f4bd2af646f5764e8ad7f1e4fbe942a0b5ea05dc0e7","4b9a003b5c556c96784132945bb41c655ea11273b1917f5c8d0c154dd5fd20dd","7f249c599e7a9335dd8e94a4bfe63f00e911756c3c23f77cdb6ef0ec4d479e4a",{"version":"e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5","affectsGlobalScope":true},"2cabc86ea4f972f2c8386903eccb8c19e2f2370fb9808b66dd8759c1f2ab30c7","abc1c425b2ad6720433f40f1877abfa4223f0f3dd486c9c28c492179ca183cb6","945a841f9a591197154c85386bc5a1467d42d325104bb36db51bc566bbb240be","10c39ce1df102994b47d4bc0c71aa9a6aea76f4651a5ec51914431f50bc883a1",{"version":"8207e7e6db9aa5fc7e61c8f17ba74cf9c115d26f51f91ee93f790815a7ea9dfb","affectsGlobalScope":true},"9f1069b9e2c051737b1f9b4f1baf50e4a63385a6a89c32235549ae87fc3d5492","ee18f2da7a037c6ceeb112a084e485aead9ea166980bf433474559eac1b46553","29c2706fa0cc49a2bd90c83234da33d08bb9554ecec675e91c1f85087f5a5324","0acbf26bf958f9e80c1ffa587b74749d2697b75b484062d36e103c137c562bc3","3fa48484c65913004d5abb5c0f917b61ea4684f32d05bb28c1ecfa5f05a9ed12","1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff",{"version":"806ef4cac3b3d9fa4a48d849c8e084d7c72fcd7b16d76e06049a9ed742ff79c0","affectsGlobalScope":true},"33eee034727baf564056b4ea719075c23d3b4767d0b5f9c6933b81f3d77774d2","c33a6ea7147af60d8e98f1ac127047f4b0d4e2ce28b8f08ff3de07ca7cc00637",{"version":"127803f77e0dfee84b031b83ea7776875c6c4c89e11a81d00299ff58f163f0e2","affectsGlobalScope":true},"664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980","2408611d9b4146e35d1dbd1f443ccd8e187c74614a54b80300728277529dbf11","998a3de5237518c0b3ac00a11b3b4417affb008aa20aedee52f3fdae3cb86151","ad41008ffe077206e1811fc873f4d9005b5fd7f6ab52bb6118fef600815a5cb4",{"version":"dd9ea469d1bfaf589c6a196275d35cb1aa14014707c2c46d920c7b921e8f5bca","affectsGlobalScope":true},"badae0df9a8016ac36994b0a0e7b82ba6aaa3528e175a8c3cb161e4683eec03e","c3db860bcaaaeb3bbc23f353bbda1f8ab82756c8d5e973bebb3953cb09ea68f2","235a53595bd20b0b0eeb1a29cb2887c67c48375e92f03749b2488fbd46d0b1a0","bc09393cd4cd13f69cf1366d4236fbae5359bb550f0de4e15767e9a91d63dfb1","9c266243b01545e11d2733a55ad02b4c00ecdbda99c561cd1674f96e89cdc958","c71155c05fc76ff948a4759abc1cb9feec036509f500174bc18dad4c7827a60c",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"1503a452a67127e5c2da794d1c7c44344d5038373aae16c9b03ac964db159edd","e222104af6cb9415238ad358488b74d76eceeff238c1268ec6e85655b05341da","69da61a7b5093dac77fa3bec8be95dcf9a74c95a0e9161edb98bb24e30e439d2","eba230221317c985ab1953ccc3edc517f248b37db4fef7875cb2c8d08aff7be7","b83e796810e475da3564c6515bc0ae9577070596a33d89299b7d99f94ecfd921","b4439890c168d646357928431100daac5cbdee1d345a34e6bf6eca9f3abe22bc","5d72971a459517c44c1379dab9ed248e87a61ba0a1e0f25c9d67e1e640cd9a09","02d734976af36f4273d930bea88b3e62adf6b078cf120c1c63d49aa8d8427c5c",{"version":"f624e578325b8c58e55b30c998b1f4c3ec1b61a9fa66373da4250c89b7880d44","affectsGlobalScope":true},{"version":"d3002f620eab4bf6476c9da5c0efb2041d46f7df8b3032a5631bd206abef2c75","affectsGlobalScope":true}],"options":{"allowSyntheticDefaultImports":true,"declaration":true,"declarationMap":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"experimentalDecorators":true,"module":1,"noImplicitAny":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./","sourceMap":true,"target":1},"fileIdsList":[[104],[104,116,118],[104,112,113],[104,112,113,114,115],[104,117],[104,119],[61,104],[64,104],[65,70,104],[66,76,77,84,93,103,104],[66,67,76,84,104],[68,104],[69,70,77,85,104],[70,93,100,104],[71,73,76,84,104],[72,104],[73,74,104],[75,76,104],[76,104],[76,77,78,93,103,104],[76,77,78,93,104],[79,84,93,103,104],[76,77,79,80,84,93,100,103,104],[79,81,93,100,103,104],[61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110],[76,82,104],[83,103,104],[73,76,84,93,104],[85,104],[86,104],[64,87,104],[88,102,104,108],[89,104],[90,104],[76,91,104],[91,92,104,106],[76,93,94,95,104],[93,95,104],[93,94,104],[96,104],[97,104],[76,98,99,104],[98,99,104],[70,84,100,104],[101,104],[84,102,104],[65,79,90,103,104],[70,104],[93,104,105],[104,106],[104,107],[65,70,76,78,87,93,103,104,106,108],[93,104,109],[45,46,104],[45,104],[45,46,48,104],[47,48,49,50,51,52,53,54,55,56,57,104],[45,55,104],[45,46,51,104],[45,46,48,51,104],[45,59,104],[45,46,58,104],[41,104],[41,42,43,44,104],[40,104],[40,41,104]],"referencedMap":[[46,1],[119,2],[112,1],[114,3],[116,4],[115,3],[113,1],[118,5],[117,1],[120,6],[61,7],[62,7],[64,8],[65,9],[66,10],[67,11],[68,12],[69,13],[70,14],[71,15],[72,16],[73,17],[74,17],[75,18],[76,19],[77,20],[78,21],[63,1],[110,1],[79,22],[80,23],[81,24],[111,25],[82,26],[83,27],[84,28],[85,29],[86,30],[87,31],[88,32],[89,33],[90,34],[91,35],[92,36],[93,37],[95,38],[94,39],[96,40],[97,41],[98,42],[99,43],[100,44],[101,45],[102,46],[103,47],[104,48],[105,49],[106,50],[107,51],[108,52],[109,53],[8,1],[10,1],[9,1],[2,1],[11,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[18,1],[3,1],[4,1],[22,1],[19,1],[20,1],[21,1],[23,1],[24,1],[25,1],[5,1],[26,1],[27,1],[28,1],[29,1],[6,1],[30,1],[31,1],[32,1],[33,1],[7,1],[38,1],[34,1],[35,1],[36,1],[37,1],[1,1],[39,1],[47,54],[50,55],[49,56],[58,57],[56,58],[55,55],[57,59],[51,54],[52,60],[54,55],[48,1],[53,55],[60,61],[59,62],[43,1],[42,63],[40,1],[45,64],[41,65],[44,66]],"exportedModulesMap":[[46,1],[119,2],[112,1],[114,3],[116,4],[115,3],[113,1],[118,5],[117,1],[120,6],[61,7],[62,7],[64,8],[65,9],[66,10],[67,11],[68,12],[69,13],[70,14],[71,15],[72,16],[73,17],[74,17],[75,18],[76,19],[77,20],[78,21],[63,1],[110,1],[79,22],[80,23],[81,24],[111,25],[82,26],[83,27],[84,28],[85,29],[86,30],[87,31],[88,32],[89,33],[90,34],[91,35],[92,36],[93,37],[95,38],[94,39],[96,40],[97,41],[98,42],[99,43],[100,44],[101,45],[102,46],[103,47],[104,48],[105,49],[106,50],[107,51],[108,52],[109,53],[8,1],[10,1],[9,1],[2,1],[11,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[18,1],[3,1],[4,1],[22,1],[19,1],[20,1],[21,1],[23,1],[24,1],[25,1],[5,1],[26,1],[27,1],[28,1],[29,1],[6,1],[30,1],[31,1],[32,1],[33,1],[7,1],[38,1],[34,1],[35,1],[36,1],[37,1],[1,1],[39,1],[47,54],[50,55],[49,56],[58,57],[56,58],[55,55],[57,59],[51,54],[52,60],[54,55],[48,1],[53,55],[60,61],[59,62],[43,1],[42,63],[40,1],[45,64],[41,65],[44,66]],"semanticDiagnosticsPerFile":[46,119,112,114,116,115,113,118,117,120,61,62,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,63,110,79,80,81,111,82,83,84,85,86,87,88,89,90,91,92,93,95,94,96,97,98,99,100,101,102,103,104,105,106,107,108,109,8,10,9,2,11,12,13,14,15,16,17,18,3,4,22,19,20,21,23,24,25,5,26,27,28,29,6,30,31,32,33,7,38,34,35,36,37,1,39,47,50,49,58,56,55,57,51,52,54,48,53,60,59,43,42,40,45,41,44]},"version":"4.6.2"}
@@ -0,0 +1,4 @@
1
+ import * as types from '@babel/types';
2
+ import { InitialPathsData, PagePaginationOptions } from '@teleporthq/teleport-types';
3
+ export declare const generateInitialPathsAST: (initialData: InitialPathsData, propsPrefix?: string, pagination?: PagePaginationOptions) => types.ExportNamedDeclaration;
4
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAEpF,eAAO,MAAM,uBAAuB,gBACrB,gBAAgB,gBAChB,MAAM,eACN,qBAAqB,iCAkBnC,CAAA"}
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
26
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
27
+ if (ar || !(i in from)) {
28
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
29
+ ar[i] = from[i];
30
+ }
31
+ }
32
+ return to.concat(ar || Array.prototype.slice.call(from));
33
+ };
34
+ Object.defineProperty(exports, "__esModule", { value: true });
35
+ exports.generateInitialPathsAST = void 0;
36
+ var types = __importStar(require("@babel/types"));
37
+ var teleport_plugin_common_1 = require("@teleporthq/teleport-plugin-common");
38
+ var generateInitialPathsAST = function (initialData, propsPrefix, pagination) {
39
+ if (propsPrefix === void 0) { propsPrefix = ''; }
40
+ var computedResourceAST = computePropsAST(initialData, propsPrefix, pagination);
41
+ return types.exportNamedDeclaration((function () {
42
+ var node = types.functionDeclaration(types.identifier('getStaticPaths'), [], types.blockStatement(__spreadArray([], computedResourceAST, true)), false, true);
43
+ node.async = true;
44
+ return node;
45
+ })());
46
+ };
47
+ exports.generateInitialPathsAST = generateInitialPathsAST;
48
+ var computePropsAST = function (initialData, propsPrefix, pagination) {
49
+ if (propsPrefix === void 0) { propsPrefix = ''; }
50
+ var resourceASTs = teleport_plugin_common_1.ASTUtils.generateRemoteResourceASTs(initialData.resource, propsPrefix);
51
+ var paginationASTs = [];
52
+ if (pagination) {
53
+ var itemsCountAST = types.variableDeclaration('const', [
54
+ types.variableDeclarator(types.identifier('totalCount'), teleport_plugin_common_1.ASTUtils.generateMemberExpressionASTFromPath(__spreadArray(['response'], pagination.totalCountPath, true))),
55
+ ]);
56
+ var pagesCountAST = types.variableDeclaration('const', [
57
+ types.variableDeclarator(types.identifier('pagesCount'), types.callExpression(types.memberExpression(types.identifier('Math'), types.identifier('ceil'), false), [
58
+ types.binaryExpression('/', types.identifier('totalCount'), types.numericLiteral(pagination.pageSize)),
59
+ ])),
60
+ ]);
61
+ paginationASTs.push(itemsCountAST);
62
+ paginationASTs.push(pagesCountAST);
63
+ }
64
+ var returnAST = types.returnStatement(types.objectExpression([
65
+ types.objectProperty(types.identifier('paths'), pagination
66
+ ? types.callExpression(types.memberExpression(types.identifier('Array'), types.identifier('from')), [
67
+ types.objectExpression([
68
+ types.objectProperty(types.identifier('length'), types.identifier('pagesCount')),
69
+ ]),
70
+ types.arrowFunctionExpression([types.identifier('_'), types.identifier('i')], types.objectExpression([
71
+ types.objectProperty(types.identifier('params'), types.objectExpression([
72
+ types.objectProperty(types.identifier('page'), types.callExpression(types.memberExpression(types.binaryExpression('+', types.identifier('i'), types.numericLiteral(1)), types.identifier('toString')), [])),
73
+ ])),
74
+ ])),
75
+ ])
76
+ : types.callExpression(types.memberExpression(teleport_plugin_common_1.ASTUtils.generateMemberExpressionASTFromPath(__spreadArray([
77
+ 'response'
78
+ ], initialData.exposeAs.valuePath, true)), types.identifier('map'), false), [
79
+ types.arrowFunctionExpression([types.identifier('item')], types.blockStatement([
80
+ types.returnStatement(types.objectExpression([
81
+ types.objectProperty(types.identifier('params'), types.objectExpression([
82
+ types.objectProperty(types.identifier(initialData.exposeAs.name), types.callExpression(types.memberExpression(teleport_plugin_common_1.ASTUtils.generateMemberExpressionASTFromPath(__spreadArray([
83
+ 'item'
84
+ ], initialData.exposeAs.itemValuePath, true)), types.identifier('toString')), []), false, false),
85
+ ]), false, false),
86
+ ])),
87
+ ])),
88
+ ]), false, false),
89
+ types.objectProperty(types.identifier('fallback'), types.booleanLiteral(false), false, false),
90
+ ]));
91
+ return __spreadArray(__spreadArray(__spreadArray([], resourceASTs, true), paginationASTs, true), [returnAST], false);
92
+ };
93
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { ComponentPlugin, ComponentPluginFactory } from '@teleporthq/teleport-types';
2
+ interface StaticPropsPluginConfig {
3
+ componentChunkName?: string;
4
+ }
5
+ export declare const createStaticPathsPlugin: ComponentPluginFactory<StaticPropsPluginConfig>;
6
+ declare const _default: ComponentPlugin;
7
+ export default _default;
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,eAAe,EACf,sBAAsB,EAEvB,MAAM,4BAA4B,CAAA;AAGnC,UAAU,uBAAuB;IAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC5B;AAED,eAAO,MAAM,uBAAuB,EAAE,sBAAsB,CAAC,uBAAuB,CAkCnF,CAAA;;AAED,wBAAwC"}
@@ -0,0 +1,67 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ var __generator = (this && this.__generator) || function (thisArg, body) {
11
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
12
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
13
+ function verb(n) { return function (v) { return step([n, v]); }; }
14
+ function step(op) {
15
+ if (f) throw new TypeError("Generator is already executing.");
16
+ while (_) try {
17
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
18
+ if (y = 0, t) op = [op[0] & 2, t.value];
19
+ switch (op[0]) {
20
+ case 0: case 1: t = op; break;
21
+ case 4: _.label++; return { value: op[1], done: false };
22
+ case 5: _.label++; y = op[1]; op = [0]; continue;
23
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
24
+ default:
25
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
26
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
27
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
28
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
29
+ if (t[2]) _.ops.pop();
30
+ _.trys.pop(); continue;
31
+ }
32
+ op = body.call(thisArg, _);
33
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
34
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
35
+ }
36
+ };
37
+ import { ChunkType, FileType, } from '@teleporthq/teleport-types';
38
+ import { generateInitialPathsAST } from './utils';
39
+ export var createStaticPathsPlugin = function (config) {
40
+ var _a = (config || {}).componentChunkName, componentChunkName = _a === void 0 ? 'jsx-component' : _a;
41
+ var staticPathsPlugin = function (structure) { return __awaiter(void 0, void 0, void 0, function () {
42
+ var uidl, chunks, componentChunk, getStaticPathsAST;
43
+ var _a;
44
+ return __generator(this, function (_b) {
45
+ uidl = structure.uidl, chunks = structure.chunks;
46
+ if (!((_a = uidl.outputOptions) === null || _a === void 0 ? void 0 : _a.initialPathsData)) {
47
+ return [2 /*return*/, structure];
48
+ }
49
+ componentChunk = chunks.find(function (chunk) { return chunk.name === componentChunkName; });
50
+ if (!componentChunk) {
51
+ return [2 /*return*/, structure];
52
+ }
53
+ getStaticPathsAST = generateInitialPathsAST(uidl.outputOptions.initialPathsData, undefined, uidl.outputOptions.pagination);
54
+ chunks.push({
55
+ name: 'getStaticPaths',
56
+ type: ChunkType.AST,
57
+ fileType: FileType.JS,
58
+ content: getStaticPathsAST,
59
+ linkAfter: [componentChunkName],
60
+ });
61
+ return [2 /*return*/, structure];
62
+ });
63
+ }); };
64
+ return staticPathsPlugin;
65
+ };
66
+ export default createStaticPathsPlugin();
67
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EACL,SAAS,EAGT,QAAQ,GACT,MAAM,4BAA4B,CAAA;AACnC,OAAO,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAA;AAMjD,MAAM,CAAC,IAAM,uBAAuB,GAAoD,UACtF,MAAM;IAEE,IAAA,KAAyC,CAAA,MAAM,IAAI,EAAE,CAAA,mBAAjB,EAApC,kBAAkB,mBAAG,eAAe,KAAA,CAAiB;IAE7D,IAAM,iBAAiB,GAAoB,UAAO,SAAS;;;;YACjD,IAAI,GAAa,SAAS,KAAtB,EAAE,MAAM,GAAK,SAAS,OAAd,CAAc;YAClC,IAAI,CAAC,CAAA,MAAA,IAAI,CAAC,aAAa,0CAAE,gBAAgB,CAAA,EAAE;gBACzC,sBAAO,SAAS,EAAA;aACjB;YAEK,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,IAAI,KAAK,kBAAkB,EAAjC,CAAiC,CAAC,CAAA;YAChF,IAAI,CAAC,cAAc,EAAE;gBACnB,sBAAO,SAAS,EAAA;aACjB;YAEK,iBAAiB,GAAG,uBAAuB,CAC/C,IAAI,CAAC,aAAa,CAAC,gBAAgB,EACnC,SAAS,EACT,IAAI,CAAC,aAAa,CAAC,UAAU,CAC9B,CAAA;YAED,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,gBAAgB;gBACtB,IAAI,EAAE,SAAS,CAAC,GAAG;gBACnB,QAAQ,EAAE,QAAQ,CAAC,EAAE;gBACrB,OAAO,EAAE,iBAAiB;gBAC1B,SAAS,EAAE,CAAC,kBAAkB,CAAC;aAChC,CAAC,CAAA;YAEF,sBAAO,SAAS,EAAA;;SACjB,CAAA;IAED,OAAO,iBAAiB,CAAA;AAC1B,CAAC,CAAA;AAED,eAAe,uBAAuB,EAAE,CAAA"}
@@ -0,0 +1 @@
1
+ {"program":{"fileNames":["../../../../node_modules/typescript/lib/lib.es5.d.ts","../../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../../node_modules/typescript/lib/lib.dom.d.ts","../../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../teleport-types/dist/cjs/helper.d.ts","../../../teleport-types/dist/cjs/uidl.d.ts","../../../teleport-types/dist/cjs/generators.d.ts","../../../teleport-types/dist/cjs/errors.d.ts","../../../teleport-types/dist/cjs/vuidl.d.ts","../../../teleport-types/dist/cjs/index.d.ts","../../../../node_modules/@babel/types/lib/index.d.ts","../../../teleport-plugin-common/dist/cjs/builders/ast-builders.d.ts","../../../teleport-plugin-common/dist/cjs/utils/parsed-ast.d.ts","../../../teleport-plugin-common/dist/cjs/builders/style-builders.d.ts","../../../teleport-plugin-common/dist/cjs/builders/hast-builders.d.ts","../../../teleport-plugin-common/dist/cjs/node-handlers/node-to-jsx/types.d.ts","../../../teleport-plugin-common/dist/cjs/utils/ast-utils.d.ts","../../../teleport-plugin-common/dist/cjs/utils/style-utils.d.ts","../../../teleport-plugin-common/dist/cjs/utils/hast-utils.d.ts","../../../teleport-plugin-common/dist/cjs/node-handlers/node-to-html/types.d.ts","../../../teleport-plugin-common/dist/cjs/node-handlers/node-to-html/index.d.ts","../../../teleport-plugin-common/dist/cjs/node-handlers/node-to-jsx/index.d.ts","../../../teleport-plugin-common/dist/cjs/index.d.ts","../../src/utils.ts","../../src/index.ts","../../../../node_modules/@types/node/assert.d.ts","../../../../node_modules/@types/node/assert/strict.d.ts","../../../../node_modules/@types/node/globals.d.ts","../../../../node_modules/@types/node/async_hooks.d.ts","../../../../node_modules/@types/node/buffer.d.ts","../../../../node_modules/@types/node/child_process.d.ts","../../../../node_modules/@types/node/cluster.d.ts","../../../../node_modules/@types/node/console.d.ts","../../../../node_modules/@types/node/constants.d.ts","../../../../node_modules/@types/node/crypto.d.ts","../../../../node_modules/@types/node/dgram.d.ts","../../../../node_modules/@types/node/diagnostics_channel.d.ts","../../../../node_modules/@types/node/dns.d.ts","../../../../node_modules/@types/node/dns/promises.d.ts","../../../../node_modules/@types/node/domain.d.ts","../../../../node_modules/@types/node/events.d.ts","../../../../node_modules/@types/node/fs.d.ts","../../../../node_modules/@types/node/fs/promises.d.ts","../../../../node_modules/@types/node/http.d.ts","../../../../node_modules/@types/node/http2.d.ts","../../../../node_modules/@types/node/https.d.ts","../../../../node_modules/@types/node/inspector.d.ts","../../../../node_modules/@types/node/module.d.ts","../../../../node_modules/@types/node/net.d.ts","../../../../node_modules/@types/node/os.d.ts","../../../../node_modules/@types/node/path.d.ts","../../../../node_modules/@types/node/perf_hooks.d.ts","../../../../node_modules/@types/node/process.d.ts","../../../../node_modules/@types/node/punycode.d.ts","../../../../node_modules/@types/node/querystring.d.ts","../../../../node_modules/@types/node/readline.d.ts","../../../../node_modules/@types/node/repl.d.ts","../../../../node_modules/@types/node/stream.d.ts","../../../../node_modules/@types/node/stream/promises.d.ts","../../../../node_modules/@types/node/stream/consumers.d.ts","../../../../node_modules/@types/node/stream/web.d.ts","../../../../node_modules/@types/node/string_decoder.d.ts","../../../../node_modules/@types/node/timers.d.ts","../../../../node_modules/@types/node/timers/promises.d.ts","../../../../node_modules/@types/node/tls.d.ts","../../../../node_modules/@types/node/trace_events.d.ts","../../../../node_modules/@types/node/tty.d.ts","../../../../node_modules/@types/node/url.d.ts","../../../../node_modules/@types/node/util.d.ts","../../../../node_modules/@types/node/v8.d.ts","../../../../node_modules/@types/node/vm.d.ts","../../../../node_modules/@types/node/wasi.d.ts","../../../../node_modules/@types/node/worker_threads.d.ts","../../../../node_modules/@types/node/zlib.d.ts","../../../../node_modules/@types/node/globals.global.d.ts","../../../../node_modules/@types/node/index.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/cleanupSemantic.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/types.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/diffLines.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/printDiffs.d.ts","../../../../node_modules/@types/jest/node_modules/jest-diff/build/index.d.ts","../../../../node_modules/@types/jest/node_modules/pretty-format/build/types.d.ts","../../../../node_modules/@types/jest/node_modules/pretty-format/build/index.d.ts","../../../../node_modules/@types/jest/index.d.ts","../../../../node_modules/@types/jest/ts3.2/index.d.ts"],"fileInfos":[{"version":"3ac1b83264055b28c0165688fda6dfcc39001e9e7828f649299101c23ad0a0c3","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","e21c071ca3e1b4a815d5f04a7475adcaeea5d64367e840dd0154096d705c3940",{"version":"72704b10d97777e15f1a581b73f88273037ef752d2e50b72287bd0a90af64fe6","affectsGlobalScope":true},{"version":"d8996609230d17e90484a2dd58f22668f9a05a3bfe00bfb1d6271171e54a31fb","affectsGlobalScope":true},{"version":"43fb1d932e4966a39a41b464a12a81899d9ae5f2c829063f5571b6b87e6d2f9c","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"0d5f52b3174bee6edb81260ebcd792692c32c81fd55499d69531496f3f2b25e7","affectsGlobalScope":true},{"version":"810627a82ac06fb5166da5ada4159c4ec11978dfbb0805fe804c86406dab8357","affectsGlobalScope":true},{"version":"62d80405c46c3f4c527ee657ae9d43fda65a0bf582292429aea1e69144a522a6","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"75ec0bdd727d887f1b79ed6619412ea72ba3c81d92d0787ccb64bab18d261f14","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"12a310447c5d23c7d0d5ca2af606e3bd08afda69100166730ab92c62999ebb9d","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"1b3fe904465430e030c93239a348f05e1be80640d91f2f004c3512c2c2c89f34","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"5075b36ab861c8c0c45377cb8c96270d7c65f0eeaf105d53fac6850da61f1027","affectsGlobalScope":true},{"version":"10bbdc1981b8d9310ee75bfac28ee0477bb2353e8529da8cff7cb26c409cb5e8","affectsGlobalScope":true},"fd0f56a96d995bf07780490eb65da40e9fbdf80c1ddc89fb5ef837d91849c6d8","9f1270c1185cdf2a091e50b70339c127f2ee7bc66160e83fc6787ea335f20a14","db2ea909d82eb6e05c4c162e83d40ffd164bbd3f268c9416b8f84c056f79c63a","71a689048584cde03cb508408ae7c3b04ad8f10af887865e8b65c27ed9d91488","ccdd58c6212ebce6230fe7b78d57ddad6cf4032334ebc8c87a88d475d40e7012","6ba1631f84ef4507073189c4ada06d6de8bac89375ea3b49e34e49006cc44a3f","2ff9995137f3e5d68971388ec58af0c79721626323884513f9f5e2e996ac1fdd","07e3907c42b7215b7f8ced0c990805f42862060e53c9c4c42c28e407648d52d9","7d69ac79c9de7620a1bdd926fd4b20b8e968d6467a220eac2a836988ab47c933","c7b126a023fbcbe6b07edf69283b049fc3ca6958bc19934cde610a0ab5ae8ef3","7383bcf1e3b4970ec58cddeb24becd4fcd207aa518ca46270a6872b63712c29e","caeb0e5ee606c0461616c3f884bc15e651e5de500973335ed360ab063deae8ca","15644fa386f870a3ff6202ec0c8acdc1007d0466004c37757490991ec2602d74","d4f36091f2a7fac55cac2d088d46e68f01cd5cf68e3db5770b3ba62641875e18","5a007f687f1be0ed103375930c7027eb6f10d0b826472f7f6d7a5b260502104e","531942c2bbd4ebc75da80f161ab9b8ad1c519a8a703bdbc7907805f9f92bc223","dcaef7f7c1f0cb2dba19a1a70cc8d5276faa68e50bc69d6a006d3aaaaa9f7aa7","ffd67adf9464cf9bcddc3954fcd27d59b60e85acb02101fefe8b0eb642a2be2f","59b8c7576043b12356b13745811130ae5fa9c37cbd7ec5e49ecac8e88b8c9992","d992548828f9d7f905d401ec57c41f241f7dfde4267e639aa8b2d33ecf90c8b0","e689f3e0af5e9bb2034ad2e16784fb1f231e41159080e944666ebc9d9f33dc09","0d5a2ee1fdfa82740e0103389b9efd6bfe145a20018a2da3c02b89666181f4d9","a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a",{"version":"2f6c9750131d5d2fdaba85c164a930dc07d2d7e7e8970b89d32864aa6c72620c","affectsGlobalScope":true},"56d13f223ab40f71840795f5bef2552a397a70666ee60878222407f3893fb8d0",{"version":"aeeee3998c5a730f8689f04038d41cf4245c9edbf6ef29a698e45b36e399b8ed","affectsGlobalScope":true},"95843d5cfafced8f3f8a5ce57d2335f0bcd361b9483587d12a25e4bd403b8216","afc6e96061af46bcff47246158caee7e056f5288783f2d83d6858cd25be1c565",{"version":"34f5bcac12b36d70304b73de5f5aab3bb91bd9919f984be80579ebcad03a624e","affectsGlobalScope":true},"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","90b94d3d2aa3432cc9dd2d15f56a38b166163fc555404c74243e1af29c5549d8","f50c975ab7b50e25a69e3d8a3773894125b44e9698924105f23b812bf7488baf","c993aac3b6d4a4620ef9651497069eb84806a131420e4f158ea9396fb8eb9b8c","76650408392bf49a8fbf3e2b6b302712a92d76af77b06e2da1cc8077359c4409","0af3121e68297b2247dd331c0d24dba599e50736a7517a5622d5591aae4a3122","6972fca26f6e9bd56197568d4379f99071a90766e06b4fcb5920a0130a9202be",{"version":"4a2628e95962c8ab756121faa3ac2ed348112ff7a87b5c286dd2cc3326546b4c","affectsGlobalScope":true},"80793b2277f31baa199234daed806fff0fb11491d1ebd3357e520c3558063f00","a049a59a02009fc023684fcfaf0ac526fe36c35dcc5d2b7d620c1750ba11b083","e3b886bacdd1fbf1f72e654596c80a55c7bc1d10bdf464aaf52f45ecd243862f","d2f5c67858e65ebb932c2f4bd2af646f5764e8ad7f1e4fbe942a0b5ea05dc0e7","4b9a003b5c556c96784132945bb41c655ea11273b1917f5c8d0c154dd5fd20dd","7f249c599e7a9335dd8e94a4bfe63f00e911756c3c23f77cdb6ef0ec4d479e4a",{"version":"e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5","affectsGlobalScope":true},"2cabc86ea4f972f2c8386903eccb8c19e2f2370fb9808b66dd8759c1f2ab30c7","abc1c425b2ad6720433f40f1877abfa4223f0f3dd486c9c28c492179ca183cb6","945a841f9a591197154c85386bc5a1467d42d325104bb36db51bc566bbb240be","10c39ce1df102994b47d4bc0c71aa9a6aea76f4651a5ec51914431f50bc883a1",{"version":"8207e7e6db9aa5fc7e61c8f17ba74cf9c115d26f51f91ee93f790815a7ea9dfb","affectsGlobalScope":true},"9f1069b9e2c051737b1f9b4f1baf50e4a63385a6a89c32235549ae87fc3d5492","ee18f2da7a037c6ceeb112a084e485aead9ea166980bf433474559eac1b46553","29c2706fa0cc49a2bd90c83234da33d08bb9554ecec675e91c1f85087f5a5324","0acbf26bf958f9e80c1ffa587b74749d2697b75b484062d36e103c137c562bc3","3fa48484c65913004d5abb5c0f917b61ea4684f32d05bb28c1ecfa5f05a9ed12","1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff",{"version":"806ef4cac3b3d9fa4a48d849c8e084d7c72fcd7b16d76e06049a9ed742ff79c0","affectsGlobalScope":true},"33eee034727baf564056b4ea719075c23d3b4767d0b5f9c6933b81f3d77774d2","c33a6ea7147af60d8e98f1ac127047f4b0d4e2ce28b8f08ff3de07ca7cc00637",{"version":"127803f77e0dfee84b031b83ea7776875c6c4c89e11a81d00299ff58f163f0e2","affectsGlobalScope":true},"664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980","2408611d9b4146e35d1dbd1f443ccd8e187c74614a54b80300728277529dbf11","998a3de5237518c0b3ac00a11b3b4417affb008aa20aedee52f3fdae3cb86151","ad41008ffe077206e1811fc873f4d9005b5fd7f6ab52bb6118fef600815a5cb4",{"version":"dd9ea469d1bfaf589c6a196275d35cb1aa14014707c2c46d920c7b921e8f5bca","affectsGlobalScope":true},"badae0df9a8016ac36994b0a0e7b82ba6aaa3528e175a8c3cb161e4683eec03e","c3db860bcaaaeb3bbc23f353bbda1f8ab82756c8d5e973bebb3953cb09ea68f2","235a53595bd20b0b0eeb1a29cb2887c67c48375e92f03749b2488fbd46d0b1a0","bc09393cd4cd13f69cf1366d4236fbae5359bb550f0de4e15767e9a91d63dfb1","9c266243b01545e11d2733a55ad02b4c00ecdbda99c561cd1674f96e89cdc958","c71155c05fc76ff948a4759abc1cb9feec036509f500174bc18dad4c7827a60c",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"1503a452a67127e5c2da794d1c7c44344d5038373aae16c9b03ac964db159edd","e222104af6cb9415238ad358488b74d76eceeff238c1268ec6e85655b05341da","69da61a7b5093dac77fa3bec8be95dcf9a74c95a0e9161edb98bb24e30e439d2","eba230221317c985ab1953ccc3edc517f248b37db4fef7875cb2c8d08aff7be7","b83e796810e475da3564c6515bc0ae9577070596a33d89299b7d99f94ecfd921","b4439890c168d646357928431100daac5cbdee1d345a34e6bf6eca9f3abe22bc","5d72971a459517c44c1379dab9ed248e87a61ba0a1e0f25c9d67e1e640cd9a09","02d734976af36f4273d930bea88b3e62adf6b078cf120c1c63d49aa8d8427c5c",{"version":"f624e578325b8c58e55b30c998b1f4c3ec1b61a9fa66373da4250c89b7880d44","affectsGlobalScope":true},{"version":"d3002f620eab4bf6476c9da5c0efb2041d46f7df8b3032a5631bd206abef2c75","affectsGlobalScope":true}],"options":{"allowSyntheticDefaultImports":true,"declaration":true,"declarationMap":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"experimentalDecorators":true,"module":99,"noImplicitAny":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./","sourceMap":true,"target":1},"fileIdsList":[[104],[104,116,118],[104,112,113],[104,112,113,114,115],[104,117],[104,119],[61,104],[64,104],[65,70,104],[66,76,77,84,93,103,104],[66,67,76,84,104],[68,104],[69,70,77,85,104],[70,93,100,104],[71,73,76,84,104],[72,104],[73,74,104],[75,76,104],[76,104],[76,77,78,93,103,104],[76,77,78,93,104],[79,84,93,103,104],[76,77,79,80,84,93,100,103,104],[79,81,93,100,103,104],[61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110],[76,82,104],[83,103,104],[73,76,84,93,104],[85,104],[86,104],[64,87,104],[88,102,104,108],[89,104],[90,104],[76,91,104],[91,92,104,106],[76,93,94,95,104],[93,95,104],[93,94,104],[96,104],[97,104],[76,98,99,104],[98,99,104],[70,84,100,104],[101,104],[84,102,104],[65,79,90,103,104],[70,104],[93,104,105],[104,106],[104,107],[65,70,76,78,87,93,103,104,106,108],[93,104,109],[45,46,104],[45,104],[45,46,48,104],[47,48,49,50,51,52,53,54,55,56,57,104],[45,55,104],[45,46,51,104],[45,46,48,51,104],[45,59,104],[45,46,58,104],[41,104],[41,42,43,44,104],[40,104],[40,41,104]],"referencedMap":[[46,1],[119,2],[112,1],[114,3],[116,4],[115,3],[113,1],[118,5],[117,1],[120,6],[61,7],[62,7],[64,8],[65,9],[66,10],[67,11],[68,12],[69,13],[70,14],[71,15],[72,16],[73,17],[74,17],[75,18],[76,19],[77,20],[78,21],[63,1],[110,1],[79,22],[80,23],[81,24],[111,25],[82,26],[83,27],[84,28],[85,29],[86,30],[87,31],[88,32],[89,33],[90,34],[91,35],[92,36],[93,37],[95,38],[94,39],[96,40],[97,41],[98,42],[99,43],[100,44],[101,45],[102,46],[103,47],[104,48],[105,49],[106,50],[107,51],[108,52],[109,53],[8,1],[10,1],[9,1],[2,1],[11,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[18,1],[3,1],[4,1],[22,1],[19,1],[20,1],[21,1],[23,1],[24,1],[25,1],[5,1],[26,1],[27,1],[28,1],[29,1],[6,1],[30,1],[31,1],[32,1],[33,1],[7,1],[38,1],[34,1],[35,1],[36,1],[37,1],[1,1],[39,1],[47,54],[50,55],[49,56],[58,57],[56,58],[55,55],[57,59],[51,54],[52,60],[54,55],[48,1],[53,55],[60,61],[59,62],[43,1],[42,63],[40,1],[45,64],[41,65],[44,66]],"exportedModulesMap":[[46,1],[119,2],[112,1],[114,3],[116,4],[115,3],[113,1],[118,5],[117,1],[120,6],[61,7],[62,7],[64,8],[65,9],[66,10],[67,11],[68,12],[69,13],[70,14],[71,15],[72,16],[73,17],[74,17],[75,18],[76,19],[77,20],[78,21],[63,1],[110,1],[79,22],[80,23],[81,24],[111,25],[82,26],[83,27],[84,28],[85,29],[86,30],[87,31],[88,32],[89,33],[90,34],[91,35],[92,36],[93,37],[95,38],[94,39],[96,40],[97,41],[98,42],[99,43],[100,44],[101,45],[102,46],[103,47],[104,48],[105,49],[106,50],[107,51],[108,52],[109,53],[8,1],[10,1],[9,1],[2,1],[11,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[18,1],[3,1],[4,1],[22,1],[19,1],[20,1],[21,1],[23,1],[24,1],[25,1],[5,1],[26,1],[27,1],[28,1],[29,1],[6,1],[30,1],[31,1],[32,1],[33,1],[7,1],[38,1],[34,1],[35,1],[36,1],[37,1],[1,1],[39,1],[47,54],[50,55],[49,56],[58,57],[56,58],[55,55],[57,59],[51,54],[52,60],[54,55],[48,1],[53,55],[60,61],[59,62],[43,1],[42,63],[40,1],[45,64],[41,65],[44,66]],"semanticDiagnosticsPerFile":[46,119,112,114,116,115,113,118,117,120,61,62,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,63,110,79,80,81,111,82,83,84,85,86,87,88,89,90,91,92,93,95,94,96,97,98,99,100,101,102,103,104,105,106,107,108,109,8,10,9,2,11,12,13,14,15,16,17,18,3,4,22,19,20,21,23,24,25,5,26,27,28,29,6,30,31,32,33,7,38,34,35,36,37,1,39,47,50,49,58,56,55,57,51,52,54,48,53,60,59,43,42,40,45,41,44]},"version":"4.6.2"}
@@ -0,0 +1,4 @@
1
+ import * as types from '@babel/types';
2
+ import { InitialPathsData, PagePaginationOptions } from '@teleporthq/teleport-types';
3
+ export declare const generateInitialPathsAST: (initialData: InitialPathsData, propsPrefix?: string, pagination?: PagePaginationOptions) => types.ExportNamedDeclaration;
4
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAEpF,eAAO,MAAM,uBAAuB,gBACrB,gBAAgB,gBAChB,MAAM,eACN,qBAAqB,iCAkBnC,CAAA"}
@@ -0,0 +1,66 @@
1
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
2
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
3
+ if (ar || !(i in from)) {
4
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
5
+ ar[i] = from[i];
6
+ }
7
+ }
8
+ return to.concat(ar || Array.prototype.slice.call(from));
9
+ };
10
+ import * as types from '@babel/types';
11
+ import { ASTUtils } from '@teleporthq/teleport-plugin-common';
12
+ export var generateInitialPathsAST = function (initialData, propsPrefix, pagination) {
13
+ if (propsPrefix === void 0) { propsPrefix = ''; }
14
+ var computedResourceAST = computePropsAST(initialData, propsPrefix, pagination);
15
+ return types.exportNamedDeclaration((function () {
16
+ var node = types.functionDeclaration(types.identifier('getStaticPaths'), [], types.blockStatement(__spreadArray([], computedResourceAST, true)), false, true);
17
+ node.async = true;
18
+ return node;
19
+ })());
20
+ };
21
+ var computePropsAST = function (initialData, propsPrefix, pagination) {
22
+ if (propsPrefix === void 0) { propsPrefix = ''; }
23
+ var resourceASTs = ASTUtils.generateRemoteResourceASTs(initialData.resource, propsPrefix);
24
+ var paginationASTs = [];
25
+ if (pagination) {
26
+ var itemsCountAST = types.variableDeclaration('const', [
27
+ types.variableDeclarator(types.identifier('totalCount'), ASTUtils.generateMemberExpressionASTFromPath(__spreadArray(['response'], pagination.totalCountPath, true))),
28
+ ]);
29
+ var pagesCountAST = types.variableDeclaration('const', [
30
+ types.variableDeclarator(types.identifier('pagesCount'), types.callExpression(types.memberExpression(types.identifier('Math'), types.identifier('ceil'), false), [
31
+ types.binaryExpression('/', types.identifier('totalCount'), types.numericLiteral(pagination.pageSize)),
32
+ ])),
33
+ ]);
34
+ paginationASTs.push(itemsCountAST);
35
+ paginationASTs.push(pagesCountAST);
36
+ }
37
+ var returnAST = types.returnStatement(types.objectExpression([
38
+ types.objectProperty(types.identifier('paths'), pagination
39
+ ? types.callExpression(types.memberExpression(types.identifier('Array'), types.identifier('from')), [
40
+ types.objectExpression([
41
+ types.objectProperty(types.identifier('length'), types.identifier('pagesCount')),
42
+ ]),
43
+ types.arrowFunctionExpression([types.identifier('_'), types.identifier('i')], types.objectExpression([
44
+ types.objectProperty(types.identifier('params'), types.objectExpression([
45
+ types.objectProperty(types.identifier('page'), types.callExpression(types.memberExpression(types.binaryExpression('+', types.identifier('i'), types.numericLiteral(1)), types.identifier('toString')), [])),
46
+ ])),
47
+ ])),
48
+ ])
49
+ : types.callExpression(types.memberExpression(ASTUtils.generateMemberExpressionASTFromPath(__spreadArray([
50
+ 'response'
51
+ ], initialData.exposeAs.valuePath, true)), types.identifier('map'), false), [
52
+ types.arrowFunctionExpression([types.identifier('item')], types.blockStatement([
53
+ types.returnStatement(types.objectExpression([
54
+ types.objectProperty(types.identifier('params'), types.objectExpression([
55
+ types.objectProperty(types.identifier(initialData.exposeAs.name), types.callExpression(types.memberExpression(ASTUtils.generateMemberExpressionASTFromPath(__spreadArray([
56
+ 'item'
57
+ ], initialData.exposeAs.itemValuePath, true)), types.identifier('toString')), []), false, false),
58
+ ]), false, false),
59
+ ])),
60
+ ])),
61
+ ]), false, false),
62
+ types.objectProperty(types.identifier('fallback'), types.booleanLiteral(false), false, false),
63
+ ]));
64
+ return __spreadArray(__spreadArray(__spreadArray([], resourceASTs, true), paginationASTs, true), [returnAST], false);
65
+ };
66
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,32 @@
1
+ {
2
+ "name": "@teleporthq/teleport-plugin-next-static-paths",
3
+ "version": "0.27.0",
4
+ "description": "A plugin for adding getStaticPaths inside a nextjs page",
5
+ "author": "teleportHQ",
6
+ "license": "MIT",
7
+ "homepage": "https://teleporthq.io/",
8
+ "main": "dist/cjs/index.js",
9
+ "module": "dist/esm/index.js",
10
+ "types": "dist/cjs/index.d.ts",
11
+ "sideEffects": false,
12
+ "repository": {
13
+ "type": "git",
14
+ "url": "git+ssh://git@github.com/teleporthq/teleport-code-generators.git"
15
+ },
16
+ "bugs": {
17
+ "url": "https://github.com/teleporthq/teleport-code-generators/issues"
18
+ },
19
+ "publishConfig": {
20
+ "access": "public"
21
+ },
22
+ "scripts": {
23
+ "clean": "rimraf dist",
24
+ "build": "tsc -p tsconfig.json && tsc -p tsconfig.json --module commonjs --outDir dist/cjs"
25
+ },
26
+ "dependencies": {
27
+ "@babel/types": "^7.5.5",
28
+ "@teleporthq/teleport-plugin-common": "^0.27.2",
29
+ "@teleporthq/teleport-types": "^0.27.0"
30
+ },
31
+ "gitHead": "df1fd49b6b3b6b7ef6abb47b64b981750622f98b"
32
+ }
package/src/index.ts ADDED
@@ -0,0 +1,49 @@
1
+ import {
2
+ ChunkType,
3
+ ComponentPlugin,
4
+ ComponentPluginFactory,
5
+ FileType,
6
+ } from '@teleporthq/teleport-types'
7
+ import { generateInitialPathsAST } from './utils'
8
+
9
+ interface StaticPropsPluginConfig {
10
+ componentChunkName?: string
11
+ }
12
+
13
+ export const createStaticPathsPlugin: ComponentPluginFactory<StaticPropsPluginConfig> = (
14
+ config
15
+ ) => {
16
+ const { componentChunkName = 'jsx-component' } = config || {}
17
+
18
+ const staticPathsPlugin: ComponentPlugin = async (structure) => {
19
+ const { uidl, chunks } = structure
20
+ if (!uidl.outputOptions?.initialPathsData) {
21
+ return structure
22
+ }
23
+
24
+ const componentChunk = chunks.find((chunk) => chunk.name === componentChunkName)
25
+ if (!componentChunk) {
26
+ return structure
27
+ }
28
+
29
+ const getStaticPathsAST = generateInitialPathsAST(
30
+ uidl.outputOptions.initialPathsData,
31
+ undefined,
32
+ uidl.outputOptions.pagination
33
+ )
34
+
35
+ chunks.push({
36
+ name: 'getStaticPaths',
37
+ type: ChunkType.AST,
38
+ fileType: FileType.JS,
39
+ content: getStaticPathsAST,
40
+ linkAfter: [componentChunkName],
41
+ })
42
+
43
+ return structure
44
+ }
45
+
46
+ return staticPathsPlugin
47
+ }
48
+
49
+ export default createStaticPathsPlugin()
package/src/utils.ts ADDED
@@ -0,0 +1,152 @@
1
+ import * as types from '@babel/types'
2
+ import { ASTUtils } from '@teleporthq/teleport-plugin-common'
3
+ import { InitialPathsData, PagePaginationOptions } from '@teleporthq/teleport-types'
4
+
5
+ export const generateInitialPathsAST = (
6
+ initialData: InitialPathsData,
7
+ propsPrefix: string = '',
8
+ pagination?: PagePaginationOptions
9
+ ) => {
10
+ const computedResourceAST = computePropsAST(initialData, propsPrefix, pagination)
11
+
12
+ return types.exportNamedDeclaration(
13
+ (() => {
14
+ const node = types.functionDeclaration(
15
+ types.identifier('getStaticPaths'),
16
+ [],
17
+ types.blockStatement([...computedResourceAST]),
18
+ false,
19
+ true
20
+ )
21
+
22
+ node.async = true
23
+ return node
24
+ })()
25
+ )
26
+ }
27
+
28
+ const computePropsAST = (
29
+ initialData: InitialPathsData,
30
+ propsPrefix: string = '',
31
+ pagination?: PagePaginationOptions
32
+ ) => {
33
+ const resourceASTs = ASTUtils.generateRemoteResourceASTs(initialData.resource, propsPrefix)
34
+
35
+ const paginationASTs = []
36
+ if (pagination) {
37
+ const itemsCountAST = types.variableDeclaration('const', [
38
+ types.variableDeclarator(
39
+ types.identifier('totalCount'),
40
+ ASTUtils.generateMemberExpressionASTFromPath(['response', ...pagination.totalCountPath])
41
+ ),
42
+ ])
43
+
44
+ const pagesCountAST = types.variableDeclaration('const', [
45
+ types.variableDeclarator(
46
+ types.identifier('pagesCount'),
47
+ types.callExpression(
48
+ types.memberExpression(types.identifier('Math'), types.identifier('ceil'), false),
49
+ [
50
+ types.binaryExpression(
51
+ '/',
52
+ types.identifier('totalCount'),
53
+ types.numericLiteral(pagination.pageSize)
54
+ ),
55
+ ]
56
+ )
57
+ ),
58
+ ])
59
+
60
+ paginationASTs.push(itemsCountAST)
61
+ paginationASTs.push(pagesCountAST)
62
+ }
63
+
64
+ const returnAST = types.returnStatement(
65
+ types.objectExpression([
66
+ types.objectProperty(
67
+ types.identifier('paths'),
68
+ pagination
69
+ ? types.callExpression(
70
+ types.memberExpression(types.identifier('Array'), types.identifier('from')),
71
+ [
72
+ types.objectExpression([
73
+ types.objectProperty(types.identifier('length'), types.identifier('pagesCount')),
74
+ ]),
75
+ types.arrowFunctionExpression(
76
+ [types.identifier('_'), types.identifier('i')],
77
+ types.objectExpression([
78
+ types.objectProperty(
79
+ types.identifier('params'),
80
+ types.objectExpression([
81
+ types.objectProperty(
82
+ types.identifier('page'),
83
+ types.callExpression(
84
+ types.memberExpression(
85
+ types.binaryExpression(
86
+ '+',
87
+ types.identifier('i'),
88
+ types.numericLiteral(1)
89
+ ),
90
+ types.identifier('toString')
91
+ ),
92
+ []
93
+ )
94
+ ),
95
+ ])
96
+ ),
97
+ ])
98
+ ),
99
+ ]
100
+ )
101
+ : types.callExpression(
102
+ types.memberExpression(
103
+ ASTUtils.generateMemberExpressionASTFromPath([
104
+ 'response',
105
+ ...initialData.exposeAs.valuePath,
106
+ ]),
107
+ types.identifier('map'),
108
+ false
109
+ ),
110
+ [
111
+ types.arrowFunctionExpression(
112
+ [types.identifier('item')],
113
+ types.blockStatement([
114
+ types.returnStatement(
115
+ types.objectExpression([
116
+ types.objectProperty(
117
+ types.identifier('params'),
118
+ types.objectExpression([
119
+ types.objectProperty(
120
+ types.identifier(initialData.exposeAs.name),
121
+ types.callExpression(
122
+ types.memberExpression(
123
+ ASTUtils.generateMemberExpressionASTFromPath([
124
+ 'item',
125
+ ...initialData.exposeAs.itemValuePath,
126
+ ]),
127
+ types.identifier('toString')
128
+ ),
129
+ []
130
+ ),
131
+ false,
132
+ false
133
+ ),
134
+ ]),
135
+ false,
136
+ false
137
+ ),
138
+ ])
139
+ ),
140
+ ])
141
+ ),
142
+ ]
143
+ ),
144
+ false,
145
+ false
146
+ ),
147
+ types.objectProperty(types.identifier('fallback'), types.booleanLiteral(false), false, false),
148
+ ])
149
+ )
150
+
151
+ return [...resourceASTs, ...paginationASTs, returnAST]
152
+ }
package/tsconfig.json ADDED
@@ -0,0 +1,9 @@
1
+ {
2
+ "extends": "../../tsconfig.json",
3
+ "compilerOptions": {
4
+ "outDir": "dist/esm"
5
+ },
6
+ "include": [
7
+ "./src"
8
+ ]
9
+ }