@digital-ai/devops-page-object-release 0.0.7 → 0.0.8
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 +10 -0
- package/dist/main.js +1308 -1031
- package/dist/main.js.map +1 -1
- package/dist/module.js +524 -247
- package/dist/module.js.map +1 -1
- package/dist/types.d.ts +199 -104
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/main.js
CHANGED
|
@@ -947,1233 +947,1483 @@ 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
|
-
|
|
1078
|
-
}
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1082
|
-
|
|
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
|
-
}
|
|
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;
|
|
1109
1166
|
}
|
|
1167
|
+
$b7745e89d7f5915f$exports = $b7745e89d7f5915f$var$getNative;
|
|
1110
1168
|
|
|
1111
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;
|
|
1112
1178
|
|
|
1113
1179
|
|
|
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
1180
|
|
|
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;
|
|
1186
1198
|
|
|
1187
|
-
|
|
1188
|
-
|
|
1189
|
-
|
|
1190
|
-
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
|
|
1199
|
-
|
|
1200
|
-
|
|
1201
|
-
|
|
1202
|
-
|
|
1203
|
-
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
|
|
1207
|
-
|
|
1208
|
-
|
|
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
|
-
}
|
|
1199
|
+
|
|
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
|
+
};
|
|
1272
1221
|
}
|
|
1222
|
+
$f6a97849336ceea8$exports = $f6a97849336ceea8$var$shortOut;
|
|
1273
1223
|
|
|
1274
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;
|
|
1275
1234
|
|
|
1276
1235
|
|
|
1277
|
-
|
|
1278
|
-
|
|
1279
|
-
|
|
1280
|
-
|
|
1281
|
-
|
|
1282
|
-
|
|
1283
|
-
|
|
1284
|
-
|
|
1285
|
-
|
|
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
|
-
}
|
|
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 + "");
|
|
1302
1245
|
}
|
|
1246
|
+
$b1535b4ce0d1bd5f$exports = $b1535b4ce0d1bd5f$var$baseRest;
|
|
1303
1247
|
|
|
1304
1248
|
|
|
1249
|
+
var $ceebddaa7160689c$exports = {};
|
|
1250
|
+
/**
|
|
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.
|
|
1254
|
+
*
|
|
1255
|
+
* @static
|
|
1256
|
+
* @memberOf _
|
|
1257
|
+
* @since 4.0.0
|
|
1258
|
+
* @category Lang
|
|
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`.
|
|
1262
|
+
* @example
|
|
1263
|
+
*
|
|
1264
|
+
* var object = { 'a': 1 };
|
|
1265
|
+
* var other = { 'a': 1 };
|
|
1266
|
+
*
|
|
1267
|
+
* _.eq(object, object);
|
|
1268
|
+
* // => true
|
|
1269
|
+
*
|
|
1270
|
+
* _.eq(object, other);
|
|
1271
|
+
* // => false
|
|
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;
|
|
1283
|
+
}
|
|
1284
|
+
$ceebddaa7160689c$exports = $ceebddaa7160689c$var$eq;
|
|
1305
1285
|
|
|
1306
1286
|
|
|
1307
|
-
|
|
1308
|
-
async openPersonalAccessTokenPage() {
|
|
1309
|
-
// await this.page.locator("button.dot-avatar").click()
|
|
1310
|
-
// await this.page.locator("//div[normalize-space()='Access tokens']").click()
|
|
1311
|
-
await this.page.goto("./#/personal-access-token");
|
|
1312
|
-
await (0, $kKeXs$playwrighttest.expect)(this.page).toHaveTitle("Access tokens / Personal settings - Digital.ai Release");
|
|
1313
|
-
return this;
|
|
1314
|
-
}
|
|
1315
|
-
async addNewToken(tokenName) {
|
|
1316
|
-
//await expect(this.page).toHaveTitle('Access tokens / Personal settings - Digital.ai Release')
|
|
1317
|
-
await this.page.locator("#tokenText").fill(tokenName);
|
|
1318
|
-
await this.page.locator("button[type='submit']").click();
|
|
1319
|
-
return this;
|
|
1320
|
-
}
|
|
1321
|
-
}
|
|
1287
|
+
var $e084f044678f4365$exports = {};
|
|
1322
1288
|
|
|
1323
1289
|
|
|
1324
|
-
|
|
1325
|
-
|
|
1326
|
-
|
|
1327
|
-
|
|
1328
|
-
|
|
1329
|
-
|
|
1330
|
-
|
|
1331
|
-
|
|
1332
|
-
|
|
1333
|
-
|
|
1334
|
-
|
|
1335
|
-
|
|
1336
|
-
|
|
1337
|
-
|
|
1338
|
-
|
|
1339
|
-
|
|
1340
|
-
|
|
1341
|
-
|
|
1342
|
-
|
|
1343
|
-
await this.page.waitForSelector("#release");
|
|
1344
|
-
return new (0, $fcbf42f405a34f2e$export$f43492e8ac3c566)(this.page);
|
|
1345
|
-
}
|
|
1290
|
+
var $fegcS = parcelRequire("fegcS");
|
|
1291
|
+
|
|
1292
|
+
var $gf9YK = parcelRequire("gf9YK");
|
|
1293
|
+
|
|
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;
|
|
1346
1309
|
}
|
|
1310
|
+
$e084f044678f4365$exports = $e084f044678f4365$var$isIterateeCall;
|
|
1347
1311
|
|
|
1348
1312
|
|
|
1313
|
+
var $0e6e2e34ec44a72a$exports = {};
|
|
1349
1314
|
|
|
1315
|
+
var $gYWmw = parcelRequire("gYWmw");
|
|
1316
|
+
var $b4b8b2a977b4cc10$exports = {};
|
|
1350
1317
|
|
|
1351
|
-
|
|
1352
|
-
|
|
1353
|
-
|
|
1354
|
-
|
|
1355
|
-
|
|
1356
|
-
|
|
1357
|
-
|
|
1358
|
-
|
|
1359
|
-
|
|
1360
|
-
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1318
|
+
var $bfk90 = parcelRequire("bfk90");
|
|
1319
|
+
|
|
1320
|
+
var $cjTq2 = parcelRequire("cjTq2");
|
|
1321
|
+
var $59b6e790ee7519e4$exports = {};
|
|
1322
|
+
/**
|
|
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.
|
|
1326
|
+
*
|
|
1327
|
+
* @private
|
|
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;
|
|
1364
1334
|
}
|
|
1335
|
+
$59b6e790ee7519e4$exports = $59b6e790ee7519e4$var$nativeKeysIn;
|
|
1365
1336
|
|
|
1366
1337
|
|
|
1367
|
-
var $
|
|
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;
|
|
1368
1340
|
/**
|
|
1369
|
-
*
|
|
1341
|
+
* The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.
|
|
1342
|
+
*
|
|
1343
|
+
* @private
|
|
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.
|
|
1370
1361
|
*
|
|
1371
1362
|
* @static
|
|
1372
|
-
* @since 0.1.0
|
|
1373
1363
|
* @memberOf _
|
|
1374
|
-
* @
|
|
1375
|
-
* @
|
|
1376
|
-
* @
|
|
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.
|
|
1377
1368
|
* @example
|
|
1378
1369
|
*
|
|
1379
|
-
*
|
|
1380
|
-
*
|
|
1370
|
+
* function Foo() {
|
|
1371
|
+
* this.a = 1;
|
|
1372
|
+
* this.b = 2;
|
|
1373
|
+
* }
|
|
1381
1374
|
*
|
|
1382
|
-
*
|
|
1383
|
-
*
|
|
1384
|
-
|
|
1385
|
-
|
|
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);
|
|
1386
1381
|
}
|
|
1387
|
-
$
|
|
1388
|
-
|
|
1389
|
-
|
|
1390
|
-
var $952a2b8d8056b381$exports = {};
|
|
1391
|
-
|
|
1392
|
-
$952a2b8d8056b381$exports = (parcelRequire("ae8Uz"));
|
|
1382
|
+
$0e6e2e34ec44a72a$exports = $0e6e2e34ec44a72a$var$keysIn;
|
|
1393
1383
|
|
|
1394
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;
|
|
1395
1427
|
|
|
1396
|
-
var $ae8Uz = parcelRequire("ae8Uz");
|
|
1397
|
-
var $732eba8dca8b5420$exports = {};
|
|
1398
|
-
var $b1535b4ce0d1bd5f$exports = {};
|
|
1399
1428
|
|
|
1400
|
-
var $
|
|
1401
|
-
var $
|
|
1402
|
-
var $
|
|
1429
|
+
var $f51969c4a7467fa0$exports = {};
|
|
1430
|
+
var $acbd35b1cbbf33e4$exports = {};
|
|
1431
|
+
var $34482bf0fdb87aa6$exports = {};
|
|
1432
|
+
var $c258ac491a64b22b$exports = {};
|
|
1403
1433
|
/**
|
|
1404
|
-
* A
|
|
1405
|
-
*
|
|
1434
|
+
* A specialized version of `_.map` for arrays without support for iteratee
|
|
1435
|
+
* shorthands.
|
|
1406
1436
|
*
|
|
1407
1437
|
* @private
|
|
1408
|
-
* @param {
|
|
1409
|
-
* @param {
|
|
1410
|
-
* @
|
|
1411
|
-
|
|
1412
|
-
|
|
1413
|
-
|
|
1414
|
-
|
|
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);
|
|
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;
|
|
1424
1445
|
}
|
|
1425
|
-
$
|
|
1446
|
+
$c258ac491a64b22b$exports = $c258ac491a64b22b$var$arrayMap;
|
|
1426
1447
|
|
|
1427
1448
|
|
|
1428
|
-
/* Built-in method references for those with the same name as other `lodash` methods. */ var $1b1aa0f3fc7256c9$var$nativeMax = Math.max;
|
|
1429
1449
|
/**
|
|
1430
|
-
*
|
|
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`.
|
|
1431
1452
|
*
|
|
1432
1453
|
* @private
|
|
1433
|
-
* @param {
|
|
1434
|
-
* @param {
|
|
1435
|
-
* @
|
|
1436
|
-
|
|
1437
|
-
|
|
1438
|
-
|
|
1439
|
-
|
|
1440
|
-
|
|
1441
|
-
|
|
1442
|
-
|
|
1443
|
-
var otherArgs = Array(start + 1);
|
|
1444
|
-
while(++index < start)otherArgs[index] = args[index];
|
|
1445
|
-
otherArgs[start] = transform(array);
|
|
1446
|
-
return $f984f14b3d4f0683$exports(func, this, otherArgs);
|
|
1447
|
-
};
|
|
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
|
+
});
|
|
1448
1464
|
}
|
|
1449
|
-
$
|
|
1465
|
+
$34482bf0fdb87aa6$exports = $34482bf0fdb87aa6$var$baseToPairs;
|
|
1450
1466
|
|
|
1451
1467
|
|
|
1452
|
-
var $
|
|
1453
|
-
var $
|
|
1454
|
-
var $3dc9802adab1dd60$exports = {};
|
|
1455
|
-
/**
|
|
1456
|
-
* Creates a function that returns `value`.
|
|
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 }]
|
|
1470
|
-
*
|
|
1471
|
-
* console.log(objects[0] === objects[1]);
|
|
1472
|
-
* // => true
|
|
1473
|
-
*/ function $3dc9802adab1dd60$var$constant(value) {
|
|
1474
|
-
return function() {
|
|
1475
|
-
return value;
|
|
1476
|
-
};
|
|
1477
|
-
}
|
|
1478
|
-
$3dc9802adab1dd60$exports = $3dc9802adab1dd60$var$constant;
|
|
1468
|
+
var $2184c74fd3b50571$exports = {};
|
|
1469
|
+
var $9707ed10f1d74f7d$exports = {};
|
|
1479
1470
|
|
|
1480
1471
|
|
|
1481
|
-
var $
|
|
1482
|
-
var $b7745e89d7f5915f$exports
|
|
1483
|
-
|
|
1472
|
+
var $5iYlB = parcelRequire("5iYlB");
|
|
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;
|
|
1475
|
+
|
|
1476
|
+
|
|
1477
|
+
var $8c4ecd35968046d6$exports = {};
|
|
1484
1478
|
|
|
1485
|
-
var $7T6pQ = parcelRequire("7T6pQ");
|
|
1486
|
-
var $1fb1799a04ee25ea$exports = {};
|
|
1487
|
-
var $5ee1230bf1668e2a$exports = {};
|
|
1488
1479
|
|
|
1489
1480
|
var $5iYlB = parcelRequire("5iYlB");
|
|
1490
|
-
|
|
1491
|
-
$
|
|
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;
|
|
1492
1483
|
|
|
1493
1484
|
|
|
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;
|
|
1485
|
+
var $30f4d64ddd8effd1$exports = {};
|
|
1508
1486
|
|
|
1509
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;
|
|
1510
1491
|
|
|
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
1492
|
|
|
1493
|
+
var $869474d4b330cc35$exports = {};
|
|
1534
1494
|
|
|
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
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;
|
|
1558
1499
|
|
|
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
1500
|
|
|
1501
|
+
var $c4df061ad36170d9$exports = {};
|
|
1572
1502
|
|
|
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
1503
|
|
|
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;
|
|
1586
1507
|
|
|
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
1508
|
|
|
1596
1509
|
|
|
1510
|
+
var $hi3Ib = parcelRequire("hi3Ib");
|
|
1597
1511
|
|
|
1598
|
-
var $
|
|
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;
|
|
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;
|
|
1702
1627
|
|
|
1703
1628
|
|
|
1704
|
-
|
|
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
|
+
}();
|
|
1705
1760
|
|
|
1706
1761
|
|
|
1707
|
-
var $fegcS = parcelRequire("fegcS");
|
|
1708
1762
|
|
|
1709
|
-
|
|
1763
|
+
class $f8721861c660dd88$export$2b65d1d97338f32b {
|
|
1764
|
+
constructor(page){
|
|
1765
|
+
this.page = page;
|
|
1766
|
+
}
|
|
1767
|
+
}
|
|
1710
1768
|
|
|
1711
|
-
|
|
1712
|
-
|
|
1713
|
-
|
|
1714
|
-
|
|
1715
|
-
|
|
1716
|
-
|
|
1717
|
-
|
|
1718
|
-
|
|
1719
|
-
|
|
1720
|
-
|
|
1721
|
-
|
|
1722
|
-
|
|
1723
|
-
|
|
1724
|
-
|
|
1725
|
-
|
|
1769
|
+
|
|
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.locator("#inputLogin").fill(userName);
|
|
1780
|
+
await this.page.locator("#inputPassword").fill(password);
|
|
1781
|
+
await this.page.locator("button[type='submit']").click();
|
|
1782
|
+
}
|
|
1783
|
+
/**
|
|
1784
|
+
* Logout as authenticated user
|
|
1785
|
+
*/ async logout() {
|
|
1786
|
+
await this.page.locator("button.dot-avatar").click();
|
|
1787
|
+
await this.page.getByText("Log out").click();
|
|
1788
|
+
}
|
|
1789
|
+
/**
|
|
1790
|
+
* Expect login to be restricted for a user
|
|
1791
|
+
*/ async expectLoginDisallowed() {
|
|
1792
|
+
const val = await this.page.textContent('.error-content span[ng-show="loginInfo.failedStatus == 403"]');
|
|
1793
|
+
(0, $kKeXs$playwrighttest.expect)(val).toContain("You do not have 'login' permission.");
|
|
1794
|
+
}
|
|
1795
|
+
/**
|
|
1796
|
+
* Expect the respective user is logged In
|
|
1797
|
+
* @param username
|
|
1798
|
+
*/ async expectToBeLogged(username) {
|
|
1799
|
+
const val = await this.page.locator("top-toolbar .avatar-wrapper span.dot-tooltip").getAttribute("aria-label");
|
|
1800
|
+
(0, $kKeXs$playwrighttest.expect)(val).toContain(username);
|
|
1801
|
+
}
|
|
1726
1802
|
}
|
|
1727
|
-
$e084f044678f4365$exports = $e084f044678f4365$var$isIterateeCall;
|
|
1728
1803
|
|
|
1729
1804
|
|
|
1730
|
-
var $0e6e2e34ec44a72a$exports = {};
|
|
1731
1805
|
|
|
1732
|
-
var $gYWmw = parcelRequire("gYWmw");
|
|
1733
|
-
var $b4b8b2a977b4cc10$exports = {};
|
|
1734
1806
|
|
|
1735
|
-
var $bfk90 = parcelRequire("bfk90");
|
|
1736
1807
|
|
|
1737
|
-
var $cjTq2 = parcelRequire("cjTq2");
|
|
1738
|
-
var $59b6e790ee7519e4$exports = {};
|
|
1739
|
-
/**
|
|
1740
|
-
* This function is like
|
|
1741
|
-
* [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)
|
|
1742
|
-
* except that it includes inherited enumerable properties.
|
|
1743
|
-
*
|
|
1744
|
-
* @private
|
|
1745
|
-
* @param {Object} object The object to query.
|
|
1746
|
-
* @returns {Array} Returns the array of property names.
|
|
1747
|
-
*/ function $59b6e790ee7519e4$var$nativeKeysIn(object) {
|
|
1748
|
-
var result = [];
|
|
1749
|
-
if (object != null) for(var key in Object(object))result.push(key);
|
|
1750
|
-
return result;
|
|
1751
|
-
}
|
|
1752
|
-
$59b6e790ee7519e4$exports = $59b6e790ee7519e4$var$nativeKeysIn;
|
|
1753
1808
|
|
|
1754
1809
|
|
|
1755
|
-
|
|
1756
|
-
|
|
1757
|
-
|
|
1758
|
-
|
|
1759
|
-
|
|
1760
|
-
|
|
1761
|
-
|
|
1762
|
-
|
|
1763
|
-
|
|
1764
|
-
|
|
1765
|
-
|
|
1766
|
-
for(var key in object)if (!(key == "constructor" && (isProto || !$b4b8b2a977b4cc10$var$hasOwnProperty.call(object, key)))) result.push(key);
|
|
1767
|
-
return result;
|
|
1810
|
+
class $280428cd9976d58e$export$a678525e79c4ccc4 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1811
|
+
async expectNumberOfReleases(releaseTitle, amount) {
|
|
1812
|
+
if (amount === 1) await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".release").getByText(releaseTitle)).toBeVisible();
|
|
1813
|
+
else await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".release").getByText(releaseTitle).count()).toBe(amount);
|
|
1814
|
+
}
|
|
1815
|
+
async openReleaseByName(releaseTitle) {
|
|
1816
|
+
await this.page.locator(".release-line .row-wrapper .release-title-wrapper a", {
|
|
1817
|
+
hasText: releaseTitle
|
|
1818
|
+
}).click();
|
|
1819
|
+
return new (0, $9b9a8c3da392d020$export$f43492e8ac3c566)(this.page);
|
|
1820
|
+
}
|
|
1768
1821
|
}
|
|
1769
|
-
$b4b8b2a977b4cc10$exports = $b4b8b2a977b4cc10$var$baseKeysIn;
|
|
1770
1822
|
|
|
1771
1823
|
|
|
1772
1824
|
|
|
1773
|
-
|
|
1774
|
-
|
|
1775
|
-
|
|
1776
|
-
|
|
1777
|
-
|
|
1778
|
-
|
|
1779
|
-
|
|
1780
|
-
|
|
1781
|
-
|
|
1782
|
-
|
|
1783
|
-
|
|
1784
|
-
|
|
1785
|
-
|
|
1786
|
-
|
|
1787
|
-
|
|
1788
|
-
|
|
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);
|
|
1825
|
+
class $133601cfe0486710$export$fb932093f944abe4 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1826
|
+
async openRelatedReleasesOf(title) {
|
|
1827
|
+
await this.openContextMenu(title);
|
|
1828
|
+
await this.page.locator(".popover-content xlr-context-menu a", {
|
|
1829
|
+
hasText: "View releases"
|
|
1830
|
+
}).click();
|
|
1831
|
+
return new (0, $280428cd9976d58e$export$a678525e79c4ccc4)(this.page);
|
|
1832
|
+
}
|
|
1833
|
+
async openContextMenu(title) {
|
|
1834
|
+
await (0, $kKeXs$playwrighttest.expect)(async ()=>{
|
|
1835
|
+
await this.page.locator(".trigger-row-content", {
|
|
1836
|
+
hasText: title
|
|
1837
|
+
}).locator(".context-menu-button").click();
|
|
1838
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".popover-content")).toBeVisible();
|
|
1839
|
+
}).toPass();
|
|
1840
|
+
}
|
|
1798
1841
|
}
|
|
1799
|
-
$0e6e2e34ec44a72a$exports = $0e6e2e34ec44a72a$var$keysIn;
|
|
1800
1842
|
|
|
1801
1843
|
|
|
1802
|
-
|
|
1803
|
-
|
|
1804
|
-
|
|
1805
|
-
|
|
1806
|
-
|
|
1807
|
-
|
|
1808
|
-
|
|
1809
|
-
|
|
1810
|
-
|
|
1811
|
-
|
|
1812
|
-
|
|
1813
|
-
|
|
1814
|
-
|
|
1815
|
-
|
|
1816
|
-
|
|
1817
|
-
|
|
1818
|
-
|
|
1819
|
-
|
|
1820
|
-
|
|
1821
|
-
|
|
1822
|
-
|
|
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
|
-
}
|
|
1844
|
+
|
|
1845
|
+
|
|
1846
|
+
|
|
1847
|
+
async function $ef0df8ad8a777ce6$export$a0f926f04148e5d2(locators) {
|
|
1848
|
+
const res = await Promise.all([
|
|
1849
|
+
...locators.map(async (locator, index)=>{
|
|
1850
|
+
let timedOut = false;
|
|
1851
|
+
await locator.waitFor({
|
|
1852
|
+
state: "visible",
|
|
1853
|
+
timeout: 2000
|
|
1854
|
+
}).catch(()=>timedOut = true);
|
|
1855
|
+
return [
|
|
1856
|
+
timedOut ? -1 : index,
|
|
1857
|
+
locator
|
|
1858
|
+
];
|
|
1859
|
+
})
|
|
1860
|
+
]);
|
|
1861
|
+
const resolvedLocator = res.find((r)=>r[0] !== -1);
|
|
1862
|
+
if (!resolvedLocator) {
|
|
1863
|
+
console.warn("waitForOneOf", res);
|
|
1864
|
+
throw new Error("no locator visible before timeout");
|
|
1840
1865
|
}
|
|
1841
|
-
return
|
|
1842
|
-
}
|
|
1843
|
-
$732eba8dca8b5420$exports = $732eba8dca8b5420$var$defaults;
|
|
1866
|
+
return resolvedLocator;
|
|
1867
|
+
}
|
|
1844
1868
|
|
|
1845
1869
|
|
|
1846
|
-
|
|
1847
|
-
|
|
1848
|
-
|
|
1849
|
-
|
|
1850
|
-
|
|
1851
|
-
|
|
1852
|
-
|
|
1853
|
-
|
|
1854
|
-
|
|
1855
|
-
|
|
1856
|
-
|
|
1857
|
-
|
|
1858
|
-
|
|
1859
|
-
|
|
1860
|
-
|
|
1861
|
-
|
|
1870
|
+
class $fd4eef3ad2b2e612$export$a87f0ae8695e74be extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1871
|
+
async openVariable(variableKey) {
|
|
1872
|
+
await this.page.locator(`.variables-list .variable`).getByText(variableKey).click();
|
|
1873
|
+
return new $fd4eef3ad2b2e612$var$ReleaseVariableModal(this.page);
|
|
1874
|
+
}
|
|
1875
|
+
}
|
|
1876
|
+
class $fd4eef3ad2b2e612$var$ReleaseVariableModal extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1877
|
+
async expectValue(locators, expectFn) {
|
|
1878
|
+
const [index, locator] = await (0, $ef0df8ad8a777ce6$export$a0f926f04148e5d2)(locators);
|
|
1879
|
+
await expectFn[index](locator);
|
|
1880
|
+
}
|
|
1881
|
+
async expectValueToBe(value) {
|
|
1882
|
+
await this.expectValue([
|
|
1883
|
+
this.page.locator("#modal .variable-value input"),
|
|
1884
|
+
this.page.locator("#modal .variable-value .field-readonly"),
|
|
1885
|
+
this.page.locator("#modal .variable-value .xl-map-string-string")
|
|
1886
|
+
], [
|
|
1887
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toHaveValue(value),
|
|
1888
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toHaveText(value),
|
|
1889
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toHaveText(value)
|
|
1890
|
+
]);
|
|
1891
|
+
}
|
|
1892
|
+
async expectValueToContain(value) {
|
|
1893
|
+
await this.expectValue([
|
|
1894
|
+
this.page.locator("#modal .variable-value input"),
|
|
1895
|
+
this.page.locator("#modal .variable-value .field-readonly"),
|
|
1896
|
+
this.page.locator("#modal .variable-value .xl-map-string-string")
|
|
1897
|
+
], [
|
|
1898
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l.inputValue()).toContain(value),
|
|
1899
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toContainText(value),
|
|
1900
|
+
(l)=>(0, $kKeXs$playwrighttest.expect)(l).toContainText(value)
|
|
1901
|
+
]);
|
|
1902
|
+
}
|
|
1903
|
+
async close() {
|
|
1904
|
+
await this.page.locator("#modal .modal-header button.close").click();
|
|
1905
|
+
}
|
|
1862
1906
|
}
|
|
1863
|
-
$c258ac491a64b22b$exports = $c258ac491a64b22b$var$arrayMap;
|
|
1864
1907
|
|
|
1865
1908
|
|
|
1866
|
-
|
|
1867
|
-
|
|
1868
|
-
|
|
1869
|
-
|
|
1870
|
-
|
|
1871
|
-
|
|
1872
|
-
|
|
1873
|
-
|
|
1874
|
-
|
|
1875
|
-
|
|
1876
|
-
|
|
1877
|
-
|
|
1878
|
-
|
|
1879
|
-
|
|
1880
|
-
|
|
1909
|
+
|
|
1910
|
+
|
|
1911
|
+
class $8be2ce0eccbe6d27$export$64c93bc7fb9ca44e extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1912
|
+
constructor(page){
|
|
1913
|
+
super(page);
|
|
1914
|
+
this.railLocator = this.page.locator("task-drawer .dot-drawer .task-config");
|
|
1915
|
+
}
|
|
1916
|
+
async openInputProperties() {
|
|
1917
|
+
await this.railLocator.locator(".task-config-header").getByText("Input properties").click();
|
|
1918
|
+
}
|
|
1919
|
+
async openOutputProperties() {
|
|
1920
|
+
await this.railLocator.locator(".task-config-header").getByText("Output properties").click();
|
|
1921
|
+
}
|
|
1922
|
+
async getValueFromCi(propertyName) {
|
|
1923
|
+
return this.railLocator.locator(`input[id="${propertyName}"]`).inputValue();
|
|
1924
|
+
}
|
|
1925
|
+
async getAllOptionsFromCi(propertyName) {
|
|
1926
|
+
await this.railLocator.locator(`input[id="${propertyName}"]`).click();
|
|
1927
|
+
return this.railLocator.locator(`.dot-popper ul li`).allInnerTexts();
|
|
1928
|
+
}
|
|
1929
|
+
async setValueFromCi(propertyName, value) {
|
|
1930
|
+
await this.railLocator.locator(`input[id="${propertyName}"]`).clear();
|
|
1931
|
+
await this.railLocator.locator(`input[id="${propertyName}"]`).click();
|
|
1932
|
+
await this.railLocator.locator(`.dot-popper ul li`, {
|
|
1933
|
+
hasText: value
|
|
1934
|
+
}).click();
|
|
1935
|
+
}
|
|
1936
|
+
async getValueFromString(propertyName) {
|
|
1937
|
+
await this.railLocator.locator(`.input-scalar-fake-input[id="${propertyName}"]`).focus();
|
|
1938
|
+
return this.railLocator.locator(`input[id="${propertyName}"]`).inputValue();
|
|
1939
|
+
}
|
|
1940
|
+
async setValueFromString(propertyName, value) {
|
|
1941
|
+
await this.railLocator.locator(`.input-scalar-fake-input[id="${propertyName}"]`).focus();
|
|
1942
|
+
await this.railLocator.locator(`input[id="${propertyName}"]`).fill(value);
|
|
1943
|
+
}
|
|
1944
|
+
async setValueFromLargeString(propertyName, value) {
|
|
1945
|
+
await this.railLocator.locator(`.input-scalar-fake-input[id="${propertyName}"]`).focus();
|
|
1946
|
+
await this.railLocator.locator(`textarea[id="${propertyName}"]`).fill(value);
|
|
1947
|
+
}
|
|
1948
|
+
async setValueFromPassword(propertyName, value) {
|
|
1949
|
+
await this.railLocator.locator(`input[id="${propertyName}"]`).fill(value);
|
|
1950
|
+
}
|
|
1951
|
+
async setAndCreateVariable(propertyName, variableName) {
|
|
1952
|
+
await this.railLocator.locator(`input[id="${propertyName}"]`).clear();
|
|
1953
|
+
await this.railLocator.locator(`input[id="${propertyName}"]`).click();
|
|
1954
|
+
await this.railLocator.locator(`input[id="${propertyName}"]`).fill(variableName);
|
|
1955
|
+
await this.railLocator.locator(`.dot-popper button`, {
|
|
1956
|
+
hasText: variableName
|
|
1957
|
+
}).click();
|
|
1958
|
+
}
|
|
1959
|
+
async setVariable(propertyName, variableName) {
|
|
1960
|
+
return this.setValueFromCi(propertyName, variableName);
|
|
1961
|
+
}
|
|
1962
|
+
async expectValueFromString(propertyName, propertyValue) {
|
|
1963
|
+
return await (0, $kKeXs$playwrighttest.expect)(this.railLocator.locator(`.input-scalar-fake-input[id="${propertyName}"]`)).toHaveText(propertyValue);
|
|
1964
|
+
}
|
|
1881
1965
|
}
|
|
1882
|
-
$34482bf0fdb87aa6$exports = $34482bf0fdb87aa6$var$baseToPairs;
|
|
1883
|
-
|
|
1884
|
-
|
|
1885
|
-
var $2184c74fd3b50571$exports = {};
|
|
1886
|
-
var $9707ed10f1d74f7d$exports = {};
|
|
1887
1966
|
|
|
1888
1967
|
|
|
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
1968
|
|
|
1893
1969
|
|
|
1894
|
-
var $8c4ecd35968046d6$exports = {};
|
|
1895
1970
|
|
|
1971
|
+
class $9c0b0c2caed50730$export$d4865631ba74f3e2 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1972
|
+
constructor(page){
|
|
1973
|
+
super(page);
|
|
1974
|
+
this.railLocator = this.page.locator("task-drawer .dot-drawer .task-conditions");
|
|
1975
|
+
this.preconditionToggle = page.getByLabel("Enable precondition");
|
|
1976
|
+
this.textEditor = page.getByRole("textbox");
|
|
1977
|
+
this.saveButton = page.getByTestId("save-btn");
|
|
1978
|
+
}
|
|
1979
|
+
async enablePrecondition() {
|
|
1980
|
+
(0, $kKeXs$playwrighttest.expect)(await this.preconditionToggle.isChecked()).toBe(false);
|
|
1981
|
+
await this.preconditionToggle.check();
|
|
1982
|
+
}
|
|
1983
|
+
async disablePrecondition() {
|
|
1984
|
+
(0, $kKeXs$playwrighttest.expect)(await this.preconditionToggle.isChecked()).toBe(true);
|
|
1985
|
+
await this.preconditionToggle.uncheck();
|
|
1986
|
+
}
|
|
1987
|
+
async setPrecondition(script) {
|
|
1988
|
+
await this.enablePrecondition();
|
|
1989
|
+
await this.textEditor.fill(script);
|
|
1990
|
+
await this.saveButton.dblclick();
|
|
1991
|
+
await this.page.waitForTimeout(1000);
|
|
1992
|
+
}
|
|
1993
|
+
}
|
|
1896
1994
|
|
|
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
1995
|
|
|
1996
|
+
class $6a21661eb4695574$export$e946776eae644790 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
1997
|
+
constructor(page){
|
|
1998
|
+
super(page);
|
|
1999
|
+
this.taskDrawerLocator = this.page.locator("task-drawer .dot-drawer");
|
|
2000
|
+
this.retryButton = this.page.getByRole("button", {
|
|
2001
|
+
name: "Retry"
|
|
2002
|
+
});
|
|
2003
|
+
this.cancelButton = this.page.getByTestId("task-action-cancel");
|
|
2004
|
+
this.commentBox = this.page.getByTestId("task-action-comment");
|
|
2005
|
+
this.confirm = this.page.getByTestId("task-action-confirm");
|
|
2006
|
+
this.config = new (0, $8be2ce0eccbe6d27$export$64c93bc7fb9ca44e)(page);
|
|
2007
|
+
this.condition = new (0, $9c0b0c2caed50730$export$d4865631ba74f3e2)(page);
|
|
2008
|
+
this.skipMenu = this.page.getByRole("menuitem", {
|
|
2009
|
+
name: "Skip"
|
|
2010
|
+
});
|
|
2011
|
+
}
|
|
2012
|
+
async openOverviewRail() {
|
|
2013
|
+
await this.openRail("Overview");
|
|
2014
|
+
}
|
|
2015
|
+
async openActivityRail() {
|
|
2016
|
+
await this.openRail("Activity");
|
|
2017
|
+
}
|
|
2018
|
+
async openSchedulingRail() {
|
|
2019
|
+
await this.openRail("Scheduling");
|
|
2020
|
+
}
|
|
2021
|
+
async openConditionRail() {
|
|
2022
|
+
await this.openRail("Conditions");
|
|
2023
|
+
}
|
|
2024
|
+
async openAttributesRail() {
|
|
2025
|
+
await this.openRail("Attributes");
|
|
2026
|
+
}
|
|
2027
|
+
async openAttachRail() {
|
|
2028
|
+
await this.openRail("Attach");
|
|
2029
|
+
}
|
|
2030
|
+
async openTagsRail() {
|
|
2031
|
+
await this.openRail("Tags");
|
|
2032
|
+
}
|
|
2033
|
+
async openRail(rail) {
|
|
2034
|
+
await this.taskDrawerLocator.locator(".task-navigation-rail").getByText(rail).click();
|
|
2035
|
+
}
|
|
2036
|
+
async close() {
|
|
2037
|
+
await this.taskDrawerLocator.locator(".task-drawer-header").getByTestId("close-btn").click();
|
|
2038
|
+
}
|
|
2039
|
+
async retryTask(comment) {
|
|
2040
|
+
await this.retryButton.click();
|
|
2041
|
+
await this.commentBox.fill(comment);
|
|
2042
|
+
await this.confirm.click();
|
|
2043
|
+
}
|
|
2044
|
+
async skipTask(comment) {
|
|
2045
|
+
await this.page.getByRole("button", {
|
|
2046
|
+
name: "arrow-down icon",
|
|
2047
|
+
exact: true
|
|
2048
|
+
}).click();
|
|
2049
|
+
await this.skipMenu.click();
|
|
2050
|
+
await this.commentBox.fill(comment);
|
|
2051
|
+
await this.confirm.click();
|
|
2052
|
+
}
|
|
2053
|
+
}
|
|
1901
2054
|
|
|
1902
|
-
var $30f4d64ddd8effd1$exports = {};
|
|
1903
2055
|
|
|
2056
|
+
class $9b9a8c3da392d020$export$f43492e8ac3c566 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
2057
|
+
constructor(page){
|
|
2058
|
+
super(page);
|
|
2059
|
+
this.taskDrawer = new (0, $6a21661eb4695574$export$e946776eae644790)(page);
|
|
2060
|
+
}
|
|
2061
|
+
async openTriggers() {
|
|
2062
|
+
await this.openSubPage("Triggers");
|
|
2063
|
+
return new (0, $133601cfe0486710$export$fb932093f944abe4)(this.page);
|
|
2064
|
+
}
|
|
2065
|
+
async abort(comment = "Abort for testing") {
|
|
2066
|
+
await this.page.locator("action-toolbar button", {
|
|
2067
|
+
hasText: "Abort"
|
|
2068
|
+
}).click();
|
|
2069
|
+
await this.page.locator(".modal textarea").fill(comment);
|
|
2070
|
+
await this.page.locator(".modal .continue").click();
|
|
2071
|
+
}
|
|
2072
|
+
getPhase(phaseName) {
|
|
2073
|
+
return new $9b9a8c3da392d020$var$Phase(this.page, phaseName);
|
|
2074
|
+
}
|
|
2075
|
+
async start() {
|
|
2076
|
+
await this.page.getByTestId("start-btn").click();
|
|
2077
|
+
await this.page.getByRole("button", {
|
|
2078
|
+
name: "Start"
|
|
2079
|
+
}).click();
|
|
2080
|
+
}
|
|
2081
|
+
async waitForTaskCompleted(taskTitle) {
|
|
2082
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task.completed").getByText(taskTitle, {
|
|
2083
|
+
exact: true
|
|
2084
|
+
})).toBeVisible();
|
|
2085
|
+
}
|
|
2086
|
+
async waitForTaskFailed(taskTitle) {
|
|
2087
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task.failed").getByText(taskTitle, {
|
|
2088
|
+
exact: true
|
|
2089
|
+
})).toBeVisible();
|
|
2090
|
+
}
|
|
2091
|
+
async waitForTaskSkipped(taskTitle) {
|
|
2092
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task.skipped").getByText(taskTitle, {
|
|
2093
|
+
exact: true
|
|
2094
|
+
})).toBeVisible();
|
|
2095
|
+
}
|
|
2096
|
+
async waitForTaskAborted(taskTitle) {
|
|
2097
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task.aborted").getByText(taskTitle, {
|
|
2098
|
+
exact: true
|
|
2099
|
+
})).toBeVisible();
|
|
2100
|
+
}
|
|
2101
|
+
async waitForStatusLine(statusLine) {
|
|
2102
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task .status-line").getByText(statusLine, {
|
|
2103
|
+
exact: true
|
|
2104
|
+
})).toBeVisible();
|
|
2105
|
+
}
|
|
2106
|
+
async waitForTaskStarted(taskTitle) {
|
|
2107
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page.locator(".task.in_progress").getByTitle(taskTitle, {
|
|
2108
|
+
exact: true
|
|
2109
|
+
})).toBeVisible();
|
|
2110
|
+
}
|
|
2111
|
+
async openTaskDrawer(taskName) {
|
|
2112
|
+
await this.page.locator(".task-header").getByText(taskName).click();
|
|
2113
|
+
return this.taskDrawer;
|
|
2114
|
+
}
|
|
2115
|
+
async openVariables() {
|
|
2116
|
+
await this.openReleaseMenu("Variables");
|
|
2117
|
+
return new (0, $fd4eef3ad2b2e612$export$a87f0ae8695e74be)(this.page);
|
|
2118
|
+
}
|
|
2119
|
+
async openReleaseMenu(menuItem) {
|
|
2120
|
+
await this.page.locator(`navigation-sidebar ul li`).getByText(menuItem, {
|
|
2121
|
+
exact: true
|
|
2122
|
+
}).click();
|
|
2123
|
+
}
|
|
2124
|
+
async openSubPage(subpage) {
|
|
2125
|
+
await this.page.locator("ul.side-nav li", {
|
|
2126
|
+
hasText: subpage
|
|
2127
|
+
}).click();
|
|
2128
|
+
}
|
|
2129
|
+
async openTask(taskName) {
|
|
2130
|
+
await this.page.getByTitle(taskName, {
|
|
2131
|
+
exact: true
|
|
2132
|
+
}).click();
|
|
2133
|
+
}
|
|
2134
|
+
async collapseAllTaskView() {
|
|
2135
|
+
const icCollapseTreeview1 = this.page.locator("div.pull-left.expander.ng-scope i.xl-icon.arrow-down-icon");
|
|
2136
|
+
for (const element of (await icCollapseTreeview1.all())){
|
|
2137
|
+
const blnVal = await element.isVisible();
|
|
2138
|
+
if (blnVal) {
|
|
2139
|
+
await element.click();
|
|
2140
|
+
await this.collapseAllTaskView();
|
|
2141
|
+
}
|
|
2142
|
+
}
|
|
2143
|
+
}
|
|
2144
|
+
async expandAllTaskView() {
|
|
2145
|
+
const icExpandTreeview1 = this.page.locator("div.pull-left.expander.ng-scope i.xl-icon.arrow-right-icon");
|
|
2146
|
+
for (const element of (await icExpandTreeview1.all())){
|
|
2147
|
+
const blnVal = await element.isVisible();
|
|
2148
|
+
if (blnVal) {
|
|
2149
|
+
await element.click();
|
|
2150
|
+
await this.expandAllTaskView();
|
|
2151
|
+
}
|
|
2152
|
+
}
|
|
2153
|
+
}
|
|
2154
|
+
}
|
|
2155
|
+
class $9b9a8c3da392d020$var$Phase extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
2156
|
+
constructor(page, phaseName){
|
|
2157
|
+
super(page);
|
|
2158
|
+
this.phaseLocator = page.locator(".phase", {
|
|
2159
|
+
hasText: phaseName
|
|
2160
|
+
});
|
|
2161
|
+
}
|
|
2162
|
+
async addTask(taskName, taskGroup, taskType) {
|
|
2163
|
+
await this.phaseLocator.getByText("Add task").click();
|
|
2164
|
+
await this.phaseLocator.locator(".quick-title").fill(taskName);
|
|
2165
|
+
await this.phaseLocator.locator(".xlr-ctx-menu-toggle").click();
|
|
2166
|
+
await this.page.locator(`.xlr-ctx-menu-item`).getByTitle(taskGroup, {
|
|
2167
|
+
exact: true
|
|
2168
|
+
}).scrollIntoViewIfNeeded();
|
|
2169
|
+
await this.page.locator(`.xlr-ctx-menu-item`).getByTitle(taskGroup, {
|
|
2170
|
+
exact: true
|
|
2171
|
+
}).hover();
|
|
2172
|
+
await this.page.locator(`.xlr-ctx-menu.active`).getByTitle(taskType, {
|
|
2173
|
+
exact: true
|
|
2174
|
+
}).click();
|
|
2175
|
+
await this.phaseLocator.locator(".quick-controls-container a").getByText("Add", {
|
|
2176
|
+
exact: true
|
|
2177
|
+
}).click();
|
|
2178
|
+
}
|
|
2179
|
+
}
|
|
1904
2180
|
|
|
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
2181
|
|
|
1909
2182
|
|
|
1910
|
-
var $869474d4b330cc35$exports = {};
|
|
1911
2183
|
|
|
2184
|
+
class $dc91ece6da6cadfa$export$1533b625ec0c75e2 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
2185
|
+
async goToApplicationsPage() {
|
|
2186
|
+
await this.page.goto("./#/applications");
|
|
2187
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page).toHaveTitle("Applications - Digital.ai Release");
|
|
2188
|
+
return this;
|
|
2189
|
+
}
|
|
2190
|
+
async addNewApplication(applicationName) {
|
|
2191
|
+
await this.page.locator(`//button[normalize-space()='New application']`).click();
|
|
2192
|
+
await this.page.locator(`input[placeholder='Add name...']`).type(applicationName);
|
|
2193
|
+
await this.page.locator(`//button[normalize-space()='Save']`).click();
|
|
2194
|
+
return this;
|
|
2195
|
+
}
|
|
2196
|
+
async verifyApplicationisCreated(applicationName) {
|
|
2197
|
+
await this.page.waitForSelector(`div[title='${applicationName}'] strong`);
|
|
2198
|
+
return this;
|
|
2199
|
+
}
|
|
2200
|
+
async createApplicationAndLinkEnvironment(environmentName, applicationName) {
|
|
2201
|
+
await this.page.locator(`//button[normalize-space()='New application']`).click();
|
|
2202
|
+
await this.page.locator(`input[placeholder='Add name...']`).type(applicationName);
|
|
2203
|
+
await this.page.locator("input[placeholder='Filter environment name...']").type(environmentName);
|
|
2204
|
+
await this.page.locator(`div[title='${environmentName}']`).click();
|
|
2205
|
+
await this.page.locator(`//button[normalize-space()='Save']`).click();
|
|
2206
|
+
await this.page.locator("i.xl-icon.close-icon").click();
|
|
2207
|
+
return this;
|
|
2208
|
+
}
|
|
2209
|
+
}
|
|
1912
2210
|
|
|
1913
|
-
var $5iYlB = parcelRequire("5iYlB");
|
|
1914
|
-
/* Built-in method references that are verified to be native. */ var $869474d4b330cc35$var$Set = $b7745e89d7f5915f$exports($5iYlB, "Set");
|
|
1915
|
-
$869474d4b330cc35$exports = $869474d4b330cc35$var$Set;
|
|
1916
2211
|
|
|
1917
2212
|
|
|
1918
|
-
var $c4df061ad36170d9$exports = {};
|
|
1919
2213
|
|
|
2214
|
+
class $be4dd73206d8e76b$export$3cac5fd37ae64b91 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
2215
|
+
async openPersonalAccessTokenPage() {
|
|
2216
|
+
// await this.page.locator("button.dot-avatar").click()
|
|
2217
|
+
// await this.page.locator("//div[normalize-space()='Access tokens']").click()
|
|
2218
|
+
await this.page.goto("./#/personal-access-token");
|
|
2219
|
+
await (0, $kKeXs$playwrighttest.expect)(this.page).toHaveTitle("Access tokens / Personal settings - Digital.ai Release");
|
|
2220
|
+
return this;
|
|
2221
|
+
}
|
|
2222
|
+
async addNewToken(tokenName) {
|
|
2223
|
+
//await expect(this.page).toHaveTitle('Access tokens / Personal settings - Digital.ai Release')
|
|
2224
|
+
await this.page.locator("#tokenText").fill(tokenName);
|
|
2225
|
+
await this.page.locator("button[type='submit']").click();
|
|
2226
|
+
return this;
|
|
2227
|
+
}
|
|
2228
|
+
}
|
|
1920
2229
|
|
|
1921
|
-
var $5iYlB = parcelRequire("5iYlB");
|
|
1922
|
-
/* Built-in method references that are verified to be native. */ var $c4df061ad36170d9$var$WeakMap = $b7745e89d7f5915f$exports($5iYlB, "WeakMap");
|
|
1923
|
-
$c4df061ad36170d9$exports = $c4df061ad36170d9$var$WeakMap;
|
|
1924
2230
|
|
|
1925
2231
|
|
|
1926
2232
|
|
|
1927
|
-
var $hi3Ib = parcelRequire("hi3Ib");
|
|
1928
2233
|
|
|
1929
|
-
|
|
1930
|
-
|
|
1931
|
-
|
|
1932
|
-
|
|
1933
|
-
|
|
1934
|
-
|
|
1935
|
-
|
|
1936
|
-
|
|
1937
|
-
|
|
1938
|
-
|
|
1939
|
-
|
|
1940
|
-
|
|
1941
|
-
|
|
1942
|
-
|
|
1943
|
-
|
|
1944
|
-
|
|
1945
|
-
|
|
1946
|
-
|
|
1947
|
-
|
|
1948
|
-
|
|
1949
|
-
|
|
1950
|
-
|
|
1951
|
-
|
|
1952
|
-
|
|
2234
|
+
class $bb5572a48b31014a$export$e2e2e1ffdce20c30 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
2235
|
+
constructor(page){
|
|
2236
|
+
super(page);
|
|
2237
|
+
this.userName = page.locator("#username");
|
|
2238
|
+
this.name = page.locator("#full-name");
|
|
2239
|
+
this.email = page.locator("#email");
|
|
2240
|
+
this.password = page.locator('[data-test="password-input"]');
|
|
2241
|
+
this.cnfPassword = page.locator("#passwordConfirmation");
|
|
2242
|
+
this.saveButton = page.getByRole("button", {
|
|
2243
|
+
name: "Save"
|
|
2244
|
+
});
|
|
2245
|
+
this.cancelButton = page.getByRole("button", {
|
|
2246
|
+
name: "Cancel"
|
|
2247
|
+
});
|
|
2248
|
+
this.deleteButton = page.getByRole("button", {
|
|
2249
|
+
name: "Delete"
|
|
2250
|
+
});
|
|
2251
|
+
}
|
|
2252
|
+
async setUserName(username) {
|
|
2253
|
+
return await this.userName.fill(username);
|
|
2254
|
+
}
|
|
2255
|
+
async setFullName(fullName) {
|
|
2256
|
+
return await this.name.fill(fullName);
|
|
2257
|
+
}
|
|
2258
|
+
async setEmail(email) {
|
|
2259
|
+
return await this.email.fill(email);
|
|
2260
|
+
}
|
|
2261
|
+
async setPassword(password) {
|
|
2262
|
+
return await this.password.fill(password);
|
|
2263
|
+
}
|
|
2264
|
+
async setConfirmPassword(cnfPassword) {
|
|
2265
|
+
return await this.cnfPassword.fill(cnfPassword);
|
|
2266
|
+
}
|
|
2267
|
+
async save() {
|
|
2268
|
+
await this.saveButton.click();
|
|
2269
|
+
}
|
|
2270
|
+
async cancel() {
|
|
2271
|
+
await this.cancelButton.click();
|
|
2272
|
+
}
|
|
2273
|
+
async delete() {
|
|
2274
|
+
await this.deleteButton.click();
|
|
1953
2275
|
}
|
|
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
2276
|
}
|
|
1976
|
-
$5cfa9b34443304aa$exports = $5cfa9b34443304aa$var$mapToArray;
|
|
1977
2277
|
|
|
1978
2278
|
|
|
1979
|
-
|
|
1980
|
-
|
|
1981
|
-
|
|
1982
|
-
|
|
1983
|
-
|
|
1984
|
-
|
|
1985
|
-
|
|
1986
|
-
|
|
1987
|
-
|
|
1988
|
-
|
|
1989
|
-
|
|
1990
|
-
|
|
1991
|
-
|
|
1992
|
-
|
|
1993
|
-
|
|
1994
|
-
|
|
2279
|
+
class $3ceab7c613cabfd6$export$107317390f5aa598 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
2280
|
+
constructor(page){
|
|
2281
|
+
super(page);
|
|
2282
|
+
this.page = page;
|
|
2283
|
+
this.newUserButton = this.page.getByTestId("new-user-btn");
|
|
2284
|
+
this.modal = new (0, $bb5572a48b31014a$export$e2e2e1ffdce20c30)(page);
|
|
2285
|
+
}
|
|
2286
|
+
async openUsersPage() {
|
|
2287
|
+
this.page.goto("/#/users", {
|
|
2288
|
+
timeout: 1000
|
|
2289
|
+
});
|
|
2290
|
+
}
|
|
2291
|
+
async toggleLoginPermission(username) {
|
|
2292
|
+
await this.page.getByRole("row", {
|
|
2293
|
+
name: "" + username + ""
|
|
2294
|
+
}).getByRole("checkbox").check();
|
|
2295
|
+
//await this.page.locator(`tr:contains('${username}') .login-permission input`).click();
|
|
2296
|
+
}
|
|
2297
|
+
async addUser() {
|
|
2298
|
+
await this.newUserButton.click();
|
|
2299
|
+
}
|
|
2300
|
+
async createUser(username, password) {
|
|
2301
|
+
await this.modal.setUserName(username);
|
|
2302
|
+
await this.modal.setFullName(username);
|
|
2303
|
+
await this.modal.setEmail("testuser@company.com");
|
|
2304
|
+
await this.modal.setPassword(password);
|
|
2305
|
+
await this.modal.setConfirmPassword(password);
|
|
2306
|
+
await this.modal.save();
|
|
2307
|
+
}
|
|
2308
|
+
async expectToHaveLoginPermission(username) {
|
|
2309
|
+
return await (0, $kKeXs$playwrighttest.expect)(this.page.getByRole("row", {
|
|
2310
|
+
name: "" + username + ""
|
|
2311
|
+
}).getByRole("checkbox")).toBeChecked();
|
|
2312
|
+
}
|
|
2313
|
+
async deleteUser(username) {
|
|
2314
|
+
await this.page.getByRole("row", {
|
|
2315
|
+
name: "" + username + ""
|
|
2316
|
+
}).locator("i").nth(1).click();
|
|
2317
|
+
await this.modal.delete();
|
|
2318
|
+
}
|
|
1995
2319
|
}
|
|
1996
|
-
$e0efec8f59f2b46b$exports = $e0efec8f59f2b46b$var$setToPairs;
|
|
1997
2320
|
|
|
1998
2321
|
|
|
1999
|
-
|
|
2000
|
-
|
|
2001
|
-
|
|
2002
|
-
|
|
2003
|
-
|
|
2004
|
-
|
|
2005
|
-
|
|
2006
|
-
|
|
2007
|
-
|
|
2008
|
-
|
|
2009
|
-
|
|
2010
|
-
|
|
2011
|
-
|
|
2012
|
-
}
|
|
2322
|
+
|
|
2323
|
+
class $7867194f18360347$export$1d7840d5cdc861d5 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
2324
|
+
constructor(page){
|
|
2325
|
+
super(page);
|
|
2326
|
+
this.settingsIcon = this.page.getByRole("button", {
|
|
2327
|
+
name: "Settings"
|
|
2328
|
+
});
|
|
2329
|
+
this.usersAndPermissionMenu = this.page.getByTestId("undefined-menu").getByText("Users and permissions");
|
|
2330
|
+
this.managePluginMenu = this.page.getByText("Manage plugins");
|
|
2331
|
+
}
|
|
2332
|
+
async openUsersAndPermissions() {
|
|
2333
|
+
await this.settingsIcon.click();
|
|
2334
|
+
await this.page.getByTestId("undefined-menu").getByText("Users and permissions").click();
|
|
2335
|
+
}
|
|
2336
|
+
async openManagePlugin() {
|
|
2337
|
+
await this.settingsIcon.click();
|
|
2338
|
+
await this.managePluginMenu.click();
|
|
2339
|
+
}
|
|
2013
2340
|
}
|
|
2014
|
-
$acbd35b1cbbf33e4$exports = $acbd35b1cbbf33e4$var$createToPairs;
|
|
2015
2341
|
|
|
2016
2342
|
|
|
2017
2343
|
|
|
2018
|
-
|
|
2019
|
-
|
|
2020
|
-
|
|
2021
|
-
|
|
2022
|
-
|
|
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;
|
|
2344
|
+
class $a642d735048996f9$export$922081b54f2ab994 extends (0, $f8721861c660dd88$export$2b65d1d97338f32b) {
|
|
2345
|
+
constructor(page){
|
|
2346
|
+
super(page);
|
|
2347
|
+
}
|
|
2348
|
+
}
|
|
2044
2349
|
|
|
2045
2350
|
|
|
2046
|
-
|
|
2047
|
-
|
|
2048
|
-
|
|
2049
|
-
|
|
2050
|
-
|
|
2051
|
-
|
|
2052
|
-
|
|
2053
|
-
|
|
2054
|
-
const LINK_TYPE = "xlrelease.Link";
|
|
2055
|
-
const ATTACHMENT_TYPE = "xlrelease.Attachment";
|
|
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}`;
|
|
2080
|
-
});
|
|
2081
|
-
(0, (/*@__PURE__*/$parcel$interopDefault($952a2b8d8056b381$exports)))(task.tasks, function(subTask, idx) {
|
|
2082
|
-
processTasks(subTask, task, idx);
|
|
2083
|
-
});
|
|
2084
|
-
(0, (/*@__PURE__*/$parcel$interopDefault($952a2b8d8056b381$exports)))(task.templateVariables, function(variable, idx) {
|
|
2085
|
-
(0, (/*@__PURE__*/$parcel$interopDefault($732eba8dca8b5420$exports)))(variable, getVariableEntity(variable.value, variable.key, task.id, idx));
|
|
2086
|
-
});
|
|
2087
|
-
(0, (/*@__PURE__*/$parcel$interopDefault($952a2b8d8056b381$exports)))(task.attachments, function(attachment, idx) {
|
|
2088
|
-
attachment.type = ATTACHMENT_TYPE;
|
|
2089
|
-
attachment.id = `${task.id}/Attachment${idx}`;
|
|
2090
|
-
});
|
|
2091
|
-
if (task.pythonScript) {
|
|
2092
|
-
const pythonScript = task.pythonScript;
|
|
2093
|
-
pythonScript.id = `${task.id}/PythonScript`;
|
|
2094
|
-
pythonScript.customScriptTask = task.id;
|
|
2095
|
-
}
|
|
2096
|
-
};
|
|
2097
|
-
const processPhases = (phase, release, index)=>{
|
|
2098
|
-
phase.type = PHASE_TYPE;
|
|
2099
|
-
phase.id = `${release.id}/Phase${index}`;
|
|
2100
|
-
(0, (/*@__PURE__*/$parcel$interopDefault($ae8Uz)))(phase.tasks, (task, idx)=>{
|
|
2101
|
-
processTasks(task, phase, idx);
|
|
2102
|
-
});
|
|
2103
|
-
};
|
|
2104
|
-
const getVariableEntity = (value, key, containerId, index, password)=>{
|
|
2105
|
-
const keyNoSyntax = key.replace("${", "").replace("}", "");
|
|
2106
|
-
return {
|
|
2107
|
-
id: `${containerId}/Variable${index}`,
|
|
2108
|
-
key: keyNoSyntax,
|
|
2109
|
-
requiresValue: true,
|
|
2110
|
-
showOnReleaseStart: true,
|
|
2111
|
-
type: password ? "xlrelease.PasswordStringVariable" : "xlrelease.StringVariable",
|
|
2112
|
-
value: value
|
|
2113
|
-
};
|
|
2114
|
-
};
|
|
2115
|
-
const getValueProviderConfigurationEntity = function(containerId) {
|
|
2116
|
-
return {
|
|
2117
|
-
id: `${containerId}/valueProvider`,
|
|
2118
|
-
variable: containerId
|
|
2119
|
-
};
|
|
2120
|
-
};
|
|
2121
|
-
const getDashboardExtension = (dashboard, releaseId)=>{
|
|
2122
|
-
const dashboardExtension = {
|
|
2123
|
-
id: `${releaseId}/summary`,
|
|
2124
|
-
type: DASHBOARD_TYPE,
|
|
2125
|
-
tiles: []
|
|
2126
|
-
};
|
|
2127
|
-
if (dashboard.tiles) (0, (/*@__PURE__*/$parcel$interopDefault($ae8Uz)))(dashboard.tiles, function(tile, index) {
|
|
2128
|
-
dashboardExtension.tiles.push(getTileEntity(tile, `${releaseId}/summary`, index));
|
|
2129
|
-
});
|
|
2130
|
-
return dashboardExtension;
|
|
2131
|
-
};
|
|
2132
|
-
function getTileEntity(tile, containerId, index) {
|
|
2133
|
-
tile.id = tile.id || `${containerId}/Tile${index}`;
|
|
2134
|
-
return tile;
|
|
2351
|
+
class $4ef41cf96a5fae4c$export$b8a61e5c71402559 {
|
|
2352
|
+
constructor(page){
|
|
2353
|
+
this.page = page;
|
|
2354
|
+
this.releasePage = new (0, $9b9a8c3da392d020$export$f43492e8ac3c566)(page);
|
|
2355
|
+
this.settingsMenu = new (0, $7867194f18360347$export$1d7840d5cdc861d5)(page);
|
|
2356
|
+
this.usersPage = new (0, $3ceab7c613cabfd6$export$107317390f5aa598)(page);
|
|
2357
|
+
this.applicationPage = new (0, $dc91ece6da6cadfa$export$1533b625ec0c75e2)(page);
|
|
2358
|
+
this.taskDetailsPage = new (0, $a642d735048996f9$export$922081b54f2ab994)(page);
|
|
2135
2359
|
}
|
|
2136
|
-
|
|
2137
|
-
|
|
2138
|
-
|
|
2139
|
-
|
|
2140
|
-
|
|
2141
|
-
|
|
2142
|
-
|
|
2143
|
-
|
|
2144
|
-
|
|
2145
|
-
|
|
2146
|
-
|
|
2147
|
-
|
|
2148
|
-
|
|
2149
|
-
|
|
2150
|
-
|
|
2151
|
-
|
|
2152
|
-
|
|
2153
|
-
|
|
2154
|
-
|
|
2155
|
-
|
|
2156
|
-
|
|
2157
|
-
|
|
2158
|
-
|
|
2159
|
-
|
|
2160
|
-
|
|
2161
|
-
|
|
2162
|
-
|
|
2163
|
-
|
|
2164
|
-
|
|
2165
|
-
|
|
2166
|
-
|
|
2167
|
-
|
|
2168
|
-
|
|
2169
|
-
|
|
2170
|
-
|
|
2171
|
-
|
|
2172
|
-
|
|
2173
|
-
|
|
2174
|
-
|
|
2175
|
-
|
|
2176
|
-
|
|
2360
|
+
async openTemplate(id) {
|
|
2361
|
+
return this.openReleaseOrTemplate(id, false);
|
|
2362
|
+
}
|
|
2363
|
+
async openRelease(id) {
|
|
2364
|
+
return this.openReleaseOrTemplate(id, true);
|
|
2365
|
+
}
|
|
2366
|
+
async openApplicationsPage() {
|
|
2367
|
+
return new (0, $dc91ece6da6cadfa$export$1533b625ec0c75e2)(this.page).goToApplicationsPage();
|
|
2368
|
+
}
|
|
2369
|
+
async openPersonalAccessTokenPage() {
|
|
2370
|
+
return new (0, $be4dd73206d8e76b$export$3cac5fd37ae64b91)(this.page).openPersonalAccessTokenPage();
|
|
2371
|
+
}
|
|
2372
|
+
async gotoFolderPage() {
|
|
2373
|
+
await this.page.getByText("Folders").click();
|
|
2374
|
+
}
|
|
2375
|
+
async gotoTaskPage() {
|
|
2376
|
+
await this.page.getByTestId("sideNav-item-3").getByText("Tasks").click();
|
|
2377
|
+
}
|
|
2378
|
+
async gotoReleasePage() {
|
|
2379
|
+
await this.page.getByText("Releases").click();
|
|
2380
|
+
}
|
|
2381
|
+
async gotoWorkflowCatalogPage() {
|
|
2382
|
+
await this.page.getByText("Workflow catalog").click();
|
|
2383
|
+
}
|
|
2384
|
+
async gotoWorkflowsPage() {
|
|
2385
|
+
await this.page.getByTestId("sideNav-item-6").getByText("Workflows").click();
|
|
2386
|
+
}
|
|
2387
|
+
async gotoGroupsPage() {
|
|
2388
|
+
await this.page.getByText("Groups").click();
|
|
2389
|
+
}
|
|
2390
|
+
async gotoReleaseCalenderPage() {
|
|
2391
|
+
await this.page.getByText("Release calendar").click();
|
|
2392
|
+
}
|
|
2393
|
+
async gotoDeliveriesPage() {
|
|
2394
|
+
await this.page.getByText("Deliveries").click();
|
|
2395
|
+
}
|
|
2396
|
+
async gotoTriggersPage() {
|
|
2397
|
+
await this.page.getByText("Triggers").click();
|
|
2398
|
+
}
|
|
2399
|
+
async gotoDigitalAnalyticsPage() {
|
|
2400
|
+
await this.page.getByText("Digital.ai Analytics").click();
|
|
2401
|
+
}
|
|
2402
|
+
async gotoReportsPage() {
|
|
2403
|
+
await this.page.getByText("Reports").click();
|
|
2404
|
+
}
|
|
2405
|
+
async gotoTemplatesPage() {
|
|
2406
|
+
await this.page.getByText("Templates").click();
|
|
2407
|
+
}
|
|
2408
|
+
async gotoEnvironmentsPage() {
|
|
2409
|
+
await this.page.getByText("Environments").click();
|
|
2410
|
+
}
|
|
2411
|
+
async gotoEnvironmentsCalenderPage() {
|
|
2412
|
+
await this.page.getByText("Environments calendar").click();
|
|
2413
|
+
}
|
|
2414
|
+
async gotoGobalVariablesPage() {
|
|
2415
|
+
await this.page.getByText("Global variables").click();
|
|
2416
|
+
}
|
|
2417
|
+
async gotoConnectionsPage() {
|
|
2418
|
+
await this.page.getByText("Connections").click();
|
|
2419
|
+
}
|
|
2420
|
+
async openReleaseOrTemplate(id, release) {
|
|
2421
|
+
const url = release ? "releases" : "templates";
|
|
2422
|
+
await this.page.goto(`./#/${url}/${id}`);
|
|
2423
|
+
await this.page.waitForSelector("#release");
|
|
2424
|
+
return new (0, $9b9a8c3da392d020$export$f43492e8ac3c566)(this.page);
|
|
2425
|
+
}
|
|
2426
|
+
}
|
|
2177
2427
|
|
|
2178
2428
|
|
|
2179
2429
|
|
|
@@ -2189,7 +2439,7 @@ const $6998c6a53a9eb4fa$export$e0969da9b8fb378d = (0, $kKeXs$playwrighttest.test
|
|
|
2189
2439
|
return fixtures;
|
|
2190
2440
|
},
|
|
2191
2441
|
loginPage: async ({ page: page }, use)=>{
|
|
2192
|
-
const loginPage = new (0, $
|
|
2442
|
+
const loginPage = new (0, $258749e0671c845a$export$f14c0e3f98d164c0)(page);
|
|
2193
2443
|
await use(loginPage);
|
|
2194
2444
|
return loginPage;
|
|
2195
2445
|
},
|
|
@@ -2203,6 +2453,8 @@ class $6998c6a53a9eb4fa$var$Fixtures {
|
|
|
2203
2453
|
releaseIds = [];
|
|
2204
2454
|
triggerIds = [];
|
|
2205
2455
|
configurationIds = [];
|
|
2456
|
+
usernames = [];
|
|
2457
|
+
userProfiles = [];
|
|
2206
2458
|
constructor(request, page){
|
|
2207
2459
|
this.request = request;
|
|
2208
2460
|
this.page = page;
|
|
@@ -2248,9 +2500,13 @@ class $6998c6a53a9eb4fa$var$Fixtures {
|
|
|
2248
2500
|
for (const releaseId of this.releaseIds.reverse())promises.push(this.deleteRelease(releaseId));
|
|
2249
2501
|
for (const triggerId of this.triggerIds)promises.push(this.deleteTrigger(triggerId));
|
|
2250
2502
|
for (const confId of this.configurationIds)promises.push(this.deleteConfiguration(confId));
|
|
2503
|
+
for (const usernames of this.usernames)promises.push(this.deleteUser(usernames));
|
|
2504
|
+
for (const userProfiles of this.userProfiles)promises.push(this.deleteUserProfile(userProfiles));
|
|
2251
2505
|
this.releaseIds = [];
|
|
2252
2506
|
this.triggerIds = [];
|
|
2253
2507
|
this.configurationIds = [];
|
|
2508
|
+
this.usernames = [];
|
|
2509
|
+
this.userProfiles = [];
|
|
2254
2510
|
return Promise.all(promises);
|
|
2255
2511
|
}
|
|
2256
2512
|
async waitForReleaseStarted(releaseTitle) {
|
|
@@ -2300,6 +2556,27 @@ class $6998c6a53a9eb4fa$var$Fixtures {
|
|
|
2300
2556
|
}
|
|
2301
2557
|
]);
|
|
2302
2558
|
}
|
|
2559
|
+
async addUser(username, password) {
|
|
2560
|
+
this.usernames.push(username);
|
|
2561
|
+
return await this.doPost("fixtures/user", {
|
|
2562
|
+
username: username,
|
|
2563
|
+
password: password
|
|
2564
|
+
});
|
|
2565
|
+
}
|
|
2566
|
+
async addUserProfile(username, profile) {
|
|
2567
|
+
if (!profile) profile = {};
|
|
2568
|
+
profile.id = username;
|
|
2569
|
+
profile.type = "xlrelease.UserProfile";
|
|
2570
|
+
profile.canonicalId = username.toLowerCase();
|
|
2571
|
+
this.userProfiles.push(profile.canonicalId);
|
|
2572
|
+
return await this.doPost("fixtures/userProfile", profile);
|
|
2573
|
+
}
|
|
2574
|
+
async deleteUser(username) {
|
|
2575
|
+
return await this.request.delete(`fixtures/user/${username}`);
|
|
2576
|
+
}
|
|
2577
|
+
async deleteUserProfile(username) {
|
|
2578
|
+
return await this.request.delete(`fixtures/userProfile/${username}`);
|
|
2579
|
+
}
|
|
2303
2580
|
doPost(url, body) {
|
|
2304
2581
|
return this.request.post(url, {
|
|
2305
2582
|
data: body,
|