@intuned/runtime-dev 0.1.0-test.38 → 0.1.0-test.4
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/InterfaceTemplate/index.ts +1 -5
- package/Intuned.json +1 -1
- package/WebTemplate/api.ts +92 -90
- package/WebTemplate/controllers/async.ts +48 -52
- package/WebTemplate/controllers/authSessions/check.ts +4 -3
- package/WebTemplate/controllers/authSessions/create.ts +7 -5
- package/WebTemplate/controllers/authSessions/resumeOperation.ts +1 -1
- package/WebTemplate/controllers/runApi/helpers.ts +7 -12
- package/WebTemplate/index.playwright.ts +42 -32
- package/WebTemplate/jobs.ts +2 -13
- package/WebTemplate/utils.ts +1 -48
- package/api/test2.ts +5 -7
- package/auth-sessions/check.ts +1 -3
- package/auth-sessions/create.ts +10 -10
- package/bin/intuned-ts-check +1 -1
- package/dist/commands/api/run.js +4 -6
- package/dist/commands/auth-sessions/run-check.js +2 -8
- package/dist/commands/auth-sessions/run-create.js +5 -10
- package/dist/commands/build.js +13 -16
- package/dist/commands/common/getDefaultExportFromFile.d.ts +1 -0
- package/dist/commands/common/{tsNodeImport.js → getDefaultExportFromFile.js} +5 -6
- package/dist/commands/common/utils/settings.js +5 -5
- package/dist/commands/common/utils/webTemplate.d.ts +1 -0
- package/dist/commands/common/utils/{template.js → webTemplate.js} +7 -7
- package/dist/commands/interface/run.d.ts +1 -1
- package/dist/commands/interface/run.js +106 -131
- package/dist/commands/ts-check.js +7 -9
- package/dist/common/getPlaywrightConstructs.js +1 -5
- package/dist/common/runApi/errors.d.ts +3 -8
- package/dist/common/runApi/errors.js +3 -26
- package/dist/common/runApi/index.d.ts +1 -1
- package/dist/common/runApi/index.js +55 -33
- package/dist/common/runApi/types.d.ts +61 -277
- package/dist/common/runApi/types.js +2 -26
- package/dist/runtime/executionHelpers.test.js +6 -6
- package/package.json +3 -5
- package/testing +0 -0
- package/tsconfig.json +2 -1
- package/InterfaceTemplate/utils.ts +0 -257
- package/dist/commands/common/tsNodeImport.d.ts +0 -1
- package/dist/commands/common/utils/template.d.ts +0 -2
- package/dist/common/formatZodError.d.ts +0 -2
- package/dist/common/formatZodError.js +0 -18
package/auth-sessions/create.ts
CHANGED
|
@@ -15,16 +15,16 @@ export default async function* create(
|
|
|
15
15
|
await page.locator("#value").fill("password");
|
|
16
16
|
await page.locator("input[type=submit]").click();
|
|
17
17
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
18
|
+
console.log("Received", yield requestOTP("Enter useless otp"));
|
|
19
|
+
console.log(
|
|
20
|
+
"Received",
|
|
21
|
+
yield requestMultipleChoice("Choose the correct answer", [
|
|
22
|
+
"A",
|
|
23
|
+
"B",
|
|
24
|
+
"C",
|
|
25
|
+
"D",
|
|
26
|
+
])
|
|
27
|
+
);
|
|
28
28
|
|
|
29
29
|
await page.goto("http://www.sharonminsuk.com/code/storage-test.html");
|
|
30
30
|
await page.locator("#local").fill("intuned");
|
package/bin/intuned-ts-check
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
require("../dist/commands/ts-check.js");
|
|
2
|
+
require("../dist/commands/ts-check.js");
|
package/dist/commands/api/run.js
CHANGED
|
@@ -16,7 +16,6 @@ var _Logger = require("../../common/Logger");
|
|
|
16
16
|
var _nanoid = require("nanoid");
|
|
17
17
|
var _chalk = _interopRequireDefault(require("chalk"));
|
|
18
18
|
var _runApi = require("../../common/runApi");
|
|
19
|
-
var _tsNodeImport = require("../common/tsNodeImport");
|
|
20
19
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
20
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
22
21
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -40,7 +39,7 @@ async function executeCLI(apiName, mode, inputData, options) {
|
|
|
40
39
|
const runApiResult = await (0, _runApi.runApi)({
|
|
41
40
|
automationFunction: {
|
|
42
41
|
name: `api/${apiName}`,
|
|
43
|
-
params: inputData
|
|
42
|
+
params: inputData ?? {}
|
|
44
43
|
},
|
|
45
44
|
auth: authSessionPathToUse ? {
|
|
46
45
|
session: {
|
|
@@ -53,15 +52,14 @@ async function executeCLI(apiName, mode, inputData, options) {
|
|
|
53
52
|
environment: "ide",
|
|
54
53
|
cdpAddress: options.cdpAddress,
|
|
55
54
|
mode
|
|
56
|
-
}
|
|
57
|
-
importFunction: _tsNodeImport.tsNodeImport
|
|
55
|
+
}
|
|
58
56
|
});
|
|
59
57
|
if (runApiResult.isErr()) {
|
|
60
58
|
if (runApiResult.error instanceof _runApi.AutomationError) {
|
|
61
59
|
throw runApiResult.error.error;
|
|
62
60
|
}
|
|
63
|
-
console.error(runApiResult.error);
|
|
64
|
-
|
|
61
|
+
console.error("An error occurred while running the API", runApiResult.error);
|
|
62
|
+
return;
|
|
65
63
|
}
|
|
66
64
|
const {
|
|
67
65
|
result,
|
|
@@ -8,7 +8,6 @@ var _settings = require("../common/utils/settings");
|
|
|
8
8
|
var _dotenv = _interopRequireDefault(require("dotenv"));
|
|
9
9
|
var _constants = require("../../common/constants");
|
|
10
10
|
var _runApi = require("../../common/runApi");
|
|
11
|
-
var _tsNodeImport = require("../common/tsNodeImport");
|
|
12
11
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
12
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
14
13
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -42,15 +41,10 @@ _commander.program.description("run auth session check").option("--cdpAddress <c
|
|
|
42
41
|
path: authSessionPath
|
|
43
42
|
},
|
|
44
43
|
runCheck: false
|
|
45
|
-
}
|
|
46
|
-
importFunction: _tsNodeImport.tsNodeImport
|
|
44
|
+
}
|
|
47
45
|
});
|
|
48
46
|
if (runApiResult.isErr()) {
|
|
49
|
-
|
|
50
|
-
throw runApiResult.error.error;
|
|
51
|
-
}
|
|
52
|
-
console.error(runApiResult.error);
|
|
53
|
-
throw new Error("Error running auth session check");
|
|
47
|
+
throw new Error(runApiResult.error);
|
|
54
48
|
}
|
|
55
49
|
const result = runApiResult.value.result;
|
|
56
50
|
console.log("check result", result);
|
|
@@ -12,7 +12,6 @@ var _runApi = require("../../common/runApi");
|
|
|
12
12
|
var _asyncLocalStorage = require("../../common/asyncLocalStorage");
|
|
13
13
|
var _nanoid = require("nanoid");
|
|
14
14
|
var _enums = require("../../runtime/enums");
|
|
15
|
-
var _tsNodeImport = require("../common/tsNodeImport");
|
|
16
15
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
16
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
18
17
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -44,16 +43,15 @@ _commander.program.description("run auth session create").option("--cdpAddress <
|
|
|
44
43
|
async function runCreate() {
|
|
45
44
|
const generator = (0, _runApi.runApiGenerator)({
|
|
46
45
|
automationFunction: {
|
|
47
|
-
name:
|
|
48
|
-
params: inputData
|
|
46
|
+
name: "auth-sessions/create",
|
|
47
|
+
params: inputData ?? {}
|
|
49
48
|
},
|
|
50
49
|
runOptions: {
|
|
51
50
|
environment: "ide",
|
|
52
51
|
mode,
|
|
53
52
|
cdpAddress
|
|
54
53
|
},
|
|
55
|
-
retrieveSession: true
|
|
56
|
-
importFunction: _tsNodeImport.tsNodeImport
|
|
54
|
+
retrieveSession: true
|
|
57
55
|
});
|
|
58
56
|
let nextGeneratorParam = undefined;
|
|
59
57
|
while (true) {
|
|
@@ -63,11 +61,8 @@ _commander.program.description("run auth session create").option("--cdpAddress <
|
|
|
63
61
|
} = await generator.next(...(nextGeneratorParam ? [nextGeneratorParam] : []));
|
|
64
62
|
if (done) {
|
|
65
63
|
if (value.isErr()) {
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
}
|
|
69
|
-
console.error(value.error);
|
|
70
|
-
throw new Error("Error while running create");
|
|
64
|
+
console.log(value.error);
|
|
65
|
+
throw new Error(value.error);
|
|
71
66
|
}
|
|
72
67
|
const fullState = value.value.session;
|
|
73
68
|
if (pathToSave) {
|
package/dist/commands/build.js
CHANGED
|
@@ -10,7 +10,7 @@ var _pluginDynamicImportVars = _interopRequireDefault(require("@rollup/plugin-dy
|
|
|
10
10
|
var _pluginJson = _interopRequireDefault(require("@rollup/plugin-json"));
|
|
11
11
|
var fs = _interopRequireWildcard(require("fs-extra"));
|
|
12
12
|
var path = _interopRequireWildcard(require("path"));
|
|
13
|
-
var
|
|
13
|
+
var _webTemplate = require("./common/utils/webTemplate");
|
|
14
14
|
var _dotenv = _interopRequireDefault(require("dotenv"));
|
|
15
15
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
16
16
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -21,20 +21,18 @@ function isThirdPartyWarning(warning) {
|
|
|
21
21
|
return false;
|
|
22
22
|
}
|
|
23
23
|
_dotenv.default.config();
|
|
24
|
-
_commander.program.description("build the intuned server").
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
await (
|
|
28
|
-
|
|
29
|
-
await fs.copy(currentTemplateTsConfig, `./intuned/${template}/tsconfig.json`);
|
|
30
|
-
await build(outfile, mode, template);
|
|
24
|
+
_commander.program.description("build the intuned server").addArgument(new _commander.Argument("<mode>", "mode of execution").choices(["vanilla", "playwright"]).default("playwright").argOptional()).argument("[outfile]", "output bundle", "./output/bundle_v2.js").allowUnknownOption().action(async (mode, outfile) => {
|
|
25
|
+
await (0, _webTemplate.moveWebTemplateFiles)();
|
|
26
|
+
const currentTemplateTsConfig = path.resolve(__dirname, "..", "..", "template.tsconfig.json");
|
|
27
|
+
await fs.copy(currentTemplateTsConfig, "./intuned/WebTemplate/tsconfig.json");
|
|
28
|
+
await build(outfile, mode);
|
|
31
29
|
});
|
|
32
|
-
async function build(outfile, mode
|
|
30
|
+
async function build(outfile, mode) {
|
|
33
31
|
let bundle = null;
|
|
34
32
|
let buildFailed = false;
|
|
35
33
|
try {
|
|
36
34
|
bundle = await (0, _rollup.rollup)({
|
|
37
|
-
input: `./intuned
|
|
35
|
+
input: `./intuned/WebTemplate/index.${mode}.ts`,
|
|
38
36
|
output: {
|
|
39
37
|
globals: {
|
|
40
38
|
crypto: "crypto"
|
|
@@ -44,15 +42,14 @@ async function build(outfile, mode, template) {
|
|
|
44
42
|
exportConditions: ["node"],
|
|
45
43
|
preferBuiltins: true
|
|
46
44
|
}), (0, _pluginTypescript.default)({
|
|
47
|
-
tsconfig:
|
|
45
|
+
tsconfig: "./intuned/WebTemplate/tsconfig.json"
|
|
48
46
|
}), (0, _pluginCommonjs.default)({
|
|
49
|
-
include: ["node_modules/**",
|
|
47
|
+
include: ["node_modules/**", "intuned/WebTemplate/**", "dist", "../typescript-sdk/**", "../typescript-runtime/**"],
|
|
50
48
|
extensions: [".js"],
|
|
51
49
|
ignoreGlobal: false,
|
|
52
50
|
sourceMap: false,
|
|
53
|
-
dynamicRequireTargets: ["
|
|
54
|
-
requireReturnsDefault: "
|
|
55
|
-
transformMixedEsModules: true
|
|
51
|
+
dynamicRequireTargets: ["**/node_modules/**"],
|
|
52
|
+
requireReturnsDefault: "preferred"
|
|
56
53
|
}), (0, _pluginDynamicImportVars.default)({
|
|
57
54
|
include: ["**/*.js", "**/*.ts"],
|
|
58
55
|
exclude: ["**/*.d.ts", "**/*.js.map"]
|
|
@@ -65,7 +62,7 @@ async function build(outfile, mode, template) {
|
|
|
65
62
|
});
|
|
66
63
|
console.log(`📦 Building ${outfile}`);
|
|
67
64
|
const outfileFolder = path.dirname(outfile);
|
|
68
|
-
const assetsDir = path.resolve(
|
|
65
|
+
const assetsDir = path.resolve(__dirname, "..", "common", "assets");
|
|
69
66
|
await fs.copy(assetsDir, `${outfileFolder}/assets`);
|
|
70
67
|
await bundle.write({
|
|
71
68
|
format: "cjs",
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getDefaultExportFromFile(apiFilePath: string): Promise<any>;
|
|
@@ -3,18 +3,17 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
7
|
-
var _fileUtils = require("./utils/fileUtils");
|
|
6
|
+
exports.getDefaultExportFromFile = getDefaultExportFromFile;
|
|
8
7
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
9
8
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
10
|
-
async function
|
|
9
|
+
async function getDefaultExportFromFile(apiFilePath) {
|
|
11
10
|
require("ts-node").register({
|
|
12
11
|
transpileOnly: true,
|
|
13
12
|
compilerOptions: {
|
|
14
13
|
lib: ["dom", "es2020"]
|
|
15
14
|
}
|
|
16
15
|
});
|
|
17
|
-
const
|
|
18
|
-
const
|
|
19
|
-
return
|
|
16
|
+
const imported = await (specifier => new Promise(r => r(`${specifier}`)).then(s => _interopRequireWildcard(require(s))))(apiFilePath);
|
|
17
|
+
const defaultExport = imported.default;
|
|
18
|
+
return defaultExport;
|
|
20
19
|
}
|
|
@@ -6,14 +6,14 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.getSettings = getSettings;
|
|
7
7
|
var _fileUtils = require("./fileUtils");
|
|
8
8
|
var _settingsSchema = require("../../../common/settingsSchema");
|
|
9
|
-
|
|
10
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
9
|
+
var _fsExtra = require("fs-extra");
|
|
11
10
|
async function getSettings() {
|
|
12
11
|
const settingsFilePath = (0, _fileUtils.getFullPathInProject)("Intuned.json");
|
|
13
12
|
console.log("loading settings");
|
|
14
|
-
const settings = await (
|
|
15
|
-
if (settings
|
|
16
|
-
const parsed = _settingsSchema.settingsSchema.safeParse(settings
|
|
13
|
+
const settings = await (0, _fsExtra.readJSON)(settingsFilePath);
|
|
14
|
+
if (settings) {
|
|
15
|
+
const parsed = _settingsSchema.settingsSchema.safeParse(settings);
|
|
16
|
+
console.log(parsed);
|
|
17
17
|
if (parsed.success) {
|
|
18
18
|
return parsed.data;
|
|
19
19
|
} else {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const moveWebTemplateFiles: () => Promise<void>;
|
|
@@ -3,18 +3,18 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.moveWebTemplateFiles = void 0;
|
|
7
7
|
var fs = _interopRequireWildcard(require("fs-extra"));
|
|
8
8
|
var path = _interopRequireWildcard(require("path"));
|
|
9
9
|
var _fileUtils = require("./fileUtils");
|
|
10
10
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
11
11
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
12
|
-
const
|
|
12
|
+
const moveWebTemplateFiles = async () => {
|
|
13
13
|
await fs.remove("./intuned");
|
|
14
14
|
await fs.ensureDir("./intuned");
|
|
15
|
-
const currentFileLocation = path.resolve(__dirname, "..", "..", "..", "..",
|
|
16
|
-
await fs.copy(`${currentFileLocation}`,
|
|
17
|
-
filter: (src,
|
|
15
|
+
const currentFileLocation = path.resolve(__dirname, "..", "..", "..", "..", "WebTemplate");
|
|
16
|
+
await fs.copy(`${currentFileLocation}`, "./intuned/WebTemplate", {
|
|
17
|
+
filter: (src, dest) => {
|
|
18
18
|
if (src.includes(".d.ts")) {
|
|
19
19
|
return false;
|
|
20
20
|
}
|
|
@@ -25,7 +25,7 @@ const moveTemplateFiles = async templateName => {
|
|
|
25
25
|
const pathsIgnoreList = [(0, _fileUtils.getFullPathInProject)("intuned"), (0, _fileUtils.getFullPathInProject)("node_modules"), (0, _fileUtils.getFullPathInProject)("package.json"), (0, _fileUtils.getFullPathInProject)("yarn.lock"), (0, _fileUtils.getFullPathInProject)(".env")];
|
|
26
26
|
const filesToCopy = filesAndFolders.filter(file => !pathsIgnoreList.includes(file.fullPath));
|
|
27
27
|
for (const file of filesToCopy) {
|
|
28
|
-
await fs.copy(file.fullPath, `./intuned/${
|
|
28
|
+
await fs.copy(file.fullPath, `./intuned/WebTemplate/${file.name}`);
|
|
29
29
|
}
|
|
30
30
|
};
|
|
31
|
-
exports.
|
|
31
|
+
exports.moveWebTemplateFiles = moveWebTemplateFiles;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
export
|
|
2
|
+
export {};
|
|
@@ -1,21 +1,15 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
"use strict";
|
|
3
3
|
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.runAutomationCLI = runAutomationCLI;
|
|
8
4
|
var _commander = require("commander");
|
|
9
5
|
var _dotenv = _interopRequireDefault(require("dotenv"));
|
|
10
6
|
var _asyncLocalStorage = require("../../common/asyncLocalStorage");
|
|
11
7
|
var net = _interopRequireWildcard(require("net"));
|
|
12
8
|
var _zod = _interopRequireDefault(require("zod"));
|
|
13
9
|
var _runApi = require("../../common/runApi");
|
|
14
|
-
var _enums = require("
|
|
10
|
+
var _enums = require("src/runtime/enums");
|
|
15
11
|
var _unixSocket = require("../common/utils/unixSocket");
|
|
16
12
|
var _promises = require("timers/promises");
|
|
17
|
-
var _jwtTokenManager = require("../../common/jwtTokenManager");
|
|
18
|
-
var _formatZodError = require("../../common/formatZodError");
|
|
19
13
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
20
14
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
21
15
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -23,7 +17,6 @@ const startRunApiSchema = _zod.default.object({
|
|
|
23
17
|
type: _zod.default.literal("start"),
|
|
24
18
|
parameters: _runApi.runApiParametersSchema.extend({
|
|
25
19
|
retrieveSession: _zod.default.boolean(),
|
|
26
|
-
functionsToken: _zod.default.string().optional(),
|
|
27
20
|
context: _zod.default.object({
|
|
28
21
|
jobId: _zod.default.string().optional(),
|
|
29
22
|
jobRunId: _zod.default.string().optional(),
|
|
@@ -42,136 +35,121 @@ const abortRunApiSchema = _zod.default.object({
|
|
|
42
35
|
type: _zod.default.literal("abort"),
|
|
43
36
|
parameters: _zod.default.object({}).optional()
|
|
44
37
|
});
|
|
45
|
-
const
|
|
46
|
-
type: _zod.default.literal("tokenUpdate"),
|
|
47
|
-
parameters: _zod.default.object({
|
|
48
|
-
functionsToken: _zod.default.string()
|
|
49
|
-
})
|
|
50
|
-
});
|
|
51
|
-
const inputSchema = _zod.default.union([startRunApiSchema, nextRunApiSchema, abortRunApiSchema, tokenUpdateSchema]);
|
|
38
|
+
const inputSchema = _zod.default.union([startRunApiSchema, nextRunApiSchema, abortRunApiSchema]);
|
|
52
39
|
_dotenv.default.config({
|
|
53
40
|
path: `.env`
|
|
54
41
|
});
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
42
|
+
_commander.program.description("run user automation and communicate using unix socket").argument("<socket-path>", "path to unix socket").action(async socketPath => {
|
|
43
|
+
let context;
|
|
44
|
+
const throttleTime = 1_000;
|
|
45
|
+
let timeoutTimestamp = Date.now();
|
|
46
|
+
const client = net.createConnection(socketPath, () => {
|
|
47
|
+
console.log("connected to server!");
|
|
48
|
+
});
|
|
49
|
+
let generator = null;
|
|
50
|
+
const abortController = new AbortController();
|
|
51
|
+
client.on("end", () => {
|
|
52
|
+
console.log("Disconnected from socket");
|
|
53
|
+
});
|
|
54
|
+
client.on("error", err => {
|
|
55
|
+
var _generator;
|
|
56
|
+
console.error("Child connection error:", err);
|
|
57
|
+
void ((_generator = generator) === null || _generator === void 0 ? void 0 : _generator.throw(err).catch(() => undefined));
|
|
58
|
+
});
|
|
59
|
+
process.on("SIGINT", () => {
|
|
60
|
+
var _generator2;
|
|
61
|
+
console.log("Received SIGINT");
|
|
62
|
+
void ((_generator2 = generator) === null || _generator2 === void 0 ? void 0 : _generator2.throw(new Error("Interrupted")).catch(() => undefined));
|
|
63
|
+
client.end();
|
|
64
|
+
process.exit(1);
|
|
65
|
+
});
|
|
66
|
+
const jsonUnixSocket = new _unixSocket.JSONUnixSocket(client);
|
|
67
|
+
async function runGeneratorAndSendResult(next) {
|
|
68
|
+
if (!generator) return;
|
|
69
|
+
const result = await (0, _asyncLocalStorage.runWithContext)(context, () => generator.next(next));
|
|
70
|
+
if (result.done) {
|
|
71
|
+
const resultToSend = result.value.isOk() ? result.value.value : result.value.error.json;
|
|
72
|
+
const success = result.value.isOk();
|
|
73
|
+
jsonUnixSocket.sendJSON({
|
|
74
|
+
type: "done",
|
|
75
|
+
result: resultToSend,
|
|
76
|
+
success
|
|
77
|
+
});
|
|
78
|
+
return true;
|
|
79
|
+
} else {
|
|
80
|
+
jsonUnixSocket.sendJSON({
|
|
81
|
+
type: "yield",
|
|
82
|
+
result: result.value
|
|
83
|
+
});
|
|
84
|
+
return false;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
for await (const data of jsonUnixSocket.receiveJSON()) {
|
|
88
|
+
const inputParseResult = inputSchema.safeParse(data);
|
|
89
|
+
if (!inputParseResult.success) {
|
|
90
|
+
console.error(inputParseResult.error.errors);
|
|
91
|
+
jsonUnixSocket.sendJSON({
|
|
92
|
+
type: "done",
|
|
93
|
+
result: {
|
|
94
|
+
error: "InvalidJSON",
|
|
95
|
+
message: "Invalid input",
|
|
96
|
+
details: {
|
|
97
|
+
errors: inputParseResult.error.errors
|
|
98
|
+
}
|
|
99
|
+
},
|
|
100
|
+
success: false
|
|
101
|
+
});
|
|
102
|
+
break;
|
|
103
|
+
}
|
|
104
|
+
const input = inputParseResult.data;
|
|
105
|
+
if (input.type === "abort") {
|
|
106
|
+
abortController.abort();
|
|
107
|
+
await (0, _promises.setTimeout)(10);
|
|
108
|
+
jsonUnixSocket.sendJSON({
|
|
109
|
+
type: "done",
|
|
110
|
+
result: null
|
|
111
|
+
});
|
|
112
|
+
break;
|
|
113
|
+
}
|
|
114
|
+
if (input.type === "start") {
|
|
115
|
+
const gen = (0, _runApi.runApiGenerator)({
|
|
116
|
+
...input.parameters,
|
|
117
|
+
abortSignal: abortController.signal
|
|
118
|
+
});
|
|
119
|
+
generator = gen;
|
|
120
|
+
context = {
|
|
121
|
+
extendedPayloads: [],
|
|
122
|
+
runEnvironment: input.parameters.runOptions.environment === "deployed" ? _enums.RunEnvironment.DEPLOYED : _enums.RunEnvironment.IDE,
|
|
123
|
+
timeoutInfo: {
|
|
124
|
+
extendTimeoutCallback: async () => {
|
|
125
|
+
if (Date.now() - timeoutTimestamp < throttleTime) return;
|
|
126
|
+
timeoutTimestamp = Date.now();
|
|
127
|
+
jsonUnixSocket.sendJSON({
|
|
128
|
+
type: "extend"
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
},
|
|
132
|
+
...(input.parameters.context ?? {}),
|
|
133
|
+
proxy: getProxyUrlFromRunOptions(input.parameters.runOptions)
|
|
84
134
|
};
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
const resultToSend = result.value.isOk() ? result.value.value : result.value.error.json;
|
|
88
|
-
const success = result.value.isOk();
|
|
89
|
-
jsonUnixSocket.sendJSON({
|
|
90
|
-
type: "done",
|
|
91
|
-
result: resultToSend,
|
|
92
|
-
success
|
|
93
|
-
});
|
|
94
|
-
} else {
|
|
95
|
-
jsonUnixSocket.sendJSON({
|
|
96
|
-
type: "yield",
|
|
97
|
-
result: result.value
|
|
98
|
-
});
|
|
135
|
+
if (await runGeneratorAndSendResult()) {
|
|
136
|
+
break;
|
|
99
137
|
}
|
|
100
|
-
|
|
101
|
-
done: result.done ?? false
|
|
102
|
-
};
|
|
138
|
+
continue;
|
|
103
139
|
}
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
console.error("Validation error:", (0, _formatZodError.formatZodError)(inputParseResult.error));
|
|
108
|
-
jsonUnixSocket.sendJSON({
|
|
109
|
-
type: "done",
|
|
110
|
-
result: new _runApi.InternalInvalidInputError("Invalid input", (0, _formatZodError.formatZodError)(inputParseResult.error)).json,
|
|
111
|
-
success: false
|
|
112
|
-
});
|
|
113
|
-
break;
|
|
140
|
+
if (input.type === "next") {
|
|
141
|
+
if (!generator) {
|
|
142
|
+
throw new Error("generator not started");
|
|
114
143
|
}
|
|
115
|
-
|
|
116
|
-
if (input.type === "abort") {
|
|
117
|
-
abortController.abort();
|
|
118
|
-
await (0, _promises.setTimeout)(10);
|
|
119
|
-
jsonUnixSocket.sendJSON({
|
|
120
|
-
type: "done",
|
|
121
|
-
result: null
|
|
122
|
-
});
|
|
144
|
+
if (await runGeneratorAndSendResult(input.parameters.value)) {
|
|
123
145
|
break;
|
|
124
146
|
}
|
|
125
|
-
|
|
126
|
-
_jwtTokenManager.backendFunctionsTokenManager.token = input.parameters.functionsToken;
|
|
127
|
-
generator = (0, _runApi.runApiGenerator)({
|
|
128
|
-
...input.parameters,
|
|
129
|
-
abortSignal: abortController.signal,
|
|
130
|
-
importFunction
|
|
131
|
-
});
|
|
132
|
-
context = {
|
|
133
|
-
extendedPayloads: [],
|
|
134
|
-
runEnvironment: input.parameters.runOptions.environment === "deployed" ? _enums.RunEnvironment.DEPLOYED : _enums.RunEnvironment.IDE,
|
|
135
|
-
timeoutInfo: {
|
|
136
|
-
extendTimeoutCallback: async () => {
|
|
137
|
-
if (Date.now() - timeoutTimestamp < throttleTime) return;
|
|
138
|
-
timeoutTimestamp = Date.now();
|
|
139
|
-
jsonUnixSocket.sendJSON({
|
|
140
|
-
type: "extend"
|
|
141
|
-
});
|
|
142
|
-
}
|
|
143
|
-
},
|
|
144
|
-
...(input.parameters.context ?? {}),
|
|
145
|
-
proxy: getProxyUrlFromRunOptions(input.parameters.runOptions)
|
|
146
|
-
};
|
|
147
|
-
const {
|
|
148
|
-
done
|
|
149
|
-
} = await runGeneratorAndSendResult();
|
|
150
|
-
if (done) {
|
|
151
|
-
break;
|
|
152
|
-
}
|
|
153
|
-
continue;
|
|
154
|
-
}
|
|
155
|
-
if (input.type === "next") {
|
|
156
|
-
if (!generator) {
|
|
157
|
-
throw new Error("generator not started");
|
|
158
|
-
}
|
|
159
|
-
const {
|
|
160
|
-
done
|
|
161
|
-
} = await runGeneratorAndSendResult(input.parameters.value);
|
|
162
|
-
if (done) {
|
|
163
|
-
break;
|
|
164
|
-
}
|
|
165
|
-
continue;
|
|
166
|
-
}
|
|
167
|
-
if (input.type === "tokenUpdate") {
|
|
168
|
-
_jwtTokenManager.backendFunctionsTokenManager.token = input.parameters.functionsToken;
|
|
169
|
-
}
|
|
147
|
+
continue;
|
|
170
148
|
}
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
149
|
+
}
|
|
150
|
+
process.exit(0);
|
|
151
|
+
});
|
|
152
|
+
_commander.program.parse(process.argv);
|
|
175
153
|
function getProxyUrlFromRunOptions(runOptions) {
|
|
176
154
|
if ((runOptions === null || runOptions === void 0 ? void 0 : runOptions.environment) !== "deployed") return undefined;
|
|
177
155
|
const proxy = runOptions.proxy;
|
|
@@ -180,7 +158,4 @@ function getProxyUrlFromRunOptions(runOptions) {
|
|
|
180
158
|
url.username = proxy.username;
|
|
181
159
|
url.password = proxy.password;
|
|
182
160
|
return url.toString();
|
|
183
|
-
}
|
|
184
|
-
if (require.main === module) {
|
|
185
|
-
runAutomationCLI();
|
|
186
161
|
}
|
|
@@ -5,19 +5,17 @@ var ts = _interopRequireWildcard(require("typescript"));
|
|
|
5
5
|
var _commander = require("commander");
|
|
6
6
|
var fs = _interopRequireWildcard(require("fs-extra"));
|
|
7
7
|
var path = _interopRequireWildcard(require("path"));
|
|
8
|
-
var
|
|
8
|
+
var _webTemplate = require("./common/utils/webTemplate");
|
|
9
9
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
10
10
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
11
|
-
_commander.program.description("Check TypeScript types in the project").
|
|
12
|
-
|
|
13
|
-
}) => {
|
|
14
|
-
await (0, _template.moveTemplateFiles)(template);
|
|
11
|
+
_commander.program.description("Check TypeScript types in the project").allowUnknownOption().action(async () => {
|
|
12
|
+
await (0, _webTemplate.moveWebTemplateFiles)();
|
|
15
13
|
const templateTsConfig = path.resolve(__dirname, "..", "..", "template.tsconfig.json");
|
|
16
|
-
await fs.copy(templateTsConfig,
|
|
17
|
-
checkTypes(
|
|
14
|
+
await fs.copy(templateTsConfig, "./intuned/WebTemplate/tsconfig.json");
|
|
15
|
+
checkTypes();
|
|
18
16
|
});
|
|
19
|
-
function checkTypes(
|
|
20
|
-
const configPath = ts.findConfigFile(
|
|
17
|
+
function checkTypes() {
|
|
18
|
+
const configPath = ts.findConfigFile("./intuned/WebTemplate", ts.sys.fileExists, "tsconfig.json");
|
|
21
19
|
if (!configPath) {
|
|
22
20
|
console.error("Could not find a valid 'tsconfig.json'.");
|
|
23
21
|
process.exit(1);
|
|
@@ -151,11 +151,7 @@ async function loadSessionToContext({
|
|
|
151
151
|
}) {
|
|
152
152
|
let sessionToLoad;
|
|
153
153
|
if (session.type === "state") {
|
|
154
|
-
|
|
155
|
-
if (state === undefined || state === null) {
|
|
156
|
-
return;
|
|
157
|
-
}
|
|
158
|
-
sessionToLoad = state;
|
|
154
|
+
sessionToLoad = session.state;
|
|
159
155
|
} else {
|
|
160
156
|
const fullPath = (0, _fileUtils.getFullPathInProject)(session.path);
|
|
161
157
|
sessionToLoad = await fs.readJson(fullPath);
|