@devicecloud.dev/dcd 1.0.8 → 1.0.10
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/dist/commands/cloud.d.ts +7 -1
- package/dist/commands/cloud.js +10 -5
- package/dist/constants.d.ts +2 -0
- package/dist/constants.js +38 -9
- package/oclif.manifest.json +38 -2
- package/package.json +1 -1
package/dist/commands/cloud.d.ts
CHANGED
|
@@ -14,7 +14,11 @@ export declare enum EiOSDevices {
|
|
|
14
14
|
'iphone-15' = "iphone-15",
|
|
15
15
|
'iphone-15-plus' = "iphone-15-plus",
|
|
16
16
|
'iphone-15-pro' = "iphone-15-pro",
|
|
17
|
-
'iphone-15-pro-max' = "iphone-15-pro-max"
|
|
17
|
+
'iphone-15-pro-max' = "iphone-15-pro-max",
|
|
18
|
+
'iphone-16' = "iphone-16",
|
|
19
|
+
'iphone-16-plus' = "iphone-16-plus",
|
|
20
|
+
'iphone-16-pro' = "iphone-16-pro",
|
|
21
|
+
'iphone-16-pro-max' = "iphone-16-pro-max"
|
|
18
22
|
}
|
|
19
23
|
export default class Cloud extends Command {
|
|
20
24
|
static args: {
|
|
@@ -32,6 +36,7 @@ export default class Cloud extends Command {
|
|
|
32
36
|
'app-file': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
33
37
|
arm64: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
34
38
|
async: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
39
|
+
'device-locale': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
35
40
|
env: import("@oclif/core/lib/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
36
41
|
'exclude-flows': import("@oclif/core/lib/interfaces").OptionFlag<string[], import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
37
42
|
'exclude-tags': import("@oclif/core/lib/interfaces").OptionFlag<string[], import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
@@ -41,6 +46,7 @@ export default class Cloud extends Command {
|
|
|
41
46
|
'ios-device': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
42
47
|
'ios-version': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
43
48
|
'legacy-upload': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
49
|
+
'maestro-version': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
44
50
|
name: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
45
51
|
orientation: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
46
52
|
quiet: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
package/dist/commands/cloud.js
CHANGED
|
@@ -34,6 +34,10 @@ var EiOSDevices;
|
|
|
34
34
|
EiOSDevices["iphone-15-plus"] = "iphone-15-plus";
|
|
35
35
|
EiOSDevices["iphone-15-pro"] = "iphone-15-pro";
|
|
36
36
|
EiOSDevices["iphone-15-pro-max"] = "iphone-15-pro-max";
|
|
37
|
+
EiOSDevices["iphone-16"] = "iphone-16";
|
|
38
|
+
EiOSDevices["iphone-16-plus"] = "iphone-16-plus";
|
|
39
|
+
EiOSDevices["iphone-16-pro"] = "iphone-16-pro";
|
|
40
|
+
EiOSDevices["iphone-16-pro-max"] = "iphone-16-pro-max";
|
|
37
41
|
})(EiOSDevices || (exports.EiOSDevices = EiOSDevices = {}));
|
|
38
42
|
class Cloud extends core_1.Command {
|
|
39
43
|
static args = {
|
|
@@ -59,7 +63,7 @@ class Cloud extends core_1.Command {
|
|
|
59
63
|
}
|
|
60
64
|
await (0, methods_1.versionCheck)(this.config.version);
|
|
61
65
|
const { args, flags, raw } = await this.parse(Cloud);
|
|
62
|
-
const { 'android-api-level': androidApiLevel, 'android-device': androidDevice, apiKey, apiUrl, 'app-binary-id': appBinaryId, 'app-file': appFile, arm64, async, env, 'exclude-flows': excludeFlows, 'exclude-tags': excludeTags, flows, 'google-play': googlePlay, 'include-tags': includeTags, 'ios-device': iOSDevice, 'ios-version': iOSVersion, 'legacy-upload': legacyUpload, name, orientation, quiet, ...rest } = flags;
|
|
66
|
+
const { 'android-api-level': androidApiLevel, 'android-device': androidDevice, apiKey, apiUrl, 'app-binary-id': appBinaryId, 'app-file': appFile, arm64, async, 'device-locale': deviceLocale, env, 'exclude-flows': excludeFlows, 'exclude-tags': excludeTags, flows, 'google-play': googlePlay, 'include-tags': includeTags, 'ios-device': iOSDevice, 'ios-version': iOSVersion, 'legacy-upload': legacyUpload, 'maestro-version': maestroVersion, name, orientation, quiet, ...rest } = flags;
|
|
63
67
|
if (arm64) {
|
|
64
68
|
(0, cli_ux_1.info)('Contact hello@devicecloud.dev to enquire about arm64 devices');
|
|
65
69
|
(0, cli_ux_1.exit)();
|
|
@@ -221,8 +225,9 @@ class Cloud extends core_1.Command {
|
|
|
221
225
|
const testFormData = new FormData();
|
|
222
226
|
// eslint-disable-next-line unicorn/no-array-reduce
|
|
223
227
|
const envObject = (env ?? []).reduce((acc, cur) => {
|
|
224
|
-
const [key, value] = cur.split('=');
|
|
225
|
-
|
|
228
|
+
const [key, ...value] = cur.split('=');
|
|
229
|
+
// handle case where value includes an equals sign
|
|
230
|
+
acc[key] = value.join('=');
|
|
226
231
|
return acc;
|
|
227
232
|
}, {});
|
|
228
233
|
const buffer = await (0, methods_1.compressFilesFromRelativePath)(flowFile?.endsWith('.yaml') || flowFile?.endsWith('.yml')
|
|
@@ -247,6 +252,8 @@ class Cloud extends core_1.Command {
|
|
|
247
252
|
allExcludeTags,
|
|
248
253
|
allIncludeTags,
|
|
249
254
|
continueOnFailure,
|
|
255
|
+
deviceLocale,
|
|
256
|
+
maestroVersion,
|
|
250
257
|
orientation,
|
|
251
258
|
raw,
|
|
252
259
|
version: this.config.version,
|
|
@@ -261,8 +268,6 @@ class Cloud extends core_1.Command {
|
|
|
261
268
|
testFormData.set('iOSDevice', iOSDevice.toString());
|
|
262
269
|
if (name)
|
|
263
270
|
testFormData.set('name', name.toString());
|
|
264
|
-
if (metadata)
|
|
265
|
-
testFormData.set('metadata', JSON.stringify(metadata));
|
|
266
271
|
for (const [key, value] of Object.entries(rest)) {
|
|
267
272
|
if (value) {
|
|
268
273
|
testFormData.set(key, value);
|
package/dist/constants.d.ts
CHANGED
|
@@ -8,6 +8,7 @@ export declare const flags: {
|
|
|
8
8
|
'app-file': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
9
9
|
arm64: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
10
10
|
async: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
11
|
+
'device-locale': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
11
12
|
env: import("@oclif/core/lib/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
12
13
|
'exclude-flows': import("@oclif/core/lib/interfaces").OptionFlag<string[], import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
13
14
|
'exclude-tags': import("@oclif/core/lib/interfaces").OptionFlag<string[], import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
@@ -17,6 +18,7 @@ export declare const flags: {
|
|
|
17
18
|
'ios-device': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
18
19
|
'ios-version': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
19
20
|
'legacy-upload': import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
21
|
+
'maestro-version': import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
20
22
|
name: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
21
23
|
orientation: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces").CustomOptions>;
|
|
22
24
|
quiet: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
package/dist/constants.js
CHANGED
|
@@ -42,6 +42,9 @@ exports.flags = {
|
|
|
42
42
|
async: core_1.Flags.boolean({
|
|
43
43
|
description: 'Wait for the results of the run',
|
|
44
44
|
}),
|
|
45
|
+
'device-locale': core_1.Flags.string({
|
|
46
|
+
description: 'Locale that will be set to a device, ISO-639-1 code and uppercase ISO-3166-1 code e.g. "de_DE" for Germany',
|
|
47
|
+
}),
|
|
45
48
|
env: core_1.Flags.file({
|
|
46
49
|
char: 'e',
|
|
47
50
|
description: 'One or more environment variables to inject into your flows',
|
|
@@ -96,17 +99,39 @@ exports.flags = {
|
|
|
96
99
|
'iphone-15-plus',
|
|
97
100
|
'iphone-15-pro',
|
|
98
101
|
'iphone-15-pro-max',
|
|
102
|
+
'iphone-16',
|
|
103
|
+
'iphone-16-plus',
|
|
104
|
+
'iphone-16-pro',
|
|
105
|
+
'iphone-16-pro-max',
|
|
99
106
|
'ipad-pro-6th-gen',
|
|
100
107
|
],
|
|
101
108
|
}),
|
|
102
109
|
'ios-version': core_1.Flags.string({
|
|
103
110
|
description: '[iOS only] iOS version to run your flow against',
|
|
104
|
-
options: ['15', '16', '17'],
|
|
111
|
+
options: ['15', '16', '17', '18'],
|
|
105
112
|
}),
|
|
106
113
|
'legacy-upload': core_1.Flags.boolean({
|
|
107
114
|
default: false,
|
|
108
115
|
description: 'Use the legacy direct upload method',
|
|
109
116
|
}),
|
|
117
|
+
'maestro-version': core_1.Flags.string({
|
|
118
|
+
aliases: ['maestroVersion'],
|
|
119
|
+
description: '[ALPHA pre-release] - Maestro version to run your flow against',
|
|
120
|
+
options: [
|
|
121
|
+
'1.36.0',
|
|
122
|
+
'1.37.0',
|
|
123
|
+
'1.37.1',
|
|
124
|
+
'1.37.2',
|
|
125
|
+
'1.37.3',
|
|
126
|
+
'1.37.4',
|
|
127
|
+
'1.37.5',
|
|
128
|
+
'1.37.6',
|
|
129
|
+
'1.37.7',
|
|
130
|
+
'1.37.8',
|
|
131
|
+
'1.37.9',
|
|
132
|
+
'1.38.1',
|
|
133
|
+
],
|
|
134
|
+
}),
|
|
110
135
|
name: core_1.Flags.string({
|
|
111
136
|
description: 'A custom name for your upload (useful for tagging commits etc)',
|
|
112
137
|
}),
|
|
@@ -128,12 +153,16 @@ exports.iOSCompatibilityLookup = {
|
|
|
128
153
|
'iphone-13': ['15', '16', '17'],
|
|
129
154
|
'iphone-13-mini': ['15', '16', '17'],
|
|
130
155
|
'iphone-13-pro-max': ['15', '16', '17'],
|
|
131
|
-
'iphone-14': ['16', '17'],
|
|
132
|
-
'iphone-14-plus': ['16', '17'],
|
|
133
|
-
'iphone-14-pro': ['16', '17'],
|
|
134
|
-
'iphone-14-pro-max': ['16', '17'],
|
|
135
|
-
'iphone-15': ['17'],
|
|
136
|
-
'iphone-15-plus': ['17'],
|
|
137
|
-
'iphone-15-pro': ['17'],
|
|
138
|
-
'iphone-15-pro-max': ['17'],
|
|
156
|
+
'iphone-14': ['16', '17', '18'],
|
|
157
|
+
'iphone-14-plus': ['16', '17', '18'],
|
|
158
|
+
'iphone-14-pro': ['16', '17', '18'],
|
|
159
|
+
'iphone-14-pro-max': ['16', '17', '18'],
|
|
160
|
+
'iphone-15': ['17', '18'],
|
|
161
|
+
'iphone-15-plus': ['17', '18'],
|
|
162
|
+
'iphone-15-pro': ['17', '18'],
|
|
163
|
+
'iphone-15-pro-max': ['17', '18'],
|
|
164
|
+
'iphone-16': ['18'],
|
|
165
|
+
'iphone-16-plus': ['18'],
|
|
166
|
+
'iphone-16-pro': ['18'],
|
|
167
|
+
'iphone-16-pro-max': ['18'],
|
|
139
168
|
};
|
package/oclif.manifest.json
CHANGED
|
@@ -99,6 +99,13 @@
|
|
|
99
99
|
"allowNo": false,
|
|
100
100
|
"type": "boolean"
|
|
101
101
|
},
|
|
102
|
+
"device-locale": {
|
|
103
|
+
"description": "Locale that will be set to a device, ISO-639-1 code and uppercase ISO-3166-1 code e.g. \"de_DE\" for Germany",
|
|
104
|
+
"name": "device-locale",
|
|
105
|
+
"hasDynamicHelp": false,
|
|
106
|
+
"multiple": false,
|
|
107
|
+
"type": "option"
|
|
108
|
+
},
|
|
102
109
|
"env": {
|
|
103
110
|
"char": "e",
|
|
104
111
|
"description": "One or more environment variables to inject into your flows",
|
|
@@ -173,6 +180,10 @@
|
|
|
173
180
|
"iphone-15-plus",
|
|
174
181
|
"iphone-15-pro",
|
|
175
182
|
"iphone-15-pro-max",
|
|
183
|
+
"iphone-16",
|
|
184
|
+
"iphone-16-plus",
|
|
185
|
+
"iphone-16-pro",
|
|
186
|
+
"iphone-16-pro-max",
|
|
176
187
|
"ipad-pro-6th-gen"
|
|
177
188
|
],
|
|
178
189
|
"type": "option"
|
|
@@ -185,7 +196,8 @@
|
|
|
185
196
|
"options": [
|
|
186
197
|
"15",
|
|
187
198
|
"16",
|
|
188
|
-
"17"
|
|
199
|
+
"17",
|
|
200
|
+
"18"
|
|
189
201
|
],
|
|
190
202
|
"type": "option"
|
|
191
203
|
},
|
|
@@ -195,6 +207,30 @@
|
|
|
195
207
|
"allowNo": false,
|
|
196
208
|
"type": "boolean"
|
|
197
209
|
},
|
|
210
|
+
"maestro-version": {
|
|
211
|
+
"aliases": [
|
|
212
|
+
"maestroVersion"
|
|
213
|
+
],
|
|
214
|
+
"description": "[ALPHA pre-release] - Maestro version to run your flow against",
|
|
215
|
+
"name": "maestro-version",
|
|
216
|
+
"hasDynamicHelp": false,
|
|
217
|
+
"multiple": false,
|
|
218
|
+
"options": [
|
|
219
|
+
"1.36.0",
|
|
220
|
+
"1.37.0",
|
|
221
|
+
"1.37.1",
|
|
222
|
+
"1.37.2",
|
|
223
|
+
"1.37.3",
|
|
224
|
+
"1.37.4",
|
|
225
|
+
"1.37.5",
|
|
226
|
+
"1.37.6",
|
|
227
|
+
"1.37.7",
|
|
228
|
+
"1.37.8",
|
|
229
|
+
"1.37.9",
|
|
230
|
+
"1.38.1"
|
|
231
|
+
],
|
|
232
|
+
"type": "option"
|
|
233
|
+
},
|
|
198
234
|
"name": {
|
|
199
235
|
"description": "A custom name for your upload (useful for tagging commits etc)",
|
|
200
236
|
"name": "name",
|
|
@@ -239,5 +275,5 @@
|
|
|
239
275
|
]
|
|
240
276
|
}
|
|
241
277
|
},
|
|
242
|
-
"version": "1.0.
|
|
278
|
+
"version": "1.0.10"
|
|
243
279
|
}
|