[mirotalk] - replace Robohash avatars with DiceBear and update credits
This commit is contained in:
+1
-1
@@ -1,5 +1,5 @@
|
||||
# ====================================================
|
||||
# MiroTalk P2P v.1.8.25 - Environment Configuration
|
||||
# MiroTalk P2P v.1.8.26 - Environment Configuration
|
||||
# ====================================================
|
||||
|
||||
# App environment
|
||||
|
||||
@@ -180,7 +180,7 @@ To set up your own instance of `MiroTalk P2P` on a dedicated cloud server, pleas
|
||||
- ianramzy (html [template](https://cruip.com/demos/neon/))
|
||||
- vasanthv (webrtc-logic)
|
||||
- fabric.js (whiteboard)
|
||||
- [Robohash.org](https://robohash.org) (random avatars)
|
||||
- [DiceBear](https://www.dicebear.com/) (random avatars)
|
||||
- [Image by ddraw on Freepik](https://www.freepik.com/free-vector/collection-female-male-avatars_1105371.htm) (avatar illustrations)
|
||||
|
||||
</details>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
/**
|
||||
* ==============================================
|
||||
* MiroTalk P2P v.1.8.25 - Configuration File
|
||||
* MiroTalk P2P v.1.8.26 - Configuration File
|
||||
* ==============================================
|
||||
*
|
||||
* This file is the central configuration source.
|
||||
|
||||
+1
-1
@@ -45,7 +45,7 @@ dependencies: {
|
||||
* @license For commercial use or closed source, contact us at license.mirotalk@gmail.com or purchase directly from CodeCanyon
|
||||
* @license CodeCanyon: https://codecanyon.net/item/mirotalk-p2p-webrtc-realtime-video-conferences/38376661
|
||||
* @author Miroslav Pejic - miroslav.pejic.85@gmail.com
|
||||
* @version 1.8.25
|
||||
* @version 1.8.26
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
Generated
+6
-6
@@ -1,12 +1,12 @@
|
||||
{
|
||||
"name": "mirotalk",
|
||||
"version": "1.8.25",
|
||||
"version": "1.8.26",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "mirotalk",
|
||||
"version": "1.8.25",
|
||||
"version": "1.8.26",
|
||||
"license": "AGPL-3.0",
|
||||
"dependencies": {
|
||||
"@mattermost/client": "11.6.0",
|
||||
@@ -27,7 +27,7 @@
|
||||
"helmet": "^8.1.0",
|
||||
"httpolyglot": "0.1.2",
|
||||
"js-yaml": "^4.1.1",
|
||||
"jsdom": "^29.1.0",
|
||||
"jsdom": "^29.1.1",
|
||||
"jsonwebtoken": "^9.0.3",
|
||||
"nodemailer": "^8.0.7",
|
||||
"openai": "^6.35.0",
|
||||
@@ -4301,9 +4301,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jsdom": {
|
||||
"version": "29.1.0",
|
||||
"resolved": "https://registry.npmjs.org/jsdom/-/jsdom-29.1.0.tgz",
|
||||
"integrity": "sha512-YNUc7fB9QuvSSQWfrH0xF+TyABkxUwx8sswgIDaCrw4Hol8BghdZDkITtZheRJeMtzWlnTfsM3bBBusRvpO1wg==",
|
||||
"version": "29.1.1",
|
||||
"resolved": "https://registry.npmjs.org/jsdom/-/jsdom-29.1.1.tgz",
|
||||
"integrity": "sha512-ECi4Fi2f7BdJtUKTflYRTiaMxIB0O6zfR1fX0GXpUrf6flp8QIYn1UT20YQqdSOfk2dfkCwS8LAFoJDEppNK5Q==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@asamuzakjp/css-color": "^5.1.11",
|
||||
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "mirotalk",
|
||||
"version": "1.8.25",
|
||||
"version": "1.8.26",
|
||||
"description": "A free WebRTC browser-based video call",
|
||||
"main": "server.js",
|
||||
"scripts": {
|
||||
@@ -62,7 +62,7 @@
|
||||
"helmet": "^8.1.0",
|
||||
"httpolyglot": "0.1.2",
|
||||
"js-yaml": "^4.1.1",
|
||||
"jsdom": "^29.1.0",
|
||||
"jsdom": "^29.1.1",
|
||||
"jsonwebtoken": "^9.0.3",
|
||||
"nodemailer": "^8.0.7",
|
||||
"openai": "^6.35.0",
|
||||
|
||||
+1
-1
@@ -109,7 +109,7 @@ let brand = {
|
||||
},
|
||||
about: {
|
||||
imageUrl: '../images/mirotalk-logo.gif',
|
||||
title: 'WebRTC P2P v1.8.25',
|
||||
title: 'WebRTC P2P v1.8.26',
|
||||
html: `
|
||||
<button
|
||||
id="support-button"
|
||||
|
||||
+22
-12
@@ -15,7 +15,7 @@
|
||||
* @license For commercial use or closed source, contact us at license.mirotalk@gmail.com or purchase directly from CodeCanyon
|
||||
* @license CodeCanyon: https://codecanyon.net/item/mirotalk-p2p-webrtc-realtime-video-conferences/38376661
|
||||
* @author Miroslav Pejic - miroslav.pejic.85@gmail.com
|
||||
* @version 1.8.25
|
||||
* @version 1.8.26
|
||||
*
|
||||
*/
|
||||
|
||||
@@ -11816,7 +11816,7 @@ function isImageURL(input) {
|
||||
/**
|
||||
* Check if a URL is a valid HTTP/HTTPS avatar URL.
|
||||
* Unlike isImageURL, this does NOT require a file extension,
|
||||
* so it accepts dynamic avatar endpoints (e.g. GitHub, Gravatar, Robohash).
|
||||
* so it accepts dynamic avatar endpoints (e.g. GitHub, Gravatar, DiceBear).
|
||||
* @param {string} input
|
||||
* @returns {boolean}
|
||||
*/
|
||||
@@ -12345,22 +12345,32 @@ async function updateMyPeerAvatarByUrl() {
|
||||
localGrid.appendChild(makeAvatarImg(url));
|
||||
}
|
||||
|
||||
// Robohash random avatars
|
||||
const roboLabel = document.createElement('p');
|
||||
roboLabel.textContent = 'Or pick a random avatar:';
|
||||
roboLabel.style.cssText = 'color:#aaa;font-size:12px;margin:10px 0 6px;text-align:center;';
|
||||
// DiceBear random avatars
|
||||
const randomAvatarLabel = document.createElement('p');
|
||||
randomAvatarLabel.textContent = 'Or pick a random avatar:';
|
||||
randomAvatarLabel.style.cssText = 'color:#aaa;font-size:12px;margin:10px 0 6px;text-align:center;';
|
||||
|
||||
const roboGrid = document.createElement('div');
|
||||
roboGrid.style.cssText = 'display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:4px;';
|
||||
const randomAvatarGrid = document.createElement('div');
|
||||
randomAvatarGrid.style.cssText =
|
||||
'display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:4px;';
|
||||
const dicebearStyles = [
|
||||
'bottts-neutral',
|
||||
'adventurer-neutral',
|
||||
'thumbs',
|
||||
'initials',
|
||||
'identicon',
|
||||
'shapes',
|
||||
];
|
||||
|
||||
for (let i = 0; i < 6; i++) {
|
||||
const seed = Math.random().toString(36).substring(2, 10);
|
||||
const url = `https://robohash.org/${seed}.png`;
|
||||
roboGrid.appendChild(makeAvatarImg(url));
|
||||
const style = dicebearStyles[i % dicebearStyles.length];
|
||||
const url = `https://api.dicebear.com/9.x/${style}/svg?seed=${encodeURIComponent(seed)}`;
|
||||
randomAvatarGrid.appendChild(makeAvatarImg(url));
|
||||
}
|
||||
|
||||
let insertAfter = input;
|
||||
for (const el of [localLabel, localGrid, roboLabel, roboGrid]) {
|
||||
for (const el of [localLabel, localGrid, randomAvatarLabel, randomAvatarGrid]) {
|
||||
insertAfter.parentNode.insertBefore(el, insertAfter.nextSibling);
|
||||
insertAfter = el;
|
||||
}
|
||||
@@ -15682,7 +15692,7 @@ function showAbout() {
|
||||
Swal.fire({
|
||||
background: swBg,
|
||||
position: 'center',
|
||||
title: brand.about?.title && brand.about.title.trim() !== '' ? brand.about.title : 'WebRTC P2P v1.8.25',
|
||||
title: brand.about?.title && brand.about.title.trim() !== '' ? brand.about.title : 'WebRTC P2P v1.8.26',
|
||||
imageUrl: brand.about?.imageUrl && brand.about.imageUrl.trim() !== '' ? brand.about.imageUrl : images.about,
|
||||
customClass: { image: 'img-about' },
|
||||
html: `
|
||||
|
||||
Reference in New Issue
Block a user