@todesktop/cli 1.2.4 → 1.4.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.
- package/README.md +60 -31
- package/build/commands/build.js +21 -15
- package/build/commands/build.js.map +1 -1
- package/build/commands/builds.js +15 -11
- package/build/commands/builds.js.map +1 -1
- package/build/commands/logout.js +8 -6
- package/build/commands/logout.js.map +1 -1
- package/build/commands/release.js +16 -12
- package/build/commands/release.js.map +1 -1
- package/build/commands/whoami.js +8 -6
- package/build/commands/whoami.js.map +1 -1
- package/build/commands.json +35 -27
- package/package.json +3 -1
package/README.md
CHANGED
|
@@ -12,7 +12,8 @@ For more information, visit the project [landing page](https://www.todesktop.com
|
|
|
12
12
|
- [Automating your builds (CI)](#automating-your-builds-ci)
|
|
13
13
|
- [Project configuration (todesktop.json)](#project-configuration-todesktopjson)
|
|
14
14
|
- [Build lifecycle hooks (package.json scripts)](#build-lifecycle-hooks-packagejson-scripts)
|
|
15
|
-
- [App package.json requirements](#packagejson-requirements)
|
|
15
|
+
- [App package.json requirements](#app-packagejson-requirements)
|
|
16
|
+
- [FAQs](#faqs)
|
|
16
17
|
- [Changelog](#changelog)
|
|
17
18
|
|
|
18
19
|
## Installation
|
|
@@ -125,6 +126,7 @@ This builds your Electron app with native installers, code signing, and so on ba
|
|
|
125
126
|
We also support:
|
|
126
127
|
|
|
127
128
|
- `todesktop build --code-sign=false`. Run a build with code-signing and notarization disabled. This is handy for testing builds quickly.
|
|
129
|
+
- `todesktop build --config=<path.to.another.config.json>`. Run a build with a different configuration file.
|
|
128
130
|
- `todesktop release`. Release a build. This will publish a new download and an auto-update for existing users. By default it shows a list of builds for you to choose from.
|
|
129
131
|
- Use `todesktop release <id>` to release a specific build by ID.
|
|
130
132
|
- `todesktop release --latest` will release the latest build.
|
|
@@ -318,6 +320,16 @@ The DMG windows position and size. In most cases, you will only want to specify
|
|
|
318
320
|
}
|
|
319
321
|
```
|
|
320
322
|
|
|
323
|
+
### `extends` - (optional) string
|
|
324
|
+
|
|
325
|
+
Default: `null`.
|
|
326
|
+
|
|
327
|
+
Example: `./todesktop.staging.json`.
|
|
328
|
+
|
|
329
|
+
This is the path to a base configuration file. This is especially useful for configuration sharing between staging and production builds. The base configuration file can be a relative path from the project root or an absolute path.
|
|
330
|
+
|
|
331
|
+
For more information about how to create a staging version of your app see: [How do I create a staging version of my app?](#how-do-i-create-a-staging-version-of-my-app).
|
|
332
|
+
|
|
321
333
|
### `extraContentFiles` - (optional) array of objects
|
|
322
334
|
|
|
323
335
|
Default: `[]`.
|
|
@@ -513,6 +525,25 @@ Default: The root [`icon`](#icon---string) is used.
|
|
|
513
525
|
|
|
514
526
|
The path to your application's Mac desktop icon. It must be an ICNS or PNG.
|
|
515
527
|
|
|
528
|
+
### `packageJson` - (optional) object
|
|
529
|
+
|
|
530
|
+
Default: `{}`
|
|
531
|
+
|
|
532
|
+
Example:
|
|
533
|
+
|
|
534
|
+
```js
|
|
535
|
+
"packageJson": {
|
|
536
|
+
"extends": "package.json",
|
|
537
|
+
"name": "example-app-canary",
|
|
538
|
+
"productName": "Example App Canary",
|
|
539
|
+
"dependencies": {
|
|
540
|
+
"electron": "21.0.1"
|
|
541
|
+
}
|
|
542
|
+
}
|
|
543
|
+
```
|
|
544
|
+
|
|
545
|
+
If you want to override the default `package.json` configuration, use the `packageJson` property. For example, you can use this to override the `productName` or `version` properties.
|
|
546
|
+
|
|
516
547
|
### `schemaVersion` - number
|
|
517
548
|
|
|
518
549
|
Example: `1`.
|
|
@@ -776,39 +807,28 @@ Note: **Do not put a token in this file**. You are specifying a literal value of
|
|
|
776
807
|
|
|
777
808
|
### How do I create a staging version of my app?
|
|
778
809
|
|
|
779
|
-
|
|
810
|
+
ToDesktop CLI supports the concept of a staging version of your app. This is useful if you want to test your app before releasing it to the public. To create a staging version of your app, you need to do the following:
|
|
780
811
|
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
const rootDir = path.join(__dirname, "..");
|
|
786
|
-
const packageJson = require(rootDir + "/package.json");
|
|
787
|
-
const toDesktopJson = require(rootDir + "/todesktop.json");
|
|
788
|
-
|
|
789
|
-
function modStaging() {
|
|
790
|
-
packageJson.name = "myapp-staging";
|
|
791
|
-
packageJson.productName = "My App Staging";
|
|
792
|
-
|
|
793
|
-
toDesktopJson.id = "220718gzrs4pfe8";
|
|
794
|
-
toDesktopJson.icon = "./resources/staging.png";
|
|
795
|
-
toDesktopJson.appId = "myapp.staging.app";
|
|
796
|
-
|
|
797
|
-
fs.writeFileSync(
|
|
798
|
-
rootDir + "/package.json",
|
|
799
|
-
JSON.stringify(packageJson, null, 2)
|
|
800
|
-
);
|
|
801
|
-
fs.writeFileSync(
|
|
802
|
-
rootDir + "/todesktop.json",
|
|
803
|
-
JSON.stringify(toDesktopJson, null, 2)
|
|
804
|
-
);
|
|
805
|
-
}
|
|
812
|
+
1. Create a new app in ToDesktop's web UI.
|
|
813
|
+
|
|
814
|
+
2. Create a new todesktop configuration file named `todesktop.staging.json`
|
|
806
815
|
|
|
807
|
-
|
|
816
|
+
3. Add the following to your `todesktop.staging.json` file:
|
|
817
|
+
|
|
818
|
+
```json
|
|
819
|
+
{
|
|
820
|
+
"extends": "./todesktop.json",
|
|
821
|
+
"id": "<ID_OF_YOUR_STAGING_APP>",
|
|
822
|
+
"appId": "myapp.staging.app",
|
|
823
|
+
"icon": "./resources/staging.png",
|
|
824
|
+
"packageJson": {
|
|
825
|
+
"name": "myapp-staging",
|
|
826
|
+
"productName": "My App (Staging)"
|
|
827
|
+
}
|
|
828
|
+
}
|
|
808
829
|
```
|
|
809
830
|
|
|
810
|
-
|
|
811
|
-
Then in your package.json, you could do something like this:
|
|
831
|
+
4. Then in your package.json, you could do something like this:
|
|
812
832
|
|
|
813
833
|
```js
|
|
814
834
|
{
|
|
@@ -816,7 +836,7 @@ Then in your package.json, you could do something like this:
|
|
|
816
836
|
// ...
|
|
817
837
|
"scripts": {
|
|
818
838
|
"todesktop-build": "todesktop build",
|
|
819
|
-
"todesktop-staging-build": "
|
|
839
|
+
"todesktop-staging-build": "todesktop build --config=./todesktop.staging.json",
|
|
820
840
|
},
|
|
821
841
|
}
|
|
822
842
|
```
|
|
@@ -825,6 +845,15 @@ Now you can run `npm run todesktop-build` to build the production app. Or you ca
|
|
|
825
845
|
|
|
826
846
|
## Changelog
|
|
827
847
|
|
|
848
|
+
### v1.4.0
|
|
849
|
+
|
|
850
|
+
- Adds `extends` and `packageJson` field to `todesktop.json` file.
|
|
851
|
+
- Added `--config` option to pass a different configuration file.
|
|
852
|
+
|
|
853
|
+
### v1.3.0
|
|
854
|
+
|
|
855
|
+
- Added support for delegated users and teams.
|
|
856
|
+
|
|
828
857
|
### v1.2.1
|
|
829
858
|
|
|
830
859
|
- Fix: When the build is finished the download link is now an Apple Silicon link if you are on an Apple Silicon Mac.
|
package/build/commands/build.js
CHANGED
|
@@ -60,9 +60,11 @@ parcelRequire=function(e,r,t,n){var i,o="function"==typeof parcelRequire&&parcel
|
|
|
60
60
|
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;const e=e=>({oneOf:[e,{type:"array",items:e}]});var t=t=>{const n=(e=[])=>({type:"string",file:{from:t.projectRoot,extensions:["icns","png",...e],mustBeFile:!0},minLength:3});return{type:"object",required:["id","icon","schemaVersion"],properties:{appId:{type:"string",minLength:1},appFiles:{type:"array",items:{type:"string",minLength:1},minItems:1},appProtocolScheme:{type:"string",minLength:1},appPath:{type:"string",file:{from:t.projectRoot,isOptional:!0,mustBeElectronApp:!0}},asarUnpack:{oneOf:[{type:"boolean"},{type:"array",items:{type:"string",minLength:1},minItems:1}]},copyright:{type:"string",minLength:1},electronMirror:{type:"string",format:"uri"},electronVersion:{type:"string",minLength:1},extraContentFiles:{type:"array",items:{type:"object",required:["from"],properties:{from:{type:"string",file:{from:t.projectRoot}},to:{type:"string"}}}},extraResources:{type:"array",items:{type:"object",required:["from"],properties:{from:{type:"string",file:{from:t.projectRoot}},to:{type:"string"}}}},fileAssociations:{type:"array",items:{type:"object",required:["ext"],properties:{ext:e({type:"string",minLength:1}),description:{type:"string",minLength:1},name:{type:"string",minLength:1},mimeType:{type:"string",minLength:1},icon:{type:"string",minLength:1},role:{type:"string",minLength:1},isPackage:{type:"boolean"},rank:{type:"string",minLength:1}}},minItems:1},filesForDistribution:{type:"array",items:{type:"string",minLength:1},minItems:1},icon:n(),linux:{properties:{category:{type:"string",minLength:1},icon:n(),noSandbox:{type:"boolean"}}},id:{type:"string",minLength:1},mac:{properties:{category:{type:"string",minLength:1},additionalBinariesToSign:{type:"array",items:{type:"string",minLength:1}},entitlements:{type:"string",file:{from:t.projectRoot,extensions:["plist"],mustBeFile:!0},minLength:1},extendInfo:{type:"object"},icon:n()}},dmg:{properties:{background:{type:"string",file:{from:t.projectRoot,extensions:["tiff"],mustBeFile:!0},minLength:1},artifactName:{type:"string",minLength:1},backgroundColor:{type:"string",minLength:1},iconSize:{type:"number"},iconTextSize:{type:"number"},title:{type:"string",minLength:1},contents:{type:"array",items:{type:"object",properties:{x:{type:"number"},y:{type:"number"}}}},window:{type:"object",properties:{x:{type:"number"},y:{type:"number"},width:{type:"number"},height:{type:"number"}}}}},schemaVersion:{type:"number",minimum:1,maximum:1},snap:{properties:{after:{type:"array",items:{type:"string",minLength:1}},appPartStage:{type:"array",items:{type:"string",minLength:1}},assumes:e({type:"string",minLength:1}),autoStart:{type:"boolean"},buildPackages:{type:"array",items:{type:"string",minLength:1}},confinement:{type:"string",enum:["classic","devmode","strict"]},environment:{type:"object"},grade:{type:"string",enum:["devel","stable"]},layout:{type:"object"},plugs:{type:"array",items:{anyOf:[{type:"string",minLength:1},{type:"object"}]}},stagePackages:{type:"array",items:{type:"string",minLength:1}},summary:{type:"string",maxLength:78},useTemplateApp:{type:"boolean"}}},uploadSizeLimit:{type:"number"},windows:{properties:{icon:n(["ico"])}}}}};exports.default=t;
|
|
61
61
|
},{}],"aYcI":[function(require,module,exports) {
|
|
62
62
|
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=a(require("ajv")),o=a(require("better-ajv-errors")),t=a(require("./addCustomKeywords")),r=a(require("./schema/full"));function a(e){return e&&e.__esModule?e:{default:e}}var n=({config:a,projectRoot:n})=>{const s={projectRoot:n},d=(0,r.default)(s),p=new e.default({allErrors:!0,jsonPointers:!0});(0,t.default)(p,s);const i=p.compile(d);if(!i(a)){const e=(0,o.default)(d,a,i.errors,{indent:2});throw new Error(`todesktop.json invalid. \nLearn more here: https://www.npmjs.com/package/@todesktop/cli#project-configuration-todesktopjson \n\n${e}`)}if(a.productName)throw new Error('todesktop.json invalid.\n\nThe "productName" property is no longer supported in todesktop.json. Please remove it and add it to your app\'s package.json instead.\n\nWe made this change because Electron also uses the "productName" if it exists in your app\'s package.json. If you do not add it to your package.json, your app name will default to the value of the "name" property in your package.json.')};exports.default=n;
|
|
63
|
-
},{"./addCustomKeywords":"g5Ig","./schema/full":"CN2N"}],"
|
|
64
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=
|
|
65
|
-
},{"
|
|
63
|
+
},{"./addCustomKeywords":"g5Ig","./schema/full":"CN2N"}],"AQMM":[function(require,module,exports) {
|
|
64
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=u(require("../../utilities/logger")),t=u(require("./loadConfig")),r=require("path"),d=u(require("lodash.merge"));function u(e){return e&&e.__esModule?e:{default:e}}const l=(u,i)=>{if(u.extends){e.default.debug("Extends field found, resolving");const n=(0,r.resolve)(i,u.extends),o=(0,t.default)(n),s=l(o,i),a=(0,d.default)({},s,u);return delete a.extends,a}return e.default.debug("No extends field, returning partial config"),u};var i=l;exports.default=i;
|
|
65
|
+
},{"../../utilities/logger":"XvyO","./loadConfig":"GCJw"}],"Sx1d":[function(require,module,exports) {
|
|
66
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=require("path"),o=require("fs"),r=u(require("find-up")),t=u(require("./loadConfig")),i=u(require("./resolveConfigPaths")),n=u(require("./validateConfig")),d=u(require("../../utilities/logger")),f=u(require("./computeFullProjectConfig"));function u(e){return e&&e.__esModule?e:{default:e}}var a=(u=null)=>{if(null===u){if(d.default.debug("No config path provided, searching for one"),!(u=r.default.sync("todesktop.json")))throw new Error("Can not find todesktop.json in this folder or any parent folders")}else{if(void 0===u||""===u)throw d.default.error("Provided config path is empty"),new Error("No config path provided");if(u=(0,e.resolve)(process.cwd(),u),!(0,o.existsSync)(u))throw d.default.error("Provided config path does not exist"),new Error(`Config file not found at ${u}`)}const a=(0,e.dirname)(u),s=(0,t.default)(u);s.appPath=s.appPath||".";const l=(0,f.default)(s,a);return(0,n.default)({config:l,projectRoot:a}),{config:(0,i.default)({config:l,projectRoot:a}),unprocessedConfig:l,projectRoot:a}};exports.default=a;
|
|
67
|
+
},{"./loadConfig":"GCJw","./resolveConfigPaths":"waRp","./validateConfig":"aYcI","../../utilities/logger":"XvyO","./computeFullProjectConfig":"AQMM"}],"I8pf":[function(require,module,exports) {
|
|
66
68
|
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=u;var e=o(require("axios")),t=o(require("./getEnvironmentVariables")),r=o(require("./logger"));function o(e){return e&&e.__esModule?e:{default:e}}const{TODESKTOP_CLI_FIREBASE_FUNCTIONS_BASE:a}=(0,t.default)();async function u(t,o={},u={}){r.default.debug({functionName:t,body:o,config:u},"postToFirebaseFunction");try{const s=await e.default.post(`${a}${t}`,o,u);return r.default.debug({responseData:s.data},"postToFirebaseFunction: success"),s.data}catch(n){throw r.default.error({error:n},"postToFirebaseFunction: error"),n}}
|
|
67
69
|
},{"./getEnvironmentVariables":"gwcX","./logger":"XvyO"}],"rSIG":[function(require,module,exports) {
|
|
68
70
|
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=t(require("./firestore")),r=t(require("./logger"));function t(e){return e&&e.__esModule?e:{default:e}}var o=async(t,o)=>{return new Promise((s,a)=>{r.default.debug({key:t},"subscribeToFirebaseDoc"),e.default.doc(t).onSnapshot(e=>{o({snapshot:e,data:e.exists?e.data():void 0}),s()},e=>{a(e)})})};exports.default=o;
|
|
@@ -76,12 +78,14 @@ parcelRequire=function(e,r,t,n){var i,o="function"==typeof parcelRequire&&parcel
|
|
|
76
78
|
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=a;var e=n(require("archiver")),r=n(require("du")),i=n(require("fs")),t=n(require("chalk")),o=n(require("./logger"));function n(e){return e&&e.__esModule?e:{default:e}}async function a({files:n,fileSizeLimit:a=20,onError:s,onProgress:u}){o.default.debug({files:n},"zip");const l=(0,e.default)("zip");l.on("warning",function(e){"ENOENT"===e.code?(console.warn(e),o.default.warn({err:e},"zip: stream warning ENOENT")):s(e)}),l.on("error",function(e){s(e)});const c=await Promise.all(n.map(async e=>{const t=i.default.lstatSync(e.from),o=t.isDirectory();return{...e,isDirectory:o,stats:t,size:o?await(0,r.default)(e.from):t.size}})),d=c.reduce((e,r)=>e+r.size,0);return d>1e6*a?(s(new Error([`\n\nYour app is larger than ${a}MB. Your app is ${t.default.bold.red.underline((d/1e6).toFixed(1)+"MB")}.\n`,"You may be including unnecessary files in your app(see the `appPath` and `appFiles` options).","If not, this limit can be raised by setting the `uploadSizeLimit` option.","Learn more at https://www.npmjs.com/package/@todesktop/cli#uploadsizelimit---optional-number"].join("\n"))),l):(c.forEach(({from:e,isDirectory:r,stats:i,to:t})=>{r?l.directory(e,t):l.file(e,{name:t,mode:i.mode})}),l.finalize(),l.on("progress",e=>u({...e,percentage:e.entries.processed/e.entries.total*100})),l)}
|
|
77
79
|
},{"./logger":"XvyO"}],"Y1TB":[function(require,module,exports) {
|
|
78
80
|
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=l(require("fast-glob")),o=p(require("fs")),t=p(require("path")),n=l(require("./generateS3Key")),i=l(require("./logger")),r=l(require("./uploadToS3")),a=l(require("./zip"));function s(e){if("function"!=typeof WeakMap)return null;var o=new WeakMap,t=new WeakMap;return(s=function(e){return e?t:o})(e)}function p(e,o){if(!o&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var t=s(o);if(t&&t.has(e))return t.get(e);var n={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var r in e)if("default"!==r&&Object.prototype.hasOwnProperty.call(e,r)){var a=i?Object.getOwnPropertyDescriptor(e,r):null;a&&(a.get||a.set)?Object.defineProperty(n,r,a):n[r]=e[r]}return n.default=e,t&&t.set(e,n),n}function l(e){return e&&e.__esModule?e:{default:e}}const c=async(n,i,r)=>{const a=["!node_modules","!**/node_modules","!.git","!**/.git"];n&&n.length?a.push(...n,t.join(i,"package.json"),t.join(i,"package-lock.json"),t.join(i,"yarn.lock"),t.join(i,"pnpm-lock.yaml"),t.join(i,"shrinkwrap.yaml")):a.push("**");for(const e of["todesktop:beforeInstall","todesktop:afterPack"])r.scripts&&r.scripts[e]&&a.push(t.join(i,r.scripts[e]));const s=a.map(e=>{return(t.isAbsolute(e)?t.relative(i,e):e).replace(/\\/g,"/").replace(/\/+$/,"")}).filter(e=>!e.startsWith("..")&&!e.startsWith("!.."));let p=await(0,e.default)(s,{absolute:!0,cwd:i,dot:!0,followSymbolicLinks:!1,onlyDirectories:!1,onlyFiles:!0,globstar:!0,unique:!0});if("win32"===process.platform&&(p=p.map(e=>e.replace(/\//g,t.sep))),!p||!p.length)throw new Error("No files found to upload");if(!p.filter(e=>e.endsWith(".js")).length)throw new Error(`No .js files found to upload (${p[0]}). There's likely an issue with the appFiles option. Learn more at https://www.npmjs.com/package/@todesktop/cli#appfiles----optional-array-of-glob-patterns. If this is not the case, please contact us.`);{let e=i;if(r.main&&(e=t.join(e,r.main)),o.statSync(e).isDirectory()&&(e=t.join(e,"index.js")),!p.includes(e))throw new Error(`The "main" file specified in your package.json (${r.main?t.relative(i,e):"defaults to index.js"}) is not set to be uploaded to our servers. This is likely due to how you have configured the \`appFiles\` option. Learn more at https://www.npmjs.com/package/@todesktop/cli#appfiles----optional-array-of-glob-patterns. If this is not the case, please contact us.`)}return p.map(e=>({from:e,to:t.join("app",t.relative(i,e))}))};var u=async({appId:e,appPkgJson:o,buildId:s,config:p,onProgress:l})=>{i.default.debug({appId:e,appPkgJson:o,buildId:s,config:p,onProgress:l},"uploadApplicationSource");let u=0;const f=[...await c(p.appFiles,p.appPath,o),...(p.extraContentFiles||[]).map(({from:e,to:o="."})=>({from:e,to:t.join("extraContentFiles",o,t.basename(e))})),...(p.extraResources||[]).map(({from:e,to:o="."})=>({from:e,to:t.join("extraResources",o,t.basename(e))})),{from:p.icon,to:t.join("icons","appIcon"+t.extname(p.icon))}];return p.linux&&p.linux.icon&&f.push({from:p.linux.icon,to:t.join("icons","appIcon-linux"+t.extname(p.linux.icon))}),p.mac&&(p.mac.entitlements&&f.push({from:p.mac.entitlements,to:t.join("other","mac","entitlements.mac.plist")}),p.mac.icon&&f.push({from:p.mac.icon,to:t.join("icons","appIcon-mac"+t.extname(p.mac.icon))})),p.dmg&&p.dmg.background&&f.push({from:p.dmg.background,to:t.join("other","mac","dmg-background.tiff")}),p.windows&&p.windows.icon&&f.push({from:p.windows.icon,to:t.join("icons","appIcon-windows"+t.extname(p.windows.icon))}),(0,r.default)({bucket:p.bucket||void 0,inputStream:await(0,a.default)({files:f,fileSizeLimit:p.uploadSizeLimit,onError:e=>{throw e},onProgress({fs:e}){u=e.totalBytes}}),key:(0,n.default)({appId:e,buildId:s,filenameSuffix:`${o.name}.zip`}),onProgress({loaded:e,total:o}){l(e/o*100,e)}})};exports.default=u;
|
|
79
|
-
},{"./generateS3Key":"uJzg","./logger":"XvyO","./uploadToS3":"yJCU","./zip":"AV41"}],"
|
|
80
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=
|
|
81
|
-
},{"./
|
|
81
|
+
},{"./generateS3Key":"uJzg","./logger":"XvyO","./uploadToS3":"yJCU","./zip":"AV41"}],"QgqX":[function(require,module,exports) {
|
|
82
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=a(require("lodash.merge")),t=a(require("path")),r=a(require("./readJson"));function a(e){return e&&e.__esModule?e:{default:e}}function u({config:a}){const u=a.packageJson||{},o=u.extends||"package.json",n=(0,r.default)(t.default.join(a.appPath,o));return(0,e.default)({},n,u)}var o=u;exports.default=o;
|
|
83
|
+
},{"./readJson":"GCJw"}],"XP8q":[function(require,module,exports) {
|
|
84
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=n(require("pretty-bytes")),r=require("./firestore"),a=n(require("./getVersionControlInfo")),i=n(require("./projectConfig/getProjectConfig")),o=n(require("./logForCI")),t=n(require("./postToFirebaseFunction")),s=n(require("./subscribeToBuild")),p=n(require("./uploadApplicationSource")),d=n(require("./getPackageJson"));function n(e){return e&&e.__esModule?e:{default:e}}var u=async({onEvent:n,shouldCodeSign:u=!0,configPath:l})=>{(0,o.default)("Getting application information...");const g=(0,r.currentUser)().uid,{config:c,unprocessedConfig:f}=(0,i.default)(l),b=c.id,P=(0,d.default)({config:c});let h,m;n("progress",{appId:b,appPkg:P,preparationProgress:.02}),(0,o.default)("Preparing...");try{const e=await(0,t.default)("prepareNewBuild",{appPkgName:P.name,appPkgProductName:P.productName,appVersion:P.version,id:c.id,projectConfig:f,shouldCodeSign:!1!==u,shouldRelease:!1,userId:g,versionControlInfo:await(0,a.default)(c.appPath)});h=e.appData.meta.currentBuildProgress.id;const r=await(0,s.default)({appId:b,buildId:h,onDataReceived:e=>n("progress",{build:e}),userId:e.userId});n("firebase-subscribed",{firebaseUnsubscribe:r})}catch(I){throw I.message=`Failed while preparing new build; ${I.message}`,I}n("progress",{preparationProgress:.05,preparationStageLabel:"Uploading"}),(0,o.default)("Uploading...");try{m=await(0,p.default)({appId:b,appPkgJson:P,buildId:h,config:c,onProgress(r,a){const i={preparationProgress:.05+r/100*.95};a&&(i.preparationUploadedSize=(0,e.default)(a)),n("progress",i)}})}catch(I){throw I.message=`Failed while uploading application source; ${I.message}`,I}n("progress",{isPreparationComplete:!0}),(0,o.default)("Kicking off build...");try{await(0,t.default)("kickOffBuild",{appId:b,appPkgName:P.name,appVersion:P.version,buildId:h,userId:g,sourceArchiveDetails:m})}catch(I){throw I.message=`Failed while kicking off build; ${I.message}`,I}};exports.default=u;
|
|
85
|
+
},{"./firestore":"gzUX","./getVersionControlInfo":"PvCN","./projectConfig/getProjectConfig":"Sx1d","./logForCI":"Sre8","./postToFirebaseFunction":"I8pf","./subscribeToBuild":"ohCc","./uploadApplicationSource":"Y1TB","./getPackageJson":"QgqX"}],"ONhe":[function(require,module,exports) {
|
|
82
86
|
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=e=>{const t=["linux","mac","windows"].every(t=>e[t].shouldSkip||"succeeded"===e[t].status||"failed"===e[t].status&&2===e[t].numberOfAttemptedBuilds),s=["linux","mac","windows"].some(t=>"failed"===e[t].status);return t&&s};exports.default=e;
|
|
83
87
|
},{}],"PaIV":[function(require,module,exports) {
|
|
84
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=g(require("react")),r=f(require("prop-types")),t=f(require("./BuildProgress")),a=f(require("./ErrorDisplay")),i=f(require("./Preparation")),u=f(require("./InitialLoadingState")),l=f(require("./MainLayout")),n=f(require("../utilities/logForCI")),o=f(require("../utilities/logger")),d=f(require("../utilities/runBuild")),s=f(require("../utilities/shouldExitOnBuildFailure")),p=f(require("../utilities/useExit"));function f(e){return e&&e.__esModule?e:{default:e}}function c(e){if("function"!=typeof WeakMap)return null;var r=new WeakMap,t=new WeakMap;return(c=function(e){return e?t:r})(e)}function g(e,r){if(!r&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var t=c(r);if(t&&t.has(e))return t.get(e);var a={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&Object.prototype.hasOwnProperty.call(e,u)){var l=i?Object.getOwnPropertyDescriptor(e,u):null;l&&(l.get||l.set)?Object.defineProperty(a,u,l):a[u]=e[u]}return a.default=e,t&&t.set(e,a),a}const m={appId:null,appPkg:null,build:null,error:null,hasBuildEverFailed:!1,isPreparationComplete:!1,preparationStageLabel:"Preparing",preparationProgress:0,preparationUploadedSize:null},b=({commandUsed:r,shouldCodeSign:f=!0})=>{const
|
|
88
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=g(require("react")),r=f(require("prop-types")),t=f(require("./BuildProgress")),a=f(require("./ErrorDisplay")),i=f(require("./Preparation")),u=f(require("./InitialLoadingState")),l=f(require("./MainLayout")),n=f(require("../utilities/logForCI")),o=f(require("../utilities/logger")),d=f(require("../utilities/runBuild")),s=f(require("../utilities/shouldExitOnBuildFailure")),p=f(require("../utilities/useExit"));function f(e){return e&&e.__esModule?e:{default:e}}function c(e){if("function"!=typeof WeakMap)return null;var r=new WeakMap,t=new WeakMap;return(c=function(e){return e?t:r})(e)}function g(e,r){if(!r&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var t=c(r);if(t&&t.has(e))return t.get(e);var a={},i=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&Object.prototype.hasOwnProperty.call(e,u)){var l=i?Object.getOwnPropertyDescriptor(e,u):null;l&&(l.get||l.set)?Object.defineProperty(a,u,l):a[u]=e[u]}return a.default=e,t&&t.set(e,a),a}const m={appId:null,appPkg:null,build:null,error:null,hasBuildEverFailed:!1,isPreparationComplete:!1,preparationStageLabel:"Preparing",preparationProgress:0,preparationUploadedSize:null},b=({commandUsed:r,shouldCodeSign:f=!0,configPath:c})=>{const g=(0,p.default)(),[{appId:b,appPkg:P,build:v,error:E,hasBuildEverFailed:h,isPreparationComplete:y,preparationStageLabel:q,preparationProgress:B,preparationUploadedSize:O},S]=(0,e.useState)(m),U=e=>{const r=e.response?e.response.data:e;(0,n.default)(r),S(e=>({...e,error:r}))};if((0,e.useEffect)(()=>{let e;return(0,d.default)({commandUsed:r,onEvent:(r,t)=>{o.default.debug({eventName:r,data:t},"Build component: runBuild.onEvent"),"firebase-subscribed"===r?e=t.firebaseUnsubscribe:"progress"===r&&S(e=>({...e,...t}))},shouldCodeSign:f,configPath:c}).catch(U),()=>{e&&e()}},[r,f,c]),(0,e.useEffect)(()=>{h&&(0,s.default)(v)&&setTimeout(()=>g(new Error("Build has failed"),10))},[v,g,h]),E)return e.default.createElement(a.default,{commandUsed:r,error:E});if(!P)return e.default.createElement(u.default,null);return e.default.createElement(l.default,{appId:b,appName:v&&v.appName||P.name,appVersion:v&&v.appVersion||P.version,build:v,commandUsed:r,hasBuildEverFailed:h},y?e.default.createElement(t.default,{build:v,onBuildFailure:()=>{h||S(e=>({...e,hasBuildEverFailed:!0}))}}):e.default.createElement(i.default,{progressPercentage:B,stageLabel:q,uploadedSize:O}))};b.propTypes={commandUsed:r.default.string.isRequired,shouldCodeSign:r.default.bool,configPath:r.default.string};var P=b;exports.default=P;
|
|
85
89
|
},{"./BuildProgress":"odFL","./ErrorDisplay":"f0Jz","./Preparation":"DLJk","./InitialLoadingState":"OHrJ","./MainLayout":"T5Az","../utilities/logForCI":"Sre8","../utilities/logger":"XvyO","../utilities/runBuild":"XP8q","../utilities/shouldExitOnBuildFailure":"ONhe","../utilities/useExit":"QLfx"}],"cb6D":[function(require,module,exports) {
|
|
86
90
|
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=require("react"),r=({cons:r=console,proc:t=process}={})=>{try{(0,e.useState)(null)}catch(o){r.error(o),t.exit(1)}};exports.default=r;
|
|
87
91
|
},{}],"iiO0":[function(require,module,exports) {
|
|
@@ -97,15 +101,17 @@ parcelRequire=function(e,r,t,n){var i,o="function"==typeof parcelRequire&&parcel
|
|
|
97
101
|
},{}],"oPeF":[function(require,module,exports) {
|
|
98
102
|
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=u(require("@babel/runtime/helpers/extends")),r=require("ink"),t=u(require("prop-types")),l=u(require("react"));function u(e){return e&&e.__esModule?e:{default:e}}const d=({isSelected:t,label:u,...d})=>l.default.createElement(r.Text,(0,e.default)({bold:t,color:t?void 0:"gray"},d),u);d.propTypes={isSelected:t.default.bool.isRequired,label:t.default.string.isRequired};var i=d;exports.default=i;
|
|
99
103
|
},{}],"EqTV":[function(require,module,exports) {
|
|
100
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=
|
|
101
|
-
},{"./firestore":"gzUX","./logger":"XvyO"}],"
|
|
102
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=
|
|
103
|
-
},{"./
|
|
104
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=require("ink"),t=
|
|
105
|
-
},{"./
|
|
104
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=r(require("./firestore")),t=r(require("./logger"));function r(e){return e&&e.__esModule?e:{default:e}}var d=async({appId:r,userId:d})=>{t.default.debug({appId:r},"getLatestBuildId");const i=e.default.doc(`users/${d}/applications/${r}`);if(!(await i.get()).exists)throw new Error(`Application with ID of ${r} doesn't exist.`);const o=await i.collection("builds").orderBy("createdAt","desc").limit(1).get();return o.empty?null:o.docs[0].id};exports.default=d;
|
|
105
|
+
},{"./firestore":"gzUX","./logger":"XvyO"}],"thz1":[function(require,module,exports) {
|
|
106
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=r(require("./firestore"));function t(e){if("function"!=typeof WeakMap)return null;var r=new WeakMap,a=new WeakMap;return(t=function(e){return e?a:r})(e)}function r(e,r){if(!r&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var a=t(r);if(a&&a.has(e))return a.get(e);var n={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&Object.prototype.hasOwnProperty.call(e,u)){var i=o?Object.getOwnPropertyDescriptor(e,u):null;i&&(i.get||i.set)?Object.defineProperty(n,u,i):n[u]=e[u]}return n.default=e,a&&a.set(e,n),n}const a=e=>e.get().then(e=>{const t=[];return e.forEach(e=>t.push(e.data())),t}),n=t=>e.default.collection(`users/${t}/acceptedUsers`),o=async t=>{const{uid:r,email:o}=(0,e.currentUser)(),u={id:r,label:o},i=[u,...(await a(n(r))).map(e=>({id:e.id,label:e.email}))];for(const a of i)try{if((await e.default.doc(`users/${a.id}/applications/${t}`).get()).exists)return a}catch(c){}return u};var u=o;exports.default=u;
|
|
107
|
+
},{"./firestore":"gzUX"}],"PlpY":[function(require,module,exports) {
|
|
108
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=require("ink"),t=b(require("prop-types")),r=h(require("react")),i=b(require("./BuildProgress")),u=b(require("./ErrorDisplay")),n=b(require("./MainLayout")),a=b(require("../utilities/getLatestBuildId")),d=b(require("../utilities/projectConfig/getProjectConfig")),o=b(require("../utilities/logForCI")),l=b(require("../utilities/shouldExitOnBuildFailure")),s=b(require("../utilities/subscribeToBuild")),f=b(require("../utilities/useExit")),c=b(require("../utilities/findAppUserId"));function p(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,r=new WeakMap;return(p=function(e){return e?r:t})(e)}function h(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var r=p(t);if(r&&r.has(e))return r.get(e);var i={},u=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var n in e)if("default"!==n&&Object.prototype.hasOwnProperty.call(e,n)){var a=u?Object.getOwnPropertyDescriptor(e,n):null;a&&(a.get||a.set)?Object.defineProperty(i,n,a):i[n]=e[n]}return i.default=e,r&&r.set(e,i),i}function b(e){return e&&e.__esModule?e:{default:e}}const y=({commandUsed:t,id:p})=>{const h=(0,f.default)(),[{appId:b,arbitraryMessageComponent:y,build:E,error:g,hasBuildEverFailed:m,isLoading:w},v]=(0,r.useState)({appId:null,arbitraryMessageComponent:null,build:null,error:null,hasBuildEverFailed:!1,isLoading:!0}),q=e=>{const t=e.response?e.response.data:e;(0,o.default)(t),v(e=>({...e,error:t}))};if((0,r.useEffect)(()=>{let t;return async function(){let i;try{i=(0,d.default)().config}catch(o){return void v(e=>({...e,error:o}))}const{id:u}=await(0,c.default)(i.id),n=e=>{(0,s.default)({appId:i.id,buildId:e,onDataReceived:t=>{t||q(new Error(`No such build exists (${e}). Please contact us if this is an error`)),v(e=>({...e,appId:i.id,build:t,isLoading:!1}))},userId:u}).then(e=>{t=e}).catch(q)};p?n(p):(0,a.default)({appId:i.id,userId:u}).catch(q).then(t=>{if(t)return n(t);v(t=>({...t,arbitraryMessageComponent:r.default.createElement(e.Text,null,"There are no builds yet")}))})}(),()=>{t&&t()}},[p]),(0,r.useEffect)(()=>{m&&(0,l.default)(E)&&setTimeout(()=>h(new Error("Build has failed")),10)},[E,h,m]),(0,r.useEffect)(()=>{y&&setTimeout(()=>h(new Error("Validation failed")),10)},[y,h]),g)return r.default.createElement(u.default,{commandUsed:t,error:g});if(y)return y;if(w)return r.default.createElement(e.Text,null,"Loading...");return r.default.createElement(n.default,{appId:b,appName:E.appName,appVersion:E.appVersion,build:E,commandUsed:t,hasBuildEverFailed:m},r.default.createElement(i.default,{build:E,onBuildFailure:()=>{m||v(e=>({...e,hasBuildEverFailed:!0}))}}))};y.propTypes={id:(e,t,r)=>{if(1!==[e.id,e.shouldViewLatest].filter(Boolean).length)return new Error(`Exactly one of 'id' and 'shouldViewLatest' must be specified in '${r}'`);const i=typeof e.id;return["string","undefined"].includes(i)?void 0:new Error(`'id' is a '${i}', not a string, in '${r}'.`)},commandUsed:t.default.string.isRequired,shouldViewLatest:(e,t,r)=>{if(1!==[e.id,e.shouldViewLatest].filter(Boolean).length)return new Error(`Exactly one of 'id' and 'shouldViewLatest' must be specified in '${r}'`);const i=typeof e.shouldViewLatest;return["boolean","undefined"].includes(i)?void 0:new Error(`'shouldViewLatest' is a '${i}', not a boolean, in '${r}'.`)}};var E=y;exports.default=E;
|
|
109
|
+
},{"./BuildProgress":"odFL","./ErrorDisplay":"f0Jz","./MainLayout":"T5Az","../utilities/getLatestBuildId":"EqTV","../utilities/projectConfig/getProjectConfig":"Sx1d","../utilities/logForCI":"Sre8","../utilities/shouldExitOnBuildFailure":"ONhe","../utilities/subscribeToBuild":"ohCc","../utilities/useExit":"QLfx","../utilities/findAppUserId":"thz1"}],"mzsi":[function(require,module,exports) {
|
|
110
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=require("ink"),t=y(require("ink-select-input")),r=y(require("prop-types")),i=v(require("react")),n=y(require("./CancelBuild")),u=y(require("./CustomSelectInputIndicator")),a=y(require("./CustomSelectInputItem")),l=y(require("./ErrorDisplay")),o=y(require("./ViewBuild")),d=require("../utilities/buildStatus"),s=y(require("../utilities/firestore")),c=y(require("../utilities/projectConfig/getProjectConfig")),f=y(require("../utilities/logger")),p=y(require("../utilities/useInput")),m=y(require("../utilities/useExit")),g=y(require("is-ci")),b=y(require("../utilities/findAppUserId"));function h(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,r=new WeakMap;return(h=function(e){return e?r:t})(e)}function v(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var r=h(t);if(r&&r.has(e))return r.get(e);var i={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var u in e)if("default"!==u&&Object.prototype.hasOwnProperty.call(e,u)){var a=n?Object.getOwnPropertyDescriptor(e,u):null;a&&(a.get||a.set)?Object.defineProperty(i,u,a):i[u]=e[u]}return i.default=e,r&&r.set(e,i),i}function y(e){return e&&e.__esModule?e:{default:e}}const q=({children:r,commandUsed:h,configPath:v})=>{const{isRawModeSupported:y}=(0,e.useStdin)(),q=(0,p.default)(),E=(0,m.default)(),[{appId:w,builds:C,error:B,isLoading:O,itemChosen:j},x]=(0,i.useState)({appId:null,builds:[],error:null,isLoading:!0,itemChosen:null});if((0,i.useEffect)(()=>{O&&(async()=>{try{const t=(0,c.default)().config.id,{id:r}=await(0,b.default)(t),i=await s.default.doc(`users/${r}/applications/${t}`).collection("builds").orderBy("createdAt","desc").limit(10).get(),n={appId:t,isLoading:!1,builds:[]};if(!i.empty){const e=i.docs[0].data(),t=(0,d.isBuildRunning)(e)&&"preparation"!==e.status;f.default.debug({isRunning:t},"OngoingBuildGuard component: got latest build"),n.builds=i.docs.map(e=>e.data()).filter(e=>!(!(0,d.isBuildRunning)(e)||"preparation"===e.status))}x(e=>({...e,...n}))}catch(e){x(t=>({...t,error:e}))}})()},[C,j,O,y]),y&&q(()=>{}),B)return i.default.createElement(l.default,{commandUsed:h,error:B});if(O)return i.default.createElement(e.Text,null,"...");if(j){f.default.debug({itemChosen:j},"OngoingBuildGuard component: item chosen");const e=C.find(Boolean);if("view"===j.value)return i.default.createElement(o.default,{commandUsed:h,id:e.id});if("cancel"===j.value)return i.default.createElement(n.default,{appId:w,commandUsed:h,id:e.id},r);if("concurrent"===j.value)return i.default.createElement(i.Fragment,null,r);setTimeout(E,10)}if(C.length&&!1===g.default&&y){const r=C.find(Boolean),n=C.length>1,l=[{label:`View ${n?"latest":"it"}`,value:"view"}];C.some(e=>(0,d.isBuildCancellable)(e))&&(l.push({label:`Cancel ${n?"latest":"it"} and start a new build`,value:"cancel"}),l.push({label:"Start a concurrent build",value:"concurrent"})),l.push({label:"Exit",value:"exit"});const o=e=>x(t=>({...t,itemChosen:e}));return i.default.createElement(i.Fragment,null,i.default.createElement(e.Box,{marginBottom:1},i.default.createElement(e.Text,{bold:!0},n?"There are ongoing builds ":"There is an ongoing build "),i.default.createElement(e.Text,null,"(",r.appName,r.appVersion?` v${r.appVersion}`:"",")")),i.default.createElement(t.default,{indicatorComponent:u.default,itemComponent:a.default,items:l,onSelect:o}))}return i.default.createElement(i.Fragment,null,r)};q.propTypes={commandUsed:r.default.string.isRequired,children:r.default.oneOfType([r.default.array,r.default.object]),configPath:r.default.string};var E=q;exports.default=E;
|
|
111
|
+
},{"./CancelBuild":"J4or","./CustomSelectInputIndicator":"OMIR","./CustomSelectInputItem":"oPeF","./ErrorDisplay":"f0Jz","./ViewBuild":"PlpY","../utilities/buildStatus":"in6t","../utilities/firestore":"gzUX","../utilities/projectConfig/getProjectConfig":"Sx1d","../utilities/logger":"XvyO","../utilities/useInput":"CLRu","../utilities/useExit":"QLfx","../utilities/findAppUserId":"thz1"}],"AYMC":[function(require,module,exports) {
|
|
106
112
|
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=i(require("chalk")),t=i(require("is-installed-globally")),o=i(require("latest-version")),r=i(require("pkg-up")),s=i(require("semver"));function i(e){return e&&e.__esModule?e:{default:e}}var l=()=>{if(process.env.AVA_PATH)return;const i=require(r.default.sync({cwd:__dirname}));(0,o.default)(i.name).then(o=>{if(s.default.gt(o,i.version)){const r=e.default.greenBright(`npm install ${t.default?"--location=global":"--save-dev"} @todesktop/cli`);console.log(`Your version of @todesktop/cli is out of date.\nRun ${r} to update to v${o}.`),s.default.satisfies(o,`^${i.version}`)||(console.log("CLI is exiting because it is out out of date."),process.exit(1))}})};exports.default=l;
|
|
107
113
|
},{}],"EHrm":[function(require,module,exports) {
|
|
108
|
-
module.exports={private:!1,publishConfig:{access:"public"},name:"@todesktop/cli",version:"1.
|
|
114
|
+
module.exports={private:!1,publishConfig:{access:"public"},name:"@todesktop/cli",version:"1.3.0",license:"MIT",author:"Dave Jeffery <dave@todesktop.com> (http://www.todesktop.com/)",homepage:"https://todesktop.com/cli",bugs:{email:"dave@todesktop.com"},bin:{todesktop:"./build/cli.js"},engines:{node:">=12"},scripts:{dev:"cp-cli dev.env .env && pastel dev","dev:prod":"cp-cli prod.env .env && pastel dev",build:"cross-env NODE_ENV=production pastel build && cp-cli prod.env .env && cp node_modules/pastel/boot.js build/boot.js && sed -i'.bak' 's@pastel\\/boot@.\\/boot@g' build/cli.js","build:dev":"cross-env NODE_ENV=development pastel build && cp-cli prod.env .env && cp node_modules/pastel/boot.js build/boot.js && sed -i'.bak' 's@pastel\\/boot@.\\/boot@g' build/cli.js",lint:"eslint .","lint--fix":"eslint . --fix",release:"npm run build && npx np --tag=latest","release-beta":"npm run build && npx np --any-branch --no-tests --tag=beta",test:"npm run build && ava","test--watch":"npm test -- --watch"},files:["build","docs",".env","LICENSE","README.md"],dependencies:{"@babel/runtime":"^7.18.9","@sentry/node":"^5.27.2",ajv:"^6.12.6","analytics-node":"^4.0.1",archiver:"^5.2.0",axios:"^0.21.1","better-ajv-errors":"^1.2.0",blacklist:"^1.1.4",bunyan:"^1.8.14","camelcase-keys":"^5.2.0",chalk:"^4.1.0",conf:"^7.1.2","date-fns":"^2.28.0",decamelize:"^1.2.0",del:"^6.0.0",dotenv:"^8.2.0",du:"^1.0.0","email-regex":"^4.0.0","fast-glob":"^3.2.4","final-form":"^4.20.1","find-up":"^5.0.0",firebase:"^7.24.0","git-rev-sync":"^3.0.2",ink:"^3.2.0","ink-gradient":"^2.0.0","ink-link":"^2.0.0","ink-select-input":"^4.2.1","ink-text-input":"^4.0.1","is-ci":"^3.0.1","is-installed-globally":"^0.3.2","latest-version":"^5.1.0","lodash.merge":"^4.6.2","lodash.throttle":"^4.1.1","parse-author":"^2.0.0","pkg-up":"^3.1.0","pretty-bytes":"^5.4.1","prop-types":"^15.7.2",react:"^17.0.2","react-final-form":"^6.5.1",semver:"^7.3.2","stream-to-array":"^2.3.0",superagent:"^7.1.3",uuid:"^8.3.1","xdg-basedir":"^4.0.0",yargs:"^15.4.1"},devDependencies:{"@ava/babel":"^1.0.1","@babel/core":"^7.12.3","@babel/plugin-transform-runtime":"^7.12.1","@babel/preset-env":"^7.11.5","@babel/register":"^7.12.1","@types/bunyan":"^1.8.6",ava:"^4.3.1","babel-preset-es2015":"^6.24.1","cp-cli":"^2.0.0","cross-env":"^7.0.2",eslint:"^7.6.0","eslint-config-prettier":"^6.11.0","eslint-config-standard":"^14.1.1","eslint-plugin-import":"^2.22.1","eslint-plugin-node":"^11.1.0","eslint-plugin-prettier":"^3.1.4","eslint-plugin-promise":"^4.2.1","eslint-plugin-react":"^7.21.4","eslint-plugin-react-hooks":"^4.2.0","eslint-plugin-standard":"^4.0.1",execa:"^4.0.3","extract-zip":"^2.0.1","fs-extra":"^9.0.1",husky:"^4.3.0","lint-staged":"^10.2.11",pastel:"^1.1.1",prettier:"^2.1.2",proxyquire:"^2.1.3",sinon:"^9.0.3"},ava:{files:["test/**/*.js","!test/fixtures/**/*","!test/utilities/**/*"],require:["@babel/register"],timeout:"10m"},"lint-staged":{"**/*.js":["eslint . --fix","git add"]},husky:{hooks:{"pre-commit":"lint-staged"}},overrides:{pastel:{"parcel-bundler":{deasync:"0.1.27"}}},resolutions:{"pastel/parcel-bundler/deasync":"0.1.24",ink:"3.2.0",react:"17.0.2"},packageExtensions:{"ink-progress-bar@*":{dependencies:{react:"*",ink:"*"}}}};
|
|
109
115
|
},{}],"SYaU":[function(require,module,exports) {
|
|
110
116
|
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=c(require("@sentry/node")),t=u(require("os")),r=u(require("../../package.json")),n=require("../utilities/configStore"),o=u(require("../utilities/projectConfig/getProjectConfig")),a=u(require("path")),i=u(require("./getEnvironmentVariables"));function u(e){return e&&e.__esModule?e:{default:e}}function s(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,r=new WeakMap;return(s=function(e){return e?r:t})(e)}function c(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var r=s(t);if(r&&r.has(e))return r.get(e);var n={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in e)if("default"!==a&&Object.prototype.hasOwnProperty.call(e,a)){var i=o?Object.getOwnPropertyDescriptor(e,a):null;i&&(i.get||i.set)?Object.defineProperty(n,a,i):n[a]=e[a]}return n.default=e,r&&r.set(e,n),n}var f=()=>{const{TODESKTOP_CLI_SENTRY_DSN:a}=(0,i.default)();a&&(e.init({dsn:a}),e.configureScope(e=>{try{e.setUser({email:(0,n.getAuthConfig)().email})}catch(a){}try{e.setContext("os",{name:t.default.platform(),version:t.default.release()})}catch(a){}try{e.setContext("runtime",{name:"Node.js",version:process.version})}catch(a){}try{e.setContext("app",{app_name:r.default.name,app_version:r.default.version})}catch(a){}try{const t=(0,o.default)();e.setExtra("config",t)}catch(a){}}))};exports.default=f;
|
|
111
117
|
},{"../../package.json":"EHrm","../utilities/configStore":"ffKF","../utilities/projectConfig/getProjectConfig":"Sx1d","./getEnvironmentVariables":"gwcX"}],"rPNZ":[function(require,module,exports) {
|
|
@@ -113,6 +119,6 @@ module.exports={private:!1,publishConfig:{access:"public"},name:"@todesktop/cli"
|
|
|
113
119
|
},{"./exitIfCLIOutOfDate":"AYMC","./initSentry":"SYaU"}],"CV1E":[function(require,module,exports) {
|
|
114
120
|
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.useAnalyticsCommand=void 0;var e=require("react"),t=require("./firestore"),i=require("./analytics"),r=s(require("../utilities/logger")),a=s(require("../utilities/projectConfig/getProjectConfig"));function s(e){return e&&e.__esModule?e:{default:e}}const o=(s,o={},u={})=>{const[n,c]=(0,e.useState)(!1);r.default.info({command:s,flags:o,properties:u},"useAnalyticsCommand");try{o.projectPath&&(u={...u,...(0,a.default)()})}catch(l){}return(0,e.useEffect)(()=>{const e=(0,t.onUserAuth)(async t=>{t.uid&&(0,i.identify)(t.uid,{email:t.email,displayName:t.displayName},()=>{(0,i.track)(i.ANALYTICS_EVENT.CLI_COMMAND,{...u,flags:o,command:s},()=>c(!0)),e&&e()})});setTimeout(()=>c(!0),5e3)},[]),{hasAttemptedTracking:n}};exports.useAnalyticsCommand=o;
|
|
115
121
|
},{"./firestore":"gzUX","./analytics":"ALju","../utilities/logger":"XvyO","../utilities/projectConfig/getProjectConfig":"Sx1d"}],"Wc0b":[function(require,module,exports) {
|
|
116
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=a(require("prop-types")),t=a(require("react")),
|
|
122
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=a(require("prop-types")),t=a(require("react")),i=a(require("../lib/components/Build")),l=a(require("../lib/utilities/checkIfReactIsUsable")),u=a(require("../lib/components/LoginHOC")),o=a(require("../lib/components/ErrorBoundary")),r=a(require("../lib/components/OngoingBuildGuard")),n=a(require("../lib/utilities/onCommand")),d=require("../lib/utilities/useAnalytics");function a(e){return e&&e.__esModule?e:{default:e}}(0,n.default)();const s=({codeSign:e=!0,config:n=null})=>{(0,l.default)(),(0,d.useAnalyticsCommand)("build",{codeSign:e,config:n});return t.default.createElement(o.default,null,t.default.createElement(u.default,null,t.default.createElement(r.default,{configPath:n,commandUsed:"todesktop build"},t.default.createElement(i.default,{commandUsed:"todesktop build",shouldCodeSign:e,configPath:n}))))};s.propTypes={codeSign:e.default.bool,config:e.default.string};var c=s;exports.default=c;
|
|
117
123
|
},{"../lib/components/Build":"PaIV","../lib/utilities/checkIfReactIsUsable":"cb6D","../lib/components/LoginHOC":"nLy3","../lib/components/ErrorBoundary":"XM8F","../lib/components/OngoingBuildGuard":"mzsi","../lib/utilities/onCommand":"rPNZ","../lib/utilities/useAnalytics":"CV1E"}]},{},["Wc0b"], null)
|
|
118
124
|
//# sourceMappingURL=/build.js.map
|