@metricinsights/pp-dev 0.0.1
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/README.md +36 -0
- package/bin/pp-dev.js +71 -0
- package/dist/banner/header.d.ts +2 -0
- package/dist/banner/header.js +10 -0
- package/dist/banner/header.js.map +1 -0
- package/dist/cli.d.ts +1 -0
- package/dist/cli.js +275 -0
- package/dist/cli.js.map +1 -0
- package/dist/client/client.css +36 -0
- package/dist/client/client.js +19 -0
- package/dist/client/client.js.map +1 -0
- package/dist/client/index.d.ts +2 -0
- package/dist/client/index.html +40 -0
- package/dist/client/rollup.config.d.ts +2 -0
- package/dist/constants.d.ts +6 -0
- package/dist/constants.js +18 -0
- package/dist/constants.js.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.js +147 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/client.service.d.ts +10 -0
- package/dist/lib/client.service.js +33 -0
- package/dist/lib/client.service.js.map +1 -0
- package/dist/lib/helpers/url.helper.d.ts +3 -0
- package/dist/lib/helpers/url.helper.js +27 -0
- package/dist/lib/helpers/url.helper.js.map +1 -0
- package/dist/lib/pp.middleware.d.ts +15 -0
- package/dist/lib/pp.middleware.js +133 -0
- package/dist/lib/pp.middleware.js.map +1 -0
- package/dist/lib/proxy-pass.middleware.d.ts +9 -0
- package/dist/lib/proxy-pass.middleware.js +88 -0
- package/dist/lib/proxy-pass.middleware.js.map +1 -0
- package/dist/plugin.d.ts +10 -0
- package/dist/plugin.js +103 -0
- package/dist/plugin.js.map +1 -0
- package/dist/plugins/client-injection-plugin.d.ts +12 -0
- package/dist/plugins/client-injection-plugin.js +57 -0
- package/dist/plugins/client-injection-plugin.js.map +1 -0
- package/dist/shortcuts.d.ts +12 -0
- package/dist/shortcuts.js +83 -0
- package/dist/shortcuts.js.map +1 -0
- package/package.json +68 -0
- package/pp-dev.d.ts +60 -0
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { normalizePath } from 'vite';
|
|
2
|
+
import * as path from 'path';
|
|
3
|
+
import { PP_DEV_CLIENT_ENTRY, PACKAGE_NAME, VERSION, PP_DEV_PACKAGE_DIR } from '../constants.js';
|
|
4
|
+
import * as fs from 'fs';
|
|
5
|
+
import { compile } from 'ejs';
|
|
6
|
+
import * as url from 'url';
|
|
7
|
+
const __dirname = url.fileURLToPath(new URL('.', import.meta.url));
|
|
8
|
+
const PACKAGE_IMPORT = `${PACKAGE_NAME}/client`;
|
|
9
|
+
const CLIENT_PATH = `/${PACKAGE_IMPORT}`;
|
|
10
|
+
export function clientInjectionPlugin(opts) {
|
|
11
|
+
const clientPanelTpl = fs.readFileSync(path.resolve(__dirname, '..', 'client', 'index.html'), {
|
|
12
|
+
encoding: 'utf8',
|
|
13
|
+
flag: 'r',
|
|
14
|
+
});
|
|
15
|
+
let render;
|
|
16
|
+
return {
|
|
17
|
+
name: 'pp-dev:client',
|
|
18
|
+
apply: 'serve',
|
|
19
|
+
config: (config) => {
|
|
20
|
+
config.optimizeDeps?.exclude?.push(`${PACKAGE_NAME}/client`);
|
|
21
|
+
return config;
|
|
22
|
+
},
|
|
23
|
+
resolveId(source) {
|
|
24
|
+
const pkgRegExp = new RegExp(`^\\/?${PACKAGE_NAME}\\/client\\/(.*)$`);
|
|
25
|
+
if (pkgRegExp.test(source)) {
|
|
26
|
+
return {
|
|
27
|
+
id: normalizePath(path.join(PP_DEV_PACKAGE_DIR, 'dist/client', source.replace(pkgRegExp, '$1'))),
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
transformIndexHtml: async (html, ctx) => {
|
|
32
|
+
const result = {
|
|
33
|
+
html,
|
|
34
|
+
tags: [
|
|
35
|
+
{ tag: 'link', injectTo: 'head', attrs: { rel: 'stylesheet', href: `${PACKAGE_NAME}/client/client.css` } },
|
|
36
|
+
{ tag: 'script', injectTo: 'body', attrs: { src: `${PACKAGE_NAME}/client/client.js`, type: 'module' } },
|
|
37
|
+
],
|
|
38
|
+
};
|
|
39
|
+
const { backendBaseURL, templateLess, portalPageId } = opts || ctx.server?.config.clientInjectionPlugin || {};
|
|
40
|
+
if (!render && ctx.server?.config.base) {
|
|
41
|
+
render = compile(clientPanelTpl.replace(new RegExp(`${CLIENT_PATH}`, 'g'), path.posix.join(ctx.server.config.base, PACKAGE_IMPORT)), { openDelimiter: '{', closeDelimiter: '}', async: true });
|
|
42
|
+
}
|
|
43
|
+
if (ctx.server?.config.base) {
|
|
44
|
+
result.tags.push({
|
|
45
|
+
tag: 'div',
|
|
46
|
+
injectTo: 'body',
|
|
47
|
+
children: await render({ PACKAGE_NAME, VERSION, backendBaseURL, templateLess, portalPageId }),
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
return result;
|
|
51
|
+
},
|
|
52
|
+
configureServer(server) {
|
|
53
|
+
server.config.server?.fs?.allow?.push(normalizePath(path.resolve(server.config.root, path.dirname(PP_DEV_CLIENT_ENTRY))));
|
|
54
|
+
},
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=client-injection-plugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client-injection-plugin.js","sourceRoot":"","sources":["../../src/plugins/client-injection-plugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ViteDevServer } from 'vite';
|
|
2
|
+
export declare function isDefined<T>(value: T | undefined | null): value is T;
|
|
3
|
+
export type BindShortcutsOptions = {
|
|
4
|
+
print?: boolean;
|
|
5
|
+
customShortcuts?: (CLIShortcut | undefined | null)[];
|
|
6
|
+
};
|
|
7
|
+
export type CLIShortcut = {
|
|
8
|
+
key: string;
|
|
9
|
+
description: string;
|
|
10
|
+
action(server: ViteDevServer): void | Promise<void>;
|
|
11
|
+
};
|
|
12
|
+
export declare function bindShortcuts(server: ViteDevServer, opts: BindShortcutsOptions): void;
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { createColors } from 'picocolors';
|
|
2
|
+
const colors = createColors();
|
|
3
|
+
export function isDefined(value) {
|
|
4
|
+
return value != null;
|
|
5
|
+
}
|
|
6
|
+
export function bindShortcuts(server, opts) {
|
|
7
|
+
if (!server.httpServer || !process.stdin.isTTY || process.env.CI) {
|
|
8
|
+
return;
|
|
9
|
+
}
|
|
10
|
+
server._shortcutsOptions = opts;
|
|
11
|
+
if (opts.print) {
|
|
12
|
+
server.config.logger.info(colors.dim(colors.green(' ➜')) + colors.dim(' press ') + colors.bold('h') + colors.dim(' to show help'));
|
|
13
|
+
}
|
|
14
|
+
const shortcuts = (opts.customShortcuts ?? []).filter(isDefined).concat(BASE_SHORTCUTS);
|
|
15
|
+
let actionRunning = false;
|
|
16
|
+
const onInput = async (input) => {
|
|
17
|
+
if (input === '\x03' || input === '\x04') {
|
|
18
|
+
await server.close().finally(() => process.exit(1));
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
if (actionRunning) {
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
if (input === 'h') {
|
|
25
|
+
server.config.logger.info([
|
|
26
|
+
'',
|
|
27
|
+
colors.bold(' Shortcuts'),
|
|
28
|
+
...shortcuts.map((shortcut) => colors.dim(' press ') + colors.bold(shortcut.key) + colors.dim(` to ${shortcut.description}`)),
|
|
29
|
+
].join('\n'));
|
|
30
|
+
}
|
|
31
|
+
const shortcut = shortcuts.find((shortcut) => shortcut.key === input);
|
|
32
|
+
if (!shortcut) {
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
actionRunning = true;
|
|
36
|
+
await shortcut.action(server);
|
|
37
|
+
actionRunning = false;
|
|
38
|
+
};
|
|
39
|
+
process.stdin.setRawMode(true);
|
|
40
|
+
process.stdin.on('data', onInput).setEncoding('utf8').resume();
|
|
41
|
+
server.httpServer.on('close', () => {
|
|
42
|
+
process.stdin.off('data', onInput).pause();
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
const BASE_SHORTCUTS = [
|
|
46
|
+
{
|
|
47
|
+
key: 'r',
|
|
48
|
+
description: 'restart the server',
|
|
49
|
+
async action(server) {
|
|
50
|
+
await server.restart();
|
|
51
|
+
},
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
key: 'u',
|
|
55
|
+
description: 'show server url',
|
|
56
|
+
action(server) {
|
|
57
|
+
server.config.logger.info('');
|
|
58
|
+
server.printUrls();
|
|
59
|
+
},
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
key: 'o',
|
|
63
|
+
description: 'open in browser',
|
|
64
|
+
action(server) {
|
|
65
|
+
server.openBrowser();
|
|
66
|
+
},
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
key: 'c',
|
|
70
|
+
description: 'clear console',
|
|
71
|
+
action(server) {
|
|
72
|
+
server.config.logger.clearScreen('error');
|
|
73
|
+
},
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
key: 'q',
|
|
77
|
+
description: 'quit',
|
|
78
|
+
async action(server) {
|
|
79
|
+
await server.close().finally(() => process.exit());
|
|
80
|
+
},
|
|
81
|
+
},
|
|
82
|
+
];
|
|
83
|
+
//# sourceMappingURL=shortcuts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shortcuts.js","sourceRoot":"","sources":["../src/shortcuts.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@metricinsights/pp-dev",
|
|
3
|
+
"type": "module",
|
|
4
|
+
"version": "0.0.1",
|
|
5
|
+
"description": "Portal Page dev build tool",
|
|
6
|
+
"bin": {
|
|
7
|
+
"pp-dev": "bin/pp-dev.js"
|
|
8
|
+
},
|
|
9
|
+
"main": "dist/index.js",
|
|
10
|
+
"scripts": {
|
|
11
|
+
"clean": "rimraf ./dist",
|
|
12
|
+
"prebuild": "npm run clean",
|
|
13
|
+
"build": "npm run build:node && npm run build:client",
|
|
14
|
+
"build:node": "tsc",
|
|
15
|
+
"build:client": "rollup --config src/client/rollup.config.ts --configPlugin typescript",
|
|
16
|
+
"test": "cd test && npm run build"
|
|
17
|
+
},
|
|
18
|
+
"exports": {
|
|
19
|
+
".": {
|
|
20
|
+
"types": "./dist/index.d.ts",
|
|
21
|
+
"import": "./dist/index.js"
|
|
22
|
+
},
|
|
23
|
+
"./plugin": {
|
|
24
|
+
"types": "./dist/plugin.d.ts",
|
|
25
|
+
"import": "./dist/plugin.js"
|
|
26
|
+
},
|
|
27
|
+
"./client/*": "./dist/client/*",
|
|
28
|
+
"./package.json": "./package.json"
|
|
29
|
+
},
|
|
30
|
+
"author": "Serhii Shpak",
|
|
31
|
+
"license": "ISC",
|
|
32
|
+
"dependencies": {
|
|
33
|
+
"axios": "^1.4.0",
|
|
34
|
+
"cac": "^6.7.14",
|
|
35
|
+
"ejs": "^3.1.9",
|
|
36
|
+
"esbuild": "^0.17.18",
|
|
37
|
+
"express": "^4.18.2",
|
|
38
|
+
"file-type": "^18.3.0",
|
|
39
|
+
"http-proxy-middleware": "^2.0.6",
|
|
40
|
+
"jsdom": "^22.0.0",
|
|
41
|
+
"picocolors": "^1.0.0",
|
|
42
|
+
"sass": "^1.62.1",
|
|
43
|
+
"typescript": "^5.0.4",
|
|
44
|
+
"vite": "^4.3.4",
|
|
45
|
+
"vite-plugin-zip-pack": "^1.0.5"
|
|
46
|
+
},
|
|
47
|
+
"devDependencies": {
|
|
48
|
+
"@rollup/plugin-node-resolve": "^15.0.2",
|
|
49
|
+
"@rollup/plugin-typescript": "^11.1.1",
|
|
50
|
+
"@rollup/plugin-url": "^8.0.1",
|
|
51
|
+
"@types/ejs": "^3.1.2",
|
|
52
|
+
"@types/express": "^4.17.17",
|
|
53
|
+
"@types/jsdom": "^21.1.1",
|
|
54
|
+
"rimraf": "^5.0.1",
|
|
55
|
+
"rollup": "^3.23.0",
|
|
56
|
+
"rollup-plugin-scss": "^3.0.0",
|
|
57
|
+
"tslib": "^2.5.2"
|
|
58
|
+
},
|
|
59
|
+
"files": [
|
|
60
|
+
"bin",
|
|
61
|
+
"dist",
|
|
62
|
+
"package.json",
|
|
63
|
+
"README.md",
|
|
64
|
+
"LICENSE.md",
|
|
65
|
+
"pp-dev.d.ts",
|
|
66
|
+
"assets"
|
|
67
|
+
]
|
|
68
|
+
}
|
package/pp-dev.d.ts
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import type { PPDevConfig, PPWatchConfig } from '.';
|
|
2
|
+
|
|
3
|
+
declare module 'pp-dev.config.ts' {
|
|
4
|
+
const config: PPDevConfig;
|
|
5
|
+
|
|
6
|
+
export default config;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
declare module '.pp-dev.config.ts' {
|
|
10
|
+
const config: PPDevConfig;
|
|
11
|
+
|
|
12
|
+
export default config;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
declare module 'pp-dev.config.js' {
|
|
16
|
+
const config: PPDevConfig;
|
|
17
|
+
|
|
18
|
+
export default config;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
declare module '.pp-dev.config.js' {
|
|
22
|
+
const config: PPDevConfig;
|
|
23
|
+
|
|
24
|
+
export default config;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
declare module 'pp-dev.config.json' {
|
|
28
|
+
const config: PPDevConfig;
|
|
29
|
+
|
|
30
|
+
export default config;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
declare module '.pp-dev.config.json' {
|
|
34
|
+
const config: PPDevConfig;
|
|
35
|
+
|
|
36
|
+
export default config;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
declare module '.pp-watch.config.ts' {
|
|
40
|
+
const config: PPWatchConfig;
|
|
41
|
+
|
|
42
|
+
export default config;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
declare module '.pp-watch.config.js' {
|
|
46
|
+
const config: PPWatchConfig;
|
|
47
|
+
|
|
48
|
+
export default config;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
declare module '.pp-watch.config.json' {
|
|
52
|
+
const config: PPWatchConfig;
|
|
53
|
+
|
|
54
|
+
export default config;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
declare module '*.scss' {
|
|
58
|
+
const content: Record<string, string>;
|
|
59
|
+
export default content;
|
|
60
|
+
}
|