@digital-ai/devops-page-object-release 0.0.7 → 0.0.9
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/CHANGELOG.md +17 -0
- package/dist/main.js +1387 -1032
- package/dist/main.js.map +1 -1
- package/dist/module.js +599 -244
- package/dist/module.js.map +1 -1
- package/dist/types.d.ts +209 -104
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/main.js
CHANGED
|
@@ -947,1233 +947,1561 @@ var $edb0b0405039996a$exports = {};
|
|
|
947
947
|
$edb0b0405039996a$exports = $edb0b0405039996a$var$isNil;
|
|
948
948
|
|
|
949
949
|
|
|
950
|
+
var $3e8b520187e41aa6$exports = {};
|
|
951
|
+
/**
|
|
952
|
+
* Checks if `value` is `undefined`.
|
|
953
|
+
*
|
|
954
|
+
* @static
|
|
955
|
+
* @since 0.1.0
|
|
956
|
+
* @memberOf _
|
|
957
|
+
* @category Lang
|
|
958
|
+
* @param {*} value The value to check.
|
|
959
|
+
* @returns {boolean} Returns `true` if `value` is `undefined`, else `false`.
|
|
960
|
+
* @example
|
|
961
|
+
*
|
|
962
|
+
* _.isUndefined(void 0);
|
|
963
|
+
* // => true
|
|
964
|
+
*
|
|
965
|
+
* _.isUndefined(null);
|
|
966
|
+
* // => false
|
|
967
|
+
*/ function $3e8b520187e41aa6$var$isUndefined(value) {
|
|
968
|
+
return value === undefined;
|
|
969
|
+
}
|
|
970
|
+
$3e8b520187e41aa6$exports = $3e8b520187e41aa6$var$isUndefined;
|
|
950
971
|
|
|
951
972
|
|
|
973
|
+
var $952a2b8d8056b381$exports = {};
|
|
952
974
|
|
|
975
|
+
$952a2b8d8056b381$exports = (parcelRequire("ae8Uz"));
|
|
953
976
|
|
|
954
|
-
class $f8721861c660dd88$export$2b65d1d97338f32b {
|
|
955
|
-
constructor(page){
|
|
956
|
-
this.page = page;
|
|
957
|
-
}
|
|
958
|
-
}
|
|
959
977
|
|
|
960
978
|
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
|
|
979
|
+
var $ae8Uz = parcelRequire("ae8Uz");
|
|
980
|
+
var $732eba8dca8b5420$exports = {};
|
|
981
|
+
var $b1535b4ce0d1bd5f$exports = {};
|
|
982
|
+
|
|
983
|
+
var $9x2D6 = parcelRequire("9x2D6");
|
|
984
|
+
var $1b1aa0f3fc7256c9$exports = {};
|
|
985
|
+
var $f984f14b3d4f0683$exports = {};
|
|
986
|
+
/**
|
|
987
|
+
* A faster alternative to `Function#apply`, this function invokes `func`
|
|
988
|
+
* with the `this` binding of `thisArg` and the arguments of `args`.
|
|
989
|
+
*
|
|
990
|
+
* @private
|
|
991
|
+
* @param {Function} func The function to invoke.
|
|
992
|
+
* @param {*} thisArg The `this` binding of `func`.
|
|
993
|
+
* @param {Array} args The arguments to invoke `func` with.
|
|
994
|
+
* @returns {*} Returns the result of `func`.
|
|
995
|
+
*/ function $f984f14b3d4f0683$var$apply(func, thisArg, args) {
|
|
996
|
+
switch(args.length){
|
|
997
|
+
case 0:
|
|
998
|
+
return func.call(thisArg);
|
|
999
|
+
case 1:
|
|
1000
|
+
return func.call(thisArg, args[0]);
|
|
1001
|
+
case 2:
|
|
1002
|
+
return func.call(thisArg, args[0], args[1]);
|
|
1003
|
+
case 3:
|
|
1004
|
+
return func.call(thisArg, args[0], args[1], args[2]);
|
|
971
1005
|
}
|
|
1006
|
+
return func.apply(thisArg, args);
|
|
972
1007
|
}
|
|
1008
|
+
$f984f14b3d4f0683$exports = $f984f14b3d4f0683$var$apply;
|
|
973
1009
|
|
|
974
1010
|
|
|
1011
|
+
/* Built-in method references for those with the same name as other `lodash` methods. */ var $1b1aa0f3fc7256c9$var$nativeMax = Math.max;
|
|
1012
|
+
/**
|
|
1013
|
+
* A specialized version of `baseRest` which transforms the rest array.
|
|
1014
|
+
*
|
|
1015
|
+
* @private
|
|
1016
|
+
* @param {Function} func The function to apply a rest parameter to.
|
|
1017
|
+
* @param {number} [start=func.length-1] The start position of the rest parameter.
|
|
1018
|
+
* @param {Function} transform The rest array transform.
|
|
1019
|
+
* @returns {Function} Returns the new function.
|
|
1020
|
+
*/ function $1b1aa0f3fc7256c9$var$overRest(func, start, transform) {
|
|
1021
|
+
start = $1b1aa0f3fc7256c9$var$nativeMax(start === undefined ? func.length - 1 : start, 0);
|
|
1022
|
+
return function() {
|
|
1023
|
+
var args = arguments, index = -1, length = $1b1aa0f3fc7256c9$var$nativeMax(args.length - start, 0), array = Array(length);
|
|
1024
|
+
while(++index < length)array[index] = args[start + index];
|
|
1025
|
+
index = -1;
|
|
1026
|
+
var otherArgs = Array(start + 1);
|
|
1027
|
+
while(++index < start)otherArgs[index] = args[index];
|
|
1028
|
+
otherArgs[start] = transform(array);
|
|
1029
|
+
return $f984f14b3d4f0683$exports(func, this, otherArgs);
|
|
1030
|
+
};
|
|
1031
|
+
}
|
|
1032
|
+
$1b1aa0f3fc7256c9$exports = $1b1aa0f3fc7256c9$var$overRest;
|
|
975
1033
|
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
1034
|
+
|
|
1035
|
+
var $0e9d1d7fde57dac1$exports = {};
|
|
1036
|
+
var $ef9aec5e693cb6ed$exports = {};
|
|
1037
|
+
var $3dc9802adab1dd60$exports = {};
|
|
1038
|
+
/**
|
|
1039
|
+
* Creates a function that returns `value`.
|
|
1040
|
+
*
|
|
1041
|
+
* @static
|
|
1042
|
+
* @memberOf _
|
|
1043
|
+
* @since 2.4.0
|
|
1044
|
+
* @category Util
|
|
1045
|
+
* @param {*} value The value to return from the new function.
|
|
1046
|
+
* @returns {Function} Returns the new constant function.
|
|
1047
|
+
* @example
|
|
1048
|
+
*
|
|
1049
|
+
* var objects = _.times(2, _.constant({ 'a': 1 }));
|
|
1050
|
+
*
|
|
1051
|
+
* console.log(objects);
|
|
1052
|
+
* // => [{ 'a': 1 }, { 'a': 1 }]
|
|
1053
|
+
*
|
|
1054
|
+
* console.log(objects[0] === objects[1]);
|
|
1055
|
+
* // => true
|
|
1056
|
+
*/ function $3dc9802adab1dd60$var$constant(value) {
|
|
1057
|
+
return function() {
|
|
1058
|
+
return value;
|
|
1059
|
+
};
|
|
992
1060
|
}
|
|
1061
|
+
$3dc9802adab1dd60$exports = $3dc9802adab1dd60$var$constant;
|
|
993
1062
|
|
|
994
1063
|
|
|
1064
|
+
var $97bac00047c338ed$exports = {};
|
|
1065
|
+
var $b7745e89d7f5915f$exports = {};
|
|
1066
|
+
var $927414f7f9d8afbb$exports = {};
|
|
1067
|
+
|
|
1068
|
+
var $7T6pQ = parcelRequire("7T6pQ");
|
|
1069
|
+
var $1fb1799a04ee25ea$exports = {};
|
|
1070
|
+
var $5ee1230bf1668e2a$exports = {};
|
|
995
1071
|
|
|
1072
|
+
var $5iYlB = parcelRequire("5iYlB");
|
|
1073
|
+
/** Used to detect overreaching core-js shims. */ var $5ee1230bf1668e2a$var$coreJsData = $5iYlB["__core-js_shared__"];
|
|
1074
|
+
$5ee1230bf1668e2a$exports = $5ee1230bf1668e2a$var$coreJsData;
|
|
996
1075
|
|
|
997
1076
|
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1077
|
+
/** Used to detect methods masquerading as native. */ var $1fb1799a04ee25ea$var$maskSrcKey = function() {
|
|
1078
|
+
var uid = /[^.]+$/.exec($5ee1230bf1668e2a$exports && $5ee1230bf1668e2a$exports.keys && $5ee1230bf1668e2a$exports.keys.IE_PROTO || "");
|
|
1079
|
+
return uid ? "Symbol(src)_1." + uid : "";
|
|
1080
|
+
}();
|
|
1081
|
+
/**
|
|
1082
|
+
* Checks if `func` has its source masked.
|
|
1083
|
+
*
|
|
1084
|
+
* @private
|
|
1085
|
+
* @param {Function} func The function to check.
|
|
1086
|
+
* @returns {boolean} Returns `true` if `func` is masked, else `false`.
|
|
1087
|
+
*/ function $1fb1799a04ee25ea$var$isMasked(func) {
|
|
1088
|
+
return !!$1fb1799a04ee25ea$var$maskSrcKey && $1fb1799a04ee25ea$var$maskSrcKey in func;
|
|
1006
1089
|
}
|
|
1090
|
+
$1fb1799a04ee25ea$exports = $1fb1799a04ee25ea$var$isMasked;
|
|
1007
1091
|
|
|
1008
1092
|
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
|
|
1026
|
-
|
|
1027
|
-
|
|
1028
|
-
// TODO move this to a new inline-editor
|
|
1029
|
-
async focusOnField(propertyName) {
|
|
1030
|
-
await (0, $kKeXs$playwrighttest.expect)(async ()=>{
|
|
1031
|
-
await this.taskModalLocator.locator(`#${propertyName} .display`).click({
|
|
1032
|
-
force: true
|
|
1033
|
-
});
|
|
1034
|
-
await (0, $kKeXs$playwrighttest.expect)(this.taskModalLocator.locator(`#${propertyName} label.edit`)).toBeVisible();
|
|
1035
|
-
}).toPass();
|
|
1036
|
-
}
|
|
1037
|
-
async focusOnAutocompleteField(propertyName) {
|
|
1038
|
-
await (0, $kKeXs$playwrighttest.expect)(async ()=>{
|
|
1039
|
-
await this.taskModalLocator.locator(`#${propertyName} input`).click({
|
|
1040
|
-
force: true
|
|
1041
|
-
});
|
|
1042
|
-
await (0, $kKeXs$playwrighttest.expect)(this.taskModalLocator.locator(`#${propertyName} ul`)).toBeVisible();
|
|
1043
|
-
}).toPass();
|
|
1093
|
+
|
|
1094
|
+
var $bfk90 = parcelRequire("bfk90");
|
|
1095
|
+
var $c6de24274df36d4e$exports = {};
|
|
1096
|
+
/** Used for built-in method references. */ var $c6de24274df36d4e$var$funcProto = Function.prototype;
|
|
1097
|
+
/** Used to resolve the decompiled source of functions. */ var $c6de24274df36d4e$var$funcToString = $c6de24274df36d4e$var$funcProto.toString;
|
|
1098
|
+
/**
|
|
1099
|
+
* Converts `func` to its source code.
|
|
1100
|
+
*
|
|
1101
|
+
* @private
|
|
1102
|
+
* @param {Function} func The function to convert.
|
|
1103
|
+
* @returns {string} Returns the source code.
|
|
1104
|
+
*/ function $c6de24274df36d4e$var$toSource(func) {
|
|
1105
|
+
if (func != null) {
|
|
1106
|
+
try {
|
|
1107
|
+
return $c6de24274df36d4e$var$funcToString.call(func);
|
|
1108
|
+
} catch (e) {}
|
|
1109
|
+
try {
|
|
1110
|
+
return func + "";
|
|
1111
|
+
} catch (e) {}
|
|
1044
1112
|
}
|
|
1113
|
+
return "";
|
|
1045
1114
|
}
|
|
1115
|
+
$c6de24274df36d4e$exports = $c6de24274df36d4e$var$toSource;
|
|
1046
1116
|
|
|
1047
1117
|
|
|
1118
|
+
/**
|
|
1119
|
+
* Used to match `RegExp`
|
|
1120
|
+
* [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).
|
|
1121
|
+
*/ var $927414f7f9d8afbb$var$reRegExpChar = /[\\^$.*+?()[\]{}|]/g;
|
|
1122
|
+
/** Used to detect host constructors (Safari). */ var $927414f7f9d8afbb$var$reIsHostCtor = /^\[object .+?Constructor\]$/;
|
|
1123
|
+
/** Used for built-in method references. */ var $927414f7f9d8afbb$var$funcProto = Function.prototype, $927414f7f9d8afbb$var$objectProto = Object.prototype;
|
|
1124
|
+
/** Used to resolve the decompiled source of functions. */ var $927414f7f9d8afbb$var$funcToString = $927414f7f9d8afbb$var$funcProto.toString;
|
|
1125
|
+
/** Used to check objects for own properties. */ var $927414f7f9d8afbb$var$hasOwnProperty = $927414f7f9d8afbb$var$objectProto.hasOwnProperty;
|
|
1126
|
+
/** Used to detect if a method is native. */ var $927414f7f9d8afbb$var$reIsNative = RegExp("^" + $927414f7f9d8afbb$var$funcToString.call($927414f7f9d8afbb$var$hasOwnProperty).replace($927414f7f9d8afbb$var$reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$");
|
|
1127
|
+
/**
|
|
1128
|
+
* The base implementation of `_.isNative` without bad shim checks.
|
|
1129
|
+
*
|
|
1130
|
+
* @private
|
|
1131
|
+
* @param {*} value The value to check.
|
|
1132
|
+
* @returns {boolean} Returns `true` if `value` is a native function,
|
|
1133
|
+
* else `false`.
|
|
1134
|
+
*/ function $927414f7f9d8afbb$var$baseIsNative(value) {
|
|
1135
|
+
if (!$bfk90(value) || $1fb1799a04ee25ea$exports(value)) return false;
|
|
1136
|
+
var pattern = $7T6pQ(value) ? $927414f7f9d8afbb$var$reIsNative : $927414f7f9d8afbb$var$reIsHostCtor;
|
|
1137
|
+
return pattern.test($c6de24274df36d4e$exports(value));
|
|
1138
|
+
}
|
|
1139
|
+
$927414f7f9d8afbb$exports = $927414f7f9d8afbb$var$baseIsNative;
|
|
1048
1140
|
|
|
1049
1141
|
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
locator
|
|
1061
|
-
];
|
|
1062
|
-
})
|
|
1063
|
-
]);
|
|
1064
|
-
const resolvedLocator = res.find((r)=>r[0] !== -1);
|
|
1065
|
-
if (!resolvedLocator) {
|
|
1066
|
-
console.warn("waitForOneOf", res);
|
|
1067
|
-
throw new Error("no locator visible before timeout");
|
|
1068
|
-
}
|
|
1069
|
-
return resolvedLocator;
|
|
1142
|
+
var $18378a7c2aff899b$exports = {};
|
|
1143
|
+
/**
|
|
1144
|
+
* Gets the value at `key` of `object`.
|
|
1145
|
+
*
|
|
1146
|
+
* @private
|
|
1147
|
+
* @param {Object} [object] The object to query.
|
|
1148
|
+
* @param {string} key The key of the property to get.
|
|
1149
|
+
* @returns {*} Returns the property value.
|
|
1150
|
+
*/ function $18378a7c2aff899b$var$getValue(object, key) {
|
|
1151
|
+
return object == null ? undefined : object[key];
|
|
1070
1152
|
}
|
|
1153
|
+
$18378a7c2aff899b$exports = $18378a7c2aff899b$var$getValue;
|
|
1071
1154
|
|
|
1072
1155
|
|
|
1073
|
-
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
|
|
1156
|
+
/**
|
|
1157
|
+
* Gets the native function at `key` of `object`.
|
|
1158
|
+
*
|
|
1159
|
+
* @private
|
|
1160
|
+
* @param {Object} object The object to query.
|
|
1161
|
+
* @param {string} key The key of the method to get.
|
|
1162
|
+
* @returns {*} Returns the function if it's native, else `undefined`.
|
|
1163
|
+
*/ function $b7745e89d7f5915f$var$getNative(object, key) {
|
|
1164
|
+
var value = $18378a7c2aff899b$exports(object, key);
|
|
1165
|
+
return $927414f7f9d8afbb$exports(value) ? value : undefined;
|
|
1078
1166
|
}
|
|
1079
|
-
|
|
1080
|
-
async expectValue(locators, expectFn) {
|
|
1081
|
-
const [index, locator] = await (0, $ef0df8ad8a777ce6$export$a0f926f04148e5d2)(locators);
|
|
1082
|
-
await expectFn[index](locator);
|
|
1083
|
-
}
|
|
1084
|
-
async expectValueToBe(value) {
|
|
1085
|
-
await this.expectValue([
|
|
1086
|
-
this.page.locator("#modal .variable-value input"),
|
|
1087
|
-
this.page.locator("#modal .variable-value .field-readonly"),
|
|
1088
|
-
this.page.locator("#modal .variable-value .xl-map-string-string")
|
|
1089
|
-
], [
|
|
1090
|
-
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toHaveValue(value),
|
|
1091
|
-
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toHaveText(value),
|
|
1092
|
-
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toHaveText(value)
|
|
1093
|
-
]);
|
|
1094
|
-
}
|
|
1095
|
-
async expectValueToContain(value) {
|
|
1096
|
-
await this.expectValue([
|
|
1097
|
-
this.page.locator("#modal .variable-value input"),
|
|
1098
|
-
this.page.locator("#modal .variable-value .field-readonly"),
|
|
1099
|
-
this.page.locator("#modal .variable-value .xl-map-string-string")
|
|
1100
|
-
], [
|
|
1101
|
-
(l)=>(0, $kKeXs$playwrighttest.expect)(l.inputValue()).toContain(value),
|
|
1102
|
-
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toContainText(value),
|
|
1103
|
-
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toContainText(value)
|
|
1104
|
-
]);
|
|
1105
|
-
}
|
|
1106
|
-
async close() {
|
|
1107
|
-
await this.page.locator("#modal .modal-header button.close").click();
|
|
1108
|
-
}
|
|
1109
|
-
}
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
class $d91a6ef09b618c8d$export$e946776eae644790 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1115
|
-
constructor(page){
|
|
1116
|
-
super(page);
|
|
1117
|
-
this.taskDrawerLocator = this.page.locator("task-drawer .dot-drawer");
|
|
1118
|
-
}
|
|
1119
|
-
async openConfigRail() {
|
|
1120
|
-
await this.openRail("Config");
|
|
1121
|
-
return new $d91a6ef09b618c8d$var$ConfigRail(this.page);
|
|
1122
|
-
}
|
|
1123
|
-
async openRail(rail) {
|
|
1124
|
-
await this.taskDrawerLocator.locator(".task-navigation-rail").getByText(rail).click();
|
|
1125
|
-
}
|
|
1126
|
-
async close() {
|
|
1127
|
-
await this.taskDrawerLocator.locator(".task-drawer-header").getByTestId("close-btn").click();
|
|
1128
|
-
}
|
|
1129
|
-
}
|
|
1130
|
-
class $d91a6ef09b618c8d$var$ConfigRail extends $d91a6ef09b618c8d$export$e946776eae644790 {
|
|
1131
|
-
constructor(page){
|
|
1132
|
-
super(page);
|
|
1133
|
-
this.railLocator = this.taskDrawerLocator.locator(".task-config");
|
|
1134
|
-
}
|
|
1135
|
-
async openInputProperties() {
|
|
1136
|
-
await this.railLocator.locator(".task-config-header").getByText("Input properties").click();
|
|
1137
|
-
}
|
|
1138
|
-
async openOutputProperties() {
|
|
1139
|
-
await this.railLocator.locator(".task-config-header").getByText("Output properties").click();
|
|
1140
|
-
}
|
|
1141
|
-
async getValueFromCi(propertyName) {
|
|
1142
|
-
return this.railLocator.locator(`input[id="${propertyName}"]`).inputValue();
|
|
1143
|
-
}
|
|
1144
|
-
async getAllOptionsFromCi(propertyName) {
|
|
1145
|
-
await this.railLocator.locator(`input[id="${propertyName}"]`).click();
|
|
1146
|
-
return this.railLocator.locator(`.dot-popper ul li`).allInnerTexts();
|
|
1147
|
-
}
|
|
1148
|
-
async setValueFromCi(propertyName, value) {
|
|
1149
|
-
await this.railLocator.locator(`input[id="${propertyName}"]`).clear();
|
|
1150
|
-
await this.railLocator.locator(`input[id="${propertyName}"]`).click();
|
|
1151
|
-
await this.railLocator.locator(`.dot-popper ul li`, {
|
|
1152
|
-
hasText: value
|
|
1153
|
-
}).click();
|
|
1154
|
-
}
|
|
1155
|
-
async getValueFromString(propertyName) {
|
|
1156
|
-
await this.railLocator.locator(`.input-scalar-fake-input[id="${propertyName}"]`).focus();
|
|
1157
|
-
return this.railLocator.locator(`input[id="${propertyName}"]`).inputValue();
|
|
1158
|
-
}
|
|
1159
|
-
async setValueFromString(propertyName, value) {
|
|
1160
|
-
await this.railLocator.locator(`.input-scalar-fake-input[id="${propertyName}"]`).focus();
|
|
1161
|
-
await this.railLocator.locator(`input[id="${propertyName}"]`).fill(value);
|
|
1162
|
-
}
|
|
1163
|
-
async setValueFromLargeString(propertyName, value) {
|
|
1164
|
-
await this.railLocator.locator(`.input-scalar-fake-input[id="${propertyName}"]`).focus();
|
|
1165
|
-
await this.railLocator.locator(`textarea[id="${propertyName}"]`).fill(value);
|
|
1166
|
-
}
|
|
1167
|
-
async setValueFromPassword(propertyName, value) {
|
|
1168
|
-
await this.railLocator.locator(`input[id="${propertyName}"]`).fill(value);
|
|
1169
|
-
}
|
|
1170
|
-
async setAndCreateVariable(propertyName, variableName) {
|
|
1171
|
-
await this.railLocator.locator(`input[id="${propertyName}"]`).clear();
|
|
1172
|
-
await this.railLocator.locator(`input[id="${propertyName}"]`).click();
|
|
1173
|
-
await this.railLocator.locator(`input[id="${propertyName}"]`).fill(variableName);
|
|
1174
|
-
await this.railLocator.locator(`.dot-popper button`, {
|
|
1175
|
-
hasText: variableName
|
|
1176
|
-
}).click();
|
|
1177
|
-
}
|
|
1178
|
-
async setVariable(propertyName, variableName) {
|
|
1179
|
-
return this.setValueFromCi(propertyName, variableName);
|
|
1180
|
-
}
|
|
1181
|
-
async expectValueFromString(propertyName, propertyValue) {
|
|
1182
|
-
return await (0, $kKeXs$playwrighttest.expect)(this.railLocator.locator(`.input-scalar-fake-input[id="${propertyName}"]`)).toHaveText(propertyValue);
|
|
1183
|
-
}
|
|
1184
|
-
}
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
class $fcbf42f405a34f2e$export$f43492e8ac3c566 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1188
|
-
async openTriggers() {
|
|
1189
|
-
await this.openSubPage("Triggers");
|
|
1190
|
-
return new (0, $133601cfe0486710$export$fb932093f944abe4)(this.page);
|
|
1191
|
-
}
|
|
1192
|
-
async abort(comment = "Abort for testing") {
|
|
1193
|
-
await this.page.locator("action-toolbar button", {
|
|
1194
|
-
hasText: "Abort"
|
|
1195
|
-
}).click();
|
|
1196
|
-
await this.page.locator(".modal textarea").fill(comment);
|
|
1197
|
-
await this.page.locator(".modal .continue").click();
|
|
1198
|
-
}
|
|
1199
|
-
getPhase(phaseName) {
|
|
1200
|
-
return new $fcbf42f405a34f2e$var$Phase(this.page, phaseName);
|
|
1201
|
-
}
|
|
1202
|
-
async start() {
|
|
1203
|
-
await this.page.locator("action-toolbar button", {
|
|
1204
|
-
hasText: "Start"
|
|
1205
|
-
}).click();
|
|
1206
|
-
await this.page.locator(".modal button.primary").click();
|
|
1207
|
-
}
|
|
1208
|
-
async waitForTaskCompleted(taskTitle) {
|
|
1209
|
-
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task.completed").getByText(taskTitle, {
|
|
1210
|
-
exact: true
|
|
1211
|
-
})).toBeVisible();
|
|
1212
|
-
}
|
|
1213
|
-
async waitForTaskFailed(taskTitle) {
|
|
1214
|
-
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task.failed").getByText(taskTitle, {
|
|
1215
|
-
exact: true
|
|
1216
|
-
})).toBeVisible();
|
|
1217
|
-
}
|
|
1218
|
-
async waitForStatusLine(statusLine) {
|
|
1219
|
-
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task .status-line").getByText(statusLine, {
|
|
1220
|
-
exact: true
|
|
1221
|
-
})).toBeVisible();
|
|
1222
|
-
}
|
|
1223
|
-
/**
|
|
1224
|
-
* @deprecated Don't use this, use new TaskDrawer
|
|
1225
|
-
*/ async openCustomScriptTaskModal(taskName) {
|
|
1226
|
-
await this.page.locator(".task-header").getByText(taskName).click();
|
|
1227
|
-
return new (0, $487fa7328f6a6cf2$export$b66cc3708c7bd4a4)(this.page);
|
|
1228
|
-
}
|
|
1229
|
-
async openTaskDrawer(taskName) {
|
|
1230
|
-
await this.page.locator(".task-header").getByText(taskName).click();
|
|
1231
|
-
return new (0, $d91a6ef09b618c8d$export$e946776eae644790)(this.page);
|
|
1232
|
-
}
|
|
1233
|
-
async openVariables() {
|
|
1234
|
-
await this.openReleaseMenu("Variables");
|
|
1235
|
-
return new (0, $e53d02b209248a0b$export$a87f0ae8695e74be)(this.page);
|
|
1236
|
-
}
|
|
1237
|
-
async openReleaseMenu(menuItem) {
|
|
1238
|
-
await this.page.locator(`navigation-sidebar ul li`).getByText(menuItem, {
|
|
1239
|
-
exact: true
|
|
1240
|
-
}).click();
|
|
1241
|
-
}
|
|
1242
|
-
async openSubPage(subpage) {
|
|
1243
|
-
await this.page.locator("ul.side-nav li", {
|
|
1244
|
-
hasText: subpage
|
|
1245
|
-
}).click();
|
|
1246
|
-
}
|
|
1247
|
-
}
|
|
1248
|
-
class $fcbf42f405a34f2e$var$Phase extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1249
|
-
constructor(page, phaseName){
|
|
1250
|
-
super(page);
|
|
1251
|
-
this.phaseLocator = page.locator(".phase", {
|
|
1252
|
-
hasText: phaseName
|
|
1253
|
-
});
|
|
1254
|
-
}
|
|
1255
|
-
async addTask(taskName, taskGroup, taskType) {
|
|
1256
|
-
await this.phaseLocator.getByText("Add task").click();
|
|
1257
|
-
await this.phaseLocator.locator(".quick-title").fill(taskName);
|
|
1258
|
-
await this.phaseLocator.locator(".xlr-ctx-menu-toggle").click();
|
|
1259
|
-
await this.page.locator(`.xlr-ctx-menu-item`).getByTitle(taskGroup, {
|
|
1260
|
-
exact: true
|
|
1261
|
-
}).scrollIntoViewIfNeeded();
|
|
1262
|
-
await this.page.locator(`.xlr-ctx-menu-item`).getByTitle(taskGroup, {
|
|
1263
|
-
exact: true
|
|
1264
|
-
}).hover();
|
|
1265
|
-
await this.page.locator(`.xlr-ctx-menu.active`).getByTitle(taskType, {
|
|
1266
|
-
exact: true
|
|
1267
|
-
}).click();
|
|
1268
|
-
await this.phaseLocator.locator(".quick-controls-container a").getByText("Add", {
|
|
1269
|
-
exact: true
|
|
1270
|
-
}).click();
|
|
1271
|
-
}
|
|
1272
|
-
}
|
|
1273
|
-
|
|
1274
|
-
|
|
1275
|
-
|
|
1167
|
+
$b7745e89d7f5915f$exports = $b7745e89d7f5915f$var$getNative;
|
|
1276
1168
|
|
|
1277
|
-
class $dc91ece6da6cadfa$export$1533b625ec0c75e2 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1278
|
-
async goToApplicationsPage() {
|
|
1279
|
-
await this.page.goto("./#/applications");
|
|
1280
|
-
await (0, $kKeXs$playwrighttest.expect)(this.page).toHaveTitle("Applications - Digital.ai Release");
|
|
1281
|
-
return this;
|
|
1282
|
-
}
|
|
1283
|
-
async addNewApplication(applicationName) {
|
|
1284
|
-
await this.page.locator(`//button[normalize-space()='New application']`).click();
|
|
1285
|
-
await this.page.locator(`input[placeholder='Add name...']`).type(applicationName);
|
|
1286
|
-
await this.page.locator(`//button[normalize-space()='Save']`).click();
|
|
1287
|
-
return this;
|
|
1288
|
-
}
|
|
1289
|
-
async verifyApplicationisCreated(applicationName) {
|
|
1290
|
-
await this.page.waitForSelector(`div[title='${applicationName}'] strong`);
|
|
1291
|
-
return this;
|
|
1292
|
-
}
|
|
1293
|
-
async createApplicationAndLinkEnvironment(environmentName, applicationName) {
|
|
1294
|
-
await this.page.locator(`//button[normalize-space()='New application']`).click();
|
|
1295
|
-
await this.page.locator(`input[placeholder='Add name...']`).type(applicationName);
|
|
1296
|
-
await this.page.locator("input[placeholder='Filter environment name...']").type(environmentName);
|
|
1297
|
-
await this.page.locator(`div[title='${environmentName}']`).click();
|
|
1298
|
-
await this.page.locator(`//button[normalize-space()='Save']`).click();
|
|
1299
|
-
await this.page.locator("i.xl-icon.close-icon").click();
|
|
1300
|
-
return this;
|
|
1301
|
-
}
|
|
1302
|
-
}
|
|
1303
1169
|
|
|
1170
|
+
var $97bac00047c338ed$var$defineProperty = function() {
|
|
1171
|
+
try {
|
|
1172
|
+
var func = $b7745e89d7f5915f$exports(Object, "defineProperty");
|
|
1173
|
+
func({}, "", {});
|
|
1174
|
+
return func;
|
|
1175
|
+
} catch (e) {}
|
|
1176
|
+
}();
|
|
1177
|
+
$97bac00047c338ed$exports = $97bac00047c338ed$var$defineProperty;
|
|
1304
1178
|
|
|
1305
1179
|
|
|
1306
1180
|
|
|
1307
|
-
|
|
1308
|
-
|
|
1309
|
-
|
|
1310
|
-
|
|
1311
|
-
|
|
1312
|
-
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
|
|
1316
|
-
|
|
1317
|
-
|
|
1318
|
-
|
|
1319
|
-
|
|
1320
|
-
|
|
1321
|
-
}
|
|
1181
|
+
var $9x2D6 = parcelRequire("9x2D6");
|
|
1182
|
+
/**
|
|
1183
|
+
* The base implementation of `setToString` without support for hot loop shorting.
|
|
1184
|
+
*
|
|
1185
|
+
* @private
|
|
1186
|
+
* @param {Function} func The function to modify.
|
|
1187
|
+
* @param {Function} string The `toString` result.
|
|
1188
|
+
* @returns {Function} Returns `func`.
|
|
1189
|
+
*/ var $ef9aec5e693cb6ed$var$baseSetToString = !$97bac00047c338ed$exports ? $9x2D6 : function(func, string) {
|
|
1190
|
+
return $97bac00047c338ed$exports(func, "toString", {
|
|
1191
|
+
"configurable": true,
|
|
1192
|
+
"enumerable": false,
|
|
1193
|
+
"value": $3dc9802adab1dd60$exports(string),
|
|
1194
|
+
"writable": true
|
|
1195
|
+
});
|
|
1196
|
+
};
|
|
1197
|
+
$ef9aec5e693cb6ed$exports = $ef9aec5e693cb6ed$var$baseSetToString;
|
|
1322
1198
|
|
|
1323
1199
|
|
|
1324
|
-
|
|
1325
|
-
|
|
1326
|
-
|
|
1327
|
-
|
|
1328
|
-
|
|
1329
|
-
|
|
1330
|
-
|
|
1331
|
-
|
|
1332
|
-
|
|
1333
|
-
|
|
1334
|
-
|
|
1335
|
-
|
|
1336
|
-
|
|
1337
|
-
|
|
1338
|
-
|
|
1339
|
-
|
|
1340
|
-
|
|
1341
|
-
|
|
1342
|
-
|
|
1343
|
-
|
|
1344
|
-
|
|
1345
|
-
}
|
|
1200
|
+
var $f6a97849336ceea8$exports = {};
|
|
1201
|
+
/** Used to detect hot functions by number of calls within a span of milliseconds. */ var $f6a97849336ceea8$var$HOT_COUNT = 800, $f6a97849336ceea8$var$HOT_SPAN = 16;
|
|
1202
|
+
/* Built-in method references for those with the same name as other `lodash` methods. */ var $f6a97849336ceea8$var$nativeNow = Date.now;
|
|
1203
|
+
/**
|
|
1204
|
+
* Creates a function that'll short out and invoke `identity` instead
|
|
1205
|
+
* of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`
|
|
1206
|
+
* milliseconds.
|
|
1207
|
+
*
|
|
1208
|
+
* @private
|
|
1209
|
+
* @param {Function} func The function to restrict.
|
|
1210
|
+
* @returns {Function} Returns the new shortable function.
|
|
1211
|
+
*/ function $f6a97849336ceea8$var$shortOut(func) {
|
|
1212
|
+
var count = 0, lastCalled = 0;
|
|
1213
|
+
return function() {
|
|
1214
|
+
var stamp = $f6a97849336ceea8$var$nativeNow(), remaining = $f6a97849336ceea8$var$HOT_SPAN - (stamp - lastCalled);
|
|
1215
|
+
lastCalled = stamp;
|
|
1216
|
+
if (remaining > 0) {
|
|
1217
|
+
if (++count >= $f6a97849336ceea8$var$HOT_COUNT) return arguments[0];
|
|
1218
|
+
} else count = 0;
|
|
1219
|
+
return func.apply(undefined, arguments);
|
|
1220
|
+
};
|
|
1346
1221
|
}
|
|
1222
|
+
$f6a97849336ceea8$exports = $f6a97849336ceea8$var$shortOut;
|
|
1347
1223
|
|
|
1348
1224
|
|
|
1225
|
+
/**
|
|
1226
|
+
* Sets the `toString` method of `func` to return `string`.
|
|
1227
|
+
*
|
|
1228
|
+
* @private
|
|
1229
|
+
* @param {Function} func The function to modify.
|
|
1230
|
+
* @param {Function} string The `toString` result.
|
|
1231
|
+
* @returns {Function} Returns `func`.
|
|
1232
|
+
*/ var $0e9d1d7fde57dac1$var$setToString = $f6a97849336ceea8$exports($ef9aec5e693cb6ed$exports);
|
|
1233
|
+
$0e9d1d7fde57dac1$exports = $0e9d1d7fde57dac1$var$setToString;
|
|
1349
1234
|
|
|
1350
1235
|
|
|
1351
|
-
|
|
1352
|
-
|
|
1353
|
-
|
|
1354
|
-
|
|
1355
|
-
|
|
1356
|
-
|
|
1357
|
-
|
|
1358
|
-
|
|
1359
|
-
|
|
1360
|
-
async logout() {
|
|
1361
|
-
await this.page.locator("button.dot-avatar").click();
|
|
1362
|
-
await this.page.getByText("Log out").click();
|
|
1363
|
-
}
|
|
1236
|
+
/**
|
|
1237
|
+
* The base implementation of `_.rest` which doesn't validate or coerce arguments.
|
|
1238
|
+
*
|
|
1239
|
+
* @private
|
|
1240
|
+
* @param {Function} func The function to apply a rest parameter to.
|
|
1241
|
+
* @param {number} [start=func.length-1] The start position of the rest parameter.
|
|
1242
|
+
* @returns {Function} Returns the new function.
|
|
1243
|
+
*/ function $b1535b4ce0d1bd5f$var$baseRest(func, start) {
|
|
1244
|
+
return $0e9d1d7fde57dac1$exports($1b1aa0f3fc7256c9$exports(func, start, $9x2D6), func + "");
|
|
1364
1245
|
}
|
|
1246
|
+
$b1535b4ce0d1bd5f$exports = $b1535b4ce0d1bd5f$var$baseRest;
|
|
1365
1247
|
|
|
1366
1248
|
|
|
1367
|
-
var $
|
|
1249
|
+
var $ceebddaa7160689c$exports = {};
|
|
1368
1250
|
/**
|
|
1369
|
-
*
|
|
1251
|
+
* Performs a
|
|
1252
|
+
* [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
|
|
1253
|
+
* comparison between two values to determine if they are equivalent.
|
|
1370
1254
|
*
|
|
1371
1255
|
* @static
|
|
1372
|
-
* @since 0.1.0
|
|
1373
1256
|
* @memberOf _
|
|
1257
|
+
* @since 4.0.0
|
|
1374
1258
|
* @category Lang
|
|
1375
|
-
* @param {*} value The value to
|
|
1376
|
-
* @
|
|
1259
|
+
* @param {*} value The value to compare.
|
|
1260
|
+
* @param {*} other The other value to compare.
|
|
1261
|
+
* @returns {boolean} Returns `true` if the values are equivalent, else `false`.
|
|
1377
1262
|
* @example
|
|
1378
1263
|
*
|
|
1379
|
-
*
|
|
1264
|
+
* var object = { 'a': 1 };
|
|
1265
|
+
* var other = { 'a': 1 };
|
|
1266
|
+
*
|
|
1267
|
+
* _.eq(object, object);
|
|
1380
1268
|
* // => true
|
|
1381
1269
|
*
|
|
1382
|
-
* _.
|
|
1270
|
+
* _.eq(object, other);
|
|
1383
1271
|
* // => false
|
|
1384
|
-
|
|
1385
|
-
|
|
1272
|
+
*
|
|
1273
|
+
* _.eq('a', 'a');
|
|
1274
|
+
* // => true
|
|
1275
|
+
*
|
|
1276
|
+
* _.eq('a', Object('a'));
|
|
1277
|
+
* // => false
|
|
1278
|
+
*
|
|
1279
|
+
* _.eq(NaN, NaN);
|
|
1280
|
+
* // => true
|
|
1281
|
+
*/ function $ceebddaa7160689c$var$eq(value, other) {
|
|
1282
|
+
return value === other || value !== value && other !== other;
|
|
1386
1283
|
}
|
|
1387
|
-
$
|
|
1284
|
+
$ceebddaa7160689c$exports = $ceebddaa7160689c$var$eq;
|
|
1388
1285
|
|
|
1389
1286
|
|
|
1390
|
-
var $
|
|
1287
|
+
var $e084f044678f4365$exports = {};
|
|
1391
1288
|
|
|
1392
|
-
$952a2b8d8056b381$exports = (parcelRequire("ae8Uz"));
|
|
1393
1289
|
|
|
1290
|
+
var $fegcS = parcelRequire("fegcS");
|
|
1394
1291
|
|
|
1292
|
+
var $gf9YK = parcelRequire("gf9YK");
|
|
1395
1293
|
|
|
1396
|
-
var $
|
|
1397
|
-
|
|
1398
|
-
|
|
1294
|
+
var $bfk90 = parcelRequire("bfk90");
|
|
1295
|
+
/**
|
|
1296
|
+
* Checks if the given arguments are from an iteratee call.
|
|
1297
|
+
*
|
|
1298
|
+
* @private
|
|
1299
|
+
* @param {*} value The potential iteratee value argument.
|
|
1300
|
+
* @param {*} index The potential iteratee index or key argument.
|
|
1301
|
+
* @param {*} object The potential iteratee object argument.
|
|
1302
|
+
* @returns {boolean} Returns `true` if the arguments are from an iteratee call,
|
|
1303
|
+
* else `false`.
|
|
1304
|
+
*/ function $e084f044678f4365$var$isIterateeCall(value, index, object) {
|
|
1305
|
+
if (!$bfk90(object)) return false;
|
|
1306
|
+
var type = typeof index;
|
|
1307
|
+
if (type == "number" ? $fegcS(object) && $gf9YK(index, object.length) : type == "string" && index in object) return $ceebddaa7160689c$exports(object[index], value);
|
|
1308
|
+
return false;
|
|
1309
|
+
}
|
|
1310
|
+
$e084f044678f4365$exports = $e084f044678f4365$var$isIterateeCall;
|
|
1399
1311
|
|
|
1400
|
-
|
|
1401
|
-
var $
|
|
1402
|
-
|
|
1312
|
+
|
|
1313
|
+
var $0e6e2e34ec44a72a$exports = {};
|
|
1314
|
+
|
|
1315
|
+
var $gYWmw = parcelRequire("gYWmw");
|
|
1316
|
+
var $b4b8b2a977b4cc10$exports = {};
|
|
1317
|
+
|
|
1318
|
+
var $bfk90 = parcelRequire("bfk90");
|
|
1319
|
+
|
|
1320
|
+
var $cjTq2 = parcelRequire("cjTq2");
|
|
1321
|
+
var $59b6e790ee7519e4$exports = {};
|
|
1403
1322
|
/**
|
|
1404
|
-
*
|
|
1405
|
-
*
|
|
1323
|
+
* This function is like
|
|
1324
|
+
* [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)
|
|
1325
|
+
* except that it includes inherited enumerable properties.
|
|
1406
1326
|
*
|
|
1407
1327
|
* @private
|
|
1408
|
-
* @param {
|
|
1409
|
-
* @
|
|
1410
|
-
|
|
1411
|
-
|
|
1412
|
-
|
|
1413
|
-
|
|
1414
|
-
case 0:
|
|
1415
|
-
return func.call(thisArg);
|
|
1416
|
-
case 1:
|
|
1417
|
-
return func.call(thisArg, args[0]);
|
|
1418
|
-
case 2:
|
|
1419
|
-
return func.call(thisArg, args[0], args[1]);
|
|
1420
|
-
case 3:
|
|
1421
|
-
return func.call(thisArg, args[0], args[1], args[2]);
|
|
1422
|
-
}
|
|
1423
|
-
return func.apply(thisArg, args);
|
|
1328
|
+
* @param {Object} object The object to query.
|
|
1329
|
+
* @returns {Array} Returns the array of property names.
|
|
1330
|
+
*/ function $59b6e790ee7519e4$var$nativeKeysIn(object) {
|
|
1331
|
+
var result = [];
|
|
1332
|
+
if (object != null) for(var key in Object(object))result.push(key);
|
|
1333
|
+
return result;
|
|
1424
1334
|
}
|
|
1425
|
-
$
|
|
1335
|
+
$59b6e790ee7519e4$exports = $59b6e790ee7519e4$var$nativeKeysIn;
|
|
1426
1336
|
|
|
1427
1337
|
|
|
1428
|
-
|
|
1338
|
+
/** Used for built-in method references. */ var $b4b8b2a977b4cc10$var$objectProto = Object.prototype;
|
|
1339
|
+
/** Used to check objects for own properties. */ var $b4b8b2a977b4cc10$var$hasOwnProperty = $b4b8b2a977b4cc10$var$objectProto.hasOwnProperty;
|
|
1429
1340
|
/**
|
|
1430
|
-
*
|
|
1341
|
+
* The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.
|
|
1431
1342
|
*
|
|
1432
1343
|
* @private
|
|
1433
|
-
* @param {
|
|
1434
|
-
* @
|
|
1435
|
-
|
|
1436
|
-
|
|
1437
|
-
|
|
1438
|
-
|
|
1439
|
-
return
|
|
1440
|
-
|
|
1441
|
-
|
|
1442
|
-
|
|
1443
|
-
|
|
1444
|
-
|
|
1445
|
-
|
|
1446
|
-
|
|
1447
|
-
|
|
1344
|
+
* @param {Object} object The object to query.
|
|
1345
|
+
* @returns {Array} Returns the array of property names.
|
|
1346
|
+
*/ function $b4b8b2a977b4cc10$var$baseKeysIn(object) {
|
|
1347
|
+
if (!$bfk90(object)) return $59b6e790ee7519e4$exports(object);
|
|
1348
|
+
var isProto = $cjTq2(object), result = [];
|
|
1349
|
+
for(var key in object)if (!(key == "constructor" && (isProto || !$b4b8b2a977b4cc10$var$hasOwnProperty.call(object, key)))) result.push(key);
|
|
1350
|
+
return result;
|
|
1351
|
+
}
|
|
1352
|
+
$b4b8b2a977b4cc10$exports = $b4b8b2a977b4cc10$var$baseKeysIn;
|
|
1353
|
+
|
|
1354
|
+
|
|
1355
|
+
|
|
1356
|
+
var $fegcS = parcelRequire("fegcS");
|
|
1357
|
+
/**
|
|
1358
|
+
* Creates an array of the own and inherited enumerable property names of `object`.
|
|
1359
|
+
*
|
|
1360
|
+
* **Note:** Non-object values are coerced to objects.
|
|
1361
|
+
*
|
|
1362
|
+
* @static
|
|
1363
|
+
* @memberOf _
|
|
1364
|
+
* @since 3.0.0
|
|
1365
|
+
* @category Object
|
|
1366
|
+
* @param {Object} object The object to query.
|
|
1367
|
+
* @returns {Array} Returns the array of property names.
|
|
1368
|
+
* @example
|
|
1369
|
+
*
|
|
1370
|
+
* function Foo() {
|
|
1371
|
+
* this.a = 1;
|
|
1372
|
+
* this.b = 2;
|
|
1373
|
+
* }
|
|
1374
|
+
*
|
|
1375
|
+
* Foo.prototype.c = 3;
|
|
1376
|
+
*
|
|
1377
|
+
* _.keysIn(new Foo);
|
|
1378
|
+
* // => ['a', 'b', 'c'] (iteration order is not guaranteed)
|
|
1379
|
+
*/ function $0e6e2e34ec44a72a$var$keysIn(object) {
|
|
1380
|
+
return $fegcS(object) ? $gYWmw(object, true) : $b4b8b2a977b4cc10$exports(object);
|
|
1381
|
+
}
|
|
1382
|
+
$0e6e2e34ec44a72a$exports = $0e6e2e34ec44a72a$var$keysIn;
|
|
1383
|
+
|
|
1384
|
+
|
|
1385
|
+
/** Used for built-in method references. */ var $732eba8dca8b5420$var$objectProto = Object.prototype;
|
|
1386
|
+
/** Used to check objects for own properties. */ var $732eba8dca8b5420$var$hasOwnProperty = $732eba8dca8b5420$var$objectProto.hasOwnProperty;
|
|
1387
|
+
/**
|
|
1388
|
+
* Assigns own and inherited enumerable string keyed properties of source
|
|
1389
|
+
* objects to the destination object for all destination properties that
|
|
1390
|
+
* resolve to `undefined`. Source objects are applied from left to right.
|
|
1391
|
+
* Once a property is set, additional values of the same property are ignored.
|
|
1392
|
+
*
|
|
1393
|
+
* **Note:** This method mutates `object`.
|
|
1394
|
+
*
|
|
1395
|
+
* @static
|
|
1396
|
+
* @since 0.1.0
|
|
1397
|
+
* @memberOf _
|
|
1398
|
+
* @category Object
|
|
1399
|
+
* @param {Object} object The destination object.
|
|
1400
|
+
* @param {...Object} [sources] The source objects.
|
|
1401
|
+
* @returns {Object} Returns `object`.
|
|
1402
|
+
* @see _.defaultsDeep
|
|
1403
|
+
* @example
|
|
1404
|
+
*
|
|
1405
|
+
* _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });
|
|
1406
|
+
* // => { 'a': 1, 'b': 2 }
|
|
1407
|
+
*/ var $732eba8dca8b5420$var$defaults = $b1535b4ce0d1bd5f$exports(function(object, sources) {
|
|
1408
|
+
object = Object(object);
|
|
1409
|
+
var index = -1;
|
|
1410
|
+
var length = sources.length;
|
|
1411
|
+
var guard = length > 2 ? sources[2] : undefined;
|
|
1412
|
+
if (guard && $e084f044678f4365$exports(sources[0], sources[1], guard)) length = 1;
|
|
1413
|
+
while(++index < length){
|
|
1414
|
+
var source = sources[index];
|
|
1415
|
+
var props = $0e6e2e34ec44a72a$exports(source);
|
|
1416
|
+
var propsIndex = -1;
|
|
1417
|
+
var propsLength = props.length;
|
|
1418
|
+
while(++propsIndex < propsLength){
|
|
1419
|
+
var key = props[propsIndex];
|
|
1420
|
+
var value = object[key];
|
|
1421
|
+
if (value === undefined || $ceebddaa7160689c$exports(value, $732eba8dca8b5420$var$objectProto[key]) && !$732eba8dca8b5420$var$hasOwnProperty.call(object, key)) object[key] = source[key];
|
|
1422
|
+
}
|
|
1423
|
+
}
|
|
1424
|
+
return object;
|
|
1425
|
+
});
|
|
1426
|
+
$732eba8dca8b5420$exports = $732eba8dca8b5420$var$defaults;
|
|
1427
|
+
|
|
1428
|
+
|
|
1429
|
+
var $f51969c4a7467fa0$exports = {};
|
|
1430
|
+
var $acbd35b1cbbf33e4$exports = {};
|
|
1431
|
+
var $34482bf0fdb87aa6$exports = {};
|
|
1432
|
+
var $c258ac491a64b22b$exports = {};
|
|
1433
|
+
/**
|
|
1434
|
+
* A specialized version of `_.map` for arrays without support for iteratee
|
|
1435
|
+
* shorthands.
|
|
1436
|
+
*
|
|
1437
|
+
* @private
|
|
1438
|
+
* @param {Array} [array] The array to iterate over.
|
|
1439
|
+
* @param {Function} iteratee The function invoked per iteration.
|
|
1440
|
+
* @returns {Array} Returns the new mapped array.
|
|
1441
|
+
*/ function $c258ac491a64b22b$var$arrayMap(array, iteratee) {
|
|
1442
|
+
var index = -1, length = array == null ? 0 : array.length, result = Array(length);
|
|
1443
|
+
while(++index < length)result[index] = iteratee(array[index], index, array);
|
|
1444
|
+
return result;
|
|
1448
1445
|
}
|
|
1449
|
-
$
|
|
1446
|
+
$c258ac491a64b22b$exports = $c258ac491a64b22b$var$arrayMap;
|
|
1450
1447
|
|
|
1451
1448
|
|
|
1452
|
-
var $0e9d1d7fde57dac1$exports = {};
|
|
1453
|
-
var $ef9aec5e693cb6ed$exports = {};
|
|
1454
|
-
var $3dc9802adab1dd60$exports = {};
|
|
1455
1449
|
/**
|
|
1456
|
-
*
|
|
1457
|
-
*
|
|
1458
|
-
* @static
|
|
1459
|
-
* @memberOf _
|
|
1460
|
-
* @since 2.4.0
|
|
1461
|
-
* @category Util
|
|
1462
|
-
* @param {*} value The value to return from the new function.
|
|
1463
|
-
* @returns {Function} Returns the new constant function.
|
|
1464
|
-
* @example
|
|
1465
|
-
*
|
|
1466
|
-
* var objects = _.times(2, _.constant({ 'a': 1 }));
|
|
1467
|
-
*
|
|
1468
|
-
* console.log(objects);
|
|
1469
|
-
* // => [{ 'a': 1 }, { 'a': 1 }]
|
|
1450
|
+
* The base implementation of `_.toPairs` and `_.toPairsIn` which creates an array
|
|
1451
|
+
* of key-value pairs for `object` corresponding to the property names of `props`.
|
|
1470
1452
|
*
|
|
1471
|
-
*
|
|
1472
|
-
*
|
|
1473
|
-
|
|
1474
|
-
|
|
1475
|
-
|
|
1476
|
-
|
|
1453
|
+
* @private
|
|
1454
|
+
* @param {Object} object The object to query.
|
|
1455
|
+
* @param {Array} props The property names to get values for.
|
|
1456
|
+
* @returns {Object} Returns the key-value pairs.
|
|
1457
|
+
*/ function $34482bf0fdb87aa6$var$baseToPairs(object, props) {
|
|
1458
|
+
return $c258ac491a64b22b$exports(props, function(key) {
|
|
1459
|
+
return [
|
|
1460
|
+
key,
|
|
1461
|
+
object[key]
|
|
1462
|
+
];
|
|
1463
|
+
});
|
|
1477
1464
|
}
|
|
1478
|
-
$
|
|
1465
|
+
$34482bf0fdb87aa6$exports = $34482bf0fdb87aa6$var$baseToPairs;
|
|
1479
1466
|
|
|
1480
1467
|
|
|
1481
|
-
var $
|
|
1482
|
-
var $
|
|
1483
|
-
var $927414f7f9d8afbb$exports = {};
|
|
1468
|
+
var $2184c74fd3b50571$exports = {};
|
|
1469
|
+
var $9707ed10f1d74f7d$exports = {};
|
|
1484
1470
|
|
|
1485
|
-
var $7T6pQ = parcelRequire("7T6pQ");
|
|
1486
|
-
var $1fb1799a04ee25ea$exports = {};
|
|
1487
|
-
var $5ee1230bf1668e2a$exports = {};
|
|
1488
1471
|
|
|
1489
1472
|
var $5iYlB = parcelRequire("5iYlB");
|
|
1490
|
-
|
|
1491
|
-
$
|
|
1473
|
+
/* Built-in method references that are verified to be native. */ var $9707ed10f1d74f7d$var$DataView = $b7745e89d7f5915f$exports($5iYlB, "DataView");
|
|
1474
|
+
$9707ed10f1d74f7d$exports = $9707ed10f1d74f7d$var$DataView;
|
|
1492
1475
|
|
|
1493
1476
|
|
|
1494
|
-
|
|
1495
|
-
var uid = /[^.]+$/.exec($5ee1230bf1668e2a$exports && $5ee1230bf1668e2a$exports.keys && $5ee1230bf1668e2a$exports.keys.IE_PROTO || "");
|
|
1496
|
-
return uid ? "Symbol(src)_1." + uid : "";
|
|
1497
|
-
}();
|
|
1498
|
-
/**
|
|
1499
|
-
* Checks if `func` has its source masked.
|
|
1500
|
-
*
|
|
1501
|
-
* @private
|
|
1502
|
-
* @param {Function} func The function to check.
|
|
1503
|
-
* @returns {boolean} Returns `true` if `func` is masked, else `false`.
|
|
1504
|
-
*/ function $1fb1799a04ee25ea$var$isMasked(func) {
|
|
1505
|
-
return !!$1fb1799a04ee25ea$var$maskSrcKey && $1fb1799a04ee25ea$var$maskSrcKey in func;
|
|
1506
|
-
}
|
|
1507
|
-
$1fb1799a04ee25ea$exports = $1fb1799a04ee25ea$var$isMasked;
|
|
1477
|
+
var $8c4ecd35968046d6$exports = {};
|
|
1508
1478
|
|
|
1509
1479
|
|
|
1480
|
+
var $5iYlB = parcelRequire("5iYlB");
|
|
1481
|
+
/* Built-in method references that are verified to be native. */ var $8c4ecd35968046d6$var$Map = $b7745e89d7f5915f$exports($5iYlB, "Map");
|
|
1482
|
+
$8c4ecd35968046d6$exports = $8c4ecd35968046d6$var$Map;
|
|
1510
1483
|
|
|
1511
|
-
var $bfk90 = parcelRequire("bfk90");
|
|
1512
|
-
var $c6de24274df36d4e$exports = {};
|
|
1513
|
-
/** Used for built-in method references. */ var $c6de24274df36d4e$var$funcProto = Function.prototype;
|
|
1514
|
-
/** Used to resolve the decompiled source of functions. */ var $c6de24274df36d4e$var$funcToString = $c6de24274df36d4e$var$funcProto.toString;
|
|
1515
|
-
/**
|
|
1516
|
-
* Converts `func` to its source code.
|
|
1517
|
-
*
|
|
1518
|
-
* @private
|
|
1519
|
-
* @param {Function} func The function to convert.
|
|
1520
|
-
* @returns {string} Returns the source code.
|
|
1521
|
-
*/ function $c6de24274df36d4e$var$toSource(func) {
|
|
1522
|
-
if (func != null) {
|
|
1523
|
-
try {
|
|
1524
|
-
return $c6de24274df36d4e$var$funcToString.call(func);
|
|
1525
|
-
} catch (e) {}
|
|
1526
|
-
try {
|
|
1527
|
-
return func + "";
|
|
1528
|
-
} catch (e) {}
|
|
1529
|
-
}
|
|
1530
|
-
return "";
|
|
1531
|
-
}
|
|
1532
|
-
$c6de24274df36d4e$exports = $c6de24274df36d4e$var$toSource;
|
|
1533
1484
|
|
|
1485
|
+
var $30f4d64ddd8effd1$exports = {};
|
|
1534
1486
|
|
|
1535
|
-
/**
|
|
1536
|
-
* Used to match `RegExp`
|
|
1537
|
-
* [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).
|
|
1538
|
-
*/ var $927414f7f9d8afbb$var$reRegExpChar = /[\\^$.*+?()[\]{}|]/g;
|
|
1539
|
-
/** Used to detect host constructors (Safari). */ var $927414f7f9d8afbb$var$reIsHostCtor = /^\[object .+?Constructor\]$/;
|
|
1540
|
-
/** Used for built-in method references. */ var $927414f7f9d8afbb$var$funcProto = Function.prototype, $927414f7f9d8afbb$var$objectProto = Object.prototype;
|
|
1541
|
-
/** Used to resolve the decompiled source of functions. */ var $927414f7f9d8afbb$var$funcToString = $927414f7f9d8afbb$var$funcProto.toString;
|
|
1542
|
-
/** Used to check objects for own properties. */ var $927414f7f9d8afbb$var$hasOwnProperty = $927414f7f9d8afbb$var$objectProto.hasOwnProperty;
|
|
1543
|
-
/** Used to detect if a method is native. */ var $927414f7f9d8afbb$var$reIsNative = RegExp("^" + $927414f7f9d8afbb$var$funcToString.call($927414f7f9d8afbb$var$hasOwnProperty).replace($927414f7f9d8afbb$var$reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$");
|
|
1544
|
-
/**
|
|
1545
|
-
* The base implementation of `_.isNative` without bad shim checks.
|
|
1546
|
-
*
|
|
1547
|
-
* @private
|
|
1548
|
-
* @param {*} value The value to check.
|
|
1549
|
-
* @returns {boolean} Returns `true` if `value` is a native function,
|
|
1550
|
-
* else `false`.
|
|
1551
|
-
*/ function $927414f7f9d8afbb$var$baseIsNative(value) {
|
|
1552
|
-
if (!$bfk90(value) || $1fb1799a04ee25ea$exports(value)) return false;
|
|
1553
|
-
var pattern = $7T6pQ(value) ? $927414f7f9d8afbb$var$reIsNative : $927414f7f9d8afbb$var$reIsHostCtor;
|
|
1554
|
-
return pattern.test($c6de24274df36d4e$exports(value));
|
|
1555
|
-
}
|
|
1556
|
-
$927414f7f9d8afbb$exports = $927414f7f9d8afbb$var$baseIsNative;
|
|
1557
1487
|
|
|
1488
|
+
var $5iYlB = parcelRequire("5iYlB");
|
|
1489
|
+
/* Built-in method references that are verified to be native. */ var $30f4d64ddd8effd1$var$Promise = $b7745e89d7f5915f$exports($5iYlB, "Promise");
|
|
1490
|
+
$30f4d64ddd8effd1$exports = $30f4d64ddd8effd1$var$Promise;
|
|
1558
1491
|
|
|
1559
|
-
var $18378a7c2aff899b$exports = {};
|
|
1560
|
-
/**
|
|
1561
|
-
* Gets the value at `key` of `object`.
|
|
1562
|
-
*
|
|
1563
|
-
* @private
|
|
1564
|
-
* @param {Object} [object] The object to query.
|
|
1565
|
-
* @param {string} key The key of the property to get.
|
|
1566
|
-
* @returns {*} Returns the property value.
|
|
1567
|
-
*/ function $18378a7c2aff899b$var$getValue(object, key) {
|
|
1568
|
-
return object == null ? undefined : object[key];
|
|
1569
|
-
}
|
|
1570
|
-
$18378a7c2aff899b$exports = $18378a7c2aff899b$var$getValue;
|
|
1571
1492
|
|
|
1493
|
+
var $869474d4b330cc35$exports = {};
|
|
1572
1494
|
|
|
1573
|
-
/**
|
|
1574
|
-
* Gets the native function at `key` of `object`.
|
|
1575
|
-
*
|
|
1576
|
-
* @private
|
|
1577
|
-
* @param {Object} object The object to query.
|
|
1578
|
-
* @param {string} key The key of the method to get.
|
|
1579
|
-
* @returns {*} Returns the function if it's native, else `undefined`.
|
|
1580
|
-
*/ function $b7745e89d7f5915f$var$getNative(object, key) {
|
|
1581
|
-
var value = $18378a7c2aff899b$exports(object, key);
|
|
1582
|
-
return $927414f7f9d8afbb$exports(value) ? value : undefined;
|
|
1583
|
-
}
|
|
1584
|
-
$b7745e89d7f5915f$exports = $b7745e89d7f5915f$var$getNative;
|
|
1585
1495
|
|
|
1496
|
+
var $5iYlB = parcelRequire("5iYlB");
|
|
1497
|
+
/* Built-in method references that are verified to be native. */ var $869474d4b330cc35$var$Set = $b7745e89d7f5915f$exports($5iYlB, "Set");
|
|
1498
|
+
$869474d4b330cc35$exports = $869474d4b330cc35$var$Set;
|
|
1586
1499
|
|
|
1587
|
-
var $97bac00047c338ed$var$defineProperty = function() {
|
|
1588
|
-
try {
|
|
1589
|
-
var func = $b7745e89d7f5915f$exports(Object, "defineProperty");
|
|
1590
|
-
func({}, "", {});
|
|
1591
|
-
return func;
|
|
1592
|
-
} catch (e) {}
|
|
1593
|
-
}();
|
|
1594
|
-
$97bac00047c338ed$exports = $97bac00047c338ed$var$defineProperty;
|
|
1595
1500
|
|
|
1501
|
+
var $c4df061ad36170d9$exports = {};
|
|
1596
1502
|
|
|
1597
1503
|
|
|
1598
|
-
var $
|
|
1504
|
+
var $5iYlB = parcelRequire("5iYlB");
|
|
1505
|
+
/* Built-in method references that are verified to be native. */ var $c4df061ad36170d9$var$WeakMap = $b7745e89d7f5915f$exports($5iYlB, "WeakMap");
|
|
1506
|
+
$c4df061ad36170d9$exports = $c4df061ad36170d9$var$WeakMap;
|
|
1507
|
+
|
|
1508
|
+
|
|
1509
|
+
|
|
1510
|
+
var $hi3Ib = parcelRequire("hi3Ib");
|
|
1511
|
+
|
|
1512
|
+
/** `Object#toString` result references. */ var $2184c74fd3b50571$var$mapTag = "[object Map]", $2184c74fd3b50571$var$objectTag = "[object Object]", $2184c74fd3b50571$var$promiseTag = "[object Promise]", $2184c74fd3b50571$var$setTag = "[object Set]", $2184c74fd3b50571$var$weakMapTag = "[object WeakMap]";
|
|
1513
|
+
var $2184c74fd3b50571$var$dataViewTag = "[object DataView]";
|
|
1514
|
+
/** Used to detect maps, sets, and weakmaps. */ var $2184c74fd3b50571$var$dataViewCtorString = $c6de24274df36d4e$exports($9707ed10f1d74f7d$exports), $2184c74fd3b50571$var$mapCtorString = $c6de24274df36d4e$exports($8c4ecd35968046d6$exports), $2184c74fd3b50571$var$promiseCtorString = $c6de24274df36d4e$exports($30f4d64ddd8effd1$exports), $2184c74fd3b50571$var$setCtorString = $c6de24274df36d4e$exports($869474d4b330cc35$exports), $2184c74fd3b50571$var$weakMapCtorString = $c6de24274df36d4e$exports($c4df061ad36170d9$exports);
|
|
1599
1515
|
/**
|
|
1600
|
-
*
|
|
1516
|
+
* Gets the `toStringTag` of `value`.
|
|
1601
1517
|
*
|
|
1602
1518
|
* @private
|
|
1603
|
-
* @param {
|
|
1604
|
-
* @
|
|
1605
|
-
|
|
1606
|
-
|
|
1607
|
-
|
|
1608
|
-
|
|
1609
|
-
|
|
1610
|
-
|
|
1611
|
-
|
|
1612
|
-
|
|
1519
|
+
* @param {*} value The value to query.
|
|
1520
|
+
* @returns {string} Returns the `toStringTag`.
|
|
1521
|
+
*/ var $2184c74fd3b50571$var$getTag = $hi3Ib;
|
|
1522
|
+
// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.
|
|
1523
|
+
if ($9707ed10f1d74f7d$exports && $2184c74fd3b50571$var$getTag(new $9707ed10f1d74f7d$exports(new ArrayBuffer(1))) != $2184c74fd3b50571$var$dataViewTag || $8c4ecd35968046d6$exports && $2184c74fd3b50571$var$getTag(new $8c4ecd35968046d6$exports) != $2184c74fd3b50571$var$mapTag || $30f4d64ddd8effd1$exports && $2184c74fd3b50571$var$getTag($30f4d64ddd8effd1$exports.resolve()) != $2184c74fd3b50571$var$promiseTag || $869474d4b330cc35$exports && $2184c74fd3b50571$var$getTag(new $869474d4b330cc35$exports) != $2184c74fd3b50571$var$setTag || $c4df061ad36170d9$exports && $2184c74fd3b50571$var$getTag(new $c4df061ad36170d9$exports) != $2184c74fd3b50571$var$weakMapTag) $2184c74fd3b50571$var$getTag = function(value) {
|
|
1524
|
+
var result = $hi3Ib(value), Ctor = result == $2184c74fd3b50571$var$objectTag ? value.constructor : undefined, ctorString = Ctor ? $c6de24274df36d4e$exports(Ctor) : "";
|
|
1525
|
+
if (ctorString) switch(ctorString){
|
|
1526
|
+
case $2184c74fd3b50571$var$dataViewCtorString:
|
|
1527
|
+
return $2184c74fd3b50571$var$dataViewTag;
|
|
1528
|
+
case $2184c74fd3b50571$var$mapCtorString:
|
|
1529
|
+
return $2184c74fd3b50571$var$mapTag;
|
|
1530
|
+
case $2184c74fd3b50571$var$promiseCtorString:
|
|
1531
|
+
return $2184c74fd3b50571$var$promiseTag;
|
|
1532
|
+
case $2184c74fd3b50571$var$setCtorString:
|
|
1533
|
+
return $2184c74fd3b50571$var$setTag;
|
|
1534
|
+
case $2184c74fd3b50571$var$weakMapCtorString:
|
|
1535
|
+
return $2184c74fd3b50571$var$weakMapTag;
|
|
1536
|
+
}
|
|
1537
|
+
return result;
|
|
1613
1538
|
};
|
|
1614
|
-
$
|
|
1539
|
+
$2184c74fd3b50571$exports = $2184c74fd3b50571$var$getTag;
|
|
1615
1540
|
|
|
1616
1541
|
|
|
1617
|
-
var $
|
|
1618
|
-
/** Used to detect hot functions by number of calls within a span of milliseconds. */ var $f6a97849336ceea8$var$HOT_COUNT = 800, $f6a97849336ceea8$var$HOT_SPAN = 16;
|
|
1619
|
-
/* Built-in method references for those with the same name as other `lodash` methods. */ var $f6a97849336ceea8$var$nativeNow = Date.now;
|
|
1542
|
+
var $5cfa9b34443304aa$exports = {};
|
|
1620
1543
|
/**
|
|
1621
|
-
*
|
|
1622
|
-
* of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`
|
|
1623
|
-
* milliseconds.
|
|
1544
|
+
* Converts `map` to its key-value pairs.
|
|
1624
1545
|
*
|
|
1625
1546
|
* @private
|
|
1626
|
-
* @param {
|
|
1627
|
-
* @returns {
|
|
1628
|
-
*/ function $
|
|
1629
|
-
var
|
|
1630
|
-
|
|
1631
|
-
|
|
1632
|
-
|
|
1633
|
-
|
|
1634
|
-
|
|
1635
|
-
|
|
1636
|
-
|
|
1637
|
-
};
|
|
1547
|
+
* @param {Object} map The map to convert.
|
|
1548
|
+
* @returns {Array} Returns the key-value pairs.
|
|
1549
|
+
*/ function $5cfa9b34443304aa$var$mapToArray(map) {
|
|
1550
|
+
var index = -1, result = Array(map.size);
|
|
1551
|
+
map.forEach(function(value, key) {
|
|
1552
|
+
result[++index] = [
|
|
1553
|
+
key,
|
|
1554
|
+
value
|
|
1555
|
+
];
|
|
1556
|
+
});
|
|
1557
|
+
return result;
|
|
1638
1558
|
}
|
|
1639
|
-
$
|
|
1559
|
+
$5cfa9b34443304aa$exports = $5cfa9b34443304aa$var$mapToArray;
|
|
1640
1560
|
|
|
1641
1561
|
|
|
1562
|
+
var $e0efec8f59f2b46b$exports = {};
|
|
1642
1563
|
/**
|
|
1643
|
-
*
|
|
1564
|
+
* Converts `set` to its value-value pairs.
|
|
1644
1565
|
*
|
|
1645
1566
|
* @private
|
|
1646
|
-
* @param {
|
|
1647
|
-
* @
|
|
1648
|
-
|
|
1649
|
-
|
|
1650
|
-
|
|
1567
|
+
* @param {Object} set The set to convert.
|
|
1568
|
+
* @returns {Array} Returns the value-value pairs.
|
|
1569
|
+
*/ function $e0efec8f59f2b46b$var$setToPairs(set) {
|
|
1570
|
+
var index = -1, result = Array(set.size);
|
|
1571
|
+
set.forEach(function(value) {
|
|
1572
|
+
result[++index] = [
|
|
1573
|
+
value,
|
|
1574
|
+
value
|
|
1575
|
+
];
|
|
1576
|
+
});
|
|
1577
|
+
return result;
|
|
1578
|
+
}
|
|
1579
|
+
$e0efec8f59f2b46b$exports = $e0efec8f59f2b46b$var$setToPairs;
|
|
1651
1580
|
|
|
1652
1581
|
|
|
1582
|
+
/** `Object#toString` result references. */ var $acbd35b1cbbf33e4$var$mapTag = "[object Map]", $acbd35b1cbbf33e4$var$setTag = "[object Set]";
|
|
1653
1583
|
/**
|
|
1654
|
-
*
|
|
1584
|
+
* Creates a `_.toPairs` or `_.toPairsIn` function.
|
|
1655
1585
|
*
|
|
1656
1586
|
* @private
|
|
1657
|
-
* @param {Function}
|
|
1658
|
-
* @
|
|
1659
|
-
|
|
1660
|
-
|
|
1661
|
-
|
|
1587
|
+
* @param {Function} keysFunc The function to get the keys of a given object.
|
|
1588
|
+
* @returns {Function} Returns the new pairs function.
|
|
1589
|
+
*/ function $acbd35b1cbbf33e4$var$createToPairs(keysFunc) {
|
|
1590
|
+
return function(object) {
|
|
1591
|
+
var tag = $2184c74fd3b50571$exports(object);
|
|
1592
|
+
if (tag == $acbd35b1cbbf33e4$var$mapTag) return $5cfa9b34443304aa$exports(object);
|
|
1593
|
+
if (tag == $acbd35b1cbbf33e4$var$setTag) return $e0efec8f59f2b46b$exports(object);
|
|
1594
|
+
return $34482bf0fdb87aa6$exports(object, keysFunc(object));
|
|
1595
|
+
};
|
|
1662
1596
|
}
|
|
1663
|
-
$
|
|
1597
|
+
$acbd35b1cbbf33e4$exports = $acbd35b1cbbf33e4$var$createToPairs;
|
|
1664
1598
|
|
|
1665
1599
|
|
|
1666
|
-
|
|
1600
|
+
|
|
1601
|
+
var $bqLSx = parcelRequire("bqLSx");
|
|
1667
1602
|
/**
|
|
1668
|
-
*
|
|
1669
|
-
*
|
|
1670
|
-
*
|
|
1603
|
+
* Creates an array of own enumerable string keyed-value pairs for `object`
|
|
1604
|
+
* which can be consumed by `_.fromPairs`. If `object` is a map or set, its
|
|
1605
|
+
* entries are returned.
|
|
1671
1606
|
*
|
|
1672
1607
|
* @static
|
|
1673
1608
|
* @memberOf _
|
|
1674
1609
|
* @since 4.0.0
|
|
1675
|
-
* @
|
|
1676
|
-
* @
|
|
1677
|
-
* @param {
|
|
1678
|
-
* @returns {
|
|
1610
|
+
* @alias entries
|
|
1611
|
+
* @category Object
|
|
1612
|
+
* @param {Object} object The object to query.
|
|
1613
|
+
* @returns {Array} Returns the key-value pairs.
|
|
1679
1614
|
* @example
|
|
1680
1615
|
*
|
|
1681
|
-
*
|
|
1682
|
-
*
|
|
1683
|
-
*
|
|
1684
|
-
*
|
|
1685
|
-
* // => true
|
|
1686
|
-
*
|
|
1687
|
-
* _.eq(object, other);
|
|
1688
|
-
* // => false
|
|
1689
|
-
*
|
|
1690
|
-
* _.eq('a', 'a');
|
|
1691
|
-
* // => true
|
|
1616
|
+
* function Foo() {
|
|
1617
|
+
* this.a = 1;
|
|
1618
|
+
* this.b = 2;
|
|
1619
|
+
* }
|
|
1692
1620
|
*
|
|
1693
|
-
*
|
|
1694
|
-
* // => false
|
|
1621
|
+
* Foo.prototype.c = 3;
|
|
1695
1622
|
*
|
|
1696
|
-
* _.
|
|
1697
|
-
* // =>
|
|
1698
|
-
*/
|
|
1699
|
-
|
|
1700
|
-
}
|
|
1701
|
-
$ceebddaa7160689c$exports = $ceebddaa7160689c$var$eq;
|
|
1702
|
-
|
|
1623
|
+
* _.toPairs(new Foo);
|
|
1624
|
+
* // => [['a', 1], ['b', 2]] (iteration order is not guaranteed)
|
|
1625
|
+
*/ var $f51969c4a7467fa0$var$toPairs = $acbd35b1cbbf33e4$exports($bqLSx);
|
|
1626
|
+
$f51969c4a7467fa0$exports = $f51969c4a7467fa0$var$toPairs;
|
|
1703
1627
|
|
|
1704
|
-
var $e084f044678f4365$exports = {};
|
|
1705
1628
|
|
|
1629
|
+
const $8977f8672c5de0fa$export$45f0aca2596a2bb3 = function() {
|
|
1630
|
+
const RELEASE_TYPE = "xlrelease.Release";
|
|
1631
|
+
const PHASE_TYPE = "xlrelease.Phase";
|
|
1632
|
+
const TEAM_TYPE = "xlrelease.Team";
|
|
1633
|
+
const TASK_TYPE = "xlrelease.Task";
|
|
1634
|
+
const COMMENT_TYPE = "xlrelease.Comment";
|
|
1635
|
+
const CONDITION_TYPE = "xlrelease.GateCondition";
|
|
1636
|
+
const DEPENDENCY_TYPE = "xlrelease.Dependency";
|
|
1637
|
+
const LINK_TYPE = "xlrelease.Link";
|
|
1638
|
+
const ATTACHMENT_TYPE = "xlrelease.Attachment";
|
|
1639
|
+
const DASHBOARD_TYPE = "xlrelease.Dashboard";
|
|
1640
|
+
const _TRIGGER_TYPE = "xlrelease.ReleaseTrigger";
|
|
1641
|
+
const JIRA_TYPE = "jira.CreateIssue";
|
|
1642
|
+
const DEFAULT_TASK_OWNER = "Itchy";
|
|
1643
|
+
const processTasks = (task, container, index)=>{
|
|
1644
|
+
if ((0, (/*@__PURE__*/$parcel$interopDefault($3e8b520187e41aa6$exports)))(task.type)) task.type = TASK_TYPE;
|
|
1645
|
+
task.id = task.id || `${container.id}/Task${index}`;
|
|
1646
|
+
if ((0, (/*@__PURE__*/$parcel$interopDefault($3e8b520187e41aa6$exports)))(task.owner) && task.type !== JIRA_TYPE) task.owner = DEFAULT_TASK_OWNER;
|
|
1647
|
+
if (task.owner === null) delete task.owner;
|
|
1648
|
+
(0, (/*@__PURE__*/$parcel$interopDefault($952a2b8d8056b381$exports)))(task.conditions, function(condition, idx) {
|
|
1649
|
+
condition.type = CONDITION_TYPE;
|
|
1650
|
+
condition.id = `${task.id}/GateCondition${idx}`;
|
|
1651
|
+
});
|
|
1652
|
+
(0, (/*@__PURE__*/$parcel$interopDefault($952a2b8d8056b381$exports)))(task.dependencies, function(dependency, idx) {
|
|
1653
|
+
dependency.type = DEPENDENCY_TYPE;
|
|
1654
|
+
dependency.id = `${task.id}/Dependency${idx}`;
|
|
1655
|
+
});
|
|
1656
|
+
(0, (/*@__PURE__*/$parcel$interopDefault($952a2b8d8056b381$exports)))(task.links, function(link, idx) {
|
|
1657
|
+
link.type = LINK_TYPE;
|
|
1658
|
+
link.id = `${task.id}/Link${idx}`;
|
|
1659
|
+
});
|
|
1660
|
+
(0, (/*@__PURE__*/$parcel$interopDefault($952a2b8d8056b381$exports)))(task.comments, function(comment, idx) {
|
|
1661
|
+
comment.type = COMMENT_TYPE;
|
|
1662
|
+
comment.id = `${task.id}/Comment${idx}`;
|
|
1663
|
+
});
|
|
1664
|
+
(0, (/*@__PURE__*/$parcel$interopDefault($952a2b8d8056b381$exports)))(task.tasks, function(subTask, idx) {
|
|
1665
|
+
processTasks(subTask, task, idx);
|
|
1666
|
+
});
|
|
1667
|
+
(0, (/*@__PURE__*/$parcel$interopDefault($952a2b8d8056b381$exports)))(task.templateVariables, function(variable, idx) {
|
|
1668
|
+
(0, (/*@__PURE__*/$parcel$interopDefault($732eba8dca8b5420$exports)))(variable, getVariableEntity(variable.value, variable.key, task.id, idx));
|
|
1669
|
+
});
|
|
1670
|
+
(0, (/*@__PURE__*/$parcel$interopDefault($952a2b8d8056b381$exports)))(task.attachments, function(attachment, idx) {
|
|
1671
|
+
attachment.type = ATTACHMENT_TYPE;
|
|
1672
|
+
attachment.id = `${task.id}/Attachment${idx}`;
|
|
1673
|
+
});
|
|
1674
|
+
if (task.pythonScript) {
|
|
1675
|
+
const pythonScript = task.pythonScript;
|
|
1676
|
+
pythonScript.id = `${task.id}/PythonScript`;
|
|
1677
|
+
pythonScript.customScriptTask = task.id;
|
|
1678
|
+
}
|
|
1679
|
+
};
|
|
1680
|
+
const processPhases = (phase, release, index)=>{
|
|
1681
|
+
phase.type = PHASE_TYPE;
|
|
1682
|
+
phase.id = `${release.id}/Phase${index}`;
|
|
1683
|
+
(0, (/*@__PURE__*/$parcel$interopDefault($ae8Uz)))(phase.tasks, (task, idx)=>{
|
|
1684
|
+
processTasks(task, phase, idx);
|
|
1685
|
+
});
|
|
1686
|
+
};
|
|
1687
|
+
const getVariableEntity = (value, key, containerId, index, password)=>{
|
|
1688
|
+
const keyNoSyntax = key.replace("${", "").replace("}", "");
|
|
1689
|
+
return {
|
|
1690
|
+
id: `${containerId}/Variable${index}`,
|
|
1691
|
+
key: keyNoSyntax,
|
|
1692
|
+
requiresValue: true,
|
|
1693
|
+
showOnReleaseStart: true,
|
|
1694
|
+
type: password ? "xlrelease.PasswordStringVariable" : "xlrelease.StringVariable",
|
|
1695
|
+
value: value
|
|
1696
|
+
};
|
|
1697
|
+
};
|
|
1698
|
+
const getValueProviderConfigurationEntity = function(containerId) {
|
|
1699
|
+
return {
|
|
1700
|
+
id: `${containerId}/valueProvider`,
|
|
1701
|
+
variable: containerId
|
|
1702
|
+
};
|
|
1703
|
+
};
|
|
1704
|
+
const getDashboardExtension = (dashboard, releaseId)=>{
|
|
1705
|
+
const dashboardExtension = {
|
|
1706
|
+
id: `${releaseId}/summary`,
|
|
1707
|
+
type: DASHBOARD_TYPE,
|
|
1708
|
+
tiles: []
|
|
1709
|
+
};
|
|
1710
|
+
if (dashboard.tiles) (0, (/*@__PURE__*/$parcel$interopDefault($ae8Uz)))(dashboard.tiles, function(tile, index) {
|
|
1711
|
+
dashboardExtension.tiles.push(getTileEntity(tile, `${releaseId}/summary`, index));
|
|
1712
|
+
});
|
|
1713
|
+
return dashboardExtension;
|
|
1714
|
+
};
|
|
1715
|
+
function getTileEntity(tile, containerId, index) {
|
|
1716
|
+
tile.id = tile.id || `${containerId}/Tile${index}`;
|
|
1717
|
+
return tile;
|
|
1718
|
+
}
|
|
1719
|
+
return function(release) {
|
|
1720
|
+
release.type = RELEASE_TYPE;
|
|
1721
|
+
if (release.id.indexOf("Applications/") === -1) release.id = `Applications/${release.id}`;
|
|
1722
|
+
if (release.startDate) release.queryableStartDate = release.startDate;
|
|
1723
|
+
else if (release.scheduledStartDate) release.queryableStartDate = release.scheduledStartDate;
|
|
1724
|
+
if (release.endDate) release.queryableEndDate = release.endDate;
|
|
1725
|
+
else if (release.dueDate) release.queryableEndDate = release.dueDate;
|
|
1726
|
+
if ((0, (/*@__PURE__*/$parcel$interopDefault($3e8b520187e41aa6$exports)))(release.owner)) release.owner = "Itchy"; // default release manager
|
|
1727
|
+
(0, (/*@__PURE__*/$parcel$interopDefault($ae8Uz)))(release.phases, function(phase, index) {
|
|
1728
|
+
processPhases(phase, release, index);
|
|
1729
|
+
});
|
|
1730
|
+
(0, (/*@__PURE__*/$parcel$interopDefault($ae8Uz)))(release.teams, function(team, index) {
|
|
1731
|
+
team.type = TEAM_TYPE;
|
|
1732
|
+
team.id = `${release.id}/Team${index}`;
|
|
1733
|
+
});
|
|
1734
|
+
(0, (/*@__PURE__*/$parcel$interopDefault($ae8Uz)))(release.attachments, function(attachment, index) {
|
|
1735
|
+
attachment.type = ATTACHMENT_TYPE;
|
|
1736
|
+
attachment.id = `${release.id}/Attachment${index}`;
|
|
1737
|
+
});
|
|
1738
|
+
(0, (/*@__PURE__*/$parcel$interopDefault($ae8Uz)))(release.variables, function(variable, index) {
|
|
1739
|
+
(0, (/*@__PURE__*/$parcel$interopDefault($732eba8dca8b5420$exports)))(variable, getVariableEntity(variable.value, variable.key, release.id, index));
|
|
1740
|
+
if (variable.valueProvider) (0, (/*@__PURE__*/$parcel$interopDefault($732eba8dca8b5420$exports)))(variable.valueProvider, getValueProviderConfigurationEntity(variable.id));
|
|
1741
|
+
});
|
|
1742
|
+
(0, (/*@__PURE__*/$parcel$interopDefault($ae8Uz)))((0, (/*@__PURE__*/$parcel$interopDefault($f51969c4a7467fa0$exports)))(release.variableValues), function(keyValue, index) {
|
|
1743
|
+
if (!release.variables) release.variables = [];
|
|
1744
|
+
release.variables.push(getVariableEntity(keyValue[1], keyValue[0], release.id, 1000 + index));
|
|
1745
|
+
release.variableValues = undefined;
|
|
1746
|
+
});
|
|
1747
|
+
(0, (/*@__PURE__*/$parcel$interopDefault($ae8Uz)))((0, (/*@__PURE__*/$parcel$interopDefault($f51969c4a7467fa0$exports)))(release.passwordVariableValues), function(keyValue, index) {
|
|
1748
|
+
if (!release.variables) release.variables = [];
|
|
1749
|
+
release.variables.push(getVariableEntity(keyValue[1], keyValue[0], release.id, 1500 + index, true));
|
|
1750
|
+
release.passwordVariableValues = undefined;
|
|
1751
|
+
});
|
|
1752
|
+
if (release.summary) {
|
|
1753
|
+
release.extensions = [
|
|
1754
|
+
getDashboardExtension(release.summary, release.id)
|
|
1755
|
+
];
|
|
1756
|
+
release.summary = undefined;
|
|
1757
|
+
}
|
|
1758
|
+
};
|
|
1759
|
+
}();
|
|
1706
1760
|
|
|
1707
|
-
var $fegcS = parcelRequire("fegcS");
|
|
1708
1761
|
|
|
1709
|
-
var $gf9YK = parcelRequire("gf9YK");
|
|
1710
1762
|
|
|
1711
|
-
|
|
1712
|
-
|
|
1713
|
-
|
|
1714
|
-
|
|
1715
|
-
* @private
|
|
1716
|
-
* @param {*} value The potential iteratee value argument.
|
|
1717
|
-
* @param {*} index The potential iteratee index or key argument.
|
|
1718
|
-
* @param {*} object The potential iteratee object argument.
|
|
1719
|
-
* @returns {boolean} Returns `true` if the arguments are from an iteratee call,
|
|
1720
|
-
* else `false`.
|
|
1721
|
-
*/ function $e084f044678f4365$var$isIterateeCall(value, index, object) {
|
|
1722
|
-
if (!$bfk90(object)) return false;
|
|
1723
|
-
var type = typeof index;
|
|
1724
|
-
if (type == "number" ? $fegcS(object) && $gf9YK(index, object.length) : type == "string" && index in object) return $ceebddaa7160689c$exports(object[index], value);
|
|
1725
|
-
return false;
|
|
1763
|
+
class $f8721861c660dd88$export$2b65d1d97338f32b {
|
|
1764
|
+
constructor(page){
|
|
1765
|
+
this.page = page;
|
|
1766
|
+
}
|
|
1726
1767
|
}
|
|
1727
|
-
$e084f044678f4365$exports = $e084f044678f4365$var$isIterateeCall;
|
|
1728
|
-
|
|
1729
|
-
|
|
1730
|
-
var $0e6e2e34ec44a72a$exports = {};
|
|
1731
1768
|
|
|
1732
|
-
var $gYWmw = parcelRequire("gYWmw");
|
|
1733
|
-
var $b4b8b2a977b4cc10$exports = {};
|
|
1734
|
-
|
|
1735
|
-
var $bfk90 = parcelRequire("bfk90");
|
|
1736
1769
|
|
|
1737
|
-
|
|
1738
|
-
|
|
1739
|
-
|
|
1740
|
-
|
|
1741
|
-
|
|
1742
|
-
|
|
1743
|
-
|
|
1744
|
-
|
|
1745
|
-
|
|
1746
|
-
|
|
1747
|
-
|
|
1748
|
-
|
|
1749
|
-
|
|
1750
|
-
|
|
1770
|
+
class $258749e0671c845a$export$f14c0e3f98d164c0 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1771
|
+
/**
|
|
1772
|
+
* Login with username and password
|
|
1773
|
+
* @param userName
|
|
1774
|
+
* @param password
|
|
1775
|
+
*/ async login(userName, password) {
|
|
1776
|
+
await this.page.goto("/#/login");
|
|
1777
|
+
await this.page.waitForTimeout(1000);
|
|
1778
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page).toHaveTitle("Digital.ai Release");
|
|
1779
|
+
await this.page.getByPlaceholder("User").fill(userName);
|
|
1780
|
+
await this.page.getByPlaceholder("Password").fill(password);
|
|
1781
|
+
await this.page.getByRole("button", {
|
|
1782
|
+
name: "Log in"
|
|
1783
|
+
}).click();
|
|
1784
|
+
}
|
|
1785
|
+
/**
|
|
1786
|
+
* Logout as authenticated user
|
|
1787
|
+
*/ async logout() {
|
|
1788
|
+
await this.page.locator("button.dot-avatar").click();
|
|
1789
|
+
await this.page.getByText("Log out").click();
|
|
1790
|
+
}
|
|
1791
|
+
/**
|
|
1792
|
+
* Expect login to be restricted for a user
|
|
1793
|
+
*/ async expectLoginDisallowed() {
|
|
1794
|
+
const val = await this.page.textContent('.error-content span[ng-show="loginInfo.failedStatus == 403"]');
|
|
1795
|
+
(0, $kKeXs$playwrighttest.expect)(val).toContain("You do not have 'login' permission.");
|
|
1796
|
+
}
|
|
1797
|
+
/**
|
|
1798
|
+
* Expect the respective user is logged In
|
|
1799
|
+
* @param username
|
|
1800
|
+
*/ async expectToBeLogged(username) {
|
|
1801
|
+
const val = await this.page.locator("top-toolbar .avatar-wrapper span.dot-tooltip").getAttribute("aria-label");
|
|
1802
|
+
(0, $kKeXs$playwrighttest.expect)(val).toContain(username);
|
|
1803
|
+
}
|
|
1751
1804
|
}
|
|
1752
|
-
$59b6e790ee7519e4$exports = $59b6e790ee7519e4$var$nativeKeysIn;
|
|
1753
1805
|
|
|
1754
1806
|
|
|
1755
|
-
/** Used for built-in method references. */ var $b4b8b2a977b4cc10$var$objectProto = Object.prototype;
|
|
1756
|
-
/** Used to check objects for own properties. */ var $b4b8b2a977b4cc10$var$hasOwnProperty = $b4b8b2a977b4cc10$var$objectProto.hasOwnProperty;
|
|
1757
|
-
/**
|
|
1758
|
-
* The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.
|
|
1759
|
-
*
|
|
1760
|
-
* @private
|
|
1761
|
-
* @param {Object} object The object to query.
|
|
1762
|
-
* @returns {Array} Returns the array of property names.
|
|
1763
|
-
*/ function $b4b8b2a977b4cc10$var$baseKeysIn(object) {
|
|
1764
|
-
if (!$bfk90(object)) return $59b6e790ee7519e4$exports(object);
|
|
1765
|
-
var isProto = $cjTq2(object), result = [];
|
|
1766
|
-
for(var key in object)if (!(key == "constructor" && (isProto || !$b4b8b2a977b4cc10$var$hasOwnProperty.call(object, key)))) result.push(key);
|
|
1767
|
-
return result;
|
|
1768
|
-
}
|
|
1769
|
-
$b4b8b2a977b4cc10$exports = $b4b8b2a977b4cc10$var$baseKeysIn;
|
|
1770
1807
|
|
|
1771
1808
|
|
|
1772
1809
|
|
|
1773
|
-
var $fegcS = parcelRequire("fegcS");
|
|
1774
|
-
/**
|
|
1775
|
-
* Creates an array of the own and inherited enumerable property names of `object`.
|
|
1776
|
-
*
|
|
1777
|
-
* **Note:** Non-object values are coerced to objects.
|
|
1778
|
-
*
|
|
1779
|
-
* @static
|
|
1780
|
-
* @memberOf _
|
|
1781
|
-
* @since 3.0.0
|
|
1782
|
-
* @category Object
|
|
1783
|
-
* @param {Object} object The object to query.
|
|
1784
|
-
* @returns {Array} Returns the array of property names.
|
|
1785
|
-
* @example
|
|
1786
|
-
*
|
|
1787
|
-
* function Foo() {
|
|
1788
|
-
* this.a = 1;
|
|
1789
|
-
* this.b = 2;
|
|
1790
|
-
* }
|
|
1791
|
-
*
|
|
1792
|
-
* Foo.prototype.c = 3;
|
|
1793
|
-
*
|
|
1794
|
-
* _.keysIn(new Foo);
|
|
1795
|
-
* // => ['a', 'b', 'c'] (iteration order is not guaranteed)
|
|
1796
|
-
*/ function $0e6e2e34ec44a72a$var$keysIn(object) {
|
|
1797
|
-
return $fegcS(object) ? $gYWmw(object, true) : $b4b8b2a977b4cc10$exports(object);
|
|
1798
|
-
}
|
|
1799
|
-
$0e6e2e34ec44a72a$exports = $0e6e2e34ec44a72a$var$keysIn;
|
|
1800
1810
|
|
|
1801
1811
|
|
|
1802
|
-
|
|
1803
|
-
|
|
1804
|
-
|
|
1805
|
-
|
|
1806
|
-
|
|
1807
|
-
|
|
1808
|
-
|
|
1809
|
-
|
|
1810
|
-
|
|
1811
|
-
|
|
1812
|
-
* @static
|
|
1813
|
-
* @since 0.1.0
|
|
1814
|
-
* @memberOf _
|
|
1815
|
-
* @category Object
|
|
1816
|
-
* @param {Object} object The destination object.
|
|
1817
|
-
* @param {...Object} [sources] The source objects.
|
|
1818
|
-
* @returns {Object} Returns `object`.
|
|
1819
|
-
* @see _.defaultsDeep
|
|
1820
|
-
* @example
|
|
1821
|
-
*
|
|
1822
|
-
* _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });
|
|
1823
|
-
* // => { 'a': 1, 'b': 2 }
|
|
1824
|
-
*/ var $732eba8dca8b5420$var$defaults = $b1535b4ce0d1bd5f$exports(function(object, sources) {
|
|
1825
|
-
object = Object(object);
|
|
1826
|
-
var index = -1;
|
|
1827
|
-
var length = sources.length;
|
|
1828
|
-
var guard = length > 2 ? sources[2] : undefined;
|
|
1829
|
-
if (guard && $e084f044678f4365$exports(sources[0], sources[1], guard)) length = 1;
|
|
1830
|
-
while(++index < length){
|
|
1831
|
-
var source = sources[index];
|
|
1832
|
-
var props = $0e6e2e34ec44a72a$exports(source);
|
|
1833
|
-
var propsIndex = -1;
|
|
1834
|
-
var propsLength = props.length;
|
|
1835
|
-
while(++propsIndex < propsLength){
|
|
1836
|
-
var key = props[propsIndex];
|
|
1837
|
-
var value = object[key];
|
|
1838
|
-
if (value === undefined || $ceebddaa7160689c$exports(value, $732eba8dca8b5420$var$objectProto[key]) && !$732eba8dca8b5420$var$hasOwnProperty.call(object, key)) object[key] = source[key];
|
|
1839
|
-
}
|
|
1812
|
+
class $280428cd9976d58e$export$a678525e79c4ccc4 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1813
|
+
async expectNumberOfReleases(releaseTitle, amount) {
|
|
1814
|
+
if (amount === 1) await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".release").getByText(releaseTitle)).toBeVisible();
|
|
1815
|
+
else await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".release").getByText(releaseTitle).count()).toBe(amount);
|
|
1816
|
+
}
|
|
1817
|
+
async openReleaseByName(releaseTitle) {
|
|
1818
|
+
await this.page.locator(".release-line .row-wrapper .release-title-wrapper a", {
|
|
1819
|
+
hasText: releaseTitle
|
|
1820
|
+
}).click();
|
|
1821
|
+
return new (0, $9b9a8c3da392d020$export$f43492e8ac3c566)(this.page);
|
|
1840
1822
|
}
|
|
1841
|
-
return object;
|
|
1842
|
-
});
|
|
1843
|
-
$732eba8dca8b5420$exports = $732eba8dca8b5420$var$defaults;
|
|
1844
|
-
|
|
1845
|
-
|
|
1846
|
-
var $f51969c4a7467fa0$exports = {};
|
|
1847
|
-
var $acbd35b1cbbf33e4$exports = {};
|
|
1848
|
-
var $34482bf0fdb87aa6$exports = {};
|
|
1849
|
-
var $c258ac491a64b22b$exports = {};
|
|
1850
|
-
/**
|
|
1851
|
-
* A specialized version of `_.map` for arrays without support for iteratee
|
|
1852
|
-
* shorthands.
|
|
1853
|
-
*
|
|
1854
|
-
* @private
|
|
1855
|
-
* @param {Array} [array] The array to iterate over.
|
|
1856
|
-
* @param {Function} iteratee The function invoked per iteration.
|
|
1857
|
-
* @returns {Array} Returns the new mapped array.
|
|
1858
|
-
*/ function $c258ac491a64b22b$var$arrayMap(array, iteratee) {
|
|
1859
|
-
var index = -1, length = array == null ? 0 : array.length, result = Array(length);
|
|
1860
|
-
while(++index < length)result[index] = iteratee(array[index], index, array);
|
|
1861
|
-
return result;
|
|
1862
1823
|
}
|
|
1863
|
-
$c258ac491a64b22b$exports = $c258ac491a64b22b$var$arrayMap;
|
|
1864
1824
|
|
|
1865
1825
|
|
|
1866
|
-
|
|
1867
|
-
|
|
1868
|
-
|
|
1869
|
-
|
|
1870
|
-
|
|
1871
|
-
|
|
1872
|
-
|
|
1873
|
-
|
|
1874
|
-
|
|
1875
|
-
|
|
1876
|
-
|
|
1877
|
-
|
|
1878
|
-
|
|
1879
|
-
|
|
1880
|
-
|
|
1826
|
+
|
|
1827
|
+
class $133601cfe0486710$export$fb932093f944abe4 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1828
|
+
async openRelatedReleasesOf(title) {
|
|
1829
|
+
await this.openContextMenu(title);
|
|
1830
|
+
await this.page.locator(".popover-content xlr-context-menu a", {
|
|
1831
|
+
hasText: "View releases"
|
|
1832
|
+
}).click();
|
|
1833
|
+
return new (0, $280428cd9976d58e$export$a678525e79c4ccc4)(this.page);
|
|
1834
|
+
}
|
|
1835
|
+
async openContextMenu(title) {
|
|
1836
|
+
await (0, $kKeXs$playwrighttest.expect)(async ()=>{
|
|
1837
|
+
await this.page.locator(".trigger-row-content", {
|
|
1838
|
+
hasText: title
|
|
1839
|
+
}).locator(".context-menu-button").click();
|
|
1840
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".popover-content")).toBeVisible();
|
|
1841
|
+
}).toPass();
|
|
1842
|
+
}
|
|
1881
1843
|
}
|
|
1882
|
-
$34482bf0fdb87aa6$exports = $34482bf0fdb87aa6$var$baseToPairs;
|
|
1883
1844
|
|
|
1884
1845
|
|
|
1885
|
-
var $2184c74fd3b50571$exports = {};
|
|
1886
|
-
var $9707ed10f1d74f7d$exports = {};
|
|
1887
1846
|
|
|
1888
1847
|
|
|
1889
|
-
var $5iYlB = parcelRequire("5iYlB");
|
|
1890
|
-
/* Built-in method references that are verified to be native. */ var $9707ed10f1d74f7d$var$DataView = $b7745e89d7f5915f$exports($5iYlB, "DataView");
|
|
1891
|
-
$9707ed10f1d74f7d$exports = $9707ed10f1d74f7d$var$DataView;
|
|
1892
1848
|
|
|
1849
|
+
async function $ef0df8ad8a777ce6$export$a0f926f04148e5d2(locators) {
|
|
1850
|
+
const res = await Promise.all([
|
|
1851
|
+
...locators.map(async (locator, index)=>{
|
|
1852
|
+
let timedOut = false;
|
|
1853
|
+
await locator.waitFor({
|
|
1854
|
+
state: "visible",
|
|
1855
|
+
timeout: 2000
|
|
1856
|
+
}).catch(()=>timedOut = true);
|
|
1857
|
+
return [
|
|
1858
|
+
timedOut ? -1 : index,
|
|
1859
|
+
locator
|
|
1860
|
+
];
|
|
1861
|
+
})
|
|
1862
|
+
]);
|
|
1863
|
+
const resolvedLocator = res.find((r)=>r[0] !== -1);
|
|
1864
|
+
if (!resolvedLocator) {
|
|
1865
|
+
console.warn("waitForOneOf", res);
|
|
1866
|
+
throw new Error("no locator visible before timeout");
|
|
1867
|
+
}
|
|
1868
|
+
return resolvedLocator;
|
|
1869
|
+
}
|
|
1893
1870
|
|
|
1894
|
-
var $8c4ecd35968046d6$exports = {};
|
|
1895
1871
|
|
|
1872
|
+
class $fd4eef3ad2b2e612$export$a87f0ae8695e74be extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1873
|
+
async openVariable(variableKey) {
|
|
1874
|
+
await this.page.locator(`.variables-list .variable`).getByText(variableKey).click();
|
|
1875
|
+
return new $fd4eef3ad2b2e612$var$ReleaseVariableModal(this.page);
|
|
1876
|
+
}
|
|
1877
|
+
}
|
|
1878
|
+
class $fd4eef3ad2b2e612$var$ReleaseVariableModal extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1879
|
+
async expectValue(locators, expectFn) {
|
|
1880
|
+
const [index, locator] = await (0, $ef0df8ad8a777ce6$export$a0f926f04148e5d2)(locators);
|
|
1881
|
+
await expectFn[index](locator);
|
|
1882
|
+
}
|
|
1883
|
+
async expectValueToBe(value) {
|
|
1884
|
+
await this.expectValue([
|
|
1885
|
+
this.page.locator("#modal .variable-value input"),
|
|
1886
|
+
this.page.locator("#modal .variable-value .field-readonly"),
|
|
1887
|
+
this.page.locator("#modal .variable-value .xl-map-string-string")
|
|
1888
|
+
], [
|
|
1889
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toHaveValue(value),
|
|
1890
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toHaveText(value),
|
|
1891
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toHaveText(value)
|
|
1892
|
+
]);
|
|
1893
|
+
}
|
|
1894
|
+
async expectValueToContain(value) {
|
|
1895
|
+
await this.expectValue([
|
|
1896
|
+
this.page.locator("#modal .variable-value input"),
|
|
1897
|
+
this.page.locator("#modal .variable-value .field-readonly"),
|
|
1898
|
+
this.page.locator("#modal .variable-value .xl-map-string-string")
|
|
1899
|
+
], [
|
|
1900
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l.inputValue()).toContain(value),
|
|
1901
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toContainText(value),
|
|
1902
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toContainText(value)
|
|
1903
|
+
]);
|
|
1904
|
+
}
|
|
1905
|
+
async close() {
|
|
1906
|
+
await this.page.locator("#modal .modal-header button.close").click();
|
|
1907
|
+
}
|
|
1908
|
+
}
|
|
1896
1909
|
|
|
1897
|
-
var $5iYlB = parcelRequire("5iYlB");
|
|
1898
|
-
/* Built-in method references that are verified to be native. */ var $8c4ecd35968046d6$var$Map = $b7745e89d7f5915f$exports($5iYlB, "Map");
|
|
1899
|
-
$8c4ecd35968046d6$exports = $8c4ecd35968046d6$var$Map;
|
|
1900
1910
|
|
|
1901
1911
|
|
|
1902
|
-
var $30f4d64ddd8effd1$exports = {};
|
|
1903
1912
|
|
|
1913
|
+
class $8be2ce0eccbe6d27$export$64c93bc7fb9ca44e extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1914
|
+
constructor(page){
|
|
1915
|
+
super(page);
|
|
1916
|
+
this.railLocator = this.page.locator("task-drawer .dot-drawer .task-config");
|
|
1917
|
+
}
|
|
1918
|
+
async openInputProperties() {
|
|
1919
|
+
await this.railLocator.locator(".task-config-header").getByText("Input properties").click();
|
|
1920
|
+
}
|
|
1921
|
+
async openOutputProperties() {
|
|
1922
|
+
await this.railLocator.locator(".task-config-header").getByText("Output properties").click();
|
|
1923
|
+
}
|
|
1924
|
+
async getValueFromCi(propertyName) {
|
|
1925
|
+
return this.railLocator.locator(`input[id="${propertyName}"]`).inputValue();
|
|
1926
|
+
}
|
|
1927
|
+
async getAllOptionsFromCi(propertyName) {
|
|
1928
|
+
await this.railLocator.locator(`input[id="${propertyName}"]`).click();
|
|
1929
|
+
return this.railLocator.locator(`.dot-popper ul li`).allInnerTexts();
|
|
1930
|
+
}
|
|
1931
|
+
async setValueFromCi(propertyName, value) {
|
|
1932
|
+
await this.railLocator.locator(`input[id="${propertyName}"]`).clear();
|
|
1933
|
+
await this.railLocator.locator(`input[id="${propertyName}"]`).click();
|
|
1934
|
+
await this.railLocator.locator(`.dot-popper ul li`, {
|
|
1935
|
+
hasText: value
|
|
1936
|
+
}).click();
|
|
1937
|
+
}
|
|
1938
|
+
async getValueFromString(propertyName) {
|
|
1939
|
+
await this.railLocator.locator(`.input-scalar-fake-input[id="${propertyName}"]`).focus();
|
|
1940
|
+
return this.railLocator.locator(`input[id="${propertyName}"]`).inputValue();
|
|
1941
|
+
}
|
|
1942
|
+
async setValueFromString(propertyName, value) {
|
|
1943
|
+
await this.railLocator.locator(`.input-scalar-fake-input[id="${propertyName}"]`).focus();
|
|
1944
|
+
await this.railLocator.locator(`input[id="${propertyName}"]`).fill(value);
|
|
1945
|
+
}
|
|
1946
|
+
async setValueFromLargeString(propertyName, value) {
|
|
1947
|
+
await this.railLocator.locator(`.input-scalar-fake-input[id="${propertyName}"]`).focus();
|
|
1948
|
+
await this.railLocator.locator(`textarea[id="${propertyName}"]`).fill(value);
|
|
1949
|
+
}
|
|
1950
|
+
async setValueFromPassword(propertyName, value) {
|
|
1951
|
+
await this.railLocator.locator(`input[id="${propertyName}"]`).fill(value);
|
|
1952
|
+
}
|
|
1953
|
+
async setAndCreateVariable(propertyName, variableName) {
|
|
1954
|
+
await this.railLocator.locator(`input[id="${propertyName}"]`).clear();
|
|
1955
|
+
await this.railLocator.locator(`input[id="${propertyName}"]`).click();
|
|
1956
|
+
await this.railLocator.locator(`input[id="${propertyName}"]`).fill(variableName);
|
|
1957
|
+
await this.railLocator.locator(`.dot-popper button`, {
|
|
1958
|
+
hasText: variableName
|
|
1959
|
+
}).click();
|
|
1960
|
+
}
|
|
1961
|
+
async setVariable(propertyName, variableName) {
|
|
1962
|
+
return this.setValueFromCi(propertyName, variableName);
|
|
1963
|
+
}
|
|
1964
|
+
async expectValueFromString(propertyName, propertyValue) {
|
|
1965
|
+
return await (0, $kKeXs$playwrighttest.expect)(this.railLocator.locator(`.input-scalar-fake-input[id="${propertyName}"]`)).toHaveText(propertyValue);
|
|
1966
|
+
}
|
|
1967
|
+
}
|
|
1904
1968
|
|
|
1905
|
-
var $5iYlB = parcelRequire("5iYlB");
|
|
1906
|
-
/* Built-in method references that are verified to be native. */ var $30f4d64ddd8effd1$var$Promise = $b7745e89d7f5915f$exports($5iYlB, "Promise");
|
|
1907
|
-
$30f4d64ddd8effd1$exports = $30f4d64ddd8effd1$var$Promise;
|
|
1908
1969
|
|
|
1909
1970
|
|
|
1910
|
-
var $869474d4b330cc35$exports = {};
|
|
1911
1971
|
|
|
1912
1972
|
|
|
1913
|
-
|
|
1914
|
-
|
|
1915
|
-
|
|
1973
|
+
class $9c0b0c2caed50730$export$d4865631ba74f3e2 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1974
|
+
constructor(page){
|
|
1975
|
+
super(page);
|
|
1976
|
+
this.railLocator = this.page.locator("task-drawer .dot-drawer .task-conditions");
|
|
1977
|
+
this.preconditionToggle = page.getByLabel("Enable precondition");
|
|
1978
|
+
this.textEditor = page.getByRole("textbox");
|
|
1979
|
+
this.saveButton = page.getByTestId("save-btn");
|
|
1980
|
+
}
|
|
1981
|
+
async enablePrecondition() {
|
|
1982
|
+
(0, $kKeXs$playwrighttest.expect)(await this.preconditionToggle.isChecked()).toBe(false);
|
|
1983
|
+
await this.preconditionToggle.check();
|
|
1984
|
+
}
|
|
1985
|
+
async disablePrecondition() {
|
|
1986
|
+
(0, $kKeXs$playwrighttest.expect)(await this.preconditionToggle.isChecked()).toBe(true);
|
|
1987
|
+
await this.preconditionToggle.uncheck();
|
|
1988
|
+
}
|
|
1989
|
+
async setPrecondition(script) {
|
|
1990
|
+
await this.enablePrecondition();
|
|
1991
|
+
await this.textEditor.fill(script);
|
|
1992
|
+
await this.saveButton.dblclick();
|
|
1993
|
+
await this.page.waitForTimeout(1000);
|
|
1994
|
+
}
|
|
1995
|
+
}
|
|
1916
1996
|
|
|
1917
1997
|
|
|
1918
|
-
|
|
1998
|
+
class $6a21661eb4695574$export$e946776eae644790 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1999
|
+
constructor(page){
|
|
2000
|
+
super(page);
|
|
2001
|
+
this.taskDrawerLocator = this.page.locator("task-drawer .dot-drawer");
|
|
2002
|
+
this.retryButton = this.page.getByRole("button", {
|
|
2003
|
+
name: "Retry"
|
|
2004
|
+
});
|
|
2005
|
+
this.cancelButton = this.page.getByTestId("task-action-cancel");
|
|
2006
|
+
this.commentBox = this.page.getByTestId("task-action-comment");
|
|
2007
|
+
this.confirm = this.page.getByTestId("task-action-confirm");
|
|
2008
|
+
this.config = new (0, $8be2ce0eccbe6d27$export$64c93bc7fb9ca44e)(page);
|
|
2009
|
+
this.condition = new (0, $9c0b0c2caed50730$export$d4865631ba74f3e2)(page);
|
|
2010
|
+
this.skipMenu = this.page.getByRole("menuitem", {
|
|
2011
|
+
name: "Skip"
|
|
2012
|
+
});
|
|
2013
|
+
}
|
|
2014
|
+
async openOverviewRail() {
|
|
2015
|
+
await this.openRail("Overview");
|
|
2016
|
+
}
|
|
2017
|
+
async openActivityRail() {
|
|
2018
|
+
await this.openRail("Activity");
|
|
2019
|
+
}
|
|
2020
|
+
async openSchedulingRail() {
|
|
2021
|
+
await this.openRail("Scheduling");
|
|
2022
|
+
}
|
|
2023
|
+
async openConditionRail() {
|
|
2024
|
+
await this.openRail("Conditions");
|
|
2025
|
+
}
|
|
2026
|
+
async openAttributesRail() {
|
|
2027
|
+
await this.openRail("Attributes");
|
|
2028
|
+
}
|
|
2029
|
+
async openAttachRail() {
|
|
2030
|
+
await this.openRail("Attach");
|
|
2031
|
+
}
|
|
2032
|
+
async openTagsRail() {
|
|
2033
|
+
await this.openRail("Tags");
|
|
2034
|
+
}
|
|
2035
|
+
async openRail(rail) {
|
|
2036
|
+
await this.taskDrawerLocator.locator(".task-navigation-rail").getByText(rail).click();
|
|
2037
|
+
}
|
|
2038
|
+
async close() {
|
|
2039
|
+
await this.taskDrawerLocator.locator(".task-drawer-header").getByTestId("close-btn").click();
|
|
2040
|
+
}
|
|
2041
|
+
async retryTask(comment) {
|
|
2042
|
+
await this.retryButton.click();
|
|
2043
|
+
await this.commentBox.fill(comment);
|
|
2044
|
+
await this.confirm.click();
|
|
2045
|
+
}
|
|
2046
|
+
async skipTask(comment) {
|
|
2047
|
+
await this.page.getByRole("button", {
|
|
2048
|
+
name: "arrow-down icon",
|
|
2049
|
+
exact: true
|
|
2050
|
+
}).click();
|
|
2051
|
+
await this.skipMenu.click();
|
|
2052
|
+
await this.commentBox.fill(comment);
|
|
2053
|
+
await this.confirm.click();
|
|
2054
|
+
}
|
|
2055
|
+
}
|
|
1919
2056
|
|
|
1920
2057
|
|
|
1921
|
-
|
|
1922
|
-
|
|
1923
|
-
|
|
2058
|
+
class $9b9a8c3da392d020$export$f43492e8ac3c566 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
2059
|
+
constructor(page){
|
|
2060
|
+
super(page);
|
|
2061
|
+
this.taskDrawer = new (0, $6a21661eb4695574$export$e946776eae644790)(page);
|
|
2062
|
+
}
|
|
2063
|
+
async openTriggers() {
|
|
2064
|
+
await this.openSubPage("Triggers");
|
|
2065
|
+
return new (0, $133601cfe0486710$export$fb932093f944abe4)(this.page);
|
|
2066
|
+
}
|
|
2067
|
+
async abort(comment = "Abort for testing") {
|
|
2068
|
+
await this.page.locator("action-toolbar button", {
|
|
2069
|
+
hasText: "Abort"
|
|
2070
|
+
}).click();
|
|
2071
|
+
await this.page.locator(".modal textarea").fill(comment);
|
|
2072
|
+
await this.page.locator(".modal .continue").click();
|
|
2073
|
+
}
|
|
2074
|
+
getPhase(phaseName) {
|
|
2075
|
+
return new $9b9a8c3da392d020$var$Phase(this.page, phaseName);
|
|
2076
|
+
}
|
|
2077
|
+
async start() {
|
|
2078
|
+
await this.page.getByTestId("start-btn").click();
|
|
2079
|
+
await this.page.getByRole("button", {
|
|
2080
|
+
name: "Start"
|
|
2081
|
+
}).click();
|
|
2082
|
+
}
|
|
2083
|
+
async waitForTaskCompleted(taskTitle) {
|
|
2084
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task.completed").getByText(taskTitle, {
|
|
2085
|
+
exact: true
|
|
2086
|
+
})).toBeVisible();
|
|
2087
|
+
}
|
|
2088
|
+
async waitForTaskFailed(taskTitle) {
|
|
2089
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task.failed").getByText(taskTitle, {
|
|
2090
|
+
exact: true
|
|
2091
|
+
})).toBeVisible();
|
|
2092
|
+
}
|
|
2093
|
+
async waitForTaskSkipped(taskTitle) {
|
|
2094
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task.skipped").getByText(taskTitle, {
|
|
2095
|
+
exact: true
|
|
2096
|
+
})).toBeVisible();
|
|
2097
|
+
}
|
|
2098
|
+
async waitForTaskAborted(taskTitle) {
|
|
2099
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task.aborted").getByText(taskTitle, {
|
|
2100
|
+
exact: true
|
|
2101
|
+
})).toBeVisible();
|
|
2102
|
+
}
|
|
2103
|
+
async waitForStatusLine(statusLine) {
|
|
2104
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task .status-line").getByText(statusLine, {
|
|
2105
|
+
exact: true
|
|
2106
|
+
})).toBeVisible();
|
|
2107
|
+
}
|
|
2108
|
+
async waitForTaskStarted(taskTitle) {
|
|
2109
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task.in_progress").getByTitle(taskTitle, {
|
|
2110
|
+
exact: true
|
|
2111
|
+
})).toBeVisible();
|
|
2112
|
+
}
|
|
2113
|
+
async openTaskDrawer(taskName) {
|
|
2114
|
+
await this.page.locator(".task-header").getByText(taskName).click();
|
|
2115
|
+
return this.taskDrawer;
|
|
2116
|
+
}
|
|
2117
|
+
async openVariables() {
|
|
2118
|
+
await this.openReleaseMenu("Variables");
|
|
2119
|
+
return new (0, $fd4eef3ad2b2e612$export$a87f0ae8695e74be)(this.page);
|
|
2120
|
+
}
|
|
2121
|
+
async openReleaseMenu(menuItem) {
|
|
2122
|
+
await this.page.locator(`navigation-sidebar ul li`).getByText(menuItem, {
|
|
2123
|
+
exact: true
|
|
2124
|
+
}).click();
|
|
2125
|
+
}
|
|
2126
|
+
async openSubPage(subpage) {
|
|
2127
|
+
await this.page.locator("ul.side-nav li", {
|
|
2128
|
+
hasText: subpage
|
|
2129
|
+
}).click();
|
|
2130
|
+
}
|
|
2131
|
+
async openTask(taskName) {
|
|
2132
|
+
await this.page.getByTitle(taskName, {
|
|
2133
|
+
exact: true
|
|
2134
|
+
}).click();
|
|
2135
|
+
}
|
|
2136
|
+
async collapseAllTaskView() {
|
|
2137
|
+
const icCollapseTreeview1 = this.page.locator("div.pull-left.expander.ng-scope i.xl-icon.arrow-down-icon");
|
|
2138
|
+
for (const element of (await icCollapseTreeview1.all())){
|
|
2139
|
+
const blnVal = await element.isVisible();
|
|
2140
|
+
if (blnVal) {
|
|
2141
|
+
await element.click();
|
|
2142
|
+
await this.collapseAllTaskView();
|
|
2143
|
+
}
|
|
2144
|
+
}
|
|
2145
|
+
}
|
|
2146
|
+
async expandAllTaskView() {
|
|
2147
|
+
const icExpandTreeview1 = this.page.locator("div.pull-left.expander.ng-scope i.xl-icon.arrow-right-icon");
|
|
2148
|
+
for (const element of (await icExpandTreeview1.all())){
|
|
2149
|
+
const blnVal = await element.isVisible();
|
|
2150
|
+
if (blnVal) {
|
|
2151
|
+
await element.click();
|
|
2152
|
+
await this.expandAllTaskView();
|
|
2153
|
+
}
|
|
2154
|
+
}
|
|
2155
|
+
}
|
|
2156
|
+
}
|
|
2157
|
+
class $9b9a8c3da392d020$var$Phase extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
2158
|
+
constructor(page, phaseName){
|
|
2159
|
+
super(page);
|
|
2160
|
+
this.phaseLocator = page.locator(".phase", {
|
|
2161
|
+
hasText: phaseName
|
|
2162
|
+
});
|
|
2163
|
+
}
|
|
2164
|
+
async addTask(taskName, taskGroup, taskType) {
|
|
2165
|
+
await this.phaseLocator.getByText("Add task").click();
|
|
2166
|
+
await this.phaseLocator.locator(".quick-title").fill(taskName);
|
|
2167
|
+
await this.phaseLocator.locator(".xlr-ctx-menu-toggle").click();
|
|
2168
|
+
await this.page.locator(`.xlr-ctx-menu-item`).getByTitle(taskGroup, {
|
|
2169
|
+
exact: true
|
|
2170
|
+
}).scrollIntoViewIfNeeded();
|
|
2171
|
+
await this.page.locator(`.xlr-ctx-menu-item`).getByTitle(taskGroup, {
|
|
2172
|
+
exact: true
|
|
2173
|
+
}).hover();
|
|
2174
|
+
await this.page.locator(`.xlr-ctx-menu.active`).getByTitle(taskType, {
|
|
2175
|
+
exact: true
|
|
2176
|
+
}).click();
|
|
2177
|
+
await this.phaseLocator.locator(".quick-controls-container a").getByText("Add", {
|
|
2178
|
+
exact: true
|
|
2179
|
+
}).click();
|
|
2180
|
+
}
|
|
2181
|
+
}
|
|
1924
2182
|
|
|
1925
2183
|
|
|
1926
2184
|
|
|
1927
|
-
var $hi3Ib = parcelRequire("hi3Ib");
|
|
1928
2185
|
|
|
1929
|
-
|
|
1930
|
-
|
|
1931
|
-
|
|
1932
|
-
|
|
1933
|
-
|
|
1934
|
-
|
|
1935
|
-
|
|
1936
|
-
|
|
1937
|
-
|
|
1938
|
-
|
|
1939
|
-
|
|
1940
|
-
|
|
1941
|
-
|
|
1942
|
-
|
|
1943
|
-
|
|
1944
|
-
|
|
1945
|
-
|
|
1946
|
-
|
|
1947
|
-
|
|
1948
|
-
|
|
1949
|
-
|
|
1950
|
-
|
|
1951
|
-
|
|
1952
|
-
|
|
2186
|
+
class $dc91ece6da6cadfa$export$1533b625ec0c75e2 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
2187
|
+
async goToApplicationsPage() {
|
|
2188
|
+
await this.page.goto("./#/applications");
|
|
2189
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page).toHaveTitle("Applications - Digital.ai Release");
|
|
2190
|
+
return this;
|
|
2191
|
+
}
|
|
2192
|
+
async addNewApplication(applicationName) {
|
|
2193
|
+
await this.page.locator(`//button[normalize-space()='New application']`).click();
|
|
2194
|
+
await this.page.locator(`input[placeholder='Add name...']`).type(applicationName);
|
|
2195
|
+
await this.page.locator(`//button[normalize-space()='Save']`).click();
|
|
2196
|
+
return this;
|
|
2197
|
+
}
|
|
2198
|
+
async verifyApplicationisCreated(applicationName) {
|
|
2199
|
+
await this.page.waitForSelector(`div[title='${applicationName}'] strong`);
|
|
2200
|
+
return this;
|
|
2201
|
+
}
|
|
2202
|
+
async createApplicationAndLinkEnvironment(environmentName, applicationName) {
|
|
2203
|
+
await this.page.locator(`//button[normalize-space()='New application']`).click();
|
|
2204
|
+
await this.page.locator(`input[placeholder='Add name...']`).type(applicationName);
|
|
2205
|
+
await this.page.locator("input[placeholder='Filter environment name...']").type(environmentName);
|
|
2206
|
+
await this.page.locator(`div[title='${environmentName}']`).click();
|
|
2207
|
+
await this.page.locator(`//button[normalize-space()='Save']`).click();
|
|
2208
|
+
await this.page.locator("i.xl-icon.close-icon").click();
|
|
2209
|
+
return this;
|
|
1953
2210
|
}
|
|
1954
|
-
return result;
|
|
1955
|
-
};
|
|
1956
|
-
$2184c74fd3b50571$exports = $2184c74fd3b50571$var$getTag;
|
|
1957
|
-
|
|
1958
|
-
|
|
1959
|
-
var $5cfa9b34443304aa$exports = {};
|
|
1960
|
-
/**
|
|
1961
|
-
* Converts `map` to its key-value pairs.
|
|
1962
|
-
*
|
|
1963
|
-
* @private
|
|
1964
|
-
* @param {Object} map The map to convert.
|
|
1965
|
-
* @returns {Array} Returns the key-value pairs.
|
|
1966
|
-
*/ function $5cfa9b34443304aa$var$mapToArray(map) {
|
|
1967
|
-
var index = -1, result = Array(map.size);
|
|
1968
|
-
map.forEach(function(value, key) {
|
|
1969
|
-
result[++index] = [
|
|
1970
|
-
key,
|
|
1971
|
-
value
|
|
1972
|
-
];
|
|
1973
|
-
});
|
|
1974
|
-
return result;
|
|
1975
2211
|
}
|
|
1976
|
-
$5cfa9b34443304aa$exports = $5cfa9b34443304aa$var$mapToArray;
|
|
1977
2212
|
|
|
1978
2213
|
|
|
1979
|
-
var $e0efec8f59f2b46b$exports = {};
|
|
1980
|
-
/**
|
|
1981
|
-
* Converts `set` to its value-value pairs.
|
|
1982
|
-
*
|
|
1983
|
-
* @private
|
|
1984
|
-
* @param {Object} set The set to convert.
|
|
1985
|
-
* @returns {Array} Returns the value-value pairs.
|
|
1986
|
-
*/ function $e0efec8f59f2b46b$var$setToPairs(set) {
|
|
1987
|
-
var index = -1, result = Array(set.size);
|
|
1988
|
-
set.forEach(function(value) {
|
|
1989
|
-
result[++index] = [
|
|
1990
|
-
value,
|
|
1991
|
-
value
|
|
1992
|
-
];
|
|
1993
|
-
});
|
|
1994
|
-
return result;
|
|
1995
|
-
}
|
|
1996
|
-
$e0efec8f59f2b46b$exports = $e0efec8f59f2b46b$var$setToPairs;
|
|
1997
2214
|
|
|
1998
2215
|
|
|
1999
|
-
|
|
2000
|
-
|
|
2001
|
-
|
|
2002
|
-
|
|
2003
|
-
|
|
2004
|
-
|
|
2005
|
-
|
|
2006
|
-
|
|
2007
|
-
|
|
2008
|
-
|
|
2009
|
-
|
|
2010
|
-
|
|
2011
|
-
return
|
|
2012
|
-
}
|
|
2216
|
+
class $be4dd73206d8e76b$export$3cac5fd37ae64b91 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
2217
|
+
async openPersonalAccessTokenPage() {
|
|
2218
|
+
// await this.page.locator("button.dot-avatar").click()
|
|
2219
|
+
// await this.page.locator("//div[normalize-space()='Access tokens']").click()
|
|
2220
|
+
await this.page.goto("./#/personal-access-token");
|
|
2221
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page).toHaveTitle("Access tokens / Personal settings - Digital.ai Release");
|
|
2222
|
+
return this;
|
|
2223
|
+
}
|
|
2224
|
+
async addNewToken(tokenName) {
|
|
2225
|
+
//await expect(this.page).toHaveTitle('Access tokens / Personal settings - Digital.ai Release')
|
|
2226
|
+
await this.page.locator("#tokenText").fill(tokenName);
|
|
2227
|
+
await this.page.locator("button[type='submit']").click();
|
|
2228
|
+
return this;
|
|
2229
|
+
}
|
|
2013
2230
|
}
|
|
2014
|
-
$acbd35b1cbbf33e4$exports = $acbd35b1cbbf33e4$var$createToPairs;
|
|
2015
2231
|
|
|
2016
2232
|
|
|
2017
2233
|
|
|
2018
|
-
var $bqLSx = parcelRequire("bqLSx");
|
|
2019
|
-
/**
|
|
2020
|
-
* Creates an array of own enumerable string keyed-value pairs for `object`
|
|
2021
|
-
* which can be consumed by `_.fromPairs`. If `object` is a map or set, its
|
|
2022
|
-
* entries are returned.
|
|
2023
|
-
*
|
|
2024
|
-
* @static
|
|
2025
|
-
* @memberOf _
|
|
2026
|
-
* @since 4.0.0
|
|
2027
|
-
* @alias entries
|
|
2028
|
-
* @category Object
|
|
2029
|
-
* @param {Object} object The object to query.
|
|
2030
|
-
* @returns {Array} Returns the key-value pairs.
|
|
2031
|
-
* @example
|
|
2032
|
-
*
|
|
2033
|
-
* function Foo() {
|
|
2034
|
-
* this.a = 1;
|
|
2035
|
-
* this.b = 2;
|
|
2036
|
-
* }
|
|
2037
|
-
*
|
|
2038
|
-
* Foo.prototype.c = 3;
|
|
2039
|
-
*
|
|
2040
|
-
* _.toPairs(new Foo);
|
|
2041
|
-
* // => [['a', 1], ['b', 2]] (iteration order is not guaranteed)
|
|
2042
|
-
*/ var $f51969c4a7467fa0$var$toPairs = $acbd35b1cbbf33e4$exports($bqLSx);
|
|
2043
|
-
$f51969c4a7467fa0$exports = $f51969c4a7467fa0$var$toPairs;
|
|
2044
2234
|
|
|
2045
2235
|
|
|
2046
|
-
|
|
2047
|
-
|
|
2048
|
-
|
|
2049
|
-
|
|
2050
|
-
|
|
2051
|
-
|
|
2052
|
-
|
|
2053
|
-
|
|
2054
|
-
|
|
2055
|
-
|
|
2056
|
-
const DASHBOARD_TYPE = "xlrelease.Dashboard";
|
|
2057
|
-
const _TRIGGER_TYPE = "xlrelease.ReleaseTrigger";
|
|
2058
|
-
const JIRA_TYPE = "jira.CreateIssue";
|
|
2059
|
-
const DEFAULT_TASK_OWNER = "Itchy";
|
|
2060
|
-
const processTasks = (task, container, index)=>{
|
|
2061
|
-
if ((0, (/*@__PURE__*/$parcel$interopDefault($3e8b520187e41aa6$exports)))(task.type)) task.type = TASK_TYPE;
|
|
2062
|
-
task.id = task.id || `${container.id}/Task${index}`;
|
|
2063
|
-
if ((0, (/*@__PURE__*/$parcel$interopDefault($3e8b520187e41aa6$exports)))(task.owner) && task.type !== JIRA_TYPE) task.owner = DEFAULT_TASK_OWNER;
|
|
2064
|
-
if (task.owner === null) delete task.owner;
|
|
2065
|
-
(0, (/*@__PURE__*/$parcel$interopDefault($952a2b8d8056b381$exports)))(task.conditions, function(condition, idx) {
|
|
2066
|
-
condition.type = CONDITION_TYPE;
|
|
2067
|
-
condition.id = `${task.id}/GateCondition${idx}`;
|
|
2068
|
-
});
|
|
2069
|
-
(0, (/*@__PURE__*/$parcel$interopDefault($952a2b8d8056b381$exports)))(task.dependencies, function(dependency, idx) {
|
|
2070
|
-
dependency.type = DEPENDENCY_TYPE;
|
|
2071
|
-
dependency.id = `${task.id}/Dependency${idx}`;
|
|
2072
|
-
});
|
|
2073
|
-
(0, (/*@__PURE__*/$parcel$interopDefault($952a2b8d8056b381$exports)))(task.links, function(link, idx) {
|
|
2074
|
-
link.type = LINK_TYPE;
|
|
2075
|
-
link.id = `${task.id}/Link${idx}`;
|
|
2076
|
-
});
|
|
2077
|
-
(0, (/*@__PURE__*/$parcel$interopDefault($952a2b8d8056b381$exports)))(task.comments, function(comment, idx) {
|
|
2078
|
-
comment.type = COMMENT_TYPE;
|
|
2079
|
-
comment.id = `${task.id}/Comment${idx}`;
|
|
2236
|
+
class $bb5572a48b31014a$export$e2e2e1ffdce20c30 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
2237
|
+
constructor(page){
|
|
2238
|
+
super(page);
|
|
2239
|
+
this.userName = page.locator("#username");
|
|
2240
|
+
this.name = page.locator("#full-name");
|
|
2241
|
+
this.email = page.locator("#email");
|
|
2242
|
+
this.password = page.locator('[data-test="password-input"]');
|
|
2243
|
+
this.cnfPassword = page.locator("#passwordConfirmation");
|
|
2244
|
+
this.saveButton = page.getByRole("button", {
|
|
2245
|
+
name: "Save"
|
|
2080
2246
|
});
|
|
2081
|
-
|
|
2082
|
-
|
|
2247
|
+
this.cancelButton = page.getByRole("button", {
|
|
2248
|
+
name: "Cancel"
|
|
2083
2249
|
});
|
|
2084
|
-
|
|
2085
|
-
|
|
2250
|
+
this.deleteButton = page.getByRole("button", {
|
|
2251
|
+
name: "Delete"
|
|
2086
2252
|
});
|
|
2087
|
-
|
|
2088
|
-
|
|
2089
|
-
|
|
2253
|
+
}
|
|
2254
|
+
async setUserName(username) {
|
|
2255
|
+
return await this.userName.fill(username);
|
|
2256
|
+
}
|
|
2257
|
+
async setFullName(fullName) {
|
|
2258
|
+
return await this.name.fill(fullName);
|
|
2259
|
+
}
|
|
2260
|
+
async setEmail(email) {
|
|
2261
|
+
return await this.email.fill(email);
|
|
2262
|
+
}
|
|
2263
|
+
async setPassword(password) {
|
|
2264
|
+
return await this.password.fill(password);
|
|
2265
|
+
}
|
|
2266
|
+
async setConfirmPassword(cnfPassword) {
|
|
2267
|
+
return await this.cnfPassword.fill(cnfPassword);
|
|
2268
|
+
}
|
|
2269
|
+
async save() {
|
|
2270
|
+
await this.saveButton.click();
|
|
2271
|
+
}
|
|
2272
|
+
async cancel() {
|
|
2273
|
+
await this.cancelButton.click();
|
|
2274
|
+
}
|
|
2275
|
+
async delete() {
|
|
2276
|
+
await this.deleteButton.click();
|
|
2277
|
+
}
|
|
2278
|
+
}
|
|
2279
|
+
|
|
2280
|
+
|
|
2281
|
+
class $3ceab7c613cabfd6$export$107317390f5aa598 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
2282
|
+
constructor(page){
|
|
2283
|
+
super(page);
|
|
2284
|
+
this.page = page;
|
|
2285
|
+
this.newUserButton = this.page.getByTestId("new-user-btn");
|
|
2286
|
+
this.modal = new (0, $bb5572a48b31014a$export$e2e2e1ffdce20c30)(page);
|
|
2287
|
+
}
|
|
2288
|
+
async openUsersPage() {
|
|
2289
|
+
this.page.goto("/#/users", {
|
|
2290
|
+
timeout: 1000
|
|
2090
2291
|
});
|
|
2091
|
-
|
|
2092
|
-
|
|
2093
|
-
|
|
2094
|
-
|
|
2095
|
-
}
|
|
2096
|
-
};
|
|
2097
|
-
|
|
2098
|
-
|
|
2099
|
-
|
|
2100
|
-
|
|
2101
|
-
|
|
2292
|
+
}
|
|
2293
|
+
async toggleLoginPermission(username) {
|
|
2294
|
+
await this.page.getByRole("row", {
|
|
2295
|
+
name: "" + username + ""
|
|
2296
|
+
}).getByRole("checkbox").check();
|
|
2297
|
+
//await this.page.locator(`tr:contains('${username}') .login-permission input`).click();
|
|
2298
|
+
}
|
|
2299
|
+
async addUser() {
|
|
2300
|
+
await this.newUserButton.click();
|
|
2301
|
+
}
|
|
2302
|
+
async createUser(username, password) {
|
|
2303
|
+
await this.modal.setUserName(username);
|
|
2304
|
+
await this.modal.setFullName(username);
|
|
2305
|
+
await this.modal.setEmail("testuser@company.com");
|
|
2306
|
+
await this.modal.setPassword(password);
|
|
2307
|
+
await this.modal.setConfirmPassword(password);
|
|
2308
|
+
await this.modal.save();
|
|
2309
|
+
}
|
|
2310
|
+
async expectToHaveLoginPermission(username) {
|
|
2311
|
+
return await (0, $kKeXs$playwrighttest.expect)(this.page.getByRole("row", {
|
|
2312
|
+
name: "" + username + ""
|
|
2313
|
+
}).getByRole("checkbox")).toBeChecked();
|
|
2314
|
+
}
|
|
2315
|
+
async deleteUser(username) {
|
|
2316
|
+
await this.page.getByRole("row", {
|
|
2317
|
+
name: "" + username + ""
|
|
2318
|
+
}).locator("i").nth(1).click();
|
|
2319
|
+
await this.modal.delete();
|
|
2320
|
+
}
|
|
2321
|
+
}
|
|
2322
|
+
|
|
2323
|
+
|
|
2324
|
+
|
|
2325
|
+
class $7867194f18360347$export$1d7840d5cdc861d5 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
2326
|
+
constructor(page){
|
|
2327
|
+
super(page);
|
|
2328
|
+
this.settingsIcon = this.page.getByRole("button", {
|
|
2329
|
+
name: "Settings"
|
|
2102
2330
|
});
|
|
2103
|
-
|
|
2104
|
-
|
|
2105
|
-
|
|
2106
|
-
|
|
2107
|
-
|
|
2108
|
-
|
|
2109
|
-
|
|
2110
|
-
|
|
2111
|
-
|
|
2112
|
-
|
|
2113
|
-
|
|
2114
|
-
|
|
2115
|
-
|
|
2116
|
-
|
|
2117
|
-
|
|
2118
|
-
|
|
2331
|
+
this.usersAndPermissionMenu = this.page.getByTestId("undefined-menu").getByText("Users and permissions");
|
|
2332
|
+
this.managePluginMenu = this.page.getByText("Manage plugins");
|
|
2333
|
+
}
|
|
2334
|
+
async openUsersAndPermissions() {
|
|
2335
|
+
await this.settingsIcon.click();
|
|
2336
|
+
await this.page.getByTestId("undefined-menu").getByText("Users and permissions").click();
|
|
2337
|
+
}
|
|
2338
|
+
async openManagePlugin() {
|
|
2339
|
+
await this.settingsIcon.click();
|
|
2340
|
+
await this.managePluginMenu.click();
|
|
2341
|
+
}
|
|
2342
|
+
}
|
|
2343
|
+
|
|
2344
|
+
|
|
2345
|
+
|
|
2346
|
+
class $a642d735048996f9$export$922081b54f2ab994 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
2347
|
+
constructor(page){
|
|
2348
|
+
super(page);
|
|
2349
|
+
}
|
|
2350
|
+
}
|
|
2351
|
+
|
|
2352
|
+
|
|
2353
|
+
|
|
2354
|
+
|
|
2355
|
+
class $a8855257f8bb2b12$export$43682cddead1dd78 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
2356
|
+
async openReleaseCalendarPage() {
|
|
2357
|
+
await this.page.goto("./#/calendar");
|
|
2358
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page).toHaveTitle("Release calendar / Home - Digital.ai Release");
|
|
2359
|
+
//Define date format to verify different calendar views
|
|
2360
|
+
const today = new Date();
|
|
2361
|
+
let options = {
|
|
2362
|
+
weekday: "long",
|
|
2363
|
+
year: "numeric",
|
|
2364
|
+
month: "short",
|
|
2365
|
+
day: "numeric"
|
|
2119
2366
|
};
|
|
2120
|
-
|
|
2121
|
-
|
|
2122
|
-
|
|
2123
|
-
|
|
2124
|
-
|
|
2125
|
-
|
|
2367
|
+
this.dayFormat = today.toLocaleDateString("en-US", options); // Saturday, September 17, 2016
|
|
2368
|
+
this.yearFormat = today.getFullYear();
|
|
2369
|
+
this.yearFormatString = this.yearFormat.toString();
|
|
2370
|
+
options = {
|
|
2371
|
+
month: "long",
|
|
2372
|
+
year: "numeric"
|
|
2126
2373
|
};
|
|
2127
|
-
|
|
2128
|
-
|
|
2129
|
-
});
|
|
2130
|
-
return dashboardExtension;
|
|
2131
|
-
};
|
|
2132
|
-
function getTileEntity(tile, containerId, index) {
|
|
2133
|
-
tile.id = tile.id || `${containerId}/Tile${index}`;
|
|
2134
|
-
return tile;
|
|
2374
|
+
this.monthFormat = today.toLocaleDateString("en-US", options);
|
|
2375
|
+
return this;
|
|
2135
2376
|
}
|
|
2136
|
-
|
|
2137
|
-
|
|
2138
|
-
|
|
2139
|
-
|
|
2140
|
-
|
|
2141
|
-
|
|
2142
|
-
|
|
2143
|
-
|
|
2144
|
-
|
|
2145
|
-
|
|
2146
|
-
|
|
2147
|
-
|
|
2148
|
-
|
|
2149
|
-
|
|
2150
|
-
|
|
2151
|
-
(
|
|
2152
|
-
|
|
2153
|
-
attachment.id = `${release.id}/Attachment${index}`;
|
|
2154
|
-
});
|
|
2155
|
-
(0, (/*@__PURE__*/$parcel$interopDefault($ae8Uz)))(release.variables, function(variable, index) {
|
|
2156
|
-
(0, (/*@__PURE__*/$parcel$interopDefault($732eba8dca8b5420$exports)))(variable, getVariableEntity(variable.value, variable.key, release.id, index));
|
|
2157
|
-
if (variable.valueProvider) (0, (/*@__PURE__*/$parcel$interopDefault($732eba8dca8b5420$exports)))(variable.valueProvider, getValueProviderConfigurationEntity(variable.id));
|
|
2158
|
-
});
|
|
2159
|
-
(0, (/*@__PURE__*/$parcel$interopDefault($ae8Uz)))((0, (/*@__PURE__*/$parcel$interopDefault($f51969c4a7467fa0$exports)))(release.variableValues), function(keyValue, index) {
|
|
2160
|
-
if (!release.variables) release.variables = [];
|
|
2161
|
-
release.variables.push(getVariableEntity(keyValue[1], keyValue[0], release.id, 1000 + index));
|
|
2162
|
-
release.variableValues = undefined;
|
|
2163
|
-
});
|
|
2164
|
-
(0, (/*@__PURE__*/$parcel$interopDefault($ae8Uz)))((0, (/*@__PURE__*/$parcel$interopDefault($f51969c4a7467fa0$exports)))(release.passwordVariableValues), function(keyValue, index) {
|
|
2165
|
-
if (!release.variables) release.variables = [];
|
|
2166
|
-
release.variables.push(getVariableEntity(keyValue[1], keyValue[0], release.id, 1500 + index, true));
|
|
2167
|
-
release.passwordVariableValues = undefined;
|
|
2377
|
+
async exportCalendar() {
|
|
2378
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
2379
|
+
this.page.on("download", ()=>{});
|
|
2380
|
+
await this.page.getByRole("button", {
|
|
2381
|
+
name: "download icon Export calendar"
|
|
2382
|
+
}).click();
|
|
2383
|
+
const downloadPromise = this.page.waitForEvent("download");
|
|
2384
|
+
await this.page.getByRole("button", {
|
|
2385
|
+
name: "Export"
|
|
2386
|
+
}).click();
|
|
2387
|
+
await downloadPromise;
|
|
2388
|
+
}
|
|
2389
|
+
async cancelCalendarExport() {
|
|
2390
|
+
let downloadCount = 0;
|
|
2391
|
+
// Listen to download events
|
|
2392
|
+
this.page.on("download", (_download)=>{
|
|
2393
|
+
downloadCount++;
|
|
2168
2394
|
});
|
|
2169
|
-
|
|
2170
|
-
|
|
2171
|
-
|
|
2172
|
-
|
|
2173
|
-
|
|
2174
|
-
}
|
|
2175
|
-
|
|
2176
|
-
}
|
|
2395
|
+
await this.page.getByRole("button", {
|
|
2396
|
+
name: "download icon Export calendar"
|
|
2397
|
+
}).click();
|
|
2398
|
+
await this.page.getByRole("button", {
|
|
2399
|
+
name: "Cancel"
|
|
2400
|
+
}).click();
|
|
2401
|
+
return downloadCount;
|
|
2402
|
+
}
|
|
2403
|
+
async verifyDayView() {
|
|
2404
|
+
await this.page.getByRole("combobox").click();
|
|
2405
|
+
await this.page.getByRole("option", {
|
|
2406
|
+
name: "Day"
|
|
2407
|
+
}).click();
|
|
2408
|
+
await this.page.getByRole("button", {
|
|
2409
|
+
name: "Today"
|
|
2410
|
+
}).click();
|
|
2411
|
+
//Verify Page has correct day format displayed at the page bottom
|
|
2412
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.getByText(this.dayFormat)).toBeVisible();
|
|
2413
|
+
}
|
|
2414
|
+
async verifyYearView() {
|
|
2415
|
+
await this.page.getByRole("combobox").click();
|
|
2416
|
+
await this.page.getByRole("option", {
|
|
2417
|
+
name: "Year"
|
|
2418
|
+
}).click();
|
|
2419
|
+
await this.page.getByRole("button", {
|
|
2420
|
+
name: "Today"
|
|
2421
|
+
}).click();
|
|
2422
|
+
//Verify Page has correct Year format displayed at the page bottom
|
|
2423
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.getByText(this.yearFormatString)).toBeVisible();
|
|
2424
|
+
}
|
|
2425
|
+
}
|
|
2426
|
+
|
|
2427
|
+
|
|
2428
|
+
class $4ef41cf96a5fae4c$export$b8a61e5c71402559 {
|
|
2429
|
+
constructor(page){
|
|
2430
|
+
this.page = page;
|
|
2431
|
+
this.releasePage = new (0, $9b9a8c3da392d020$export$f43492e8ac3c566)(page);
|
|
2432
|
+
this.settingsMenu = new (0, $7867194f18360347$export$1d7840d5cdc861d5)(page);
|
|
2433
|
+
this.usersPage = new (0, $3ceab7c613cabfd6$export$107317390f5aa598)(page);
|
|
2434
|
+
this.applicationPage = new (0, $dc91ece6da6cadfa$export$1533b625ec0c75e2)(page);
|
|
2435
|
+
this.taskDetailsPage = new (0, $a642d735048996f9$export$922081b54f2ab994)(page);
|
|
2436
|
+
this.releaseCalendarPage = new (0, $a8855257f8bb2b12$export$43682cddead1dd78)(page);
|
|
2437
|
+
}
|
|
2438
|
+
async openTemplate(id) {
|
|
2439
|
+
return this.openReleaseOrTemplate(id, false);
|
|
2440
|
+
}
|
|
2441
|
+
async openRelease(id) {
|
|
2442
|
+
return this.openReleaseOrTemplate(id, true);
|
|
2443
|
+
}
|
|
2444
|
+
async openApplicationsPage() {
|
|
2445
|
+
return new (0, $dc91ece6da6cadfa$export$1533b625ec0c75e2)(this.page).goToApplicationsPage();
|
|
2446
|
+
}
|
|
2447
|
+
async openPersonalAccessTokenPage() {
|
|
2448
|
+
return new (0, $be4dd73206d8e76b$export$3cac5fd37ae64b91)(this.page).openPersonalAccessTokenPage();
|
|
2449
|
+
}
|
|
2450
|
+
async gotoFolderPage() {
|
|
2451
|
+
await this.page.getByText("Folders").click();
|
|
2452
|
+
}
|
|
2453
|
+
async gotoTaskPage() {
|
|
2454
|
+
await this.page.getByTestId("sideNav-item-3").getByText("Tasks").click();
|
|
2455
|
+
}
|
|
2456
|
+
async gotoReleasePage() {
|
|
2457
|
+
await this.page.getByText("Releases").click();
|
|
2458
|
+
}
|
|
2459
|
+
async gotoWorkflowCatalogPage() {
|
|
2460
|
+
await this.page.getByText("Workflow catalog").click();
|
|
2461
|
+
}
|
|
2462
|
+
async gotoWorkflowsPage() {
|
|
2463
|
+
await this.page.getByTestId("sideNav-item-6").getByText("Workflows").click();
|
|
2464
|
+
}
|
|
2465
|
+
async gotoGroupsPage() {
|
|
2466
|
+
await this.page.getByText("Groups").click();
|
|
2467
|
+
}
|
|
2468
|
+
async gotoReleaseCalenderPage() {
|
|
2469
|
+
await this.page.getByText("Release calendar").click();
|
|
2470
|
+
}
|
|
2471
|
+
async gotoDeliveriesPage() {
|
|
2472
|
+
await this.page.getByText("Deliveries").click();
|
|
2473
|
+
}
|
|
2474
|
+
async gotoTriggersPage() {
|
|
2475
|
+
await this.page.getByText("Triggers").click();
|
|
2476
|
+
}
|
|
2477
|
+
async gotoDigitalAnalyticsPage() {
|
|
2478
|
+
await this.page.getByText("Digital.ai Analytics").click();
|
|
2479
|
+
}
|
|
2480
|
+
async gotoReportsPage() {
|
|
2481
|
+
await this.page.getByText("Reports").click();
|
|
2482
|
+
}
|
|
2483
|
+
async gotoTemplatesPage() {
|
|
2484
|
+
await this.page.getByText("Templates").click();
|
|
2485
|
+
}
|
|
2486
|
+
async gotoEnvironmentsPage() {
|
|
2487
|
+
await this.page.getByText("Environments").click();
|
|
2488
|
+
}
|
|
2489
|
+
async gotoEnvironmentsCalenderPage() {
|
|
2490
|
+
await this.page.getByText("Environments calendar").click();
|
|
2491
|
+
}
|
|
2492
|
+
async gotoGobalVariablesPage() {
|
|
2493
|
+
await this.page.getByText("Global variables").click();
|
|
2494
|
+
}
|
|
2495
|
+
async gotoConnectionsPage() {
|
|
2496
|
+
await this.page.getByText("Connections").click();
|
|
2497
|
+
}
|
|
2498
|
+
async openReleaseOrTemplate(id, release) {
|
|
2499
|
+
const url = release ? "releases" : "templates";
|
|
2500
|
+
await this.page.goto(`./#/${url}/${id}`);
|
|
2501
|
+
await this.page.waitForSelector("#release");
|
|
2502
|
+
return new (0, $9b9a8c3da392d020$export$f43492e8ac3c566)(this.page);
|
|
2503
|
+
}
|
|
2504
|
+
}
|
|
2177
2505
|
|
|
2178
2506
|
|
|
2179
2507
|
|
|
@@ -2189,7 +2517,7 @@ const $6998c6a53a9eb4fa$export$e0969da9b8fb378d = (0, $kKeXs$playwrighttest.test
|
|
|
2189
2517
|
return fixtures;
|
|
2190
2518
|
},
|
|
2191
2519
|
loginPage: async ({ page: page }, use)=>{
|
|
2192
|
-
const loginPage = new (0, $
|
|
2520
|
+
const loginPage = new (0, $258749e0671c845a$export$f14c0e3f98d164c0)(page);
|
|
2193
2521
|
await use(loginPage);
|
|
2194
2522
|
return loginPage;
|
|
2195
2523
|
},
|
|
@@ -2203,11 +2531,13 @@ class $6998c6a53a9eb4fa$var$Fixtures {
|
|
|
2203
2531
|
releaseIds = [];
|
|
2204
2532
|
triggerIds = [];
|
|
2205
2533
|
configurationIds = [];
|
|
2534
|
+
usernames = [];
|
|
2535
|
+
userProfiles = [];
|
|
2206
2536
|
constructor(request, page){
|
|
2207
2537
|
this.request = request;
|
|
2208
2538
|
this.page = page;
|
|
2209
2539
|
}
|
|
2210
|
-
release(release) {
|
|
2540
|
+
async release(release) {
|
|
2211
2541
|
this.initDefaults(release);
|
|
2212
2542
|
this.releaseIds.push(release.id);
|
|
2213
2543
|
return this.deleteRelease(release.id).then(()=>this.deleteArchivedRelease(release.id)).then(()=>this.doPost("fixtures/release", release));
|
|
@@ -2248,9 +2578,13 @@ class $6998c6a53a9eb4fa$var$Fixtures {
|
|
|
2248
2578
|
for (const releaseId of this.releaseIds.reverse())promises.push(this.deleteRelease(releaseId));
|
|
2249
2579
|
for (const triggerId of this.triggerIds)promises.push(this.deleteTrigger(triggerId));
|
|
2250
2580
|
for (const confId of this.configurationIds)promises.push(this.deleteConfiguration(confId));
|
|
2581
|
+
for (const usernames of this.usernames)promises.push(this.deleteUser(usernames));
|
|
2582
|
+
for (const userProfiles of this.userProfiles)promises.push(this.deleteUserProfile(userProfiles));
|
|
2251
2583
|
this.releaseIds = [];
|
|
2252
2584
|
this.triggerIds = [];
|
|
2253
2585
|
this.configurationIds = [];
|
|
2586
|
+
this.usernames = [];
|
|
2587
|
+
this.userProfiles = [];
|
|
2254
2588
|
return Promise.all(promises);
|
|
2255
2589
|
}
|
|
2256
2590
|
async waitForReleaseStarted(releaseTitle) {
|
|
@@ -2300,6 +2634,27 @@ class $6998c6a53a9eb4fa$var$Fixtures {
|
|
|
2300
2634
|
}
|
|
2301
2635
|
]);
|
|
2302
2636
|
}
|
|
2637
|
+
async addUser(username, password) {
|
|
2638
|
+
this.usernames.push(username);
|
|
2639
|
+
return await this.doPost("fixtures/user", {
|
|
2640
|
+
username: username,
|
|
2641
|
+
password: password
|
|
2642
|
+
});
|
|
2643
|
+
}
|
|
2644
|
+
async addUserProfile(username, profile) {
|
|
2645
|
+
if (!profile) profile = {};
|
|
2646
|
+
profile.id = username;
|
|
2647
|
+
profile.type = "xlrelease.UserProfile";
|
|
2648
|
+
profile.canonicalId = username.toLowerCase();
|
|
2649
|
+
this.userProfiles.push(profile.canonicalId);
|
|
2650
|
+
return await this.doPost("fixtures/userProfile", profile);
|
|
2651
|
+
}
|
|
2652
|
+
async deleteUser(username) {
|
|
2653
|
+
return await this.request.delete(`fixtures/user/${username}`);
|
|
2654
|
+
}
|
|
2655
|
+
async deleteUserProfile(username) {
|
|
2656
|
+
return await this.request.delete(`fixtures/userProfile/${username}`);
|
|
2657
|
+
}
|
|
2303
2658
|
doPost(url, body) {
|
|
2304
2659
|
return this.request.post(url, {
|
|
2305
2660
|
data: body,
|