diff --git a/CHANGELOG.md b/CHANGELOG.md index 2605ff38..46dc8a8d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,10 @@ # Changelog +## v1.0.5 + +* New buttons and logo. +* Fix: changing default value to false for every checkbox settings (Peertube bug in <=3.0.1: https://github.com/Chocobozzz/PeerTube/issues/3838). + ## v1.0.4 ### Features diff --git a/assets/style.css b/assets/style.css index 42f448bb..34f58cbf 100644 --- a/assets/style.css +++ b/assets/style.css @@ -13,9 +13,10 @@ .peertube-plugin-livechat-button { border: 1px solid black; background-color: var(--mainBackgroundColor); - min-height: 32px; - min-width: 32px; - padding: 0; + margin: 5px; + min-height: 36px; + min-width: 36px; + padding: 2px; } .peertube-plugin-livechat-button-icon { diff --git a/client/videowatch-client-plugin.js b/client/videowatch-client-plugin.js index 2ce450b4..d58611bc 100644 --- a/client/videowatch-client-plugin.js +++ b/client/videowatch-client-plugin.js @@ -106,14 +106,14 @@ function register ({ registerHook, peertubeHelpers }) { buttonContainer.classList.add('peertube-plugin-livechat-buttons') container.append(buttonContainer) - displayButton(buttonContainer, 'open', labelOpen, () => openChat(), 'talking.png') + displayButton(buttonContainer, 'open', labelOpen, () => openChat(), 'talking.svg') if (showOpenBlank) { displayButton(buttonContainer, 'openblank', labelOpenBlank, () => { closeChat() window.open(iframeUri) - }, 'talking-new-window.png') + }, 'talking-new-window.svg') } - displayButton(buttonContainer, 'close', labelClose, () => closeChat(), 'bye.png') + displayButton(buttonContainer, 'close', labelClose, () => closeChat(), 'bye.svg') resolve() }) diff --git a/main.js b/main.js index 2b9547bf..b4ab3177 100644 --- a/main.js +++ b/main.js @@ -30,7 +30,7 @@ async function register ({ name: 'chat-only-locals', label: 'Chats are only available for local videos.', type: 'input-checkbox', - default: true, + default: false, // TODO: set to true when peertube has fixed https://github.com/Chocobozzz/PeerTube/issues/3838 private: false }) registerSetting({ @@ -65,7 +65,7 @@ async function register ({ name: 'chat-use-builtin', label: 'Use builtin ConverseJS', type: 'input-checkbox', - default: true, + default: false, // TODO: set to true when peertube has fixed https://github.com/Chocobozzz/PeerTube/issues/3838 private: false, descriptionHTML: 'If checked, use a builtin ConverseJS iframe.
' + 'You still have to configure an external XMPP service. Please see the documentation.' diff --git a/package-lock.json b/package-lock.json index 35bc2119..4e96a91b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "peertube-plugin-livechat", - "version": "1.0.3", + "version": "1.0.4", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -92,6 +92,12 @@ "webpack-sources": "^1.0.0" } }, + "@trysound/sax": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.1.1.tgz", + "integrity": "sha512-Z6DoceYb/1xSg5+e+ZlPZ9v0N16ZvZ+wYMraFue4HYrE4ttONKtsvruIRf6t9TBR0YvSOfi1hUU0fJfBLCDYow==", + "dev": true + }, "@types/json5": { "version": "0.0.29", "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", @@ -572,6 +578,12 @@ "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", "dev": true }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", + "dev": true + }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -1096,6 +1108,44 @@ "randomfill": "^1.0.3" } }, + "css-select": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-3.1.2.tgz", + "integrity": "sha512-qmss1EihSuBNWNNhHjxzxSfJoFBM/lERB/Q4EnsJQQC62R2evJDW481091oAdOr9uh46/0n4nrg0It5cAnj1RA==", + "dev": true, + "requires": { + "boolbase": "^1.0.0", + "css-what": "^4.0.0", + "domhandler": "^4.0.0", + "domutils": "^2.4.3", + "nth-check": "^2.0.0" + } + }, + "css-tree": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.2.tgz", + "integrity": "sha512-wCoWush5Aeo48GLhfHPbmvZs59Z+M7k5+B1xDnXbdWNcEF423DoFdqSWE0PM5aNk5nI5cp1q7ms36zGApY/sKQ==", + "dev": true, + "requires": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + } + }, + "css-what": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-4.0.0.tgz", + "integrity": "sha512-teijzG7kwYfNVsUh2H/YN62xW3KK9YhXEgSlbxMlcyjPNvdKJqFx5lrwlJgoFP1ZHlB89iGDlo/JyshKeRhv5A==", + "dev": true + }, + "csso": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", + "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "dev": true, + "requires": { + "css-tree": "^1.1.2" + } + }, "cyclist": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", @@ -1215,12 +1265,49 @@ "esutils": "^2.0.2" } }, + "dom-serializer": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.2.0.tgz", + "integrity": "sha512-n6kZFH/KlCrqs/1GHMOd5i2fd/beQHuehKdWvNNffbGHTr/almdhuVvTVFb3V7fglz+nC50fFusu3lY33h12pA==", + "dev": true, + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "entities": "^2.0.0" + } + }, "domain-browser": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", "dev": true }, + "domelementtype": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.1.0.tgz", + "integrity": "sha512-LsTgx/L5VpD+Q8lmsXSHW2WpA+eBlZ9HPf3erD1IoPF00/3JKHZ3BknUVA2QGDNu69ZNmyFmCWBSO45XjYKC5w==", + "dev": true + }, + "domhandler": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.0.0.tgz", + "integrity": "sha512-KPTbnGQ1JeEMQyO1iYXoagsI6so/C96HZiFyByU3T6iAzpXn8EGEvct6unm1ZGoed8ByO2oirxgwxBmqKF9haA==", + "dev": true, + "requires": { + "domelementtype": "^2.1.0" + } + }, + "domutils": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.4.4.tgz", + "integrity": "sha512-jBC0vOsECI4OMdD0GC9mGn7NXPLb+Qt6KW1YDQzeQYRUFKmNG8lh7mO5HiELfr+lLQE7loDVI4QcAxV80HS+RA==", + "dev": true, + "requires": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0" + } + }, "duplexify": { "version": "3.7.1", "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", @@ -1309,6 +1396,12 @@ "ansi-colors": "^4.1.1" } }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true + }, "errno": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", @@ -2899,6 +2992,12 @@ "safe-buffer": "^5.1.2" } }, + "mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", + "dev": true + }, "mem": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", @@ -3229,6 +3328,15 @@ "path-key": "^2.0.0" } }, + "nth-check": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.0.tgz", + "integrity": "sha512-i4sc/Kj8htBrAiH1viZ0TgU8Y5XqCaV/FziYK6TBczxmeKm3AEFWqqF3195yKudrarqy7Zu80Ra5dobFjn9X/Q==", + "dev": true, + "requires": { + "boolbase": "^1.0.0" + } + }, "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -4282,6 +4390,12 @@ "figgy-pudding": "^3.5.1" } }, + "stable": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", + "dev": true + }, "static-extend": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", @@ -4429,6 +4543,78 @@ "has-flag": "^3.0.0" } }, + "svgo": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.2.1.tgz", + "integrity": "sha512-WrKhe5CMm/O5gchTQKGogKYXGbOC0JBZnHqvaCTEbsMuq4prxQHB/AZgif8WwD4+9Nim4EECObmyjvkdC43iNg==", + "dev": true, + "requires": { + "@trysound/sax": "0.1.1", + "chalk": "^4.1.0", + "commander": "^7.1.0", + "css-select": "^3.1.2", + "css-tree": "^1.1.2", + "csso": "^4.2.0", + "stable": "^0.1.8" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "commander": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.1.0.tgz", + "integrity": "sha512-pRxBna3MJe6HKnBGsDyMv8ETbptw3axEdYHoqNh7gu5oDcew8fs0xnivZGm06Ogk8zGAJ9VX+OPEr2GXEQK4dg==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, "table": { "version": "6.0.7", "resolved": "https://registry.npmjs.org/table/-/table-6.0.7.tgz", diff --git a/package.json b/package.json index 3a3af0ca..0f25259b 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "peertube-plugin-livechat", "description": "PeerTube plugin livechat", - "version": "1.0.4", + "version": "1.0.5", "author": "John Livingston", "bugs": "https://github.com/JohnXLivingston/peertube-plugin-livechat/issues", "clientScripts": [ @@ -31,6 +31,7 @@ "eslint-plugin-node": "^11.1.0", "eslint-plugin-promise": "^4.3.1", "npm-run-all": "^4.1.5", + "svgo": "^2.2.1", "webpack": "^4.41.2", "webpack-cli": "^3.3.10" }, @@ -47,7 +48,7 @@ "clean": "rm -rf dist/*", "prepare": "npm run build", "build:converse": "mkdir -p dist/conversejs && cp -r node_modules/converse.js/dist/* dist/conversejs/", - "build:images": "mkdir -p dist/images && cp public/images/* dist/images/", + "build:images": "mkdir -p dist/images && npx svgo -f public/images/ -o dist/images/", "build:webpack": "webpack --mode=production", "build": "npm-run-all -s clean -p build:converse build:images build:webpack", "lint": "npx eslint --ext .js ." diff --git a/public/images/bye.png b/public/images/bye.png deleted file mode 100644 index 9238964e..00000000 Binary files a/public/images/bye.png and /dev/null differ diff --git a/public/images/bye.svg b/public/images/bye.svg index 777aebfe..3ec21c89 100644 --- a/public/images/bye.svg +++ b/public/images/bye.svg @@ -5,45 +5,19 @@ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" - xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - width="320" - height="320" - viewBox="0 0 84.666664 84.666669" + width="32" + height="32" + viewBox="0 0 8.4666664 8.4666669" version="1.1" id="svg1428" inkscape:version="1.0.2 (e86c870879, 2021-01-15)" sodipodi:docname="bye.svg" - inkscape:export-filename="/home/john/dev/peertube-plugin-livechat/public/images/bye.png" inkscape:export-xdpi="9.6000004" inkscape:export-ydpi="9.6000004"> - - - - - - + id="defs1422" /> image/svg+xml - + @@ -80,228 +54,23 @@ inkscape:label="Calque 1" inkscape:groupmode="layer" id="layer1"> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + style="fill:#7d7d7d;stroke:none;stroke-width:0.222527" + id="rect1026" + width="8.3277063" + height="0.84192604" + x="1.8229842" + y="-0.42096302" + transform="rotate(45)" + ry="0.42096302" /> + style="fill:#7d7d7d;stroke:none;stroke-width:0.222527" + id="rect1026-3" + width="8.3277063" + height="0.84192604" + x="-4.1638532" + y="5.5658746" + transform="matrix(-0.70710678,0.70710678,0.70710678,0.70710678,0,0)" + ry="0.42096302" /> diff --git a/public/images/logo.svg b/public/images/logo.svg new file mode 100644 index 00000000..217dfd21 --- /dev/null +++ b/public/images/logo.svg @@ -0,0 +1,467 @@ + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/images/talking-new-window.png b/public/images/talking-new-window.png deleted file mode 100644 index 69a6638e..00000000 Binary files a/public/images/talking-new-window.png and /dev/null differ diff --git a/public/images/talking-new-window.svg b/public/images/talking-new-window.svg index dc999847..21e6d7ea 100644 --- a/public/images/talking-new-window.svg +++ b/public/images/talking-new-window.svg @@ -6,17 +6,15 @@ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" - xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - width="320" - height="320" - viewBox="0 0 84.666664 84.666669" + width="32" + height="32" + viewBox="0 0 8.4666664 8.4666669" version="1.1" id="svg1428" inkscape:version="1.0.2 (e86c870879, 2021-01-15)" sodipodi:docname="talking-new-window.svg" - inkscape:export-filename="/home/john/dev/peertube-plugin-livechat/public/images/talking-new-window.png" inkscape:export-xdpi="9.6000004" inkscape:export-ydpi="9.6000004"> - - - - - - - - - - - - - - - - - - + id="g1920" + transform="translate(-0.20777154,0.26436241)"> + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/public/images/talking.png b/public/images/talking.png deleted file mode 100644 index 9c0791e2..00000000 Binary files a/public/images/talking.png and /dev/null differ diff --git a/public/images/talking.svg b/public/images/talking.svg index 88032277..7b29bda6 100644 --- a/public/images/talking.svg +++ b/public/images/talking.svg @@ -5,56 +5,19 @@ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" - xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - width="320" - height="320" - viewBox="0 0 84.666664 84.666669" + width="32" + height="32" + viewBox="0 0 8.4666664 8.4666669" version="1.1" id="svg1428" inkscape:version="1.0.2 (e86c870879, 2021-01-15)" sodipodi:docname="talking.svg" - inkscape:export-filename="/home/john/dev/peertube-plugin-livechat/public/images/talking.png" inkscape:export-xdpi="9.6000004" inkscape:export-ydpi="9.6000004"> - - - - - - - + id="defs1422" /> - - - - - - - + id="g1870" + transform="translate(0.00198959,0.07950317)"> + id="rect1227" + style="fill:#f47825;fill-opacity:1;stroke:#000000;stroke-width:0.264583;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="m 2.8259822,0.77565819 c -0.704403,0.00434 -1.3799002,0.11608136 -1.87327066,0.32194421 -0.56545507,0.2359407 -0.59496586,1.6917644 0,1.8381306 0.33220466,0.081725 0.68850956,0.1320225 1.05264886,0.1612305 -0.023993,0.013783 -0.058911,0.03359 -0.058911,0.03359 L 1.2105769,3.9723623 c 0,0 1.1806918,-0.5396352 1.4490072,-0.8474935 0.7888928,0.0076 1.5760208,-0.07262 2.2138182,-0.1891358 0.6027301,-0.1101098 0.5753412,-1.6274413 0,-1.8381306 C 4.2638317,0.87437812 3.5303853,0.77131783 2.8259822,0.77565819 Z" /> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + id="rect1227-3" + style="fill:#585858;fill-opacity:1;stroke:#000000;stroke-width:0.264583;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="m 5.6367053,4.3474023 c 0.704403,0.00434 1.3799002,0.1160814 1.8732706,0.3219442 0.5654551,0.2359407 0.5949659,1.6917644 0,1.8381307 -0.3322046,0.081725 -0.6885095,0.1320224 -1.0526488,0.1612304 0.023993,0.013782 0.058911,0.03359 0.058911,0.03359 l 0.7358724,0.8418088 c 0,0 -1.1806917,-0.5396352 -1.4490071,-0.8474935 -0.7888928,0.0076 -1.5760208,-0.07262 -2.2138182,-0.1891357 -0.6027301,-0.1101098 -0.5753412,-1.6274413 0,-1.8381307 C 4.1988558,4.4461222 4.9323022,4.343062 5.6367053,4.3474023 Z" />