diff --git a/.github/workflows/prepare.yml b/.github/workflows/prepare.yml index 8557f31..a5fe585 100644 --- a/.github/workflows/prepare.yml +++ b/.github/workflows/prepare.yml @@ -100,4 +100,5 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} NODE_OPTIONS: --max-old-space-size=8192 + DEBUG: electron-forge:* run: corepack yarn electron-forge publish diff --git a/.gitignore b/.gitignore index a33433a..d31186d 100644 --- a/.gitignore +++ b/.gitignore @@ -39,3 +39,4 @@ dist packages/*/lib packages/*/node_modules packages/*/.swc +.DS_Store diff --git a/config/webpack.main.config.ts b/config/webpack.main.config.ts index 3493aed..a4c3262 100644 --- a/config/webpack.main.config.ts +++ b/config/webpack.main.config.ts @@ -29,9 +29,11 @@ export const mainConfig: Configuration = { plugins: [new TsconfigPathsPlugins()], }, optimization: { + minimize: true, + moduleIds: 'named', minimizer: [ new TerserPlugin({ - parallel: true, + minify: TerserPlugin.swcMinify, }), ], }, diff --git a/forge.config.ts b/forge.config.ts index 6760217..5051674 100644 --- a/forge.config.ts +++ b/forge.config.ts @@ -15,18 +15,19 @@ import { sourceRendererPath, assetsPath, } from './config/webpack.paths'; +import { version } from './package.json'; const config: ForgeConfig = { packagerConfig: { asar: false, executableName: 'electrocrud', - name: 'Electro CRUD', + name: 'ElectroCRUD', appBundleId: 'com.garrylachman.electrocrud', icon: path.resolve(assetsPath, 'icon'), appCategoryType: 'public.app-category.developer-tools', win32metadata: { - CompanyName: 'Electro CRUD', - OriginalFilename: 'Electro CRUD', + CompanyName: 'ElectroCRUD', + OriginalFilename: 'ElectroCRUD', }, }, rebuildConfig: {}, @@ -34,6 +35,10 @@ const config: ForgeConfig = { new MakerSquirrel( { authors: 'Garry Lachman', + name: 'electrocrud', + exe: 'electrocrud.exe', + noMsi: true, + setupExe: `electrocrud-${version}-win32-setup.exe`, }, ['win32'] ), diff --git a/package.json b/package.json index ce9c43d..af8b80e 100644 --- a/package.json +++ b/package.json @@ -180,6 +180,7 @@ "@commitlint/config-conventional": "^17.4.4", "@electron-forge/cli": "^6.1.1", "@electron-forge/maker-deb": "^6.1.1", + "@electron-forge/maker-dmg": "^6.1.1", "@electron-forge/maker-flatpak": "^6.1.1", "@electron-forge/maker-rpm": "^6.1.1", "@electron-forge/maker-snap": "^6.1.1", diff --git a/yarn.lock b/yarn.lock index 36b2f88..606cf22 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3901,6 +3901,21 @@ __metadata: languageName: node linkType: hard +"@electron-forge/maker-dmg@npm:^6.1.1": + version: 6.1.1 + resolution: "@electron-forge/maker-dmg@npm:6.1.1" + dependencies: + "@electron-forge/maker-base": 6.1.1 + "@electron-forge/shared-types": 6.1.1 + electron-installer-dmg: ^4.0.0 + fs-extra: ^10.0.0 + dependenciesMeta: + electron-installer-dmg: + optional: true + checksum: aec4c37e85fa9bb54cdd7ff2f7a47fcde8a879e6b5e07a32c35ccaf697b0283f73c03a33a8f30f898a0024c352549e63d476873e892d33205367f273e546ed22 + languageName: node + linkType: hard + "@electron-forge/maker-flatpak@npm:^6.1.1": version: 6.1.1 resolution: "@electron-forge/maker-flatpak@npm:6.1.1" @@ -9451,6 +9466,27 @@ __metadata: languageName: node linkType: hard +"appdmg@npm:^0.6.4": + version: 0.6.6 + resolution: "appdmg@npm:0.6.6" + dependencies: + async: ^1.4.2 + ds-store: ^0.1.5 + execa: ^1.0.0 + fs-temp: ^1.0.0 + fs-xattr: ^0.3.0 + image-size: ^0.7.4 + is-my-json-valid: ^2.20.0 + minimist: ^1.1.3 + parse-color: ^1.0.0 + path-exists: ^4.0.0 + repeat-string: ^1.5.4 + bin: + appdmg: bin/appdmg.js + conditions: os=darwin + languageName: node + linkType: hard + "aproba@npm:^1.0.3 || ^2.0.0, aproba@npm:^2.0.0": version: 2.0.0 resolution: "aproba@npm:2.0.0" @@ -9751,6 +9787,13 @@ __metadata: languageName: node linkType: hard +"async@npm:^1.4.2": + version: 1.5.2 + resolution: "async@npm:1.5.2" + checksum: fe5d6214d8f15bd51eee5ae8ec5079b228b86d2d595f47b16369dec2e11b3ff75a567bb5f70d12d79006665fbbb7ee0a7ec0e388524eefd454ecbe651c124ebd + languageName: node + linkType: hard + "async@npm:^3.2.3": version: 3.2.4 resolution: "async@npm:3.2.4" @@ -9972,6 +10015,15 @@ __metadata: languageName: node linkType: hard +"base32-encode@npm:^0.1.0 || ^1.0.0": + version: 1.2.0 + resolution: "base32-encode@npm:1.2.0" + dependencies: + to-data-view: ^1.1.0 + checksum: b8df667599d50b2c9fca206fcab9bf6500d2e980b14da204eb7de5ce978c99e4874e8138d109bd88d5bca1bfb5ae83926bca37b084d2c9842f8acb12b4b839d9 + languageName: node + linkType: hard + "base64-js@npm:^1.3.1, base64-js@npm:^1.5.1": version: 1.5.1 resolution: "base64-js@npm:1.5.1" @@ -10154,6 +10206,15 @@ __metadata: languageName: node linkType: hard +"bplist-creator@npm:~0.0.3": + version: 0.0.8 + resolution: "bplist-creator@npm:0.0.8" + dependencies: + stream-buffers: ~2.2.0 + checksum: 7a98c7fb3c1b505a0667abd0f8c976bc01c4437fbb52cb902076a3aea3523e8d44111e21a4228c4c3b307d1c4a727968ed02bd91daf0aea7efed5081db92fb95 + languageName: node + linkType: hard + "bplist-parser@npm:^0.2.0": version: 0.2.0 resolution: "bplist-parser@npm:0.2.0" @@ -11136,6 +11197,13 @@ __metadata: languageName: node linkType: hard +"color-convert@npm:~0.5.0": + version: 0.5.3 + resolution: "color-convert@npm:0.5.3" + checksum: 1074989a2c216d0171a397b870a0d698ef802ab3f9ece72b35bd92c4d20aeab31f222ea525dd5d3fad175a3f256a750eadd14ab882caed0089efc1cb7ba74086 + languageName: node + linkType: hard + "color-name@npm:1.1.3": version: 1.1.3 resolution: "color-name@npm:1.1.3" @@ -12701,6 +12769,17 @@ __metadata: languageName: node linkType: hard +"ds-store@npm:^0.1.5": + version: 0.1.6 + resolution: "ds-store@npm:0.1.6" + dependencies: + bplist-creator: ~0.0.3 + macos-alias: ~0.2.5 + tn1150: ^0.1.0 + checksum: b574fdd92d8008e6e089ca958a9d186e4cca2b69131004ccc958a06fcea0a1079b6efd0693a74ad7f85b1f5df69edbfb81896eaef1644e1d23c506f9740c0945 + languageName: node + linkType: hard + "duplexer2@npm:~0.1.0": version: 0.1.4 resolution: "duplexer2@npm:0.1.4" @@ -12780,6 +12859,7 @@ __metadata: "@electrocrud/utils": "link:./packages/utils" "@electron-forge/cli": ^6.1.1 "@electron-forge/maker-deb": ^6.1.1 + "@electron-forge/maker-dmg": ^6.1.1 "@electron-forge/maker-flatpak": ^6.1.1 "@electron-forge/maker-rpm": ^6.1.1 "@electron-forge/maker-snap": ^6.1.1 @@ -13061,6 +13141,22 @@ __metadata: languageName: node linkType: hard +"electron-installer-dmg@npm:^4.0.0": + version: 4.0.0 + resolution: "electron-installer-dmg@npm:4.0.0" + dependencies: + appdmg: ^0.6.4 + debug: ^4.3.2 + minimist: ^1.1.1 + dependenciesMeta: + appdmg: + optional: true + bin: + electron-installer-dmg: bin/electron-installer-dmg.js + checksum: 59006b5a560bf08096d970a44b429c218cb3b0c99144d8f276a354af66312c6cb215b177e4411a833013754a0033c28b2c2dadf5cd2b1dfee7c8b6b6dbdc9dae + languageName: node + linkType: hard + "electron-installer-redhat@npm:^3.2.0": version: 3.4.0 resolution: "electron-installer-redhat@npm:3.4.0" @@ -13286,6 +13382,13 @@ __metadata: languageName: node linkType: hard +"encode-utf8@npm:^1.0.3": + version: 1.0.3 + resolution: "encode-utf8@npm:1.0.3" + checksum: 550224bf2a104b1d355458c8a82e9b4ea07f9fc78387bc3a49c151b940ad26473de8dc9e121eefc4e84561cb0b46de1e4cd2bc766f72ee145e9ea9541482817f + languageName: node + linkType: hard + "encodeurl@npm:~1.0.2": version: 1.0.2 resolution: "encodeurl@npm:1.0.2" @@ -14661,6 +14764,15 @@ __metadata: languageName: node linkType: hard +"fmix@npm:^0.1.0": + version: 0.1.0 + resolution: "fmix@npm:0.1.0" + dependencies: + imul: ^1.0.0 + checksum: c465344d4f169eaf10d45c33949a1e7a633f09dba2ac7063ce8ae8be743df5979d708f7f24900163589f047f5194ac5fc2476177ce31175e8805adfa7b8fb7a4 + languageName: node + linkType: hard + "focus-lock@npm:^0.11.6": version: 0.11.6 resolution: "focus-lock@npm:0.11.6" @@ -14908,6 +15020,24 @@ __metadata: languageName: node linkType: hard +"fs-temp@npm:^1.0.0": + version: 1.2.1 + resolution: "fs-temp@npm:1.2.1" + dependencies: + random-path: ^0.1.0 + checksum: 64d1b96c7adc172a0fbe6116f425f3588ac585dc7011524174e539df7794a4ca81874bb1c8ee74a47991cc35b7dc036f5bf880074844b2165027042b346b38d9 + languageName: node + linkType: hard + +"fs-xattr@npm:^0.3.0": + version: 0.3.1 + resolution: "fs-xattr@npm:0.3.1" + dependencies: + node-gyp: latest + conditions: "!os=win32" + languageName: node + linkType: hard + "fs.realpath@npm:^1.0.0": version: 1.0.0 resolution: "fs.realpath@npm:1.0.0" @@ -15017,7 +15147,7 @@ __metadata: languageName: node linkType: hard -"generate-function@npm:^2.3.1": +"generate-function@npm:^2.0.0, generate-function@npm:^2.3.1": version: 2.3.1 resolution: "generate-function@npm:2.3.1" dependencies: @@ -15026,6 +15156,15 @@ __metadata: languageName: node linkType: hard +"generate-object-property@npm:^1.1.0": + version: 1.2.0 + resolution: "generate-object-property@npm:1.2.0" + dependencies: + is-property: ^1.0.0 + checksum: 5141ca5fd545f0aabd24fd13f9f3ecf9cfea2255db00d46e282d65141d691d560c70b6361c3c0c4982f86f600361925bfd4773e0350c66d0210e6129ae553a09 + languageName: node + linkType: hard + "gensync@npm:^1.0.0-beta.2": version: 1.0.0-beta.2 resolution: "gensync@npm:1.0.0-beta.2" @@ -16239,6 +16378,15 @@ __metadata: languageName: node linkType: hard +"image-size@npm:^0.7.4": + version: 0.7.5 + resolution: "image-size@npm:0.7.5" + bin: + image-size: bin/image-size.js + checksum: f88860c9d9b5c8ad00d3de9d6f5ba105bda5a5024bfb6b90559a075a4b838ed4f5d3cba14edf0f18fe5d75df596a172b52feca43848e11c34f31f4df2c88a011 + languageName: node + linkType: hard + "immediate@npm:~3.0.5": version: 3.0.6 resolution: "immediate@npm:3.0.6" @@ -16289,6 +16437,13 @@ __metadata: languageName: node linkType: hard +"imul@npm:^1.0.0": + version: 1.0.1 + resolution: "imul@npm:1.0.1" + checksum: 6c2af3d5f09e2135e14d565a2c108412b825b221eb2c881f9130467f2adccf7ae201773ae8bcf1be169e2d090567a1fdfa9cf20d3b7da7b9cecb95b920ff3e52 + languageName: node + linkType: hard + "imurmurhash@npm:^0.1.4": version: 0.1.4 resolution: "imurmurhash@npm:0.1.4" @@ -16770,6 +16925,26 @@ __metadata: languageName: node linkType: hard +"is-my-ip-valid@npm:^1.0.0": + version: 1.0.1 + resolution: "is-my-ip-valid@npm:1.0.1" + checksum: 0a50180a9c0842503a2199ca0ba03888069e7c093f71236c65632e9b0f496ea57536856e1ad3d1635010cb5959c551496ea84cfc56088a8e7879fe30b9d71943 + languageName: node + linkType: hard + +"is-my-json-valid@npm:^2.20.0": + version: 2.20.6 + resolution: "is-my-json-valid@npm:2.20.6" + dependencies: + generate-function: ^2.0.0 + generate-object-property: ^1.1.0 + is-my-ip-valid: ^1.0.0 + jsonpointer: ^5.0.0 + xtend: ^4.0.0 + checksum: d3519e18e6a0f4c777d5a2027b5c80d05abd0949179b94795bd2aa6c54e8f44c23b8789cb7d44332015b86cfd73dca57331e7fa53202b28e40aa4620e7f61166 + languageName: node + linkType: hard + "is-negative-zero@npm:^2.0.2": version: 2.0.2 resolution: "is-negative-zero@npm:2.0.2" @@ -16858,7 +17033,7 @@ __metadata: languageName: node linkType: hard -"is-property@npm:^1.0.2": +"is-property@npm:^1.0.0, is-property@npm:^1.0.2": version: 1.0.2 resolution: "is-property@npm:1.0.2" checksum: 33b661a3690bcc88f7e47bb0a21b9e3187e76a317541ea7ec5e8096d954f441b77a46d8930c785f7fbf4ef8dfd624c25495221e026e50f74c9048fe501773be5 @@ -17926,6 +18101,13 @@ __metadata: languageName: node linkType: hard +"jsonpointer@npm:^5.0.0": + version: 5.0.1 + resolution: "jsonpointer@npm:5.0.1" + checksum: 0b40f712900ad0c846681ea2db23b6684b9d5eedf55807b4708c656f5894b63507d0e28ae10aa1bddbea551241035afe62b6df0800fc94c2e2806a7f3adecd7c + languageName: node + linkType: hard + "jsonwebtoken@npm:^9.0.0": version: 9.0.0 resolution: "jsonwebtoken@npm:9.0.0" @@ -19001,6 +19183,16 @@ __metadata: languageName: node linkType: hard +"macos-alias@npm:~0.2.5": + version: 0.2.11 + resolution: "macos-alias@npm:0.2.11" + dependencies: + nan: ^2.4.0 + node-gyp: latest + conditions: os=darwin + languageName: node + linkType: hard + "make-dir@npm:3.1.0, make-dir@npm:^3.0.0, make-dir@npm:^3.1.0": version: 3.1.0 resolution: "make-dir@npm:3.1.0" @@ -19991,7 +20183,7 @@ __metadata: languageName: node linkType: hard -"minimist@npm:^1.2.0, minimist@npm:^1.2.5, minimist@npm:^1.2.6": +"minimist@npm:^1.1.1, minimist@npm:^1.1.3, minimist@npm:^1.2.0, minimist@npm:^1.2.5, minimist@npm:^1.2.6": version: 1.2.8 resolution: "minimist@npm:1.2.8" checksum: 75a6d645fb122dad29c06a7597bddea977258957ed88d7a6df59b5cd3fe4a527e253e9bbf2e783e4b73657f9098b96a5fe96ab8a113655d4109108577ecf85b0 @@ -20241,6 +20433,17 @@ __metadata: languageName: node linkType: hard +"murmur-32@npm:^0.1.0 || ^0.2.0": + version: 0.2.0 + resolution: "murmur-32@npm:0.2.0" + dependencies: + encode-utf8: ^1.0.3 + fmix: ^0.1.0 + imul: ^1.0.0 + checksum: 664f19319c23b2910bd6b4d79e072c910168b157c26bf4507c78f0c7a259cb6f6233fb04eca7d02b271491a8f87660d5c4619f35f7411d9ab10fca715fa93f7c + languageName: node + linkType: hard + "mute-stream@npm:0.0.8, mute-stream@npm:~0.0.4": version: 0.0.8 resolution: "mute-stream@npm:0.0.8" @@ -20303,7 +20506,7 @@ __metadata: languageName: node linkType: hard -"nan@npm:^2.17.0": +"nan@npm:^2.17.0, nan@npm:^2.4.0": version: 2.17.0 resolution: "nan@npm:2.17.0" dependencies: @@ -21699,6 +21902,15 @@ __metadata: languageName: node linkType: hard +"parse-color@npm:^1.0.0": + version: 1.0.0 + resolution: "parse-color@npm:1.0.0" + dependencies: + color-convert: ~0.5.0 + checksum: 0e6e1821eacb4cd21dff380eceafa229052fe22b9951a891c7cac6080a681f29cb2ac50050398ae6cba089cde87f640bcaf8439bf16d468de029691275c175ef + languageName: node + linkType: hard + "parse-conflict-json@npm:^3.0.0, parse-conflict-json@npm:^3.0.1": version: 3.0.1 resolution: "parse-conflict-json@npm:3.0.1" @@ -22676,6 +22888,16 @@ __metadata: languageName: node linkType: hard +"random-path@npm:^0.1.0": + version: 0.1.2 + resolution: "random-path@npm:0.1.2" + dependencies: + base32-encode: ^0.1.0 || ^1.0.0 + murmur-32: ^0.1.0 || ^0.2.0 + checksum: 9fe83df7705e7c7707feba280433f1dd3937dfd6feccc85e1f5fad1e5f84930777a64faa871f4ced4c7825fdfeb5f727f70fc808d81914c02e4c914bac177a34 + languageName: node + linkType: hard + "randombytes@npm:^2.0.0, randombytes@npm:^2.0.1, randombytes@npm:^2.0.5, randombytes@npm:^2.1.0": version: 2.1.0 resolution: "randombytes@npm:2.1.0" @@ -23805,6 +24027,13 @@ __metadata: languageName: node linkType: hard +"repeat-string@npm:^1.5.4": + version: 1.6.1 + resolution: "repeat-string@npm:1.6.1" + checksum: 1b809fc6db97decdc68f5b12c4d1a671c8e3f65ec4a40c238bc5200e44e85bcc52a54f78268ab9c29fcf5fe4f1343e805420056d1f30fa9a9ee4c2d93e3cc6c0 + languageName: node + linkType: hard + "require-directory@npm:^2.1.1": version: 2.1.1 resolution: "require-directory@npm:2.1.1" @@ -25104,6 +25333,13 @@ __metadata: languageName: node linkType: hard +"stream-buffers@npm:~2.2.0": + version: 2.2.0 + resolution: "stream-buffers@npm:2.2.0" + checksum: 4587d9e8f050d689fb38b4295e73408401b16de8edecc12026c6f4ae92956705ecfd995ae3845d7fa3ebf19502d5754df9143d91447fd881d86e518f43882c1c + languageName: node + linkType: hard + "stream-combiner2@npm:~1.1.1": version: 1.1.1 resolution: "stream-combiner2@npm:1.1.1" @@ -25847,6 +26083,22 @@ __metadata: languageName: node linkType: hard +"tn1150@npm:^0.1.0": + version: 0.1.0 + resolution: "tn1150@npm:0.1.0" + dependencies: + unorm: ^1.4.1 + checksum: 525b996bd02aacb77db951c6cedc59262fc737749a9a26b6ec2c120426196f92fe796ba161382499401f9ffc2652455a21467e8d8142cb352a5017c3f1292e97 + languageName: node + linkType: hard + +"to-data-view@npm:^1.1.0": + version: 1.1.0 + resolution: "to-data-view@npm:1.1.0" + checksum: 53bf818cf7ed4b481568085cfed5528b268efe1e95d0b90c2a45031de9cf40de91600771c046924348fdedbedb54f655f98e7bf1c51041ba06f0ec3f2fd53dc6 + languageName: node + linkType: hard + "to-fast-properties@npm:^2.0.0": version: 2.0.0 resolution: "to-fast-properties@npm:2.0.0" @@ -26632,6 +26884,13 @@ __metadata: languageName: node linkType: hard +"unorm@npm:^1.4.1": + version: 1.6.0 + resolution: "unorm@npm:1.6.0" + checksum: 9a86546256a45f855b6cfe719086785d6aada94f63778cecdecece8d814ac26af76cb6da70130da0a08b8803bbf0986e56c7ec4249038198f3de02607fffd811 + languageName: node + linkType: hard + "unpipe@npm:1.0.0, unpipe@npm:~1.0.0": version: 1.0.0 resolution: "unpipe@npm:1.0.0"