From 6f7c0f17c54e982e9fa93be501789fd5afb12bcd Mon Sep 17 00:00:00 2001 From: Andrew Gundersen Date: Thu, 17 Mar 2022 06:54:08 -0500 Subject: [PATCH] annotate content patch --- .npmrc | 2 +- README.md | 4 ++-- icon.png | Bin 0 -> 56471 bytes notarize.js | 4 ++-- package-lock.json | 6 +++--- package.json | 2 +- src/config.js | 1 + src/render/components/messenger.js | 7 +++++++ src/session.js | 4 ++++ 9 files changed, 21 insertions(+), 9 deletions(-) create mode 100644 icon.png diff --git a/.npmrc b/.npmrc index d8d704d..ce46d51 100644 --- a/.npmrc +++ b/.npmrc @@ -1,2 +1,2 @@ @crimata:registry=https://gitlab.com/api/v4/projects/28849281/packages/npm/ -//gitlab.com/api/v4/projects/28849281/packages/npm/:_authToken=${NPM_TOKEN} +//gitlab.com/api/v4/projects/28849281/packages/npm/:_authToken=${API_TOKEN} \ No newline at end of file diff --git a/README.md b/README.md index 1bec458..e9fefb0 100644 --- a/README.md +++ b/README.md @@ -48,7 +48,7 @@ Debug electron-osx-sign: ### Some things to note: -If new package.json, build manually. Only copies src code into /Resources/app. +Notarize only when distributing outside the Mac App Store. #### Gatekeeper Assess Electron-osx-sign seems to have a bug where the sign will fail if "gatekeeper-assess" is true (default). @@ -57,7 +57,7 @@ Electron-osx-sign seems to have a bug where the sign will fail if "gatekeeper-as Not to be confused with Info.plist, this file specifies entitlements the app can have in hardened runtime (e.g. Can I use the microphone?). Only including the ones Electron reccommends seems to work (including audio of course and omitting allow-unsigned-executable-memory). #### The Benifit of Electron OSX Sign -Without this package, we would have to manually go in and figure out how to sign each level of the app. While it didn't work out of the box (gatekeeper-assess) it's proven to be good otherwise. However, there is a bug where it puts multiple runtime flags on each command - not catastrophic though. +Without this package, we would have to manually go in and figure out how to sign each level of the app. While it didn't work out of the box (gatekeeper-assess) it seems to be good otherwise. However, there is a bug where it puts multiple runtime flags on each command - not catastrophic though. #### Apple Password This must be an app specific password, not your normal Apple ID password. diff --git a/icon.png b/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..2897b9816474500eb7e58bb363d22c24850b1f9a GIT binary patch literal 56471 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 JH_hk~{{w(e#9sga literal 0 HcmV?d00001 diff --git a/notarize.js b/notarize.js index 39449da..cd3b19a 100644 --- a/notarize.js +++ b/notarize.js @@ -2,7 +2,7 @@ const exec = require('child_process').exec; const sign = require("electron-osx-sign").signAsync; const notarize = require("electron-notarize").notarize; -const app = "Electron.app"; +const app = "Crimata.app"; const dir = `${app}/Contents/Resources/app`; const runShellCommand = (cmd) => (new Promise((resolve, reject) => { @@ -23,7 +23,7 @@ const signConfig = { const notarizeConfig = { appPath: app, appleId: "gundersena@crimata.com", - appBundleId: "com.github.Electron", + appBundleId: "com.crimata.CrimataMessenger", appleIdPassword: process.env["AC_PASSWORD"] }; diff --git a/package-lock.json b/package-lock.json index 6505d8a..cc9403e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "name": "Crimata", "version": "1.0.0", "dependencies": { - "@crimata/nodeaudio": "^0.0.0", + "@crimata/nodeaudio": "0.0.0", "axios": "^0.21.1", "base64-arraybuffer": "^1.0.1", "electron-store": "^8.0.0", @@ -22,7 +22,7 @@ "node_modules/@crimata/nodeaudio": { "version": "0.0.0", "resolved": "https://gitlab.com/api/v4/projects/28849281/packages/npm/@crimata/nodeaudio/-/@crimata/nodeaudio-0.0.0.tgz", - "integrity": "sha1-epnrLe2KfWntf4tPqwW4KVb/sQ0=", + "integrity": "sha1-4lPe1QynEwebXcjezyAPhfwI+VM=", "hasInstallScript": true, "dependencies": { "bindings": "~1.2.1", @@ -634,7 +634,7 @@ "@crimata/nodeaudio": { "version": "0.0.0", "resolved": "https://gitlab.com/api/v4/projects/28849281/packages/npm/@crimata/nodeaudio/-/@crimata/nodeaudio-0.0.0.tgz", - "integrity": "sha1-epnrLe2KfWntf4tPqwW4KVb/sQ0=", + "integrity": "sha1-4lPe1QynEwebXcjezyAPhfwI+VM=", "requires": { "bindings": "~1.2.1", "sleep": "^6.3.0" diff --git a/package.json b/package.json index 9f62421..6b6c329 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,7 @@ "start": "electron ." }, "dependencies": { - "@crimata/nodeaudio": "^0.0.0", + "@crimata/nodeaudio": "0.0.0", "axios": "^0.21.1", "base64-arraybuffer": "^1.0.1", "electron-store": "^8.0.0", diff --git a/src/config.js b/src/config.js index cabf8f3..bc47fb5 100644 --- a/src/config.js +++ b/src/config.js @@ -3,6 +3,7 @@ const { app } = require("electron"); const DOMAIN = "crimata.com"; const prod = !process.defaultApp; +// const prod = true; module.exports = { PLATFORM: prod ? `https://app.${DOMAIN}` : `http://localhost:8760`, diff --git a/src/render/components/messenger.js b/src/render/components/messenger.js index ed7ca40..4ed4912 100644 --- a/src/render/components/messenger.js +++ b/src/render/components/messenger.js @@ -45,6 +45,13 @@ const Messenger = { { search(update.message).context = update.context; } + else if (update.text) + { + search(update.message).content.at(-1).text = update.text; + setTimeout(() => { + document.getElementById("messenger").dispatchEvent(new CustomEvent('adjust-scroll')) + }, 100); + } }); diff --git a/src/session.js b/src/session.js index 9cd33ca..8d31656 100644 --- a/src/session.js +++ b/src/session.js @@ -53,6 +53,10 @@ function handleMessageQueue() { search(update.message).context = update.context; } + else if (update.text) /* Update the text of last message */ + { + search(update.message).content.at(-1).text = update.text; + } ipcEmit("message", update); } -- 2.43.0