lim 0.50.0 → 0.51.0

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.
Files changed (122) hide show
  1. package/JSON_OUTPUT.md +2 -1
  2. package/README.md +14 -4
  3. package/dist/base-command.d.ts +8 -0
  4. package/dist/base-command.d.ts.map +1 -1
  5. package/dist/base-command.js +40 -8
  6. package/dist/base-command.js.map +1 -1
  7. package/dist/base-command.snapshots.test.js +2 -2
  8. package/dist/base-command.snapshots.test.js.map +1 -1
  9. package/dist/base-command.uploads.test.js +135 -7
  10. package/dist/base-command.uploads.test.js.map +1 -1
  11. package/dist/commands/android/create.js +2 -2
  12. package/dist/commands/android/create.js.map +1 -1
  13. package/dist/commands/gradle/build.d.ts.map +1 -1
  14. package/dist/commands/gradle/build.js +3 -0
  15. package/dist/commands/gradle/build.js.map +1 -1
  16. package/dist/commands/gradle/create.js +2 -2
  17. package/dist/commands/gradle/create.js.map +1 -1
  18. package/dist/commands/ios/create.d.ts +0 -6
  19. package/dist/commands/ios/create.d.ts.map +1 -1
  20. package/dist/commands/ios/create.js +12 -48
  21. package/dist/commands/ios/create.js.map +1 -1
  22. package/dist/commands/ios/create.test.js +22 -35
  23. package/dist/commands/ios/create.test.js.map +1 -1
  24. package/dist/commands/ios/keychain/restore.d.ts +0 -2
  25. package/dist/commands/ios/keychain/restore.d.ts.map +1 -1
  26. package/dist/commands/ios/keychain/restore.js +5 -23
  27. package/dist/commands/ios/keychain/restore.js.map +1 -1
  28. package/dist/commands/ios/keychain/save.d.ts +0 -2
  29. package/dist/commands/ios/keychain/save.d.ts.map +1 -1
  30. package/dist/commands/ios/keychain/save.js +8 -37
  31. package/dist/commands/ios/keychain/save.js.map +1 -1
  32. package/dist/commands/ios/keychain/transfer.test.d.ts +2 -0
  33. package/dist/commands/ios/keychain/transfer.test.d.ts.map +1 -0
  34. package/dist/commands/ios/keychain/transfer.test.js +64 -0
  35. package/dist/commands/ios/keychain/transfer.test.js.map +1 -0
  36. package/dist/commands/ios/snapshot/delete.d.ts +21 -0
  37. package/dist/commands/ios/snapshot/delete.d.ts.map +1 -0
  38. package/dist/commands/ios/snapshot/delete.js +30 -0
  39. package/dist/commands/ios/snapshot/delete.js.map +1 -0
  40. package/dist/commands/ios/{keychain/generate-key.d.ts → snapshot/get.d.ts} +6 -2
  41. package/dist/commands/ios/snapshot/get.d.ts.map +1 -0
  42. package/dist/commands/ios/snapshot/get.js +36 -0
  43. package/dist/commands/ios/snapshot/get.js.map +1 -0
  44. package/dist/commands/ios/snapshot/list.d.ts +20 -0
  45. package/dist/commands/ios/snapshot/list.d.ts.map +1 -0
  46. package/dist/commands/ios/snapshot/list.js +45 -0
  47. package/dist/commands/ios/snapshot/list.js.map +1 -0
  48. package/dist/commands/run.js +1 -1
  49. package/dist/commands/run.js.map +1 -1
  50. package/dist/commands/xcode/build.d.ts.map +1 -1
  51. package/dist/commands/xcode/build.js +1 -0
  52. package/dist/commands/xcode/build.js.map +1 -1
  53. package/dist/commands/xcode/create.js +4 -4
  54. package/dist/commands/xcode/create.js.map +1 -1
  55. package/dist/commands/xcode/rbe/index.d.ts.map +1 -1
  56. package/dist/commands/xcode/rbe/index.js +4 -0
  57. package/dist/commands/xcode/rbe/index.js.map +1 -1
  58. package/dist/commands/xcode/rbe/upload.d.ts.map +1 -1
  59. package/dist/commands/xcode/rbe/upload.js +1 -0
  60. package/dist/commands/xcode/rbe/upload.js.map +1 -1
  61. package/dist/commands/xcode/snapshot/delete.d.ts +21 -0
  62. package/dist/commands/xcode/snapshot/delete.d.ts.map +1 -0
  63. package/dist/commands/xcode/snapshot/delete.js +30 -0
  64. package/dist/commands/xcode/snapshot/delete.js.map +1 -0
  65. package/dist/commands/xcode/snapshot/get.d.ts +20 -0
  66. package/dist/commands/xcode/snapshot/get.d.ts.map +1 -0
  67. package/dist/commands/xcode/snapshot/get.js +36 -0
  68. package/dist/commands/xcode/snapshot/get.js.map +1 -0
  69. package/dist/commands/xcode/snapshot/list.d.ts +20 -0
  70. package/dist/commands/xcode/snapshot/list.d.ts.map +1 -0
  71. package/dist/commands/xcode/snapshot/list.js +45 -0
  72. package/dist/commands/xcode/snapshot/list.js.map +1 -0
  73. package/dist/commands/xcode/snapshot/manage.test.d.ts +2 -0
  74. package/dist/commands/xcode/snapshot/manage.test.d.ts.map +1 -0
  75. package/dist/commands/xcode/snapshot/manage.test.js +65 -0
  76. package/dist/commands/xcode/snapshot/manage.test.js.map +1 -0
  77. package/dist/commands/xcode/test.d.ts +2 -0
  78. package/dist/commands/xcode/test.d.ts.map +1 -1
  79. package/dist/commands/xcode/test.js +19 -2
  80. package/dist/commands/xcode/test.js.map +1 -1
  81. package/dist/commands/xcode/test.test.d.ts +2 -0
  82. package/dist/commands/xcode/test.test.d.ts.map +1 -0
  83. package/dist/commands/xcode/test.test.js +67 -0
  84. package/dist/commands/xcode/test.test.js.map +1 -0
  85. package/dist/creation-permissions.test.js +4 -4
  86. package/dist/creation-permissions.test.js.map +1 -1
  87. package/dist/json-contract.test.js +13 -5
  88. package/dist/json-contract.test.js.map +1 -1
  89. package/dist/lib/ios-device-selection.d.ts +10 -0
  90. package/dist/lib/ios-device-selection.d.ts.map +1 -0
  91. package/dist/lib/ios-device-selection.js +24 -0
  92. package/dist/lib/ios-device-selection.js.map +1 -0
  93. package/dist/lib/keychain.d.ts +2 -0
  94. package/dist/lib/keychain.d.ts.map +1 -0
  95. package/dist/lib/keychain.js +5 -0
  96. package/dist/lib/keychain.js.map +1 -0
  97. package/dist/lib/snapshots.d.ts +20 -0
  98. package/dist/lib/snapshots.d.ts.map +1 -0
  99. package/dist/lib/snapshots.js +23 -0
  100. package/dist/lib/snapshots.js.map +1 -0
  101. package/dist/lib/snapshots.test.d.ts +2 -0
  102. package/dist/lib/snapshots.test.d.ts.map +1 -0
  103. package/dist/lib/snapshots.test.js +46 -0
  104. package/dist/lib/snapshots.test.js.map +1 -0
  105. package/dist/lib/xctest-render.d.ts +1 -1
  106. package/dist/lib/xctest-render.d.ts.map +1 -1
  107. package/dist/lib/xctest-render.js +7 -2
  108. package/dist/lib/xctest-render.js.map +1 -1
  109. package/dist/lib/xctest-render.test.js +23 -0
  110. package/dist/lib/xctest-render.test.js.map +1 -1
  111. package/dist/prepared-build-uploads.test.d.ts +2 -0
  112. package/dist/prepared-build-uploads.test.d.ts.map +1 -0
  113. package/dist/prepared-build-uploads.test.js +118 -0
  114. package/dist/prepared-build-uploads.test.js.map +1 -0
  115. package/package.json +8 -2
  116. package/dist/commands/ios/keychain/generate-key.d.ts.map +0 -1
  117. package/dist/commands/ios/keychain/generate-key.js +0 -20
  118. package/dist/commands/ios/keychain/generate-key.js.map +0 -1
  119. package/dist/lib/keychain-encryption-key.d.ts +0 -9
  120. package/dist/lib/keychain-encryption-key.d.ts.map +0 -1
  121. package/dist/lib/keychain-encryption-key.js +0 -55
  122. package/dist/lib/keychain-encryption-key.js.map +0 -1
@@ -1,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const base_command_1 = require("../../../base-command");
4
- const keychain_encryption_key_1 = require("../../../lib/keychain-encryption-key");
5
- class IosKeychainGenerateKey extends base_command_1.BaseCommand {
6
- async run() {
7
- const { flags } = await this.parse(IosKeychainGenerateKey);
8
- this.setParsedFlags(flags);
9
- const key = (0, keychain_encryption_key_1.generateKeychainEncryptionKey)();
10
- this.outputResult({ key }, key);
11
- }
12
- }
13
- IosKeychainGenerateKey.summary = 'Generate an iOS keychain encryption key';
14
- IosKeychainGenerateKey.description = 'Print a new 32-byte base64 key for encrypted iOS keychain save and restore. Store it securely and pass it to save/restore on stdin.';
15
- IosKeychainGenerateKey.examples = ['<%= config.bin %> ios keychain generate-key > keychain.key'];
16
- IosKeychainGenerateKey.flags = {
17
- ...base_command_1.BaseCommand.baseFlags,
18
- };
19
- exports.default = IosKeychainGenerateKey;
20
- //# sourceMappingURL=generate-key.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-key.js","sourceRoot":"","sources":["../../../../src/commands/ios/keychain/generate-key.ts"],"names":[],"mappings":";;AAAA,wDAAoD;AACpD,kFAAqF;AAErF,MAAqB,sBAAuB,SAAQ,0BAAW;IAU7D,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QAC3D,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAC3B,MAAM,GAAG,GAAG,IAAA,uDAA6B,GAAE,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC;IAClC,CAAC;;AAdM,8BAAO,GAAG,yCAAyC,CAAC;AACpD,kCAAW,GAChB,qIAAqI,CAAC;AACjI,+BAAQ,GAAG,CAAC,4DAA4D,CAAC,CAAC;AAE1E,4BAAK,GAAG;IACb,GAAG,0BAAW,CAAC,SAAS;CACzB,CAAC;kBARiB,sBAAsB"}
@@ -1,9 +0,0 @@
1
- export declare const DEFAULT_KEYCHAIN_ASSET_NAME = "keychain/login.tar.gz";
2
- export declare function generateKeychainEncryptionKey(): string;
3
- export declare function resolveKeychainEncryptionKey(options: {
4
- encryptionKey?: string;
5
- encryptionKeyStdin?: boolean;
6
- }): Promise<string>;
7
- export declare function readKeychainEncryptionKeyFromStdin(): Promise<string>;
8
- export declare function validateKeychainEncryptionKey(key: string): void;
9
- //# sourceMappingURL=keychain-encryption-key.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"keychain-encryption-key.d.ts","sourceRoot":"","sources":["../../src/lib/keychain-encryption-key.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,2BAA2B,0BAA0B,CAAC;AAEnE,wBAAgB,6BAA6B,IAAI,MAAM,CAEtD;AAED,wBAAsB,4BAA4B,CAAC,OAAO,EAAE;IAC1D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,GAAG,OAAO,CAAC,MAAM,CAAC,CAalB;AAED,wBAAsB,kCAAkC,IAAI,OAAO,CAAC,MAAM,CAAC,CAc1E;AAED,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAe/D"}
@@ -1,55 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DEFAULT_KEYCHAIN_ASSET_NAME = void 0;
4
- exports.generateKeychainEncryptionKey = generateKeychainEncryptionKey;
5
- exports.resolveKeychainEncryptionKey = resolveKeychainEncryptionKey;
6
- exports.readKeychainEncryptionKeyFromStdin = readKeychainEncryptionKeyFromStdin;
7
- exports.validateKeychainEncryptionKey = validateKeychainEncryptionKey;
8
- const crypto_1 = require("crypto");
9
- exports.DEFAULT_KEYCHAIN_ASSET_NAME = 'keychain/login.tar.gz';
10
- function generateKeychainEncryptionKey() {
11
- return (0, crypto_1.randomBytes)(32).toString('base64');
12
- }
13
- async function resolveKeychainEncryptionKey(options) {
14
- if (options.encryptionKey && options.encryptionKeyStdin) {
15
- throw new Error('Use either --encryption-key or --encryption-key-stdin, not both.');
16
- }
17
- if (options.encryptionKey) {
18
- const key = options.encryptionKey.trim();
19
- validateKeychainEncryptionKey(key);
20
- return key;
21
- }
22
- if (options.encryptionKeyStdin) {
23
- return readKeychainEncryptionKeyFromStdin();
24
- }
25
- throw new Error('Provide --encryption-key or --encryption-key-stdin.');
26
- }
27
- async function readKeychainEncryptionKeyFromStdin() {
28
- if (process.stdin.isTTY) {
29
- throw new Error('Provide a 32-byte base64 key on stdin.');
30
- }
31
- const chunks = [];
32
- process.stdin.setEncoding('utf8');
33
- for await (const chunk of process.stdin) {
34
- chunks.push(chunk);
35
- }
36
- const key = chunks.join('').trim();
37
- validateKeychainEncryptionKey(key);
38
- return key;
39
- }
40
- function validateKeychainEncryptionKey(key) {
41
- if (!key) {
42
- throw new Error('Keychain encryption key is empty.');
43
- }
44
- if (!/^[A-Za-z0-9+/_=-]+$/.test(key)) {
45
- throw new Error('Keychain encryption key must be base64 or base64url.');
46
- }
47
- let normalized = key.replace(/-/g, '+').replace(/_/g, '/');
48
- const padding = (4 - (normalized.length % 4)) % 4;
49
- normalized += '='.repeat(padding);
50
- const decoded = Buffer.from(normalized, 'base64');
51
- if (decoded.length !== 32) {
52
- throw new Error('Keychain encryption key must decode to exactly 32 bytes.');
53
- }
54
- }
55
- //# sourceMappingURL=keychain-encryption-key.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"keychain-encryption-key.js","sourceRoot":"","sources":["../../src/lib/keychain-encryption-key.ts"],"names":[],"mappings":";;;AAIA,sEAEC;AAED,oEAgBC;AAED,gFAcC;AAED,sEAeC;AAzDD,mCAAqC;AAExB,QAAA,2BAA2B,GAAG,uBAAuB,CAAC;AAEnE,SAAgB,6BAA6B;IAC3C,OAAO,IAAA,oBAAW,EAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AAC5C,CAAC;AAEM,KAAK,UAAU,4BAA4B,CAAC,OAGlD;IACC,IAAI,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;QACxD,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAC;IACtF,CAAC;IACD,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;QAC1B,MAAM,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QACzC,6BAA6B,CAAC,GAAG,CAAC,CAAC;QACnC,OAAO,GAAG,CAAC;IACb,CAAC;IACD,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;QAC/B,OAAO,kCAAkC,EAAE,CAAC;IAC9C,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;AACzE,CAAC;AAEM,KAAK,UAAU,kCAAkC;IACtD,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAClC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QACxC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACnC,6BAA6B,CAAC,GAAG,CAAC,CAAC;IACnC,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAgB,6BAA6B,CAAC,GAAW;IACvD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;IAED,IAAI,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC3D,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAClD,UAAU,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAClC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAClD,IAAI,OAAO,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC9E,CAAC;AACH,CAAC"}