@wavemaker/variables 11.15.6-rc.647667 → 11.16.0-rc.269
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/npm-shrinkwrap.json +130 -233
- package/package-lock.json +130 -233
- package/package.json +7 -4
- package/scripts/build.js +8 -1
- package/scripts/build.js.map +1 -1
- package/src/constants/variables.constants.js +5 -5
- package/src/constants/variables.constants.js.map +1 -1
- package/src/factory/variable-manager.factory.js +1 -1
- package/src/factory/variable-manager.factory.js.map +1 -1
- package/src/util/variable/pagination.utils.js +2 -2
- package/src/util/variable/pagination.utils.js.map +1 -1
- package/src/util/variable/service-variable.utils.js +35 -6
- package/src/util/variable/service-variable.utils.js.map +1 -1
- package/src/util/variable/variables.utils.js +19 -1
- package/src/util/variable/variables.utils.js.map +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wavemaker/variables",
|
|
3
|
-
"version": "11.
|
|
3
|
+
"version": "11.16.0-rc.269",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "index",
|
|
6
6
|
"module": "index",
|
|
@@ -11,7 +11,10 @@
|
|
|
11
11
|
"test": "echo \"Error: no test specified\" && exit 1"
|
|
12
12
|
},
|
|
13
13
|
"exports": {
|
|
14
|
-
".":
|
|
14
|
+
".": {
|
|
15
|
+
"types": "./index.d.ts",
|
|
16
|
+
"default": "./index.js"
|
|
17
|
+
}
|
|
15
18
|
},
|
|
16
19
|
"author": "",
|
|
17
20
|
"license": "ISC",
|
|
@@ -23,12 +26,12 @@
|
|
|
23
26
|
"webpack": "^5.73.0",
|
|
24
27
|
"webpack-cli": "^4.10.0",
|
|
25
28
|
"yargs": "^16.2.0",
|
|
26
|
-
"tar": "^
|
|
29
|
+
"tar": "^7.5.22"
|
|
27
30
|
},
|
|
28
31
|
"dependencies": {
|
|
29
32
|
"@metrichor/jmespath": "^0.3.1",
|
|
30
33
|
"he": "^1.2.0",
|
|
31
|
-
"lodash-es": "
|
|
34
|
+
"lodash-es": "4.18.1",
|
|
32
35
|
"moment": "^2.29.4",
|
|
33
36
|
"x2js": "^3.4.3"
|
|
34
37
|
},
|
package/scripts/build.js
CHANGED
|
@@ -75,8 +75,15 @@ function postBuild(runtimeVersion) {
|
|
|
75
75
|
});
|
|
76
76
|
packageData.main = 'index';
|
|
77
77
|
packageData.module = 'index';
|
|
78
|
+
// A bare string export target ("./index") leaves TypeScript's "types" condition
|
|
79
|
+
// unresolved under moduleResolution: "bundler"/"node16"/"nodenext" -- consumers get
|
|
80
|
+
// TS2307 "Cannot find module" even though index.d.ts exists right next to index.js.
|
|
81
|
+
// Declare both conditions explicitly so type and runtime resolution both succeed.
|
|
78
82
|
packageData.exports = {
|
|
79
|
-
".":
|
|
83
|
+
".": {
|
|
84
|
+
"types": "./index.d.ts",
|
|
85
|
+
"default": "./index.js"
|
|
86
|
+
}
|
|
80
87
|
};
|
|
81
88
|
delete packageData['files'];
|
|
82
89
|
fs.writeFileSync("".concat(projectDir, "/dist/es2015/package.json"), JSON.stringify(packageData, null, 2));
|
package/scripts/build.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.js","sourceRoot":"./","sources":["scripts/build.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAM,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAC/B,IAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAC7B,IAAM,UAAU,GAAG,GAAG,CAAC;AACvB,IAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AACvB,IAAA,OAAO,GAAK,OAAO,CAAC,eAAe,CAAC,QAA7B,CAA8B;AAC7C,IAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;AAC3B,IAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAE/B,SAAe,oBAAoB,CAAC,WAAW,EAAE,GAAG,EAAE,OAAO;;;;YACrD,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YACnD,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,YAAI,GAAG,0BAAmB,CAAC,EAAE,YAAI,GAAG,mBAAO,OAAO,OAAG,CAAC,CAAC;YAC5F,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;;;;CAC1C;AAED,SAAS,mBAAmB,CAAC,IAAI;IAC7B,IAAI,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;QACnC,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,UAAA,CAAC,IAAI,OAAA,mBAAmB,CAAC,UAAG,IAAI,cAAI,CAAC,CAAE,CAAC,EAAnC,CAAmC,CAAC,CAAC;IAC3E,CAAC;SAAM,IAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChC,IAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;QAC1D,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;QACzD,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IACpD,CAAC;AACL,CAAC;AAED,SAAe,SAAS,CAAC,cAAc;;;;;;oBAErC,oDAAoD;oBAElD,EAAE,CAAC,QAAQ,CAAC,UAAG,UAAU,kBAAe,EAAE,UAAG,UAAU,8BAA2B,CAAC,CAAC;oBAE9E,WAAW,GAAG,EAAE,CAAC,YAAY,CAAC,UAAG,UAAU,kBAAe,EAAE;wBAC9D,QAAQ,EAAE,MAAM;qBACnB,CAAC,CAAC;oBACH,WAAW,CAAC,IAAI,GAAG,OAAO,CAAC;oBAC3B,WAAW,CAAC,MAAM,GAAG,OAAO,CAAC;oBAC7B,WAAW,CAAC,OAAO,GAAG;wBAClB,GAAG,EAAE,SAAS;
|
|
1
|
+
{"version":3,"file":"build.js","sourceRoot":"./","sources":["scripts/build.js"],"names":[],"mappings":"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","sourcesContent":["const fs = require('fs-extra');\nconst path = require('path');\nconst projectDir = '.';\nconst yargs = require('yargs');\nconst { hideBin } = require('yargs/helpers');\nconst tar = require('tar');\nconst execa = require('execa');\n\nasync function updatePackageVersion(packagePath, key, version) {\n let content = fs.readFileSync(packagePath, 'utf8');\n content = content.replace(new RegExp(`\"${key}\"\\\\s*:\\\\s*\"[^\"]*\"`), `\"${key}\": \"${version}\"`);\n fs.writeFileSync(packagePath, content);\n}\n\nfunction updateSourceMapFile(path) {\n if (fs.lstatSync(path).isDirectory()) {\n fs.readdirSync(path).forEach(p => updateSourceMapFile(`${path}/${p}`));\n } else if(path.endsWith('js.map')) {\n const content = JSON.parse(fs.readFileSync(path, 'utf8'));\n content.sources[0] = content.sources[0].split('/').pop();\n fs.writeFileSync(path, JSON.stringify(content));\n }\n}\n\nasync function postBuild(runtimeVersion) {\n\n // updateSourceMapFile(`${projectDir}/dist/es2015`);\n\n fs.copySync(`${projectDir}/package.json`, `${projectDir}/dist/es2015/package.json`);\n\n const packageData = fs.readJSONSync(`${projectDir}/package.json`, {\n encoding: \"utf8\"\n });\n packageData.main = 'index';\n packageData.module = 'index';\n // A bare string export target (\"./index\") leaves TypeScript's \"types\" condition\n // unresolved under moduleResolution: \"bundler\"/\"node16\"/\"nodenext\" -- consumers get\n // TS2307 \"Cannot find module\" even though index.d.ts exists right next to index.js.\n // Declare both conditions explicitly so type and runtime resolution both succeed.\n packageData.exports = {\n \".\": {\n \"types\": \"./index.d.ts\",\n \"default\": \"./index.js\"\n }\n };\n delete packageData['files'];\n\n fs.writeFileSync(`${projectDir}/dist/es2015/package.json`, JSON.stringify(packageData, null, 2))\n await updatePackageVersion(`${projectDir}/dist/es2015/package.json`, 'version', runtimeVersion);\n console.log('Post Build successful!!!');\n}\n\nasync function createPackageLock(path) {\n await execa('npm', ['install', '--package-lock-only', '--ignore-scripts'], {\n 'cwd': path\n });\n const packageJSON = fs.readJSONSync(`${path}/package-lock.json`);\n Object.values(packageJSON.packages || {}).map(v => {\n delete v.resolved;\n });\n fs.writeJSONSync(`${path}/package-lock.json`, packageJSON, {\n spaces: 4\n });\n fs.writeJSONSync(`${path}/npm-shrinkwrap.json`, packageJSON, {\n spaces: 4\n });\n}\n\nasync function prepareNpmPackages(runtimeVersion) {\n let tarballName=`wavemaker-variables-${runtimeVersion}.tgz`\n fs.copySync(`${projectDir}/dist/es2015`, `${projectDir}/dist/npm-packages/package`, {\n filter: p => !p.startsWith('/node_modules/')\n });\n await createPackageLock(`${projectDir}/dist/npm-packages/package`);\n await execa('tar', ['-czf', `dist/npm-packages/${tarballName}`, '-C', 'dist/npm-packages', 'package'], {\n 'cwd': `${projectDir}`\n });\n let tarballPath = path.join(__dirname, `../dist/npm-packages/${tarballName}`)\n const { stdout } = await execa('node', ['../process-npm-package-stats.js', `--path=${tarballPath}`, '--packageName=@wavemaker/variables', `--publishVersion=${runtimeVersion}`]);\n console.log(stdout);\n}\n\nasync function pushToLocalRepo() {\n fs.writeFileSync(`${projectDir}/dist/new-build`, '' + Date.now);\n await execa('yalc', ['publish' , '--no-sig', '--push'], {\n 'cwd': `${projectDir}/dist/es2015`\n });\n}\n\nyargs(hideBin(process.argv)).command('post-build',\n 'to run post processing after project build',\n (yargs) => {\n yargs.option('runtimeVersion', {\n describe: 'version number',\n type: 'string',\n default: '1.0.0-dev'\n }).option('production', {\n describe: 'to perform a production build',\n type: 'boolean',\n default: false\n });\n }, (argv) => {\n postBuild(argv.runtimeVersion).then(() => {\n if (argv.production) {\n return prepareNpmPackages(argv.runtimeVersion);\n } else {\n return pushToLocalRepo();\n }\n });\n }).showHelpOnFail().argv;\n"]}
|
|
@@ -15,11 +15,11 @@ export var VARIABLE_CONSTANTS = {
|
|
|
15
15
|
CRUD: 'wm.CrudVariable',
|
|
16
16
|
SERVICE: 'wm.ServiceVariable',
|
|
17
17
|
WEBSOCKET: 'wm.WebSocketVariable',
|
|
18
|
-
NAVIGATION: 'wm.
|
|
19
|
-
NOTIFICATION: 'wm.
|
|
20
|
-
TIMER: 'wm.
|
|
21
|
-
LOGIN: 'wm.
|
|
22
|
-
LOGOUT: 'wm.
|
|
18
|
+
NAVIGATION: 'wm.NavigationAction',
|
|
19
|
+
NOTIFICATION: 'wm.NotificationAction',
|
|
20
|
+
TIMER: 'wm.TimerAction',
|
|
21
|
+
LOGIN: 'wm.LoginAction',
|
|
22
|
+
LOGOUT: 'wm.LogoutAction',
|
|
23
23
|
DEVICE: 'wm.DeviceVariable'
|
|
24
24
|
},
|
|
25
25
|
EVENTS: ['onBefore',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"variables.constants.js","sourceRoot":"./","sources":["src/constants/variables.constants.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,MAAM,CAAC,IAAM,SAAS,GAAG;IACrB,+CAA+C;IAC/C,gDAAgD;IAChD,YAAY,EAAE,KAAK;IACnB,SAAS,EAAE,IAAI;IACf,gBAAgB,EAAE,eAAe;IACjC,mBAAmB,EAAE,GAAG;IACxB,mBAAmB,EAAG,sEAAsE;CAC/F,CAAC;AACF,MAAM,CAAC,IAAM,kBAAkB,GAAG;IAC9B,QAAQ,EAAE;QACN,KAAK,EAAE,aAAa;QACpB,IAAI,EAAE,iBAAiB;QACvB,IAAI,EAAE,iBAAiB;QACvB,OAAO,EAAE,oBAAoB;QAC7B,SAAS,EAAE,sBAAsB;QACjC,UAAU,EAAE,uBAAuB;QACnC,YAAY,EAAE,yBAAyB;QACvC,KAAK,EAAE,kBAAkB;QACzB,KAAK,EAAE,kBAAkB;QACzB,MAAM,EAAE,mBAAmB;QAC3B,MAAM,EAAE,mBAAmB;KAC9B;IACD,MAAM,EAAE,CAAC,UAAU;QACf,gBAAgB;QAChB,UAAU;QACV,cAAc;QACd,QAAQ;QACR,qBAAqB;QACrB,kBAAkB;QAClB,YAAY;QACZ,SAAS;QACT,sBAAsB;QACtB,aAAa;QACb,SAAS;QACT,QAAQ;QACR,MAAM;QACN,UAAU;QACV,eAAe;QACf,SAAS;QACT,aAAa;QACb,WAAW;QACX,UAAU;QACV,WAAW,CAAC;IAChB,KAAK,EAAE;QACH,YAAY,EAAE,aAAa;QAC3B,QAAQ,EAAE,UAAU;QACpB,eAAe,EAAE,gBAAgB;QACjC,iBAAiB,EAAE,sBAAsB;QACzC,QAAQ,EAAE,UAAU;QACpB,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,SAAS;QAClB,UAAU,EAAE,YAAY;QACxB,OAAO,EAAE,SAAS;QAClB,MAAM,EAAE,QAAQ;QAChB,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,UAAU;QACpB,OAAO,EAAE,SAAS;QAClB,YAAY,EAAE,aAAa;QAC3B,SAAS,EAAE,WAAW;QACtB,aAAa,EAAE,cAAc;QAC7B,MAAM,EAAE,QAAQ;QAChB,aAAa,EAAE,qBAAqB;QACpC,iBAAiB,EAAE,kBAAkB;QACrC,cAAc,EAAE,eAAe;KAClC;IACD,KAAK,EAAE;QACH,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,MAAM;KACjB;IACD,uBAAuB,EAAE,CAAC,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,qBAAqB,EAAE,aAAa,EAAE,kBAAkB,EAAE,gBAAgB,CAAC;IACjK,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;IAC3C,YAAY,EAAE;QACV,eAAe,EAAE,gBAAgB;QACjC,mBAAmB,EAAE,oBAAoB;QACzC,oBAAoB,EAAE,kBAAkB;QACxC,cAAc,EAAE,eAAe;QAC/B,eAAe,EAAE;YACb,OAAO,EAAE,OAAO;YAChB,QAAQ,EAAE,QAAQ;SACrB;QACD,WAAW,EAAE;YACT,OAAO,EAAE,OAAO;YAChB,OAAO,EAAE,QAAQ;YACjB,MAAM,EAAE,MAAM;SACjB;QACD,kBAAkB,EAAE,mBAAmB;QACvC,yBAAyB,EAAE;YACvB,MAAM,EAAE,EAAE;YACV,OAAO,EAAE,eAAe;SAC3B;QACD,QAAQ,EAAE;YACN,cAAc,EAAE,qBAAqB;YACrC,cAAc,EAAE,gBAAgB;YAChC,gBAAgB,EAAE,kBAAkB;YACpC,sBAAsB,EAAE,wBAAwB;YAChD,iBAAiB,EAAE,mBAAmB;YACtC,sBAAsB,EAAE,wBAAwB;SACnD;QACD,OAAO,EAAE;YACL,cAAc,EAAE,sBAAsB;YACtC,cAAc,EAAE,wBAAwB;YACxC,gBAAgB,EAAE,kCAAkC;YACpD,iBAAiB,EAAE,mBAAmB;YACtC,sBAAsB,EAAE,oDAAoD;YAC5E,sBAAsB,EAAE,mCAAmC;SAC9D;QACD,iBAAiB,EAAE,CAAC,cAAc,EAAE,QAAQ,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,iBAAiB,CAAC;QACrG,MAAM,EAAE;YACJ,YAAY,EAAE;gBACV,KAAK,EAAE,OAAO;gBACd,KAAK,EAAE,QAAQ;aAClB;YACD,gBAAgB,EAAE,OAAO;SAC5B;KACJ;IACD,YAAY,EAAE;QACV,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,aAAa;QACnB,QAAQ,EAAE,qBAAqB;QAC/B,SAAS,EAAE,kBAAkB;QAC7B,OAAO,EAAE,gBAAgB;KAC5B;IACD,eAAe,EAAE;QACb,KAAK,EAAE,gBAAgB;QACvB,SAAS,EAAE,oBAAoB;KAClC;IACD,gBAAgB,EAAE;QACd,YAAY,EAAE,CAAC,CAAC;QAChB,YAAY,EAAE,GAAG;QACjB,SAAS,EAAE,GAAG;KACjB;IACD,gBAAgB,EAAE;QACd,OAAO,EAAG,OAAO;QACjB,KAAK,EAAG,MAAM;KAAC;IACnB,WAAW,EAAG;QACV,cAAc,EAAG,iBAAiB;KACrC;CACJ,CAAC;AAEF,MAAM,CAAC,IAAM,YAAY,GAAG;IACxB,qBAAqB,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC;IACtC,aAAa,EAAE;QACX,gBAAgB,EAAE,mCAAmC;QACrD,kBAAkB,EAAE,qBAAqB;QACzC,YAAY,EAAE,0BAA0B;KAC3C;CACJ,CAAC;AAEF,MAAM,CAAC,IAAM,YAAY,GAAG;IACxB,sBAAsB,EAAE;QACpB,MAAM,EAAe,MAAM;QAC3B,OAAO,EAAc,eAAe;QACpC,iBAAiB,EAAI,0BAA0B;QAC/C,KAAK,EAAgB,aAAa;QAClC,eAAe,EAAM,wBAAwB;QAC7C,UAAU,EAAW,YAAY;QACjC,oBAAoB,EAAE,uBAAuB;QAC7C,SAAS,EAAY,kBAAkB;QACvC,mBAAmB,EAAE,6BAA6B;QAClD,OAAO,EAAc,QAAQ;QAC7B,iBAAiB,EAAI,mBAAmB;QACxC,WAAW,EAAU,YAAY;QACjC,qBAAqB,EAAE,uBAAuB;QAC9C,SAAS,EAAY,SAAS;QAC9B,IAAI,EAAiB,IAAI;QACzB,OAAO,EAAc,OAAO;QAC5B,UAAU,EAAW,WAAW;QAChC,eAAe,EAAM,qBAAqB;QAC1C,aAAa,EAAQ,cAAc;QACnC,kBAAkB,EAAG,wBAAwB;QAC7C,MAAM,EAAe,MAAM;QAC3B,WAAW,EAAU,aAAa;QAClC,OAAO,EAAc,OAAO;QAC5B,YAAY,EAAS,cAAc;QACnC,aAAa,EAAQ,eAAe;KACvC;IACD,4BAA4B,EAAE,CAAC,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,cAAc,EAAE,eAAe,CAAC;IAC/F,4BAA4B,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,qBAAqB,EAAE,cAAc,EAAE,wBAAwB,EAAE,YAAY,CAAC;IACpJ,2BAA2B,EAAE;QACzB,MAAM,EAAY,MAAM;QACxB,aAAa,EAAK,aAAa;QAC/B,OAAO,EAAW,MAAM;QACxB,cAAc,EAAI,aAAa;QAC/B,eAAe,EAAG,MAAM;KAC3B;IACD,iCAAiC,EAAE;QAC/B,MAAM,EAAqB,gBAAgB;QAC3C,eAAe,EAAY,gBAAgB;QAC3C,0BAA0B,EAAE,gBAAgB;QAC5C,aAAa,EAAc,gBAAgB;QAC3C,wBAAwB,EAAG,gBAAgB;QAC3C,YAAY,EAAe,gBAAgB;QAC3C,uBAAuB,EAAI,gBAAgB;QAC3C,kBAAkB,EAAS,oBAAoB;QAC/C,6BAA6B,EAAE,oBAAoB;QACnD,QAAQ,EAAmB,WAAW;QACtC,mBAAmB,EAAQ,WAAW;QACtC,YAAY,EAAe,YAAY;QACvC,uBAAuB,EAAI,YAAY;QACvC,SAAS,EAAkB,mBAAmB;QAC9C,IAAI,EAAuB,cAAc;QACzC,OAAO,EAAoB,kBAAkB;QAC7C,WAAW,EAAgB,WAAW;QACtC,qBAAqB,EAAM,YAAY;QACvC,cAAc,EAAa,WAAW;QACtC,wBAAwB,EAAG,YAAY;QACvC,MAAM,EAAqB,cAAc;QACzC,aAAa,EAAc,kBAAkB;QAC7C,OAAO,EAAoB,WAAW;QACtC,cAAc,EAAa,YAAY;QACvC,eAAe,EAAY,6BAA6B;KAC3D;IACD,uBAAuB,EAAE,CAAC,MAAM,EAAE,eAAe,EAAE,0BAA0B,EAAE,aAAa,EAAE,wBAAwB,EAAE,YAAY,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,6BAA6B,EAAE,QAAQ,EAAE,mBAAmB,EAAE,YAAY,EAAE,uBAAuB,CAAC;CAC1R,CAAC;AAEF,MAAM,CAAC,IAAM,iBAAiB,GAAG;IAC7B,YAAY,EAAE,cAAc;IAC5B,YAAY,EAAE,uBAAuB;CACxC,CAAC;AAEF,MAAM,CAAC,IAAM,aAAa,GAAG;IACzB,QAAQ,EAAE;QACV,eAAe,EAAE;YACb,GAAG,EAAE,yEAAyE;YAC1E,MAAM,EAAE,MAAM;SACrB;QACD,wBAAwB,EAAE;YACtB,GAAG,EAAE,yEAAyE;YAC1E,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACT,cAAc,EAAE,mCAAmC;aACtD;SACJ;QACD,aAAa,EAAE;YACX,GAAG,EAAE,kEAAkE;YACnE,MAAM,EAAE,KAAK;SACpB;QACD,eAAe,EAAE;YACb,GAAG,EAAE,sCAAsC;YACvC,MAAM,EAAE,MAAM;SACrB;QACD,wBAAwB,EAAE;YACtB,GAAG,EAAE,sCAAsC;YACvC,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE;YACX,iCAAiC;SACxC;QACD,eAAe,EAAE;YACb,GAAG,EAAE,0CAA0C;YAC3C,MAAM,EAAE,KAAK;SACpB;QACD,wBAAwB,EAAE;YACtB,GAAG,EAAE,0CAA0C;YAC3C,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE;YACX,iCAAiC;SACxC;QACD,eAAe,EAAE;YACb,GAAG,EAAE,0CAA0C;YAC3C,MAAM,EAAE,QAAQ;SACvB;QACD,wBAAwB,EAAE;YACtB,GAAG,EAAE,uDAAuD;YACxD,MAAM,EAAE,KAAK;SACpB;QACD,8BAA8B,EAAE;YAC5B,GAAG,EAAE,+DAA+D;YAChE,MAAM,EAAE,KAAK;SACpB;QACD,iCAAiC,EAAE;YAC/B,GAAG,EAAE,uDAAuD;YACxD,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE;YACX,kCAAkC;SACzC;QACD,wBAAwB,EAAE;YACtB,GAAG,EAAE,uDAAuD;YACxD,MAAM,EAAE,QAAQ;SACvB;QACD,8BAA8B,EAAE;YAC5B,GAAG,EAAE,+DAA+D;YAChE,MAAM,EAAE,QAAQ;SACvB;QACD,uBAAuB,EAAE;YACrB,GAAG,EAAE,+EAA+E;YAChF,MAAM,EAAE,MAAM;SACrB;QACD,eAAe,EAAE;YACb,GAAG,EAAE,mDAAmD;YACpD,MAAM,EAAE,MAAM;SACrB;QACD,oBAAoB,EAAE;YAClB,GAAG,EAAE,wFAAwF;YACzF,MAAM,EAAE,KAAK;SACpB;QACD,iBAAiB,EAAE;YACf,GAAG,EAAE,8FAA8F;YAC/F,MAAM,EAAE,KAAK;SACpB;QACD,kBAAkB,EAAE;YAChB,GAAG,EAAE,gEAAgE;YACjE,MAAM,EAAE,MAAM;SACrB;QACD,qBAAqB,EAAE;YACnB,GAAG,EAAE,oFAAoF;YACrF,MAAM,EAAE,MAAM;SACrB;QACD,qBAAqB,EAAE;YACnB,GAAG,EAAE,oHAAoH;YACrH,MAAM,EAAE,KAAK;SACpB;QACD,uBAAuB,EAAE;YACrB,GAAG,EAAE,yDAAyD;YAC9D,MAAM,EAAE,KAAK;SAChB;KACJ;IACG,kBAAkB,EAAG;QACjB,mBAAmB,EAAE;YACjB,GAAG,EAAE,8CAA8C;YAC/C,MAAM,EAAE,KAAK;SACpB;KACJ;CACJ,CAAC;AAEF,MAAM,CAAC,IAAM,UAAU,GAAG;IACtB,OAAO,EAAE;QACL,WAAW,EAAE,IAAI;QACjB,EAAE,EAAE,SAAS;KAChB;IACD,WAAW,EAAE,mBAAmB;IAChC,iBAAiB,EAAE,IAAI;CAC1B,CAAC","sourcesContent":["// ToDo - variable seperation\nexport const CONSTANTS = {\n // hasCordova: window['cordova'] !== undefined,\n // isWaveLens: window['WaveLens'] !== undefined,\n isStudioMode: false,\n isRunMode: true,\n XSRF_COOKIE_NAME: 'wm_xsrf_token',\n DEFAULT_TIMER_DELAY: 500,\n WIDGET_DOESNT_EXIST : 'The widget you\\'re trying to navigate to doesn\\'t exist on this page'\n};\nexport const VARIABLE_CONSTANTS = {\n CATEGORY: {\n MODEL: 'wm.Variable',\n LIVE: 'wm.LiveVariable',\n CRUD: 'wm.CrudVariable',\n SERVICE: 'wm.ServiceVariable',\n WEBSOCKET: 'wm.WebSocketVariable',\n NAVIGATION: 'wm.NavigationVariable',\n NOTIFICATION: 'wm.NotificationVariable',\n TIMER: 'wm.TimerVariable',\n LOGIN: 'wm.LoginVariable',\n LOGOUT: 'wm.LogoutVariable',\n DEVICE: 'wm.DeviceVariable'\n },\n EVENTS: ['onBefore',\n 'onBeforeUpdate',\n 'onResult',\n 'onBeforeOpen',\n 'onOpen',\n 'onBeforeMessageSend',\n 'onMessageReceive',\n 'onProgress',\n 'onError',\n 'onBeforeDatasetReady',\n 'onCanUpdate',\n 'onClick',\n 'onHide',\n 'onOk',\n 'onCancel',\n 'onBeforeClose',\n 'onClose',\n 'onTimerFire',\n 'onSuccess',\n 'onOnline',\n 'onOffline'],\n EVENT: {\n 'CAN_UPDATE': 'onCanUpdate',\n 'BEFORE': 'onBefore',\n 'BEFORE_UPDATE': 'onBeforeUpdate',\n 'PREPARE_SETDATA': 'onBeforeDatasetReady',\n 'RESULT': 'onResult',\n 'ERROR': 'onError',\n 'ABORT': 'onAbort',\n 'PROGRESS': 'onProgress',\n 'CLICK': 'onClick',\n 'HIDE': 'onHide',\n 'OK': 'onOk',\n 'CANCEL': 'onCancel',\n 'CLOSE': 'onClose',\n 'TIMER_FIRE': 'onTimerFire',\n 'SUCCESS': 'onSuccess',\n 'BEFORE_OPEN': 'onBeforeOpen',\n 'OPEN': 'onOpen',\n 'BEFORE_SEND': 'onBeforeMessageSend',\n 'MESSAGE_RECEIVE': 'onMessageReceive',\n 'BEFORE_CLOSE': 'onBeforeClose'\n },\n OWNER: {\n 'APP': 'App',\n 'PAGE': 'Page'\n },\n REST_SUPPORTED_SERVICES: ['JavaService', 'SoapService', 'FeedService', 'RestService', 'SecurityServiceType', 'DataService', 'WebSocketService', 'OpenAPIService'],\n PAGINATION_PARAMS: ['page', 'size', 'sort'],\n REST_SERVICE: {\n 'BASE_PATH_KEY': 'x-WM-BASE_PATH',\n 'RELATIVE_PATH_KEY': 'x-WM-RELATIVE_PATH',\n 'OAUTH_PROVIDER_KEY': 'x-WM-PROVIDER_ID',\n 'AUTH_HDR_KEY': 'Authorization',\n 'SECURITY_DEFN': {\n 'BASIC': 'basic',\n 'OAUTH2': 'oauth2',\n },\n 'AUTH_TYPE': {\n 'BASIC': 'BASIC',\n 'OAUTH': 'OAUTH2',\n 'NONE': 'NONE',\n },\n 'CONTENT_TYPE_KEY': 'x-WM-CONTENT_TYPE',\n 'ACCESSTOKEN_PLACEHOLDER': {\n 'LEFT': '',\n 'RIGHT': '.access_token'\n },\n ERR_TYPE: {\n NO_ACCESSTOKEN: 'missing_accesstoken',\n NO_CREDENTIALS: 'no_credentials',\n METADATA_MISSING: 'metadata_missing',\n CRUD_OPERATION_MISSING: 'crud_operation_missing',\n USER_UNAUTHORISED: 'user_unauthorised',\n REQUIRED_FIELD_MISSING: 'required_field_missing',\n },\n ERR_MSG: {\n NO_ACCESSTOKEN: 'Access token missing',\n NO_CREDENTIALS: 'No credentials present',\n METADATA_MISSING: 'Metadata missing for \"$variable\"',\n USER_UNAUTHORISED: 'Unauthorized User',\n CRUD_OPERATION_MISSING: 'Operation \"$operation\" not allowed for \"$variable\"',\n REQUIRED_FIELD_MISSING: 'Required field(s) missing: \"${0}\"'\n },\n UNCLOAKED_HEADERS: ['CONTENT-TYPE', 'ACCEPT', 'CONTENT-LENGTH', 'ACCEPT-ENCODING', 'ACCEPT-LANGUAGE'],\n PREFIX: {\n AUTH_HDR_VAL: {\n BASIC: 'Basic',\n OAUTH: 'Bearer'\n },\n CLOAK_HEADER_KEY: 'X-WM-'\n }\n },\n SERVICE_TYPE: {\n JAVA: 'JavaService',\n REST: 'RestService',\n SOAP: 'SoapService',\n FEED: 'FeedService',\n DATA: 'DataService',\n SECURITY: 'SecurityServiceType',\n WEBSOCKET: 'WebSocketService',\n OPENAPI: 'OpenAPIService'\n },\n CONTROLLER_TYPE: {\n QUERY: 'QueryExecution',\n PROCEDURE: 'ProcedureExecution'\n },\n HTTP_STATUS_CODE: {\n CORS_FAILURE: -1,\n UNAUTHORIZED: 401,\n FORBIDDEN: 403\n },\n EXPORT_TYPES_MAP: {\n 'EXCEL' : '.xlsx',\n 'CSV' : '.csv'},\n DEFAULT_VAR : {\n 'NOTIFICATION' : 'appNotification'\n }\n};\n\nexport const WS_CONSTANTS = {\n NON_BODY_HTTP_METHODS: ['GET', 'HEAD'],\n CONTENT_TYPES: {\n FORM_URL_ENCODED: 'application/x-www-form-urlencoded',\n MULTIPART_FORMDATA: 'multipart/form-data',\n OCTET_STREAM: 'application/octet-stream'\n }\n};\n\nexport const DB_CONSTANTS = {\n 'DATABASE_MATCH_MODES': {\n 'like' : 'LIKE',\n 'start' : 'STARTING_WITH',\n 'startignorecase' : 'STARTING_WITH_IGNORECASE',\n 'end' : 'ENDING_WITH',\n 'endignorecase' : 'ENDING_WITH_IGNORECASE',\n 'anywhere' : 'CONTAINING',\n 'anywhereignorecase': 'CONTAINING_IGNORECASE',\n 'nowhere' : 'DOES_NOT_CONTAIN',\n 'nowhereignorecase': 'DOES_NOT_CONTAIN_IGNORECASE',\n 'exact' : 'EQUALS',\n 'exactignorecase' : 'EQUALS_IGNORECASE',\n 'notequals' : 'NOT_EQUALS',\n \"notequalsignorecase\": \"NOT_EQUALS_IGNORECASE\",\n 'between' : 'BETWEEN',\n 'in' : 'IN',\n \"notin\" : \"NOTIN\",\n 'lessthan' : 'LESS_THAN',\n 'lessthanequal' : 'LESS_THAN_OR_EQUALS',\n 'greaterthan' : 'GREATER_THAN',\n 'greaterthanequal' : 'GREATER_THAN_OR_EQUALS',\n 'null' : 'NULL',\n 'isnotnull' : 'IS_NOT_NULL',\n 'empty' : 'EMPTY',\n 'isnotempty' : 'IS_NOT_EMPTY',\n 'nullorempty' : 'NULL_OR_EMPTY'\n },\n 'DATABASE_EMPTY_MATCH_MODES': ['NULL', 'IS_NOT_NULL', 'EMPTY', 'IS_NOT_EMPTY', 'NULL_OR_EMPTY'],\n 'DATABASE_RANGE_MATCH_MODES': ['IN', 'NOTIN', 'BETWEEN', 'LESS_THAN', 'LESS_THAN_OR_EQUALS', 'GREATER_THAN', 'GREATER_THAN_OR_EQUALS', 'NOT_EQUALS'],\n 'DATABASE_NULL_EMPTY_MATCH': {\n 'NULL' : 'NULL',\n 'IS_NOT_NULL' : 'IS_NOT_NULL',\n 'EMPTY' : 'NULL',\n 'IS_NOT_EMPTY' : 'IS_NOT_NULL',\n 'NULL_OR_EMPTY' : 'NULL'\n },\n 'DATABASE_MATCH_MODES_WITH_QUERY': {\n 'LIKE' : '${0} like ${1}',\n 'STARTING_WITH' : '${0} like ${1}',\n 'STARTING_WITH_IGNORECASE': '${0} like ${1}',\n 'ENDING_WITH' : '${0} like ${1}',\n 'ENDING_WITH_IGNORECASE' : '${0} like ${1}',\n 'CONTAINING' : '${0} like ${1}',\n 'CONTAINING_IGNORECASE' : '${0} like ${1}',\n 'DOES_NOT_CONTAIN' : '${0} not like ${1}',\n 'DOES_NOT_CONTAIN_IGNORECASE': '${0} not like ${1}',\n 'EQUALS' : '${0}=${1}',\n 'EQUALS_IGNORECASE' : '${0}=${1}',\n 'NOT_EQUALS' : '${0}!=${1}',\n \"NOT_EQUALS_IGNORECASE\" : \"${0}!=${1}\",\n 'BETWEEN' : '${0} between ${1}',\n 'IN' : '${0} in ${1}',\n 'NOTIN' : \"${0} not in ${1}\",\n 'LESS_THAN' : '${0}<${1}',\n 'LESS_THAN_OR_EQUALS' : '${0}<=${1}',\n 'GREATER_THAN' : '${0}>${1}',\n 'GREATER_THAN_OR_EQUALS' : '${0}>=${1}',\n 'NULL' : '${0} is null',\n 'IS_NOT_NULL' : '${0} is not null',\n 'EMPTY' : '${0}=\\'\\'',\n 'IS_NOT_EMPTY' : '${0}<>\\'\\'',\n 'NULL_OR_EMPTY' : '(${0} is null or ${0}=\\'\\')'\n },\n 'DATABASE_STRING_MODES': ['LIKE', 'STARTING_WITH', 'STARTING_WITH_IGNORECASE', 'ENDING_WITH', 'ENDING_WITH_IGNORECASE', 'CONTAINING', 'CONTAINING_IGNORECASE', 'DOES_NOT_CONTAIN', 'DOES_NOT_CONTAIN_IGNORECASE', 'EQUALS', 'EQUALS_IGNORECASE', 'NOT_EQUALS', \"NOT_EQUALS_IGNORECASE\"]\n};\n\nexport const SWAGGER_CONSTANTS = {\n WM_DATA_JSON: 'wm_data_json',\n WM_HTTP_JSON: 'wm_httpRequestDetails'\n};\n\nexport const VARIABLE_URLS = {\n DATABASE: {\n searchTableData: {\n url: '/:service/:dataModelName/:entityName/search?page=:page&size=:size&:sort',\n method: 'POST'\n },\n searchTableDataWithQuery: {\n url: '/:service/:dataModelName/:entityName/filter?page=:page&size=:size&:sort',\n method: 'POST',\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded'\n }\n },\n readTableData: {\n url: '/:service/:dataModelName/:entityName?page=:page&size=:size&:sort',\n method: 'GET'\n },\n insertTableData: {\n url: '/:service/:dataModelName/:entityName',\n method: 'POST'\n },\n insertMultiPartTableData: {\n url: '/:service/:dataModelName/:entityName',\n method: 'POST',\n headers: {}\n // ,transformRequest: WM.identity\n },\n updateTableData: {\n url: '/:service/:dataModelName/:entityName/:id',\n method: 'PUT'\n },\n updateMultiPartTableData: {\n url: '/:service/:dataModelName/:entityName/:id',\n method: 'POST',\n headers: {}\n // ,transformRequest: WM.identity\n },\n deleteTableData: {\n url: '/:service/:dataModelName/:entityName/:id',\n method: 'DELETE'\n },\n updateCompositeTableData: {\n url: '/:service/:dataModelName/:entityName/composite-id?:id',\n method: 'PUT'\n },\n periodUpdateCompositeTableData: {\n url: '/:service/:dataModelName/:entityName/composite-id/periods?:id',\n method: 'PUT'\n },\n updateMultiPartCompositeTableData: {\n url: '/:service/:dataModelName/:entityName/composite-id?:id',\n method: 'POST',\n headers: {}\n // , transformRequest: WM.identity\n },\n deleteCompositeTableData: {\n url: '/:service/:dataModelName/:entityName/composite-id?:id',\n method: 'DELETE'\n },\n periodDeleteCompositeTableData: {\n url: '/:service/:dataModelName/:entityName/composite-id/periods?:id',\n method: 'DELETE'\n },\n getDistinctDataByFields: {\n url: '/:service/:dataModelName/:entityName/aggregations?page=:page&size=:size&:sort',\n method: 'POST'\n },\n exportTableData: {\n url: '/services/:dataModelName/:entityName/export?:sort',\n method: 'POST'\n },\n readTableRelatedData: {\n url: '/:service/:dataModelName/:entityName/:id/:relatedFieldName?page=:page&size=:size&:sort',\n method: 'GET'\n },\n executeNamedQuery: {\n url: '/:service/:dataModelName/queryExecutor/queries/:queryName?page=:page&size=:size&:queryParams',\n method: 'GET'\n },\n executeCustomQuery: {\n url: '/:service/:dataModelName/queries/execute?page=:page&size=:size',\n method: 'POST'\n },\n executeAggregateQuery: {\n url: '/services/:dataModelName/:entityName/aggregations?page=:page&size=:size&sort=:sort',\n method: 'POST'\n },\n executeNamedProcedure: {\n url: '/:service/:dataModelName/procedureExecutor/procedure/execute/:procedureName?page=:page&size=:size&:procedureParams',\n method: 'GET'\n },\n countTableDataWithQuery: {\n url: '/:service/:dataModelName/:entityName/count?:queryParams',\n method: 'GET'\n }\n},\n oauthConfiguration : {\n getAuthorizationUrl: {\n url: 'services/oauth2/:providerId/authorizationUrl',\n method: 'GET'\n }\n }\n};\n\nexport const $rootScope = {\n project: {\n deployedUrl: './',\n id: 'temp_id'\n },\n projectName: 'test_project_name',\n isApplicationType: true\n};\n"]}
|
|
1
|
+
{"version":3,"file":"variables.constants.js","sourceRoot":"./","sources":["src/constants/variables.constants.ts"],"names":[],"mappings":"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","sourcesContent":["// ToDo - variable seperation\nexport const CONSTANTS = {\n // hasCordova: window['cordova'] !== undefined,\n // isWaveLens: window['WaveLens'] !== undefined,\n isStudioMode: false,\n isRunMode: true,\n XSRF_COOKIE_NAME: 'wm_xsrf_token',\n DEFAULT_TIMER_DELAY: 500,\n WIDGET_DOESNT_EXIST : 'The widget you\\'re trying to navigate to doesn\\'t exist on this page'\n};\nexport const VARIABLE_CONSTANTS = {\n CATEGORY: {\n MODEL: 'wm.Variable',\n LIVE: 'wm.LiveVariable',\n CRUD: 'wm.CrudVariable',\n SERVICE: 'wm.ServiceVariable',\n WEBSOCKET: 'wm.WebSocketVariable',\n NAVIGATION: 'wm.NavigationAction',\n NOTIFICATION: 'wm.NotificationAction',\n TIMER: 'wm.TimerAction',\n LOGIN: 'wm.LoginAction',\n LOGOUT: 'wm.LogoutAction',\n DEVICE: 'wm.DeviceVariable'\n },\n EVENTS: ['onBefore',\n 'onBeforeUpdate',\n 'onResult',\n 'onBeforeOpen',\n 'onOpen',\n 'onBeforeMessageSend',\n 'onMessageReceive',\n 'onProgress',\n 'onError',\n 'onBeforeDatasetReady',\n 'onCanUpdate',\n 'onClick',\n 'onHide',\n 'onOk',\n 'onCancel',\n 'onBeforeClose',\n 'onClose',\n 'onTimerFire',\n 'onSuccess',\n 'onOnline',\n 'onOffline'],\n EVENT: {\n 'CAN_UPDATE': 'onCanUpdate',\n 'BEFORE': 'onBefore',\n 'BEFORE_UPDATE': 'onBeforeUpdate',\n 'PREPARE_SETDATA': 'onBeforeDatasetReady',\n 'RESULT': 'onResult',\n 'ERROR': 'onError',\n 'ABORT': 'onAbort',\n 'PROGRESS': 'onProgress',\n 'CLICK': 'onClick',\n 'HIDE': 'onHide',\n 'OK': 'onOk',\n 'CANCEL': 'onCancel',\n 'CLOSE': 'onClose',\n 'TIMER_FIRE': 'onTimerFire',\n 'SUCCESS': 'onSuccess',\n 'BEFORE_OPEN': 'onBeforeOpen',\n 'OPEN': 'onOpen',\n 'BEFORE_SEND': 'onBeforeMessageSend',\n 'MESSAGE_RECEIVE': 'onMessageReceive',\n 'BEFORE_CLOSE': 'onBeforeClose'\n },\n OWNER: {\n 'APP': 'App',\n 'PAGE': 'Page'\n },\n REST_SUPPORTED_SERVICES: ['JavaService', 'SoapService', 'FeedService', 'RestService', 'SecurityServiceType', 'DataService', 'WebSocketService', 'OpenAPIService'],\n PAGINATION_PARAMS: ['page', 'size', 'sort'],\n REST_SERVICE: {\n 'BASE_PATH_KEY': 'x-WM-BASE_PATH',\n 'RELATIVE_PATH_KEY': 'x-WM-RELATIVE_PATH',\n 'OAUTH_PROVIDER_KEY': 'x-WM-PROVIDER_ID',\n 'AUTH_HDR_KEY': 'Authorization',\n 'SECURITY_DEFN': {\n 'BASIC': 'basic',\n 'OAUTH2': 'oauth2',\n },\n 'AUTH_TYPE': {\n 'BASIC': 'BASIC',\n 'OAUTH': 'OAUTH2',\n 'NONE': 'NONE',\n },\n 'CONTENT_TYPE_KEY': 'x-WM-CONTENT_TYPE',\n 'ACCESSTOKEN_PLACEHOLDER': {\n 'LEFT': '',\n 'RIGHT': '.access_token'\n },\n ERR_TYPE: {\n NO_ACCESSTOKEN: 'missing_accesstoken',\n NO_CREDENTIALS: 'no_credentials',\n METADATA_MISSING: 'metadata_missing',\n CRUD_OPERATION_MISSING: 'crud_operation_missing',\n USER_UNAUTHORISED: 'user_unauthorised',\n REQUIRED_FIELD_MISSING: 'required_field_missing',\n },\n ERR_MSG: {\n NO_ACCESSTOKEN: 'Access token missing',\n NO_CREDENTIALS: 'No credentials present',\n METADATA_MISSING: 'Metadata missing for \"$variable\"',\n USER_UNAUTHORISED: 'Unauthorized User',\n CRUD_OPERATION_MISSING: 'Operation \"$operation\" not allowed for \"$variable\"',\n REQUIRED_FIELD_MISSING: 'Required field(s) missing: \"${0}\"'\n },\n UNCLOAKED_HEADERS: ['CONTENT-TYPE', 'ACCEPT', 'CONTENT-LENGTH', 'ACCEPT-ENCODING', 'ACCEPT-LANGUAGE'],\n PREFIX: {\n AUTH_HDR_VAL: {\n BASIC: 'Basic',\n OAUTH: 'Bearer'\n },\n CLOAK_HEADER_KEY: 'X-WM-'\n }\n },\n SERVICE_TYPE: {\n JAVA: 'JavaService',\n REST: 'RestService',\n SOAP: 'SoapService',\n FEED: 'FeedService',\n DATA: 'DataService',\n SECURITY: 'SecurityServiceType',\n WEBSOCKET: 'WebSocketService',\n OPENAPI: 'OpenAPIService'\n },\n CONTROLLER_TYPE: {\n QUERY: 'QueryExecution',\n PROCEDURE: 'ProcedureExecution'\n },\n HTTP_STATUS_CODE: {\n CORS_FAILURE: -1,\n UNAUTHORIZED: 401,\n FORBIDDEN: 403\n },\n EXPORT_TYPES_MAP: {\n 'EXCEL' : '.xlsx',\n 'CSV' : '.csv'},\n DEFAULT_VAR : {\n 'NOTIFICATION' : 'appNotification'\n }\n};\n\nexport const WS_CONSTANTS = {\n NON_BODY_HTTP_METHODS: ['GET', 'HEAD'],\n CONTENT_TYPES: {\n FORM_URL_ENCODED: 'application/x-www-form-urlencoded',\n MULTIPART_FORMDATA: 'multipart/form-data',\n OCTET_STREAM: 'application/octet-stream'\n }\n};\n\nexport const DB_CONSTANTS = {\n 'DATABASE_MATCH_MODES': {\n 'like' : 'LIKE',\n 'start' : 'STARTING_WITH',\n 'startignorecase' : 'STARTING_WITH_IGNORECASE',\n 'end' : 'ENDING_WITH',\n 'endignorecase' : 'ENDING_WITH_IGNORECASE',\n 'anywhere' : 'CONTAINING',\n 'anywhereignorecase': 'CONTAINING_IGNORECASE',\n 'nowhere' : 'DOES_NOT_CONTAIN',\n 'nowhereignorecase': 'DOES_NOT_CONTAIN_IGNORECASE',\n 'exact' : 'EQUALS',\n 'exactignorecase' : 'EQUALS_IGNORECASE',\n 'notequals' : 'NOT_EQUALS',\n \"notequalsignorecase\": \"NOT_EQUALS_IGNORECASE\",\n 'between' : 'BETWEEN',\n 'in' : 'IN',\n \"notin\" : \"NOTIN\",\n 'lessthan' : 'LESS_THAN',\n 'lessthanequal' : 'LESS_THAN_OR_EQUALS',\n 'greaterthan' : 'GREATER_THAN',\n 'greaterthanequal' : 'GREATER_THAN_OR_EQUALS',\n 'null' : 'NULL',\n 'isnotnull' : 'IS_NOT_NULL',\n 'empty' : 'EMPTY',\n 'isnotempty' : 'IS_NOT_EMPTY',\n 'nullorempty' : 'NULL_OR_EMPTY'\n },\n 'DATABASE_EMPTY_MATCH_MODES': ['NULL', 'IS_NOT_NULL', 'EMPTY', 'IS_NOT_EMPTY', 'NULL_OR_EMPTY'],\n 'DATABASE_RANGE_MATCH_MODES': ['IN', 'NOTIN', 'BETWEEN', 'LESS_THAN', 'LESS_THAN_OR_EQUALS', 'GREATER_THAN', 'GREATER_THAN_OR_EQUALS', 'NOT_EQUALS'],\n 'DATABASE_NULL_EMPTY_MATCH': {\n 'NULL' : 'NULL',\n 'IS_NOT_NULL' : 'IS_NOT_NULL',\n 'EMPTY' : 'NULL',\n 'IS_NOT_EMPTY' : 'IS_NOT_NULL',\n 'NULL_OR_EMPTY' : 'NULL'\n },\n 'DATABASE_MATCH_MODES_WITH_QUERY': {\n 'LIKE' : '${0} like ${1}',\n 'STARTING_WITH' : '${0} like ${1}',\n 'STARTING_WITH_IGNORECASE': '${0} like ${1}',\n 'ENDING_WITH' : '${0} like ${1}',\n 'ENDING_WITH_IGNORECASE' : '${0} like ${1}',\n 'CONTAINING' : '${0} like ${1}',\n 'CONTAINING_IGNORECASE' : '${0} like ${1}',\n 'DOES_NOT_CONTAIN' : '${0} not like ${1}',\n 'DOES_NOT_CONTAIN_IGNORECASE': '${0} not like ${1}',\n 'EQUALS' : '${0}=${1}',\n 'EQUALS_IGNORECASE' : '${0}=${1}',\n 'NOT_EQUALS' : '${0}!=${1}',\n \"NOT_EQUALS_IGNORECASE\" : \"${0}!=${1}\",\n 'BETWEEN' : '${0} between ${1}',\n 'IN' : '${0} in ${1}',\n 'NOTIN' : \"${0} not in ${1}\",\n 'LESS_THAN' : '${0}<${1}',\n 'LESS_THAN_OR_EQUALS' : '${0}<=${1}',\n 'GREATER_THAN' : '${0}>${1}',\n 'GREATER_THAN_OR_EQUALS' : '${0}>=${1}',\n 'NULL' : '${0} is null',\n 'IS_NOT_NULL' : '${0} is not null',\n 'EMPTY' : '${0}=\\'\\'',\n 'IS_NOT_EMPTY' : '${0}<>\\'\\'',\n 'NULL_OR_EMPTY' : '(${0} is null or ${0}=\\'\\')'\n },\n 'DATABASE_STRING_MODES': ['LIKE', 'STARTING_WITH', 'STARTING_WITH_IGNORECASE', 'ENDING_WITH', 'ENDING_WITH_IGNORECASE', 'CONTAINING', 'CONTAINING_IGNORECASE', 'DOES_NOT_CONTAIN', 'DOES_NOT_CONTAIN_IGNORECASE', 'EQUALS', 'EQUALS_IGNORECASE', 'NOT_EQUALS', \"NOT_EQUALS_IGNORECASE\"]\n};\n\nexport const SWAGGER_CONSTANTS = {\n WM_DATA_JSON: 'wm_data_json',\n WM_HTTP_JSON: 'wm_httpRequestDetails'\n};\n\nexport const VARIABLE_URLS = {\n DATABASE: {\n searchTableData: {\n url: '/:service/:dataModelName/:entityName/search?page=:page&size=:size&:sort',\n method: 'POST'\n },\n searchTableDataWithQuery: {\n url: '/:service/:dataModelName/:entityName/filter?page=:page&size=:size&:sort',\n method: 'POST',\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded'\n }\n },\n readTableData: {\n url: '/:service/:dataModelName/:entityName?page=:page&size=:size&:sort',\n method: 'GET'\n },\n insertTableData: {\n url: '/:service/:dataModelName/:entityName',\n method: 'POST'\n },\n insertMultiPartTableData: {\n url: '/:service/:dataModelName/:entityName',\n method: 'POST',\n headers: {}\n // ,transformRequest: WM.identity\n },\n updateTableData: {\n url: '/:service/:dataModelName/:entityName/:id',\n method: 'PUT'\n },\n updateMultiPartTableData: {\n url: '/:service/:dataModelName/:entityName/:id',\n method: 'POST',\n headers: {}\n // ,transformRequest: WM.identity\n },\n deleteTableData: {\n url: '/:service/:dataModelName/:entityName/:id',\n method: 'DELETE'\n },\n updateCompositeTableData: {\n url: '/:service/:dataModelName/:entityName/composite-id?:id',\n method: 'PUT'\n },\n periodUpdateCompositeTableData: {\n url: '/:service/:dataModelName/:entityName/composite-id/periods?:id',\n method: 'PUT'\n },\n updateMultiPartCompositeTableData: {\n url: '/:service/:dataModelName/:entityName/composite-id?:id',\n method: 'POST',\n headers: {}\n // , transformRequest: WM.identity\n },\n deleteCompositeTableData: {\n url: '/:service/:dataModelName/:entityName/composite-id?:id',\n method: 'DELETE'\n },\n periodDeleteCompositeTableData: {\n url: '/:service/:dataModelName/:entityName/composite-id/periods?:id',\n method: 'DELETE'\n },\n getDistinctDataByFields: {\n url: '/:service/:dataModelName/:entityName/aggregations?page=:page&size=:size&:sort',\n method: 'POST'\n },\n exportTableData: {\n url: '/services/:dataModelName/:entityName/export?:sort',\n method: 'POST'\n },\n readTableRelatedData: {\n url: '/:service/:dataModelName/:entityName/:id/:relatedFieldName?page=:page&size=:size&:sort',\n method: 'GET'\n },\n executeNamedQuery: {\n url: '/:service/:dataModelName/queryExecutor/queries/:queryName?page=:page&size=:size&:queryParams',\n method: 'GET'\n },\n executeCustomQuery: {\n url: '/:service/:dataModelName/queries/execute?page=:page&size=:size',\n method: 'POST'\n },\n executeAggregateQuery: {\n url: '/services/:dataModelName/:entityName/aggregations?page=:page&size=:size&sort=:sort',\n method: 'POST'\n },\n executeNamedProcedure: {\n url: '/:service/:dataModelName/procedureExecutor/procedure/execute/:procedureName?page=:page&size=:size&:procedureParams',\n method: 'GET'\n },\n countTableDataWithQuery: {\n url: '/:service/:dataModelName/:entityName/count?:queryParams',\n method: 'GET'\n }\n},\n oauthConfiguration : {\n getAuthorizationUrl: {\n url: 'services/oauth2/:providerId/authorizationUrl',\n method: 'GET'\n }\n }\n};\n\nexport const $rootScope = {\n project: {\n deployedUrl: './',\n id: 'temp_id'\n },\n projectName: 'test_project_name',\n isApplicationType: true\n};\n"]}
|
|
@@ -10,7 +10,7 @@ var managerMap = new Map(), typeToManagerMap = {
|
|
|
10
10
|
'wm.ServiceVariable': ServiceVariableManager,
|
|
11
11
|
'wm.LiveVariable': LiveVariableManager,
|
|
12
12
|
'wm.CrudVariable': CrudVariableManager,
|
|
13
|
-
'wm.
|
|
13
|
+
'wm.TimerAction': TimerActionManager,
|
|
14
14
|
};
|
|
15
15
|
var VariableManagerFactory = /** @class */ (function () {
|
|
16
16
|
function VariableManagerFactory() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"variable-manager.factory.js","sourceRoot":"./","sources":["src/factory/variable-manager.factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAClF,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAE5E,IAAM,UAAU,GAAG,IAAI,GAAG,EAAE,EACxB,gBAAgB,GAAG;IACf,UAAU,EAAE,mBAAmB;IAC/B,aAAa,EAAE,oBAAoB;IACnC,oBAAoB,EAAE,sBAAsB;IAC5C,iBAAiB,EAAE,mBAAmB;IACtC,iBAAiB,EAAE,mBAAmB;IACtC,
|
|
1
|
+
{"version":3,"file":"variable-manager.factory.js","sourceRoot":"./","sources":["src/factory/variable-manager.factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAClF,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAE5E,IAAM,UAAU,GAAG,IAAI,GAAG,EAAE,EACxB,gBAAgB,GAAG;IACf,UAAU,EAAE,mBAAmB;IAC/B,aAAa,EAAE,oBAAoB;IACnC,oBAAoB,EAAE,sBAAsB;IAC5C,iBAAiB,EAAE,mBAAmB;IACtC,iBAAiB,EAAE,mBAAmB;IACtC,gBAAgB,EAAE,kBAAkB;CACvC,CAAC;AAEN;IAAA;IAOA,CAAC;IALU,0BAAG,GAAV,UAAW,IAAS;QAChB,OAAO,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;YACzB,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;YACtB,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACrE,CAAC;IACL,6BAAC;AAAD,CAAC,AAPD,IAOC","sourcesContent":["import { ServiceVariableManager } from '../manager/variable/service-variable.manager';\nimport { ModelVariableManager } from '../manager/variable/model-variable.manager';\nimport { LiveVariableManager } from '../manager/variable/live-variable.manager';\nimport { CrudVariableManager } from '../manager/variable/crud-variable.manager';\nimport { BaseVariableManager } from '../manager/variable/base-variable.manager';\nimport { TimerActionManager } from '../manager/action/timer-action.manager';\n\nconst managerMap = new Map(),\n typeToManagerMap = {\n 'Variable': BaseVariableManager,\n 'wm.Variable': ModelVariableManager,\n 'wm.ServiceVariable': ServiceVariableManager,\n 'wm.LiveVariable': LiveVariableManager,\n 'wm.CrudVariable': CrudVariableManager,\n 'wm.TimerAction': TimerActionManager,\n };\n\nexport class VariableManagerFactory {\n\n static get(type: any) {\n return managerMap.has(type) ?\n managerMap.get(type) :\n managerMap.set(type, new typeToManagerMap[type]()).get(type);\n }\n}\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jmespath } from '@metrichor/jmespath';
|
|
2
2
|
import { startsWith, find, set, result, get } from 'lodash-es';
|
|
3
|
-
import { getValidJSON } from '../utils';
|
|
3
|
+
import { getValidJSON, isDefined } from '../utils';
|
|
4
4
|
import { VARIABLE_CONSTANTS } from '../../constants/variables.constants';
|
|
5
5
|
var PaginationUtils = /** @class */ (function () {
|
|
6
6
|
function PaginationUtils() {
|
|
@@ -162,7 +162,7 @@ var PaginationUtils = /** @class */ (function () {
|
|
|
162
162
|
var _a, _b;
|
|
163
163
|
var paginationInfo = this.getPaginationInfo(operationInfo, variable);
|
|
164
164
|
// If page is not first, pagination is present on the variable and paginationInfo's input meta has size set pagination in query params
|
|
165
|
-
var hasPagination = options && options['page'] && (paginationInfo === null || paginationInfo === void 0 ? void 0 : paginationInfo.input.size) && variable.pagination;
|
|
165
|
+
var hasPagination = options && isDefined(options['page']) && (paginationInfo === null || paginationInfo === void 0 ? void 0 : paginationInfo.input.size) && variable.pagination;
|
|
166
166
|
if (!hasPagination) {
|
|
167
167
|
return;
|
|
168
168
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pagination.utils.js","sourceRoot":"./","sources":["src/util/variable/pagination.utils.ts"],"names":[],"mappings":"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","sourcesContent":["import { jmespath } from '@metrichor/jmespath';\n\nimport {startsWith, find, set, result, get} from 'lodash-es';\nimport { getValidJSON } from '../utils';\nimport { VARIABLE_CONSTANTS } from '../../constants/variables.constants';\n\nexport class PaginationUtils {\n /**\n * Modifies the query values with the pagination info which is retrieved from the previous API response.\n * @param variable withholds variable information \n * @param operationInfo has metadata of the variable \n * @param paginationInfo has metadata of the variable pagination data\n * @returns {void} This method does not return anything\n */\n static setPaginationQueryParams(variable, operationInfo, paginationInfo) {\n operationInfo.parameters.forEach(element => {\n // pagination input information varies based on the type\n let inputParam;\n if (paginationInfo.type === 'offset' || paginationInfo.input.offset) {\n inputParam = 'offset';\n } else {\n inputParam = 'page';\n }\n // modifies query values based on the pagination of variable\n // compare parameter name with the input parameter's starting naming key (ex: channelcontext in channelcontext.pagination)\n if (element.name === paginationInfo.input[inputParam].split('.')[0]) {\n element.sampleValue = variable.pagination['page'];\n } else if (element.name === paginationInfo.input.size.split('.')[0]) {\n element.sampleValue = variable.pagination['size'];\n }\n });\n }\n\n /**\n * Sets pagination on the variable based on the response of the triggered api call.\n * @param variable withholds variable information \n * @param response has data of the api call's response\n * @param options has info of the api's query params\n * @returns {void} This method does not return anything\n */\n static setVariablePagination(variable, response, options) {\n if (!variable.pagination) {\n variable.pagination = {\n empty: false\n };\n }\n variable.pagination['size'] = response.size;\n variable.pagination['page'] = response.page || 0;\n variable.pagination['totalElements'] = response.totalElements;\n variable.pagination['numberOfElements'] = variable.pagination['size'];\n variable.pagination['number'] = options['page'] ? options['page'] - 1 : 0;\n \n /**\n * Deduce totalPages from totalElements by size.\n * If the total elements are evenly split among the pages, assign the same to totalPages\n * Else assign totalPages + 1\n */\n variable.pagination['totalPages'] = variable.pagination['totalElements'] / variable.pagination['size'];\n if (variable.pagination['totalElements'] % variable.pagination['size'] === 0) {\n variable.pagination['totalPages'] = parseInt(variable.pagination['totalPages']);\n } else {\n variable.pagination['totalPages'] = parseInt(variable.pagination['totalPages']) + 1;\n }\n\n // If pagination type is cursor, fill next & prev\n if (response.next) {\n variable.pagination['next'] = response.next;\n variable.pagination['prev'] = response.prev;\n variable.pagination['last'] = response.next ? false : true;\n variable.pagination['first'] = response.prev ? false : true;\n } else {\n variable.pagination['first'] = variable.pagination['page'] <= 1 ? true : false;\n // calculate last based on current page index against total pages\n variable.pagination['last'] = response.hasMoreItems === '' ? !(variable.pagination['page'] < variable.pagination['totalPages']) : !response.hasMoreItems;\n }\n }\n\n /**\n * Resolves the expression given in pagination metadata's output\n * @param item has value of each key which is inside output pagination metadata\n * @param response has data of the api call's response\n * @param resHeaders has data of the api call's response headers\n * @param res holds the information of pagination which has to be stored on the variable\n * @param key has key name against which data has to be stored in pagination \n * @returns {void} This method does not return anything\n */\n static setPaginationItems(item, response, res, key, resHeaders) {\n // if the item has body, resolve the expression against the response\n if (startsWith(item, '$body')) {\n const bodyKey = item.replace('$body.', '');\n try {\n res[key] = jmespath.search(response, bodyKey);\n } catch {\n console.warn(`${item} expression needs to be corrected as per JMES guidelines`);\n }\n } else if (startsWith(item, '$header')) { // if the item has header, resolve the expression against the response headers \n const headerKey = item.replace('$header.', '');\n const headers = (<any>Object).fromEntries(resHeaders?.headers || resHeaders);\n const headerParams = headerKey.split('.');\n try {\n res[key] = jmespath.search(headers, headerParams[0].toLowerCase());\n } catch {\n console.warn(`${item} expression needs to be corrected as per JMES guidelines`);\n }\n if (res[key]?.length) { \n let headerVal = res[key].join();\n if (headerParams.length === 1) { \n /**\n * If the headerParams has only 1 key (which is not an object) name assing headerVal to the res[key]\n */\n res[key] = headerVal;\n } else { \n /**\n * If the headerParams has more than 1 key (an object), parse the stringified headerVal which is an object\n * Resolve the expression against headerVal object amd assign it to res[key]\n */\n let keyName = headerParams.slice(1).join('.');\n const headerResp = JSON.parse(headerVal);\n const specialChar = /[!@#$%^&*()+\\=\\[\\]{};':\"\\\\|,<>\\/?]+/;\n if (specialChar.test(keyName)) {\n // If key name has expression (ex: comparission expression) \n // add root key name to keyName for JMES to resolve the expression\n keyName = 'headerResp.' + keyName;\n }\n try {\n res[key] = jmespath.search(headerResp, keyName);\n } catch {\n console.warn(`${item} expression needs to be corrected as per JMES guidelines`);\n }\n }\n }\n }\n }\n\n /**\n * Return the pagination information of the service based on its existence on swagger or on the variable\n * @param variable withholds variable information \n * @param operationInfo has metadata of the variable \n * @returns {object} This method return pagination metadata\n */\n static getPaginationInfo(operationInfo, variable) {\n if (operationInfo?.paginationInfo) {\n return operationInfo.paginationInfo;\n } else {\n return variable._paginationConfig;\n }\n }\n\n /**\n * Set query params with the pagination info, if pagination metadata is present in query params\n * @param variable withholds variable information \n * @param operationInfo has metadata of the variable \n * @param options has info of the api's query params\n * @returns {void} This method does not return anything\n */\n static checkPaginationAtQuery(operationInfo, variable, options) { \n const paginationInfo = this.getPaginationInfo(operationInfo, variable);\n // If page is not first, pagination is present on the variable and paginationInfo's input meta has size set pagination in query params\n const hasPagination = options && options['page'] && paginationInfo?.input.size && variable.pagination; \n if (!hasPagination) {\n return;\n }\n\n let inputParam,sizeParam;\n // if pagination type is offset, asssign inputParam to offset else page\n if (paginationInfo.type === 'offset' || paginationInfo.input.offset) {\n inputParam = 'offset';\n } else {\n inputParam = 'page';\n }\n if([\"page\",\"offset\",\"cursor\"].includes(paginationInfo.type)) {\n sizeParam = 'size';\n }\n if(sizeParam) {\n const sizeParamName = paginationInfo.input[sizeParam].split('.')[0];\n const sizeParamObj = find(operationInfo.parameters, function (obj) { return obj.name === sizeParamName; });\n if (sizeParamObj && sizeParamObj.parameterType === 'query' && [\"page\",\"offset\",\"cursor\"].includes(paginationInfo.type)) {\n variable.pagination['size'] = options['size'] || variable.pagination['size'];\n }\n }\n const paramName = paginationInfo.input[inputParam].split('.')[0]; \n const paramObj = find(operationInfo.parameters, function(obj) { return obj.name === paramName }); \n // check if the variable has query params and they are not empty\n if (paramObj && paramObj.parameterType === 'query') {\n /**\n * For pagination type other than offset, assign page which is recieved from options\n * For offset type, calculate page from size and options[page]\n */\n if (!paginationInfo.output?.page && paginationInfo.type !== 'offset') {\n variable.pagination['page'] = options['page'];\n } else {\n variable.pagination['page'] = this.getOffsetInfo(variable, options);\n }\n this.setPaginationQueryParams(variable, operationInfo, paginationInfo); \n } else if(paginationInfo.type === 'cursor') {\n const sParam = (paginationInfo.input?.size && paginationInfo.input['size'].split('.')[0]) || \"\";\n if(sParam) {\n const sParamObj = find(operationInfo.parameters, function(obj) { return obj.name === sParam && obj.parameterType === 'path' });\n if(sParamObj) {\n sParamObj.sampleValue = options['size'] || variable.pagination['size'] || sParamObj.sampleValue;\n }\n }\n }\n }\n\n /**\n * Deduces the offset information from the size and page params\n * @param variable withholds variable information \n * @param options has info of the api's query params\n * @returns {object} Returns the next offset number\n */\n static getOffsetInfo(variable, options) {\n return variable.pagination['size'] * (options['page'] ? (options['page'] - 1) : 0);\n }\n\n /**\n * Sets Pagination data on the request information\n * @param variable withholds variable information \n * @param operationInfo has metadata of the variable \n * @param options has info of the api's query params\n * @param paginationInfo has pagination information of the variable\n * @param headers has request headers\n * @param requestBody has request body\n * @param url has request url\n * @returns {object} Returns the request object which has pagination info\n */\n static setPaginationAtReq(paginationInfo, operationInfo, variable, headers, requestBody, url, options) {\n let reqObj = {};\n let inputParam;\n let resObj = {};\n // pagination input information varies based on the type\n if (paginationInfo.type === 'offset' || paginationInfo.input.offset) {\n inputParam = 'offset';\n } else {\n inputParam = 'page';\n }\n const paramName = paginationInfo.input[inputParam].split('.')[0]; \n // check if paramName is present in parameters of operation info \n const paramObj = find(operationInfo.parameters, function(obj) { \n if(obj.parameterType === 'body' && inputParam === 'page'){\n return obj.sampleValue.hasOwnProperty(paramName)\n }else{\n return obj.name === paramName\n }\n }); \n // set page/offset and size from pagination if matched parameter's type is header \n if (paramObj?.parameterType === 'header') {\n const inputBodyParam = VARIABLE_CONSTANTS.REST_SERVICE.PREFIX.CLOAK_HEADER_KEY + paginationInfo.input[inputParam]; \n if (inputParam !== 'offset') { \n set(reqObj, inputBodyParam, variable.pagination['page']);\n } else {\n set(reqObj, inputBodyParam, this.getOffsetInfo(variable, options));\n }\n set(reqObj, VARIABLE_CONSTANTS.REST_SERVICE.PREFIX.CLOAK_HEADER_KEY + paginationInfo.input.size, variable.pagination['size']);\n let headerKey = VARIABLE_CONSTANTS.REST_SERVICE.PREFIX.CLOAK_HEADER_KEY + paramName;\n headers[headerKey] = typeof reqObj[headerKey] === 'object' ? JSON.stringify(reqObj[headerKey]) : reqObj[headerKey];\n resObj['headers'] = headers;\n } else if (paramObj?.parameterType === 'body') { \n // set page/offset and size from pagination if matched parameter's type is body \n // assign bodyVal to updated pagination info object\n let bodyVal: any;\n try {\n bodyVal = typeof paramObj.sampleValue === 'string' ? JSON.parse(paramObj.sampleValue) : paramObj.sampleValue;\n } catch (e) {\n bodyVal = paramObj.sampleValue;\n }\n const bodyParam = inputParam === 'page' ? paginationInfo.input[inputParam] : paginationInfo.input[inputParam].split('.')[1]\n if (bodyVal && bodyVal[bodyParam]) {\n let inputBodyParam = paginationInfo.input[inputParam].split('.').splice(1).join('.'); \n if (inputParam !== 'offset') { \n inputBodyParam = paginationInfo.input[inputParam]; \n set(reqObj, inputBodyParam, options.page ? options.page : 1);\n } else {\n set(reqObj, inputBodyParam, this.getOffsetInfo(variable, options));\n }\n set(reqObj, paginationInfo.input.size.split('.').splice(1).join('.'), variable.pagination['size']);\n bodyVal[bodyParam] = reqObj[bodyParam];\n requestBody = JSON.stringify(bodyVal);\n resObj['requestBody'] = requestBody;\n }\n } else if (variable.pagination.next && paramObj) {\n /**\n * For cursor type pagination, if pagination info is present in the path \n * Based on whether user clicks on the next or prev button modify the url \n */\n \n if (paramObj.parameterType === 'path') {\n const urlParams = operationInfo.relativePath.split('/'),\n paramConfig = '{' + paramObj.name + '}',\n paramIndex = urlParams.indexOf(paramConfig);\n let invokeUrl;\n if (variable.pagination.isNext) {\n invokeUrl = variable.pagination.next.split('/');\n } else {\n invokeUrl = variable.pagination.prev.split('/');\n }\n\n let urlPathParmas;\n let urlPath;\n if (operationInfo.directPath) { // For direct path, as url has hostname, derivate pathname using URL object\n urlPath = new URL(url);\n urlPathParmas = urlPath.pathname.split('/');\n urlPathParmas[paramIndex] = invokeUrl[paramIndex];\n urlPath.pathname = urlPathParmas.join('/');\n url = urlPath.href;\n resObj['url'] = url;\n } else { // Else modify the url with index as +1 (following proxy pattern)\n urlPathParmas = url.split('/');\n urlPathParmas[paramIndex + 1] = invokeUrl[paramIndex];\n url = urlPathParmas.join('/');\n resObj['url'] = url;\n }\n\n } else if (paramObj.parameterType === 'query') {\n /**\n * For cursor type pagination, if pagination info is present in the query \n * Based on whether user clicks on the next or prev button modify the url's query params\n */\n const sizeParam = paginationInfo.input['size'].split('.')[0];\n const sizeObj = find(operationInfo.parameters, function(obj) { return obj.name === sizeParam });\n const urlParams = url.split('?');\n let invokeUrl;\n if (variable.pagination.isNext) {\n invokeUrl = variable.pagination.next.split('?');\n } else if(variable.pagination.isPrev) {\n invokeUrl = variable.pagination.prev.split('?');\n }\n if(invokeUrl) {\n const queryParams = new URLSearchParams(invokeUrl[1]);\n if (sizeObj && sizeObj.sampleValue) {\n queryParams.set(sizeObj.name, sizeObj.sampleValue);\n }\n invokeUrl[1] = queryParams.toString();\n urlParams[1] = invokeUrl[1]\n url = urlParams.join('?');\n resObj['url'] = url;\n }\n }\n }\n return resObj; \n }\n\n /**\n * Sets the pagination info recieved from api's response in the res object\n * @param operationInfo has metadata of the variable\n * @param res holds the information of pagination which has to be stored on the variable\n * @param paramName has key name against which data has to be stored in pagination\n * @param variable withholds variable information \n * @returns {void} This method does not return anything\n */\n static setParameterVal(paramName, res, operationInfo, variable, options?) {\n const paginationInfo = this.getPaginationInfo(operationInfo, variable);\n const paginationParams = paginationInfo.input[paramName].split('.');\n const param = paginationParams[0]; \n const sizeObj = find(operationInfo.parameters, function(obj) { return obj.name === param });\n if(paramName === 'size' && paginationInfo && (paginationInfo.type === 'offset' || paginationInfo.type === 'page') && options?.size && sizeObj?.sampleValue) {\n sizeObj.sampleValue = options['size'] || result(sizeObj, 'sampleValue');\n }\n res[paramName] = result(sizeObj, 'sampleValue');\n // if input value is configured from object, fetch the value from the specified path\n if (paginationParams.length > 1) {\n res[paramName] = get(getValidJSON(res[paramName]), paginationInfo.input[paramName].split('.').splice(1).join('.'));\n }\n }\n\n /**\n * Creates res object from the response recieved from the api triggered\n * @param variable withholds variable information \n * @param operationInfo has metadata of the variable\n * @param paginationInfo has metadata of the variable's pagination\n * @param response has data of the api call's response\n * @param options has info of the api's query params\n * @param resHeaders has data of the api call's response headers\n * @returns {object} An object which holds the information of pagination which has to be stored on the variable\n */\n static generatePaginationRes(operationInfo, paginationInfo, response, resHeaders, options, variable) {\n let res = {};\n const resOutput = paginationInfo.output;\n // If pagination type is not cursor, create the following metadata \n if (!resOutput?.next) {\n /**\n * If size is present in the pagination's output metadata deduce size from api's response\n * Else deduce size from the pagination's input metadata size key\n */\n if (resOutput?.size) {\n this.setPaginationItems(resOutput.size, response, res, 'size', resHeaders);\n }else{ \n this.setParameterVal('size', res, operationInfo, variable, options);\n }\n \n if(!resOutput?.size && paginationInfo.input?.size && paginationInfo.type === 'page'){\n res['size'] = (Number(paginationInfo.input?.size) ? paginationInfo.input?.size : get(response, paginationInfo.input?.size)) || res['size'];\n }\n /**\n * If page is present in the pagination's output metadata deduce page from api's response\n * Else deduce page from the pagination's input metadata page key\n */\n if (resOutput?.page) {\n this.setPaginationItems(resOutput.page, response, res, 'page', resHeaders);\n } else if (paginationInfo.type !== 'offset') {\n this.setParameterVal('page', res, operationInfo, variable, options);\n }\n this.setTotalElements(resOutput,options,res,variable,response,paginationInfo,resHeaders);\n /**\n * If hasMoreItems is present in the pagination's output metadata deduce hasMoreItems from api's response\n * Else assign it as empty which will be calculated at pagination object generation\n */\n if (resOutput?.hasMoreItems) {\n this.setPaginationItems(resOutput.hasMoreItems, response, res, 'hasMoreItems', resHeaders);\n } else {\n res['hasMoreItems'] = '';\n }\n } else if (resOutput) { // For cursor type pagination set next and prev keys in res object\n this.setPaginationItems(resOutput.next, response, res, 'next', resHeaders);\n this.setPaginationItems(resOutput.prev, response, res, 'prev', resHeaders);\n this.setPaginationItems(resOutput.size, response, res, 'size', resHeaders);\n this.setParameterVal('page', res, operationInfo, variable, options);\n this.setTotalElements(resOutput,options,res,variable,response,paginationInfo,resHeaders);\n }\n return res;\n }\n /**\n * If totalElements has $minValue in it, set totalElements as $minValue\n * If the rendered elements are greater than $minValue, set totalElements as Number of elements rendered + 1\n\n * If totalElements is present in the pagination's output metadata deduce totalElements from api's response\n\n * If Pagination type is offset, deduce totalElements from size and options[page] else deduce from size and res[page]\n */\n static setTotalElements(resOutput, options, res, variable, response, paginationInfo, resHeaders) {\n if (startsWith(resOutput?.totalElements, '$minValue')) {\n const totalEl = resOutput.totalElements.replace('$minValue=', '');\n const pageParam = res['page'] ? res['page'] : options['page']\n const elRendered = res['size'] * pageParam;\n if (!variable.pagination || variable.pagination['totalElements'] > elRendered) {\n res['totalElements'] = parseInt(totalEl);\n } else {\n res['totalElements'] = elRendered + 1;\n }\n } else if (resOutput?.totalElements) {\n this.setPaginationItems(resOutput.totalElements, response, res, 'totalElements', resHeaders);\n } else {\n if (paginationInfo.type === 'offset' || paginationInfo.input.offset) {\n res['totalElements'] = (res['size'] * (options['page'] ? options['page'] : 1)) + 1;\n } else {\n res['totalElements'] = (res['size'] * res['page']) + 1;\n }\n }\n }\n}"]}
|
|
1
|
+
{"version":3,"file":"pagination.utils.js","sourceRoot":"./","sources":["src/util/variable/pagination.utils.ts"],"names":[],"mappings":"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","sourcesContent":["import { jmespath } from '@metrichor/jmespath';\n\nimport {startsWith, find, set, result, get} from 'lodash-es';\nimport { getValidJSON, isDefined } from '../utils';\nimport { VARIABLE_CONSTANTS } from '../../constants/variables.constants';\n\nexport class PaginationUtils {\n /**\n * Modifies the query values with the pagination info which is retrieved from the previous API response.\n * @param variable withholds variable information \n * @param operationInfo has metadata of the variable \n * @param paginationInfo has metadata of the variable pagination data\n * @returns {void} This method does not return anything\n */\n static setPaginationQueryParams(variable, operationInfo, paginationInfo) {\n operationInfo.parameters.forEach(element => {\n // pagination input information varies based on the type\n let inputParam;\n if (paginationInfo.type === 'offset' || paginationInfo.input.offset) {\n inputParam = 'offset';\n } else {\n inputParam = 'page';\n }\n // modifies query values based on the pagination of variable\n // compare parameter name with the input parameter's starting naming key (ex: channelcontext in channelcontext.pagination)\n if (element.name === paginationInfo.input[inputParam].split('.')[0]) {\n element.sampleValue = variable.pagination['page'];\n } else if (element.name === paginationInfo.input.size.split('.')[0]) {\n element.sampleValue = variable.pagination['size'];\n }\n });\n }\n\n /**\n * Sets pagination on the variable based on the response of the triggered api call.\n * @param variable withholds variable information \n * @param response has data of the api call's response\n * @param options has info of the api's query params\n * @returns {void} This method does not return anything\n */\n static setVariablePagination(variable, response, options) {\n if (!variable.pagination) {\n variable.pagination = {\n empty: false\n };\n }\n variable.pagination['size'] = response.size;\n variable.pagination['page'] = response.page || 0;\n variable.pagination['totalElements'] = response.totalElements;\n variable.pagination['numberOfElements'] = variable.pagination['size'];\n variable.pagination['number'] = options['page'] ? options['page'] - 1 : 0;\n \n /**\n * Deduce totalPages from totalElements by size.\n * If the total elements are evenly split among the pages, assign the same to totalPages\n * Else assign totalPages + 1\n */\n variable.pagination['totalPages'] = variable.pagination['totalElements'] / variable.pagination['size'];\n if (variable.pagination['totalElements'] % variable.pagination['size'] === 0) {\n variable.pagination['totalPages'] = parseInt(variable.pagination['totalPages']);\n } else {\n variable.pagination['totalPages'] = parseInt(variable.pagination['totalPages']) + 1;\n }\n\n // If pagination type is cursor, fill next & prev\n if (response.next) {\n variable.pagination['next'] = response.next;\n variable.pagination['prev'] = response.prev;\n variable.pagination['last'] = response.next ? false : true;\n variable.pagination['first'] = response.prev ? false : true;\n } else {\n variable.pagination['first'] = variable.pagination['page'] <= 1 ? true : false;\n // calculate last based on current page index against total pages\n variable.pagination['last'] = response.hasMoreItems === '' ? !(variable.pagination['page'] < variable.pagination['totalPages']) : !response.hasMoreItems;\n }\n }\n\n /**\n * Resolves the expression given in pagination metadata's output\n * @param item has value of each key which is inside output pagination metadata\n * @param response has data of the api call's response\n * @param resHeaders has data of the api call's response headers\n * @param res holds the information of pagination which has to be stored on the variable\n * @param key has key name against which data has to be stored in pagination \n * @returns {void} This method does not return anything\n */\n static setPaginationItems(item, response, res, key, resHeaders) {\n // if the item has body, resolve the expression against the response\n if (startsWith(item, '$body')) {\n const bodyKey = item.replace('$body.', '');\n try {\n res[key] = jmespath.search(response, bodyKey);\n } catch {\n console.warn(`${item} expression needs to be corrected as per JMES guidelines`);\n }\n } else if (startsWith(item, '$header')) { // if the item has header, resolve the expression against the response headers \n const headerKey = item.replace('$header.', '');\n const headers = (<any>Object).fromEntries(resHeaders?.headers || resHeaders);\n const headerParams = headerKey.split('.');\n try {\n res[key] = jmespath.search(headers, headerParams[0].toLowerCase());\n } catch {\n console.warn(`${item} expression needs to be corrected as per JMES guidelines`);\n }\n if (res[key]?.length) { \n let headerVal = res[key].join();\n if (headerParams.length === 1) { \n /**\n * If the headerParams has only 1 key (which is not an object) name assing headerVal to the res[key]\n */\n res[key] = headerVal;\n } else { \n /**\n * If the headerParams has more than 1 key (an object), parse the stringified headerVal which is an object\n * Resolve the expression against headerVal object amd assign it to res[key]\n */\n let keyName = headerParams.slice(1).join('.');\n const headerResp = JSON.parse(headerVal);\n const specialChar = /[!@#$%^&*()+\\=\\[\\]{};':\"\\\\|,<>\\/?]+/;\n if (specialChar.test(keyName)) {\n // If key name has expression (ex: comparission expression) \n // add root key name to keyName for JMES to resolve the expression\n keyName = 'headerResp.' + keyName;\n }\n try {\n res[key] = jmespath.search(headerResp, keyName);\n } catch {\n console.warn(`${item} expression needs to be corrected as per JMES guidelines`);\n }\n }\n }\n }\n }\n\n /**\n * Return the pagination information of the service based on its existence on swagger or on the variable\n * @param variable withholds variable information \n * @param operationInfo has metadata of the variable \n * @returns {object} This method return pagination metadata\n */\n static getPaginationInfo(operationInfo, variable) {\n if (operationInfo?.paginationInfo) {\n return operationInfo.paginationInfo;\n } else {\n return variable._paginationConfig;\n }\n }\n\n /**\n * Set query params with the pagination info, if pagination metadata is present in query params\n * @param variable withholds variable information \n * @param operationInfo has metadata of the variable \n * @param options has info of the api's query params\n * @returns {void} This method does not return anything\n */\n static checkPaginationAtQuery(operationInfo, variable, options) { \n const paginationInfo = this.getPaginationInfo(operationInfo, variable);\n // If page is not first, pagination is present on the variable and paginationInfo's input meta has size set pagination in query params\n const hasPagination = options && isDefined(options['page']) && paginationInfo?.input.size && variable.pagination;\n if (!hasPagination) {\n return;\n }\n\n let inputParam,sizeParam;\n // if pagination type is offset, asssign inputParam to offset else page\n if (paginationInfo.type === 'offset' || paginationInfo.input.offset) {\n inputParam = 'offset';\n } else {\n inputParam = 'page';\n }\n if([\"page\",\"offset\",\"cursor\"].includes(paginationInfo.type)) {\n sizeParam = 'size';\n }\n if(sizeParam) {\n const sizeParamName = paginationInfo.input[sizeParam].split('.')[0];\n const sizeParamObj = find(operationInfo.parameters, function (obj) { return obj.name === sizeParamName; });\n if (sizeParamObj && sizeParamObj.parameterType === 'query' && [\"page\",\"offset\",\"cursor\"].includes(paginationInfo.type)) {\n variable.pagination['size'] = options['size'] || variable.pagination['size'];\n }\n }\n const paramName = paginationInfo.input[inputParam].split('.')[0]; \n const paramObj = find(operationInfo.parameters, function(obj) { return obj.name === paramName }); \n // check if the variable has query params and they are not empty\n if (paramObj && paramObj.parameterType === 'query') {\n /**\n * For pagination type other than offset, assign page which is recieved from options\n * For offset type, calculate page from size and options[page]\n */\n if (!paginationInfo.output?.page && paginationInfo.type !== 'offset') {\n variable.pagination['page'] = options['page'];\n } else {\n variable.pagination['page'] = this.getOffsetInfo(variable, options);\n }\n this.setPaginationQueryParams(variable, operationInfo, paginationInfo); \n } else if(paginationInfo.type === 'cursor') {\n const sParam = (paginationInfo.input?.size && paginationInfo.input['size'].split('.')[0]) || \"\";\n if(sParam) {\n const sParamObj = find(operationInfo.parameters, function(obj) { return obj.name === sParam && obj.parameterType === 'path' });\n if(sParamObj) {\n sParamObj.sampleValue = options['size'] || variable.pagination['size'] || sParamObj.sampleValue;\n }\n }\n }\n }\n\n /**\n * Deduces the offset information from the size and page params\n * @param variable withholds variable information \n * @param options has info of the api's query params\n * @returns {object} Returns the next offset number\n */\n static getOffsetInfo(variable, options) {\n return variable.pagination['size'] * (options['page'] ? (options['page'] - 1) : 0);\n }\n\n /**\n * Sets Pagination data on the request information\n * @param variable withholds variable information \n * @param operationInfo has metadata of the variable \n * @param options has info of the api's query params\n * @param paginationInfo has pagination information of the variable\n * @param headers has request headers\n * @param requestBody has request body\n * @param url has request url\n * @returns {object} Returns the request object which has pagination info\n */\n static setPaginationAtReq(paginationInfo, operationInfo, variable, headers, requestBody, url, options) {\n let reqObj = {};\n let inputParam;\n let resObj = {};\n // pagination input information varies based on the type\n if (paginationInfo.type === 'offset' || paginationInfo.input.offset) {\n inputParam = 'offset';\n } else {\n inputParam = 'page';\n }\n const paramName = paginationInfo.input[inputParam].split('.')[0]; \n // check if paramName is present in parameters of operation info \n const paramObj = find(operationInfo.parameters, function(obj) { \n if(obj.parameterType === 'body' && inputParam === 'page'){\n return obj.sampleValue.hasOwnProperty(paramName)\n }else{\n return obj.name === paramName\n }\n }); \n // set page/offset and size from pagination if matched parameter's type is header \n if (paramObj?.parameterType === 'header') {\n const inputBodyParam = VARIABLE_CONSTANTS.REST_SERVICE.PREFIX.CLOAK_HEADER_KEY + paginationInfo.input[inputParam]; \n if (inputParam !== 'offset') { \n set(reqObj, inputBodyParam, variable.pagination['page']);\n } else {\n set(reqObj, inputBodyParam, this.getOffsetInfo(variable, options));\n }\n set(reqObj, VARIABLE_CONSTANTS.REST_SERVICE.PREFIX.CLOAK_HEADER_KEY + paginationInfo.input.size, variable.pagination['size']);\n let headerKey = VARIABLE_CONSTANTS.REST_SERVICE.PREFIX.CLOAK_HEADER_KEY + paramName;\n headers[headerKey] = typeof reqObj[headerKey] === 'object' ? JSON.stringify(reqObj[headerKey]) : reqObj[headerKey];\n resObj['headers'] = headers;\n } else if (paramObj?.parameterType === 'body') { \n // set page/offset and size from pagination if matched parameter's type is body \n // assign bodyVal to updated pagination info object\n let bodyVal: any;\n try {\n bodyVal = typeof paramObj.sampleValue === 'string' ? JSON.parse(paramObj.sampleValue) : paramObj.sampleValue;\n } catch (e) {\n bodyVal = paramObj.sampleValue;\n }\n const bodyParam = inputParam === 'page' ? paginationInfo.input[inputParam] : paginationInfo.input[inputParam].split('.')[1]\n if (bodyVal && bodyVal[bodyParam]) {\n let inputBodyParam = paginationInfo.input[inputParam].split('.').splice(1).join('.'); \n if (inputParam !== 'offset') { \n inputBodyParam = paginationInfo.input[inputParam]; \n set(reqObj, inputBodyParam, options.page ? options.page : 1);\n } else {\n set(reqObj, inputBodyParam, this.getOffsetInfo(variable, options));\n }\n set(reqObj, paginationInfo.input.size.split('.').splice(1).join('.'), variable.pagination['size']);\n bodyVal[bodyParam] = reqObj[bodyParam];\n requestBody = JSON.stringify(bodyVal);\n resObj['requestBody'] = requestBody;\n }\n } else if (variable.pagination.next && paramObj) {\n /**\n * For cursor type pagination, if pagination info is present in the path \n * Based on whether user clicks on the next or prev button modify the url \n */\n \n if (paramObj.parameterType === 'path') {\n const urlParams = operationInfo.relativePath.split('/'),\n paramConfig = '{' + paramObj.name + '}',\n paramIndex = urlParams.indexOf(paramConfig);\n let invokeUrl;\n if (variable.pagination.isNext) {\n invokeUrl = variable.pagination.next.split('/');\n } else {\n invokeUrl = variable.pagination.prev.split('/');\n }\n\n let urlPathParmas;\n let urlPath;\n if (operationInfo.directPath) { // For direct path, as url has hostname, derivate pathname using URL object\n urlPath = new URL(url);\n urlPathParmas = urlPath.pathname.split('/');\n urlPathParmas[paramIndex] = invokeUrl[paramIndex];\n urlPath.pathname = urlPathParmas.join('/');\n url = urlPath.href;\n resObj['url'] = url;\n } else { // Else modify the url with index as +1 (following proxy pattern)\n urlPathParmas = url.split('/');\n urlPathParmas[paramIndex + 1] = invokeUrl[paramIndex];\n url = urlPathParmas.join('/');\n resObj['url'] = url;\n }\n\n } else if (paramObj.parameterType === 'query') {\n /**\n * For cursor type pagination, if pagination info is present in the query \n * Based on whether user clicks on the next or prev button modify the url's query params\n */\n const sizeParam = paginationInfo.input['size'].split('.')[0];\n const sizeObj = find(operationInfo.parameters, function(obj) { return obj.name === sizeParam });\n const urlParams = url.split('?');\n let invokeUrl;\n if (variable.pagination.isNext) {\n invokeUrl = variable.pagination.next.split('?');\n } else if(variable.pagination.isPrev) {\n invokeUrl = variable.pagination.prev.split('?');\n }\n if(invokeUrl) {\n const queryParams = new URLSearchParams(invokeUrl[1]);\n if (sizeObj && sizeObj.sampleValue) {\n queryParams.set(sizeObj.name, sizeObj.sampleValue);\n }\n invokeUrl[1] = queryParams.toString();\n urlParams[1] = invokeUrl[1]\n url = urlParams.join('?');\n resObj['url'] = url;\n }\n }\n }\n return resObj; \n }\n\n /**\n * Sets the pagination info recieved from api's response in the res object\n * @param operationInfo has metadata of the variable\n * @param res holds the information of pagination which has to be stored on the variable\n * @param paramName has key name against which data has to be stored in pagination\n * @param variable withholds variable information \n * @returns {void} This method does not return anything\n */\n static setParameterVal(paramName, res, operationInfo, variable, options?) {\n const paginationInfo = this.getPaginationInfo(operationInfo, variable);\n const paginationParams = paginationInfo.input[paramName].split('.');\n const param = paginationParams[0]; \n const sizeObj = find(operationInfo.parameters, function(obj) { return obj.name === param });\n if(paramName === 'size' && paginationInfo && (paginationInfo.type === 'offset' || paginationInfo.type === 'page') && options?.size && sizeObj?.sampleValue) {\n sizeObj.sampleValue = options['size'] || result(sizeObj, 'sampleValue');\n }\n res[paramName] = result(sizeObj, 'sampleValue');\n // if input value is configured from object, fetch the value from the specified path\n if (paginationParams.length > 1) {\n res[paramName] = get(getValidJSON(res[paramName]), paginationInfo.input[paramName].split('.').splice(1).join('.'));\n }\n }\n\n /**\n * Creates res object from the response recieved from the api triggered\n * @param variable withholds variable information \n * @param operationInfo has metadata of the variable\n * @param paginationInfo has metadata of the variable's pagination\n * @param response has data of the api call's response\n * @param options has info of the api's query params\n * @param resHeaders has data of the api call's response headers\n * @returns {object} An object which holds the information of pagination which has to be stored on the variable\n */\n static generatePaginationRes(operationInfo, paginationInfo, response, resHeaders, options, variable) {\n let res = {};\n const resOutput = paginationInfo.output;\n // If pagination type is not cursor, create the following metadata \n if (!resOutput?.next) {\n /**\n * If size is present in the pagination's output metadata deduce size from api's response\n * Else deduce size from the pagination's input metadata size key\n */\n if (resOutput?.size) {\n this.setPaginationItems(resOutput.size, response, res, 'size', resHeaders);\n }else{ \n this.setParameterVal('size', res, operationInfo, variable, options);\n }\n \n if(!resOutput?.size && paginationInfo.input?.size && paginationInfo.type === 'page'){\n res['size'] = (Number(paginationInfo.input?.size) ? paginationInfo.input?.size : get(response, paginationInfo.input?.size)) || res['size'];\n }\n /**\n * If page is present in the pagination's output metadata deduce page from api's response\n * Else deduce page from the pagination's input metadata page key\n */\n if (resOutput?.page) {\n this.setPaginationItems(resOutput.page, response, res, 'page', resHeaders);\n } else if (paginationInfo.type !== 'offset') {\n this.setParameterVal('page', res, operationInfo, variable, options);\n }\n this.setTotalElements(resOutput,options,res,variable,response,paginationInfo,resHeaders);\n /**\n * If hasMoreItems is present in the pagination's output metadata deduce hasMoreItems from api's response\n * Else assign it as empty which will be calculated at pagination object generation\n */\n if (resOutput?.hasMoreItems) {\n this.setPaginationItems(resOutput.hasMoreItems, response, res, 'hasMoreItems', resHeaders);\n } else {\n res['hasMoreItems'] = '';\n }\n } else if (resOutput) { // For cursor type pagination set next and prev keys in res object\n this.setPaginationItems(resOutput.next, response, res, 'next', resHeaders);\n this.setPaginationItems(resOutput.prev, response, res, 'prev', resHeaders);\n this.setPaginationItems(resOutput.size, response, res, 'size', resHeaders);\n this.setParameterVal('page', res, operationInfo, variable, options);\n this.setTotalElements(resOutput,options,res,variable,response,paginationInfo,resHeaders);\n }\n return res;\n }\n /**\n * If totalElements has $minValue in it, set totalElements as $minValue\n * If the rendered elements are greater than $minValue, set totalElements as Number of elements rendered + 1\n\n * If totalElements is present in the pagination's output metadata deduce totalElements from api's response\n\n * If Pagination type is offset, deduce totalElements from size and options[page] else deduce from size and res[page]\n */\n static setTotalElements(resOutput, options, res, variable, response, paginationInfo, resHeaders) {\n if (startsWith(resOutput?.totalElements, '$minValue')) {\n const totalEl = resOutput.totalElements.replace('$minValue=', '');\n const pageParam = res['page'] ? res['page'] : options['page']\n const elRendered = res['size'] * pageParam;\n if (!variable.pagination || variable.pagination['totalElements'] > elRendered) {\n res['totalElements'] = parseInt(totalEl);\n } else {\n res['totalElements'] = elRendered + 1;\n }\n } else if (resOutput?.totalElements) {\n this.setPaginationItems(resOutput.totalElements, response, res, 'totalElements', resHeaders);\n } else {\n if (paginationInfo.type === 'offset' || paginationInfo.input.offset) {\n res['totalElements'] = (res['size'] * (options['page'] ? options['page'] : 1)) + 1;\n } else {\n res['totalElements'] = (res['size'] * res['page']) + 1;\n }\n }\n }\n}\n"]}
|
|
@@ -15,6 +15,31 @@ import { includes, toLower, get, isObject, isArray, forEach, isUndefined, join,
|
|
|
15
15
|
var isBodyTypeQueryOrProcedure = function (variable) {
|
|
16
16
|
return (includes(['QueryExecution', 'ProcedureExecution'], variable.controller)) && (includes(['put', 'post'], variable.operationType));
|
|
17
17
|
};
|
|
18
|
+
var appendQueryParam = function (queryParams, paramName, paramValue, preEncoded) {
|
|
19
|
+
if (preEncoded === void 0) { preEncoded = false; }
|
|
20
|
+
var encodedValue = preEncoded ? paramValue : encodeURIComponent(paramValue);
|
|
21
|
+
var pair = "".concat(paramName, "=").concat(encodedValue);
|
|
22
|
+
return queryParams ? "".concat(queryParams, "&").concat(pair) : "?".concat(pair);
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* Expands a query param value into the list of {value, preEncoded} entries to append to the
|
|
26
|
+
* URL, based on its collectionFormat:
|
|
27
|
+
* - 'multi' -> one entry per array element, appended by the caller as repeated query keys
|
|
28
|
+
* (type=a&type=b)
|
|
29
|
+
* - any other array -> a single comma-joined value (type=a,b); each element is encoded
|
|
30
|
+
* individually so the joining commas stay literal (unambiguously the separator)
|
|
31
|
+
* while a comma inside an element's own value stays escaped as %2C
|
|
32
|
+
* - scalar values are returned as a single-element list
|
|
33
|
+
*/
|
|
34
|
+
var getQueryParamValues = function (param, paramValue) {
|
|
35
|
+
if (isArray(paramValue)) {
|
|
36
|
+
if (param.collectionFormat === 'multi') {
|
|
37
|
+
return map(paramValue, function (value) { return ({ value: value, preEncoded: false }); });
|
|
38
|
+
}
|
|
39
|
+
return [{ value: map(paramValue, function (value) { return encodeURIComponent(value); }).join(','), preEncoded: true }];
|
|
40
|
+
}
|
|
41
|
+
return [{ value: paramValue, preEncoded: false }];
|
|
42
|
+
};
|
|
18
43
|
/**
|
|
19
44
|
* returns true if the variable is a Query service variable
|
|
20
45
|
* @param {string} controller
|
|
@@ -240,12 +265,16 @@ var ServiceVariableUtils = /** @class */ (function () {
|
|
|
240
265
|
if (isNull(paramValue) && isQueryServiceVar(variable.controller, variable.serviceType)) {
|
|
241
266
|
break;
|
|
242
267
|
}
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
268
|
+
/* A query param may resolve to multiple values (collectionFormat 'multi').
|
|
269
|
+
* getQueryParamValues returns one entry per repeated key, so append each as
|
|
270
|
+
* a separate name=value pair (type=a&type=b) instead of a single joined value. */
|
|
271
|
+
getQueryParamValues(param, paramValue).forEach(function (_a) {
|
|
272
|
+
var queryValue = _a.value, preEncoded = _a.preEncoded;
|
|
273
|
+
if (isNull(queryValue) && isQueryServiceVar(variable.controller, variable.serviceType)) {
|
|
274
|
+
return;
|
|
275
|
+
}
|
|
276
|
+
queryParams = appendQueryParam(queryParams, param.name, queryValue, preEncoded);
|
|
277
|
+
});
|
|
249
278
|
break;
|
|
250
279
|
case 'PATH':
|
|
251
280
|
/* replacing the path param based on the regular expression in the relative path */
|