@mintlify/previewing 3.1.56 → 3.1.58
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 +93 -0
- package/README.md +17 -17
- package/dist/constants.d.ts +9 -9
- package/dist/constants.js +31 -31
- package/dist/downloadImage.d.ts +4 -4
- package/dist/downloadImage.js +139 -139
- package/dist/index.d.ts +3 -3
- package/dist/index.js +3 -3
- package/dist/local-preview/helper-commands/installDepsCommand.d.ts +2 -2
- package/dist/local-preview/helper-commands/installDepsCommand.js +51 -51
- package/dist/local-preview/index.d.ts +3 -3
- package/dist/local-preview/index.js +212 -212
- package/dist/local-preview/listener/categorize.d.ts +8 -8
- package/dist/local-preview/listener/categorize.js +193 -193
- package/dist/local-preview/listener/generate.d.ts +1 -1
- package/dist/local-preview/listener/generate.js +137 -137
- package/dist/local-preview/listener/index.d.ts +2 -2
- package/dist/local-preview/listener/index.js +317 -317
- package/dist/local-preview/listener/update.d.ts +2 -2
- package/dist/local-preview/listener/update.js +79 -79
- package/dist/local-preview/listener/utils/createPage.d.ts +10 -10
- package/dist/local-preview/listener/utils/createPage.js +210 -210
- package/dist/local-preview/listener/utils/getOpenApiContext.d.ts +21 -21
- package/dist/local-preview/listener/utils/getOpenApiContext.js +55 -55
- package/dist/local-preview/listener/utils/mintConfigFile.d.ts +2 -2
- package/dist/local-preview/listener/utils/mintConfigFile.js +74 -74
- package/dist/local-preview/listener/utils/types.d.ts +2 -2
- package/dist/local-preview/listener/utils/types.js +1 -1
- package/dist/local-preview/listener/utils.d.ts +13 -13
- package/dist/local-preview/listener/utils.js +112 -112
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/util.d.ts +4 -4
- package/dist/util.js +20 -20
- package/package.json +88 -87
|
@@ -1,212 +1,212 @@
|
|
|
1
|
-
var __assign = (this && this.__assign) || function () {
|
|
2
|
-
__assign = Object.assign || function(t) {
|
|
3
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
-
s = arguments[i];
|
|
5
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
-
t[p] = s[p];
|
|
7
|
-
}
|
|
8
|
-
return t;
|
|
9
|
-
};
|
|
10
|
-
return __assign.apply(this, arguments);
|
|
11
|
-
};
|
|
12
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
13
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
14
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
15
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
16
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
17
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
18
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
19
|
-
});
|
|
20
|
-
};
|
|
21
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
22
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
23
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
24
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
25
|
-
function step(op) {
|
|
26
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
27
|
-
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
28
|
-
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;
|
|
29
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
30
|
-
switch (op[0]) {
|
|
31
|
-
case 0: case 1: t = op; break;
|
|
32
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
33
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
34
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
35
|
-
default:
|
|
36
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
37
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
38
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
39
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
40
|
-
if (t[2]) _.ops.pop();
|
|
41
|
-
_.trys.pop(); continue;
|
|
42
|
-
}
|
|
43
|
-
op = body.call(thisArg, _);
|
|
44
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
45
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
46
|
-
}
|
|
47
|
-
};
|
|
48
|
-
import axios from 'axios';
|
|
49
|
-
import Chalk from 'chalk';
|
|
50
|
-
import child_process from 'child_process';
|
|
51
|
-
import fse, { pathExists } from 'fs-extra';
|
|
52
|
-
import { isInternetAvailable } from 'is-internet-available';
|
|
53
|
-
import open from 'open';
|
|
54
|
-
import path from 'path';
|
|
55
|
-
import shell from 'shelljs';
|
|
56
|
-
import { CLIENT_PATH, HOME_DIR, DOT_MINTLIFY, CMD_EXEC_PATH, TARGET_MINT_VERSION, VERSION_PATH, MINT_PATH, } from '../constants.js';
|
|
57
|
-
import { buildLogger, ensureYarn } from '../util.js';
|
|
58
|
-
import listener from './listener/index.js';
|
|
59
|
-
import { getConfigPath } from './listener/utils/mintConfigFile.js';
|
|
60
|
-
var nodeModulesExists = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
61
|
-
return __generator(this, function (_a) {
|
|
62
|
-
return [2 /*return*/, pathExists(path.join(DOT_MINTLIFY, 'mint', 'client', 'node_modules'))];
|
|
63
|
-
});
|
|
64
|
-
}); };
|
|
65
|
-
var downloadTargetMint = function (logger) { return __awaiter(void 0, void 0, void 0, function () {
|
|
66
|
-
var downloadRes, TAR_PATH;
|
|
67
|
-
return __generator(this, function (_a) {
|
|
68
|
-
switch (_a.label) {
|
|
69
|
-
case 0:
|
|
70
|
-
fse.emptyDirSync(MINT_PATH);
|
|
71
|
-
logger.text = 'Downloading Mintlify framework...';
|
|
72
|
-
return [4 /*yield*/, axios.get("https://mint-releases.b-cdn.net/mint-".concat(TARGET_MINT_VERSION.slice(1), ".tar.gz"), {
|
|
73
|
-
responseType: 'arraybuffer',
|
|
74
|
-
})];
|
|
75
|
-
case 1:
|
|
76
|
-
downloadRes = _a.sent();
|
|
77
|
-
logger.text = 'Extracting Mintlify framework...';
|
|
78
|
-
TAR_PATH = path.join(MINT_PATH, "mint-".concat(TARGET_MINT_VERSION.slice(1), ".tar.gz"));
|
|
79
|
-
fse.writeFileSync(TAR_PATH, Buffer.from(downloadRes.data));
|
|
80
|
-
fse.mkdirSync(path.join(MINT_PATH, 'mint-tmp'));
|
|
81
|
-
shell.exec("tar -xzf mint-".concat(TARGET_MINT_VERSION.slice(1), ".tar.gz -C mint-tmp --strip-components 1"), {
|
|
82
|
-
silent: true,
|
|
83
|
-
});
|
|
84
|
-
fse.removeSync(TAR_PATH);
|
|
85
|
-
fse.moveSync(path.join(MINT_PATH, 'mint-tmp', 'client'), path.join(CLIENT_PATH));
|
|
86
|
-
fse.writeFileSync(VERSION_PATH, TARGET_MINT_VERSION);
|
|
87
|
-
// Delete unnecessary content downloaded from GitHub
|
|
88
|
-
fse.removeSync(path.join(MINT_PATH, 'mint-tmp'));
|
|
89
|
-
logger.text = 'Installing dependencies...';
|
|
90
|
-
ensureYarn(logger);
|
|
91
|
-
shell.cd(CLIENT_PATH);
|
|
92
|
-
shell.exec('yarn', { silent: true });
|
|
93
|
-
return [2 /*return*/];
|
|
94
|
-
}
|
|
95
|
-
});
|
|
96
|
-
}); };
|
|
97
|
-
var checkForMintJson = function (logger) { return __awaiter(void 0, void 0, void 0, function () {
|
|
98
|
-
var configPath;
|
|
99
|
-
return __generator(this, function (_a) {
|
|
100
|
-
switch (_a.label) {
|
|
101
|
-
case 0: return [4 /*yield*/, getConfigPath(CMD_EXEC_PATH)];
|
|
102
|
-
case 1:
|
|
103
|
-
configPath = _a.sent();
|
|
104
|
-
if (configPath == null) {
|
|
105
|
-
logger.fail('Must be ran in a directory where a mint.json file exists.');
|
|
106
|
-
process.exit(1);
|
|
107
|
-
}
|
|
108
|
-
return [2 /*return*/];
|
|
109
|
-
}
|
|
110
|
-
});
|
|
111
|
-
}); };
|
|
112
|
-
var dev = function (argv) { return __awaiter(void 0, void 0, void 0, function () {
|
|
113
|
-
var logger, internet, _a, mintVersionExists, needToDownloadTargetMint, currVersion, relativePath, _b, stderr, stdout, status, errStr;
|
|
114
|
-
return __generator(this, function (_c) {
|
|
115
|
-
switch (_c.label) {
|
|
116
|
-
case 0:
|
|
117
|
-
shell.cd(HOME_DIR);
|
|
118
|
-
logger = buildLogger('Preparing local Mintlify instance...');
|
|
119
|
-
return [4 /*yield*/, fse.ensureDir(MINT_PATH)];
|
|
120
|
-
case 1:
|
|
121
|
-
_c.sent();
|
|
122
|
-
shell.cd(MINT_PATH);
|
|
123
|
-
return [4 /*yield*/, isInternetAvailable()];
|
|
124
|
-
case 2:
|
|
125
|
-
internet = _c.sent();
|
|
126
|
-
_a = !internet;
|
|
127
|
-
if (!_a) return [3 /*break*/, 4];
|
|
128
|
-
return [4 /*yield*/, pathExists(CLIENT_PATH)];
|
|
129
|
-
case 3:
|
|
130
|
-
_a = !(_c.sent());
|
|
131
|
-
_c.label = 4;
|
|
132
|
-
case 4:
|
|
133
|
-
if (_a) {
|
|
134
|
-
logger.fail('Running mintlify dev for the first time requires an internet connection.');
|
|
135
|
-
process.exit(1);
|
|
136
|
-
}
|
|
137
|
-
if (!internet) return [3 /*break*/, 7];
|
|
138
|
-
return [4 /*yield*/, pathExists(VERSION_PATH)];
|
|
139
|
-
case 5:
|
|
140
|
-
mintVersionExists = _c.sent();
|
|
141
|
-
needToDownloadTargetMint = !mintVersionExists;
|
|
142
|
-
if (mintVersionExists) {
|
|
143
|
-
currVersion = fse.readFileSync(VERSION_PATH, 'utf8');
|
|
144
|
-
if (currVersion !== TARGET_MINT_VERSION) {
|
|
145
|
-
needToDownloadTargetMint = true;
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
if (!needToDownloadTargetMint) return [3 /*break*/, 7];
|
|
149
|
-
return [4 /*yield*/, downloadTargetMint(logger)];
|
|
150
|
-
case 6:
|
|
151
|
-
_c.sent();
|
|
152
|
-
_c.label = 7;
|
|
153
|
-
case 7: return [4 /*yield*/, nodeModulesExists()];
|
|
154
|
-
case 8:
|
|
155
|
-
if (!(_c.sent())) {
|
|
156
|
-
if (!internet) {
|
|
157
|
-
logger.fail("Dependencies are missing and you are offline. Connect to the internet and run\n \n mintlify install\n \n ");
|
|
158
|
-
}
|
|
159
|
-
else {
|
|
160
|
-
logger.fail("Dependencies were not installed correctly, run\n \n mintlify install\n \n ");
|
|
161
|
-
}
|
|
162
|
-
process.exit(1);
|
|
163
|
-
}
|
|
164
|
-
return [4 /*yield*/, checkForMintJson(logger)];
|
|
165
|
-
case 9:
|
|
166
|
-
_c.sent();
|
|
167
|
-
shell.cd(CLIENT_PATH);
|
|
168
|
-
relativePath = path.relative(CLIENT_PATH, CMD_EXEC_PATH);
|
|
169
|
-
_b = child_process.spawnSync('yarn prebuild', [relativePath], {
|
|
170
|
-
shell: true,
|
|
171
|
-
}), stderr = _b.stderr, stdout = _b.stdout, status = _b.status;
|
|
172
|
-
errStr = stderr.toString().trim();
|
|
173
|
-
if (status !== 0) {
|
|
174
|
-
logger.fail('Prebuild step failed.');
|
|
175
|
-
console.log(stdout.toString());
|
|
176
|
-
console.error(errStr);
|
|
177
|
-
process.exit(1);
|
|
178
|
-
}
|
|
179
|
-
logger.succeed('Local Mintlify instance is ready. Launching your site...');
|
|
180
|
-
run((argv === null || argv === void 0 ? void 0 : argv.port) || '3000');
|
|
181
|
-
return [2 /*return*/];
|
|
182
|
-
}
|
|
183
|
-
});
|
|
184
|
-
}); };
|
|
185
|
-
var run = function (port) {
|
|
186
|
-
shell.cd(CLIENT_PATH);
|
|
187
|
-
// next-remote-watch can only receive ports as env variables
|
|
188
|
-
// https://github.com/hashicorp/next-remote-watch/issues/23
|
|
189
|
-
var mintlifyDevProcess = child_process.spawn('npm run dev-watch', {
|
|
190
|
-
env: __assign(__assign({}, process.env), { PORT: port }),
|
|
191
|
-
cwd: CLIENT_PATH,
|
|
192
|
-
stdio: 'pipe',
|
|
193
|
-
shell: true,
|
|
194
|
-
});
|
|
195
|
-
mintlifyDevProcess.stdout.on('data', function (data) {
|
|
196
|
-
var output = data.toString();
|
|
197
|
-
console.log(output);
|
|
198
|
-
if (output.startsWith('> Ready on http://localhost:')) {
|
|
199
|
-
console.log("\uD83C\uDF3F ".concat(Chalk.green("Your local preview is available at http://localhost:".concat(port))));
|
|
200
|
-
console.log("\uD83C\uDF3F ".concat(Chalk.green('Press Ctrl+C any time to stop the local preview.')));
|
|
201
|
-
open("http://localhost:".concat(port));
|
|
202
|
-
}
|
|
203
|
-
});
|
|
204
|
-
var onExit = function () {
|
|
205
|
-
mintlifyDevProcess.kill('SIGINT');
|
|
206
|
-
process.exit(0);
|
|
207
|
-
};
|
|
208
|
-
process.on('SIGINT', onExit);
|
|
209
|
-
process.on('SIGTERM', onExit);
|
|
210
|
-
listener();
|
|
211
|
-
};
|
|
212
|
-
export default dev;
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
13
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
14
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
15
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
16
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
17
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
18
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
19
|
+
});
|
|
20
|
+
};
|
|
21
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
22
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
23
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
24
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
25
|
+
function step(op) {
|
|
26
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
27
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
28
|
+
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;
|
|
29
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
30
|
+
switch (op[0]) {
|
|
31
|
+
case 0: case 1: t = op; break;
|
|
32
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
33
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
34
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
35
|
+
default:
|
|
36
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
37
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
38
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
39
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
40
|
+
if (t[2]) _.ops.pop();
|
|
41
|
+
_.trys.pop(); continue;
|
|
42
|
+
}
|
|
43
|
+
op = body.call(thisArg, _);
|
|
44
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
45
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
import axios from 'axios';
|
|
49
|
+
import Chalk from 'chalk';
|
|
50
|
+
import child_process from 'child_process';
|
|
51
|
+
import fse, { pathExists } from 'fs-extra';
|
|
52
|
+
import { isInternetAvailable } from 'is-internet-available';
|
|
53
|
+
import open from 'open';
|
|
54
|
+
import path from 'path';
|
|
55
|
+
import shell from 'shelljs';
|
|
56
|
+
import { CLIENT_PATH, HOME_DIR, DOT_MINTLIFY, CMD_EXEC_PATH, TARGET_MINT_VERSION, VERSION_PATH, MINT_PATH, } from '../constants.js';
|
|
57
|
+
import { buildLogger, ensureYarn } from '../util.js';
|
|
58
|
+
import listener from './listener/index.js';
|
|
59
|
+
import { getConfigPath } from './listener/utils/mintConfigFile.js';
|
|
60
|
+
var nodeModulesExists = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
61
|
+
return __generator(this, function (_a) {
|
|
62
|
+
return [2 /*return*/, pathExists(path.join(DOT_MINTLIFY, 'mint', 'client', 'node_modules'))];
|
|
63
|
+
});
|
|
64
|
+
}); };
|
|
65
|
+
var downloadTargetMint = function (logger) { return __awaiter(void 0, void 0, void 0, function () {
|
|
66
|
+
var downloadRes, TAR_PATH;
|
|
67
|
+
return __generator(this, function (_a) {
|
|
68
|
+
switch (_a.label) {
|
|
69
|
+
case 0:
|
|
70
|
+
fse.emptyDirSync(MINT_PATH);
|
|
71
|
+
logger.text = 'Downloading Mintlify framework...';
|
|
72
|
+
return [4 /*yield*/, axios.get("https://mint-releases.b-cdn.net/mint-".concat(TARGET_MINT_VERSION.slice(1), ".tar.gz"), {
|
|
73
|
+
responseType: 'arraybuffer',
|
|
74
|
+
})];
|
|
75
|
+
case 1:
|
|
76
|
+
downloadRes = _a.sent();
|
|
77
|
+
logger.text = 'Extracting Mintlify framework...';
|
|
78
|
+
TAR_PATH = path.join(MINT_PATH, "mint-".concat(TARGET_MINT_VERSION.slice(1), ".tar.gz"));
|
|
79
|
+
fse.writeFileSync(TAR_PATH, Buffer.from(downloadRes.data));
|
|
80
|
+
fse.mkdirSync(path.join(MINT_PATH, 'mint-tmp'));
|
|
81
|
+
shell.exec("tar -xzf mint-".concat(TARGET_MINT_VERSION.slice(1), ".tar.gz -C mint-tmp --strip-components 1"), {
|
|
82
|
+
silent: true,
|
|
83
|
+
});
|
|
84
|
+
fse.removeSync(TAR_PATH);
|
|
85
|
+
fse.moveSync(path.join(MINT_PATH, 'mint-tmp', 'client'), path.join(CLIENT_PATH));
|
|
86
|
+
fse.writeFileSync(VERSION_PATH, TARGET_MINT_VERSION);
|
|
87
|
+
// Delete unnecessary content downloaded from GitHub
|
|
88
|
+
fse.removeSync(path.join(MINT_PATH, 'mint-tmp'));
|
|
89
|
+
logger.text = 'Installing dependencies...';
|
|
90
|
+
ensureYarn(logger);
|
|
91
|
+
shell.cd(CLIENT_PATH);
|
|
92
|
+
shell.exec('yarn', { silent: true });
|
|
93
|
+
return [2 /*return*/];
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
}); };
|
|
97
|
+
var checkForMintJson = function (logger) { return __awaiter(void 0, void 0, void 0, function () {
|
|
98
|
+
var configPath;
|
|
99
|
+
return __generator(this, function (_a) {
|
|
100
|
+
switch (_a.label) {
|
|
101
|
+
case 0: return [4 /*yield*/, getConfigPath(CMD_EXEC_PATH)];
|
|
102
|
+
case 1:
|
|
103
|
+
configPath = _a.sent();
|
|
104
|
+
if (configPath == null) {
|
|
105
|
+
logger.fail('Must be ran in a directory where a mint.json file exists.');
|
|
106
|
+
process.exit(1);
|
|
107
|
+
}
|
|
108
|
+
return [2 /*return*/];
|
|
109
|
+
}
|
|
110
|
+
});
|
|
111
|
+
}); };
|
|
112
|
+
var dev = function (argv) { return __awaiter(void 0, void 0, void 0, function () {
|
|
113
|
+
var logger, internet, _a, mintVersionExists, needToDownloadTargetMint, currVersion, relativePath, _b, stderr, stdout, status, errStr;
|
|
114
|
+
return __generator(this, function (_c) {
|
|
115
|
+
switch (_c.label) {
|
|
116
|
+
case 0:
|
|
117
|
+
shell.cd(HOME_DIR);
|
|
118
|
+
logger = buildLogger('Preparing local Mintlify instance...');
|
|
119
|
+
return [4 /*yield*/, fse.ensureDir(MINT_PATH)];
|
|
120
|
+
case 1:
|
|
121
|
+
_c.sent();
|
|
122
|
+
shell.cd(MINT_PATH);
|
|
123
|
+
return [4 /*yield*/, isInternetAvailable()];
|
|
124
|
+
case 2:
|
|
125
|
+
internet = _c.sent();
|
|
126
|
+
_a = !internet;
|
|
127
|
+
if (!_a) return [3 /*break*/, 4];
|
|
128
|
+
return [4 /*yield*/, pathExists(CLIENT_PATH)];
|
|
129
|
+
case 3:
|
|
130
|
+
_a = !(_c.sent());
|
|
131
|
+
_c.label = 4;
|
|
132
|
+
case 4:
|
|
133
|
+
if (_a) {
|
|
134
|
+
logger.fail('Running mintlify dev for the first time requires an internet connection.');
|
|
135
|
+
process.exit(1);
|
|
136
|
+
}
|
|
137
|
+
if (!internet) return [3 /*break*/, 7];
|
|
138
|
+
return [4 /*yield*/, pathExists(VERSION_PATH)];
|
|
139
|
+
case 5:
|
|
140
|
+
mintVersionExists = _c.sent();
|
|
141
|
+
needToDownloadTargetMint = !mintVersionExists;
|
|
142
|
+
if (mintVersionExists) {
|
|
143
|
+
currVersion = fse.readFileSync(VERSION_PATH, 'utf8');
|
|
144
|
+
if (currVersion !== TARGET_MINT_VERSION) {
|
|
145
|
+
needToDownloadTargetMint = true;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
if (!needToDownloadTargetMint) return [3 /*break*/, 7];
|
|
149
|
+
return [4 /*yield*/, downloadTargetMint(logger)];
|
|
150
|
+
case 6:
|
|
151
|
+
_c.sent();
|
|
152
|
+
_c.label = 7;
|
|
153
|
+
case 7: return [4 /*yield*/, nodeModulesExists()];
|
|
154
|
+
case 8:
|
|
155
|
+
if (!(_c.sent())) {
|
|
156
|
+
if (!internet) {
|
|
157
|
+
logger.fail("Dependencies are missing and you are offline. Connect to the internet and run\n \n mintlify install\n \n ");
|
|
158
|
+
}
|
|
159
|
+
else {
|
|
160
|
+
logger.fail("Dependencies were not installed correctly, run\n \n mintlify install\n \n ");
|
|
161
|
+
}
|
|
162
|
+
process.exit(1);
|
|
163
|
+
}
|
|
164
|
+
return [4 /*yield*/, checkForMintJson(logger)];
|
|
165
|
+
case 9:
|
|
166
|
+
_c.sent();
|
|
167
|
+
shell.cd(CLIENT_PATH);
|
|
168
|
+
relativePath = path.relative(CLIENT_PATH, CMD_EXEC_PATH);
|
|
169
|
+
_b = child_process.spawnSync('yarn prebuild', [relativePath], {
|
|
170
|
+
shell: true,
|
|
171
|
+
}), stderr = _b.stderr, stdout = _b.stdout, status = _b.status;
|
|
172
|
+
errStr = stderr.toString().trim();
|
|
173
|
+
if (status !== 0) {
|
|
174
|
+
logger.fail('Prebuild step failed.');
|
|
175
|
+
console.log(stdout.toString());
|
|
176
|
+
console.error(errStr);
|
|
177
|
+
process.exit(1);
|
|
178
|
+
}
|
|
179
|
+
logger.succeed('Local Mintlify instance is ready. Launching your site...');
|
|
180
|
+
run((argv === null || argv === void 0 ? void 0 : argv.port) || '3000');
|
|
181
|
+
return [2 /*return*/];
|
|
182
|
+
}
|
|
183
|
+
});
|
|
184
|
+
}); };
|
|
185
|
+
var run = function (port) {
|
|
186
|
+
shell.cd(CLIENT_PATH);
|
|
187
|
+
// next-remote-watch can only receive ports as env variables
|
|
188
|
+
// https://github.com/hashicorp/next-remote-watch/issues/23
|
|
189
|
+
var mintlifyDevProcess = child_process.spawn('npm run dev-watch', {
|
|
190
|
+
env: __assign(__assign({}, process.env), { PORT: port }),
|
|
191
|
+
cwd: CLIENT_PATH,
|
|
192
|
+
stdio: 'pipe',
|
|
193
|
+
shell: true,
|
|
194
|
+
});
|
|
195
|
+
mintlifyDevProcess.stdout.on('data', function (data) {
|
|
196
|
+
var output = data.toString();
|
|
197
|
+
console.log(output);
|
|
198
|
+
if (output.startsWith('> Ready on http://localhost:')) {
|
|
199
|
+
console.log("\uD83C\uDF3F ".concat(Chalk.green("Your local preview is available at http://localhost:".concat(port))));
|
|
200
|
+
console.log("\uD83C\uDF3F ".concat(Chalk.green('Press Ctrl+C any time to stop the local preview.')));
|
|
201
|
+
open("http://localhost:".concat(port));
|
|
202
|
+
}
|
|
203
|
+
});
|
|
204
|
+
var onExit = function () {
|
|
205
|
+
mintlifyDevProcess.kill('SIGINT');
|
|
206
|
+
process.exit(0);
|
|
207
|
+
};
|
|
208
|
+
process.on('SIGINT', onExit);
|
|
209
|
+
process.on('SIGTERM', onExit);
|
|
210
|
+
listener();
|
|
211
|
+
};
|
|
212
|
+
export default dev;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { PotentialFileCategory } from './utils/types.js';
|
|
2
|
-
export declare const categorizeFiles: (contentDirectoryPath: string) => Promise<{
|
|
3
|
-
contentFilenames: string[];
|
|
4
|
-
staticFilenames: string[];
|
|
5
|
-
openApiFiles: OpenApiFile[];
|
|
6
|
-
snippets: string[];
|
|
7
|
-
}>;
|
|
8
|
-
export declare const getCategory: (filePath: string) => PotentialFileCategory;
|
|
1
|
+
import { PotentialFileCategory } from './utils/types.js';
|
|
2
|
+
export declare const categorizeFiles: (contentDirectoryPath: string) => Promise<{
|
|
3
|
+
contentFilenames: string[];
|
|
4
|
+
staticFilenames: string[];
|
|
5
|
+
openApiFiles: OpenApiFile[];
|
|
6
|
+
snippets: string[];
|
|
7
|
+
}>;
|
|
8
|
+
export declare const getCategory: (filePath: string) => PotentialFileCategory;
|