fix: desktop (#1080)

This commit is contained in:
Mo
2022-06-09 18:01:00 -05:00
committed by GitHub
parent 9c65d64200
commit 6801c3dd3b
16 changed files with 296 additions and 1259 deletions

View File

@@ -7,8 +7,15 @@ on:
paths: paths:
- packages/desktop/** - packages/desktop/**
workflow_dispatch: workflow_dispatch:
pull_request:
paths:
- packages/desktop/**
jobs: jobs:
setup:
steps:
- run: yarn install
- run: yarn build:web:front
build: build:
runs-on: ubuntu-latest runs-on: ubuntu-latest
defaults: defaults:
@@ -20,8 +27,7 @@ jobs:
with: with:
node-version: '14.x' node-version: '14.x'
registry-url: 'https://registry.npmjs.org' registry-url: 'https://registry.npmjs.org'
- run: yarn setup - run: node scripts/build.mjs appimage-x64
- run: node ../../scripts/desktop/build.mjs appimage-x64
- uses: actions/upload-artifact@v2 - uses: actions/upload-artifact@v2
with: with:
name: 'AppImage' name: 'AppImage'

View File

@@ -88,7 +88,7 @@ This repo contains the core code used in the web app, as well as the Electron-ba
1. Ensure you have [Yarn](https://classic.yarnpkg.com) installed 1. Ensure you have [Yarn](https://classic.yarnpkg.com) installed
1. Clone the repo 1. Clone the repo
1. `yarn setup` 1. `yarn install`
1. `yarn start` 1. `yarn start`
Then open your browser to `http://localhost:3001`. Then open your browser to `http://localhost:3001`.

View File

@@ -11,5 +11,6 @@
}, },
"globals": { "globals": {
"zip": true "zip": true
} },
"ignorePatterns": ["scripts"]
} }

View File

@@ -16,7 +16,7 @@ This application makes use of the core JS/CSS/HTML code found in the [web repo](
Make sure [Yarn](https://classic.yarnpkg.com/en/) is installed on your system. Make sure [Yarn](https://classic.yarnpkg.com/en/) is installed on your system.
```bash ```bash
yarn setup yarn install
yarn build:web # Or `yarn dev:web` yarn build:web # Or `yarn dev:web`
yarn dev yarn dev
@@ -68,11 +68,11 @@ Snap releases also require a working snapcraft / `snapd` installation.
Building can then be done by running: Building can then be done by running:
- `yarn setup` - `yarn install`
Followed by Followed by
- `node scripts/desktop/build.mjs deb-arm64` - `node scripts/build.mjs deb-arm64`
## Installation ## Installation

File diff suppressed because it is too large Load Diff

View File

@@ -93,6 +93,9 @@ module.exports = function ({ onlyTranspileTypescript = false, experimentalFeatur
{ {
from: 'app/node_modules', from: 'app/node_modules',
to: 'node_modules', to: 'node_modules',
globOptions: {
ignore: ['**/standard-notes/**'],
},
}, },
{ {
from: 'app/stylesheets/renderer.css', from: 'app/stylesheets/renderer.css',

View File

@@ -8,10 +8,15 @@
"type": "git", "type": "git",
"url": "git://github.com/standardnotes/app" "url": "git://github.com/standardnotes/app"
}, },
"workspaces": {
"packages": [
"app"
]
},
"scripts": { "scripts": {
"build:remove-unpacked": "rimraf dist/{linux-*,mac,win-*}", "build:remove-unpacked": "rimraf dist/{linux-*,mac,win-*}",
"build": "yarn run webpack --config desktop.webpack.prod.js", "build": "yarn run webpack --config desktop.webpack.prod.js",
"change-version": "node ../../scripts/desktop/change-version.mjs", "change-version": "node scripts/change-version.mjs",
"clean:build": "rimraf app/dist/", "clean:build": "rimraf app/dist/",
"clean:tests": "rimraf test/data/tmp/", "clean:tests": "rimraf test/data/tmp/",
"dev": "NODE_ENV=development webpack --config desktop.webpack.dev.js --watch", "dev": "NODE_ENV=development webpack --config desktop.webpack.dev.js --watch",
@@ -20,15 +25,17 @@
"lint:formatting": "prettier --check .", "lint:formatting": "prettier --check .",
"lint": "yarn lint:formatting && yarn lint:eslint", "lint": "yarn lint:formatting && yarn lint:eslint",
"tsc": "tsc --noEmit", "tsc": "tsc --noEmit",
"postinstall": "electron-builder install-app-deps", "release": "node scripts/build.mjs mainstream",
"release": "node ../../scripts/desktop/build.mjs mainstream", "release:mac": "node scripts/build.mjs mac",
"release:mac": "node ../../scripts/desktop/build.mjs mac",
"setup": "yarn && yarn --cwd ./app",
"start": "electron ./app --enable-logging --icon _icon/icon.png", "start": "electron ./app --enable-logging --icon _icon/icon.png",
"ava": "rimraf test/data/tmp && ava --serial" "ava": "rimraf test/data/tmp && ava --serial"
}, },
"installConfig": {
"hoistingLimits": "workspaces"
},
"dependencies": { "dependencies": {
"@electron/remote": "^2.0.8", "@electron/remote": "^2.0.8",
"@standardnotes/electron-clear-data": "1.1.1",
"@standardnotes/web": "*", "@standardnotes/web": "*",
"axios": "^0.27.2", "axios": "^0.27.2",
"compare-versions": "^4.1.3", "compare-versions": "^4.1.3",
@@ -46,7 +53,6 @@
"@babel/core": "^7.17.10", "@babel/core": "^7.17.10",
"@babel/preset-env": "^7.17.10", "@babel/preset-env": "^7.17.10",
"@commitlint/config-conventional": "^16.2.4", "@commitlint/config-conventional": "^16.2.4",
"@standardnotes/electron-clear-data": "1.1.1",
"@types/lodash": "^4.14.182", "@types/lodash": "^4.14.182",
"@types/mime-types": "^2.1.1", "@types/mime-types": "^2.1.1",
"@types/node": "15", "@types/node": "15",
@@ -82,7 +88,7 @@
"electronVersion": "17.4.2", "electronVersion": "17.4.2",
"appId": "org.standardnotes.standardnotes", "appId": "org.standardnotes.standardnotes",
"artifactName": "${name}-${version}-${os}-${arch}.${ext}", "artifactName": "${name}-${version}-${os}-${arch}.${ext}",
"afterSign": "../../scripts/desktop/afterSignHook.js", "afterSign": "scripts/afterSignHook.js",
"files": [ "files": [
"compiled/**/*", "compiled/**/*",
"dist/**/*", "dist/**/*",

View File

@@ -0,0 +1,37 @@
/** @see: https://medium.com/@TwitterArchiveEraser/notarize-electron-apps-7a5f988406db */
const fs = require('fs')
const path = require('path')
const electronNotarize = require('electron-notarize')
module.exports = async function (params) {
const platformName = params.electronPlatformName
// Only notarize the app on macOS.
if (platformName !== 'darwin') {
return
}
console.log('afterSign hook triggered')
const { appId } = JSON.parse(await fs.promises.readFile('./package.json')).build
const appPath = path.join(params.appOutDir, `${params.packager.appInfo.productFilename}.app`)
await fs.promises.access(appPath)
console.log(`Notarizing ${appId} found at ${appPath}`)
try {
electronNotarize
.notarize({
appBundleId: appId,
appPath: appPath,
appleId: process.env.notarizeAppleId,
appleIdPassword: process.env.notarizeAppleIdPassword,
})
.then(() => {
console.log(`Done notarizing ${appId}`)
})
} catch (error) {
console.error(error)
throw error
}
}

View File

@@ -6,8 +6,8 @@ import { fileURLToPath } from 'url'
const __filename = fileURLToPath(import.meta.url) const __filename = fileURLToPath(import.meta.url)
const __dirname = path.dirname(__filename) const __dirname = path.dirname(__filename)
const RootDir = path.join(__dirname, '../..') const RootDir = path.join(__dirname, '../../..')
const DesktopDir = path.join(__dirname, '../../packages/desktop') const DesktopDir = path.join(__dirname, '../')
const ScriptsDir = path.join(__dirname) const ScriptsDir = path.join(__dirname)
async function buildTargets(targets) { async function buildTargets(targets) {

View File

@@ -5,75 +5,71 @@
*/ */
if (process.platform !== 'darwin') { if (process.platform !== 'darwin') {
console.error(`this script (${__filename}) can only be run from a darwin platform.`); console.error(`this script (${__filename}) can only be run from a darwin platform.`)
process.exitCode = 1; process.exitCode = 1
return; return
} }
const fs = require('fs'); const fs = require('fs')
const childProcess = require('child_process'); const childProcess = require('child_process')
const yaml = require('js-yaml'); const yaml = require('js-yaml')
const assert = require('assert').strict; const assert = require('assert').strict
const os = require('os'); const os = require('os')
function exec(command) { function exec(command) {
console.log(command); console.log(command)
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
childProcess.exec(command, (err, stdout, stderr) => { childProcess.exec(command, (err, stdout, stderr) => {
if (err) reject(err); if (err) reject(err)
else if (stderr) reject(Error(stderr)); else if (stderr) reject(Error(stderr))
else resolve(stdout); else resolve(stdout)
}); })
}); })
} }
async function getBlockMapInfo(fileName) { async function getBlockMapInfo(fileName) {
return JSON.parse( return JSON.parse(
await exec( await exec(
'./node_modules/app-builder-bin/mac/app-builder_amd64 blockmap' + './node_modules/app-builder-bin/mac/app-builder_amd64 blockmap' + ` -i ${fileName}` + ` -o ${os.tmpdir()}/a.zip`,
` -i ${fileName}` + ),
` -o ${os.tmpdir()}/a.zip` )
)
);
} }
(async () => { ;(async () => {
try { try {
const { version } = JSON.parse(await fs.promises.readFile('app/package.json')); const { version } = JSON.parse(await fs.promises.readFile('app/package.json'))
const zipName = `standard-notes-${version}-mac-x64.zip`; const zipName = `standard-notes-${version}-mac-x64.zip`
const zipPath = `dist/${zipName}`; const zipPath = `dist/${zipName}`
console.log(`Removing ${zipPath}`); console.log(`Removing ${zipPath}`)
await fs.promises.unlink(zipPath); await fs.promises.unlink(zipPath)
process.chdir('dist/mac'); process.chdir('dist/mac')
const appName = process.argv.includes('--beta') const appName = process.argv.includes('--beta') ? 'Standard\\ Notes\\ \\(Beta\\).app' : 'Standard\\ Notes.app'
? 'Standard\\ Notes\\ \\(Beta\\).app'
: 'Standard\\ Notes.app';
/** @see https://superuser.com/questions/574032/what-is-the-equivalent-unix-command-to-a-mac-osx-compress-menu-action */ /** @see https://superuser.com/questions/574032/what-is-the-equivalent-unix-command-to-a-mac-osx-compress-menu-action */
await exec(`ditto -c -k --sequesterRsrc --keepParent ${appName} ../${zipName}`); await exec(`ditto -c -k --sequesterRsrc --keepParent ${appName} ../${zipName}`)
process.chdir('../..'); process.chdir('../..')
const [blockMapInfo, latestVersionInfo] = await Promise.all([ const [blockMapInfo, latestVersionInfo] = await Promise.all([
getBlockMapInfo(zipPath), getBlockMapInfo(zipPath),
fs.promises.readFile('dist/latest-mac.yml').then(yaml.load), fs.promises.readFile('dist/latest-mac.yml').then(yaml.load),
]); ])
const index = latestVersionInfo.files.findIndex((file) => file.url === zipName); const index = latestVersionInfo.files.findIndex((file) => file.url === zipName)
assert(index >= 0); assert(index >= 0)
latestVersionInfo.files[index] = { latestVersionInfo.files[index] = {
...latestVersionInfo.files[index], ...latestVersionInfo.files[index],
...blockMapInfo, ...blockMapInfo,
}; }
latestVersionInfo.sha512 = blockMapInfo.sha512; latestVersionInfo.sha512 = blockMapInfo.sha512
console.log('Writing new size, hash and blockMap size to dist/latest-mac.yml'); console.log('Writing new size, hash and blockMap size to dist/latest-mac.yml')
await fs.promises.writeFile( await fs.promises.writeFile(
'dist/latest-mac.yml', 'dist/latest-mac.yml',
yaml.dump(latestVersionInfo, { yaml.dump(latestVersionInfo, {
lineWidth: Infinity, lineWidth: Infinity,
}), }),
'utf8' 'utf8',
); )
} catch (err) { } catch (err) {
console.error(err); console.error(err)
process.exitCode = 1; process.exitCode = 1
} }
})(); })()

View File

@@ -1,37 +0,0 @@
/** @see: https://medium.com/@TwitterArchiveEraser/notarize-electron-apps-7a5f988406db */
const fs = require('fs');
const path = require('path');
const electronNotarize = require('electron-notarize');
module.exports = async function (params) {
const platformName = params.electronPlatformName;
// Only notarize the app on macOS.
if (platformName !== 'darwin') {
return;
}
console.log('afterSign hook triggered');
const { appId } = JSON.parse(await fs.promises.readFile('../../packages/desktop/package.json')).build;
const appPath = path.join(params.appOutDir, `${params.packager.appInfo.productFilename}.app`);
await fs.promises.access(appPath);
console.log(`Notarizing ${appId} found at ${appPath}`);
try {
electronNotarize
.notarize({
appBundleId: appId,
appPath: appPath,
appleId: process.env.notarizeAppleId,
appleIdPassword: process.env.notarizeAppleIdPassword,
})
.then(() => {
console.log(`Done notarizing ${appId}`);
});
} catch (error) {
console.error(error);
throw error;
}
};

200
yarn.lock
View File

@@ -7176,6 +7176,17 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"bl@npm:^4.0.3":
version: 4.1.0
resolution: "bl@npm:4.1.0"
dependencies:
buffer: ^5.5.0
inherits: ^2.0.4
readable-stream: ^3.4.0
checksum: 9e8521fa7e83aa9427c6f8ccdcba6e8167ef30cc9a22df26effcc5ab682ef91d2cbc23a239f945d099289e4bbcfae7a192e9c28c84c6202e710a0dfec3722662
languageName: node
linkType: hard
"bluebird-lst@npm:^1.0.9": "bluebird-lst@npm:^1.0.9":
version: 1.0.9 version: 1.0.9
resolution: "bluebird-lst@npm:1.0.9" resolution: "bluebird-lst@npm:1.0.9"
@@ -7432,7 +7443,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"buffer@npm:^5.1.0, buffer@npm:^5.4.3": "buffer@npm:^5.1.0, buffer@npm:^5.4.3, buffer@npm:^5.5.0":
version: 5.7.1 version: 5.7.1
resolution: "buffer@npm:5.7.1" resolution: "buffer@npm:5.7.1"
dependencies: dependencies:
@@ -7862,6 +7873,13 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"chownr@npm:^1.1.1":
version: 1.1.4
resolution: "chownr@npm:1.1.4"
checksum: 115648f8eb38bac5e41c3857f3e663f9c39ed6480d1349977c4d96c95a47266fcacc5a5aabf3cb6c481e22d72f41992827db47301851766c4fd77ac21a4f081d
languageName: node
linkType: hard
"chownr@npm:^2.0.0": "chownr@npm:^2.0.0":
version: 2.0.0 version: 2.0.0
resolution: "chownr@npm:2.0.0" resolution: "chownr@npm:2.0.0"
@@ -9185,6 +9203,15 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"decompress-response@npm:^6.0.0":
version: 6.0.0
resolution: "decompress-response@npm:6.0.0"
dependencies:
mimic-response: ^3.1.0
checksum: d377cf47e02d805e283866c3f50d3d21578b779731e8c5072d6ce8c13cc31493db1c2f6784da9d1d5250822120cefa44f1deab112d5981015f2e17444b763812
languageName: node
linkType: hard
"decrypt@github:standardnotes/decrypt#master": "decrypt@github:standardnotes/decrypt#master":
version: 1.1.4 version: 1.1.4
resolution: "decrypt@https://github.com/standardnotes/decrypt.git#commit=83e11f45c1461a7a1bde5a8bbc1ada4c4c712797" resolution: "decrypt@https://github.com/standardnotes/decrypt.git#commit=83e11f45c1461a7a1bde5a8bbc1ada4c4c712797"
@@ -9388,6 +9415,13 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"detect-libc@npm:^2.0.0":
version: 2.0.1
resolution: "detect-libc@npm:2.0.1"
checksum: ccb05fcabbb555beb544d48080179c18523a343face9ee4e1a86605a8715b4169f94d663c21a03c310ac824592f2ba9a5270218819bb411ad7be578a527593d7
languageName: node
linkType: hard
"detect-newline@npm:^3.0.0": "detect-newline@npm:^3.0.0":
version: 3.1.0 version: 3.1.0
resolution: "detect-newline@npm:3.1.0" resolution: "detect-newline@npm:3.1.0"
@@ -9843,9 +9877,9 @@ __metadata:
linkType: hard linkType: hard
"electron-to-chromium@npm:^1.4.147": "electron-to-chromium@npm:^1.4.147":
version: 1.4.150 version: 1.4.151
resolution: "electron-to-chromium@npm:1.4.150" resolution: "electron-to-chromium@npm:1.4.151"
checksum: d89c4db96c7d8d23c619772b787b7c036ccf48289c36c9e0d0938c137b7d3934234825161e9cc9e918ad83b9a23145e605181544a80034df4d2c0fc880881304 checksum: 03be4f1f1f08da6962a2983ae7a092a61edc736010ed10e42c612ce3fa13d47e360313230ddc101bec71f5da5689546d7eee541ea5e1fe4082b09355b30311ec
languageName: node languageName: node
linkType: hard linkType: hard
@@ -9943,7 +9977,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"end-of-stream@npm:^1.1.0": "end-of-stream@npm:^1.1.0, end-of-stream@npm:^1.4.1":
version: 1.4.4 version: 1.4.4
resolution: "end-of-stream@npm:1.4.4" resolution: "end-of-stream@npm:1.4.4"
dependencies: dependencies:
@@ -10657,6 +10691,13 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"expand-template@npm:^2.0.3":
version: 2.0.3
resolution: "expand-template@npm:2.0.3"
checksum: 588c19847216421ed92befb521767b7018dc88f88b0576df98cb242f20961425e96a92cbece525ef28cc5becceae5d544ae0f5b9b5e2aa05acb13716ca5b3099
languageName: node
linkType: hard
"expect@npm:^27.5.1": "expect@npm:^27.5.1":
version: 27.5.1 version: 27.5.1
resolution: "expect@npm:27.5.1" resolution: "expect@npm:27.5.1"
@@ -11117,9 +11158,9 @@ __metadata:
linkType: hard linkType: hard
"flow-parser@npm:0.*": "flow-parser@npm:0.*":
version: 0.179.0 version: 0.180.0
resolution: "flow-parser@npm:0.179.0" resolution: "flow-parser@npm:0.180.0"
checksum: 939ef4e35dd126ecbfc461f996fbb796a8506b416bc018920fc13a5a0f705c2a688533a6459411b9edca3719fb7d8489287f142b8c164abff85f9232ca251e17 checksum: bc26d9d29e49f3401602bc76ece47ff839e339b555560d53e2d3553c84222702d587e0d6342effdb1cbd334bf06ab33b3a1c370e701229b800f8b9f9bf73e233
languageName: node languageName: node
linkType: hard linkType: hard
@@ -11226,6 +11267,13 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"fs-constants@npm:^1.0.0":
version: 1.0.0
resolution: "fs-constants@npm:1.0.0"
checksum: 18f5b718371816155849475ac36c7d0b24d39a11d91348cfcb308b4494824413e03572c403c86d3a260e049465518c4f0d5bd00f0371cdfcad6d4f30a85b350d
languageName: node
linkType: hard
"fs-extra@npm:^1.0.0": "fs-extra@npm:^1.0.0":
version: 1.0.0 version: 1.0.0
resolution: "fs-extra@npm:1.0.0" resolution: "fs-extra@npm:1.0.0"
@@ -11630,6 +11678,13 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"github-from-package@npm:0.0.0":
version: 0.0.0
resolution: "github-from-package@npm:0.0.0"
checksum: 14e448192a35c1e42efee94c9d01a10f42fe790375891a24b25261246ce9336ab9df5d274585aedd4568f7922246c2a78b8a8cd2571bfe99c693a9718e7dd0e3
languageName: node
linkType: hard
"glob-parent@npm:^5.1.1, glob-parent@npm:^5.1.2, glob-parent@npm:~5.1.2": "glob-parent@npm:^5.1.1, glob-parent@npm:^5.1.2, glob-parent@npm:~5.1.2":
version: 5.1.2 version: 5.1.2
resolution: "glob-parent@npm:5.1.2" resolution: "glob-parent@npm:5.1.2"
@@ -12512,7 +12567,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"inherits@npm:2, inherits@npm:2.0.4, inherits@npm:^2.0.1, inherits@npm:^2.0.3, inherits@npm:~2.0.3": "inherits@npm:2, inherits@npm:2.0.4, inherits@npm:^2.0.1, inherits@npm:^2.0.3, inherits@npm:^2.0.4, inherits@npm:~2.0.3":
version: 2.0.4 version: 2.0.4
resolution: "inherits@npm:2.0.4" resolution: "inherits@npm:2.0.4"
checksum: 4a48a733847879d6cf6691860a6b1e3f0f4754176e4d71494c41f3475553768b10f84b5ce1d40fbd0e34e6bfbb864ee35858ad4dd2cf31e02fc4a154b724d7f1 checksum: 4a48a733847879d6cf6691860a6b1e3f0f4754176e4d71494c41f3475553768b10f84b5ce1d40fbd0e34e6bfbb864ee35858ad4dd2cf31e02fc4a154b724d7f1
@@ -14319,6 +14374,17 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"keytar@npm:^7.9.0":
version: 7.9.0
resolution: "keytar@npm:7.9.0"
dependencies:
node-addon-api: ^4.3.0
node-gyp: latest
prebuild-install: ^7.0.1
checksum: 4dbdd21f69e21a53032cbc949847f57338e42df763c5eec04e1b5d7142a689f95d8c3d74fb3b7dc321b5d678271d8d8d1a0dcaa919673ebc50ef8ce76f354e21
languageName: node
linkType: hard
"keyv@npm:^3.0.0": "keyv@npm:^3.0.0":
version: 3.1.0 version: 3.1.0
resolution: "keyv@npm:3.1.0" resolution: "keyv@npm:3.1.0"
@@ -15641,6 +15707,13 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"mimic-response@npm:^3.1.0":
version: 3.1.0
resolution: "mimic-response@npm:3.1.0"
checksum: 25739fee32c17f433626bf19f016df9036b75b3d84a3046c7d156e72ec963dd29d7fc8a302f55a3d6c5a4ff24259676b15d915aad6480815a969ff2ec0836867
languageName: node
linkType: hard
"min-indent@npm:^1.0.0": "min-indent@npm:^1.0.0":
version: 1.0.1 version: 1.0.1
resolution: "min-indent@npm:1.0.1" resolution: "min-indent@npm:1.0.1"
@@ -15825,6 +15898,13 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"mkdirp-classic@npm:^0.5.2, mkdirp-classic@npm:^0.5.3":
version: 0.5.3
resolution: "mkdirp-classic@npm:0.5.3"
checksum: 3f4e088208270bbcc148d53b73e9a5bd9eef05ad2cbf3b3d0ff8795278d50dd1d11a8ef1875ff5aea3fa888931f95bfcb2ad5b7c1061cfefd6284d199e6776ac
languageName: node
linkType: hard
"mkdirp-infer-owner@npm:^2.0.0": "mkdirp-infer-owner@npm:^2.0.0":
version: 2.0.0 version: 2.0.0
resolution: "mkdirp-infer-owner@npm:2.0.0" resolution: "mkdirp-infer-owner@npm:2.0.0"
@@ -16007,6 +16087,13 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"napi-build-utils@npm:^1.0.1":
version: 1.0.2
resolution: "napi-build-utils@npm:1.0.2"
checksum: 06c14271ee966e108d55ae109f340976a9556c8603e888037145d6522726aebe89dd0c861b4b83947feaf6d39e79e08817559e8693deedc2c94e82c5cbd090c7
languageName: node
linkType: hard
"natural-compare@npm:^1.4.0": "natural-compare@npm:^1.4.0":
version: 1.4.0 version: 1.4.0
resolution: "natural-compare@npm:1.4.0" resolution: "natural-compare@npm:1.4.0"
@@ -16061,6 +16148,15 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"node-abi@npm:^3.3.0":
version: 3.22.0
resolution: "node-abi@npm:3.22.0"
dependencies:
semver: ^7.3.5
checksum: ad76823920780de39b9712b10c8e5ee424d573b74720b9eeef9ce6523d587f114787aefeabbd34d7a861f9cfab9ac131e1a149243470bb79d6eb5d414a3fa58e
languageName: node
linkType: hard
"node-addon-api@npm:^1.6.3": "node-addon-api@npm:^1.6.3":
version: 1.7.2 version: 1.7.2
resolution: "node-addon-api@npm:1.7.2" resolution: "node-addon-api@npm:1.7.2"
@@ -16070,6 +16166,15 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"node-addon-api@npm:^4.3.0":
version: 4.3.0
resolution: "node-addon-api@npm:4.3.0"
dependencies:
node-gyp: latest
checksum: 3de396e23cc209f539c704583e8e99c148850226f6e389a641b92e8967953713228109f919765abc1f4355e801e8f41842f96210b8d61c7dcc10a477002dcf00
languageName: node
linkType: hard
"node-dir@npm:^0.1.17": "node-dir@npm:^0.1.17":
version: 0.1.17 version: 0.1.17
resolution: "node-dir@npm:0.1.17" resolution: "node-dir@npm:0.1.17"
@@ -17560,6 +17665,28 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"prebuild-install@npm:^7.0.1":
version: 7.1.1
resolution: "prebuild-install@npm:7.1.1"
dependencies:
detect-libc: ^2.0.0
expand-template: ^2.0.3
github-from-package: 0.0.0
minimist: ^1.2.3
mkdirp-classic: ^0.5.3
napi-build-utils: ^1.0.1
node-abi: ^3.3.0
pump: ^3.0.0
rc: ^1.2.7
simple-get: ^4.0.0
tar-fs: ^2.0.0
tunnel-agent: ^0.6.0
bin:
prebuild-install: bin.js
checksum: dbf96d0146b6b5827fc8f67f72074d2e19c69628b9a7a0a17d0fad1bf37e9f06922896972e074197fc00a52eae912993e6ef5a0d471652f561df5cb516f3f467
languageName: node
linkType: hard
"prelude-ls@npm:^1.2.1": "prelude-ls@npm:^1.2.1":
version: 1.2.1 version: 1.2.1
resolution: "prelude-ls@npm:1.2.1" resolution: "prelude-ls@npm:1.2.1"
@@ -17961,7 +18088,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"rc@npm:^1.0.1, rc@npm:^1.1.6, rc@npm:^1.2.8": "rc@npm:^1.0.1, rc@npm:^1.1.6, rc@npm:^1.2.7, rc@npm:^1.2.8":
version: 1.2.8 version: 1.2.8
resolution: "rc@npm:1.2.8" resolution: "rc@npm:1.2.8"
dependencies: dependencies:
@@ -18771,7 +18898,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"readable-stream@npm:3, readable-stream@npm:^3.0.0, readable-stream@npm:^3.0.2, readable-stream@npm:^3.0.6, readable-stream@npm:^3.6.0": "readable-stream@npm:3, readable-stream@npm:^3.0.0, readable-stream@npm:^3.0.2, readable-stream@npm:^3.0.6, readable-stream@npm:^3.1.1, readable-stream@npm:^3.4.0, readable-stream@npm:^3.6.0":
version: 3.6.0 version: 3.6.0
resolution: "readable-stream@npm:3.6.0" resolution: "readable-stream@npm:3.6.0"
dependencies: dependencies:
@@ -19865,6 +19992,24 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"simple-concat@npm:^1.0.0":
version: 1.0.1
resolution: "simple-concat@npm:1.0.1"
checksum: 4d211042cc3d73a718c21ac6c4e7d7a0363e184be6a5ad25c8a1502e49df6d0a0253979e3d50dbdd3f60ef6c6c58d756b5d66ac1e05cda9cacd2e9fc59e3876a
languageName: node
linkType: hard
"simple-get@npm:^4.0.0":
version: 4.0.1
resolution: "simple-get@npm:4.0.1"
dependencies:
decompress-response: ^6.0.0
once: ^1.3.1
simple-concat: ^1.0.0
checksum: e4132fd27cf7af230d853fa45c1b8ce900cb430dd0a3c6d3829649fe4f2b26574c803698076c4006450efb0fad2ba8c5455fbb5755d4b0a5ec42d4f12b31d27e
languageName: node
linkType: hard
"simple-plist@npm:^1.0.0": "simple-plist@npm:^1.0.0":
version: 1.3.1 version: 1.3.1
resolution: "simple-plist@npm:1.3.1" resolution: "simple-plist@npm:1.3.1"
@@ -20333,6 +20478,14 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"standard-notes@workspace:packages/desktop/app":
version: 0.0.0-use.local
resolution: "standard-notes@workspace:packages/desktop/app"
dependencies:
keytar: ^7.9.0
languageName: unknown
linkType: soft
"stat-mode@npm:^1.0.0": "stat-mode@npm:^1.0.0":
version: 1.0.0 version: 1.0.0
resolution: "stat-mode@npm:1.0.0" resolution: "stat-mode@npm:1.0.0"
@@ -20795,6 +20948,31 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"tar-fs@npm:^2.0.0":
version: 2.1.1
resolution: "tar-fs@npm:2.1.1"
dependencies:
chownr: ^1.1.1
mkdirp-classic: ^0.5.2
pump: ^3.0.0
tar-stream: ^2.1.4
checksum: f5b9a70059f5b2969e65f037b4e4da2daf0fa762d3d232ffd96e819e3f94665dbbbe62f76f084f1acb4dbdcce16c6e4dac08d12ffc6d24b8d76720f4d9cf032d
languageName: node
linkType: hard
"tar-stream@npm:^2.1.4":
version: 2.2.0
resolution: "tar-stream@npm:2.2.0"
dependencies:
bl: ^4.0.3
end-of-stream: ^1.4.1
fs-constants: ^1.0.0
inherits: ^2.0.3
readable-stream: ^3.1.1
checksum: 699831a8b97666ef50021c767f84924cfee21c142c2eb0e79c63254e140e6408d6d55a065a2992548e72b06de39237ef2b802b99e3ece93ca3904a37622a66f3
languageName: node
linkType: hard
"tar@npm:^6.0.2, tar@npm:^6.1.0, tar@npm:^6.1.11, tar@npm:^6.1.2": "tar@npm:^6.0.2, tar@npm:^6.1.0, tar@npm:^6.1.11, tar@npm:^6.1.2":
version: 6.1.11 version: 6.1.11
resolution: "tar@npm:6.1.11" resolution: "tar@npm:6.1.11"