This commit is contained in:
cha0s 2020-12-15 02:22:11 -06:00
parent bf87733ac1
commit b811009a77
25 changed files with 513 additions and 341 deletions

View File

@ -0,0 +1 @@
REDIS cleanup (scripts, async, ...)

12
app/Dockerfile Normal file
View File

@ -0,0 +1,12 @@
FROM node:14
EXPOSE 32340
COPY ./build /var/www/build
COPY ./src /var/www/src
COPY ./node_modules /var/www/node_modules
COPY ./package.json /var/www/package.json
COPY ./latus.yml /var/www/latus.yml
COPY ./postcss.config.js /var/www/postcss.config.js
WORKDIR /var/www
RUN npm rebuild
RUN apt update && apt install -y rlwrap socat
ENTRYPOINT ["node", "--experimental-repl-await", "build/index.js"]

View File

@ -5,9 +5,11 @@
"scripts": {
"build": "webpack --mode production",
"dev": "webpack --mode development",
"docker": "yarn run build && docker build",
"forcelatus": "pkgs=$(find node_modules/@latus -maxdepth 1 -mindepth 1 -printf '@latus/%f '); yarn upgrade $pkgs",
"forcereddichat": "pkgs=$(find node_modules/@reddichat -maxdepth 1 -mindepth 1 -printf '@reddichat/%f '); yarn upgrade $pkgs",
"lint": "eslint --cache --format codeframe --ext mjs,jsx,js src",
"produce": "yarn run docker -t cha0s6983/reddichat . && docker tag cha0s6983/reddichat docker.i12e.cha0s.io/cha0s6983/reddichat && docker push docker.i12e.cha0s.io/cha0s6983/reddichat",
"repl": "rlwrap -C qmp socat STDIO UNIX:$(ls /tmp/latus-*.sock | tail -n 1)",
"start": "NODE_ENV=production node build/index.js",
"test": "mocha --watch src",

BIN
app/src/assets/favicon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@ -26,5 +26,10 @@
button + & {
left: 3em;
}
@include breakpoint(desktop) {
&[class] {
left: 0;
}
}
}

View File

@ -1,7 +1,6 @@
import './index.scss';
import {
goBack,
replace,
} from 'connected-react-router';
import throttle from 'lodash.throttle';
@ -11,7 +10,6 @@ import {Link} from 'react-router-dom';
import {useSocket} from '@latus/socket/client';
import {channelSelector, submitJoin} from '@reddichat/chat/client';
import {historyLengthSelector} from '@reddichat/app/client';
import {addRecent, userSelector} from '@reddichat/user/client';
import {channelIsAnonymous, renderChannel, validateChannel} from '@reddichat/core/client';
@ -26,7 +24,6 @@ export default function Chat() {
const user = useSelector(userSelector);
const channel = useChannel();
const hasChannel = !!useSelector((state) => channelSelector(state, channel));
const historyLength = useSelector(historyLengthSelector);
const renderedChannel = renderChannel(channel);
const socket = useSocket();
useEffect(() => {
@ -43,10 +40,10 @@ export default function Chat() {
}
};
}, [channel, socket]);
const isAllowed = user.id > 0 || !!channel;
const isAllowed = user.id > 0 || channelIsAnonymous(channel);
useEffect(() => {
if (!isAllowed) {
dispatch(historyLength > 1 ? goBack() : replace('/'));
dispatch(replace('/'));
return;
}
if (channel) {

View File

@ -17,6 +17,7 @@
.chat--messagesList {
overflow-y: auto;
scrollbar-width: none;
}
.chat--messagesTextarea {

View File

@ -1,6 +1,10 @@
import {useEffect} from 'react';
import {useDispatch, useSelector} from 'react-redux';
import {useSocketPacket} from '@latus/socket/client';
import {useSocket, useSocketPacket} from '@latus/socket/client';
import {
reconnect,
} from '@reddichat/app/client';
import {
addMessage,
editMessage,
@ -22,6 +26,17 @@ import {
export default function Dispatcher() {
const dispatch = useDispatch();
const id = useSelector(idSelector);
const socket = useSocket();
useEffect(() => {
const onReconnect = async () => {
dispatch(reconnect(await socket.send(['ChatReconnect'])));
};
socket.on('reconnect', onReconnect);
return () => {
socket.off('reconnect', onReconnect);
};
}, [dispatch, socket]);
useSocketPacket((packet) => {
switch (packet.constructor.name) {
case 'AddFriend': {

View File

@ -1,9 +1,15 @@
import './index.scss';
import {isAnonymousSelector} from '@reddichat/user/client';
import React, {useEffect} from 'react';
import {useSelector} from 'react-redux';
import {Link} from 'react-router-dom';
import useBreakpoints from 'hooks/useBreakpoints';
export default function Home() {
const isAnonymous = useSelector(isAnonymousSelector);
const {desktop} = useBreakpoints();
useEffect(() => {
window.document.title = 'reddichat';
});
@ -12,14 +18,47 @@ export default function Home() {
<div className="home__inner">
<h1 className="home__title">Reddi? Chat!</h1>
<div className="home__bar">
{isAnonymous && (
<div className="home__login-wrapper">
<a className="home__login button" href="/auth/reddit">Touch to start</a>
</div>
<p className="home__instructions">
You will be sent to reddit to log in.
reddit will simply confirm your reddichat login and send you back here.
Then you can chat!
</p>
</div>
)}
{!isAnonymous && (
<div className="home__authenticated">
<p>
Those are some pretty
{' '}
<em>choice</em>
{' '}
logging in skills. Nice.
</p>
{desktop && (
<p>
Now that you&apos;re logged in you can see chats and friends on the left. On the
right are some links and a list of whoever is in a chat with you.
</p>
)}
{!desktop && (
<p>
Now that you&apos;re logged in you can swipe right to see chats and friends.
Swipe left for some links and a list of whoever is in a chat with you. There are
also those little buttons in the corners if you like that kind of thing.
</p>
)}
<p>
Now, go
{' '}
<Link to="/chat">find a chat</Link>
!
</p>
</div>
)}
<p className="home__anonymous">
If you are exceptionally brave (or particularly toxic), you may choose to
{' '}

View File

@ -41,9 +41,12 @@
padding-top: 1em;
text-align: center;
width: 100%;
@include breakpoint(desktop) {
padding-top: 2em;
}
.home p {
font-family: var(--title-font-family);
margin: 1em auto 0 auto;
text-align: center;
}
.home__login {
@ -59,15 +62,17 @@
}
}
.home__instructions {
p.home__instructions {
font-family: var(--message-font-family);
font-size: 1.5em;
line-height: 1.5em;
padding: 2em 0;
margin-top: 0.5em;
padding: 1.5em 0;
text-align: center;
width: 100%;
@include breakpoint(desktop) {
font-size: 2em;
padding: 1em 0;
}
}

View File

@ -904,8 +904,8 @@
"@latus/core@1.0.0", "@latus/core@^1.0.0":
version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@latus%2fcore/-/core-1.0.0.tgz#97189f74a47f61d7c1b83b2fffb966582aa98602"
integrity sha512-O44MYdcltXBN5dVSQDOjUt2b4YZiNFnmtEv7ypjk0P8Qfz04zqdSdSKU9uhrBw2+7E4VGwDFuL4LWRktdYMf0Q==
resolved "https://npm.i12e.cha0s.io/@latus%2fcore/-/core-1.0.0.tgz#e2a29fa134373b453c8bd999b8eec7fad6e242a9"
integrity sha512-Gvq1bCQrAnK5Naln6/Yehn5aoB6Y4xVMKV7fpq82AtefZ1FcwPJ4LV5haYG5cfygHvT4/uxYehIUb2cYDYJtag==
dependencies:
debug "4.3.1"
js-yaml "3.14.0"
@ -913,8 +913,8 @@
"@latus/db@^1.0.0":
version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@latus%2fdb/-/db-1.0.0.tgz#032124c98840e9b0015a10a5bde32807d083d996"
integrity sha512-pf2PSB9/szAd7ELj0DsVWzA4HDEU1BC9DMsAs+u83VaIC6S4VvBKNrSP2jhtPSCG/ldiYhwA3lEhro80acH8iw==
resolved "https://npm.i12e.cha0s.io/@latus%2fdb/-/db-1.0.0.tgz#4d15ca38eedd65951c4e278b023f22d5c3841f52"
integrity sha512-IwiwXdBkbPDYpWhTf0yk7W+goNkvIgAvWplELt7TN6du/x2ZoZTnqgpGi5bEnEQt7dAHI184sT98aslfLxkKMw==
dependencies:
"@latus/core" "^1.0.0"
debug "4.3.1"
@ -924,8 +924,8 @@
"@latus/governor@^1.0.0":
version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@latus%2fgovernor/-/governor-1.0.0.tgz#48b38131f287604d14b5be81a1f83a66d5a005ce"
integrity sha512-tzQ3kmrw3Vj7fXR8C36xqMVBQYCcnLqKOV6kR+oCryifiCcL0i7RAtGWg6VyN1zXfLQHatLI8yOY3bBBEiVZRQ==
resolved "https://npm.i12e.cha0s.io/@latus%2fgovernor/-/governor-1.0.0.tgz#4a30faa98fea64b371e0b2e3722f098b3eead09e"
integrity sha512-gDH3xpuwGPsyqAIsR7CBHZUfYDZ8jQP/2PmLnJ8N7v/GyZI8M12XNLxmQp7MFygxOGscFkj+4rYNAo/YLzeNCg==
dependencies:
"@latus/db" "^1.0.0"
"@latus/redis" "^1.0.0"
@ -935,8 +935,8 @@
"@latus/http@^1.0.0":
version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@latus%2fhttp/-/http-1.0.0.tgz#74eab385182f6af4a1bdc266c35a4c18207aafb6"
integrity sha512-OyVuXnkyEP6UOpIfNLo5XMWrzEc/VDOZWdf9wYDXEkSNfw3OMwp5xyC47KtLT+ZS0vUetCFbI5xvSgiMzthk6g==
resolved "https://npm.i12e.cha0s.io/@latus%2fhttp/-/http-1.0.0.tgz#cb53f6be8905979e4549d347311b601dd9d162c4"
integrity sha512-cQN+co1MIsctxgVUh4ffhii25dcNyqcHNdeIXhyzevavgQJJ4vstolr8nbq9NmNBZBguFK6KMuUDJC9YkT1+vg==
dependencies:
"@latus/core" "1.0.0"
"@neutrinojs/web" "^9.1.0"
@ -952,8 +952,8 @@
"@latus/react@^1.0.0":
version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@latus%2freact/-/react-1.0.0.tgz#4074b37bf9f149689c93e8a6a41f2f3fe8545894"
integrity sha512-vktm5f4DU1/ffTBijkq8ZlPp2S1aahlcyBu6H66rdW3K9uTSGLke+a4pd4YWJ54aIJFsNNaL1mAJYbu8laeCuQ==
resolved "https://npm.i12e.cha0s.io/@latus%2freact/-/react-1.0.0.tgz#47e7fc2d3c1f7ca75a473f33c44d89fd87f71e13"
integrity sha512-cpCsNKEEAcD3Rttn4cDnQ50qSuNMikyP+vYwiF4mf3+4DaLeI1VTVzqEWvngcAc0eu42HG2z8h0lxU4MALH74A==
dependencies:
"@neutrinojs/react" "^9.4.0"
debug "4.3.1"
@ -966,8 +966,8 @@
"@latus/redis@^1.0.0":
version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@latus%2fredis/-/redis-1.0.0.tgz#c029ffeac5e349f00cdb9a4f7a62e096164fbca5"
integrity sha512-0c9Ap1GO3WhGGPpOYsPzgoCyGMmlu0GFk+4vfSZ+L414FyY4RvjgcWXQjATVPfOHBPG2Vm+zKxHyyZt0no6E4w==
resolved "https://npm.i12e.cha0s.io/@latus%2fredis/-/redis-1.0.0.tgz#09ab3b73264dce6877c8b27c367b3f0870a8130b"
integrity sha512-1qHUXoBsiaGcLkEFjKi1M25fOvcV4A9uHkBgqnhuYSVJtr+EfcGTnkJU8/5tpoV7GxuCleml8uehaGpc7tp9vQ==
dependencies:
connect-redis "^5.0.0"
debug "4.3.1"
@ -978,15 +978,15 @@
"@latus/repl@^1.0.0":
version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@latus%2frepl/-/repl-1.0.0.tgz#493b075991d8370cf9592a4f75bcd4db1cf259e7"
integrity sha512-hfqcepLf7RKgprE/gK0klOkgZk8xFb5TNS5dZX1iBlKjxO6ynMzxLdmSmGu50BnaF2FgWgAWSUZQbpxEWcdUgg==
resolved "https://npm.i12e.cha0s.io/@latus%2frepl/-/repl-1.0.0.tgz#3a1c84af5980e4b6ac863eee3cd8ea467aade742"
integrity sha512-cpi0hCYq2MNQ3gbxt7hbHuxeBbaeZItr5LS/EuVv+dUt/cZ3poJekxX5VGvT1hhfAfb03vCku9X1mAhhd0VVyQ==
dependencies:
debug "4.3.1"
"@latus/socket@^1.0.0":
version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@latus%2fsocket/-/socket-1.0.0.tgz#485f1689c72aed2267b71a85d00240f6e532e9bf"
integrity sha512-7tEUVmYXhFnvRiPMlJqYitkHVqaqCKS0iPWGdSvm97VT4x5oQzxovz0szDUpWMR5DtmtODvf1ahHmXkfeLoWeQ==
resolved "https://npm.i12e.cha0s.io/@latus%2fsocket/-/socket-1.0.0.tgz#cd34d9855db01be00e3a3205c528e4c09cfb1b4e"
integrity sha512-iMTJPo2PZBhlOZnAgQ9hfUbIrjJfOwo9ugFRe0P9hB+oFnla1jtD0dCoxI9hh87iERRRG1+S4fXMyT+CTvQSmQ==
dependencies:
"@latus/core" "^1.0.0"
"@latus/http" "^1.0.0"
@ -1000,8 +1000,8 @@
"@latus/user@^1.0.0":
version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@latus%2fuser/-/user-1.0.0.tgz#354210687e52a2d52dc88f216035f3c8ec240376"
integrity sha512-zyCKsyE9eP6WHf0TmuKNwFPUX48Gn0AdzcPJVg3YO85h9VHKKV8zZ/hoYzGzJ7G7WDfxr3GfrGvqC/i2jM08PQ==
resolved "https://npm.i12e.cha0s.io/@latus%2fuser/-/user-1.0.0.tgz#f50d92426bc416c95a5058ba2552574d50db3e74"
integrity sha512-RttfD3om7iRPunYAKbHg35ICVzw+Lhj2d1n/MHrmZGKOoodkwSpSa85tkwgU6NJ3QXuLFnfk/TSY1x5Dcy0FJQ==
dependencies:
"@latus/db" "^1.0.0"
"@latus/socket" "^1.0.0"
@ -1174,322 +1174,322 @@
babel-merge "^3.0.0"
deepmerge "^1.5.2"
"@pixi/accessibility@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2faccessibility/-/accessibility-5.3.3.tgz#b7bab17e3cf5eb5f511471df943155a4eadf0c6e"
integrity sha512-wC/enJtw5CrdWnu6l5u3VN9UIZPumNSNXlGez2BULY0osiLTywHJPdHpmXMz2YPXw75GsEBzkEvK4LTtnTp21A==
"@pixi/accessibility@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2faccessibility/-/accessibility-5.3.4.tgz#248f2ff0fd24056f0254470a91187728f60b5e8d"
integrity sha512-g8hQnnVSYJ+gLrdQyCsDDSu+VehhVL9Pcr2fkQSC9VBhxiMIN+Paky8kOxC2LL5nsKRIUGGaTa6iHtiopPQQMw==
dependencies:
"@pixi/core" "5.3.3"
"@pixi/display" "5.3.3"
"@pixi/utils" "5.3.3"
"@pixi/core" "5.3.4"
"@pixi/display" "5.3.4"
"@pixi/utils" "5.3.4"
"@pixi/app@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2fapp/-/app-5.3.3.tgz#6357e2e5acc1ed118b7f94c1179cef55ce6ed59c"
integrity sha512-OkO7Kq3N+FPRshVmApuiHKBpobic56VYbLVCMYPy6rjV0hc5ctkchKGFyouJuPt/rHeI6FrqZ0TaON1TShnKiA==
"@pixi/app@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2fapp/-/app-5.3.4.tgz#a2f51c1ea0607db64eee8b7667dbb908f0ecc8ae"
integrity sha512-XT/EFyGslFdvdHY9ZS7yDAdLOj0U1UHeLxFr1kwiawuwIt/WsxNeH4jq2IijvZuQ3L5ON7Y7zQf54JEPv5fK0Q==
dependencies:
"@pixi/core" "5.3.3"
"@pixi/display" "5.3.3"
"@pixi/core" "5.3.4"
"@pixi/display" "5.3.4"
"@pixi/constants@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2fconstants/-/constants-5.3.3.tgz#faaed2d0ce364d67fe3e69ac97e9db1f6ad6c041"
integrity sha512-IybgxzLlEPm7ihp70cLNKc3IPyqkFuW+idk9Zw2St+OayJTw5ctCnLAg9cducwIVHjPYTvN46BYDa+n0KRWZYw==
"@pixi/constants@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2fconstants/-/constants-5.3.4.tgz#87630db2c3e2c9b20fddf38096087f2850b06628"
integrity sha512-YsWjdMVMoJA8kG/0D4s9/DWWa2lPlexk0qNZOcV3tICaPG0IYfIhepfveMeMhIb0QrdSAsPbhYdcaxxgoaNF1A==
"@pixi/core@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2fcore/-/core-5.3.3.tgz#4b973ee3d18f6324d63311e8a00a68ecb1996532"
integrity sha512-taw50LnzV+TQVMx5HQA2ZJgF9wuhZ6DeoXHW2KkevYB0ekKYnEO2VMMiRDMcmchtyvHclJebzjeHZLGqDtKDgw==
"@pixi/core@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2fcore/-/core-5.3.4.tgz#ebc2151f8bf11ccc9010aeb24a96ebab5e0bbdbc"
integrity sha512-k6SRniy4pH7ZKAKC2HkbLSKPm+j7bF17fTO5+6xLSiVqLnfa7ChV51wNuoa30olVF3/d8ME2uraf7dsvXwomzw==
dependencies:
"@pixi/constants" "5.3.3"
"@pixi/math" "5.3.3"
"@pixi/runner" "5.3.3"
"@pixi/settings" "5.3.3"
"@pixi/ticker" "5.3.3"
"@pixi/utils" "5.3.3"
"@pixi/constants" "5.3.4"
"@pixi/math" "5.3.4"
"@pixi/runner" "5.3.4"
"@pixi/settings" "5.3.4"
"@pixi/ticker" "5.3.4"
"@pixi/utils" "5.3.4"
"@pixi/display@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2fdisplay/-/display-5.3.3.tgz#14646b35b80b8586316be3495e3c0e7fa610f499"
integrity sha512-dPm7Vk2BH9byu6RHBYsI9MtjUU8x1HNm/PIi6lIlxANhTjWnhxwfvmrGE7ZcRLThTenNdDVlZ2ke2XAXP98UgA==
"@pixi/display@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2fdisplay/-/display-5.3.4.tgz#6a0e00a4b448f4cd3c68256dc2f4bf2689d77655"
integrity sha512-RCi39Qi1L8mlIu1YvWvPI45WpKHRbpYlvSIT/414wmoaAoFZnaJ+qoVuqDCfzfNhWWirGAWpXniQjNRzkUZjcA==
dependencies:
"@pixi/math" "5.3.3"
"@pixi/settings" "5.3.3"
"@pixi/utils" "5.3.3"
"@pixi/math" "5.3.4"
"@pixi/settings" "5.3.4"
"@pixi/utils" "5.3.4"
"@pixi/extract@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2fextract/-/extract-5.3.3.tgz#5ab8e2977823d0ea75db003e45d6c6d72bc2b642"
integrity sha512-CE0GA+tEBPurpaXER2B1aq1sdumKLtCqE/Mms6fYUkIKF9D0Ogw9rqo79QCL9XkLMexa7xVeC3KPPiXW5wrOaA==
"@pixi/extract@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2fextract/-/extract-5.3.4.tgz#8c11704b1152dd6470c21d7d0ed6064820d49d47"
integrity sha512-HTGF5WKts4kF0v1rOU4YcLMUpb18FzcxKhaCwjXpqm3vANgjuGAUL9PxpmC4ecS03mkRa0+9vAXEUkJLQeNLPg==
dependencies:
"@pixi/core" "5.3.3"
"@pixi/math" "5.3.3"
"@pixi/utils" "5.3.3"
"@pixi/core" "5.3.4"
"@pixi/math" "5.3.4"
"@pixi/utils" "5.3.4"
"@pixi/filter-alpha@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2ffilter-alpha/-/filter-alpha-5.3.3.tgz#2d3e10e8f42f787a5115e81b13265839b2162797"
integrity sha512-AxyHLnvO892va9raZbMMtMtEGDVqO8SvEHHNnCjTBEZ67kVKy0HEYXFOBA6nJZ6BiTgGp9js+7kevi11tfqnJQ==
"@pixi/filter-alpha@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2ffilter-alpha/-/filter-alpha-5.3.4.tgz#1503c11f123f3a0994d6a626741197267d6093e0"
integrity sha512-lgRCN8bDeHlMpRtQv/P5gCJ+9e3AufJVC2H0TdkCRmJqm1dB+rhKwxIeNINsjjz+kiuumOe88CxRbRd3CpEydg==
dependencies:
"@pixi/core" "5.3.3"
"@pixi/core" "5.3.4"
"@pixi/filter-blur@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2ffilter-blur/-/filter-blur-5.3.3.tgz#c530e40038dec1725a399753ac97faa3418559cf"
integrity sha512-vLN1DL6PQXo4p7j/32PZIf+lhcBVfb9hdphSmtbxlAlpbhMWI52n3YUkeInwHs7Ev08NyhI/UhNWHqjN/lAM3w==
"@pixi/filter-blur@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2ffilter-blur/-/filter-blur-5.3.4.tgz#78377b3dd20d34545087b152be1c5f0948128720"
integrity sha512-PYPHc8MEsZWfmVQkm0UKO70dmZpcWyu/Bs0xJa5apsmCm6zXNzXfMh02lsXu82HrNQ+9iJT/mAKrrDABGn9vtg==
dependencies:
"@pixi/core" "5.3.3"
"@pixi/settings" "5.3.3"
"@pixi/core" "5.3.4"
"@pixi/settings" "5.3.4"
"@pixi/filter-color-matrix@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2ffilter-color-matrix/-/filter-color-matrix-5.3.3.tgz#c1ecf83a44f68d78b5436b920b459c5222f373a5"
integrity sha512-HFr+vth5ZHHEFJYcjtWZ+O0s7Z2YWJyDyxr+nTd5Q8AT7gMDTVehpNVrm7ByaCKeEovOZzZI6A347+WmHcNpGg==
"@pixi/filter-color-matrix@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2ffilter-color-matrix/-/filter-color-matrix-5.3.4.tgz#d558413af89ca0435031c5f021430cbafb1ae5ca"
integrity sha512-9Iflvr1moc7ns5A/73lWVwLUbe+wb678NLA4X9SYXAJTiij4M1isDrULhk95TGUaWo4bbSBaov1vm8XbUZNG8w==
dependencies:
"@pixi/core" "5.3.3"
"@pixi/core" "5.3.4"
"@pixi/filter-displacement@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2ffilter-displacement/-/filter-displacement-5.3.3.tgz#f25193f738b90cc75cd04bbbcd0aefe9ea037af1"
integrity sha512-kvrKMgqW4ELg+yT2p5vmu6h/IER/L8GD1PWyXovnzpI8RG7k8l136F9VvA3wkB6sYuNcXiDtqMtRQy5e6O4+rw==
"@pixi/filter-displacement@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2ffilter-displacement/-/filter-displacement-5.3.4.tgz#1132d54e1ec9fb3a05e86e6dd2f4251587fb128d"
integrity sha512-CldemXpcKr1GRT1Ll33TTFWtU6KDl4sYTvAwWTAEu8OhKedobBB/mRCIK9p1h7iZYtaj5MRYQjewmFKRrqyXrQ==
dependencies:
"@pixi/core" "5.3.3"
"@pixi/math" "5.3.3"
"@pixi/core" "5.3.4"
"@pixi/math" "5.3.4"
"@pixi/filter-fxaa@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2ffilter-fxaa/-/filter-fxaa-5.3.3.tgz#c7701631d60f485b6ec1052f71afb0637ca5f0b8"
integrity sha512-p4vKdBwaoGRNZcoHz2ET8hBF1SoWvy9xU2B3Ci32+c0dg89ZUdGTEW0zimUHi2gMdU+2v/T0lqZ9NC9B6WVYAg==
"@pixi/filter-fxaa@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2ffilter-fxaa/-/filter-fxaa-5.3.4.tgz#57518b9b82037af588e9a857998d2526fd96bc71"
integrity sha512-GtIfaOsqQlsK+F1795V/JJIq5Uu15nasiCwGr+wVwHNGMBanAXt7AnSy8JHcgup3Eqx8FXRuM/AyD/4IYUquuA==
dependencies:
"@pixi/core" "5.3.3"
"@pixi/core" "5.3.4"
"@pixi/filter-noise@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2ffilter-noise/-/filter-noise-5.3.3.tgz#5d821d9f83f97d83d4be52f3ecc7e2d06ff1c084"
integrity sha512-HCky3XPk6BYGXTS7d9/FnAHnqq7Rwm5Rlj2XtWW3JItXGCScEBII227xYwrJu5Ke84tpVlDXK4W1/BevZ1AwlQ==
"@pixi/filter-noise@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2ffilter-noise/-/filter-noise-5.3.4.tgz#15e3a4f77eb24741f99bb0dad197d375e77cecb4"
integrity sha512-pNq4T4LC2naWz0pZXF3RT9aA7XdLL4TuBjJsYrrBaJZraupbOo6Mp8VwxVJs8GThmMl7/U13GalOzVSb/HjzDg==
dependencies:
"@pixi/core" "5.3.3"
"@pixi/core" "5.3.4"
"@pixi/graphics@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2fgraphics/-/graphics-5.3.3.tgz#cfaf5a0a94a811f7359c20875547c14095f1ecec"
integrity sha512-1bn9Jptg3JXgVOw0SrEMdmjSwkTBYDm6fPnPnh4goF3yDozh0xEqmXobVtCgy2fulMfHRzIfbgtRxrBf2mkCAg==
"@pixi/graphics@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2fgraphics/-/graphics-5.3.4.tgz#e0944e1310509bcb23f4067c83a6ac55945cb1e2"
integrity sha512-W6cuFfzwgfx3zVFICu98cENgwjy+d2e6xNJ/yJI0q8QiwlZmpuSXHBCfZrtIWpp9VSJZe2KDIo1LUnLhCpp3Yg==
dependencies:
"@pixi/constants" "5.3.3"
"@pixi/core" "5.3.3"
"@pixi/display" "5.3.3"
"@pixi/math" "5.3.3"
"@pixi/sprite" "5.3.3"
"@pixi/utils" "5.3.3"
"@pixi/constants" "5.3.4"
"@pixi/core" "5.3.4"
"@pixi/display" "5.3.4"
"@pixi/math" "5.3.4"
"@pixi/sprite" "5.3.4"
"@pixi/utils" "5.3.4"
"@pixi/interaction@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2finteraction/-/interaction-5.3.3.tgz#07348e7d25b8e67473ed54f679ebe84ab9ee0400"
integrity sha512-Tjuw4XwmrG1fhGzfn5oGspRJT2OtlH+6V7AHscH0v5Ht1Kvk6aKjNncZuSCXllhGGlIuMu3Nn9WPvDEIvW3JNw==
"@pixi/interaction@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2finteraction/-/interaction-5.3.4.tgz#9d382206444c0c75a684c7ae1fc9c1d38ac59632"
integrity sha512-7/JN7AtCuYmmWczrQROKSI9Z42p6C6p7B2wDVqNYYgROSaeGbGsZ8H0sa6nYLnIj4F3CaGSRoRnAMPz+CO70bw==
dependencies:
"@pixi/core" "5.3.3"
"@pixi/display" "5.3.3"
"@pixi/math" "5.3.3"
"@pixi/ticker" "5.3.3"
"@pixi/utils" "5.3.3"
"@pixi/core" "5.3.4"
"@pixi/display" "5.3.4"
"@pixi/math" "5.3.4"
"@pixi/ticker" "5.3.4"
"@pixi/utils" "5.3.4"
"@pixi/loaders@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2floaders/-/loaders-5.3.3.tgz#d415f25f9af64d97810e459caa2c0aca4b6a1b7c"
integrity sha512-wj0DzniApfDoZA/buMmO/CgCB7Q7SsESForHh7wSd7UC8rrCmz5prUTEICmJGhdHpBuVB7KDPtwaaLtr9Q/kQg==
"@pixi/loaders@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2floaders/-/loaders-5.3.4.tgz#22e872a965f0f7ab43a6e4766f656b07e569752f"
integrity sha512-/dFznZnsivzq/MW7n/PPhMeznWFMMDYrac958OlxzSwrEAgtq6ZVLZbz7pCf9uhiifMnqwBGefphOFubj3Qorw==
dependencies:
"@pixi/core" "5.3.3"
"@pixi/utils" "5.3.3"
"@pixi/core" "5.3.4"
"@pixi/utils" "5.3.4"
resource-loader "^3.0.1"
"@pixi/math@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2fmath/-/math-5.3.3.tgz#5d40d36fa1701e195083adb84bddf2f6420c2f4c"
integrity sha512-k5C3kQpxlGm2AdBJEUjjW2l2YlSvTKf+54vNOjD4UcEfRoDevC5p4Zg49q3UAu855lrs5qw49AbkrFKsQvPIRA==
"@pixi/math@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2fmath/-/math-5.3.4.tgz#cd2163a2184a46a7c87e9b10c7948c6a075cec4f"
integrity sha512-UQ2jhdlCHIvAVf8EcHB3QuR5GhB49VdTccWmer96RZCeGkcZsPSUk1ldO1GZnIctcf0Iuvmq74G02dYbtC7JxQ==
"@pixi/mesh-extras@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2fmesh-extras/-/mesh-extras-5.3.3.tgz#99c712fdb1b0a9db66fd95a76de26361a7055ab4"
integrity sha512-V2hARC7nUPaTEFxd+B8GDkSMrMZ38S8/IInqtYzGUy6FtFs7IYKty9Rz/G665eN7ThIq8tZrOVZOl6JRBtEC8A==
"@pixi/mesh-extras@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2fmesh-extras/-/mesh-extras-5.3.4.tgz#2370e458611d82c8ce4d68adaf6383f01f8f5720"
integrity sha512-mjc3RlgLGYUv2FUKrVv/Dfaj2KW5qhX9c6Ev+yJ4lg/sMblet5gtYuyKsmJMS/K6B8V8+oMlTfX9ozFCzq1oJQ==
dependencies:
"@pixi/constants" "5.3.3"
"@pixi/core" "5.3.3"
"@pixi/math" "5.3.3"
"@pixi/mesh" "5.3.3"
"@pixi/utils" "5.3.3"
"@pixi/constants" "5.3.4"
"@pixi/core" "5.3.4"
"@pixi/math" "5.3.4"
"@pixi/mesh" "5.3.4"
"@pixi/utils" "5.3.4"
"@pixi/mesh@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2fmesh/-/mesh-5.3.3.tgz#f0adf0362c18e6e7646b7abaccec47d304cbb405"
integrity sha512-q8w70oAFNdArzOHVnsn7ban68NmO5S5TMg6qSez4A8te6cebMRQsNrT/0dQ/nZcG7ACFK4jiYfbXRQivO+jgVA==
"@pixi/mesh@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2fmesh/-/mesh-5.3.4.tgz#3b1ce4c6686e6524bf0fd920d568a3175826c82b"
integrity sha512-y0Y52cwsqETc/35DMGVCzQmhPCrQ3ZhjWcW9JwQoHMy3PoNSN9QUqYjVjF2oEj5hxcJnGNo3GAXFZz2Uh/UReQ==
dependencies:
"@pixi/constants" "5.3.3"
"@pixi/core" "5.3.3"
"@pixi/display" "5.3.3"
"@pixi/math" "5.3.3"
"@pixi/settings" "5.3.3"
"@pixi/utils" "5.3.3"
"@pixi/constants" "5.3.4"
"@pixi/core" "5.3.4"
"@pixi/display" "5.3.4"
"@pixi/math" "5.3.4"
"@pixi/settings" "5.3.4"
"@pixi/utils" "5.3.4"
"@pixi/mixin-cache-as-bitmap@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2fmixin-cache-as-bitmap/-/mixin-cache-as-bitmap-5.3.3.tgz#cac6a2ecf3b72fbae58ab3657998360ddbda7382"
integrity sha512-P1mo3HKDWS8IZLgaP8gujiy4We4vRcxJH6EvQAevf+GsBzdjKfcGgkKzVb9HlyQvsXML5gpTOJuw5eKgRTxSQA==
"@pixi/mixin-cache-as-bitmap@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2fmixin-cache-as-bitmap/-/mixin-cache-as-bitmap-5.3.4.tgz#5cdbc578e69d43cfc6677ca12b945789b50168a5"
integrity sha512-8ZAmzDK1fHXIzYFHFH72LUMRZerY1Pt71XI3UgsWExABS1aREe20oPLuVByLP94W7X/kTXz+zK+nt51O5MGKsA==
dependencies:
"@pixi/core" "5.3.3"
"@pixi/display" "5.3.3"
"@pixi/math" "5.3.3"
"@pixi/settings" "5.3.3"
"@pixi/sprite" "5.3.3"
"@pixi/utils" "5.3.3"
"@pixi/core" "5.3.4"
"@pixi/display" "5.3.4"
"@pixi/math" "5.3.4"
"@pixi/settings" "5.3.4"
"@pixi/sprite" "5.3.4"
"@pixi/utils" "5.3.4"
"@pixi/mixin-get-child-by-name@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2fmixin-get-child-by-name/-/mixin-get-child-by-name-5.3.3.tgz#828dc9a7beae603648ebe2ccb67517c7137bff19"
integrity sha512-CksDZ5ZG4/tHZfDOwSuznANduasJg5JR89X3D6E9DVYx4CLVE3G2K1sbeiOJNXfGIKy30UoSD7Y7IFmUzLxp/g==
"@pixi/mixin-get-child-by-name@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2fmixin-get-child-by-name/-/mixin-get-child-by-name-5.3.4.tgz#ab64fb820adb76a287ea70c3b26f8353dc48d2f0"
integrity sha512-PY1Qe6CKYu+UNSRAFIfRyhRfkrpsTMwh9sI6iXVVi712bM3JkZIwDfDF31TA4nYX8z7H49w+KCWY4PejZ8l2WA==
dependencies:
"@pixi/display" "5.3.3"
"@pixi/display" "5.3.4"
"@pixi/mixin-get-global-position@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2fmixin-get-global-position/-/mixin-get-global-position-5.3.3.tgz#5700b03794e5b21f61c015aeda733c3cb625fc75"
integrity sha512-M3faQYDW/ISa1+lhVkjHXRALJ33BMzLN+7x9ucx8VeCmUWvcaLlRo3CaxZsgiR+52Fii5WHl/PF/cMzdkRMF9g==
"@pixi/mixin-get-global-position@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2fmixin-get-global-position/-/mixin-get-global-position-5.3.4.tgz#632a7249132b466b32c274252452f4565e0ee80c"
integrity sha512-yv+huwUAOfyXDEHbQp6W5/3RjQpwG6AhpgMY4b3XBMtvrp9R/5Wgw/YC/nea9kZ3Gb2u4Aqeco8U+tPIRNjeIA==
dependencies:
"@pixi/display" "5.3.3"
"@pixi/math" "5.3.3"
"@pixi/display" "5.3.4"
"@pixi/math" "5.3.4"
"@pixi/particles@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2fparticles/-/particles-5.3.3.tgz#3e9d2d317d6cd11a3736830dfbd4cc0c3a1082c8"
integrity sha512-t+lG8iGNYyS6ujKvC9qQjKzyxvjxqbFxvB6hkXcOKR98JWM2726ZguHouFlIbOzOxYAGoeuHIWSDlnQNvnVE2g==
"@pixi/particles@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2fparticles/-/particles-5.3.4.tgz#587159fe8fcda63687d34868f7e6aaa08fe447bd"
integrity sha512-sX0BGGbS7yCwlam1mC5awW2BjU7QFmZv82E8ON/r9aAZS6InT25zOpMdvy0ImIIqBvF0Z1Qz1IT6pKEBxqMo9Q==
dependencies:
"@pixi/constants" "5.3.3"
"@pixi/core" "5.3.3"
"@pixi/display" "5.3.3"
"@pixi/math" "5.3.3"
"@pixi/utils" "5.3.3"
"@pixi/constants" "5.3.4"
"@pixi/core" "5.3.4"
"@pixi/display" "5.3.4"
"@pixi/math" "5.3.4"
"@pixi/utils" "5.3.4"
"@pixi/polyfill@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2fpolyfill/-/polyfill-5.3.3.tgz#4d0050b0bb75a7b51841f7bfec4c29243a605be7"
integrity sha512-gmx67A6VmwKllxfIMQWzMUNJ8wJfWPT5FlUR0SoPastdTB/SfbgbyQBgKLZHqgmc6LOh2CrOLhN423lNiAroeA==
"@pixi/polyfill@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2fpolyfill/-/polyfill-5.3.4.tgz#e3fc385f06f2a488c616ab6c1c764368c2f8cdb6"
integrity sha512-bxk8bhrfQ9Y2rU/L0ss2gIeXwmMlOciw+B5yVUDVLqzjE4y8Fm2619L4qu9v51Z9a+8JbyVE5c1eT7HJgx0g0w==
dependencies:
es6-promise-polyfill "^1.2.0"
object-assign "^4.1.1"
"@pixi/prepare@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2fprepare/-/prepare-5.3.3.tgz#a3466ecf5256a5c3fb9b86a555db17cc72d54c87"
integrity sha512-DPsKWfYJ97J67YCjPU6uvU+LBdw+64O9LG9vmzfChmYXom5VMQF9yUC6ZoYTHUPmH31iilqzGeMlPUTobnqSog==
"@pixi/prepare@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2fprepare/-/prepare-5.3.4.tgz#1a96c8dad399c0a0d12c9d7ee5dee44413a0d3dc"
integrity sha512-MVMvNTrNYQidWXd4LSkgv+eqTzHtSViADA+Tvnemy9QMuWqbTfxFn4UMhrBjQIfG9+hwdIFS14pfFKt/BLHNrw==
dependencies:
"@pixi/core" "5.3.3"
"@pixi/display" "5.3.3"
"@pixi/graphics" "5.3.3"
"@pixi/settings" "5.3.3"
"@pixi/text" "5.3.3"
"@pixi/ticker" "5.3.3"
"@pixi/core" "5.3.4"
"@pixi/display" "5.3.4"
"@pixi/graphics" "5.3.4"
"@pixi/settings" "5.3.4"
"@pixi/text" "5.3.4"
"@pixi/ticker" "5.3.4"
"@pixi/runner@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2frunner/-/runner-5.3.3.tgz#79fb35b12620d7724c65f4a7aa507190ea825ac0"
integrity sha512-7eLZxxT+PwxuwzcRL1egrnEdLHwD41yFb24pMSo6XM86ppP1tdBjrv5+pLDnUuDEfNjZQxx07FAlZY+sMKANmw==
"@pixi/runner@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2frunner/-/runner-5.3.4.tgz#e08040b1fc983357b57ab314590880d80369a916"
integrity sha512-iPWHVhv2js+NhDQNmePkHfic8SilBT7H/pzRjMqHqvafTdl8Y+4g+hdQDalZJNr3Ixl77QPAYlOKhegBujn2mQ==
"@pixi/settings@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2fsettings/-/settings-5.3.3.tgz#3ff5f8afc8376d12c7627be043ec317eba139dcd"
integrity sha512-1MYJokqpPUtvYEX0BVi0Pq2Xi6KGmWDV5hlQnTXY9NGv6tmqrPYvIb/uHFaDyVUWmrqsFL3xZ4W5zMo+c/dwVA==
"@pixi/settings@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2fsettings/-/settings-5.3.4.tgz#55b659591f98e6d7f4e436ad923c2355a23ef6d8"
integrity sha512-Jqj1NLtYODCqK8ZKVccUBAaBDkn7SQ6b7N15FwxbiSgfbvwpynSKr6WQTxqMq29h42MKsic6BJcQrlGEbDNz5w==
dependencies:
ismobilejs "^1.1.0"
"@pixi/sprite-animated@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2fsprite-animated/-/sprite-animated-5.3.3.tgz#f24949ae04aeff9ff44e22544bc8b7f336d5209e"
integrity sha512-nG5j8veJ/cFXQTgzafPLkZqaHKbuaHcIj+ZYN1I2f31Y85/pfr2PQQLHbGr+3441wOYkEHht9nHhmZHWlOOZ0Q==
"@pixi/sprite-animated@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2fsprite-animated/-/sprite-animated-5.3.4.tgz#253cadc4faae59a01fcd7f98e4e1143a3c288b67"
integrity sha512-HaTelbvm2xekw9b9GdYbupM2RZ/muRZvstkmSqMZhiIViZekzKPa5WQJwnqZzVBjCg735j09G8aF4H2NpNqF9g==
dependencies:
"@pixi/core" "5.3.3"
"@pixi/sprite" "5.3.3"
"@pixi/ticker" "5.3.3"
"@pixi/core" "5.3.4"
"@pixi/sprite" "5.3.4"
"@pixi/ticker" "5.3.4"
"@pixi/sprite-tiling@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2fsprite-tiling/-/sprite-tiling-5.3.3.tgz#d7306256b7bf6f13c181ea4a2d95905f5ae69b9d"
integrity sha512-+Xk9AUh82rpArtrnZkw+9aJchrmHZ8QkpjsPRJcgPFHx3WEfABIkT6QEoYbRKiYH34OgO7ZOUXy9hcGPHnxjvw==
"@pixi/sprite-tiling@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2fsprite-tiling/-/sprite-tiling-5.3.4.tgz#ca71f24d0f62b752145051b534a4c1060b40c516"
integrity sha512-NMqpNuWEIic2n5EL/TrGmn1+bab4TwxcILnco4myvw9Sd/wLsaJx3XboegY7YCWCKhnl+Ax6cl8DMkk7OJkpJQ==
dependencies:
"@pixi/constants" "5.3.3"
"@pixi/core" "5.3.3"
"@pixi/display" "5.3.3"
"@pixi/math" "5.3.3"
"@pixi/sprite" "5.3.3"
"@pixi/utils" "5.3.3"
"@pixi/constants" "5.3.4"
"@pixi/core" "5.3.4"
"@pixi/display" "5.3.4"
"@pixi/math" "5.3.4"
"@pixi/sprite" "5.3.4"
"@pixi/utils" "5.3.4"
"@pixi/sprite@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2fsprite/-/sprite-5.3.3.tgz#1681d5fd0a725581bfee3c9c2c490537bf8d21ea"
integrity sha512-qo7DG0oWS1uIBqfxw2jZPn34RCR6gQ+IjZRBpFxZPKPB1cL359scZmDBqBbQ4bd4rJ/6QXQfzUdGhXfQJtc9oQ==
"@pixi/sprite@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2fsprite/-/sprite-5.3.4.tgz#c2f128b304b0dfa25bf34f613985c8ce570ca674"
integrity sha512-vO+GMJWnumnVzc2R7jGcLlUeIXIek+SDqVQyPDPJ5T8sWTgFhanHCrgpKfplZIu08X/zvIZQxPfd332R0waeog==
dependencies:
"@pixi/constants" "5.3.3"
"@pixi/core" "5.3.3"
"@pixi/display" "5.3.3"
"@pixi/math" "5.3.3"
"@pixi/settings" "5.3.3"
"@pixi/utils" "5.3.3"
"@pixi/constants" "5.3.4"
"@pixi/core" "5.3.4"
"@pixi/display" "5.3.4"
"@pixi/math" "5.3.4"
"@pixi/settings" "5.3.4"
"@pixi/utils" "5.3.4"
"@pixi/spritesheet@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2fspritesheet/-/spritesheet-5.3.3.tgz#e307400d0afe4aa6e1d8d756a519e391706b5f35"
integrity sha512-pTkOCTL8jsmyAguCgcbz03UPYu+3buRkgua1g/vGyeoZBN2eJ04iSXdB0pfPrsPisxkvThGHyU23UqEDYVtXRQ==
"@pixi/spritesheet@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2fspritesheet/-/spritesheet-5.3.4.tgz#23b059c154be61aaab1259628693038c7faff8e2"
integrity sha512-gfCqOMD2XJHw1bMXxXbuYPnBbCBUvbzMN7Pw2po7U5R6bsk7WEoG7Hp3HjAPyPQvg36v2Db6dcz0//ZNNqm+EQ==
dependencies:
"@pixi/core" "5.3.3"
"@pixi/loaders" "5.3.3"
"@pixi/math" "5.3.3"
"@pixi/utils" "5.3.3"
"@pixi/core" "5.3.4"
"@pixi/loaders" "5.3.4"
"@pixi/math" "5.3.4"
"@pixi/utils" "5.3.4"
"@pixi/text-bitmap@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2ftext-bitmap/-/text-bitmap-5.3.3.tgz#0d658473d6e02ce598f779c207c42333741e15bd"
integrity sha512-QRRdEAFBwmRctp8PCPii5WUPM57T1I3r/EwyTvFCCDubOYOZu4aX/iFpCKZMl5GIphDFaGp8mNvbl+BwjUmBCA==
"@pixi/text-bitmap@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2ftext-bitmap/-/text-bitmap-5.3.4.tgz#f7ec6704df85ba912001e79714581c10bbfb4982"
integrity sha512-uNJOYvy3sn0S5Bp6H113ZAmaQm68ojCXSuOBJzIMEV2cUuYLngW+7DqKOsHMMhNmcONs/OBq57SRrzDcr8WYdw==
dependencies:
"@pixi/core" "5.3.3"
"@pixi/display" "5.3.3"
"@pixi/loaders" "5.3.3"
"@pixi/math" "5.3.3"
"@pixi/mesh" "5.3.3"
"@pixi/settings" "5.3.3"
"@pixi/text" "5.3.3"
"@pixi/utils" "5.3.3"
"@pixi/core" "5.3.4"
"@pixi/display" "5.3.4"
"@pixi/loaders" "5.3.4"
"@pixi/math" "5.3.4"
"@pixi/mesh" "5.3.4"
"@pixi/settings" "5.3.4"
"@pixi/text" "5.3.4"
"@pixi/utils" "5.3.4"
"@pixi/text@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2ftext/-/text-5.3.3.tgz#d6fc00c52bc054450ae43e2d5c6f7cedcee9ecd2"
integrity sha512-juinZC2yFXnzucWWxSdty9nfIIOAq2WA8DD2k40YL+7Y5L52/ggkgnokeQ2lrTb1BvTfx6YVNlvAsKonUek0Og==
"@pixi/text@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2ftext/-/text-5.3.4.tgz#c620faaf0b9fe3cded5cb33a17115bd90d2efd00"
integrity sha512-kmdK1KLrWY8PHGIIXKVRQmik3gWquiYz6DB0jqabi3j0gVp6h+CVDje01N6Nl75ZCQ/PjaWafzQvURypfX73ng==
dependencies:
"@pixi/core" "5.3.3"
"@pixi/math" "5.3.3"
"@pixi/settings" "5.3.3"
"@pixi/sprite" "5.3.3"
"@pixi/utils" "5.3.3"
"@pixi/core" "5.3.4"
"@pixi/math" "5.3.4"
"@pixi/settings" "5.3.4"
"@pixi/sprite" "5.3.4"
"@pixi/utils" "5.3.4"
"@pixi/ticker@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2fticker/-/ticker-5.3.3.tgz#a8766d8417879fffd7507175de869805aee25eb2"
integrity sha512-p5F/dwJGwfZWUg5cCPqOnEx5iYGW+huQlZZtrTKKd1KoVehFsrzHeRBOEp4d584jsOmBf7fjJaUTyzsFn0YtOQ==
"@pixi/ticker@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2fticker/-/ticker-5.3.4.tgz#24600d6f9c721c48554812aa187b968bb0c2a3b9"
integrity sha512-PmCAstgyI6vLPXKZVFlo4Zornry21BwFiTOp1dBUW3sIMky9Wx2fajjyVHIridCY6yaazt6Xu37khZf5qRgASw==
dependencies:
"@pixi/settings" "5.3.3"
"@pixi/settings" "5.3.4"
"@pixi/utils@5.3.3":
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/@pixi%2futils/-/utils-5.3.3.tgz#525321f3bb00e3e001e341020a3edee94cc0d00a"
integrity sha512-GDP2h1Mph9Uei4zmJjzDK6GZ5S9O2A09VySVfWyKgWwP3SQ/Ss0bGYm4sE6+u1NMSz1WCrLgu66H82XuXs2Cbg==
"@pixi/utils@5.3.4":
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/@pixi%2futils/-/utils-5.3.4.tgz#62e9a7ea59de7e4a4b108568de92a1c64026e816"
integrity sha512-HjUWFfAmPPKX0BSq20GWY//Vm+gC9O+wcn9sXMqOItCuf0DDFwxoBrUVaHNNnEVhM1Djpz/+YijCijmGdZeddA==
dependencies:
"@pixi/constants" "5.3.3"
"@pixi/settings" "5.3.3"
"@pixi/constants" "5.3.4"
"@pixi/settings" "5.3.4"
earcut "^2.1.5"
eventemitter3 "^3.1.0"
url "^0.11.0"
"@reddichat/app@^1.0.0":
version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@reddichat%2fapp/-/app-1.0.0.tgz#2ab024c5232685dc5f1725742e267b9fb1a7359f"
integrity sha512-cNhB1+cLBDHSbzi6v3TWJx3i0lkgOpQNfj17dKh5i3TmhqLVRDRq1wQqcbUaVm1wnYpMp+QxAs1yB88tL6+lWg==
resolved "https://npm.i12e.cha0s.io/@reddichat%2fapp/-/app-1.0.0.tgz#61b7b4bcaa7909e27061a1d2d4491a16048b812c"
integrity sha512-kjG70MD2DalgrtV7uzli1qeLkJLQ1wQLO46d7mMT2NN1/IS5sBOVl5speHKpBP4DgAsrc88aadyBmkDDFlpJ1Q==
dependencies:
"@reddichat/state" "^1.0.0"
"@reduxjs/toolkit" "^1.5.0"
@ -1498,8 +1498,8 @@
"@reddichat/chat@^1.0.0":
version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@reddichat%2fchat/-/chat-1.0.0.tgz#18f61bcbd6d93184fed6e7b20e4710b754a6949c"
integrity sha512-0Q3Rq+HX+mPslAaJeMMPcvwADU/CewE14pwzXjLtwZfyGTcE1G02sxypXWQCcIc2kJ9RA9LdU8U7kikPOo7YPA==
resolved "https://npm.i12e.cha0s.io/@reddichat%2fchat/-/chat-1.0.0.tgz#0dbb29bd25416e101f293bf85a3b51386aec2b03"
integrity sha512-uS+zKN5MU5QlAcgisx3xhEqKuf2PNk+zXqlwCeqUgSOEQz2EgeSD/VRS/qoQZNvhXXTilRN8b4izMrhyZE1bYA==
dependencies:
"@latus/core" "^1.0.0"
"@latus/db" "^1.0.0"
@ -1512,28 +1512,30 @@
"@reduxjs/toolkit" "^1.5.0"
connected-react-router "^6.8.0"
debug "4.3.1"
deepmerge "^4.2.2"
msgpack-lite "^0.1.26"
node-fetch "^2.6.1"
uuid "^8.3.2"
"@reddichat/core@^1.0.0":
version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@reddichat%2fcore/-/core-1.0.0.tgz#dd398b01525f529af0bb9918d34d7be82e65b882"
integrity sha512-GsO4dCx0Gn+xKpu04Y1rdmTAj1PdoAyte9+U50wJzvCfOB4LsvnpuNwHM9XKbolWbMehKk26bHC+3xqulf/qIg==
resolved "https://npm.i12e.cha0s.io/@reddichat%2fcore/-/core-1.0.0.tgz#ee5ea79c2b6e6ac078ca6fab43f0d6929b2cc73e"
integrity sha512-pK87zIuwFLOBGNE1ZkvsPZTwbQjxbkbwnX3rx1+zCq32EaHiitXu+UBuBZypPhHcmNkcZgPeTrnh0vQXrgGLsw==
dependencies:
debug "4.3.1"
"@reddichat/fun@^1.0.0":
version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@reddichat%2ffun/-/fun-1.0.0.tgz#5eb02712148bd5f39073e33743f4d7113c216df1"
integrity sha512-mV7xbBDj46rLLBhqstDJPi03B513Sc4ZNe6HjkRL893caPgn4M2HGG3n+zMX3OT4c+WRhpocWGsQfgc4Nuv2NA==
resolved "https://npm.i12e.cha0s.io/@reddichat%2ffun/-/fun-1.0.0.tgz#2ee28aa690f4edd798f5c451515b3507894ac9ae"
integrity sha512-t/Q3wEig0J23Vr+ow+3v9D9DD5blbexWjhQbkhktOiweZLNlUnt228AAECkBl3S840gP1N8lkzBPKBOl1DAHHQ==
dependencies:
debug "4.3.1"
pixi.js "^5.3.3"
"@reddichat/state@^1.0.0":
version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@reddichat%2fstate/-/state-1.0.0.tgz#5af14ce8e4c35b2c5c09861fac81e4d2932b0452"
integrity sha512-IXQujStJ8HaqHSEbjTxYvnC53y7zuIyDw096MJQ9QPzXmUnWywnoiCjlcPTiIEX84s9tAyb2CimSbiWN5G2BSw==
resolved "https://npm.i12e.cha0s.io/@reddichat%2fstate/-/state-1.0.0.tgz#54ca84fd75929224def3af2c30f0ca2ff1be6fb9"
integrity sha512-sIF3Q7nSPzxCr+XHNsw2X/NA4iZn6DpXXkpH0ne+hCYSfz9yMlpDCVbn/y4VERGfJzCi2TCkITrg1CotUMQZXw==
dependencies:
"@latus/core" "^1.0.0"
"@latus/db" "^1.0.0"
@ -1548,8 +1550,8 @@
"@reddichat/user@^1.0.0":
version "1.0.0"
resolved "https://npm.i12e.cha0s.io/@reddichat%2fuser/-/user-1.0.0.tgz#4fae0dbe063bdd0fba36cca79016e90810b1c100"
integrity sha512-PTjsWZ3fcdSz9w7yINpwsQGEJl1Izsn4n3WGjdjeEbkQZSyg4j7srHARzzD2eO+QxO/j1f2BiSAkE7WTcFHa+A==
resolved "https://npm.i12e.cha0s.io/@reddichat%2fuser/-/user-1.0.0.tgz#99f75135e46e339f16f147bb7ebcdc5028f38d5e"
integrity sha512-rqhBR7/c1jR553TiOr1HoA8TpMY9Dlkpj8O2fgOfxP57ooaBohtXWmw4cHnldepszeTYycYW+fCkGOZi/fqvsA==
dependencies:
"@latus/db" "^1.0.0"
"@latus/socket" "^1.0.0"
@ -3605,9 +3607,9 @@ ee-first@1.1.1:
integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=
electron-to-chromium@^1.3.621:
version "1.3.625"
resolved "https://npm.i12e.cha0s.io/electron-to-chromium/-/electron-to-chromium-1.3.625.tgz#a7bd18da4dc732c180b2e95e0e296c0bf22f3bd6"
integrity sha512-CsLk/r0C9dAzVPa9QF74HIXduxaucsaRfqiOYvIv2PRhvyC6EOqc/KbpgToQuDVgPf3sNAFZi3iBu4vpGOwGag==
version "1.3.626"
resolved "https://npm.i12e.cha0s.io/electron-to-chromium/-/electron-to-chromium-1.3.626.tgz#48acdf322be07feb2c1330ba05e4bf6327f721a3"
integrity sha512-7CanEvJx74EnvjHu1X8gf93KieyxvFLnqOXAH/ddjWD4RrUZYqdg3pykrQ/7t6SLI7DTsp4tfQXEfzeK5t6oAw==
elliptic@^6.5.3:
version "6.5.3"
@ -4068,6 +4070,11 @@ etag@~1.8.1:
resolved "https://npm.i12e.cha0s.io/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887"
integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=
event-lite@^0.1.1:
version "0.1.2"
resolved "https://npm.i12e.cha0s.io/event-lite/-/event-lite-0.1.2.tgz#838a3e0fdddef8cc90f128006c8e55a4e4e4c11b"
integrity sha512-HnSYx1BsJ87/p6swwzv+2v6B4X+uxUteoDfRxsAb1S1BePzQqOLevVmkdA15GHJVd9A9Ok6wygUR18Hu0YeV9g==
eventemitter3@^3.1.0:
version "3.1.2"
resolved "https://npm.i12e.cha0s.io/eventemitter3/-/eventemitter3-3.1.2.tgz#2d3d48f9c346698fce83a85d7d664e98535df6e7"
@ -5073,7 +5080,7 @@ icss-utils@^4.0.0, icss-utils@^4.1.1:
dependencies:
postcss "^7.0.14"
ieee754@^1.1.4, ieee754@^1.2.1:
ieee754@^1.1.4, ieee754@^1.1.8, ieee754@^1.2.1:
version "1.2.1"
resolved "https://npm.i12e.cha0s.io/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352"
integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==
@ -5222,6 +5229,11 @@ inquirer@^7.0.0:
strip-ansi "^6.0.0"
through "^2.3.6"
int64-buffer@^0.1.9:
version "0.1.10"
resolved "https://npm.i12e.cha0s.io/int64-buffer/-/int64-buffer-0.1.10.tgz#277b228a87d95ad777d07c13832022406a473423"
integrity sha1-J3siiofZWtd30HwTgyAiQGpHNCM=
internal-ip@^4.3.0:
version "4.3.0"
resolved "https://npm.i12e.cha0s.io/internal-ip/-/internal-ip-4.3.0.tgz#845452baad9d2ca3b69c635a137acb9a0dad0907"
@ -6286,6 +6298,16 @@ ms@^2.1.1:
resolved "https://npm.i12e.cha0s.io/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2"
integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==
msgpack-lite@^0.1.26:
version "0.1.26"
resolved "https://npm.i12e.cha0s.io/msgpack-lite/-/msgpack-lite-0.1.26.tgz#dd3c50b26f059f25e7edee3644418358e2a9ad89"
integrity sha1-3TxQsm8FnyXn7e42REGDWOKprYk=
dependencies:
event-lite "^0.1.1"
ieee754 "^1.1.8"
int64-buffer "^0.1.9"
isarray "^1.0.0"
multicast-dns-service-types@^1.1.0:
version "1.1.0"
resolved "https://npm.i12e.cha0s.io/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz#899f11d9686e5e05cb91b35d5f0e63b773cfc901"
@ -7210,44 +7232,44 @@ pirates@^4.0.0:
node-modules-regexp "^1.0.0"
pixi.js@^5.3.3:
version "5.3.3"
resolved "https://npm.i12e.cha0s.io/pixi.js/-/pixi.js-5.3.3.tgz#6e326a52542f4acd97ea3f8593cb0aeae502df9a"
integrity sha512-uFQOXXyPMAVVayDebSFBS1AFfPT6QYNuz9Vu11yI2/k1DAef/rbYoJpSMM6SeB6dezDJPtIAaXXNxdaYzbe+kg==
version "5.3.4"
resolved "https://npm.i12e.cha0s.io/pixi.js/-/pixi.js-5.3.4.tgz#ec36ce65d05919fa89a29f984aae249230c09e15"
integrity sha512-CrAaQQRw+iTA75IEu57CEk6stFs587iWE3HwQG0rZL2ESW2uJvdsF/ieeS/hFk35QmlEsPRqmH1sf7t7FGtsyw==
dependencies:
"@pixi/accessibility" "5.3.3"
"@pixi/app" "5.3.3"
"@pixi/constants" "5.3.3"
"@pixi/core" "5.3.3"
"@pixi/display" "5.3.3"
"@pixi/extract" "5.3.3"
"@pixi/filter-alpha" "5.3.3"
"@pixi/filter-blur" "5.3.3"
"@pixi/filter-color-matrix" "5.3.3"
"@pixi/filter-displacement" "5.3.3"
"@pixi/filter-fxaa" "5.3.3"
"@pixi/filter-noise" "5.3.3"
"@pixi/graphics" "5.3.3"
"@pixi/interaction" "5.3.3"
"@pixi/loaders" "5.3.3"
"@pixi/math" "5.3.3"
"@pixi/mesh" "5.3.3"
"@pixi/mesh-extras" "5.3.3"
"@pixi/mixin-cache-as-bitmap" "5.3.3"
"@pixi/mixin-get-child-by-name" "5.3.3"
"@pixi/mixin-get-global-position" "5.3.3"
"@pixi/particles" "5.3.3"
"@pixi/polyfill" "5.3.3"
"@pixi/prepare" "5.3.3"
"@pixi/runner" "5.3.3"
"@pixi/settings" "5.3.3"
"@pixi/sprite" "5.3.3"
"@pixi/sprite-animated" "5.3.3"
"@pixi/sprite-tiling" "5.3.3"
"@pixi/spritesheet" "5.3.3"
"@pixi/text" "5.3.3"
"@pixi/text-bitmap" "5.3.3"
"@pixi/ticker" "5.3.3"
"@pixi/utils" "5.3.3"
"@pixi/accessibility" "5.3.4"
"@pixi/app" "5.3.4"
"@pixi/constants" "5.3.4"
"@pixi/core" "5.3.4"
"@pixi/display" "5.3.4"
"@pixi/extract" "5.3.4"
"@pixi/filter-alpha" "5.3.4"
"@pixi/filter-blur" "5.3.4"
"@pixi/filter-color-matrix" "5.3.4"
"@pixi/filter-displacement" "5.3.4"
"@pixi/filter-fxaa" "5.3.4"
"@pixi/filter-noise" "5.3.4"
"@pixi/graphics" "5.3.4"
"@pixi/interaction" "5.3.4"
"@pixi/loaders" "5.3.4"
"@pixi/math" "5.3.4"
"@pixi/mesh" "5.3.4"
"@pixi/mesh-extras" "5.3.4"
"@pixi/mixin-cache-as-bitmap" "5.3.4"
"@pixi/mixin-get-child-by-name" "5.3.4"
"@pixi/mixin-get-global-position" "5.3.4"
"@pixi/particles" "5.3.4"
"@pixi/polyfill" "5.3.4"
"@pixi/prepare" "5.3.4"
"@pixi/runner" "5.3.4"
"@pixi/settings" "5.3.4"
"@pixi/sprite" "5.3.4"
"@pixi/sprite-animated" "5.3.4"
"@pixi/sprite-tiling" "5.3.4"
"@pixi/spritesheet" "5.3.4"
"@pixi/text" "5.3.4"
"@pixi/text-bitmap" "5.3.4"
"@pixi/ticker" "5.3.4"
"@pixi/utils" "5.3.4"
pkg-dir@^2.0.0:
version "2.0.0"

View File

@ -3,8 +3,10 @@
"private": true,
"scripts": {
"build": "lerna run build",
"dev": "lerna run dev",
"clean": "lerna run clean",
"forcedev": "lerna run dev && lerna run forcepub",
"forcedev": "yarn run dev && yarn run forcepub",
"forcepub": "lerna run forcepub",
"lint": "lerna run lint",
"test": "lerna run test",
"watch": "lerna run watch --parallel"

View File

@ -35,6 +35,7 @@ const slice = createSlice({
/* eslint-disable no-param-reassign */
extraReducers: {},
reducers: {
reconnect: () => {},
setLeftActiveIndex: (state, {payload: activeItem}) => {
state.leftActiveIndex = activeItem;
},
@ -54,6 +55,7 @@ const slice = createSlice({
slice.reducer.subscription = slice.reducer;
export const {
reconnect,
setLeftActiveIndex,
setRightActiveIndex,
toggleLeftIsOpen,

View File

@ -31,6 +31,8 @@
"@reduxjs/toolkit": "^1.5.0",
"connected-react-router": "^6.8.0",
"debug": "4.3.1",
"deepmerge": "^4.2.2",
"msgpack-lite": "^0.1.26",
"node-fetch": "^2.6.1",
"uuid": "^8.3.2"
},

View File

@ -43,6 +43,7 @@ export default ({config: {'%socket': socket}}) => {
isBanned,
messages,
users,
usernames,
} = await socket.send(['Join', payload]);
if (isBanned) {
dispatch(replace('/chat'));
@ -53,6 +54,7 @@ export default ({config: {'%socket': socket}}) => {
channel: realChannel,
messages,
users,
usernames,
}));
dispatch(addRecent(realChannel));
if (canonical) {

View File

@ -1,4 +1,5 @@
import Activity from '../packets/activity';
import ChatReconnect from '../packets/chat-reconnect';
import Join from '../packets/join';
import Leave from '../packets/leave';
import Message from '../packets/message';
@ -16,6 +17,7 @@ export default {
hooks: {
'@latus/socket/packets': (latus) => ({
Activity: Activity(latus),
ChatReconnect: ChatReconnect(latus),
Join: Join(latus),
Leave: Leave(latus),
Message: Message(latus),

View File

@ -1,3 +1,4 @@
import merge from 'deepmerge';
import {
createSelector,
createSlice,
@ -55,6 +56,18 @@ const slice = createSlice({
/* eslint-disable no-param-reassign */
extraReducers: {
[localStorage]: ({input}) => ({input}),
'reddichat/app/reconnect': (state, {payload: {chat: {channels, messages}}}) => {
state.channels = Object.fromEntries(Object.entries(
merge(state.channels, channels),
).map(([name, {messages, users}]) => [
name,
{
messages: Array.from((new Set(messages)).values()),
users: Array.from((new Set(users)).values()),
},
]));
state.messages = merge(state.messages, messages);
},
},
reducers: {
addMessage: ({

View File

@ -10,6 +10,7 @@ import ChatRoom from './models/chat-room';
import ChatUser from './models/chat-user';
import Activity from './packets/activity.server';
import ChatReconnect from './packets/chat-reconnect.server';
import Join from './packets/join.server';
import Leave from './packets/leave.server';
import Message from './packets/message.server';
@ -66,6 +67,7 @@ export default {
},
'@latus/socket/packets': (latus) => ({
Activity: Activity(latus),
ChatReconnect: ChatReconnect(latus),
Join: Join(latus),
Leave: Leave(latus),
Message: Message(latus),

View File

@ -1,10 +1,3 @@
import {Packet} from '@latus/socket/packets';
export default () => class Activity extends Packet {
static limit = {
points: 2,
duration: 2,
};
};
export default () => class Activity extends Packet {};

View File

@ -0,0 +1,3 @@
import {Packet} from '@latus/socket/packets';
export default () => class ChatReconnect extends Packet {};

View File

@ -0,0 +1,13 @@
import {
ensureUniqueReduction,
} from '@latus/core';
import ChatReconnect from './chat-reconnect';
export default (latus) => class ChatReconnectServer extends ChatReconnect(latus) {
static async respond(packet, {req}) {
return ensureUniqueReduction(latus, '@reddichat/state/defaultState', req);
}
};

View File

@ -106,6 +106,11 @@ export default (latus) => class MessageServer extends Message(latus) {
throw new ValidationError({code: 403, reason: 'not friends'});
}
}
else if ('r' === type) {
if (!user && !channelIsAnonymous(channel)) {
throw new ValidationError({code: 403, reason: 'unauthorized'});
}
}
if (user && await user.isBannedFrom(channel)) {
throw new ValidationError({code: 403, reason: 'unauthorized'});
}

View File

@ -43,6 +43,13 @@ export const channelState = async (req, latus, channel) => {
...JSON.parse(reply),
uuid: messageKeys[i].split(':')[2],
}))
.map((message) => {
const {socket, ip, ...rest} = message;
return {
...rest,
owner: channelIsAnonymous(channel) ? 0 : rest.owner,
};
})
.filter(({message}) => !!message)
.sort((l, r) => l.timestamp - r.timestamp);
const users = channelIsAnonymous(channel)
@ -114,7 +121,11 @@ export default async (req, latus) => {
const {messages, users} = entries[i];
chat.channels[channel] = {
messages: messages.map((message) => message.uuid),
users,
users: Array.from((new Set(users.concat(
channelIsAnonymous(toHydrate[i])
? 0
: req.userId,
))).values()),
};
messages.forEach((message) => {
chat.messages[message.uuid] = message;

View File

@ -3584,6 +3584,11 @@ etag@~1.8.1:
resolved "https://npm.i12e.cha0s.io/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887"
integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=
event-lite@^0.1.1:
version "0.1.2"
resolved "https://npm.i12e.cha0s.io/event-lite/-/event-lite-0.1.2.tgz#838a3e0fdddef8cc90f128006c8e55a4e4e4c11b"
integrity sha512-HnSYx1BsJ87/p6swwzv+2v6B4X+uxUteoDfRxsAb1S1BePzQqOLevVmkdA15GHJVd9A9Ok6wygUR18Hu0YeV9g==
eventemitter3@^4.0.0:
version "4.0.7"
resolved "https://npm.i12e.cha0s.io/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f"
@ -4551,7 +4556,7 @@ icss-utils@^4.0.0, icss-utils@^4.1.1:
dependencies:
postcss "^7.0.14"
ieee754@^1.1.4, ieee754@^1.2.1:
ieee754@^1.1.4, ieee754@^1.1.8, ieee754@^1.2.1:
version "1.2.1"
resolved "https://npm.i12e.cha0s.io/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352"
integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==
@ -4674,6 +4679,11 @@ ini@^1.3.4, ini@^1.3.5:
resolved "https://npm.i12e.cha0s.io/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927"
integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==
int64-buffer@^0.1.9:
version "0.1.10"
resolved "https://npm.i12e.cha0s.io/int64-buffer/-/int64-buffer-0.1.10.tgz#277b228a87d95ad777d07c13832022406a473423"
integrity sha1-J3siiofZWtd30HwTgyAiQGpHNCM=
internal-ip@^4.3.0:
version "4.3.0"
resolved "https://npm.i12e.cha0s.io/internal-ip/-/internal-ip-4.3.0.tgz#845452baad9d2ca3b69c635a137acb9a0dad0907"
@ -5648,6 +5658,16 @@ ms@2.1.2, ms@^2.1.1:
resolved "https://npm.i12e.cha0s.io/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
msgpack-lite@^0.1.26:
version "0.1.26"
resolved "https://npm.i12e.cha0s.io/msgpack-lite/-/msgpack-lite-0.1.26.tgz#dd3c50b26f059f25e7edee3644418358e2a9ad89"
integrity sha1-3TxQsm8FnyXn7e42REGDWOKprYk=
dependencies:
event-lite "^0.1.1"
ieee754 "^1.1.8"
int64-buffer "^0.1.9"
isarray "^1.0.0"
multicast-dns-service-types@^1.1.0:
version "1.1.0"
resolved "https://npm.i12e.cha0s.io/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz#899f11d9686e5e05cb91b35d5f0e63b773cfc901"

View File

@ -21,6 +21,9 @@ const slice = createSlice({
extraReducers: {
[join]: (state, {payload: {usernames}}) => ({...state, ...usernames}),
[joined]: (state, {payload: {id, username}}) => ({...state, [id]: username}),
'reddichat/app/reconnect': (state, {payload: {usernames}}) => {
state.usernames = {...state.usernames, ...usernames};
},
},
reducers: {
setUsernames: (state, {payload}) => ({...state, ...payload}),