Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7bd6ab5ec0 | ||
|
|
92f9c89cf1 | ||
|
|
eb2632b23a | ||
|
|
8c90bc6808 | ||
|
|
66146532e1 | ||
|
|
dbf3a41c1d | ||
|
|
942bbf9c6c | ||
|
|
a9d7cc527c | ||
|
|
2d362722ed | ||
|
|
f81638e625 | ||
|
|
8ae77df0ff | ||
|
|
110bd0e5f7 | ||
|
|
1b3a366cb7 | ||
|
|
3b5d9a145f | ||
|
|
fc37fc067a | ||
|
|
bb18a28484 | ||
|
|
86ca08b9aa | ||
|
|
9522df7835 | ||
|
|
55e0fd0226 | ||
|
|
ff9a986a2e | ||
|
|
df31fe2a8b | ||
|
|
1aeaf996bc | ||
|
|
cb0e59e91a | ||
|
|
5f02f49e9d | ||
|
|
ce9f91fe2c | ||
|
|
ac37745721 | ||
|
|
e44aeefda8 | ||
|
|
dbff2b659a | ||
|
|
52ef8e8b76 | ||
|
|
b71567c754 | ||
|
|
d1670c743f | ||
|
|
009b38f471 | ||
|
|
0cf5f30c0d | ||
|
|
cd4e1f179d | ||
|
|
b89f9d6b35 | ||
|
|
c3ece96390 | ||
|
|
770739b44e | ||
|
|
84984c2cde | ||
|
|
86393c8674 | ||
|
|
d4aed3bc45 | ||
|
|
818cd77450 | ||
|
|
dc26c70400 | ||
|
|
6547d713ea | ||
|
|
e8dcb0c242 | ||
|
|
100d0be513 | ||
|
|
fc8db2d977 | ||
|
|
e5d98d7889 | ||
|
|
c7b1a05ed3 | ||
|
|
649a90bd5e | ||
|
|
0fc880cf21 | ||
|
|
0d82a4c2c6 | ||
|
|
fb3aa59683 | ||
|
|
b938792ca8 | ||
|
|
bb74946d54 | ||
|
|
3e78105509 | ||
|
|
c6adf0ac89 | ||
|
|
219b4dca94 | ||
|
|
acec292b0f | ||
|
|
7ba86cbd23 | ||
|
|
3002eaf479 | ||
|
|
15422ca504 | ||
|
|
7067f00bee | ||
|
|
a0616eb251 | ||
|
|
5d4da0e4c7 | ||
|
|
546e3475fb | ||
|
|
56c44ebb58 | ||
|
|
bd03bc730c | ||
|
|
e0e1e58104 | ||
|
|
940de662b6 | ||
|
|
d151c1192b | ||
|
|
15ae10579c | ||
|
|
359696408d | ||
|
|
d3766368f8 | ||
|
|
73af7451fc | ||
|
|
e27fcefe45 | ||
|
|
aa5ade5517 | ||
|
|
94b6a66ce4 | ||
|
|
a51e486fa6 | ||
|
|
2b608daea4 | ||
|
|
aa60c2afd1 | ||
|
|
cff22c74a9 | ||
|
|
b77b8ee0da | ||
|
|
610aef2f14 | ||
|
|
e15ca41d6e | ||
|
|
60e9e53af4 | ||
|
|
9812000724 | ||
|
|
d72401fc39 | ||
|
|
822eba7982 | ||
|
|
9327564e6e | ||
|
|
6e9fe42a83 | ||
|
|
a32cf28ccb | ||
|
|
55b101802a | ||
|
|
ecda8b4394 | ||
|
|
6d4f8d4c26 | ||
|
|
26aa53f3fa | ||
|
|
2f7a94ea3f | ||
|
|
2b622b4ee9 | ||
|
|
3e280f1e08 | ||
|
|
c54d52ad45 | ||
|
|
e54d3ea96b |
No files matched your search
@@ -1,12 +1,16 @@
|
||||
.yarn
|
||||
example.ts
|
||||
.*sessions
|
||||
.secrets
|
||||
tokens
|
||||
files
|
||||
venv
|
||||
.wwebjs_auth
|
||||
src/test.ts
|
||||
src/test.js
|
||||
test.js
|
||||
.wwebjs_cache
|
||||
src/dashboard
|
||||
|
||||
# compiled output
|
||||
/dist
|
||||
|
||||
@@ -46,3 +46,15 @@ repos:
|
||||
src/structures/.*|
|
||||
src/config.service.ts|
|
||||
)$
|
||||
|
||||
- repo: local
|
||||
hooks:
|
||||
- id: no-console-log
|
||||
name: No console.log() calls
|
||||
language: pygrep
|
||||
entry: 'console\.log'
|
||||
exclude: |
|
||||
(?x)^(
|
||||
.pre-commit-config.yaml|
|
||||
^src/core/engines/webjs/session.webjs.core.ts|
|
||||
)$
|
||||
+29
-8
@@ -6,23 +6,33 @@ FROM node:${NODE_VERSION} as build
|
||||
ENV PUPPETEER_SKIP_DOWNLOAD=True
|
||||
|
||||
# npm packages
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y openssh-client
|
||||
RUN apt install openssh-client
|
||||
RUN mkdir -p -m 0700 ~/.ssh && ssh-keyscan github.com >> ~/.ssh/known_hosts
|
||||
|
||||
WORKDIR /src
|
||||
COPY package.json .
|
||||
COPY yarn.lock .
|
||||
RUN yarn set version 3.6.3
|
||||
RUN --mount=type=ssh yarn install
|
||||
RUN yarn install
|
||||
|
||||
# App
|
||||
WORKDIR /src
|
||||
ADD . /src
|
||||
RUN --mount=type=ssh yarn install
|
||||
RUN yarn install
|
||||
RUN yarn build && find ./dist -name "*.d.ts" -delete
|
||||
|
||||
#
|
||||
# Dashboard
|
||||
#
|
||||
FROM node:${NODE_VERSION} as dashboard
|
||||
|
||||
# Download WAHA Dashboard
|
||||
ENV WAHA_DASHBOARD_SHA 63fd6e9e23e90f90e8aa0de04feb3f1909f63021
|
||||
RUN \
|
||||
wget https://github.com/devlikeapro/dashboard/archive/${WAHA_DASHBOARD_SHA}.zip \
|
||||
&& unzip ${WAHA_DASHBOARD_SHA}.zip -d /tmp/dashboard \
|
||||
&& mkdir -p /dashboard \
|
||||
&& mv /tmp/dashboard/dashboard-${WAHA_DASHBOARD_SHA}/* /dashboard/ \
|
||||
&& rm -rf ${WAHA_DASHBOARD_SHA}.zip \
|
||||
&& rm -rf /tmp/dashboard/dashboard-${WAHA_DASHBOARD_SHA}
|
||||
|
||||
#
|
||||
# Final
|
||||
#
|
||||
@@ -38,6 +48,9 @@ RUN echo "USE_BROWSER=$USE_BROWSER"
|
||||
# Install ffmpeg to generate previews for videos
|
||||
RUN apt-get update && apt-get install -y ffmpeg --no-install-recommends && rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Install zip and unzip
|
||||
RUN apt-get update && apt-get install -y zip unzip --no-install-recommends && rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Install fonts if using either chromium or chrome
|
||||
RUN if [ "$USE_BROWSER" = "chromium" ] || [ "$USE_BROWSER" = "chrome" ]; then \
|
||||
apt-get update \
|
||||
@@ -58,7 +71,7 @@ RUN if [ "$USE_BROWSER" = "chromium" ]; then \
|
||||
# Install Chrome
|
||||
# Available versions:
|
||||
# https://www.ubuntuupdates.org/package/google_chrome/stable/main/base/google-chrome-stable
|
||||
ARG CHROME_VERSION="122.0.6261.128-1"
|
||||
ARG CHROME_VERSION="126.0.6478.182-1"
|
||||
RUN if [ "$USE_BROWSER" = "chrome" ]; then \
|
||||
wget --no-verbose -O /tmp/chrome.deb https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${CHROME_VERSION}_amd64.deb \
|
||||
&& apt-get update \
|
||||
@@ -72,6 +85,14 @@ WORKDIR /app
|
||||
COPY package.json ./
|
||||
COPY --from=build /src/node_modules ./node_modules
|
||||
COPY --from=build /src/dist ./dist
|
||||
COPY --from=dashboard /dashboard ./dist/dashboard
|
||||
|
||||
# Chokidar options to monitor file changes
|
||||
ENV CHOKIDAR_USEPOLLING=1
|
||||
ENV CHOKIDAR_INTERVAL=5000
|
||||
|
||||
# WAHA variables
|
||||
ENV WAHA_ZIPPER=ZIPUNZIP
|
||||
|
||||
# Run command, etc
|
||||
EXPOSE 3000
|
||||
|
||||
@@ -29,12 +29,13 @@ push:
|
||||
docker push devlikeapro/waha
|
||||
|
||||
for-swagger:
|
||||
WHATSAPP_SWAGGER_CONFIG_ADVANCED=true npm run start
|
||||
WHATSAPP_SWAGGER_CONFIG_ADVANCED=true . ${NVM_DIR}/nvm.sh && nvm exec yarn start
|
||||
|
||||
update-dependencies:
|
||||
. ${NVM_DIR}/nvm.sh && nvm exec yarn up whatsapp-web.js@https://github.com/devlikeapro/whatsapp-web.js#main-fork
|
||||
. ${NVM_DIR}/nvm.sh && nvm exec yarn up @adiwajshing/baileys@github:WhiskeySockets/Baileys
|
||||
. ${NVM_DIR}/nvm.sh && nvm exec yarn up venom-bot
|
||||
up-noweb:
|
||||
. ${NVM_DIR}/nvm.sh && nvm exec yarn up @adiwajshing/baileys@github:devlikeapro/Baileys#fork-master-channels
|
||||
|
||||
up-webjs:
|
||||
. ${NVM_DIR}/nvm.sh && nvm exec yarn up whatsapp-web.js@github:devlikeapro/whatsapp-web.js#fork-webpack-exodus-channels
|
||||
|
||||
start-proxy:
|
||||
docker run --rm -d --name squid-container -e TZ=UTC -p 3128:3128 ubuntu/squid:5.2-22.04_beta
|
||||
@@ -0,0 +1,114 @@
|
||||
services:
|
||||
waha:
|
||||
# Check available Docker images:
|
||||
# https://waha.devlike.pro/docs/how-to/engines/#docker-images
|
||||
image: devlikeapro/waha
|
||||
container_name: waha
|
||||
ports:
|
||||
- '3000:3000/tcp'
|
||||
environment:
|
||||
# Environment variables from https://waha.devlike.pro/docs/how-to/config/
|
||||
# https://docs.webhook.site/
|
||||
- WHATSAPP_HOOK_URL=https://webhook.site/11111111-1111-1111-1111-11111111
|
||||
- WHATSAPP_HOOK_EVENTS=message
|
||||
- WHATSAPP_DEFAULT_ENGINE=WEBJS
|
||||
restart: always
|
||||
|
||||
waha-plus:
|
||||
# Check available Docker images:
|
||||
# https://waha.devlike.pro/docs/how-to/engines/#docker-images
|
||||
image: devlikeapro/waha-plus:chrome
|
||||
container_name: waha-plus
|
||||
ports:
|
||||
- '3000:3000/tcp'
|
||||
volumes:
|
||||
- './.sessions:/app/.sessions'
|
||||
environment:
|
||||
# Environment variables from https://waha.devlike.pro/docs/how-to/config/
|
||||
# - WHATSAPP_RESTART_ALL_SESSIONS=True
|
||||
# - WHATSAPP_HOOK_URL=https://webhook.site/11111111-1111-1111-1111-11111111
|
||||
# - WHATSAPP_HOOK_EVENTS=message
|
||||
# - WHATSAPP_API_HOSTNAME=localhost
|
||||
- WHATSAPP_DEFAULT_ENGINE=WEBJS
|
||||
- WHATSAPP_API_KEY=321
|
||||
# Username and password for Swagger
|
||||
- WHATSAPP_SWAGGER_USERNAME=swagger
|
||||
- WHATSAPP_SWAGGER_PASSWORD=admin
|
||||
# Username and password for WAHA Dashboard
|
||||
# you can use the same username and password for both Swagger and Dashboard
|
||||
# Default - waha / waha
|
||||
- WAHA_DASHBOARD_USERNAME=waha
|
||||
- WAHA_DASHBOARD_PASSWORD=waha
|
||||
# Engine specific environment variables
|
||||
# - WAHA_WEBJS_WEB_VERSION=2.2412.54-videofix
|
||||
restart: always
|
||||
|
||||
waha-plus--mongodb:
|
||||
# Check available Docker images:
|
||||
# https://waha.devlike.pro/docs/how-to/engines/#docker-images
|
||||
image: devlikeapro/waha-plus:chrome
|
||||
container_name: waha-plus--mongodb
|
||||
ports:
|
||||
- '3000:3000/tcp'
|
||||
volumes:
|
||||
- './.sessions:/app/.sessions'
|
||||
environment:
|
||||
# Environment variables from https://waha.devlike.pro/docs/how-to/config/
|
||||
# - WHATSAPP_RESTART_ALL_SESSIONS=True
|
||||
# - WHATSAPP_HOOK_URL=https://webhook.site/11111111-1111-1111-1111-11111111
|
||||
# - WHATSAPP_HOOK_EVENTS=message
|
||||
# - WHATSAPP_API_KEY=321
|
||||
# - WHATSAPP_SWAGGER_USERNAME=admin
|
||||
# - WHATSAPP_SWAGGER_PASSWORD=123
|
||||
# - WAHA_DASHBOARD_USERNAME=admin
|
||||
# - WAHA_DASHBOARD_PASSWORD=123
|
||||
# - WHATSAPP_API_HOSTNAME=localhost
|
||||
- WHATSAPP_DEFAULT_ENGINE=WEBJS
|
||||
- WHATSAPP_SESSIONS_MONGO_URL=mongodb://mongodb:27017
|
||||
restart: always
|
||||
|
||||
# Let's Encrypt + Certbot
|
||||
# https://waha.devlike.pro/docs/how-to/security/#https
|
||||
waha-https--certbot:
|
||||
image: devlikeapro/waha-plus
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- '3000:3000'
|
||||
volumes:
|
||||
- './.sessions:/app/.sessions'
|
||||
- '/etc/letsencrypt:/etc/letsencrypt'
|
||||
environment:
|
||||
- DOMAIN=waha.example.pro
|
||||
- WHATSAPP_API_HOSTNAME=${DOMAIN}
|
||||
- WAHA_HTTPS_ENABLED=true
|
||||
- WAHA_HTTPS_PATH_KEY=/etc/letsencrypt/live/${DOMAIN}/privkey.pem
|
||||
- WAHA_HTTPS_PATH_CERT=/etc/letsencrypt/live/${DOMAIN}/cert.pem
|
||||
- WAHA_HTTPS_PATH_CA=/etc/letsencrypt/live/${DOMAIN}/chain.pem
|
||||
|
||||
# Self-signed certificates example
|
||||
# https://waha.devlike.pro/docs/how-to/security/#https
|
||||
waha-https--self-signed:
|
||||
image: devlikeapro/waha-plus
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- '3000:3000'
|
||||
volumes:
|
||||
- './.sessions:/app/.sessions'
|
||||
- './.secrets:/app/.secrets'
|
||||
environment:
|
||||
- WAHA_HTTPS_ENABLED=true
|
||||
- WAHA_HTTPS_PATH_KEY=.secrets/privkey.pem
|
||||
- WAHA_HTTPS_PATH_CERT=.secrets/cert.pem
|
||||
- WAHA_HTTPS_PATH_CA=.secrets/chain.pem
|
||||
|
||||
mongodb:
|
||||
image: mongo
|
||||
container_name: mongodb
|
||||
ports:
|
||||
- '27017:27017/tcp'
|
||||
volumes:
|
||||
- mongodb_data:/data/db
|
||||
restart: always
|
||||
|
||||
volumes:
|
||||
mongodb_data: {}
|
||||
+186
-63
@@ -1,80 +1,203 @@
|
||||
version: '3'
|
||||
#
|
||||
# https://waha.devlike.pro/docs/how-to/install/
|
||||
# Here's we provide a simple example of how to install WAHA using Docker Compose.
|
||||
#
|
||||
# We're assuming you have Docker and Docker Compose installed.
|
||||
# If you don't have Docker Compose installed, you can follow the official guide:
|
||||
# https://docs.docker.com/compose/install/
|
||||
#
|
||||
|
||||
services:
|
||||
waha:
|
||||
# Check available Docker images:
|
||||
# https://waha.devlike.pro/docs/how-to/engines/#docker-images
|
||||
image: devlikeapro/waha
|
||||
container_name: waha
|
||||
ports:
|
||||
- '3000:3000/tcp'
|
||||
environment:
|
||||
# Environment variables from https://waha.devlike.pro/docs/how-to/config/
|
||||
- WHATSAPP_HOOK_URL=https://httpbin.org/post
|
||||
- WHATSAPP_HOOK_EVENTS=message
|
||||
- WHATSAPP_DEFAULT_ENGINE=WEBJS
|
||||
# Always restart the container on failure
|
||||
restart: always
|
||||
|
||||
waha-plus:
|
||||
# Check available Docker images:
|
||||
#
|
||||
# Image
|
||||
#
|
||||
image: devlikeapro/waha-plus:latest # or devlikeapro/waha:latest if you're using WAHA Core
|
||||
#
|
||||
# We strongly recommend using the pinned version of WAHA
|
||||
# https://waha.devlike.pro/docs/how-to/engines/#versions
|
||||
# image: devlikeapro/waha-plus:latest-2024.7.6 # 'latest' is not mistaken here
|
||||
#
|
||||
# Multiple images are available
|
||||
# https://waha.devlike.pro/docs/how-to/engines/#docker-images
|
||||
image: devlikeapro/waha-plus:chrome
|
||||
container_name: waha-plus
|
||||
# image: devlikeapro/waha-plus:chrome
|
||||
#
|
||||
|
||||
# The first port can be any free port you want
|
||||
# The second port must be the same as WHATSAPP_API_PORT or 3000 by default
|
||||
# Consider using the same port for simplicity
|
||||
ports:
|
||||
- '3000:3000/tcp'
|
||||
# NOTE: if you're using HTTP, you can use the following port mapping
|
||||
#- '80:3000/tcp'
|
||||
# NOTE: if you're using HTTPS, you can use the following port mapping
|
||||
#- '443:3000/tcp'
|
||||
|
||||
volumes:
|
||||
# Store sessions in the .sessions folder (comment it if you're using MongoDB)
|
||||
# Doesn't work with WAHA Core
|
||||
- './.sessions:/app/.sessions'
|
||||
|
||||
# https://waha.devlike.pro/docs/how-to/storages/#save-media-files-between-the-container-restarts
|
||||
- './.media:/app/.media'
|
||||
|
||||
# If you're using certbot for HTTPS, you can use the following volume mapping
|
||||
# https://waha.devlike.pro/blog/setting-up-https-for-waha/#lets-encrypt-certbot--waha
|
||||
# - '/etc/letsencrypt:/etc/letsencrypt'
|
||||
|
||||
# WAHA Configuration
|
||||
# https://waha.devlike.pro/docs/how-to/config/
|
||||
environment:
|
||||
# Environment variables from https://waha.devlike.pro/docs/how-to/config/
|
||||
# - WHATSAPP_RESTART_ALL_SESSIONS=True
|
||||
# - WHATSAPP_HOOK_URL=https://httpbin.org/post
|
||||
# - WHATSAPP_HOOK_EVENTS=message
|
||||
# - WHATSAPP_API_HOSTNAME=localhost
|
||||
- WHATSAPP_DEFAULT_ENGINE=WEBJS
|
||||
#
|
||||
# Common
|
||||
#
|
||||
# If you know the right URL, you can use it here.
|
||||
# Use any port in WHATSAPP_API_PORT and domain in WHATSAPP_API_HOSTNAME
|
||||
# https://waha.devlike.pro/docs/how-to/config/#common
|
||||
#- WHATSAPP_API_PORT=3000
|
||||
#- WHATSAPP_API_HOSTNAME=localhost
|
||||
|
||||
#
|
||||
# Security
|
||||
#
|
||||
# https://waha.devlike.pro/docs/how-to/security/
|
||||
#
|
||||
- WHATSAPP_API_KEY=321
|
||||
# Username and password for Swagger
|
||||
- WHATSAPP_SWAGGER_USERNAME=swagger
|
||||
- WHATSAPP_SWAGGER_PASSWORD=admin
|
||||
# Username and password for WAHA Dashboard
|
||||
# you can use the same username and password for both Swagger and Dashboard
|
||||
# Default - waha / waha
|
||||
- WAHA_DASHBOARD_USERNAME=waha
|
||||
- WAHA_DASHBOARD_PASSWORD=waha
|
||||
# Engine specific environment variables
|
||||
# - WAHA_WEBJS_WEB_VERSION=2.2412.54-videofix
|
||||
restart: always
|
||||
#- WHATSAPP_SWAGGER_USERNAME=admin
|
||||
#- WHATSAPP_SWAGGER_PASSWORD=admin
|
||||
|
||||
waha-plus--mongodb:
|
||||
# Check available Docker images:
|
||||
# https://waha.devlike.pro/docs/how-to/engines/#docker-images
|
||||
image: devlikeapro/waha-plus:chrome
|
||||
container_name: waha-plus--mongodb
|
||||
ports:
|
||||
- '3000:3000/tcp'
|
||||
volumes:
|
||||
- './.sessions:/app/.sessions'
|
||||
environment:
|
||||
# Environment variables from https://waha.devlike.pro/docs/how-to/config/
|
||||
# - WHATSAPP_RESTART_ALL_SESSIONS=True
|
||||
# - WHATSAPP_HOOK_URL=https://httpbin.org/post
|
||||
# - WHATSAPP_HOOK_EVENTS=message
|
||||
# - WHATSAPP_API_KEY=321
|
||||
# - WHATSAPP_SWAGGER_USERNAME=admin
|
||||
# - WHATSAPP_SWAGGER_PASSWORD=123
|
||||
# - WAHA_DASHBOARD_USERNAME=admin
|
||||
# - WAHA_DASHBOARD_PASSWORD=123
|
||||
# - WHATSAPP_API_HOSTNAME=localhost
|
||||
#
|
||||
# Dashboard
|
||||
#
|
||||
# https://waha.devlike.pro/docs/how-to/waha-dashboard/#configuration
|
||||
# Enabled by default
|
||||
#- WAHA_DASHBOARD_ENABLED=true
|
||||
#- WAHA_DASHBOARD_USERNAME=waha
|
||||
#- WAHA_DASHBOARD_PASSWORD=waha
|
||||
|
||||
#
|
||||
# Logging
|
||||
# https://waha.devlike.pro/docs/how-to/observability/#logging
|
||||
#
|
||||
- WAHA_LOG_FORMAT=PRETTY
|
||||
# Set log format to JSON if you consume logs with log management systems
|
||||
#- WAHA_LOG_FORMAT=JSON
|
||||
- WAHA_LOG_LEVEL=info
|
||||
# If you want to see more logs, you can set the log level to debug
|
||||
#- WAHA_LOG_LEVEL=debug
|
||||
# DEBUG=1 # shortcut for setting log level to debug
|
||||
|
||||
#
|
||||
# Engine
|
||||
#
|
||||
# Choose the right engine for your needs (WEBJS by default)
|
||||
# https://waha.devlike.pro/docs/how-to/engines/
|
||||
- WHATSAPP_DEFAULT_ENGINE=WEBJS
|
||||
- WHATSAPP_SESSIONS_MONGO_URL=mongodb://mongodb:27017
|
||||
restart: always
|
||||
# Use NOWEB engine for the fastest performance
|
||||
#- WHATSAPP_DEFAULT_ENGINE=NOWEB
|
||||
|
||||
mongodb:
|
||||
image: mongo
|
||||
container_name: mongodb
|
||||
ports:
|
||||
- '27017:27017/tcp'
|
||||
volumes:
|
||||
- mongodb_data:/data/db
|
||||
restart: always
|
||||
#
|
||||
# Sessions
|
||||
#
|
||||
# https://waha.devlike.pro/docs/how-to/config/#sessions
|
||||
# Restart all sessions when container starts
|
||||
- WHATSAPP_RESTART_ALL_SESSIONS=True
|
||||
# Do not print QR codes in logs
|
||||
- WAHA_PRINT_QR=False
|
||||
#
|
||||
# OR you can specify sessions by name, if you have handful amount of sessions
|
||||
#- WHATSAPP_START_SESSION=session1,session2
|
||||
# Do not use both WHATSAPP_RESTART_ALL_SESSIONS and WHATSAPP_START_SESSION parameters
|
||||
#
|
||||
|
||||
volumes:
|
||||
mongodb_data: {}
|
||||
#
|
||||
# Swagger
|
||||
#
|
||||
# https://waha.devlike.pro/docs/how-to/swagger/
|
||||
#- WHATSAPP_SWAGGER_USERNAME=admin
|
||||
#- WHATSAPP_SWAGGER_PASSWORD=admin
|
||||
# Disable Swagger
|
||||
#- WHATSAPP_SWAGGER_ENABLED=false
|
||||
# Enable advanced Swagger configuration
|
||||
#- WHATSAPP_SWAGGER_CONFIG_ADVANCED=true
|
||||
#
|
||||
# Swagger White Label customization
|
||||
# https://waha.devlike.pro/docs/how-to/swagger/#white-label
|
||||
#- WHATSAPP_SWAGGER_TITLE=WAHA API
|
||||
#
|
||||
|
||||
#
|
||||
# Global Proxy Settings
|
||||
# https://waha.devlike.pro/docs/how-to/config/#global-proxy-configuration
|
||||
# You can also set proxy settings for each session later when starting it
|
||||
# https://waha.devlike.pro/docs/how-to/sessions/#configure-proxy
|
||||
#- WHATSAPP_PROXY_SERVER=proxy.example.com:3128
|
||||
#-WHATSAPP_PROXY_SERVER_USERNAME=user
|
||||
#-WHATSAPP_PROXY_SERVER_PASSWORD=pass
|
||||
#
|
||||
|
||||
#
|
||||
# HTTPS Configuration
|
||||
#
|
||||
# https://waha.devlike.pro/docs/how-to/config/#https
|
||||
# Consider using certbot for HTTPS
|
||||
# https://waha.devlike.pro/blog/setting-up-https-for-waha/#lets-encrypt-certbot--waha
|
||||
#- WHATSAPP_API_HOSTNAME=waha.example.pro
|
||||
#- WAHA_HTTPS_ENABLED=true
|
||||
#- WAHA_HTTPS_PATH_KEY=/etc/letsencrypt/live/waha.example.pro/privkey.pem
|
||||
#- WAHA_HTTPS_PATH_CERT=/etc/letsencrypt/live/waha.example.pro/cert.pem \
|
||||
#- WAHA_HTTPS_PATH_CA=/etc/letsencrypt/live/waha.example.pro/chain.pem
|
||||
#
|
||||
|
||||
#
|
||||
# Media Configuration
|
||||
#
|
||||
# https://waha.devlike.pro/docs/how-to/config/#files
|
||||
#
|
||||
# Disable media (images, videos, files) download for incoming messages
|
||||
#- WHATSAPP_DOWNLOAD_MEDIA=false
|
||||
#
|
||||
# Download only specific media types
|
||||
#- WHATSAPP_FILES_MIMETYPES=image/jpeg,image/png
|
||||
#
|
||||
# Set to 0 to keep media files forever
|
||||
# https://waha.devlike.pro/docs/how-to/storages/#save-media-files-between-the-container-restarts
|
||||
- WHATSAPP_FILES_LIFETIME=0
|
||||
- WHATSAPP_FILES_FOLDER=/app/.media
|
||||
#
|
||||
# Keep media files for 180 seconds (3 minutes)
|
||||
#- WHATSAPP_FILES_LIFETIME=180
|
||||
#
|
||||
|
||||
#
|
||||
# Global Webhooks
|
||||
#
|
||||
# https://waha.devlike.pro/docs/how-to/config/#webhooks
|
||||
# https://waha.devlike.pro/docs/how-to/webhooks/
|
||||
#- WHATSAPP_HOOK_URL=https://webhook.site/11111111-1111-1111-1111-11111111
|
||||
#- WHATSAPP_HOOK_EVENTS=session.status,message,message.reaction
|
||||
#
|
||||
|
||||
#
|
||||
# MongoDB Configuration
|
||||
# https://waha.devlike.pro/docs/how-to/storages/#sessions---mongodb
|
||||
#- WHATSAPP_SESSIONS_MONGO_URL=mongodb://mongodb:27017
|
||||
#
|
||||
# NOTE: Uncomment this block to run WAHA+ with MongoDB
|
||||
# mongodb:
|
||||
# image: mongo
|
||||
# container_name: mongodb
|
||||
# ports:
|
||||
# - '27017:27017/tcp'
|
||||
# volumes:
|
||||
# - mongodb_data:/data/db
|
||||
# restart: always
|
||||
|
||||
# NOTE: Uncomment this block to run WAHA+ with MongoDB
|
||||
#volumes:
|
||||
# mongodb_data: {}
|
||||
Binary file not shown.
+10
-2
@@ -22,7 +22,7 @@
|
||||
"test:e2e": "jest --config ./test/jest-e2e.json"
|
||||
},
|
||||
"dependencies": {
|
||||
"@adiwajshing/baileys": "github:WhiskeySockets/Baileys",
|
||||
"@adiwajshing/baileys": "github:devlikeapro/Baileys#fork-master-channels",
|
||||
"@adiwajshing/keyed-db": "^0.2.4",
|
||||
"@nestjs/axios": "^3.0.2",
|
||||
"@nestjs/common": "^9.0.9",
|
||||
@@ -30,15 +30,19 @@
|
||||
"@nestjs/core": "^9.0.9",
|
||||
"@nestjs/passport": "^9.0.0",
|
||||
"@nestjs/platform-express": "^9.0.9",
|
||||
"@nestjs/platform-ws": "^9.0.9",
|
||||
"@nestjs/serve-static": "^2.1.3",
|
||||
"@nestjs/swagger": "^7.1.11",
|
||||
"@nestjs/terminus": "^10.2.3",
|
||||
"@nestjs/websockets": "^9.0.9",
|
||||
"@types/better-sqlite3": "^7.6.10",
|
||||
"@types/lodash": "^4.14.194",
|
||||
"@types/ws": "^8.5.4",
|
||||
"adm-zip": "0.5.10",
|
||||
"async-lock": "^1.4.1",
|
||||
"better-sqlite3": "9.6.0",
|
||||
"check-disk-space": "^3.4.0",
|
||||
"chokidar": "^3.6.0",
|
||||
"class-transformer": "^0.5.1",
|
||||
"class-validator": "0.14.0",
|
||||
"del": "^6.0.0",
|
||||
@@ -51,8 +55,12 @@
|
||||
"lodash": "^4.17.21",
|
||||
"mime-types": "^2.1.27",
|
||||
"mongodb": "^6.3.0",
|
||||
"nestjs-pino": "^4.1.0",
|
||||
"passport": "^0.6.0",
|
||||
"passport-headerapikey": "^1.2.2",
|
||||
"pino-http": "^10.2.0",
|
||||
"pino-pretty": "^11.2.1",
|
||||
"pretty-bytes": "5.6.0",
|
||||
"puppeteer": "^21.0.0",
|
||||
"qrcode": "^1.5.1",
|
||||
"qrcode-terminal": "^0.12.0",
|
||||
@@ -64,7 +72,7 @@
|
||||
"sharp": "^0.33.4",
|
||||
"swagger-ui-express": "^4.1.4",
|
||||
"venom-bot": "5.0.1",
|
||||
"whatsapp-web.js": "https://github.com/devlikeapro/whatsapp-web.js#main-fork-update"
|
||||
"whatsapp-web.js": "github:devlikeapro/whatsapp-web.js#fork-webpack-exodus-channels"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@nestjs/cli": "^9.0.0",
|
||||
|
||||
Executable
+23
@@ -0,0 +1,23 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
echo "Starting WAHA..."
|
||||
|
||||
docker run -d \
|
||||
--restart=always \
|
||||
--name waha \
|
||||
-p 3000:3000/tcp \
|
||||
-v ./.sessions:/app/.sessions \
|
||||
-v ./.media:/app/.media \
|
||||
--env WHATSAPP_API_KEY=321 \
|
||||
--env WAHA_DASHBOARD_USERNAME=waha \
|
||||
--env WAHA_DASHBOARD_PASSWORD=waha \
|
||||
--env WAHA_LOG_FORMAT=PRETTY \
|
||||
--env WAHA_LOG_LEVEL=info \
|
||||
--env WHATSAPP_DEFAULT_ENGINE=WEBJS \
|
||||
--env WHATSAPP_RESTART_ALL_SESSIONS=True \
|
||||
--env WAHA_PRINT_QR=False \
|
||||
--env WHATSAPP_FILES_LIFETIME=0 \
|
||||
--env WHATSAPP_FILES_FOLDER=/app/.media \
|
||||
devlikeapro/waha-plus:latest
|
||||
|
||||
echo "WAHA started."
|
||||
Executable
+21
@@ -0,0 +1,21 @@
|
||||
set -e
|
||||
echo "Updating WAHA..."
|
||||
echo "Logging in to Docker..."
|
||||
docker login -u devlikeapro # -p {KEY} - you can hard code key here https://portal.devlike.pro/
|
||||
|
||||
echo "Pulling the latest image..."
|
||||
docker pull devlikeapro/waha-plus
|
||||
|
||||
echo "Logging out of Docker..."
|
||||
docker logout
|
||||
|
||||
# Just pull if you're using WAHA Core
|
||||
# docker pull devlikeapro/waha
|
||||
|
||||
echo "Stopping the current container..."
|
||||
docker stop waha || true
|
||||
echo "Removing the current container..."
|
||||
docker rm waha || true
|
||||
|
||||
echo "Running WAHA..."
|
||||
sh ./waha-run.sh
|
||||
@@ -0,0 +1,119 @@
|
||||
import {
|
||||
Body,
|
||||
Controller,
|
||||
Delete,
|
||||
Get,
|
||||
Param,
|
||||
Post,
|
||||
Query,
|
||||
} from '@nestjs/common';
|
||||
import { ApiOperation, ApiSecurity, ApiTags } from '@nestjs/swagger';
|
||||
import {
|
||||
Channel,
|
||||
CreateChannelRequest,
|
||||
ListChannelsQuery,
|
||||
NewsletterIdApiParam,
|
||||
NewsletterIdOrInviteCodeApiParam,
|
||||
} from '@waha/structures/channels.dto';
|
||||
|
||||
import { SessionManager } from '../core/abc/manager.abc';
|
||||
import { isNewsletter, WhatsappSession } from '../core/abc/session.abc';
|
||||
import { SessionApiParam, SessionParam } from './helpers';
|
||||
|
||||
@ApiSecurity('api_key')
|
||||
@Controller('api/:session/channels')
|
||||
@ApiTags('channels')
|
||||
export class ChannelsController {
|
||||
constructor(private manager: SessionManager) {}
|
||||
|
||||
@Get('')
|
||||
@SessionApiParam
|
||||
@ApiOperation({ summary: 'Get list of know channels' })
|
||||
async list(
|
||||
@SessionParam session: WhatsappSession,
|
||||
@Query() query: ListChannelsQuery,
|
||||
): Promise<Channel[]> {
|
||||
return session.channelsList(query);
|
||||
}
|
||||
|
||||
@Post('')
|
||||
@SessionApiParam
|
||||
@ApiOperation({ summary: 'Create a new channel.' })
|
||||
create(
|
||||
@SessionParam session: WhatsappSession,
|
||||
@Body() request: CreateChannelRequest,
|
||||
): Promise<Channel> {
|
||||
return session.channelsCreateChannel(request);
|
||||
}
|
||||
|
||||
@Delete(':id')
|
||||
@SessionApiParam
|
||||
@NewsletterIdApiParam
|
||||
@ApiOperation({ summary: 'Delete the channel.' })
|
||||
delete(@SessionParam session: WhatsappSession, @Param('id') id: string) {
|
||||
return session.channelsDeleteChannel(id);
|
||||
}
|
||||
|
||||
@Get(':id')
|
||||
@SessionApiParam
|
||||
@NewsletterIdOrInviteCodeApiParam
|
||||
@ApiOperation({
|
||||
summary: 'Get the channel info - either by id @newsletter OR invite code.',
|
||||
})
|
||||
get(
|
||||
@SessionParam session: WhatsappSession,
|
||||
@Param('id') id: string,
|
||||
): Promise<Channel> {
|
||||
if (isNewsletter(id)) {
|
||||
return session.channelsGetChannel(id);
|
||||
} else {
|
||||
// https://www.whatsapp.com/channel/123 => 123
|
||||
const inviteCode = id.split('/').pop();
|
||||
return session.channelsGetChannelByInviteCode(inviteCode);
|
||||
}
|
||||
}
|
||||
|
||||
@Post('follow')
|
||||
@SessionApiParam
|
||||
@NewsletterIdApiParam
|
||||
@ApiOperation({ summary: 'Follow the channel.' })
|
||||
follow(
|
||||
@SessionParam session: WhatsappSession,
|
||||
@Param('id') id: string,
|
||||
): Promise<void> {
|
||||
return session.channelsFollowChannel(id);
|
||||
}
|
||||
|
||||
@Post('unfollow')
|
||||
@SessionApiParam
|
||||
@NewsletterIdApiParam
|
||||
@ApiOperation({ summary: 'Unfollow the channel.' })
|
||||
unfollow(
|
||||
@SessionParam session: WhatsappSession,
|
||||
@Param('id') id: string,
|
||||
): Promise<void> {
|
||||
return session.channelsUnfollowChannel(id);
|
||||
}
|
||||
|
||||
@Post('mute')
|
||||
@SessionApiParam
|
||||
@NewsletterIdApiParam
|
||||
@ApiOperation({ summary: 'Mute the channel.' })
|
||||
mute(
|
||||
@SessionParam session: WhatsappSession,
|
||||
@Param('id') id: string,
|
||||
): Promise<void> {
|
||||
return session.channelsMuteChannel(id);
|
||||
}
|
||||
|
||||
@Post('unmute')
|
||||
@SessionApiParam
|
||||
@NewsletterIdApiParam
|
||||
@ApiOperation({ summary: 'Unmute the channel.' })
|
||||
unmute(
|
||||
@SessionParam session: WhatsappSession,
|
||||
@Param('id') id: string,
|
||||
): Promise<void> {
|
||||
return session.channelsUnmuteChannel(id);
|
||||
}
|
||||
}
|
||||
@@ -4,6 +4,7 @@ import {
|
||||
Delete,
|
||||
Get,
|
||||
Param,
|
||||
Post,
|
||||
Put,
|
||||
Query,
|
||||
UsePipes,
|
||||
@@ -98,6 +99,28 @@ class ChatsController {
|
||||
) {
|
||||
return session.editMessage(chatId, messageId, body);
|
||||
}
|
||||
|
||||
@Post(':chatId/archive')
|
||||
@SessionApiParam
|
||||
@ChatIdApiParam
|
||||
@ApiOperation({ summary: 'Archive the chat' })
|
||||
archiveChat(
|
||||
@SessionParam session: WhatsappSession,
|
||||
@Param('chatId') chatId: string,
|
||||
) {
|
||||
return session.chatsArchiveChat(chatId);
|
||||
}
|
||||
|
||||
@Post(':chatId/unarchive')
|
||||
@SessionApiParam
|
||||
@ChatIdApiParam
|
||||
@ApiOperation({ summary: 'Unarchive the chat' })
|
||||
unarchiveChat(
|
||||
@SessionParam session: WhatsappSession,
|
||||
@Param('chatId') chatId: string,
|
||||
) {
|
||||
return session.chatsUnarchiveChat(chatId);
|
||||
}
|
||||
}
|
||||
|
||||
export { ChatsController };
|
||||
@@ -46,7 +46,7 @@ export class ChattingController {
|
||||
}
|
||||
|
||||
@Get('/sendText')
|
||||
@ApiOperation({ summary: 'Send a text message' })
|
||||
@ApiOperation({ summary: 'Send a text message', deprecated: true })
|
||||
sendTextGet(@Query() query: MessageTextQuery) {
|
||||
const whatsapp = this.manager.getSession(query.session);
|
||||
const msg = new MessageTextRequest();
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { Controller, Get } from '@nestjs/common';
|
||||
import { ApiTags } from '@nestjs/swagger';
|
||||
import { ApiOperation, ApiTags } from '@nestjs/swagger';
|
||||
import { HealthCheck } from '@nestjs/terminus';
|
||||
|
||||
import { WAHAHealthCheckService } from '../core/abc/WAHAHealthCheckService';
|
||||
@@ -11,6 +11,9 @@ export class HealthController {
|
||||
|
||||
@Get()
|
||||
@HealthCheck()
|
||||
@ApiOperation({
|
||||
summary: 'Check the health of the server, performing all health checks.',
|
||||
})
|
||||
async check() {
|
||||
return this.wahaHealth.check();
|
||||
}
|
||||
|
||||
@@ -0,0 +1,52 @@
|
||||
import { Body, Controller, Get, Param, Put } from '@nestjs/common';
|
||||
import { ApiOperation, ApiSecurity, ApiTags } from '@nestjs/swagger';
|
||||
import { SessionApiParam, SessionParam } from '@waha/api/helpers';
|
||||
import { WhatsappSession } from '@waha/core/abc/session.abc';
|
||||
import { Label, LabelID, SetLabelsRequest } from '@waha/structures/labels.dto';
|
||||
|
||||
import { SessionManager } from '../core/abc/manager.abc';
|
||||
|
||||
@ApiSecurity('api_key')
|
||||
@Controller('api/:session/labels')
|
||||
@ApiTags('labels')
|
||||
export class LabelsController {
|
||||
constructor(private manager: SessionManager) {}
|
||||
|
||||
@Get('/')
|
||||
@SessionApiParam
|
||||
@ApiOperation({ summary: 'Get all labels' })
|
||||
getAll(@SessionParam session: WhatsappSession): Promise<Label[]> {
|
||||
return session.getLabels();
|
||||
}
|
||||
|
||||
@Get('/chats/:chatId')
|
||||
@SessionApiParam
|
||||
@ApiOperation({ summary: 'Get labels for the chat' })
|
||||
getChatLabels(
|
||||
@SessionParam session: WhatsappSession,
|
||||
@Param('chatId') chatId: string,
|
||||
): Promise<Label[]> {
|
||||
return session.getChatLabels(chatId);
|
||||
}
|
||||
|
||||
@Put('/chats/:chatId')
|
||||
@SessionApiParam
|
||||
@ApiOperation({ summary: 'Save labels for the chat' })
|
||||
putChatLabels(
|
||||
@SessionParam session: WhatsappSession,
|
||||
@Param('chatId') chatId: string,
|
||||
@Body() request: SetLabelsRequest,
|
||||
) {
|
||||
return session.putLabelsToChat(chatId, request.labels);
|
||||
}
|
||||
|
||||
@Get('/:labelId/chats')
|
||||
@SessionApiParam
|
||||
@ApiOperation({ summary: 'Get chats by label' })
|
||||
getChatsByLabel(
|
||||
@SessionParam session: WhatsappSession,
|
||||
@Param('labelId') labelId: string,
|
||||
) {
|
||||
return session.getChatsByLabelId(labelId);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
import { Controller, Get } from '@nestjs/common';
|
||||
import { ApiOperation, ApiTags } from '@nestjs/swagger';
|
||||
import { PingResponse } from '@waha/structures/ping.dto';
|
||||
|
||||
@Controller('ping')
|
||||
@ApiTags('other')
|
||||
export class PingController {
|
||||
@Get()
|
||||
@ApiOperation({ summary: 'Ping the server, perform no operations.' })
|
||||
ping(): PingResponse {
|
||||
return { message: 'pong' };
|
||||
}
|
||||
}
|
||||
@@ -63,7 +63,7 @@ class SessionsController {
|
||||
}
|
||||
|
||||
@Get('/')
|
||||
async list(@Query() query: ListSessionsQuery): Promise<SessionInfo[]> {
|
||||
list(@Query() query: ListSessionsQuery): Promise<SessionInfo[]> {
|
||||
const all = parseBool(query.all);
|
||||
return this.manager.getSessions(all);
|
||||
}
|
||||
@@ -87,7 +87,7 @@ class SessionController {
|
||||
@Get('me')
|
||||
@SessionApiParam
|
||||
@ApiOperation({ summary: 'Get information about the authenticated account' })
|
||||
getMe(@SessionParam session: WhatsappSession): Promise<MeInfo | null> {
|
||||
getMe(@SessionParam session: WhatsappSession): MeInfo | null {
|
||||
return session.getSessionMeInfo();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,6 +12,7 @@ import { ApiOperation, ApiSecurity, ApiTags } from '@nestjs/swagger';
|
||||
import { SessionManager } from '../core/abc/manager.abc';
|
||||
import { WhatsappSession } from '../core/abc/session.abc';
|
||||
import {
|
||||
DeleteStatusRequest,
|
||||
ImageStatus,
|
||||
TextStatus,
|
||||
VideoStatus,
|
||||
@@ -64,6 +65,16 @@ class StatusController {
|
||||
) {
|
||||
return session.sendVideoStatus(status);
|
||||
}
|
||||
|
||||
@Post('delete')
|
||||
@SessionApiParam
|
||||
@ApiOperation({ summary: 'DELETE sent status.' })
|
||||
deleteStatus(
|
||||
@SessionParam session: WhatsappSession,
|
||||
@Body() status: DeleteStatusRequest,
|
||||
) {
|
||||
return session.deleteStatus(status);
|
||||
}
|
||||
}
|
||||
|
||||
export { StatusController };
|
||||
@@ -1,5 +1,10 @@
|
||||
import { Controller, Get } from '@nestjs/common';
|
||||
import { ApiExtraModels, ApiSecurity, ApiTags } from '@nestjs/swagger';
|
||||
import {
|
||||
ApiExtraModels,
|
||||
ApiOperation,
|
||||
ApiSecurity,
|
||||
ApiTags,
|
||||
} from '@nestjs/swagger';
|
||||
|
||||
import { WAHAEnvironment } from '../structures/environment.dto';
|
||||
import { VERSION } from '../version';
|
||||
@@ -9,6 +14,7 @@ import { VERSION } from '../version';
|
||||
@ApiTags('other')
|
||||
export class VersionController {
|
||||
@Get('')
|
||||
@ApiOperation({ summary: 'Get the version of the server' })
|
||||
get(): WAHAEnvironment {
|
||||
return VERSION;
|
||||
}
|
||||
|
||||
@@ -2,9 +2,7 @@ import { Injectable } from '@nestjs/common';
|
||||
import { ConfigService } from '@nestjs/config';
|
||||
|
||||
import { parseBool } from './helpers';
|
||||
import { WAHAEngine } from './structures/enums.dto';
|
||||
import { WebhookConfig } from './structures/webhooks.config.dto';
|
||||
import { getEngineName } from './version';
|
||||
|
||||
@Injectable()
|
||||
export class WhatsappConfigService {
|
||||
@@ -120,6 +118,14 @@ export class WhatsappConfigService {
|
||||
return this.configService.get('WHATSAPP_API_KEY', '');
|
||||
}
|
||||
|
||||
getExcludedPaths(): string[] {
|
||||
const value = this.configService.get('WHATSAPP_API_KEY_EXCLUDE_PATH', '');
|
||||
if (!value) {
|
||||
return [];
|
||||
}
|
||||
return value.split(',');
|
||||
}
|
||||
|
||||
getHealthMediaFilesThreshold(): number {
|
||||
return this.configService.get<number>(
|
||||
'WHATSAPP_HEALTH_MEDIA_FILES_THRESHOLD_MB',
|
||||
|
||||
@@ -1,13 +1,18 @@
|
||||
import { INestApplication } from '@nestjs/common';
|
||||
import { DocumentBuilder, OpenAPIObject, SwaggerModule } from '@nestjs/swagger';
|
||||
import { DECORATORS } from '@nestjs/swagger/dist/constants';
|
||||
import { Logger } from 'nestjs-pino';
|
||||
|
||||
import { WhatsappConfigService } from '../config.service';
|
||||
import { VERSION } from '../version';
|
||||
import { SwaggerConfigServiceCore } from './config/SwaggerConfigServiceCore';
|
||||
|
||||
export class SwaggerConfiguratorCore {
|
||||
constructor(protected app: INestApplication) {}
|
||||
protected logger: any;
|
||||
|
||||
constructor(protected app: INestApplication) {
|
||||
this.logger = app.get(Logger);
|
||||
}
|
||||
|
||||
get title() {
|
||||
return 'WAHA - WhatsApp HTTP API';
|
||||
@@ -55,6 +60,7 @@ export class SwaggerConfiguratorCore {
|
||||
.addTag('auth', 'Authentication')
|
||||
.addTag('screenshot', 'Get screenshot of WhatsApp and show QR code')
|
||||
.addTag('chatting', 'Chatting methods')
|
||||
.addTag('channels', 'Channels (newsletters) methods')
|
||||
.addTag(
|
||||
'status',
|
||||
'Status (aka stories) methods. <b>NOWEB</b> engine only!',
|
||||
@@ -68,6 +74,10 @@ export class SwaggerConfiguratorCore {
|
||||
)
|
||||
.addTag('groups', `Groups methods.<br>`)
|
||||
.addTag('presence', `Presence information`)
|
||||
.addTag(
|
||||
'labels',
|
||||
'Labels - available only for WhatsApp Business accounts',
|
||||
)
|
||||
.addTag('other', 'Other methods')
|
||||
.addApiKey({
|
||||
type: 'apiKey',
|
||||
|
||||
@@ -1 +1,3 @@
|
||||
export abstract class DataStore {}
|
||||
export abstract class DataStore {
|
||||
abstract init(sessionName?: string): Promise<void>;
|
||||
}
|
||||
@@ -1,7 +1,14 @@
|
||||
import { OnApplicationShutdown } from '@nestjs/common';
|
||||
|
||||
import { WAHAEngine } from '../../structures/enums.dto';
|
||||
import {
|
||||
BeforeApplicationShutdown,
|
||||
OnApplicationShutdown,
|
||||
} from '@nestjs/common';
|
||||
import { WAHAWebhook } from '@waha/structures/webhooks.dto';
|
||||
import { VERSION } from '@waha/version';
|
||||
import { EventEmitter } from 'events';
|
||||
|
||||
import { WAHAEngine, WAHAEvents } from '../../structures/enums.dto';
|
||||
import {
|
||||
MeInfo,
|
||||
SessionDTO,
|
||||
SessionInfo,
|
||||
SessionLogoutRequest,
|
||||
@@ -13,10 +20,11 @@ import { ISessionConfigRepository } from '../storage/ISessionConfigRepository';
|
||||
import { WhatsappSession } from './session.abc';
|
||||
import { WebhookConductor } from './webhooks.abc';
|
||||
|
||||
export abstract class SessionManager implements OnApplicationShutdown {
|
||||
export abstract class SessionManager implements BeforeApplicationShutdown {
|
||||
public store: any;
|
||||
public sessionAuthRepository: ISessionAuthRepository;
|
||||
public sessionConfigRepository: ISessionConfigRepository;
|
||||
public events: EventEmitter;
|
||||
|
||||
protected abstract getEngine(engine: WAHAEngine): typeof WhatsappSession;
|
||||
|
||||
@@ -24,7 +32,7 @@ export abstract class SessionManager implements OnApplicationShutdown {
|
||||
|
||||
protected abstract get WebhookConductorClass(): typeof WebhookConductor;
|
||||
|
||||
abstract onApplicationShutdown(signal?: string);
|
||||
abstract beforeApplicationShutdown(signal?: string);
|
||||
|
||||
//
|
||||
// API Methods
|
||||
@@ -40,4 +48,19 @@ export abstract class SessionManager implements OnApplicationShutdown {
|
||||
abstract getSessionInfo(name: string): Promise<SessionInfo | null>;
|
||||
|
||||
abstract getSessions(all: boolean): Promise<SessionInfo[]>;
|
||||
|
||||
handleSessionEvent(event: WAHAEvents, session: WhatsappSession) {
|
||||
return (payload: any) => {
|
||||
const me = session.getSessionMeInfo();
|
||||
const data: WAHAWebhook = {
|
||||
event: event,
|
||||
session: session.name,
|
||||
me: me,
|
||||
payload: payload,
|
||||
engine: session.engine,
|
||||
environment: VERSION,
|
||||
};
|
||||
this.events.emit(event, data);
|
||||
};
|
||||
}
|
||||
}
|
||||
+104
-16
@@ -1,7 +1,14 @@
|
||||
import { ConsoleLogger } from '@nestjs/common';
|
||||
import {
|
||||
Channel,
|
||||
CreateChannelRequest,
|
||||
ListChannelsQuery,
|
||||
} from '@waha/structures/channels.dto';
|
||||
import { GetChatsQuery } from '@waha/structures/chats.dto';
|
||||
import { Label, LabelID } from '@waha/structures/labels.dto';
|
||||
import { LoggerBuilder } from '@waha/utils/logging';
|
||||
import { EventEmitter } from 'events';
|
||||
import * as fs from 'fs';
|
||||
import { Logger } from 'pino';
|
||||
import { MessageId } from 'whatsapp-web.js';
|
||||
|
||||
import {
|
||||
@@ -41,6 +48,7 @@ import {
|
||||
SessionConfig,
|
||||
} from '../../structures/sessions.dto';
|
||||
import {
|
||||
DeleteStatusRequest,
|
||||
ImageStatus,
|
||||
TextStatus,
|
||||
VideoStatus,
|
||||
@@ -75,14 +83,13 @@ export function ensureSuffix(phone) {
|
||||
|
||||
export enum WAHAInternalEvent {
|
||||
ENGINE_START = 'engine.start',
|
||||
SESSION_STATUS_CHANGED = 'session.status.changed',
|
||||
}
|
||||
|
||||
export interface SessionParams {
|
||||
name: string;
|
||||
printQR: boolean;
|
||||
mediaManager: MediaManager;
|
||||
log: ConsoleLogger;
|
||||
loggerBuilder: LoggerBuilder;
|
||||
sessionStore: DataStore;
|
||||
proxyConfig?: ProxyConfig;
|
||||
sessionConfig?: SessionConfig;
|
||||
@@ -95,7 +102,8 @@ export abstract class WhatsappSession {
|
||||
|
||||
public name: string;
|
||||
protected mediaManager: MediaManager;
|
||||
protected log: ConsoleLogger;
|
||||
public loggerBuilder: LoggerBuilder;
|
||||
protected logger: Logger;
|
||||
protected sessionStore: DataStore;
|
||||
protected proxyConfig?: ProxyConfig;
|
||||
public sessionConfig?: SessionConfig;
|
||||
@@ -107,7 +115,7 @@ export abstract class WhatsappSession {
|
||||
public constructor({
|
||||
name,
|
||||
printQR,
|
||||
log,
|
||||
loggerBuilder,
|
||||
sessionStore,
|
||||
proxyConfig,
|
||||
mediaManager,
|
||||
@@ -117,7 +125,8 @@ export abstract class WhatsappSession {
|
||||
this.events = new EventEmitter();
|
||||
this.name = name;
|
||||
this.proxyConfig = proxyConfig;
|
||||
this.log = log;
|
||||
this.loggerBuilder = loggerBuilder;
|
||||
this.logger = loggerBuilder.child({ name: 'WhatsappSession' });
|
||||
this.sessionStore = sessionStore;
|
||||
this.mediaManager = mediaManager;
|
||||
this.sessionConfig = sessionConfig;
|
||||
@@ -127,7 +136,8 @@ export abstract class WhatsappSession {
|
||||
|
||||
protected set status(value: WAHASessionStatus) {
|
||||
this._status = value;
|
||||
this.events.emit(WAHAInternalEvent.SESSION_STATUS_CHANGED, value);
|
||||
const body: WASessionStatusBody = { name: this.name, status: value };
|
||||
this.events.emit(WAHAEvents.SESSION_STATUS, body);
|
||||
}
|
||||
|
||||
public get status() {
|
||||
@@ -169,7 +179,7 @@ export abstract class WhatsappSession {
|
||||
}
|
||||
|
||||
protected isDebugEnabled() {
|
||||
return this.log.isLevelEnabled('debug');
|
||||
return this.logger.isLevelEnabled('debug');
|
||||
}
|
||||
|
||||
/** Start the session */
|
||||
@@ -185,10 +195,7 @@ export abstract class WhatsappSession {
|
||||
): boolean {
|
||||
switch (hook) {
|
||||
case WAHAEvents.SESSION_STATUS:
|
||||
this.events.on(WAHAInternalEvent.SESSION_STATUS_CHANGED, (value) => {
|
||||
const body: WASessionStatusBody = { name: this.name, status: value };
|
||||
handler(body);
|
||||
});
|
||||
this.events.on(WAHAEvents.SESSION_STATUS, handler);
|
||||
return true;
|
||||
default:
|
||||
return false;
|
||||
@@ -222,8 +229,8 @@ export abstract class WhatsappSession {
|
||||
|
||||
abstract getScreenshot(): Promise<Buffer>;
|
||||
|
||||
public getSessionMeInfo(): Promise<MeInfo | null> {
|
||||
throw new NotImplementedByEngineError();
|
||||
public getSessionMeInfo(): MeInfo | null {
|
||||
return null;
|
||||
}
|
||||
|
||||
public getCaptcha(): Promise<QR> {
|
||||
@@ -318,6 +325,34 @@ export abstract class WhatsappSession {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
public chatsArchiveChat(chatId: string): Promise<any> {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
public chatsUnarchiveChat(chatId: string): Promise<any> {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
/**
|
||||
* Labels methods
|
||||
*/
|
||||
|
||||
public getLabels(): Promise<Label[]> {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
public getChatsByLabelId(labelId: string) {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
public getChatLabels(chatId: string): Promise<Label[]> {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
public putLabelsToChat(chatId: string, labels: LabelID[]) {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
/**
|
||||
* Contacts methods
|
||||
*/
|
||||
@@ -436,6 +471,47 @@ export abstract class WhatsappSession {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
/**
|
||||
* Channels methods
|
||||
*/
|
||||
public channelsList(query: ListChannelsQuery): Promise<Channel[]> {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
public channelsCreateChannel(
|
||||
request: CreateChannelRequest,
|
||||
): Promise<Channel> {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
public channelsGetChannel(id: string): Promise<Channel> {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
public channelsGetChannelByInviteCode(inviteCode: string): Promise<Channel> {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
public channelsDeleteChannel(id: string): Promise<void> {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
public channelsFollowChannel(id: string): Promise<void> {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
public channelsUnfollowChannel(id: string): Promise<void> {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
public channelsMuteChannel(id: string): Promise<void> {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
public channelsUnmuteChannel(id: string): Promise<void> {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
/**
|
||||
* Status methods
|
||||
*/
|
||||
@@ -455,6 +531,10 @@ export abstract class WhatsappSession {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
public deleteStatus(request: DeleteStatusRequest) {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
public async getEngineInfo(): Promise<any> {
|
||||
return {};
|
||||
}
|
||||
@@ -486,14 +566,22 @@ export abstract class WhatsappSession {
|
||||
return;
|
||||
}
|
||||
if (!qr.raw) {
|
||||
this.log.error(
|
||||
this.logger.error(
|
||||
'QR.raw is not available, can not print it in the console',
|
||||
);
|
||||
return;
|
||||
}
|
||||
this.log.log(
|
||||
this.logger.info(
|
||||
"You can disable QR in console by setting 'WAHA_PRINT_QR=false' in your environment variables.",
|
||||
);
|
||||
qrcode.generate(qr.raw, { small: true });
|
||||
}
|
||||
}
|
||||
|
||||
export function isNewsletter(jid: string) {
|
||||
return jid.endsWith('@newsletter');
|
||||
}
|
||||
|
||||
export function getChannelInviteLink(code: string) {
|
||||
return `https://whatsapp.com/channel/${code}`;
|
||||
}
|
||||
@@ -1,15 +1,19 @@
|
||||
import { ConsoleLogger } from '@nestjs/common';
|
||||
import { LoggerBuilder } from '@waha/utils/logging';
|
||||
import { Logger } from 'pino';
|
||||
|
||||
import { WebhookConfig } from '../../structures/webhooks.config.dto';
|
||||
import { WhatsappSession } from './session.abc';
|
||||
|
||||
export abstract class WebhookSender {
|
||||
protected url: string;
|
||||
protected logger: Logger;
|
||||
|
||||
constructor(
|
||||
protected log: ConsoleLogger,
|
||||
loggerBuilder: LoggerBuilder,
|
||||
protected webhookConfig: WebhookConfig,
|
||||
) {
|
||||
this.url = webhookConfig.url;
|
||||
this.logger = loggerBuilder.child({ name: WebhookSender.name });
|
||||
}
|
||||
|
||||
abstract send(json);
|
||||
|
||||
@@ -0,0 +1,138 @@
|
||||
import {
|
||||
BeforeApplicationShutdown,
|
||||
ConsoleLogger,
|
||||
Logger,
|
||||
LoggerService,
|
||||
} from '@nestjs/common';
|
||||
import { sleep } from '@nestjs/terminus/dist/utils';
|
||||
import {
|
||||
OnGatewayConnection,
|
||||
OnGatewayDisconnect,
|
||||
OnGatewayInit,
|
||||
WebSocketGateway,
|
||||
WebSocketServer,
|
||||
} from '@nestjs/websockets';
|
||||
import { SessionManager } from '@waha/core/abc/manager.abc';
|
||||
import { WAHAEvents } from '@waha/structures/enums.dto';
|
||||
import { WebsocketHeartbeatJob } from '@waha/utils/WebsocketHeartbeatJob';
|
||||
import { WebSocket } from '@waha/utils/ws';
|
||||
import { IncomingMessage } from 'http';
|
||||
import * as lodash from 'lodash';
|
||||
import * as url from 'url';
|
||||
import { Server } from 'ws';
|
||||
|
||||
@WebSocketGateway({
|
||||
path: '/ws',
|
||||
cors: true,
|
||||
})
|
||||
export class WebsocketGatewayCore
|
||||
implements
|
||||
OnGatewayInit,
|
||||
OnGatewayConnection,
|
||||
OnGatewayDisconnect,
|
||||
BeforeApplicationShutdown
|
||||
{
|
||||
HEARTBEAT_INTERVAL = 10_000;
|
||||
|
||||
@WebSocketServer()
|
||||
server: Server;
|
||||
|
||||
private listeners: Map<WebSocket, { session: string; events: string[] }> =
|
||||
new Map();
|
||||
|
||||
private readonly logger: LoggerService;
|
||||
private heartbeat: WebsocketHeartbeatJob;
|
||||
|
||||
constructor(private manager: SessionManager) {
|
||||
this.logger = new Logger('WebsocketGateway');
|
||||
this.heartbeat = new WebsocketHeartbeatJob(
|
||||
this.logger,
|
||||
this.HEARTBEAT_INTERVAL,
|
||||
);
|
||||
}
|
||||
|
||||
handleConnection(socket: WebSocket, request: IncomingMessage, ...args): any {
|
||||
const random = Math.random().toString(36).substring(7);
|
||||
const id = `wsc_${random}`;
|
||||
socket.id = id;
|
||||
this.logger.debug(`New client connected: ${request.url}`);
|
||||
const params = this.getParams(id, request, socket);
|
||||
if (!params) {
|
||||
return;
|
||||
}
|
||||
const { session, events } = params;
|
||||
this.logger.debug(
|
||||
`Client connected to session: '${session}', events: ${events}, ${id}`,
|
||||
);
|
||||
this.listeners.set(socket, { session, events });
|
||||
}
|
||||
|
||||
private getParams(id: string, request: IncomingMessage, socket: WebSocket) {
|
||||
const query = url.parse(request.url, true).query;
|
||||
const session = (query.session as string) || '*';
|
||||
if (session !== '*') {
|
||||
this.logger.warn(
|
||||
`Only connecting to all sessions is allowed for now, use session=*, ${id}`,
|
||||
);
|
||||
const error =
|
||||
'Only connecting to all sessions is allowed for now, use session=*';
|
||||
socket.close(4001, JSON.stringify({ error }));
|
||||
return null;
|
||||
}
|
||||
|
||||
const events = ((query.events as string) || '*').split(',');
|
||||
if (
|
||||
!lodash.isEqual(events, ['*']) &&
|
||||
!lodash.isEqual(events, [WAHAEvents.SESSION_STATUS])
|
||||
) {
|
||||
this.logger.warn(
|
||||
`Only \'session.status\' event is allowed for now, use events=session.status or events=*, ${id}`,
|
||||
);
|
||||
const error =
|
||||
"Only 'session.status' event is allowed for now, use events=session.status or events=*";
|
||||
socket.close(4001, JSON.stringify({ error }));
|
||||
return null;
|
||||
}
|
||||
return { session, events };
|
||||
}
|
||||
|
||||
handleDisconnect(socket: WebSocket): any {
|
||||
this.logger.debug(`Client disconnected - ${socket.id}`);
|
||||
this.listeners.delete(socket);
|
||||
}
|
||||
|
||||
async beforeApplicationShutdown(signal?: string) {
|
||||
this.logger.log('Shutting down websocket server');
|
||||
// Allow pending messages to be sent, it can be even 1ms, just to release the event loop
|
||||
await sleep(100);
|
||||
this.server.clients.forEach((options, client) => {
|
||||
client.close(1001, 'Server is shutting down');
|
||||
});
|
||||
// Do not turn off heartbeat service here,
|
||||
// it's responsible for terminating the connection that is not alive
|
||||
this.logger.log('Websocket server is down');
|
||||
}
|
||||
|
||||
afterInit(server: Server) {
|
||||
this.logger.debug('Websocket server initialized');
|
||||
this.manager.events.on(
|
||||
WAHAEvents.SESSION_STATUS,
|
||||
this.sendToAll.bind(this),
|
||||
);
|
||||
this.logger.debug('Subscribed to manager events');
|
||||
|
||||
this.logger.debug('Starting heartbeat service...');
|
||||
this.heartbeat.start(server);
|
||||
this.logger.debug('Heartbeat service started');
|
||||
}
|
||||
|
||||
sendToAll(data: any) {
|
||||
this.listeners.forEach((options, client) => {
|
||||
if (options.events.length === 0) {
|
||||
return;
|
||||
}
|
||||
this.logger.debug('Sending data to client', data);
|
||||
client.send(JSON.stringify(data));
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -1,11 +1,20 @@
|
||||
import { ConsoleLogger, Module } from '@nestjs/common';
|
||||
import { ConsoleLogger, INestApplication, Module } from '@nestjs/common';
|
||||
import { ConfigModule } from '@nestjs/config';
|
||||
import { APP_INTERCEPTOR } from '@nestjs/core';
|
||||
import { PassportModule } from '@nestjs/passport';
|
||||
import { ServeStaticModule } from '@nestjs/serve-static';
|
||||
import { TerminusModule } from '@nestjs/terminus';
|
||||
import { BufferJsonReplacerInterceptor } from '@waha/api/BufferJsonReplacerInterceptor';
|
||||
import { ChannelsController } from '@waha/api/channels.controller';
|
||||
import { WebsocketGatewayCore } from '@waha/core/api/websocket.gateway.core';
|
||||
import {
|
||||
getPinoHttpUseLevel,
|
||||
getPinoLogLevel,
|
||||
getPinoTransport,
|
||||
} from '@waha/utils/logging';
|
||||
import { LoggerModule } from 'nestjs-pino';
|
||||
import { join } from 'path';
|
||||
import { Logger } from 'pino';
|
||||
|
||||
import { AuthController } from '../api/auth.controller';
|
||||
import { ChatsController } from '../api/chats.controller';
|
||||
@@ -13,6 +22,8 @@ import { ChattingController } from '../api/chatting.controller';
|
||||
import { ContactsController } from '../api/contacts.controller';
|
||||
import { GroupsController } from '../api/groups.controller';
|
||||
import { HealthController } from '../api/health.controller';
|
||||
import { LabelsController } from '../api/labels.controller';
|
||||
import { PingController } from '../api/ping.controller';
|
||||
import { PresenceController } from '../api/presence.controller';
|
||||
import { ScreenshotController } from '../api/screenshot.controller';
|
||||
import {
|
||||
@@ -31,6 +42,32 @@ import { WAHAHealthCheckServiceCore } from './health/WAHAHealthCheckServiceCore'
|
||||
import { SessionManagerCore } from './manager.core';
|
||||
|
||||
export const IMPORTS = [
|
||||
LoggerModule.forRoot({
|
||||
renameContext: 'name',
|
||||
pinoHttp: {
|
||||
quietReqLogger: true,
|
||||
level: getPinoLogLevel(),
|
||||
useLevel: getPinoHttpUseLevel(),
|
||||
transport: getPinoTransport(),
|
||||
autoLogging: {
|
||||
ignore: (req) => {
|
||||
return req.url.startsWith('/dashboard/');
|
||||
},
|
||||
},
|
||||
serializers: {
|
||||
req: (req) => ({
|
||||
id: req.id,
|
||||
method: req.method,
|
||||
url: req.url,
|
||||
query: req.query,
|
||||
params: req.params,
|
||||
}),
|
||||
res: (res) => ({
|
||||
statusCode: res.statusCode,
|
||||
}),
|
||||
},
|
||||
},
|
||||
}),
|
||||
ConfigModule.forRoot({
|
||||
isGlobal: true,
|
||||
}),
|
||||
@@ -67,13 +104,16 @@ export const CONTROLLERS = [
|
||||
SessionController,
|
||||
ChattingController,
|
||||
ChatsController,
|
||||
ChannelsController,
|
||||
StatusController,
|
||||
LabelsController,
|
||||
ContactsController,
|
||||
GroupsController,
|
||||
PresenceController,
|
||||
ScreenshotController,
|
||||
VersionController,
|
||||
HealthController,
|
||||
PingController,
|
||||
];
|
||||
const PROVIDERS = [
|
||||
{
|
||||
@@ -93,6 +133,7 @@ const PROVIDERS = [
|
||||
WhatsappConfigService,
|
||||
EngineConfigService,
|
||||
ConsoleLogger,
|
||||
WebsocketGatewayCore,
|
||||
];
|
||||
|
||||
@Module({
|
||||
@@ -102,4 +143,12 @@ const PROVIDERS = [
|
||||
})
|
||||
export class AppModuleCore {
|
||||
constructor(protected config: WhatsappConfigService) {}
|
||||
|
||||
static getHttpsOptions(logger: Logger) {
|
||||
return undefined;
|
||||
}
|
||||
|
||||
static appReady(app: INestApplication, logger: Logger) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,6 @@
|
||||
import { Injectable } from '@nestjs/common';
|
||||
import { Injectable, Logger } from '@nestjs/common';
|
||||
import { ConfigService } from '@nestjs/config';
|
||||
import { InjectPinoLogger, PinoLogger } from 'nestjs-pino';
|
||||
|
||||
import { parseBool } from '../../helpers';
|
||||
|
||||
@@ -7,7 +8,11 @@ import { parseBool } from '../../helpers';
|
||||
export class DashboardConfigServiceCore {
|
||||
public dashboardUri = '/dashboard';
|
||||
|
||||
constructor(protected configService: ConfigService) {}
|
||||
constructor(
|
||||
protected configService: ConfigService,
|
||||
@InjectPinoLogger('DashboardConfigService')
|
||||
protected logger: PinoLogger,
|
||||
) {}
|
||||
|
||||
get enabled(): boolean {
|
||||
const value = this.configService.get('WAHA_DASHBOARD_ENABLED', 'true');
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { Injectable } from '@nestjs/common';
|
||||
import { Injectable, Logger } from '@nestjs/common';
|
||||
import { ConfigService } from '@nestjs/config';
|
||||
|
||||
import { parseBool } from '../../helpers';
|
||||
@@ -7,14 +7,18 @@ import { getEngineName } from '../../version';
|
||||
|
||||
@Injectable()
|
||||
export class EngineConfigService {
|
||||
constructor(protected configService: ConfigService) {}
|
||||
private logger: Logger;
|
||||
|
||||
constructor(protected configService: ConfigService) {
|
||||
this.logger = new Logger('EngineConfigService');
|
||||
}
|
||||
|
||||
getDefaultEngineName(): WAHAEngine {
|
||||
const value = getEngineName();
|
||||
if (value in WAHAEngine) {
|
||||
return WAHAEngine[value];
|
||||
}
|
||||
console.log(
|
||||
this.logger.warn(
|
||||
`Unknown WhatsApp default engine WHATSAPP_DEFAULT_ENGINE=${value}. Using WEBJS`,
|
||||
);
|
||||
return WAHAEngine.WEBJS;
|
||||
|
||||
@@ -1,11 +1,16 @@
|
||||
import { Injectable } from '@nestjs/common';
|
||||
import { ConfigService } from '@nestjs/config';
|
||||
import { InjectPinoLogger, PinoLogger } from 'nestjs-pino';
|
||||
|
||||
import { parseBool } from '../../helpers';
|
||||
|
||||
@Injectable()
|
||||
export class SwaggerConfigServiceCore {
|
||||
constructor(protected configService: ConfigService) {}
|
||||
constructor(
|
||||
protected configService: ConfigService,
|
||||
@InjectPinoLogger('SwaggerConfigService')
|
||||
protected logger: PinoLogger,
|
||||
) {}
|
||||
|
||||
get advancedConfigEnabled(): boolean {
|
||||
const value = this.configService.get(
|
||||
|
||||
@@ -5,32 +5,54 @@ import makeWASocket, {
|
||||
extractMessageContent,
|
||||
getAggregateVotesInPollMessage,
|
||||
getKeyAuthor,
|
||||
getUrlFromDirectPath,
|
||||
isJidGroup,
|
||||
isJidStatusBroadcast,
|
||||
isRealMessage,
|
||||
jidNormalizedUser,
|
||||
makeCacheableSignalKeyStore,
|
||||
NewsletterMetadata,
|
||||
normalizeMessageContent,
|
||||
PresenceData,
|
||||
proto,
|
||||
WAMessageContent,
|
||||
WAMessageKey,
|
||||
} from '@adiwajshing/baileys';
|
||||
import { WACallEvent } from '@adiwajshing/baileys/lib/Types/Call';
|
||||
import { Label as NOWEBLabel } from '@adiwajshing/baileys/lib/Types/Label';
|
||||
import { LabelAssociationType } from '@adiwajshing/baileys/lib/Types/LabelAssociation';
|
||||
import { isLidUser } from '@adiwajshing/baileys/lib/WABinary/jid-utils';
|
||||
import { Logger as BaileysLogger } from '@adiwajshing/baileys/node_modules/pino';
|
||||
import { UnprocessableEntityException } from '@nestjs/common';
|
||||
import { NowebInMemoryStore } from '@waha/core/engines/noweb/store/NowebInMemoryStore';
|
||||
import { flipObject, getLogLevels, parseBool, splitAt } from '@waha/helpers';
|
||||
import { flipObject, parseBool, splitAt } from '@waha/helpers';
|
||||
import { PairingCodeResponse } from '@waha/structures/auth.dto';
|
||||
import { CallData } from '@waha/structures/calls.dto';
|
||||
import {
|
||||
Channel,
|
||||
ChannelRole,
|
||||
CreateChannelRequest,
|
||||
ListChannelsQuery,
|
||||
} from '@waha/structures/channels.dto';
|
||||
import { GetChatsQuery } from '@waha/structures/chats.dto';
|
||||
import { ContactQuery, ContactRequest } from '@waha/structures/contacts.dto';
|
||||
import {
|
||||
Label,
|
||||
LabelChatAssociation,
|
||||
LabelID,
|
||||
} from '@waha/structures/labels.dto';
|
||||
import {
|
||||
PollVote,
|
||||
PollVotePayload,
|
||||
WAMessageAckBody,
|
||||
} from '@waha/structures/webhooks.dto';
|
||||
import { SingleDelayedJobRunner } from '@waha/utils/SingleDelayedJobRunner';
|
||||
import { SinglePeriodicJobRunner } from '@waha/utils/SinglePeriodicJobRunner';
|
||||
import * as Buffer from 'buffer';
|
||||
import { Agent } from 'https';
|
||||
import * as lodash from 'lodash';
|
||||
import { toNumber } from 'lodash';
|
||||
import * as NodeCache from 'node-cache';
|
||||
|
||||
import {
|
||||
ChatRequest,
|
||||
@@ -74,10 +96,16 @@ import {
|
||||
WAMessageReaction,
|
||||
} from '../../../structures/responses.dto';
|
||||
import { MeInfo } from '../../../structures/sessions.dto';
|
||||
import { BROADCAST_ID, TextStatus } from '../../../structures/status.dto';
|
||||
import {
|
||||
BROADCAST_ID,
|
||||
DeleteStatusRequest,
|
||||
TextStatus,
|
||||
} from '../../../structures/status.dto';
|
||||
import { IEngineMediaProcessor } from '../../abc/media.abc';
|
||||
import {
|
||||
ensureSuffix,
|
||||
getChannelInviteLink,
|
||||
isNewsletter,
|
||||
WAHAInternalEvent,
|
||||
WhatsappSession,
|
||||
} from '../../abc/session.abc';
|
||||
@@ -87,7 +115,6 @@ import {
|
||||
} from '../../exceptions';
|
||||
import { toVcard } from '../../helpers';
|
||||
import { createAgentProxy } from '../../helpers.proxy';
|
||||
import { buildLogger } from '../../manager.core';
|
||||
import { QR } from '../../QR';
|
||||
import { NowebAuthFactoryCore } from './NowebAuthFactoryCore';
|
||||
import { INowebStore } from './store/INowebStore';
|
||||
@@ -97,8 +124,6 @@ import { extractMediaContent } from './utils';
|
||||
|
||||
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
||||
const QRCode = require('qrcode');
|
||||
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
||||
const logger = require('pino')();
|
||||
|
||||
export const BaileysEvents = {
|
||||
CONNECTION_UPDATE: 'connection.update',
|
||||
@@ -126,8 +151,10 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
|
||||
engine = WAHAEngine.NOWEB;
|
||||
authFactory = new NowebAuthFactoryCore();
|
||||
storageFactory = new NowebStorageFactoryCore();
|
||||
private startTimeoutId: null | ReturnType<typeof setTimeout> = null;
|
||||
private autoRestartTimeoutId: null | ReturnType<typeof setTimeout> = null;
|
||||
private startDelayedJob: SingleDelayedJobRunner;
|
||||
private autoRestartJob: SinglePeriodicJobRunner;
|
||||
private msgRetryCounterCache: NodeCache;
|
||||
protected engineLogger: BaileysLogger;
|
||||
|
||||
get listenConnectionEventsFromTheStart() {
|
||||
return true;
|
||||
@@ -140,6 +167,32 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
|
||||
public constructor(config) {
|
||||
super(config);
|
||||
this.qr = new QR();
|
||||
// external map to store retry counts of messages when decryption/encryption fails
|
||||
// keep this out of the socket itself, to prevent a message decryption/encryption loop across socket restarts
|
||||
this.msgRetryCounterCache = new NodeCache({
|
||||
stdTTL: 60 * 60, // 1 hour
|
||||
useClones: false,
|
||||
});
|
||||
|
||||
this.engineLogger = this.loggerBuilder.child({
|
||||
name: 'NOWEBEngine',
|
||||
}) as unknown as BaileysLogger;
|
||||
|
||||
// Restart job if session failed
|
||||
this.startDelayedJob = new SingleDelayedJobRunner(
|
||||
'start-engine',
|
||||
this.START_ATTEMPT_DELAY_SECONDS * SECOND,
|
||||
this.logger,
|
||||
);
|
||||
|
||||
// Enable auto-restart
|
||||
const shiftSeconds = Math.floor(Math.random() * 30);
|
||||
const delay = this.AUTO_RESTART_AFTER_SECONDS + shiftSeconds;
|
||||
this.autoRestartJob = new SinglePeriodicJobRunner(
|
||||
'auto-restart',
|
||||
delay * SECOND,
|
||||
this.logger,
|
||||
);
|
||||
}
|
||||
|
||||
start() {
|
||||
@@ -147,7 +200,7 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
|
||||
this.buildClient();
|
||||
}
|
||||
|
||||
getSocketConfig(agent, state) {
|
||||
getSocketConfig(agent, state): any {
|
||||
const fullSyncEnabled = this.sessionConfig?.noweb?.store?.fullSync || false;
|
||||
const browser = fullSyncEnabled
|
||||
? Browsers.ubuntu('Desktop')
|
||||
@@ -158,19 +211,21 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
|
||||
auth: {
|
||||
creds: state.creds,
|
||||
/** caching makes the store faster to send/recv messages */
|
||||
keys: makeCacheableSignalKeyStore(state.keys, logger),
|
||||
keys: makeCacheableSignalKeyStore(state.keys, this.engineLogger),
|
||||
},
|
||||
printQRInTerminal: false,
|
||||
browser: browser,
|
||||
logger: logger,
|
||||
logger: this.engineLogger,
|
||||
mobile: false,
|
||||
defaultQueryTimeoutMs: undefined,
|
||||
defaultQueryTimeoutMs: 120_000,
|
||||
keepAliveIntervalMs: 30_000,
|
||||
getMessage: (key) => this.getMessage(key),
|
||||
syncFullHistory: fullSyncEnabled,
|
||||
msgRetryCounterCache: this.msgRetryCounterCache,
|
||||
};
|
||||
}
|
||||
|
||||
async makeSocket() {
|
||||
async makeSocket(): Promise<any> {
|
||||
const { state, saveCreds } = await this.authFactory.buildAuth(
|
||||
this.sessionStore,
|
||||
this.name,
|
||||
@@ -190,31 +245,32 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
|
||||
}
|
||||
|
||||
async connectStore() {
|
||||
this.log.debug(`Connecting store...`);
|
||||
this.logger.debug(`Connecting store...`);
|
||||
if (!this.store) {
|
||||
this.log.debug(`Making a new store...`);
|
||||
const levels = getLogLevels(false);
|
||||
const log = buildLogger(`NowebStore - ${this.name}`, levels);
|
||||
this.logger.debug(`Making a new store...`);
|
||||
const storeEnabled = this.sessionConfig?.noweb?.store?.enabled || false;
|
||||
if (storeEnabled) {
|
||||
this.log.debug('Using NowebPersistentStore');
|
||||
this.logger.debug('Using NowebPersistentStore');
|
||||
const storage = this.storageFactory.createStorage(
|
||||
this.sessionStore,
|
||||
this.name,
|
||||
);
|
||||
this.store = new NowebPersistentStore(log, storage);
|
||||
this.store = new NowebPersistentStore(
|
||||
this.loggerBuilder.child({ name: NowebPersistentStore.name }),
|
||||
storage,
|
||||
);
|
||||
await this.store.init().catch((err) => {
|
||||
this.log.error(`Failed to initialize storage or store: ${err}`);
|
||||
this.logger.error(`Failed to initialize storage or store: ${err}`);
|
||||
this.status = WAHASessionStatus.FAILED;
|
||||
this.end();
|
||||
throw err;
|
||||
});
|
||||
} else {
|
||||
this.log.debug('Using NowebInMemoryStore');
|
||||
this.logger.debug('Using NowebInMemoryStore');
|
||||
this.store = new NowebInMemoryStore();
|
||||
}
|
||||
}
|
||||
this.log.debug(`Binding store to socket...`);
|
||||
this.logger.debug(`Binding store to socket...`);
|
||||
this.store.bind(this.sock.ev, this.sock);
|
||||
}
|
||||
|
||||
@@ -227,6 +283,7 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
|
||||
async buildClient() {
|
||||
this.sock = await this.makeSocket();
|
||||
this.issueMessageUpdateOnEdits();
|
||||
this.issuePresenceUpdateOnMessageUpsert();
|
||||
if (this.isDebugEnabled()) {
|
||||
this.listenEngineEventsInDebugMode();
|
||||
}
|
||||
@@ -238,20 +295,11 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
|
||||
this.enableAutoRestart();
|
||||
}
|
||||
|
||||
protected enableAutoRestart() {
|
||||
if (this.autoRestartTimeoutId) {
|
||||
return;
|
||||
}
|
||||
|
||||
// add random delay to avoid multiple restarts at the same time
|
||||
const shiftSeconds = Math.floor(Math.random() * 30);
|
||||
const delay = this.AUTO_RESTART_AFTER_SECONDS + shiftSeconds;
|
||||
this.log.debug(`Auto-restart is enabled, after ${delay} seconds`);
|
||||
this.autoRestartTimeoutId = setTimeout(() => {
|
||||
this.autoRestartTimeoutId = null;
|
||||
this.log.log('Auto-restarting the client connection...');
|
||||
private enableAutoRestart() {
|
||||
this.autoRestartJob.start(async () => {
|
||||
this.logger.info('Auto-restarting the client connection...');
|
||||
this.sock?.end(new Error('auto-restart'));
|
||||
}, delay * SECOND);
|
||||
});
|
||||
}
|
||||
|
||||
protected async getMessage(
|
||||
@@ -266,28 +314,18 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
|
||||
|
||||
protected listenEngineEventsInDebugMode() {
|
||||
this.sock.ev.process((events) => {
|
||||
this.log.debug(`NOWEB events: ${JSON.stringify(events)}`);
|
||||
this.logger.debug({ events: events }, `NOWEB events`);
|
||||
});
|
||||
}
|
||||
|
||||
private restartClient() {
|
||||
if (this.startTimeoutId) {
|
||||
this.log.log(
|
||||
'Request to restart is already in progress, ignoring this request',
|
||||
);
|
||||
return;
|
||||
}
|
||||
this.log.log(
|
||||
`Setting up client start in ${this.START_ATTEMPT_DELAY_SECONDS} seconds...`,
|
||||
);
|
||||
this.startTimeoutId = setTimeout(() => {
|
||||
this.startTimeoutId = undefined;
|
||||
this.buildClient();
|
||||
}, this.START_ATTEMPT_DELAY_SECONDS * SECOND);
|
||||
this.startDelayedJob.schedule(async () => {
|
||||
await this.buildClient();
|
||||
});
|
||||
}
|
||||
|
||||
protected listenConnectionEvents() {
|
||||
this.log.debug(`Start listening ${BaileysEvents.CONNECTION_UPDATE}...`);
|
||||
this.logger.debug(`Start listening ${BaileysEvents.CONNECTION_UPDATE}...`);
|
||||
this.sock.ev.on('connection.update', async (update) => {
|
||||
const { connection, lastDisconnect, qr, isNewLogin } = update;
|
||||
if (isNewLogin) {
|
||||
@@ -305,12 +343,12 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
|
||||
this.qr.save('');
|
||||
// reconnect if not logged out
|
||||
if (shouldReconnect) {
|
||||
this.log.log(
|
||||
this.logger.info(
|
||||
`Connection closed due to '${lastDisconnect.error}', reconnecting...`,
|
||||
);
|
||||
this.restartClient();
|
||||
} else {
|
||||
this.log.error(
|
||||
this.logger.error(
|
||||
`Connection closed due to '${lastDisconnect.error}', do not reconnect the session.`,
|
||||
);
|
||||
await this.end();
|
||||
@@ -329,8 +367,9 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
|
||||
}
|
||||
|
||||
async stop() {
|
||||
await this.end();
|
||||
this.status = WAHASessionStatus.STOPPED;
|
||||
this.events.removeAllListeners();
|
||||
await this.end();
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -360,9 +399,41 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
|
||||
});
|
||||
}
|
||||
|
||||
private issuePresenceUpdateOnMessageUpsert() {
|
||||
//
|
||||
// Fix for "typing" after sending a message
|
||||
// https://github.com/devlikeapro/waha/issues/379
|
||||
//
|
||||
this.sock.ev.on('messages.upsert', ({ messages }) => {
|
||||
const meId = this.sock?.authState?.creds?.me?.id;
|
||||
for (const message of messages) {
|
||||
if (!isRealMessage(message, meId)) {
|
||||
continue;
|
||||
}
|
||||
if (message.key.fromMe) {
|
||||
continue;
|
||||
}
|
||||
const jid = message.key.remoteJid;
|
||||
const participant = message.key.participant || jid;
|
||||
const jidPresences = this.store?.presences?.[jid];
|
||||
const participantPresence = jidPresences?.[participant];
|
||||
if (participantPresence?.lastKnownPresence === 'composing') {
|
||||
this.logger.debug(
|
||||
`Fixing presence for '${participant}' in '${jid} since it's typing`,
|
||||
);
|
||||
const presence: PresenceData = { lastKnownPresence: 'available' };
|
||||
this.sock?.ev?.emit('presence.update', {
|
||||
id: jid,
|
||||
presences: { [participant]: presence },
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private async end() {
|
||||
clearTimeout(this.autoRestartTimeoutId);
|
||||
clearTimeout(this.startTimeoutId);
|
||||
this.autoRestartJob.stop();
|
||||
this.startDelayedJob.cancel();
|
||||
// @ts-ignore
|
||||
this.sock?.ev?.removeAllListeners();
|
||||
this.sock?.ws?.removeAllListeners();
|
||||
@@ -370,17 +441,16 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
|
||||
this.store?.close();
|
||||
}
|
||||
|
||||
async getSessionMeInfo(): Promise<MeInfo | null> {
|
||||
const me = this.sock.authState?.creds?.me;
|
||||
getSessionMeInfo(): MeInfo | null {
|
||||
const me = this.sock?.authState?.creds?.me;
|
||||
if (!me) {
|
||||
return null;
|
||||
}
|
||||
const meId = jidNormalizedUser(me.id);
|
||||
const meInfo: MeInfo = {
|
||||
return {
|
||||
id: toCusFormat(meId),
|
||||
pushName: me.name,
|
||||
};
|
||||
return meInfo;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -405,7 +475,7 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
|
||||
}
|
||||
|
||||
if (this.status == WAHASessionStatus.STARTING) {
|
||||
this.log.debug('Waiting for connection update...');
|
||||
this.logger.debug('Waiting for connection update...');
|
||||
await this.sock.waitForConnectionUpdate((update) => !!update.qr);
|
||||
}
|
||||
|
||||
@@ -414,12 +484,12 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
|
||||
throw new UnprocessableEntityException(err);
|
||||
}
|
||||
|
||||
this.log.log(`Requesting pairing code for '${phoneNumber}'...`);
|
||||
this.logger.info(`Requesting pairing code for '${phoneNumber}'...`);
|
||||
const code: string = await this.sock.requestPairingCode(phoneNumber);
|
||||
// show it as ABCD-ABCD
|
||||
const parts = splitAt(code, 4);
|
||||
const codeRepr = parts.join('-');
|
||||
this.log.log(`Your code: ${codeRepr}`);
|
||||
this.logger.info(`Your code: ${codeRepr}`);
|
||||
return { code: codeRepr };
|
||||
}
|
||||
|
||||
@@ -468,7 +538,14 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
|
||||
public deleteMessage(chatId: string, messageId: string) {
|
||||
const jid = toJID(this.ensureSuffix(chatId));
|
||||
const key = parseMessageId(messageId);
|
||||
return this.sock.sendMessage(jid, { delete: key });
|
||||
const options = {
|
||||
statusJidList: [
|
||||
'79521562380@s.whatsapp.net',
|
||||
'79069571990@s.whatsapp.net',
|
||||
'79069471990@s.whatsapp.net',
|
||||
],
|
||||
};
|
||||
return this.sock.sendMessage(jid, { delete: key }, options);
|
||||
}
|
||||
|
||||
public editMessage(
|
||||
@@ -631,6 +708,73 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
|
||||
return chats;
|
||||
}
|
||||
|
||||
protected async chatsPutArchive(
|
||||
chatId: string,
|
||||
archive: boolean,
|
||||
): Promise<any> {
|
||||
const jid = toJID(chatId);
|
||||
const messages = await this.store.getMessagesByJid(jid, 1);
|
||||
return await this.sock.chatModify(
|
||||
{ archive: archive, lastMessages: messages },
|
||||
jid,
|
||||
);
|
||||
}
|
||||
|
||||
public chatsArchiveChat(chatId: string): Promise<any> {
|
||||
return this.chatsPutArchive(chatId, true);
|
||||
}
|
||||
|
||||
public chatsUnarchiveChat(chatId: string): Promise<any> {
|
||||
return this.chatsPutArchive(chatId, false);
|
||||
}
|
||||
|
||||
/**
|
||||
* Labels methods
|
||||
*/
|
||||
|
||||
public async getLabels(): Promise<Label[]> {
|
||||
const labels = await this.store.getLabels();
|
||||
return labels.map(this.toLabel);
|
||||
}
|
||||
|
||||
public async getChatsByLabelId(labelId: string) {
|
||||
const chats = await this.store.getChatsByLabelId(labelId);
|
||||
// Remove unreadCount, it's not ready yet
|
||||
chats.forEach((chat) => delete chat.unreadCount);
|
||||
return chats;
|
||||
}
|
||||
|
||||
public async getChatLabels(chatId: string): Promise<Label[]> {
|
||||
const jid = toJID(chatId);
|
||||
const labels = await this.store.getChatLabels(jid);
|
||||
return labels.map(this.toLabel);
|
||||
}
|
||||
|
||||
public async putLabelsToChat(chatId: string, labels: LabelID[]) {
|
||||
const jid = toJID(chatId);
|
||||
const labelsIds = labels.map((label) => label.id);
|
||||
const currentLabels = await this.store.getChatLabels(jid);
|
||||
const currentLabelsIds = currentLabels.map((label) => label.id);
|
||||
const addLabelsIds = lodash.difference(labelsIds, currentLabelsIds);
|
||||
const removeLabelsIds = lodash.difference(currentLabelsIds, labelsIds);
|
||||
for (const labelId of addLabelsIds) {
|
||||
await this.sock.addChatLabel(jid, labelId);
|
||||
}
|
||||
for (const labelId of removeLabelsIds) {
|
||||
await this.sock.removeChatLabel(jid, labelId);
|
||||
}
|
||||
}
|
||||
|
||||
protected toLabel(label: NOWEBLabel): Label {
|
||||
const color = label.color;
|
||||
return {
|
||||
id: label.id,
|
||||
name: label.name,
|
||||
color: color,
|
||||
colorHex: Label.toHex(color),
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* Contacts methods
|
||||
*/
|
||||
@@ -753,20 +897,13 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
|
||||
}
|
||||
|
||||
public async getPresence(chatId: string): Promise<WAHAChatPresences> {
|
||||
await this.subscribePresence(chatId);
|
||||
const remoteJid = toJID(chatId);
|
||||
const storedPresences = this.store.presences[remoteJid];
|
||||
return this.toWahaPresences(remoteJid, storedPresences || []);
|
||||
}
|
||||
|
||||
public async subscribePresence(chatId: string): Promise<void> {
|
||||
const remoteJid = toJID(chatId);
|
||||
if (this.store.presences[remoteJid]) {
|
||||
return;
|
||||
if (!(remoteJid in this.store.presences)) {
|
||||
this.store.presences[remoteJid] = [];
|
||||
await this.sock.presenceSubscribe(remoteJid);
|
||||
}
|
||||
// Have no info - subscribe to listen for events
|
||||
await this.sock.presenceSubscribe(remoteJid);
|
||||
return;
|
||||
const result = this.store.presences[remoteJid];
|
||||
return this.toWahaPresences(remoteJid, result);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -781,9 +918,28 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
|
||||
font: status.font,
|
||||
statusJidList: JIDs,
|
||||
};
|
||||
|
||||
return this.sock.sendMessage(BROADCAST_ID, message, options);
|
||||
}
|
||||
|
||||
public deleteStatus(request: DeleteStatusRequest) {
|
||||
const messageId = request.id;
|
||||
let key: any;
|
||||
if (messageId.includes('_')) {
|
||||
key = parseMessageId(messageId);
|
||||
} else {
|
||||
key = { id: messageId };
|
||||
}
|
||||
|
||||
key.fromMe = true;
|
||||
key.remoteJid = BROADCAST_ID;
|
||||
const JIDs = request.contacts.map(toJID);
|
||||
const options = {
|
||||
statusJidList: JIDs,
|
||||
};
|
||||
return this.sock.sendMessage(BROADCAST_ID, { delete: key }, options);
|
||||
}
|
||||
|
||||
protected upsertMeInJIDs(JIDs: string[]) {
|
||||
if (!this.sock?.authState?.creds?.me) {
|
||||
return;
|
||||
@@ -794,6 +950,81 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Channels methods
|
||||
*/
|
||||
protected toChannel(newsletter: NewsletterMetadata): Channel {
|
||||
const role =
|
||||
// @ts-ignore
|
||||
newsletter.viewer_metadata?.role ||
|
||||
(newsletter.viewer_metadata?.view_role as ChannelRole) ||
|
||||
ChannelRole.GUEST;
|
||||
const preview = newsletter.preview
|
||||
? getUrlFromDirectPath(newsletter.preview)
|
||||
: null;
|
||||
const picture = newsletter.picture
|
||||
? getUrlFromDirectPath(newsletter.picture)
|
||||
: null;
|
||||
return {
|
||||
id: newsletter.id,
|
||||
name: newsletter.name,
|
||||
description: newsletter.description,
|
||||
invite: getChannelInviteLink(newsletter.invite),
|
||||
preview: preview,
|
||||
picture: picture,
|
||||
verified: newsletter.verification === 'VERIFIED',
|
||||
role: role,
|
||||
};
|
||||
}
|
||||
|
||||
public async channelsList(query: ListChannelsQuery): Promise<Channel[]> {
|
||||
const newsletters = await this.sock.newsletterSubscribed();
|
||||
let channels = newsletters.map(this.toChannel);
|
||||
if (query.role) {
|
||||
// @ts-ignore
|
||||
channels = channels.filter((channel) => channel.role === query.role);
|
||||
}
|
||||
return channels;
|
||||
}
|
||||
|
||||
public async channelsCreateChannel(request: CreateChannelRequest) {
|
||||
const newsletter = await this.sock.newsletterCreate(
|
||||
request.name,
|
||||
request.description,
|
||||
);
|
||||
return this.toChannel(newsletter);
|
||||
}
|
||||
|
||||
public async channelsGetChannel(id: string) {
|
||||
const newsletter = await this.sock.newsletterMetadata('jid', id);
|
||||
return this.toChannel(newsletter);
|
||||
}
|
||||
|
||||
public async channelsGetChannelByInviteCode(inviteCode: string) {
|
||||
const newsletter = await this.sock.newsletterMetadata('invite', inviteCode);
|
||||
return this.toChannel(newsletter);
|
||||
}
|
||||
|
||||
public async channelsDeleteChannel(id: string) {
|
||||
return await this.sock.newsletterDelete(id);
|
||||
}
|
||||
|
||||
public async channelsFollowChannel(id: string): Promise<void> {
|
||||
return await this.sock.newsletterFollow(id);
|
||||
}
|
||||
|
||||
public async channelsUnfollowChannel(id: string): Promise<void> {
|
||||
return await this.sock.newsletterUnfollow(id);
|
||||
}
|
||||
|
||||
public async channelsMuteChannel(id: string): Promise<void> {
|
||||
return await this.sock.newsletterMute(id);
|
||||
}
|
||||
|
||||
public async channelsUnmuteChannel(id: string): Promise<void> {
|
||||
return await this.sock.newsletterUnmute(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* END - Methods for API
|
||||
*/
|
||||
@@ -857,6 +1088,99 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
|
||||
);
|
||||
});
|
||||
return true;
|
||||
case WAHAEvents.CALL_RECEIVED:
|
||||
this.sock.ev.on('call', (calls: WACallEvent[]) => {
|
||||
calls = lodash.filter(calls, { status: 'offer' });
|
||||
for (const call of calls) {
|
||||
const body = this.toCallData(call);
|
||||
handler(body);
|
||||
}
|
||||
});
|
||||
return true;
|
||||
case WAHAEvents.CALL_ACCEPTED:
|
||||
this.sock.ev.on('call', (calls: WACallEvent[]) => {
|
||||
calls = lodash.filter(calls, { status: 'accept' });
|
||||
for (const call of calls) {
|
||||
const body = this.toCallData(call);
|
||||
handler(body);
|
||||
}
|
||||
});
|
||||
return true;
|
||||
case WAHAEvents.CALL_REJECTED:
|
||||
this.sock.ev.on('call', (calls: WACallEvent[]) => {
|
||||
const acceptCalls = lodash.filter(calls, { status: 'accept' });
|
||||
if (acceptCalls.length > 0) {
|
||||
// We got two events when accepting calls - reject and accept
|
||||
// Like for each device
|
||||
// So if we see accepted call - ignore rejected
|
||||
return;
|
||||
}
|
||||
|
||||
calls = lodash.filter(calls, { status: 'reject' });
|
||||
for (const call of calls) {
|
||||
const body = this.toCallData(call);
|
||||
if (body.isGroup == null) {
|
||||
// We get two "reject" events, one with null property, ignore it
|
||||
return;
|
||||
}
|
||||
handler(body);
|
||||
}
|
||||
});
|
||||
return true;
|
||||
case WAHAEvents.LABEL_UPSERT:
|
||||
this.sock.ev.on('labels.edit', (data: NOWEBLabel) => {
|
||||
if (data.deleted) {
|
||||
return;
|
||||
}
|
||||
const body = this.toLabel(data);
|
||||
handler(body);
|
||||
});
|
||||
return true;
|
||||
case WAHAEvents.LABEL_DELETED:
|
||||
this.sock.ev.on('labels.edit', (data: NOWEBLabel) => {
|
||||
if (!data.deleted) {
|
||||
return;
|
||||
}
|
||||
const body = this.toLabel(data);
|
||||
handler(body);
|
||||
});
|
||||
return true;
|
||||
case WAHAEvents.LABEL_CHAT_ADDED:
|
||||
this.sock.ev.on('labels.association', async ({ association, type }) => {
|
||||
if (type !== 'add') {
|
||||
return;
|
||||
}
|
||||
if (association.type !== LabelAssociationType.Chat) {
|
||||
return;
|
||||
}
|
||||
const labelData = await this.store.getLabelById(association.labelId);
|
||||
const label = labelData ? this.toLabel(labelData) : null;
|
||||
const body: LabelChatAssociation = {
|
||||
labelId: association.labelId,
|
||||
chatId: toCusFormat(association.chatId),
|
||||
label: label,
|
||||
};
|
||||
handler(body);
|
||||
});
|
||||
return true;
|
||||
case WAHAEvents.LABEL_CHAT_DELETED:
|
||||
this.sock.ev.on('labels.association', async ({ association, type }) => {
|
||||
if (type !== 'remove') {
|
||||
return;
|
||||
}
|
||||
if (association.type !== LabelAssociationType.Chat) {
|
||||
return;
|
||||
}
|
||||
const labelData = await this.store.getLabelById(association.labelId);
|
||||
const label = labelData ? this.toLabel(labelData) : null;
|
||||
const body: LabelChatAssociation = {
|
||||
labelId: association.labelId,
|
||||
chatId: toCusFormat(association.chatId),
|
||||
label: label,
|
||||
};
|
||||
handler(body);
|
||||
});
|
||||
return true;
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
@@ -918,16 +1242,16 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
|
||||
try {
|
||||
message = await this.downloadMedia(message);
|
||||
} catch (e) {
|
||||
this.log.error('Failed when tried to download media for a message');
|
||||
this.log.error(e, e.stack);
|
||||
this.logger.error('Failed when tried to download media for a message');
|
||||
this.logger.error(e, e.stack);
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
return await this.toWAMessage(message);
|
||||
} catch (error) {
|
||||
this.log.error('Failed to process incoming message');
|
||||
this.log.error(error);
|
||||
this.logger.error('Failed to process incoming message');
|
||||
this.logger.error(error);
|
||||
console.trace(error);
|
||||
return null;
|
||||
}
|
||||
@@ -1094,6 +1418,20 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
|
||||
handler(payload);
|
||||
}
|
||||
|
||||
private toCallData(call: WACallEvent): CallData {
|
||||
// call.date can be either string 2024-07-18T09:45:55.000Z or Date
|
||||
const date = new Date(call.date);
|
||||
// convert to timestamp in seconds
|
||||
const timestamp: number = date.getTime() / 1000;
|
||||
return {
|
||||
id: call.id,
|
||||
from: toCusFormat(call.from),
|
||||
timestamp: timestamp,
|
||||
isVideo: call.isVideo,
|
||||
isGroup: call.isGroup,
|
||||
};
|
||||
}
|
||||
|
||||
private toWahaPresences(
|
||||
remoteJid: string,
|
||||
storedPresences: { [participant: string]: PresenceData },
|
||||
@@ -1153,6 +1491,9 @@ export class EngineMediaProcessor implements IEngineMediaProcessor<any> {
|
||||
* Convert from 11111111111@s.whatsapp.net to 11111111111@c.us
|
||||
*/
|
||||
function toCusFormat(remoteJid) {
|
||||
if (!remoteJid) {
|
||||
return remoteJid;
|
||||
}
|
||||
if (isJidGroup(remoteJid)) {
|
||||
return remoteJid;
|
||||
}
|
||||
@@ -1162,6 +1503,9 @@ function toCusFormat(remoteJid) {
|
||||
if (isLidUser(remoteJid)) {
|
||||
return remoteJid;
|
||||
}
|
||||
if (isNewsletter(remoteJid)) {
|
||||
return remoteJid;
|
||||
}
|
||||
if (!remoteJid) {
|
||||
return;
|
||||
}
|
||||
@@ -1183,6 +1527,9 @@ export function toJID(chatId) {
|
||||
if (isJidStatusBroadcast(chatId)) {
|
||||
return chatId;
|
||||
}
|
||||
if (isNewsletter(chatId)) {
|
||||
return chatId;
|
||||
}
|
||||
const number = chatId.split('@')[0];
|
||||
return number + '@s.whatsapp.net';
|
||||
}
|
||||
|
||||
@@ -3,6 +3,8 @@ import { Chat } from '@adiwajshing/baileys';
|
||||
export interface IChatRepository {
|
||||
getAll(): Promise<Chat[]>;
|
||||
|
||||
getAllByIds(ids: string[]): Promise<Chat[]>;
|
||||
|
||||
getAllWithMessages(limit?: number, offset?: number): Promise<Chat[]>;
|
||||
|
||||
getById(id: string): Promise<Chat | null>;
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
import {
|
||||
LabelAssociation,
|
||||
LabelAssociationType,
|
||||
} from '@adiwajshing/baileys/lib/Types/LabelAssociation';
|
||||
|
||||
export interface ILabelAssociationRepository {
|
||||
deleteOne(association: LabelAssociation): Promise<void>;
|
||||
|
||||
save(association: LabelAssociation): Promise<void>;
|
||||
|
||||
deleteByLabelId(labelId: string): Promise<void>;
|
||||
|
||||
getAssociationsByLabelId(
|
||||
labelId: string,
|
||||
type: LabelAssociationType,
|
||||
): Promise<LabelAssociation[]>;
|
||||
|
||||
getAssociationsByChatId(chatId: string): Promise<LabelAssociation[]>;
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
import { Contact } from '@adiwajshing/baileys';
|
||||
import { Label } from '@adiwajshing/baileys/lib/Types/Label';
|
||||
|
||||
export interface ILabelsRepository {
|
||||
getById(id: string): Promise<Label | null>;
|
||||
|
||||
getAll(): Promise<Label[]>;
|
||||
|
||||
getAllByIds(ids: string[]): Promise<Label[]>;
|
||||
|
||||
deleteById(id: string): Promise<void>;
|
||||
|
||||
save(label: Label): Promise<void>;
|
||||
}
|
||||
@@ -1,15 +1,40 @@
|
||||
import { WAMessage } from '@adiwajshing/baileys';
|
||||
import { LabelAssociation } from '@adiwajshing/baileys/lib/Types/LabelAssociation';
|
||||
import { ILabelAssociationRepository } from '@waha/core/engines/noweb/store/ILabelAssociationsRepository';
|
||||
import { ILabelsRepository } from '@waha/core/engines/noweb/store/ILabelsRepository';
|
||||
|
||||
import { IChatRepository } from './IChatRepository';
|
||||
import { IContactRepository } from './IContactRepository';
|
||||
import { IMessagesRepository } from './IMessagesRepository';
|
||||
|
||||
export interface INowebStorage {
|
||||
init(): Promise<void>;
|
||||
export abstract class INowebStorage {
|
||||
abstract init(): Promise<void>;
|
||||
|
||||
close(): Promise<void>;
|
||||
abstract close(): Promise<void>;
|
||||
|
||||
getContactsRepository(): IContactRepository;
|
||||
abstract getContactsRepository(): IContactRepository;
|
||||
|
||||
getChatRepository(): IChatRepository;
|
||||
abstract getChatRepository(): IChatRepository;
|
||||
|
||||
getMessagesRepository(): IMessagesRepository;
|
||||
abstract getMessagesRepository(): IMessagesRepository;
|
||||
|
||||
abstract getLabelsRepository(): ILabelsRepository;
|
||||
|
||||
abstract getLabelAssociationRepository(): ILabelAssociationRepository;
|
||||
|
||||
protected getMessagesMetadata(): Map<string, any> {
|
||||
return new Map()
|
||||
.set('jid', (msg: WAMessage) => msg.key.remoteJid)
|
||||
.set('id', (msg: WAMessage) => msg.key.id)
|
||||
.set('messageTimestamp', (msg: WAMessage) => msg.messageTimestamp);
|
||||
}
|
||||
|
||||
protected getLabelAssociationMetadata() {
|
||||
return new Map().set(
|
||||
'id',
|
||||
(a: LabelAssociation) =>
|
||||
// @ts-ignore
|
||||
`${a.type}_${a.labelId}_${a.chatId}_${a.messageId}`,
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -4,6 +4,7 @@ import {
|
||||
Contact,
|
||||
proto,
|
||||
} from '@adiwajshing/baileys';
|
||||
import { Label } from '@adiwajshing/baileys/lib/Types/Label';
|
||||
|
||||
export interface INowebStore {
|
||||
presences: any;
|
||||
@@ -23,4 +24,12 @@ export interface INowebStore {
|
||||
getContacts(): Promise<Contact[]>;
|
||||
|
||||
getContactById(jid: string): Promise<Contact>;
|
||||
|
||||
getLabels(): Promise<Label[]>;
|
||||
|
||||
getLabelById(labelId: string): Promise<Label | null>;
|
||||
|
||||
getChatsByLabelId(labelId: string): Promise<Chat[]>;
|
||||
|
||||
getChatLabels(chatId: string): Promise<Label[]>;
|
||||
}
|
||||
@@ -1,4 +1,5 @@
|
||||
import { Chat, Contact, makeInMemoryStore, proto } from '@adiwajshing/baileys';
|
||||
import { Label } from '@adiwajshing/baileys/lib/Types/Label';
|
||||
import { BadRequestException, ConsoleLogger } from '@nestjs/common';
|
||||
|
||||
import { INowebStore } from './INowebStore';
|
||||
@@ -51,4 +52,20 @@ export class NowebInMemoryStore implements INowebStore {
|
||||
getContactById(jid: string): Promise<Contact> {
|
||||
throw new BadRequestException(this.errorMessage);
|
||||
}
|
||||
|
||||
getLabels(): Promise<Label[]> {
|
||||
throw new BadRequestException(this.errorMessage);
|
||||
}
|
||||
|
||||
getLabelById(labelId: string): Promise<Label | null> {
|
||||
throw new BadRequestException(this.errorMessage);
|
||||
}
|
||||
|
||||
getChatsByLabelId(labelId: string): Promise<Chat[]> {
|
||||
throw new BadRequestException(this.errorMessage);
|
||||
}
|
||||
|
||||
getChatLabels(chatId: string): Promise<Label[]> {
|
||||
throw new BadRequestException(this.errorMessage);
|
||||
}
|
||||
}
|
||||
@@ -9,8 +9,15 @@ import {
|
||||
updateMessageWithReaction,
|
||||
updateMessageWithReceipt,
|
||||
} from '@adiwajshing/baileys';
|
||||
import { ConsoleLogger } from '@nestjs/common';
|
||||
import { Label } from '@adiwajshing/baileys/lib/Types/Label';
|
||||
import {
|
||||
LabelAssociation,
|
||||
LabelAssociationType,
|
||||
} from '@adiwajshing/baileys/lib/Types/LabelAssociation';
|
||||
import { ILabelAssociationRepository } from '@waha/core/engines/noweb/store/ILabelAssociationsRepository';
|
||||
import { ILabelsRepository } from '@waha/core/engines/noweb/store/ILabelsRepository';
|
||||
import { toNumber } from 'lodash';
|
||||
import { Logger } from 'pino';
|
||||
|
||||
import { toJID } from '../session.noweb.core';
|
||||
import { IChatRepository } from './IChatRepository';
|
||||
@@ -27,17 +34,21 @@ export class NowebPersistentStore implements INowebStore {
|
||||
private chatRepo: IChatRepository;
|
||||
private contactRepo: IContactRepository;
|
||||
private messagesRepo: IMessagesRepository;
|
||||
private labelsRepo: ILabelsRepository;
|
||||
private labelAssociationsRepo: ILabelAssociationRepository;
|
||||
public presences: any;
|
||||
private lock: any;
|
||||
|
||||
constructor(
|
||||
private log: ConsoleLogger,
|
||||
private logger: Logger,
|
||||
public storage: INowebStorage,
|
||||
) {
|
||||
this.socket = null;
|
||||
this.chatRepo = storage.getChatRepository();
|
||||
this.contactRepo = storage.getContactsRepository();
|
||||
this.messagesRepo = storage.getMessagesRepository();
|
||||
this.labelsRepo = storage.getLabelsRepository();
|
||||
this.labelAssociationsRepo = storage.getLabelAssociationRepository();
|
||||
this.presences = {};
|
||||
this.lock = new AsyncLock({ maxPending: Infinity });
|
||||
}
|
||||
@@ -82,6 +93,10 @@ export class NowebPersistentStore implements INowebStore {
|
||||
ev.on('contacts.update', (data) =>
|
||||
this.withLock('contacts', () => this.onContactUpdate(data)),
|
||||
);
|
||||
ev.on('labels.edit', (data) => this.onLabelsEdit(data));
|
||||
ev.on('labels.association', ({ association, type }) =>
|
||||
this.onLabelsAssociation(association, type),
|
||||
);
|
||||
// Presence
|
||||
ev.on('presence.update', (data) => this.onPresenceUpdate(data));
|
||||
this.socket = socket;
|
||||
@@ -89,7 +104,7 @@ export class NowebPersistentStore implements INowebStore {
|
||||
|
||||
async close(): Promise<void> {
|
||||
await this.storage?.close().catch((error) => {
|
||||
this.log.warn(`Failed to close storage: ${error}`);
|
||||
this.logger.warn(`Failed to close storage: ${error}`);
|
||||
});
|
||||
return;
|
||||
}
|
||||
@@ -97,7 +112,7 @@ export class NowebPersistentStore implements INowebStore {
|
||||
private async onMessagingHistorySet(history) {
|
||||
const { contacts, chats, messages, isLatest } = history;
|
||||
if (isLatest) {
|
||||
this.log.debug(
|
||||
this.logger.debug(
|
||||
'history sync - clearing all entities, got latest history',
|
||||
);
|
||||
await Promise.all([
|
||||
@@ -110,7 +125,7 @@ export class NowebPersistentStore implements INowebStore {
|
||||
await Promise.all([
|
||||
this.withLock('contacts', async () => {
|
||||
await this.onContactsUpsert(contacts);
|
||||
this.log.log(`history sync - '${contacts.length}' synced contacts`);
|
||||
this.logger.info(`history sync - '${contacts.length}' synced contacts`);
|
||||
}),
|
||||
this.withLock('chats', () => this.onChatUpsert(chats)),
|
||||
this.withLock('messages', () => this.syncMessagesHistory(messages)),
|
||||
@@ -120,7 +135,7 @@ export class NowebPersistentStore implements INowebStore {
|
||||
private async syncMessagesHistory(messages) {
|
||||
const realMessages = messages.filter(isRealMessage);
|
||||
await this.messagesRepo.upsert(realMessages);
|
||||
this.log.log(
|
||||
this.logger.info(
|
||||
`history sync - '${messages.length}' got messages, '${realMessages.length}' real messages`,
|
||||
);
|
||||
}
|
||||
@@ -128,12 +143,12 @@ export class NowebPersistentStore implements INowebStore {
|
||||
private async onMessagesUpsert(update) {
|
||||
const { messages, type } = update;
|
||||
if (type !== 'notify' && type !== 'append') {
|
||||
this.log.debug(`unexpected type for messages.upsert: '${type}'`);
|
||||
this.logger.debug(`unexpected type for messages.upsert: '${type}'`);
|
||||
return;
|
||||
}
|
||||
const realMessages = messages.filter(isRealMessage);
|
||||
await this.messagesRepo.upsert(realMessages);
|
||||
this.log.debug(
|
||||
this.logger.debug(
|
||||
`messages.upsert - ${messages.length} got messages, ${realMessages.length} real messages`,
|
||||
);
|
||||
}
|
||||
@@ -178,7 +193,7 @@ export class NowebPersistentStore implements INowebStore {
|
||||
chat.conversationTimestamp = toNumber(chat.conversationTimestamp);
|
||||
await this.chatRepo.save(chat);
|
||||
}
|
||||
this.log.log(`history sync - '${chats.length}' synced chats`);
|
||||
this.logger.info(`history sync - '${chats.length}' synced chats`);
|
||||
}
|
||||
|
||||
private async onChatUpdate(updates: ChatUpdate[]) {
|
||||
@@ -219,7 +234,7 @@ export class NowebPersistentStore implements INowebStore {
|
||||
const contact = await this.contactRepo.getById(update.id);
|
||||
|
||||
if (!contact) {
|
||||
this.log.warn(
|
||||
this.logger.warn(
|
||||
`got update for non-existent contact. update: '${JSON.stringify(
|
||||
update,
|
||||
)}'`,
|
||||
@@ -246,7 +261,7 @@ export class NowebPersistentStore implements INowebStore {
|
||||
for (const { key, reaction } of reactions) {
|
||||
const msg = await this.messagesRepo.getByJidById(key.remoteJid, key.id);
|
||||
if (!msg) {
|
||||
this.log.warn(
|
||||
this.logger.warn(
|
||||
`got reaction update for non-existent message. key: '${JSON.stringify(
|
||||
key,
|
||||
)}'`,
|
||||
@@ -262,7 +277,7 @@ export class NowebPersistentStore implements INowebStore {
|
||||
for (const { key, receipt } of updates) {
|
||||
const msg = await this.messagesRepo.getByJidById(key.remoteJid, key.id);
|
||||
if (!msg) {
|
||||
this.log.warn(
|
||||
this.logger.warn(
|
||||
`got receipt update for non-existent message. key: '${JSON.stringify(
|
||||
key,
|
||||
)}'`,
|
||||
@@ -274,6 +289,26 @@ export class NowebPersistentStore implements INowebStore {
|
||||
}
|
||||
}
|
||||
|
||||
private async onLabelsEdit(label: Label) {
|
||||
if (label.deleted) {
|
||||
await this.labelsRepo.deleteById(label.id);
|
||||
await this.labelAssociationsRepo.deleteByLabelId(label.id);
|
||||
} else {
|
||||
await this.labelsRepo.save(label);
|
||||
}
|
||||
}
|
||||
|
||||
private async onLabelsAssociation(
|
||||
association: LabelAssociation,
|
||||
type: 'add' | 'remove',
|
||||
) {
|
||||
if (type === 'remove') {
|
||||
await this.labelAssociationsRepo.deleteOne(association);
|
||||
} else {
|
||||
await this.labelAssociationsRepo.save(association);
|
||||
}
|
||||
}
|
||||
|
||||
private async onPresenceUpdate({ id, presences: update }) {
|
||||
this.presences[id] = this.presences[id] || {};
|
||||
Object.assign(this.presences[id], update);
|
||||
@@ -302,4 +337,29 @@ export class NowebPersistentStore implements INowebStore {
|
||||
getContacts() {
|
||||
return this.contactRepo.getAll();
|
||||
}
|
||||
|
||||
getLabels(): Promise<Label[]> {
|
||||
return this.labelsRepo.getAll();
|
||||
}
|
||||
|
||||
getLabelById(labelId: string): Promise<Label | null> {
|
||||
return this.labelsRepo.getById(labelId);
|
||||
}
|
||||
|
||||
async getChatsByLabelId(labelId: string): Promise<Chat[]> {
|
||||
const associations =
|
||||
await this.labelAssociationsRepo.getAssociationsByLabelId(
|
||||
labelId,
|
||||
LabelAssociationType.Chat,
|
||||
);
|
||||
const ids = associations.map((association) => association.chatId);
|
||||
return await this.chatRepo.getAllByIds(ids);
|
||||
}
|
||||
|
||||
async getChatLabels(chatId: string): Promise<Label[]> {
|
||||
const associations =
|
||||
await this.labelAssociationsRepo.getAssociationsByChatId(chatId);
|
||||
const ids = associations.map((association) => association.labelId);
|
||||
return await this.labelsRepo.getAllByIds(ids);
|
||||
}
|
||||
}
|
||||
@@ -53,4 +53,26 @@ export const NOWEB_STORE_SCHEMA = [
|
||||
new Index('timestamp_index', ['messageTimestamp']),
|
||||
],
|
||||
),
|
||||
new Schema(
|
||||
'labels',
|
||||
[new Field('id', 'TEXT'), new Field('data', 'TEXT')],
|
||||
[new Index('labels_id_index', ['id'])],
|
||||
),
|
||||
new Schema(
|
||||
'labelAssociations',
|
||||
[
|
||||
new Field('id', 'TEXT'),
|
||||
new Field('type', 'TEXT'),
|
||||
new Field('labelId', 'TEXT'),
|
||||
new Field('chatId', 'TEXT'),
|
||||
new Field('messageId', 'TEXT'),
|
||||
new Field('data', 'TEXT'),
|
||||
],
|
||||
[
|
||||
new Index('label_assoc_id_index', ['id']),
|
||||
new Index('label_assoc_type_label_index', ['type', 'labelId']),
|
||||
new Index('label_assoc_type_chat_index', ['type', 'chatId']),
|
||||
new Index('label_assoc_type_message_index', ['type', 'messageId']),
|
||||
],
|
||||
),
|
||||
];
|
||||
@@ -38,6 +38,15 @@ export class Sqlite3KVRepository<Entity> {
|
||||
return this.all(this.select());
|
||||
}
|
||||
|
||||
getAllByIds(ids: string[]) {
|
||||
return this.all(this.select().whereIn('id', ids));
|
||||
}
|
||||
|
||||
protected getAllBy(filters: any) {
|
||||
const query = this.select().where(filters);
|
||||
return this.all(query);
|
||||
}
|
||||
|
||||
protected async getBy(filters: any) {
|
||||
const query = this.select().where(filters).limit(1);
|
||||
return this.get(query);
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
import {
|
||||
LabelAssociation,
|
||||
LabelAssociationType,
|
||||
} from '@adiwajshing/baileys/lib/Types/LabelAssociation';
|
||||
import { ILabelAssociationRepository } from '@waha/core/engines/noweb/store/ILabelAssociationsRepository';
|
||||
|
||||
import { Sqlite3KVRepository } from './Sqlite3KVRepository';
|
||||
|
||||
export class Sqlite3LabelAssociationsRepository
|
||||
extends Sqlite3KVRepository<LabelAssociation>
|
||||
implements ILabelAssociationRepository
|
||||
{
|
||||
async deleteOne(association: LabelAssociation): Promise<void> {
|
||||
await this.deleteBy({
|
||||
type: association.type,
|
||||
chatId: association.chatId,
|
||||
labelId: association.labelId,
|
||||
// @ts-ignore: messageId doesn't existing in ChatLabelAssociation
|
||||
messageId: association.messageId || null,
|
||||
});
|
||||
}
|
||||
|
||||
async deleteByLabelId(labelId: string): Promise<void> {
|
||||
await this.deleteBy({ labelId: labelId });
|
||||
}
|
||||
|
||||
getAssociationsByLabelId(
|
||||
labelId: string,
|
||||
type: LabelAssociationType,
|
||||
): Promise<LabelAssociation[]> {
|
||||
return this.getAllBy({
|
||||
type: type,
|
||||
labelId: labelId,
|
||||
});
|
||||
}
|
||||
|
||||
getAssociationsByChatId(chatId: string): Promise<LabelAssociation[]> {
|
||||
return this.getAllBy({ chatId: chatId, type: LabelAssociationType.Chat });
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
import { Label } from '@adiwajshing/baileys/lib/Types/Label';
|
||||
import { ILabelsRepository } from '@waha/core/engines/noweb/store/ILabelsRepository';
|
||||
|
||||
import { Sqlite3KVRepository } from './Sqlite3KVRepository';
|
||||
|
||||
export class Sqlite3LabelsRepository
|
||||
extends Sqlite3KVRepository<Label>
|
||||
implements ILabelsRepository {}
|
||||
@@ -1,4 +1,9 @@
|
||||
import { WAMessage } from '@adiwajshing/baileys';
|
||||
import { LabelAssociation } from '@adiwajshing/baileys/lib/Types/LabelAssociation';
|
||||
import { ILabelAssociationRepository } from '@waha/core/engines/noweb/store/ILabelAssociationsRepository';
|
||||
import { ILabelsRepository } from '@waha/core/engines/noweb/store/ILabelsRepository';
|
||||
import { Sqlite3LabelAssociationsRepository } from '@waha/core/engines/noweb/store/sqlite3/Sqlite3LabelAssociationsRepository';
|
||||
import { Sqlite3LabelsRepository } from '@waha/core/engines/noweb/store/sqlite3/Sqlite3LabelsRepository';
|
||||
|
||||
import { INowebStorage } from '../INowebStorage';
|
||||
import { Field, Index, NOWEB_STORE_SCHEMA, Schema } from '../Schema';
|
||||
@@ -10,11 +15,12 @@ import { Sqlite3SchemaValidation } from './Sqlite3SchemaValidation';
|
||||
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
||||
const Database = require('better-sqlite3');
|
||||
|
||||
export class Sqlite3Storage implements INowebStorage {
|
||||
export class Sqlite3Storage extends INowebStorage {
|
||||
private readonly db: any;
|
||||
private readonly tables: Schema[];
|
||||
|
||||
constructor(filePath: string) {
|
||||
super();
|
||||
this.db = new Database(filePath);
|
||||
this.tables = NOWEB_STORE_SCHEMA;
|
||||
}
|
||||
@@ -71,6 +77,33 @@ export class Sqlite3Storage implements INowebStorage {
|
||||
this.db.exec(
|
||||
'CREATE INDEX IF NOT EXISTS timestamp_index ON messages (messageTimestamp)',
|
||||
);
|
||||
|
||||
//
|
||||
// Labels
|
||||
//
|
||||
this.db.exec(
|
||||
'CREATE TABLE IF NOT EXISTS labels (id TEXT PRIMARY KEY, data TEXT)',
|
||||
);
|
||||
this.db.exec(
|
||||
'CREATE UNIQUE INDEX IF NOT EXISTS labels_id_index ON labels (id)',
|
||||
);
|
||||
|
||||
// Label associations
|
||||
this.db.exec(
|
||||
'CREATE TABLE IF NOT EXISTS labelAssociations (id TEXT PRIMARY KEY, type TEXT, labelId TEXT, chatId TEXT, messageId TEXT, data TEXT)',
|
||||
);
|
||||
this.db.exec(
|
||||
'CREATE UNIQUE INDEX IF NOT EXISTS label_assoc_id_index ON labelAssociations (id)',
|
||||
);
|
||||
this.db.exec(
|
||||
'CREATE INDEX IF NOT EXISTS label_assoc_type_label_index ON labelAssociations (type, labelId)',
|
||||
);
|
||||
this.db.exec(
|
||||
'CREATE INDEX IF NOT EXISTS label_assoc_type_chat_index ON labelAssociations (type, chatId)',
|
||||
);
|
||||
this.db.exec(
|
||||
'CREATE INDEX IF NOT EXISTS label_assoc_type_message_index ON labelAssociations (type, messageId)',
|
||||
);
|
||||
}
|
||||
|
||||
async close() {
|
||||
@@ -85,11 +118,21 @@ export class Sqlite3Storage implements INowebStorage {
|
||||
return new Sqlite3ChatRepository(this.db, this.getSchema('chats'));
|
||||
}
|
||||
|
||||
getLabelsRepository(): ILabelsRepository {
|
||||
return new Sqlite3LabelsRepository(this.db, this.getSchema('labels'));
|
||||
}
|
||||
|
||||
getLabelAssociationRepository(): ILabelAssociationRepository {
|
||||
const metadata = this.getLabelAssociationMetadata();
|
||||
return new Sqlite3LabelAssociationsRepository(
|
||||
this.db,
|
||||
this.getSchema('labelAssociations'),
|
||||
metadata,
|
||||
);
|
||||
}
|
||||
|
||||
getMessagesRepository() {
|
||||
const metadata = new Map()
|
||||
.set('jid', (msg: WAMessage) => msg.key.remoteJid)
|
||||
.set('id', (msg: WAMessage) => msg.key.id)
|
||||
.set('messageTimestamp', (msg: WAMessage) => msg.messageTimestamp);
|
||||
const metadata = this.getMessagesMetadata();
|
||||
return new Sqlite3MessagesRepository(
|
||||
this.db,
|
||||
this.getSchema('messages'),
|
||||
|
||||
@@ -69,7 +69,7 @@ export class WhatsappSessionVenomCore extends WhatsappSession {
|
||||
this.qr.save(base64Qrimg, urlCode);
|
||||
this.printQR(this.qr);
|
||||
this.status = WAHASessionStatus.SCAN_QR_CODE;
|
||||
this.log.debug('Number of attempts to read the qrcode: ', attempts);
|
||||
this.logger.debug('Number of attempts to read the qrcode: ', attempts);
|
||||
};
|
||||
}
|
||||
|
||||
@@ -79,7 +79,7 @@ export class WhatsappSessionVenomCore extends WhatsappSession {
|
||||
this.whatsapp = await this.buildClient();
|
||||
} catch (error) {
|
||||
this.status = WAHASessionStatus.FAILED;
|
||||
this.log.error(error);
|
||||
this.logger.error(error);
|
||||
this.qr.save('');
|
||||
return;
|
||||
}
|
||||
@@ -90,8 +90,9 @@ export class WhatsappSessionVenomCore extends WhatsappSession {
|
||||
}
|
||||
|
||||
async stop() {
|
||||
await this.whatsapp.close();
|
||||
this.status = WAHASessionStatus.STOPPED;
|
||||
this.events.removeAllListeners();
|
||||
await this.whatsapp.close();
|
||||
}
|
||||
|
||||
subscribeEngineEvent(event: WAHAEvents | string, handler: (message) => void) {
|
||||
|
||||
@@ -1,535 +0,0 @@
|
||||
<!doctype html>
|
||||
<html class="no-js" dir="ltr" loc="en">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
|
||||
<title>WhatsApp Web</title>
|
||||
<meta name="viewport" content="width=device-width" />
|
||||
<meta name="google" content="notranslate" />
|
||||
<meta name="format-detection" content="telephone=no" />
|
||||
<meta
|
||||
name="description"
|
||||
content="Quickly send and receive WhatsApp messages right from your computer."
|
||||
/>
|
||||
<meta
|
||||
name="og:description"
|
||||
content="Quickly send and receive WhatsApp messages right from your computer."
|
||||
/>
|
||||
<meta name="og:url" content="https://web.whatsapp.com/" />
|
||||
<meta name="og:title" content="WhatsApp Web" />
|
||||
<meta
|
||||
name="og:image"
|
||||
content="https://static.facebook.com/images/whatsapp/www/whatsapp-promo.png"
|
||||
/>
|
||||
<link
|
||||
id="favicon"
|
||||
rel="shortcut icon"
|
||||
href="/img/favicon/1x/favicon.png"
|
||||
type="image/png"
|
||||
/>
|
||||
<link
|
||||
rel="apple-touch-icon"
|
||||
sizes="192x192"
|
||||
href="/apple-touch-icon.png"
|
||||
type="image/png"
|
||||
/>
|
||||
<meta
|
||||
name="theme-color"
|
||||
content="#111b21"
|
||||
media="(prefers-color-scheme: dark)"
|
||||
/>
|
||||
<meta name="theme-color" content="#f0f2f5" />
|
||||
<link
|
||||
id="whatsapp-pwa-manifest-link"
|
||||
rel="manifest"
|
||||
href="/manifest.json"
|
||||
crossorigin="use-credentials"
|
||||
/>
|
||||
<style>
|
||||
#initial_startup {
|
||||
--startup-background: #f0f2f5;
|
||||
--startup-background-rgb: 240, 242, 245;
|
||||
--startup-icon: #bbc5cb;
|
||||
--secondary-lighter: #8696a0;
|
||||
--primary-title: #41525d;
|
||||
--progress-primary: #00c298;
|
||||
--progress-background: #e9edef;
|
||||
}
|
||||
.dark #initial_startup {
|
||||
--startup-background: #111b21;
|
||||
--startup-background-rgb: 17, 27, 33;
|
||||
--startup-icon: #676f73;
|
||||
--primary-title: rgba(233, 237, 239, 0.88);
|
||||
--secondary-lighter: #667781;
|
||||
--progress-primary: #0b846d;
|
||||
--progress-background: #233138;
|
||||
}
|
||||
#app,
|
||||
body,
|
||||
html {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
overflow: hidden;
|
||||
}
|
||||
#app {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
}
|
||||
#initial_startup {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
user-select: none;
|
||||
background-color: var(--startup-background);
|
||||
}
|
||||
#initial_startup .graphic {
|
||||
margin-top: -40px;
|
||||
color: var(--startup-icon);
|
||||
}
|
||||
#initial_startup .graphic .resume-logo {
|
||||
transform: translateX(calc(50% - 52px / 2));
|
||||
}
|
||||
#initial_startup .graphic::after {
|
||||
position: relative;
|
||||
top: -100%;
|
||||
left: calc(50% - 72px * 2 - 72px / 2);
|
||||
display: block;
|
||||
width: calc(72px * 3);
|
||||
height: 100%;
|
||||
content: '';
|
||||
background: linear-gradient(
|
||||
to right,
|
||||
rgba(var(--startup-background-rgb), 0.5) 0,
|
||||
rgba(var(--startup-background-rgb), 0.5) 33.33%,
|
||||
rgba(var(--startup-background-rgb), 0) 44.1%,
|
||||
rgba(var(--startup-background-rgb), 0) 55.8%,
|
||||
rgba(var(--startup-background-rgb), 0.5) 66.66%,
|
||||
rgba(var(--startup-background-rgb), 0.5) 100%
|
||||
);
|
||||
opacity: 1;
|
||||
animation: shimmer 1.5s linear 0.6s infinite;
|
||||
}
|
||||
html[dir='rtl'] #initial_startup .graphic::after {
|
||||
animation-direction: reverse;
|
||||
}
|
||||
@keyframes shimmer {
|
||||
from {
|
||||
left: calc(50% - 72px * 2 - 72px / 2);
|
||||
}
|
||||
to {
|
||||
left: calc(50% - 72px / 2);
|
||||
}
|
||||
}
|
||||
#initial_startup .progress {
|
||||
position: relative;
|
||||
width: 420px;
|
||||
height: 3px;
|
||||
margin-top: 40px;
|
||||
}
|
||||
#initial_startup .progress progress {
|
||||
vertical-align: top;
|
||||
}
|
||||
#initial_startup .main {
|
||||
margin-top: 40px;
|
||||
font-size: 17px;
|
||||
color: var(--primary-title);
|
||||
}
|
||||
#initial_startup .secondary {
|
||||
margin-top: 12px;
|
||||
font-size: 14px;
|
||||
color: var(--secondary-lighter);
|
||||
}
|
||||
#initial_startup .secondary span {
|
||||
display: inline-block;
|
||||
margin-bottom: 2px;
|
||||
vertical-align: middle;
|
||||
}
|
||||
progress {
|
||||
-webkit-appearance: none;
|
||||
appearance: none;
|
||||
width: 100%;
|
||||
height: 3px;
|
||||
margin: 0;
|
||||
color: var(--progress-primary);
|
||||
background-color: var(--progress-background);
|
||||
border: none;
|
||||
}
|
||||
progress[value]::-webkit-progress-bar {
|
||||
background-color: var(--progress-background);
|
||||
}
|
||||
progress[value]::-moz-progress-bar,
|
||||
progress[value]::-webkit-progress-value {
|
||||
background-color: var(--progress-primary);
|
||||
transition: width 0.45s ease;
|
||||
}
|
||||
</style>
|
||||
<link
|
||||
href="/stylex-f0601c57714fe972a8c4d2c2562f8082.css"
|
||||
rel="stylesheet"
|
||||
/>
|
||||
<link href="/app-6113f1562d101247269b.css" rel="stylesheet" />
|
||||
</head>
|
||||
<body class="web">
|
||||
<script
|
||||
data-binary-transparency-hash-key="inline-js-d11c72a06542fc3b43af600028cf0f996e4b9b178dfa047e18730efaf74aab0b"
|
||||
>
|
||||
try {
|
||||
var systemThemeDark,
|
||||
theme = window.localStorage.getItem('theme'),
|
||||
systemThemeMode = window.localStorage.getItem('system-theme-mode');
|
||||
if (('true' === systemThemeMode || !theme) && window.matchMedia) {
|
||||
var systemTheme = window.matchMedia('(prefers-color-scheme: dark)');
|
||||
systemThemeDark = systemTheme && systemTheme.matches;
|
||||
}
|
||||
var darkTheme = '"dark"' === theme || Boolean(systemThemeDark);
|
||||
darkTheme && document.body.classList.add('dark');
|
||||
} catch (e) {}
|
||||
</script>
|
||||
<div id="app"></div>
|
||||
<div id="hard_expire_time" data-time="1719543128.405"></div>
|
||||
<div id="initial_startup">
|
||||
<div class="graphic">
|
||||
<span
|
||||
><svg width="250" height="52" xmlns="http://www.w3.org/2000/svg">
|
||||
<path
|
||||
class="resume-logo"
|
||||
d="M37.7 31.2c-.6-.4-3.8-2-4.4-2.1-.6-.2-1-.4-1.4.3l-2 2.5c-.4.4-.8.5-1.5.2-.6-.3-2.7-1-5.1-3.2-2-1.7-3.2-3.8-3.6-4.5-.4-.6 0-1 .3-1.3l1-1.1.6-1.1c.2-.4 0-.8 0-1.1l-2-4.8c-.6-1.3-1.1-1-1.5-1.1h-1.2c-.5 0-1.2.1-1.8.8-.5.6-2.2 2.2-2.2 5.3 0 3.2 2.3 6.3 2.6 6.7.3.4 4.6 7 11 9.7l3.7 1.4c1.5.5 3 .4 4 .2 1.3-.1 3.9-1.5 4.4-3 .5-1.5.5-2.8.4-3-.2-.4-.6-.5-1.3-.8M26 47.2c-3.9 0-7.6-1-11-3l-.7-.4-8.1 2L8.4 38l-.6-.8A21.4 21.4 0 0126 4.4a21.3 21.3 0 0121.4 21.4c0 11.8-9.6 21.4-21.4 21.4M44.2 7.6a25.8 25.8 0 00-40.6 31L0 52l13.7-3.6A25.8 25.8 0 0044.3 7.5"
|
||||
fill="currentColor"
|
||||
></path></svg
|
||||
></span>
|
||||
</div>
|
||||
<div class="progress">
|
||||
<progress value="0" max="100" dir="ltr"></progress>
|
||||
</div>
|
||||
<div class="main">WhatsApp</div>
|
||||
<div class="secondary">
|
||||
<span
|
||||
><svg width="10" height="12" xmlns="http://www.w3.org/2000/svg">
|
||||
<path
|
||||
d="M5 1.6c1.4 0 2.5 1 2.6 2.4v1.5h.2c.5 0 1 .4 1 1V10c0 .6-.5 1-1 1H2.3a1 1 0 01-1.1-1V6.5c0-.6.5-1 1-1h.2V4.2c0-1.4 1-2.5 2.4-2.6H5zm0 1.2c-.7 0-1.3.6-1.3 1.3v1.4h2.6V4.2c0-.7-.4-1.2-1-1.3H5z"
|
||||
fill="currentColor"
|
||||
></path>
|
||||
</svg> </span
|
||||
> End-to-end encrypted
|
||||
</div>
|
||||
</div>
|
||||
<link
|
||||
rel="preload"
|
||||
crossorigin="anonymous"
|
||||
as="fetch"
|
||||
href="/binary-transparency-manifest-2.2412.54.json"
|
||||
id="binary-transparency-manifest-preload"
|
||||
/>
|
||||
<script src="/libsignal-protocol-ee5b8ba.min.js"></script>
|
||||
<script defer="defer" src="/runtime.295f0230b6dbd8983513.js"></script>
|
||||
<script
|
||||
data-binary-transparency-hash-key="inline-js-cdf06293c99d00ee0c1bc0fcfdbd76a7ae9aef6290926dbff0cba3a7994b7fca"
|
||||
>
|
||||
/*! Copyright (c) 2024 WhatsApp Inc. All Rights Reserved. */
|
||||
(self.webpackChunkwhatsapp_web_client =
|
||||
self.webpackChunkwhatsapp_web_client || []).push([
|
||||
[5617],
|
||||
{
|
||||
307914: (e) => {
|
||||
e.exports = function (e) {
|
||||
return e && e.__esModule ? e : { default: e };
|
||||
};
|
||||
},
|
||||
595318: (e) => {
|
||||
(e.exports = function (e) {
|
||||
return e && e.__esModule ? e : { default: e };
|
||||
}),
|
||||
(e.exports.default = e.exports),
|
||||
(e.exports.__esModule = !0);
|
||||
},
|
||||
415227: (e, t) => {
|
||||
'use strict';
|
||||
Object.defineProperty(t, '__esModule', { value: !0 }),
|
||||
(t.default = function (e) {
|
||||
const t = new Error(e);
|
||||
if (void 0 === t.stack)
|
||||
try {
|
||||
throw t;
|
||||
} catch (e) {}
|
||||
return t;
|
||||
});
|
||||
},
|
||||
670983: (e, t, r) => {
|
||||
'use strict';
|
||||
var n = r(307914);
|
||||
Object.defineProperty(t, '__esModule', { value: !0 }),
|
||||
(t.default = function (e) {
|
||||
let t =
|
||||
arguments.length > 1 && void 0 !== arguments[1]
|
||||
? arguments[1]
|
||||
: '?';
|
||||
if (null == e)
|
||||
throw (0, o.default)('Unexpected null or undefined: ' + t);
|
||||
return e;
|
||||
});
|
||||
var o = n(r(415227));
|
||||
},
|
||||
250473: (e, t, r) => {
|
||||
'use strict';
|
||||
Object.defineProperty(t, '__esModule', { value: !0 }),
|
||||
(t.UNIQUE_UPLOADS_ALLOWED_BEFORE_THROTTLE =
|
||||
t.TICKET_URL =
|
||||
t.CLB_URL =
|
||||
t.CLB_TOKEN =
|
||||
t.CLB_CHECK_URL =
|
||||
void 0);
|
||||
var n = r(508247);
|
||||
(t.CLB_CHECK_URL =
|
||||
'https://crashlogs.whatsapp.net/wa_fls_upload_check'),
|
||||
(t.CLB_TOKEN =
|
||||
'1063127757113399|745146ffa34413f9dbb5469f5370b7af'),
|
||||
(t.CLB_URL = 'https://crashlogs.whatsapp.net/wa_clb_data');
|
||||
const o = n.DYN_ORIGIN + 'web-contact-us';
|
||||
(t.TICKET_URL = o), (t.UNIQUE_UPLOADS_ALLOWED_BEFORE_THROTTLE = 0);
|
||||
},
|
||||
207024: (e, t, r) => {
|
||||
'use strict';
|
||||
var n = r(595318);
|
||||
Object.defineProperty(t, '__esModule', { value: !0 }),
|
||||
(t.getDistribution = function () {
|
||||
let e = 'unknown';
|
||||
return (e = 'prod'), 'web_prod';
|
||||
}),
|
||||
(t.getLogUserAgent = function (e) {
|
||||
let t,
|
||||
{ appVersion: r, browser: n, device: o } = e;
|
||||
return (t = 'Web/' + n), `WhatsApp/${r} ${t} Device/${o}`;
|
||||
}),
|
||||
n(r(472514)),
|
||||
n(r(556869));
|
||||
},
|
||||
794858: (e, t, r) => {
|
||||
'use strict';
|
||||
var n = r(595318),
|
||||
o = n(r(670983)),
|
||||
a = r(508247),
|
||||
s = r(250473),
|
||||
c = r(207024),
|
||||
_ = n(r(174285)),
|
||||
u = r(425017);
|
||||
function i(e) {
|
||||
!(function (e, t) {
|
||||
const r = window.navigator.userAgent;
|
||||
if (r === p && e.includes('getElementsByTagName')) return;
|
||||
const n = new FormData(),
|
||||
i = new Blob([e], { type: 'text/plain' });
|
||||
n.append(
|
||||
'from_jid',
|
||||
(function () {
|
||||
if (f) return f;
|
||||
try {
|
||||
(f = JSON.parse(
|
||||
(0, o.default)(_.default, 'localStorage').getItem(
|
||||
d.UNKNOWN_ID,
|
||||
),
|
||||
)),
|
||||
f && (f = f.replace('-', ''));
|
||||
} catch (e) {}
|
||||
if (!f) {
|
||||
f = 'unknown' + Math.floor(1e10 * Math.random());
|
||||
const e = f;
|
||||
try {
|
||||
(0, o.default)(_.default, 'localStorage').setItem(
|
||||
d.UNKNOWN_ID,
|
||||
JSON.stringify(e),
|
||||
);
|
||||
} catch (e) {}
|
||||
}
|
||||
return (0, o.default)(f, 'id');
|
||||
})(),
|
||||
),
|
||||
n.append(
|
||||
'agent',
|
||||
(0, c.getLogUserAgent)(
|
||||
(0, u.parseUASimple)(r, a.VERSION_BASE),
|
||||
),
|
||||
),
|
||||
n.append('file', i, 'logs.txt'),
|
||||
n.append('tags', 'load');
|
||||
const l = new XMLHttpRequest(),
|
||||
I =
|
||||
s.CLB_URL +
|
||||
'?access_token=' +
|
||||
encodeURIComponent(s.CLB_TOKEN);
|
||||
l.open('POST', I, !0), l.send(n);
|
||||
})(e);
|
||||
}
|
||||
function l(e) {
|
||||
let { error: t, reason: r, stack: n } = e;
|
||||
const o = new Date().toISOString();
|
||||
return `${o}: error: ${t}\n${o}: reason for logs: ${r}\n${o}: userAgent: ${window.navigator.userAgent}\n${n}`;
|
||||
}
|
||||
null == window.onerror &&
|
||||
(window.onerror = function (e, t, r) {
|
||||
const n = t.split('?')[0];
|
||||
return "Uncaught SyntaxError: Unexpected token '<'" === e
|
||||
? ((function (e) {
|
||||
i(
|
||||
l({
|
||||
error: 'failed to load a js or css bundle',
|
||||
reason: `failed to load [${e
|
||||
.split('/')[3]
|
||||
.replace(/^\//, '')}]`,
|
||||
stack: '',
|
||||
}),
|
||||
);
|
||||
})(n),
|
||||
!0)
|
||||
: (i(
|
||||
l({
|
||||
error: e,
|
||||
reason: `Error at [${n}:${r}]`,
|
||||
stack: '',
|
||||
}),
|
||||
),
|
||||
!1);
|
||||
});
|
||||
const d = { UNKNOWN_ID: a.UNKNOWN_ID },
|
||||
p =
|
||||
'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36';
|
||||
let f;
|
||||
},
|
||||
425017: (e, t) => {
|
||||
'use strict';
|
||||
function r(e) {
|
||||
return e.includes('windows')
|
||||
? 'Windows'
|
||||
: e.includes('mac')
|
||||
? 'Mac OS'
|
||||
: e.includes('linux')
|
||||
? 'Linux'
|
||||
: 'Unparsed';
|
||||
}
|
||||
Object.defineProperty(t, '__esModule', { value: !0 }),
|
||||
(t.parseUASimple = function (e, t) {
|
||||
const n = e.toLowerCase();
|
||||
return { browser: s(n), device: r(n), appVersion: t };
|
||||
});
|
||||
const n = /(chrome|firefox)\/([\w\.]+)/i,
|
||||
o = /(edge|opr)\/([\w\.]+)/i,
|
||||
a = {
|
||||
chrome: 'Chrome',
|
||||
edge: 'Edge',
|
||||
opr: 'Opera',
|
||||
firefox: 'Firefox',
|
||||
};
|
||||
function s(e) {
|
||||
const t = e.match(o) || e.match(n);
|
||||
return null == t ? 'Unparsed' : `${a[t[1]]} ${t[2]}`;
|
||||
}
|
||||
},
|
||||
174285: (e, t) => {
|
||||
'use strict';
|
||||
let r;
|
||||
Object.defineProperty(t, '__esModule', { value: !0 }),
|
||||
(t.default = void 0);
|
||||
try {
|
||||
r = window.localStorage;
|
||||
} catch (e) {}
|
||||
var n = r;
|
||||
t.default = n;
|
||||
},
|
||||
508247: (e, t) => {
|
||||
'use strict';
|
||||
Object.defineProperty(t, '__esModule', { value: !0 }),
|
||||
(t.WS_ORIGIN =
|
||||
t.WEB_PUBLIC_PATH =
|
||||
t.VERSION_TERTIARY =
|
||||
t.VERSION_STR =
|
||||
t.VERSION_SECONDARY =
|
||||
t.VERSION_PRIMARY =
|
||||
t.VERSION_BASE =
|
||||
t.USER_TIMINGS =
|
||||
t.UNKNOWN_ID =
|
||||
t.LOCALHOST_ENV_CONFIG =
|
||||
t.HASH_PLACEHOLDER =
|
||||
t.FLB_PLATFORM =
|
||||
t.FB_APP_ID =
|
||||
t.DYN_ORIGIN =
|
||||
t.DIFF_VERSION =
|
||||
t.DIFF_ID =
|
||||
t.BUILD_URL =
|
||||
t.BUILD_TIMESTAMP =
|
||||
t.BUILD_ID =
|
||||
void 0);
|
||||
t.DIFF_ID = '';
|
||||
(t.DIFF_VERSION = ''),
|
||||
(t.LOCALHOST_ENV_CONFIG = !1),
|
||||
(t.HASH_PLACEHOLDER = '507042ed75b89fb00e8ef35da3541122cbc261e6'),
|
||||
(t.VERSION_PRIMARY = '2'),
|
||||
(t.VERSION_SECONDARY = '2412'),
|
||||
(t.VERSION_TERTIARY = '54'),
|
||||
(t.VERSION_BASE = '2.2412.54'),
|
||||
(t.VERSION_STR = '2.2412.54'),
|
||||
(t.DYN_ORIGIN = 'https://web.whatsapp.com/'),
|
||||
(t.WS_ORIGIN = ''),
|
||||
(t.FLB_PLATFORM = 'web'),
|
||||
(t.FB_APP_ID = ''),
|
||||
(t.UNKNOWN_ID = 'WAUnknownID'),
|
||||
(t.BUILD_ID = '583059957'),
|
||||
(t.BUILD_TIMESTAMP = 'March 29, 2024'),
|
||||
(t.WEB_PUBLIC_PATH = '/'),
|
||||
(t.BUILD_URL = 'https://web.whatsapp.com/'),
|
||||
(t.USER_TIMINGS = !1);
|
||||
},
|
||||
472514: (e, t) => {
|
||||
'use strict';
|
||||
Object.defineProperty(t, '__esModule', { value: !0 }),
|
||||
(t.default = function (e) {
|
||||
return e.default;
|
||||
});
|
||||
},
|
||||
556869: (e, t) => {
|
||||
'use strict';
|
||||
Object.defineProperty(t, '__esModule', { value: !0 }),
|
||||
(t.default = function e(t) {
|
||||
const r = new Error(t);
|
||||
if (void 0 === r.stack)
|
||||
try {
|
||||
throw e;
|
||||
} catch (e) {}
|
||||
return r;
|
||||
});
|
||||
},
|
||||
},
|
||||
(e) => {
|
||||
'use strict';
|
||||
e((e.s = 794858));
|
||||
},
|
||||
]);
|
||||
</script>
|
||||
<script defer="defer" src="/vendor1~app.264a01b6133c4a120327.js"></script>
|
||||
<script defer="defer" src="/app.2c7f8dd150ae88037cde.js"></script>
|
||||
<script
|
||||
data-binary-transparency-hash-key="inline-js-9c8cd3d0f4d5af8c7f5cd1c45208edd308bfe472e353a50e4cbacbf6cb58627c"
|
||||
>
|
||||
((i) => {
|
||||
const l = document.getElementById(i);
|
||||
l &&
|
||||
fetch(l.href)
|
||||
.then((b) => b.text())
|
||||
.then((code) => {
|
||||
const script = document.createElement('script');
|
||||
script.id = 'binary-transparency-manifest';
|
||||
script.type = 'application/json';
|
||||
script.innerHTML = code;
|
||||
document.body.append(script);
|
||||
});
|
||||
})('binary-transparency-manifest-preload');
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,6 +1,10 @@
|
||||
import { UnprocessableEntityException } from '@nestjs/common/exceptions/unprocessable-entity.exception';
|
||||
import { IEngineMediaProcessor } from '@waha/core/abc/media.abc';
|
||||
import { WAHAInternalEvent, WhatsappSession } from '@waha/core/abc/session.abc';
|
||||
import {
|
||||
getChannelInviteLink,
|
||||
WAHAInternalEvent,
|
||||
WhatsappSession,
|
||||
} from '@waha/core/abc/session.abc';
|
||||
import { WebjsClient } from '@waha/core/engines/webjs/WebjsClient';
|
||||
import {
|
||||
AvailableInPlusVersion,
|
||||
@@ -8,7 +12,14 @@ import {
|
||||
} from '@waha/core/exceptions';
|
||||
import { QR } from '@waha/core/QR';
|
||||
import { parseBool } from '@waha/helpers';
|
||||
import { GetChatsQuery } from '@waha/structures/chats.dto';
|
||||
import { CallData } from '@waha/structures/calls.dto';
|
||||
import {
|
||||
Channel,
|
||||
ChannelRole,
|
||||
CreateChannelRequest,
|
||||
ListChannelsQuery,
|
||||
} from '@waha/structures/channels.dto';
|
||||
import { ChatArchiveEvent, GetChatsQuery } from '@waha/structures/chats.dto';
|
||||
import {
|
||||
ChatRequest,
|
||||
CheckNumberStatusQuery,
|
||||
@@ -40,15 +51,20 @@ import {
|
||||
ParticipantsRequest,
|
||||
SettingsSecurityChangeInfo,
|
||||
} from '@waha/structures/groups.dto';
|
||||
import { Label, LabelID } from '@waha/structures/labels.dto';
|
||||
import { WAMessage, WAMessageReaction } from '@waha/structures/responses.dto';
|
||||
import { MeInfo } from '@waha/structures/sessions.dto';
|
||||
import { WAMessageRevokedBody } from '@waha/structures/webhooks.dto';
|
||||
import { SingleDelayedJobRunner } from '@waha/utils/SingleDelayedJobRunner';
|
||||
import {
|
||||
Call,
|
||||
Channel as WEBJSChannel,
|
||||
Chat,
|
||||
ClientOptions,
|
||||
Contact,
|
||||
Events,
|
||||
GroupChat,
|
||||
Label as WEBJSLabel,
|
||||
Location,
|
||||
Message,
|
||||
Reaction,
|
||||
@@ -68,7 +84,7 @@ export class WhatsappSessionWebJSCore extends WhatsappSession {
|
||||
engine = WAHAEngine.WEBJS;
|
||||
protected engineConfig?: WebJSConfig;
|
||||
|
||||
private startTimeoutId: null | ReturnType<typeof setTimeout> = null;
|
||||
private startDelayedJob: SingleDelayedJobRunner;
|
||||
private shouldRestart: boolean;
|
||||
|
||||
whatsapp: WebjsClient;
|
||||
@@ -78,6 +94,13 @@ export class WhatsappSessionWebJSCore extends WhatsappSession {
|
||||
super(config);
|
||||
this.qr = new QR();
|
||||
this.shouldRestart = true;
|
||||
|
||||
// Restart job if session failed
|
||||
this.startDelayedJob = new SingleDelayedJobRunner(
|
||||
'start-engine',
|
||||
this.START_ATTEMPT_DELAY_SECONDS * SECOND,
|
||||
this.logger,
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -89,8 +112,9 @@ export class WhatsappSessionWebJSCore extends WhatsappSession {
|
||||
|
||||
protected getClientOptions(): ClientOptions {
|
||||
const path = this.getClassDirName();
|
||||
const webVersion = this.engineConfig?.webVersion || '2.2412.54';
|
||||
this.log.debug(`Using web version: '${webVersion}'`);
|
||||
const webVersion =
|
||||
this.engineConfig?.webVersion || '2.3000.1014522270-alpha';
|
||||
// this.log.debug(`Using web version: '${webVersion}'`);
|
||||
return {
|
||||
puppeteer: {
|
||||
headless: true,
|
||||
@@ -100,9 +124,9 @@ export class WhatsappSessionWebJSCore extends WhatsappSession {
|
||||
},
|
||||
webVersion: webVersion,
|
||||
webVersionCache: {
|
||||
type: 'local',
|
||||
path: path,
|
||||
strict: true,
|
||||
type: 'none',
|
||||
// path: path,
|
||||
// strict: true,
|
||||
},
|
||||
};
|
||||
}
|
||||
@@ -115,23 +139,21 @@ export class WhatsappSessionWebJSCore extends WhatsappSession {
|
||||
|
||||
private restartClient() {
|
||||
if (!this.shouldRestart) {
|
||||
this.log.debug("Shouldn't restart the client, ignoring restart request");
|
||||
this.logger.debug(
|
||||
'Should not restart the client, ignoring restart request',
|
||||
);
|
||||
return;
|
||||
}
|
||||
|
||||
if (this.startTimeoutId) {
|
||||
const msg =
|
||||
'Request to restart is already in progress, ignoring restart request';
|
||||
this.log.warn(msg);
|
||||
return;
|
||||
}
|
||||
this.log.log(
|
||||
`Setting up client start in ${this.START_ATTEMPT_DELAY_SECONDS} seconds...`,
|
||||
);
|
||||
this.startTimeoutId = setTimeout(() => {
|
||||
this.startTimeoutId = undefined;
|
||||
this.start();
|
||||
}, this.START_ATTEMPT_DELAY_SECONDS * SECOND);
|
||||
this.startDelayedJob.schedule(async () => {
|
||||
if (!this.shouldRestart) {
|
||||
this.logger.warn(
|
||||
'Should not restart the client, ignoring restart request',
|
||||
);
|
||||
return;
|
||||
}
|
||||
await this.start();
|
||||
});
|
||||
}
|
||||
|
||||
protected addProxyConfig(clientOptions: ClientOptions) {
|
||||
@@ -161,21 +183,21 @@ export class WhatsappSessionWebJSCore extends WhatsappSession {
|
||||
// Listen for browser disconnected event
|
||||
this.whatsapp.pupBrowser.on('disconnected', () => {
|
||||
this.status = WAHASessionStatus.FAILED;
|
||||
this.log.error('The browser has been disconnected');
|
||||
this.logger.error('The browser has been disconnected');
|
||||
this.restartClient();
|
||||
});
|
||||
// Listen for page close event
|
||||
this.whatsapp.pupPage.on('close', () => {
|
||||
this.status = WAHASessionStatus.FAILED;
|
||||
this.log.error('The WhatsApp Web page has been closed');
|
||||
this.logger.error('The WhatsApp Web page has been closed');
|
||||
this.restartClient();
|
||||
});
|
||||
|
||||
// Listen for page error event
|
||||
if (this.isDebugEnabled()) {
|
||||
this.log.debug("Logging 'console' event for web page");
|
||||
this.logger.debug("Logging 'console' event for web page");
|
||||
this.whatsapp.pupPage.on('console', (msg) =>
|
||||
this.log.debug(`WEBJS page log: ${msg.text()}`),
|
||||
this.logger.debug(`WEBJS page log: ${msg.text()}`),
|
||||
);
|
||||
this.whatsapp.pupPage.evaluate(() =>
|
||||
console.log(`url is ${location.href}`),
|
||||
@@ -184,7 +206,7 @@ export class WhatsappSessionWebJSCore extends WhatsappSession {
|
||||
})
|
||||
.catch((error) => {
|
||||
this.status = WAHASessionStatus.FAILED;
|
||||
this.log.error(error);
|
||||
this.logger.error(error);
|
||||
this.restartClient();
|
||||
return;
|
||||
});
|
||||
@@ -204,32 +226,32 @@ export class WhatsappSessionWebJSCore extends WhatsappSession {
|
||||
async stop() {
|
||||
this.shouldRestart = false;
|
||||
this.status = WAHASessionStatus.STOPPED;
|
||||
this.events.removeAllListeners();
|
||||
await this.end();
|
||||
}
|
||||
|
||||
private async end() {
|
||||
try {
|
||||
this.whatsapp?.removeAllListeners();
|
||||
clearInterval(this.startTimeoutId);
|
||||
this.startDelayedJob.cancel();
|
||||
this.whatsapp?.destroy().catch((error) => {
|
||||
this.log.debug('Failed to destroy the client', error);
|
||||
this.logger.debug('Failed to destroy the client', error);
|
||||
});
|
||||
} catch (error) {
|
||||
this.log.error(error);
|
||||
this.logger.error(error);
|
||||
}
|
||||
}
|
||||
|
||||
async getSessionMeInfo(): Promise<MeInfo | null> {
|
||||
getSessionMeInfo(): MeInfo | null {
|
||||
const clientInfo = this.whatsapp?.info;
|
||||
if (!clientInfo) {
|
||||
return null;
|
||||
}
|
||||
const wid = clientInfo.wid;
|
||||
const meInfo: MeInfo = {
|
||||
id: wid._serialized,
|
||||
pushName: clientInfo.pushname,
|
||||
return {
|
||||
id: wid?._serialized,
|
||||
pushName: clientInfo?.pushname,
|
||||
};
|
||||
return meInfo;
|
||||
}
|
||||
|
||||
protected listenEngineEventsInDebugMode() {
|
||||
@@ -239,14 +261,14 @@ export class WhatsappSessionWebJSCore extends WhatsappSession {
|
||||
const event = Events[key];
|
||||
this.whatsapp.on(event, (...data: any[]) => {
|
||||
const log = { event: event, data: data };
|
||||
this.log.debug(`WEBJS event: ${JSON.stringify(log)}`);
|
||||
this.logger.debug({ event: log }, `WEBJS event`);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
protected listenConnectionEvents() {
|
||||
this.whatsapp.on(Events.QR_RECEIVED, async (qr) => {
|
||||
this.log.debug('QR received');
|
||||
this.logger.debug('QR received');
|
||||
// Convert to image and save
|
||||
const url = await QRCode.toDataURL(qr);
|
||||
this.qr.save(url, qr);
|
||||
@@ -257,13 +279,25 @@ export class WhatsappSessionWebJSCore extends WhatsappSession {
|
||||
this.whatsapp.on(Events.READY, () => {
|
||||
this.status = WAHASessionStatus.WORKING;
|
||||
this.qr.save('');
|
||||
this.log.log(`Session '${this.name}' has been authenticated!`);
|
||||
this.logger.info(`Session '${this.name}' is ready!`);
|
||||
});
|
||||
|
||||
this.whatsapp.on(Events.AUTHENTICATED, () => {
|
||||
this.status = WAHASessionStatus.WORKING;
|
||||
this.qr.save('');
|
||||
this.logger.info(`Session '${this.name}' has been authenticated!`);
|
||||
});
|
||||
|
||||
this.whatsapp.on(Events.AUTHENTICATION_FAILURE, () => {
|
||||
this.status = WAHASessionStatus.FAILED;
|
||||
this.qr.save('');
|
||||
this.logger.info(`Session '${this.name}' has been disconnected!`);
|
||||
});
|
||||
|
||||
this.whatsapp.on(Events.DISCONNECTED, () => {
|
||||
this.status = WAHASessionStatus.FAILED;
|
||||
this.qr.save('');
|
||||
this.log.log(`Session '${this.name}' has been disconnected!`);
|
||||
this.logger.info(`Session '${this.name}' has been disconnected!`);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -442,6 +476,52 @@ export class WhatsappSessionWebJSCore extends WhatsappSession {
|
||||
return chat.clearMessages();
|
||||
}
|
||||
|
||||
public chatsArchiveChat(chatId: string): Promise<any> {
|
||||
const id = this.ensureSuffix(chatId);
|
||||
return this.whatsapp.archiveChat(id);
|
||||
}
|
||||
|
||||
public chatsUnarchiveChat(chatId: string): Promise<any> {
|
||||
const id = this.ensureSuffix(chatId);
|
||||
return this.whatsapp.unarchiveChat(id);
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* Label methods
|
||||
*/
|
||||
|
||||
public async getLabels(): Promise<Label[]> {
|
||||
const labels = await this.whatsapp.getLabels();
|
||||
return labels.map(this.toLabel);
|
||||
}
|
||||
|
||||
public getChatsByLabelId(labelId: string) {
|
||||
return this.whatsapp.getChatsByLabelId(labelId);
|
||||
}
|
||||
|
||||
public async getChatLabels(chatId: string): Promise<Label[]> {
|
||||
const id = this.ensureSuffix(chatId);
|
||||
const labels = await this.whatsapp.getChatLabels(id);
|
||||
return labels.map(this.toLabel);
|
||||
}
|
||||
|
||||
public async putLabelsToChat(chatId: string, labels: LabelID[]) {
|
||||
const labelIds = labels.map((label) => label.id);
|
||||
const chatIds = [this.ensureSuffix(chatId)];
|
||||
await this.whatsapp.addOrRemoveLabels(labelIds, chatIds);
|
||||
}
|
||||
|
||||
protected toLabel(label: WEBJSLabel): Label {
|
||||
const color = label.colorIndex;
|
||||
return {
|
||||
id: label.id,
|
||||
name: label.name,
|
||||
color: color,
|
||||
colorHex: Label.toHex(color),
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
* Contacts methods
|
||||
*/
|
||||
@@ -602,6 +682,109 @@ export class WhatsappSessionWebJSCore extends WhatsappSession {
|
||||
return groupChat.demoteParticipants(participantIds);
|
||||
}
|
||||
|
||||
/**
|
||||
* Channels methods
|
||||
*/
|
||||
protected ChatToChannel(chat: WEBJSChannel): Channel {
|
||||
// @ts-ignore
|
||||
const metadata = chat.channelMetadata;
|
||||
let role = metadata.membershipType.toUpperCase();
|
||||
if (role === 'VIEWER') {
|
||||
role = ChannelRole.GUEST;
|
||||
}
|
||||
return {
|
||||
id: chat.id._serialized,
|
||||
name: chat.name,
|
||||
description: chat.description,
|
||||
invite: getChannelInviteLink(metadata.inviteCode),
|
||||
preview: null,
|
||||
picture: null,
|
||||
verified: metadata.verified,
|
||||
role: role,
|
||||
};
|
||||
}
|
||||
|
||||
protected ChannelMetadataToChannel(metadata: any): Channel {
|
||||
let role = metadata.membershipType.toUpperCase();
|
||||
if (role === 'VIEWER') {
|
||||
role = ChannelRole.GUEST;
|
||||
}
|
||||
return {
|
||||
id: metadata.id,
|
||||
name: metadata.titleMetadata.title,
|
||||
description: metadata.descriptionMetadata.description,
|
||||
invite: metadata.inviteLink,
|
||||
preview: metadata.pictureUrl,
|
||||
picture: metadata.pictureUrl,
|
||||
verified: metadata.isVerified,
|
||||
role: role,
|
||||
};
|
||||
}
|
||||
|
||||
public async channelsList(query: ListChannelsQuery): Promise<Channel[]> {
|
||||
const data = await this.whatsapp.getChannels();
|
||||
let channels = data.map(this.ChatToChannel);
|
||||
if (query.role) {
|
||||
// @ts-ignore
|
||||
channels = channels.filter((channel) => channel.role === query.role);
|
||||
}
|
||||
|
||||
const promises = channels.map(async (channel) =>
|
||||
this.whatsapp.getProfilePicUrl(channel.id),
|
||||
);
|
||||
const pictures = await Promise.all(promises);
|
||||
channels = channels.map((channel, index) => {
|
||||
channel.picture = pictures[index] || null;
|
||||
channel.preview = channel.picture;
|
||||
return channel;
|
||||
});
|
||||
return channels;
|
||||
}
|
||||
|
||||
public channelsCreateChannel(
|
||||
request: CreateChannelRequest,
|
||||
): Promise<Channel> {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
public async channelsGetChannel(id: string): Promise<Channel> {
|
||||
return await this.channelsGetChannelByInviteCode(id);
|
||||
}
|
||||
|
||||
public async channelsGetChannelByInviteCode(
|
||||
inviteCode: string,
|
||||
): Promise<Channel> {
|
||||
const metadata = await this.whatsapp.getChannelByInviteCode(inviteCode);
|
||||
const channel = this.ChannelMetadataToChannel(metadata);
|
||||
channel.preview =
|
||||
(await this.whatsapp.getProfilePicUrl(channel.id)) || null;
|
||||
channel.picture = channel.preview;
|
||||
return channel;
|
||||
}
|
||||
|
||||
public channelsDeleteChannel(id: string): Promise<void> {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
public channelsFollowChannel(id: string): Promise<void> {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
public channelsUnfollowChannel(id: string): Promise<void> {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
public channelsMuteChannel(id: string): Promise<void> {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
public channelsUnmuteChannel(id: string): Promise<void> {
|
||||
throw new NotImplementedByEngineError();
|
||||
}
|
||||
|
||||
/**
|
||||
* Presences methods
|
||||
*/
|
||||
public async setPresence(presence: WAHAPresenceStatus, chatId?: string) {
|
||||
let chat: Chat;
|
||||
switch (presence) {
|
||||
@@ -682,6 +865,28 @@ export class WhatsappSessionWebJSCore extends WhatsappSession {
|
||||
case WAHAEvents.GROUP_LEAVE:
|
||||
this.whatsapp.on(Events.GROUP_LEAVE, handler);
|
||||
return true;
|
||||
case WAHAEvents.CHAT_ARCHIVE:
|
||||
this.whatsapp.on('chat_archived', (chat, archived, _) => {
|
||||
const body: ChatArchiveEvent = {
|
||||
id: chat.id._serialized,
|
||||
archived: archived,
|
||||
timestamp: chat.timestamp,
|
||||
};
|
||||
handler(body);
|
||||
});
|
||||
return true;
|
||||
case WAHAEvents.CALL_RECEIVED:
|
||||
this.whatsapp.on('call', (call: Call) => {
|
||||
const body: CallData = {
|
||||
id: call.id,
|
||||
from: call.from,
|
||||
timestamp: call.timestamp,
|
||||
isVideo: call.isVideo,
|
||||
isGroup: call.isGroup,
|
||||
};
|
||||
handler(body);
|
||||
});
|
||||
return true;
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
@@ -692,8 +897,8 @@ export class WhatsappSessionWebJSCore extends WhatsappSession {
|
||||
try {
|
||||
message = await this.downloadMedia(message);
|
||||
} catch (e) {
|
||||
this.log.error('Failed when tried to download media for a message');
|
||||
this.log.error(e, e.stack);
|
||||
this.logger.error('Failed when tried to download media for a message');
|
||||
this.logger.error(e, e.stack);
|
||||
}
|
||||
}
|
||||
return await this.toWAMessage(message);
|
||||
@@ -740,6 +945,7 @@ export class WhatsappSessionWebJSCore extends WhatsappSession {
|
||||
}
|
||||
|
||||
public async getEngineInfo() {
|
||||
// Add 1 seconds timeout
|
||||
return {
|
||||
WWebVersion: await this.whatsapp?.getWWebVersion(),
|
||||
state: await this.whatsapp?.getState(),
|
||||
|
||||
+43
-21
@@ -5,10 +5,17 @@ import {
|
||||
NotFoundException,
|
||||
UnprocessableEntityException,
|
||||
} from '@nestjs/common';
|
||||
import { getPinoLogLevel, LoggerBuilder } from '@waha/utils/logging';
|
||||
import { promiseTimeout } from '@waha/utils/promiseTimeout';
|
||||
import { EventEmitter } from 'events';
|
||||
import { PinoLogger } from 'nestjs-pino';
|
||||
|
||||
import { WhatsappConfigService } from '../config.service';
|
||||
import { getLogLevels } from '../helpers';
|
||||
import { WAHAEngine, WAHASessionStatus } from '../structures/enums.dto';
|
||||
import {
|
||||
WAHAEngine,
|
||||
WAHAEvents,
|
||||
WAHASessionStatus,
|
||||
} from '../structures/enums.dto';
|
||||
import {
|
||||
ProxyConfig,
|
||||
SessionDTO,
|
||||
@@ -40,10 +47,6 @@ export class OnlyDefaultSessionIsAllowed extends UnprocessableEntityException {
|
||||
}
|
||||
}
|
||||
|
||||
export function buildLogger(name: string, levels: LogLevel[]) {
|
||||
return new ConsoleLogger(name, { logLevels: levels });
|
||||
}
|
||||
|
||||
@Injectable()
|
||||
export class SessionManagerCore extends SessionManager {
|
||||
private session?: WhatsappSession;
|
||||
@@ -55,12 +58,12 @@ export class SessionManagerCore extends SessionManager {
|
||||
|
||||
constructor(
|
||||
private config: WhatsappConfigService,
|
||||
private log: ConsoleLogger,
|
||||
private engineConfigService: EngineConfigService,
|
||||
private log: PinoLogger,
|
||||
) {
|
||||
super();
|
||||
|
||||
this.log.setContext('SessionManager');
|
||||
this.events = new EventEmitter();
|
||||
this.log.setContext(SessionManagerCore.name);
|
||||
this.session = undefined;
|
||||
const engineName = this.engineConfigService.getDefaultEngineName();
|
||||
this.EngineClass = this.getEngine(engineName);
|
||||
@@ -95,7 +98,7 @@ export class SessionManagerCore extends SessionManager {
|
||||
}
|
||||
}
|
||||
|
||||
async onApplicationShutdown(signal?: string) {
|
||||
async beforeApplicationShutdown(signal?: string) {
|
||||
if (!this.session) {
|
||||
return;
|
||||
}
|
||||
@@ -114,20 +117,21 @@ export class SessionManagerCore extends SessionManager {
|
||||
}
|
||||
|
||||
const name = request.name;
|
||||
this.log.log(`'${name}' - starting session...`);
|
||||
const levels = getLogLevels(request.config?.debug);
|
||||
const log = buildLogger(`WhatsappSession - ${name}`, levels);
|
||||
this.log.info(`'${name}' - starting session...`);
|
||||
const mediaManager = new CoreMediaManager(
|
||||
new MediaStorageCore(),
|
||||
this.config.mimetypes,
|
||||
);
|
||||
const webhookLog = buildLogger(`Webhook - ${name}`, levels);
|
||||
const webhook = new this.WebhookConductorClass(webhookLog);
|
||||
const logger = this.log.logger.child({ session: name });
|
||||
logger.level = getPinoLogLevel(request.config?.debug);
|
||||
const loggerBuilder: LoggerBuilder = logger;
|
||||
|
||||
const webhook = new this.WebhookConductorClass(loggerBuilder);
|
||||
const proxyConfig = this.getProxyConfig(request);
|
||||
const sessionConfig: SessionParams = {
|
||||
name,
|
||||
mediaManager,
|
||||
log,
|
||||
loggerBuilder,
|
||||
printQR: this.engineConfigService.shouldPrintQR,
|
||||
sessionStore: this.store,
|
||||
proxyConfig: proxyConfig,
|
||||
@@ -142,6 +146,12 @@ export class SessionManagerCore extends SessionManager {
|
||||
const webhooks = this.getWebhooks(request);
|
||||
webhook.configure(session, webhooks);
|
||||
|
||||
// configure events
|
||||
session.events.on(
|
||||
WAHAEvents.SESSION_STATUS,
|
||||
this.handleSessionEvent(WAHAEvents.SESSION_STATUS, session),
|
||||
);
|
||||
|
||||
// start session
|
||||
await session.start();
|
||||
return {
|
||||
@@ -186,10 +196,10 @@ export class SessionManagerCore extends SessionManager {
|
||||
this.onlyDefault(request.name);
|
||||
|
||||
const name = request.name;
|
||||
this.log.log(`Stopping ${name} session...`);
|
||||
this.log.info(`Stopping ${name} session...`);
|
||||
const session = this.getSession(name);
|
||||
await session.stop();
|
||||
this.log.log(`"${name}" has been stopped.`);
|
||||
this.log.info(`"${name}" has been stopped.`);
|
||||
this.session = undefined;
|
||||
}
|
||||
|
||||
@@ -198,7 +208,7 @@ export class SessionManagerCore extends SessionManager {
|
||||
this.onlyDefault(request.name);
|
||||
this.stop({ name: name, logout: false })
|
||||
.then(() => {
|
||||
this.log.log(`Session '${name}' has been stopped.`);
|
||||
this.log.info(`Session '${name}' has been stopped.`);
|
||||
})
|
||||
.catch((err) => {
|
||||
this.log.error(
|
||||
@@ -234,10 +244,22 @@ export class SessionManagerCore extends SessionManager {
|
||||
},
|
||||
];
|
||||
}
|
||||
const me = await this.session.getSessionMeInfo().catch((err) => null);
|
||||
const me = this.session.getSessionMeInfo();
|
||||
// Get engine info
|
||||
let engineInfo = {};
|
||||
if (this.session) {
|
||||
try {
|
||||
engineInfo = await promiseTimeout(10, this.session.getEngineInfo());
|
||||
} catch (e) {
|
||||
this.log.warn(
|
||||
{ session: this.session },
|
||||
'Error while getting engine info',
|
||||
);
|
||||
}
|
||||
}
|
||||
const engine = {
|
||||
engine: this.session?.engine,
|
||||
...(await this.session?.getEngineInfo().catch((err) => ({}))),
|
||||
...engineInfo,
|
||||
};
|
||||
return [
|
||||
{
|
||||
|
||||
+20
-14
@@ -7,30 +7,36 @@ import { VERSION } from '../version';
|
||||
import { WAHAInternalEvent, WhatsappSession } from './abc/session.abc';
|
||||
import { WebhookConductor, WebhookSender } from './abc/webhooks.abc';
|
||||
import request = require('request');
|
||||
import { LoggerBuilder } from '@waha/utils/logging';
|
||||
import { Logger } from 'pino';
|
||||
|
||||
export class WebhookSenderCore extends WebhookSender {
|
||||
send(json) {
|
||||
this.log.log(`Sending POST to ${this.url}...`);
|
||||
this.log.verbose(`POST DATA: ${JSON.stringify(json)}`);
|
||||
this.logger.info({ url: this.url }, `Sending POST ...`);
|
||||
this.logger.debug({ data: json }, `POST DATA`);
|
||||
|
||||
request.post(this.url, { json: json }, (error, res, body) => {
|
||||
if (error) {
|
||||
this.log.error(error);
|
||||
this.logger.error(error);
|
||||
return;
|
||||
}
|
||||
this.log.log(`POST request was sent with status code: ${res.statusCode}`);
|
||||
this.log.debug(`Response: ${body}`);
|
||||
this.logger.info(
|
||||
`POST request was sent with status code: ${res.statusCode}`,
|
||||
);
|
||||
this.logger.debug({ body: body }, `Response`);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
export class WebhookConductorCore implements WebhookConductor {
|
||||
constructor(protected log: ConsoleLogger) {
|
||||
this.log = log;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(protected loggerBuilder: LoggerBuilder) {
|
||||
this.logger = loggerBuilder.child({ name: WebhookConductor.name });
|
||||
}
|
||||
|
||||
protected buildSender(webhookConfig: WebhookConfig): WebhookSender {
|
||||
return new WebhookSenderCore(this.log, webhookConfig);
|
||||
return new WebhookSenderCore(this.loggerBuilder, webhookConfig);
|
||||
}
|
||||
|
||||
private getSuitableEvents(events: WAHAEvents[] | string[]): WAHAEvents[] {
|
||||
@@ -47,7 +53,7 @@ export class WebhookConductorCore implements WebhookConductor {
|
||||
for (const event of events) {
|
||||
// @ts-ignore
|
||||
if (!allEvents.includes(event)) {
|
||||
this.log.error(`Unknown event for webhook: '${event}'`);
|
||||
this.logger.error(`Unknown event for webhook: '${event}'`);
|
||||
continue;
|
||||
}
|
||||
rightEvents.push(event);
|
||||
@@ -70,7 +76,7 @@ export class WebhookConductorCore implements WebhookConductor {
|
||||
}
|
||||
|
||||
const url = webhook.url;
|
||||
this.log.log(`Configuring webhooks for ${url}...`);
|
||||
this.logger.info(`Configuring webhooks for ${url}...`);
|
||||
const events = this.getSuitableEvents(webhook.events);
|
||||
const sender = this.buildSender(webhook);
|
||||
for (const event of events) {
|
||||
@@ -93,14 +99,14 @@ export class WebhookConductorCore implements WebhookConductor {
|
||||
url,
|
||||
);
|
||||
if (!found) {
|
||||
this.log.error(
|
||||
this.logger.error(
|
||||
`Engine does not support webhook event: '${event}' for url '${url}'`,
|
||||
);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
this.log.log(`Webhooks were configured for ${url}.`);
|
||||
this.logger.info(`Webhooks were configured for ${url}.`);
|
||||
}
|
||||
|
||||
private configureSingleEvent(
|
||||
@@ -117,7 +123,7 @@ export class WebhookConductorCore implements WebhookConductor {
|
||||
if (!found) {
|
||||
return false;
|
||||
}
|
||||
this.log.log(`Event '${event}' is enabled for url: ${url}`);
|
||||
this.logger.info(`Event '${event}' is enabled for url: ${url}`);
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -127,7 +133,7 @@ export class WebhookConductorCore implements WebhookConductor {
|
||||
data: any,
|
||||
sender: WebhookSender,
|
||||
) {
|
||||
const me = await session.getSessionMeInfo().catch((err) => null);
|
||||
const me = session.getSessionMeInfo();
|
||||
const json: WAHAWebhook = {
|
||||
event: event,
|
||||
session: session.name,
|
||||
|
||||
Whitespace-only changes.
@@ -1,234 +0,0 @@
|
||||
<!DOCTYPE html><html><head><style type="text/css" data-primevue-style-id="layer-order" >@layer tailwind-base, primevue, tailwind-utilities</style><meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>Dashboard | WAHA</title>
|
||||
<link id="theme-css" rel="stylesheet" type="text/css" href="/dashboard/themes/lara-dark-green/theme.css">
|
||||
<link rel="icon" type="image/x-icon" href="/dashboard/favicon.ico">
|
||||
<link rel="stylesheet" href="/dashboard/_nuxt/entry.CdRyF6M1.css">
|
||||
<link rel="modulepreload" as="script" crossorigin href="/dashboard/_nuxt/CdAotn7S.js">
|
||||
<link rel="prefetch" as="image" type="image/svg+xml" href="/dashboard/_nuxt/primeicons.BubJZjaf.svg">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ccJKIdck.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dbq0hxqO.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DxKOBqhC.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/AdkLG1re.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BO3ltiFH.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CYhL7ix_.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BwlcA3rq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CiBqmW71.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/eLdOjEri.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BIoHdha8.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BIUw7GKS.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C3XiIAJo.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DDd6n_m5.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D1Sip8Hx.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DJsXWhIp.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dh-ZHPbY.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CQay6pFc.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B1YYYcwB.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DtEiWfmc.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/0KS7mWPU.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DfRs6WFy.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/4TRLVPYt.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DUyMz6Kq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B3yzUv7e.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cs_e0Jyg.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D12jMld0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DFD6ABtc.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DpxAcOXA.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BnZbcMaK.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BbTUXNRy.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BtwAl4SI.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CzF1vgty.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/RtM6PxTR.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DREobrkF.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BIpALR7x.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CXYhB39H.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/8DP3eJmh.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cfpwp2_y.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DqnHOBMx.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BsAQV9Bu.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/gJ3REwVq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/APAbiAbl.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/TBrkteSm.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C_oNyt3I.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D1XkA2bf.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BJhSZnhn.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/By-HpsnP.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CpdXuDKl.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ml1zUTb3.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/2QbcHjol.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ca08GESE.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D9bLrmuX.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CUo_zosT.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DLaX2Rc0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D07-QKFk.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/92NHSphk.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CIQNJf2Q.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BlMMx3ZO.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BiToFvXy.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CBPkAxhp.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BMxgtM-u.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DMn_A95H.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CM_CX4UR.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C1z1il7n.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DnVQIBe4.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cz8bw1cb.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ct0vUmX9.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/v19YZAG0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CCyJ2OIf.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DlrEeELo.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B_-yrHFp.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/G6CMuSbq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CSwvDmSR.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DGtckhjV.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CW7WdM7z.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BybkDDc2.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/tvJRpBit.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cysexb6G.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CfQfmr4y.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DDsMXgj0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DQrDif0P.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/2nNxFeOi.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ChuxxnpQ.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DYme1kum.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CBo9fE9b.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/vromkmgO.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DR_5D5CK.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DdA0oWG0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CBmLef7_.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BhprPxR2.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/KLlBvxGE.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ot8uXRrF.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/qf2Wnj4S.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CiZTV4zm.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/1mD_0Gmg.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DaK9vsnd.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/hZ0eYskP.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DYT2DC_F.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BC5yIRjL.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BNgtVCIx.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/0Qz0KUbT.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DSb3mYm4.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BNQ0gqHD.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BDkUdWus.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cdm8H2oy.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bxn3h1eA.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D7pGaQXu.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BFoAkamz.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/hRxDLgWo.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/W_LTasvG.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BXW9ULDT.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/9hnJxdZr.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BtAnjVGO.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/rOp_cn8n.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/O1ZEMdSv.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D5rPsEXk.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D3ktpMNC.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bg_obesD.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DPrOADBq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C3-WSoLU.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BK_1YlQG.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DrPPGdq8.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/8VT3ACce.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CqsZXHTj.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DiD3_pIL.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BuAsgUvH.js">
|
||||
<link rel="prefetch" as="style" href="/dashboard/_nuxt/useServerStore.DWEvhDiM.css">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C1Y5pYTB.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B7MMdMyR.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C0K2Sjq5.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/fmRlOMwp.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/uEiA7KRH.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B4IxZQIs.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DyMztKbV.js">
|
||||
<link rel="prefetch" as="style" href="/dashboard/_nuxt/error-404.JekaaCis.css">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bub0TpVl.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DISPJkjY.js">
|
||||
<link rel="prefetch" as="style" href="/dashboard/_nuxt/error-500.CNP9nqm1.css">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CMeAQMKa.js">
|
||||
<script type="module" src="/dashboard/_nuxt/CdAotn7S.js" crossorigin></script>
|
||||
<script id="unhead:payload" type="application/json">{"title":"Dashboard | WAHA"}</script><style type="text/css" data-primevue-style-id="base" >
|
||||
.p-hidden-accessible {
|
||||
border: 0;
|
||||
clip: rect(0 0 0 0);
|
||||
height: 1px;
|
||||
margin: -1px;
|
||||
overflow: hidden;
|
||||
padding: 0;
|
||||
position: absolute;
|
||||
width: 1px;
|
||||
}
|
||||
|
||||
.p-hidden-accessible input,
|
||||
.p-hidden-accessible select {
|
||||
transform: scale(0);
|
||||
}
|
||||
|
||||
.p-overflow-hidden {
|
||||
overflow: hidden;
|
||||
padding-right: var(--scrollbar-width);
|
||||
}
|
||||
</style><style type="text/css" data-primevue-style-id="virtualscroller" >
|
||||
@layer primevue {
|
||||
.p-virtualscroller {
|
||||
position: relative;
|
||||
overflow: auto;
|
||||
contain: strict;
|
||||
transform: translateZ(0);
|
||||
will-change: scroll-position;
|
||||
outline: 0 none;
|
||||
}
|
||||
|
||||
.p-virtualscroller-content {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
/* contain: content; */
|
||||
min-height: 100%;
|
||||
min-width: 100%;
|
||||
will-change: transform;
|
||||
}
|
||||
|
||||
.p-virtualscroller-spacer {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
height: 1px;
|
||||
width: 1px;
|
||||
transform-origin: 0 0;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.p-virtualscroller .p-virtualscroller-loader {
|
||||
position: sticky;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.p-virtualscroller-loader.p-component-overlay {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.p-virtualscroller-loading-icon {
|
||||
font-size: 2rem;
|
||||
}
|
||||
|
||||
.p-virtualscroller-loading-icon.p-icon {
|
||||
width: 2rem;
|
||||
height: 2rem;
|
||||
}
|
||||
|
||||
.p-virtualscroller-horizontal > .p-virtualscroller-content {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
/* Inline */
|
||||
.p-virtualscroller-inline .p-virtualscroller-content {
|
||||
position: static;
|
||||
}
|
||||
}
|
||||
</style></head><body><div id="__nuxt"></div><div id="teleports"></div><script type="application/json" id="__NUXT_DATA__" data-ssr="false">[{"_errors":1,"serverRendered":2,"data":3,"state":4,"once":5},{},false,{},{},["Set"]]</script>
|
||||
<script>window.__NUXT__={};window.__NUXT__.config={public:{primevue:{usePrimeVue:true,resolvePath:"",cssLayerOrder:"tailwind-base, primevue, tailwind-utilities",importPT:"",options:{ripple:true},components:[{name:"AutoComplete",as:"AutoComplete",from:"primevue/autocomplete",export:"default",filePath:"primevue/autocomplete",global:true},{name:"Calendar",as:"Calendar",from:"primevue/calendar",export:"default",filePath:"primevue/calendar",global:true},{name:"CascadeSelect",as:"CascadeSelect",from:"primevue/cascadeselect",export:"default",filePath:"primevue/cascadeselect",global:true},{name:"Checkbox",as:"Checkbox",from:"primevue/checkbox",export:"default",filePath:"primevue/checkbox",global:true},{name:"Chips",as:"Chips",from:"primevue/chips",export:"default",filePath:"primevue/chips",global:true},{name:"ColorPicker",as:"ColorPicker",from:"primevue/colorpicker",export:"default",filePath:"primevue/colorpicker",global:true},{name:"Dropdown",as:"Dropdown",from:"primevue/dropdown",export:"default",filePath:"primevue/dropdown",global:true},{name:"FloatLabel",as:"FloatLabel",from:"primevue/floatlabel",export:"default",filePath:"primevue/floatlabel",global:true},{name:"IconField",as:"IconField",from:"primevue/iconfield",export:"default",filePath:"primevue/iconfield",global:true},{name:"InputGroup",as:"InputGroup",from:"primevue/inputgroup",export:"default",filePath:"primevue/inputgroup",global:true},{name:"InputGroupAddon",as:"InputGroupAddon",from:"primevue/inputgroupaddon",export:"default",filePath:"primevue/inputgroupaddon",global:true},{name:"InputIcon",as:"InputIcon",from:"primevue/inputicon",export:"default",filePath:"primevue/inputicon",global:true},{name:"InputMask",as:"InputMask",from:"primevue/inputmask",export:"default",filePath:"primevue/inputmask",global:true},{name:"InputNumber",as:"InputNumber",from:"primevue/inputnumber",export:"default",filePath:"primevue/inputnumber",global:true},{name:"InputOtp",as:"InputOtp",from:"primevue/inputotp",export:"default",filePath:"primevue/inputotp",global:true},{name:"InputSwitch",as:"InputSwitch",from:"primevue/inputswitch",export:"default",filePath:"primevue/inputswitch",global:true},{name:"InputText",as:"InputText",from:"primevue/inputtext",export:"default",filePath:"primevue/inputtext",global:true},{name:"Knob",as:"Knob",from:"primevue/knob",export:"default",filePath:"primevue/knob",global:true},{name:"Listbox",as:"Listbox",from:"primevue/listbox",export:"default",filePath:"primevue/listbox",global:true},{name:"MultiSelect",as:"MultiSelect",from:"primevue/multiselect",export:"default",filePath:"primevue/multiselect",global:true},{name:"Password",as:"Password",from:"primevue/password",export:"default",filePath:"primevue/password",global:true},{name:"RadioButton",as:"RadioButton",from:"primevue/radiobutton",export:"default",filePath:"primevue/radiobutton",global:true},{name:"Rating",as:"Rating",from:"primevue/rating",export:"default",filePath:"primevue/rating",global:true},{name:"SelectButton",as:"SelectButton",from:"primevue/selectbutton",export:"default",filePath:"primevue/selectbutton",global:true},{name:"Slider",as:"Slider",from:"primevue/slider",export:"default",filePath:"primevue/slider",global:true},{name:"Textarea",as:"Textarea",from:"primevue/textarea",export:"default",filePath:"primevue/textarea",global:true},{name:"ToggleButton",as:"ToggleButton",from:"primevue/togglebutton",export:"default",filePath:"primevue/togglebutton",global:true},{name:"TreeSelect",as:"TreeSelect",from:"primevue/treeselect",export:"default",filePath:"primevue/treeselect",global:true},{name:"TriStateCheckbox",as:"TriStateCheckbox",from:"primevue/tristatecheckbox",export:"default",filePath:"primevue/tristatecheckbox",global:true},{name:"Button",as:"Button",from:"primevue/button",export:"default",filePath:"primevue/button",global:true},{name:"ButtonGroup",as:"ButtonGroup",from:"primevue/buttongroup",export:"default",filePath:"primevue/buttongroup",global:true},{name:"SpeedDial",as:"SpeedDial",from:"primevue/speeddial",export:"default",filePath:"primevue/speeddial",global:true},{name:"SplitButton",as:"SplitButton",from:"primevue/splitbutton",export:"default",filePath:"primevue/splitbutton",global:true},{name:"Column",as:"Column",from:"primevue/column",export:"default",filePath:"primevue/column",global:true},{name:"Row",as:"Row",from:"primevue/row",export:"default",filePath:"primevue/row",global:true},{name:"ColumnGroup",as:"ColumnGroup",from:"primevue/columngroup",export:"default",filePath:"primevue/columngroup",global:true},{name:"DataTable",as:"DataTable",from:"primevue/datatable",export:"default",filePath:"primevue/datatable",global:true},{name:"DataView",as:"DataView",from:"primevue/dataview",export:"default",filePath:"primevue/dataview",global:true},{name:"DataViewLayoutOptions",as:"DataViewLayoutOptions",from:"primevue/dataviewlayoutoptions",export:"default",filePath:"primevue/dataviewlayoutoptions",global:true},{name:"OrderList",as:"OrderList",from:"primevue/orderlist",export:"Line truncated
|
||||
@@ -1,234 +0,0 @@
|
||||
<!DOCTYPE html><html><head><style type="text/css" data-primevue-style-id="layer-order" >@layer tailwind-base, primevue, tailwind-utilities</style><meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>Dashboard | WAHA</title>
|
||||
<link id="theme-css" rel="stylesheet" type="text/css" href="/dashboard/themes/lara-dark-green/theme.css">
|
||||
<link rel="icon" type="image/x-icon" href="/dashboard/favicon.ico">
|
||||
<link rel="stylesheet" href="/dashboard/_nuxt/entry.CdRyF6M1.css">
|
||||
<link rel="modulepreload" as="script" crossorigin href="/dashboard/_nuxt/CdAotn7S.js">
|
||||
<link rel="prefetch" as="image" type="image/svg+xml" href="/dashboard/_nuxt/primeicons.BubJZjaf.svg">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ccJKIdck.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dbq0hxqO.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DxKOBqhC.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/AdkLG1re.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BO3ltiFH.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CYhL7ix_.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BwlcA3rq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CiBqmW71.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/eLdOjEri.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BIoHdha8.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BIUw7GKS.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C3XiIAJo.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DDd6n_m5.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D1Sip8Hx.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DJsXWhIp.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dh-ZHPbY.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CQay6pFc.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B1YYYcwB.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DtEiWfmc.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/0KS7mWPU.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DfRs6WFy.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/4TRLVPYt.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DUyMz6Kq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B3yzUv7e.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cs_e0Jyg.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D12jMld0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DFD6ABtc.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DpxAcOXA.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BnZbcMaK.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BbTUXNRy.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BtwAl4SI.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CzF1vgty.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/RtM6PxTR.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DREobrkF.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BIpALR7x.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CXYhB39H.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/8DP3eJmh.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cfpwp2_y.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DqnHOBMx.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BsAQV9Bu.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/gJ3REwVq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/APAbiAbl.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/TBrkteSm.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C_oNyt3I.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D1XkA2bf.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BJhSZnhn.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/By-HpsnP.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CpdXuDKl.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ml1zUTb3.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/2QbcHjol.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ca08GESE.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D9bLrmuX.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CUo_zosT.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DLaX2Rc0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D07-QKFk.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/92NHSphk.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CIQNJf2Q.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BlMMx3ZO.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BiToFvXy.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CBPkAxhp.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BMxgtM-u.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DMn_A95H.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CM_CX4UR.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C1z1il7n.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DnVQIBe4.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cz8bw1cb.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ct0vUmX9.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/v19YZAG0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CCyJ2OIf.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DlrEeELo.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B_-yrHFp.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/G6CMuSbq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CSwvDmSR.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DGtckhjV.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CW7WdM7z.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BybkDDc2.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/tvJRpBit.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cysexb6G.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CfQfmr4y.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DDsMXgj0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DQrDif0P.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/2nNxFeOi.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ChuxxnpQ.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DYme1kum.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CBo9fE9b.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/vromkmgO.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DR_5D5CK.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DdA0oWG0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CBmLef7_.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BhprPxR2.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/KLlBvxGE.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ot8uXRrF.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/qf2Wnj4S.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CiZTV4zm.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/1mD_0Gmg.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DaK9vsnd.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/hZ0eYskP.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DYT2DC_F.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BC5yIRjL.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BNgtVCIx.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/0Qz0KUbT.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DSb3mYm4.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BNQ0gqHD.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BDkUdWus.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cdm8H2oy.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bxn3h1eA.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D7pGaQXu.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BFoAkamz.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/hRxDLgWo.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/W_LTasvG.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BXW9ULDT.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/9hnJxdZr.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BtAnjVGO.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/rOp_cn8n.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/O1ZEMdSv.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D5rPsEXk.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D3ktpMNC.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bg_obesD.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DPrOADBq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C3-WSoLU.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BK_1YlQG.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DrPPGdq8.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/8VT3ACce.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CqsZXHTj.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DiD3_pIL.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BuAsgUvH.js">
|
||||
<link rel="prefetch" as="style" href="/dashboard/_nuxt/useServerStore.DWEvhDiM.css">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C1Y5pYTB.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B7MMdMyR.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C0K2Sjq5.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/fmRlOMwp.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/uEiA7KRH.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B4IxZQIs.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DyMztKbV.js">
|
||||
<link rel="prefetch" as="style" href="/dashboard/_nuxt/error-404.JekaaCis.css">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bub0TpVl.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DISPJkjY.js">
|
||||
<link rel="prefetch" as="style" href="/dashboard/_nuxt/error-500.CNP9nqm1.css">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CMeAQMKa.js">
|
||||
<script type="module" src="/dashboard/_nuxt/CdAotn7S.js" crossorigin></script>
|
||||
<script id="unhead:payload" type="application/json">{"title":"Dashboard | WAHA"}</script><style type="text/css" data-primevue-style-id="base" >
|
||||
.p-hidden-accessible {
|
||||
border: 0;
|
||||
clip: rect(0 0 0 0);
|
||||
height: 1px;
|
||||
margin: -1px;
|
||||
overflow: hidden;
|
||||
padding: 0;
|
||||
position: absolute;
|
||||
width: 1px;
|
||||
}
|
||||
|
||||
.p-hidden-accessible input,
|
||||
.p-hidden-accessible select {
|
||||
transform: scale(0);
|
||||
}
|
||||
|
||||
.p-overflow-hidden {
|
||||
overflow: hidden;
|
||||
padding-right: var(--scrollbar-width);
|
||||
}
|
||||
</style><style type="text/css" data-primevue-style-id="virtualscroller" >
|
||||
@layer primevue {
|
||||
.p-virtualscroller {
|
||||
position: relative;
|
||||
overflow: auto;
|
||||
contain: strict;
|
||||
transform: translateZ(0);
|
||||
will-change: scroll-position;
|
||||
outline: 0 none;
|
||||
}
|
||||
|
||||
.p-virtualscroller-content {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
/* contain: content; */
|
||||
min-height: 100%;
|
||||
min-width: 100%;
|
||||
will-change: transform;
|
||||
}
|
||||
|
||||
.p-virtualscroller-spacer {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
height: 1px;
|
||||
width: 1px;
|
||||
transform-origin: 0 0;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.p-virtualscroller .p-virtualscroller-loader {
|
||||
position: sticky;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.p-virtualscroller-loader.p-component-overlay {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.p-virtualscroller-loading-icon {
|
||||
font-size: 2rem;
|
||||
}
|
||||
|
||||
.p-virtualscroller-loading-icon.p-icon {
|
||||
width: 2rem;
|
||||
height: 2rem;
|
||||
}
|
||||
|
||||
.p-virtualscroller-horizontal > .p-virtualscroller-content {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
/* Inline */
|
||||
.p-virtualscroller-inline .p-virtualscroller-content {
|
||||
position: static;
|
||||
}
|
||||
}
|
||||
</style></head><body><div id="__nuxt"></div><div id="teleports"></div><script type="application/json" id="__NUXT_DATA__" data-ssr="false">[{"_errors":1,"serverRendered":2,"data":3,"state":4,"once":5},{},false,{},{},["Set"]]</script>
|
||||
<script>window.__NUXT__={};window.__NUXT__.config={public:{primevue:{usePrimeVue:true,resolvePath:"",cssLayerOrder:"tailwind-base, primevue, tailwind-utilities",importPT:"",options:{ripple:true},components:[{name:"AutoComplete",as:"AutoComplete",from:"primevue/autocomplete",export:"default",filePath:"primevue/autocomplete",global:true},{name:"Calendar",as:"Calendar",from:"primevue/calendar",export:"default",filePath:"primevue/calendar",global:true},{name:"CascadeSelect",as:"CascadeSelect",from:"primevue/cascadeselect",export:"default",filePath:"primevue/cascadeselect",global:true},{name:"Checkbox",as:"Checkbox",from:"primevue/checkbox",export:"default",filePath:"primevue/checkbox",global:true},{name:"Chips",as:"Chips",from:"primevue/chips",export:"default",filePath:"primevue/chips",global:true},{name:"ColorPicker",as:"ColorPicker",from:"primevue/colorpicker",export:"default",filePath:"primevue/colorpicker",global:true},{name:"Dropdown",as:"Dropdown",from:"primevue/dropdown",export:"default",filePath:"primevue/dropdown",global:true},{name:"FloatLabel",as:"FloatLabel",from:"primevue/floatlabel",export:"default",filePath:"primevue/floatlabel",global:true},{name:"IconField",as:"IconField",from:"primevue/iconfield",export:"default",filePath:"primevue/iconfield",global:true},{name:"InputGroup",as:"InputGroup",from:"primevue/inputgroup",export:"default",filePath:"primevue/inputgroup",global:true},{name:"InputGroupAddon",as:"InputGroupAddon",from:"primevue/inputgroupaddon",export:"default",filePath:"primevue/inputgroupaddon",global:true},{name:"InputIcon",as:"InputIcon",from:"primevue/inputicon",export:"default",filePath:"primevue/inputicon",global:true},{name:"InputMask",as:"InputMask",from:"primevue/inputmask",export:"default",filePath:"primevue/inputmask",global:true},{name:"InputNumber",as:"InputNumber",from:"primevue/inputnumber",export:"default",filePath:"primevue/inputnumber",global:true},{name:"InputOtp",as:"InputOtp",from:"primevue/inputotp",export:"default",filePath:"primevue/inputotp",global:true},{name:"InputSwitch",as:"InputSwitch",from:"primevue/inputswitch",export:"default",filePath:"primevue/inputswitch",global:true},{name:"InputText",as:"InputText",from:"primevue/inputtext",export:"default",filePath:"primevue/inputtext",global:true},{name:"Knob",as:"Knob",from:"primevue/knob",export:"default",filePath:"primevue/knob",global:true},{name:"Listbox",as:"Listbox",from:"primevue/listbox",export:"default",filePath:"primevue/listbox",global:true},{name:"MultiSelect",as:"MultiSelect",from:"primevue/multiselect",export:"default",filePath:"primevue/multiselect",global:true},{name:"Password",as:"Password",from:"primevue/password",export:"default",filePath:"primevue/password",global:true},{name:"RadioButton",as:"RadioButton",from:"primevue/radiobutton",export:"default",filePath:"primevue/radiobutton",global:true},{name:"Rating",as:"Rating",from:"primevue/rating",export:"default",filePath:"primevue/rating",global:true},{name:"SelectButton",as:"SelectButton",from:"primevue/selectbutton",export:"default",filePath:"primevue/selectbutton",global:true},{name:"Slider",as:"Slider",from:"primevue/slider",export:"default",filePath:"primevue/slider",global:true},{name:"Textarea",as:"Textarea",from:"primevue/textarea",export:"default",filePath:"primevue/textarea",global:true},{name:"ToggleButton",as:"ToggleButton",from:"primevue/togglebutton",export:"default",filePath:"primevue/togglebutton",global:true},{name:"TreeSelect",as:"TreeSelect",from:"primevue/treeselect",export:"default",filePath:"primevue/treeselect",global:true},{name:"TriStateCheckbox",as:"TriStateCheckbox",from:"primevue/tristatecheckbox",export:"default",filePath:"primevue/tristatecheckbox",global:true},{name:"Button",as:"Button",from:"primevue/button",export:"default",filePath:"primevue/button",global:true},{name:"ButtonGroup",as:"ButtonGroup",from:"primevue/buttongroup",export:"default",filePath:"primevue/buttongroup",global:true},{name:"SpeedDial",as:"SpeedDial",from:"primevue/speeddial",export:"default",filePath:"primevue/speeddial",global:true},{name:"SplitButton",as:"SplitButton",from:"primevue/splitbutton",export:"default",filePath:"primevue/splitbutton",global:true},{name:"Column",as:"Column",from:"primevue/column",export:"default",filePath:"primevue/column",global:true},{name:"Row",as:"Row",from:"primevue/row",export:"default",filePath:"primevue/row",global:true},{name:"ColumnGroup",as:"ColumnGroup",from:"primevue/columngroup",export:"default",filePath:"primevue/columngroup",global:true},{name:"DataTable",as:"DataTable",from:"primevue/datatable",export:"default",filePath:"primevue/datatable",global:true},{name:"DataView",as:"DataView",from:"primevue/dataview",export:"default",filePath:"primevue/dataview",global:true},{name:"DataViewLayoutOptions",as:"DataViewLayoutOptions",from:"primevue/dataviewlayoutoptions",export:"default",filePath:"primevue/dataviewlayoutoptions",global:true},{name:"OrderList",as:"OrderList",from:"primevue/orderlist",export:"Line truncated
|
||||
@@ -1,234 +0,0 @@
|
||||
<!DOCTYPE html><html><head><style type="text/css" data-primevue-style-id="layer-order" >@layer tailwind-base, primevue, tailwind-utilities</style><meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>Dashboard | WAHA</title>
|
||||
<link id="theme-css" rel="stylesheet" type="text/css" href="/dashboard/themes/lara-dark-green/theme.css">
|
||||
<link rel="icon" type="image/x-icon" href="/dashboard/favicon.ico">
|
||||
<link rel="stylesheet" href="/dashboard/_nuxt/entry.CdRyF6M1.css">
|
||||
<link rel="modulepreload" as="script" crossorigin href="/dashboard/_nuxt/CdAotn7S.js">
|
||||
<link rel="prefetch" as="image" type="image/svg+xml" href="/dashboard/_nuxt/primeicons.BubJZjaf.svg">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ccJKIdck.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dbq0hxqO.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DxKOBqhC.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/AdkLG1re.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BO3ltiFH.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CYhL7ix_.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BwlcA3rq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CiBqmW71.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/eLdOjEri.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BIoHdha8.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BIUw7GKS.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C3XiIAJo.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DDd6n_m5.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D1Sip8Hx.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DJsXWhIp.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dh-ZHPbY.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CQay6pFc.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B1YYYcwB.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DtEiWfmc.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/0KS7mWPU.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DfRs6WFy.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/4TRLVPYt.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DUyMz6Kq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B3yzUv7e.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cs_e0Jyg.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D12jMld0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DFD6ABtc.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DpxAcOXA.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BnZbcMaK.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BbTUXNRy.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BtwAl4SI.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CzF1vgty.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/RtM6PxTR.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DREobrkF.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BIpALR7x.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CXYhB39H.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/8DP3eJmh.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cfpwp2_y.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DqnHOBMx.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BsAQV9Bu.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/gJ3REwVq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/APAbiAbl.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/TBrkteSm.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C_oNyt3I.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D1XkA2bf.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BJhSZnhn.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/By-HpsnP.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CpdXuDKl.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ml1zUTb3.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/2QbcHjol.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ca08GESE.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D9bLrmuX.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CUo_zosT.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DLaX2Rc0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D07-QKFk.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/92NHSphk.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CIQNJf2Q.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BlMMx3ZO.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BiToFvXy.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CBPkAxhp.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BMxgtM-u.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DMn_A95H.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CM_CX4UR.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C1z1il7n.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DnVQIBe4.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cz8bw1cb.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ct0vUmX9.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/v19YZAG0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CCyJ2OIf.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DlrEeELo.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B_-yrHFp.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/G6CMuSbq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CSwvDmSR.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DGtckhjV.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CW7WdM7z.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BybkDDc2.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/tvJRpBit.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cysexb6G.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CfQfmr4y.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DDsMXgj0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DQrDif0P.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/2nNxFeOi.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ChuxxnpQ.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DYme1kum.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CBo9fE9b.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/vromkmgO.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DR_5D5CK.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DdA0oWG0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CBmLef7_.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BhprPxR2.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/KLlBvxGE.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ot8uXRrF.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/qf2Wnj4S.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CiZTV4zm.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/1mD_0Gmg.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DaK9vsnd.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/hZ0eYskP.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DYT2DC_F.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BC5yIRjL.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BNgtVCIx.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/0Qz0KUbT.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DSb3mYm4.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BNQ0gqHD.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BDkUdWus.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cdm8H2oy.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bxn3h1eA.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D7pGaQXu.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BFoAkamz.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/hRxDLgWo.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/W_LTasvG.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BXW9ULDT.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/9hnJxdZr.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BtAnjVGO.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/rOp_cn8n.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/O1ZEMdSv.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D5rPsEXk.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D3ktpMNC.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bg_obesD.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DPrOADBq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C3-WSoLU.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BK_1YlQG.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DrPPGdq8.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/8VT3ACce.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CqsZXHTj.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DiD3_pIL.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BuAsgUvH.js">
|
||||
<link rel="prefetch" as="style" href="/dashboard/_nuxt/useServerStore.DWEvhDiM.css">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C1Y5pYTB.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B7MMdMyR.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C0K2Sjq5.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/fmRlOMwp.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/uEiA7KRH.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B4IxZQIs.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DyMztKbV.js">
|
||||
<link rel="prefetch" as="style" href="/dashboard/_nuxt/error-404.JekaaCis.css">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bub0TpVl.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DISPJkjY.js">
|
||||
<link rel="prefetch" as="style" href="/dashboard/_nuxt/error-500.CNP9nqm1.css">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CMeAQMKa.js">
|
||||
<script type="module" src="/dashboard/_nuxt/CdAotn7S.js" crossorigin></script>
|
||||
<script id="unhead:payload" type="application/json">{"title":"Dashboard | WAHA"}</script><style type="text/css" data-primevue-style-id="base" >
|
||||
.p-hidden-accessible {
|
||||
border: 0;
|
||||
clip: rect(0 0 0 0);
|
||||
height: 1px;
|
||||
margin: -1px;
|
||||
overflow: hidden;
|
||||
padding: 0;
|
||||
position: absolute;
|
||||
width: 1px;
|
||||
}
|
||||
|
||||
.p-hidden-accessible input,
|
||||
.p-hidden-accessible select {
|
||||
transform: scale(0);
|
||||
}
|
||||
|
||||
.p-overflow-hidden {
|
||||
overflow: hidden;
|
||||
padding-right: var(--scrollbar-width);
|
||||
}
|
||||
</style><style type="text/css" data-primevue-style-id="virtualscroller" >
|
||||
@layer primevue {
|
||||
.p-virtualscroller {
|
||||
position: relative;
|
||||
overflow: auto;
|
||||
contain: strict;
|
||||
transform: translateZ(0);
|
||||
will-change: scroll-position;
|
||||
outline: 0 none;
|
||||
}
|
||||
|
||||
.p-virtualscroller-content {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
/* contain: content; */
|
||||
min-height: 100%;
|
||||
min-width: 100%;
|
||||
will-change: transform;
|
||||
}
|
||||
|
||||
.p-virtualscroller-spacer {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
height: 1px;
|
||||
width: 1px;
|
||||
transform-origin: 0 0;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.p-virtualscroller .p-virtualscroller-loader {
|
||||
position: sticky;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.p-virtualscroller-loader.p-component-overlay {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.p-virtualscroller-loading-icon {
|
||||
font-size: 2rem;
|
||||
}
|
||||
|
||||
.p-virtualscroller-loading-icon.p-icon {
|
||||
width: 2rem;
|
||||
height: 2rem;
|
||||
}
|
||||
|
||||
.p-virtualscroller-horizontal > .p-virtualscroller-content {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
/* Inline */
|
||||
.p-virtualscroller-inline .p-virtualscroller-content {
|
||||
position: static;
|
||||
}
|
||||
}
|
||||
</style></head><body><div id="__nuxt"></div><div id="teleports"></div><script type="application/json" id="__NUXT_DATA__" data-ssr="false">[{"_errors":1,"serverRendered":2,"data":3,"state":4,"once":5},{},false,{},{},["Set"]]</script>
|
||||
<script>window.__NUXT__={};window.__NUXT__.config={public:{primevue:{usePrimeVue:true,resolvePath:"",cssLayerOrder:"tailwind-base, primevue, tailwind-utilities",importPT:"",options:{ripple:true},components:[{name:"AutoComplete",as:"AutoComplete",from:"primevue/autocomplete",export:"default",filePath:"primevue/autocomplete",global:true},{name:"Calendar",as:"Calendar",from:"primevue/calendar",export:"default",filePath:"primevue/calendar",global:true},{name:"CascadeSelect",as:"CascadeSelect",from:"primevue/cascadeselect",export:"default",filePath:"primevue/cascadeselect",global:true},{name:"Checkbox",as:"Checkbox",from:"primevue/checkbox",export:"default",filePath:"primevue/checkbox",global:true},{name:"Chips",as:"Chips",from:"primevue/chips",export:"default",filePath:"primevue/chips",global:true},{name:"ColorPicker",as:"ColorPicker",from:"primevue/colorpicker",export:"default",filePath:"primevue/colorpicker",global:true},{name:"Dropdown",as:"Dropdown",from:"primevue/dropdown",export:"default",filePath:"primevue/dropdown",global:true},{name:"FloatLabel",as:"FloatLabel",from:"primevue/floatlabel",export:"default",filePath:"primevue/floatlabel",global:true},{name:"IconField",as:"IconField",from:"primevue/iconfield",export:"default",filePath:"primevue/iconfield",global:true},{name:"InputGroup",as:"InputGroup",from:"primevue/inputgroup",export:"default",filePath:"primevue/inputgroup",global:true},{name:"InputGroupAddon",as:"InputGroupAddon",from:"primevue/inputgroupaddon",export:"default",filePath:"primevue/inputgroupaddon",global:true},{name:"InputIcon",as:"InputIcon",from:"primevue/inputicon",export:"default",filePath:"primevue/inputicon",global:true},{name:"InputMask",as:"InputMask",from:"primevue/inputmask",export:"default",filePath:"primevue/inputmask",global:true},{name:"InputNumber",as:"InputNumber",from:"primevue/inputnumber",export:"default",filePath:"primevue/inputnumber",global:true},{name:"InputOtp",as:"InputOtp",from:"primevue/inputotp",export:"default",filePath:"primevue/inputotp",global:true},{name:"InputSwitch",as:"InputSwitch",from:"primevue/inputswitch",export:"default",filePath:"primevue/inputswitch",global:true},{name:"InputText",as:"InputText",from:"primevue/inputtext",export:"default",filePath:"primevue/inputtext",global:true},{name:"Knob",as:"Knob",from:"primevue/knob",export:"default",filePath:"primevue/knob",global:true},{name:"Listbox",as:"Listbox",from:"primevue/listbox",export:"default",filePath:"primevue/listbox",global:true},{name:"MultiSelect",as:"MultiSelect",from:"primevue/multiselect",export:"default",filePath:"primevue/multiselect",global:true},{name:"Password",as:"Password",from:"primevue/password",export:"default",filePath:"primevue/password",global:true},{name:"RadioButton",as:"RadioButton",from:"primevue/radiobutton",export:"default",filePath:"primevue/radiobutton",global:true},{name:"Rating",as:"Rating",from:"primevue/rating",export:"default",filePath:"primevue/rating",global:true},{name:"SelectButton",as:"SelectButton",from:"primevue/selectbutton",export:"default",filePath:"primevue/selectbutton",global:true},{name:"Slider",as:"Slider",from:"primevue/slider",export:"default",filePath:"primevue/slider",global:true},{name:"Textarea",as:"Textarea",from:"primevue/textarea",export:"default",filePath:"primevue/textarea",global:true},{name:"ToggleButton",as:"ToggleButton",from:"primevue/togglebutton",export:"default",filePath:"primevue/togglebutton",global:true},{name:"TreeSelect",as:"TreeSelect",from:"primevue/treeselect",export:"default",filePath:"primevue/treeselect",global:true},{name:"TriStateCheckbox",as:"TriStateCheckbox",from:"primevue/tristatecheckbox",export:"default",filePath:"primevue/tristatecheckbox",global:true},{name:"Button",as:"Button",from:"primevue/button",export:"default",filePath:"primevue/button",global:true},{name:"ButtonGroup",as:"ButtonGroup",from:"primevue/buttongroup",export:"default",filePath:"primevue/buttongroup",global:true},{name:"SpeedDial",as:"SpeedDial",from:"primevue/speeddial",export:"default",filePath:"primevue/speeddial",global:true},{name:"SplitButton",as:"SplitButton",from:"primevue/splitbutton",export:"default",filePath:"primevue/splitbutton",global:true},{name:"Column",as:"Column",from:"primevue/column",export:"default",filePath:"primevue/column",global:true},{name:"Row",as:"Row",from:"primevue/row",export:"default",filePath:"primevue/row",global:true},{name:"ColumnGroup",as:"ColumnGroup",from:"primevue/columngroup",export:"default",filePath:"primevue/columngroup",global:true},{name:"DataTable",as:"DataTable",from:"primevue/datatable",export:"default",filePath:"primevue/datatable",global:true},{name:"DataView",as:"DataView",from:"primevue/dataview",export:"default",filePath:"primevue/dataview",global:true},{name:"DataViewLayoutOptions",as:"DataViewLayoutOptions",from:"primevue/dataviewlayoutoptions",export:"default",filePath:"primevue/dataviewlayoutoptions",global:true},{name:"OrderList",as:"OrderList",from:"primevue/orderlist",export:"Line truncated
|
||||
@@ -1,234 +0,0 @@
|
||||
<!DOCTYPE html><html><head><style type="text/css" data-primevue-style-id="layer-order" >@layer tailwind-base, primevue, tailwind-utilities</style><meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>Dashboard | WAHA</title>
|
||||
<link id="theme-css" rel="stylesheet" type="text/css" href="/dashboard/themes/lara-dark-green/theme.css">
|
||||
<link rel="icon" type="image/x-icon" href="/dashboard/favicon.ico">
|
||||
<link rel="stylesheet" href="/dashboard/_nuxt/entry.CdRyF6M1.css">
|
||||
<link rel="modulepreload" as="script" crossorigin href="/dashboard/_nuxt/CdAotn7S.js">
|
||||
<link rel="prefetch" as="image" type="image/svg+xml" href="/dashboard/_nuxt/primeicons.BubJZjaf.svg">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ccJKIdck.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dbq0hxqO.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DxKOBqhC.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/AdkLG1re.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BO3ltiFH.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CYhL7ix_.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BwlcA3rq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CiBqmW71.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/eLdOjEri.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BIoHdha8.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BIUw7GKS.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C3XiIAJo.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DDd6n_m5.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D1Sip8Hx.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DJsXWhIp.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dh-ZHPbY.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CQay6pFc.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B1YYYcwB.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DtEiWfmc.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/0KS7mWPU.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DfRs6WFy.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/4TRLVPYt.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DUyMz6Kq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B3yzUv7e.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cs_e0Jyg.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D12jMld0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DFD6ABtc.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DpxAcOXA.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BnZbcMaK.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BbTUXNRy.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BtwAl4SI.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CzF1vgty.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/RtM6PxTR.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DREobrkF.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BIpALR7x.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CXYhB39H.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/8DP3eJmh.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cfpwp2_y.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DqnHOBMx.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BsAQV9Bu.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/gJ3REwVq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/APAbiAbl.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/TBrkteSm.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C_oNyt3I.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D1XkA2bf.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BJhSZnhn.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/By-HpsnP.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CpdXuDKl.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ml1zUTb3.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/2QbcHjol.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ca08GESE.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D9bLrmuX.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CUo_zosT.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DLaX2Rc0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D07-QKFk.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/92NHSphk.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CIQNJf2Q.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BlMMx3ZO.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BiToFvXy.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CBPkAxhp.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BMxgtM-u.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DMn_A95H.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CM_CX4UR.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C1z1il7n.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DnVQIBe4.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cz8bw1cb.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ct0vUmX9.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/v19YZAG0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CCyJ2OIf.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DlrEeELo.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B_-yrHFp.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/G6CMuSbq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CSwvDmSR.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DGtckhjV.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CW7WdM7z.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BybkDDc2.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/tvJRpBit.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cysexb6G.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CfQfmr4y.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DDsMXgj0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DQrDif0P.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/2nNxFeOi.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ChuxxnpQ.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DYme1kum.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CBo9fE9b.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/vromkmgO.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DR_5D5CK.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DdA0oWG0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CBmLef7_.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BhprPxR2.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/KLlBvxGE.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ot8uXRrF.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/qf2Wnj4S.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CiZTV4zm.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/1mD_0Gmg.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DaK9vsnd.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/hZ0eYskP.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DYT2DC_F.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BC5yIRjL.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BNgtVCIx.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/0Qz0KUbT.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DSb3mYm4.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BNQ0gqHD.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BDkUdWus.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cdm8H2oy.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bxn3h1eA.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D7pGaQXu.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BFoAkamz.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/hRxDLgWo.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/W_LTasvG.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BXW9ULDT.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/9hnJxdZr.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BtAnjVGO.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/rOp_cn8n.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/O1ZEMdSv.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D5rPsEXk.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D3ktpMNC.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bg_obesD.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DPrOADBq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C3-WSoLU.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BK_1YlQG.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DrPPGdq8.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/8VT3ACce.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CqsZXHTj.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DiD3_pIL.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BuAsgUvH.js">
|
||||
<link rel="prefetch" as="style" href="/dashboard/_nuxt/useServerStore.DWEvhDiM.css">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C1Y5pYTB.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B7MMdMyR.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C0K2Sjq5.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/fmRlOMwp.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/uEiA7KRH.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B4IxZQIs.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DyMztKbV.js">
|
||||
<link rel="prefetch" as="style" href="/dashboard/_nuxt/error-404.JekaaCis.css">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bub0TpVl.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DISPJkjY.js">
|
||||
<link rel="prefetch" as="style" href="/dashboard/_nuxt/error-500.CNP9nqm1.css">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CMeAQMKa.js">
|
||||
<script type="module" src="/dashboard/_nuxt/CdAotn7S.js" crossorigin></script>
|
||||
<script id="unhead:payload" type="application/json">{"title":"Dashboard | WAHA"}</script><style type="text/css" data-primevue-style-id="base" >
|
||||
.p-hidden-accessible {
|
||||
border: 0;
|
||||
clip: rect(0 0 0 0);
|
||||
height: 1px;
|
||||
margin: -1px;
|
||||
overflow: hidden;
|
||||
padding: 0;
|
||||
position: absolute;
|
||||
width: 1px;
|
||||
}
|
||||
|
||||
.p-hidden-accessible input,
|
||||
.p-hidden-accessible select {
|
||||
transform: scale(0);
|
||||
}
|
||||
|
||||
.p-overflow-hidden {
|
||||
overflow: hidden;
|
||||
padding-right: var(--scrollbar-width);
|
||||
}
|
||||
</style><style type="text/css" data-primevue-style-id="virtualscroller" >
|
||||
@layer primevue {
|
||||
.p-virtualscroller {
|
||||
position: relative;
|
||||
overflow: auto;
|
||||
contain: strict;
|
||||
transform: translateZ(0);
|
||||
will-change: scroll-position;
|
||||
outline: 0 none;
|
||||
}
|
||||
|
||||
.p-virtualscroller-content {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
/* contain: content; */
|
||||
min-height: 100%;
|
||||
min-width: 100%;
|
||||
will-change: transform;
|
||||
}
|
||||
|
||||
.p-virtualscroller-spacer {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
height: 1px;
|
||||
width: 1px;
|
||||
transform-origin: 0 0;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.p-virtualscroller .p-virtualscroller-loader {
|
||||
position: sticky;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.p-virtualscroller-loader.p-component-overlay {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.p-virtualscroller-loading-icon {
|
||||
font-size: 2rem;
|
||||
}
|
||||
|
||||
.p-virtualscroller-loading-icon.p-icon {
|
||||
width: 2rem;
|
||||
height: 2rem;
|
||||
}
|
||||
|
||||
.p-virtualscroller-horizontal > .p-virtualscroller-content {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
/* Inline */
|
||||
.p-virtualscroller-inline .p-virtualscroller-content {
|
||||
position: static;
|
||||
}
|
||||
}
|
||||
</style></head><body><div id="__nuxt"></div><div id="teleports"></div><script type="application/json" id="__NUXT_DATA__" data-ssr="false">[{"_errors":1,"serverRendered":2,"data":3,"state":4,"once":5},{},false,{},{},["Set"]]</script>
|
||||
<script>window.__NUXT__={};window.__NUXT__.config={public:{primevue:{usePrimeVue:true,resolvePath:"",cssLayerOrder:"tailwind-base, primevue, tailwind-utilities",importPT:"",options:{ripple:true},components:[{name:"AutoComplete",as:"AutoComplete",from:"primevue/autocomplete",export:"default",filePath:"primevue/autocomplete",global:true},{name:"Calendar",as:"Calendar",from:"primevue/calendar",export:"default",filePath:"primevue/calendar",global:true},{name:"CascadeSelect",as:"CascadeSelect",from:"primevue/cascadeselect",export:"default",filePath:"primevue/cascadeselect",global:true},{name:"Checkbox",as:"Checkbox",from:"primevue/checkbox",export:"default",filePath:"primevue/checkbox",global:true},{name:"Chips",as:"Chips",from:"primevue/chips",export:"default",filePath:"primevue/chips",global:true},{name:"ColorPicker",as:"ColorPicker",from:"primevue/colorpicker",export:"default",filePath:"primevue/colorpicker",global:true},{name:"Dropdown",as:"Dropdown",from:"primevue/dropdown",export:"default",filePath:"primevue/dropdown",global:true},{name:"FloatLabel",as:"FloatLabel",from:"primevue/floatlabel",export:"default",filePath:"primevue/floatlabel",global:true},{name:"IconField",as:"IconField",from:"primevue/iconfield",export:"default",filePath:"primevue/iconfield",global:true},{name:"InputGroup",as:"InputGroup",from:"primevue/inputgroup",export:"default",filePath:"primevue/inputgroup",global:true},{name:"InputGroupAddon",as:"InputGroupAddon",from:"primevue/inputgroupaddon",export:"default",filePath:"primevue/inputgroupaddon",global:true},{name:"InputIcon",as:"InputIcon",from:"primevue/inputicon",export:"default",filePath:"primevue/inputicon",global:true},{name:"InputMask",as:"InputMask",from:"primevue/inputmask",export:"default",filePath:"primevue/inputmask",global:true},{name:"InputNumber",as:"InputNumber",from:"primevue/inputnumber",export:"default",filePath:"primevue/inputnumber",global:true},{name:"InputOtp",as:"InputOtp",from:"primevue/inputotp",export:"default",filePath:"primevue/inputotp",global:true},{name:"InputSwitch",as:"InputSwitch",from:"primevue/inputswitch",export:"default",filePath:"primevue/inputswitch",global:true},{name:"InputText",as:"InputText",from:"primevue/inputtext",export:"default",filePath:"primevue/inputtext",global:true},{name:"Knob",as:"Knob",from:"primevue/knob",export:"default",filePath:"primevue/knob",global:true},{name:"Listbox",as:"Listbox",from:"primevue/listbox",export:"default",filePath:"primevue/listbox",global:true},{name:"MultiSelect",as:"MultiSelect",from:"primevue/multiselect",export:"default",filePath:"primevue/multiselect",global:true},{name:"Password",as:"Password",from:"primevue/password",export:"default",filePath:"primevue/password",global:true},{name:"RadioButton",as:"RadioButton",from:"primevue/radiobutton",export:"default",filePath:"primevue/radiobutton",global:true},{name:"Rating",as:"Rating",from:"primevue/rating",export:"default",filePath:"primevue/rating",global:true},{name:"SelectButton",as:"SelectButton",from:"primevue/selectbutton",export:"default",filePath:"primevue/selectbutton",global:true},{name:"Slider",as:"Slider",from:"primevue/slider",export:"default",filePath:"primevue/slider",global:true},{name:"Textarea",as:"Textarea",from:"primevue/textarea",export:"default",filePath:"primevue/textarea",global:true},{name:"ToggleButton",as:"ToggleButton",from:"primevue/togglebutton",export:"default",filePath:"primevue/togglebutton",global:true},{name:"TreeSelect",as:"TreeSelect",from:"primevue/treeselect",export:"default",filePath:"primevue/treeselect",global:true},{name:"TriStateCheckbox",as:"TriStateCheckbox",from:"primevue/tristatecheckbox",export:"default",filePath:"primevue/tristatecheckbox",global:true},{name:"Button",as:"Button",from:"primevue/button",export:"default",filePath:"primevue/button",global:true},{name:"ButtonGroup",as:"ButtonGroup",from:"primevue/buttongroup",export:"default",filePath:"primevue/buttongroup",global:true},{name:"SpeedDial",as:"SpeedDial",from:"primevue/speeddial",export:"default",filePath:"primevue/speeddial",global:true},{name:"SplitButton",as:"SplitButton",from:"primevue/splitbutton",export:"default",filePath:"primevue/splitbutton",global:true},{name:"Column",as:"Column",from:"primevue/column",export:"default",filePath:"primevue/column",global:true},{name:"Row",as:"Row",from:"primevue/row",export:"default",filePath:"primevue/row",global:true},{name:"ColumnGroup",as:"ColumnGroup",from:"primevue/columngroup",export:"default",filePath:"primevue/columngroup",global:true},{name:"DataTable",as:"DataTable",from:"primevue/datatable",export:"default",filePath:"primevue/datatable",global:true},{name:"DataView",as:"DataView",from:"primevue/dataview",export:"default",filePath:"primevue/dataview",global:true},{name:"DataViewLayoutOptions",as:"DataViewLayoutOptions",from:"primevue/dataviewlayoutoptions",export:"default",filePath:"primevue/dataviewlayoutoptions",global:true},{name:"OrderList",as:"OrderList",from:"primevue/orderlist",export:"Line truncated
|
||||
@@ -1,234 +0,0 @@
|
||||
<!DOCTYPE html><html><head><style type="text/css" data-primevue-style-id="layer-order" >@layer tailwind-base, primevue, tailwind-utilities</style><meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>Dashboard | WAHA</title>
|
||||
<link id="theme-css" rel="stylesheet" type="text/css" href="/dashboard/themes/lara-dark-green/theme.css">
|
||||
<link rel="icon" type="image/x-icon" href="/dashboard/favicon.ico">
|
||||
<link rel="stylesheet" href="/dashboard/_nuxt/entry.CdRyF6M1.css">
|
||||
<link rel="modulepreload" as="script" crossorigin href="/dashboard/_nuxt/CdAotn7S.js">
|
||||
<link rel="prefetch" as="image" type="image/svg+xml" href="/dashboard/_nuxt/primeicons.BubJZjaf.svg">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ccJKIdck.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dbq0hxqO.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DxKOBqhC.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/AdkLG1re.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BO3ltiFH.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CYhL7ix_.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BwlcA3rq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CiBqmW71.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/eLdOjEri.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BIoHdha8.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BIUw7GKS.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C3XiIAJo.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DDd6n_m5.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D1Sip8Hx.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DJsXWhIp.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dh-ZHPbY.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CQay6pFc.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B1YYYcwB.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DtEiWfmc.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/0KS7mWPU.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DfRs6WFy.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/4TRLVPYt.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DUyMz6Kq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B3yzUv7e.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cs_e0Jyg.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D12jMld0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DFD6ABtc.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DpxAcOXA.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BnZbcMaK.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BbTUXNRy.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BtwAl4SI.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CzF1vgty.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/RtM6PxTR.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DREobrkF.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BIpALR7x.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CXYhB39H.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/8DP3eJmh.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cfpwp2_y.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DqnHOBMx.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BsAQV9Bu.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/gJ3REwVq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/APAbiAbl.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/TBrkteSm.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C_oNyt3I.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D1XkA2bf.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BJhSZnhn.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/By-HpsnP.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CpdXuDKl.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ml1zUTb3.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/2QbcHjol.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ca08GESE.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D9bLrmuX.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CUo_zosT.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DLaX2Rc0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D07-QKFk.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/92NHSphk.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CIQNJf2Q.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BlMMx3ZO.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BiToFvXy.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CBPkAxhp.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BMxgtM-u.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DMn_A95H.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CM_CX4UR.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C1z1il7n.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DnVQIBe4.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cz8bw1cb.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ct0vUmX9.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/v19YZAG0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CCyJ2OIf.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DlrEeELo.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B_-yrHFp.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/G6CMuSbq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CSwvDmSR.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DGtckhjV.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CW7WdM7z.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BybkDDc2.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/tvJRpBit.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cysexb6G.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CfQfmr4y.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DDsMXgj0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DQrDif0P.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/2nNxFeOi.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ChuxxnpQ.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DYme1kum.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CBo9fE9b.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/vromkmgO.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DR_5D5CK.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DdA0oWG0.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CBmLef7_.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BhprPxR2.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/KLlBvxGE.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ot8uXRrF.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/qf2Wnj4S.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CiZTV4zm.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/1mD_0Gmg.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DaK9vsnd.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/hZ0eYskP.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DYT2DC_F.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BC5yIRjL.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BNgtVCIx.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/0Qz0KUbT.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DSb3mYm4.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BNQ0gqHD.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BDkUdWus.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cdm8H2oy.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bxn3h1eA.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D7pGaQXu.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BFoAkamz.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/hRxDLgWo.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/W_LTasvG.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BXW9ULDT.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/9hnJxdZr.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BtAnjVGO.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/rOp_cn8n.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/O1ZEMdSv.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D5rPsEXk.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D3ktpMNC.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bg_obesD.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DPrOADBq.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C3-WSoLU.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BK_1YlQG.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DrPPGdq8.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/8VT3ACce.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CqsZXHTj.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DiD3_pIL.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BuAsgUvH.js">
|
||||
<link rel="prefetch" as="style" href="/dashboard/_nuxt/useServerStore.DWEvhDiM.css">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C1Y5pYTB.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B7MMdMyR.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C0K2Sjq5.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/fmRlOMwp.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/uEiA7KRH.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B4IxZQIs.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DyMztKbV.js">
|
||||
<link rel="prefetch" as="style" href="/dashboard/_nuxt/error-404.JekaaCis.css">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bub0TpVl.js">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DISPJkjY.js">
|
||||
<link rel="prefetch" as="style" href="/dashboard/_nuxt/error-500.CNP9nqm1.css">
|
||||
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CMeAQMKa.js">
|
||||
<script type="module" src="/dashboard/_nuxt/CdAotn7S.js" crossorigin></script>
|
||||
<script id="unhead:payload" type="application/json">{"title":"Dashboard | WAHA"}</script><style type="text/css" data-primevue-style-id="base" >
|
||||
.p-hidden-accessible {
|
||||
border: 0;
|
||||
clip: rect(0 0 0 0);
|
||||
height: 1px;
|
||||
margin: -1px;
|
||||
overflow: hidden;
|
||||
padding: 0;
|
||||
position: absolute;
|
||||
width: 1px;
|
||||
}
|
||||
|
||||
.p-hidden-accessible input,
|
||||
.p-hidden-accessible select {
|
||||
transform: scale(0);
|
||||
}
|
||||
|
||||
.p-overflow-hidden {
|
||||
overflow: hidden;
|
||||
padding-right: var(--scrollbar-width);
|
||||
}
|
||||
</style><style type="text/css" data-primevue-style-id="virtualscroller" >
|
||||
@layer primevue {
|
||||
.p-virtualscroller {
|
||||
position: relative;
|
||||
overflow: auto;
|
||||
contain: strict;
|
||||
transform: translateZ(0);
|
||||
will-change: scroll-position;
|
||||
outline: 0 none;
|
||||
}
|
||||
|
||||
.p-virtualscroller-content {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
/* contain: content; */
|
||||
min-height: 100%;
|
||||
min-width: 100%;
|
||||
will-change: transform;
|
||||
}
|
||||
|
||||
.p-virtualscroller-spacer {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
height: 1px;
|
||||
width: 1px;
|
||||
transform-origin: 0 0;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.p-virtualscroller .p-virtualscroller-loader {
|
||||
position: sticky;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.p-virtualscroller-loader.p-component-overlay {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.p-virtualscroller-loading-icon {
|
||||
font-size: 2rem;
|
||||
}
|
||||
|
||||
.p-virtualscroller-loading-icon.p-icon {
|
||||
width: 2rem;
|
||||
height: 2rem;
|
||||
}
|
||||
|
||||
.p-virtualscroller-horizontal > .p-virtualscroller-content {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
/* Inline */
|
||||
.p-virtualscroller-inline .p-virtualscroller-content {
|
||||
position: static;
|
||||
}
|
||||
}
|
||||
</style></head><body><div id="__nuxt"></div><div id="teleports"></div><script type="application/json" id="__NUXT_DATA__" data-ssr="false">[{"_errors":1,"serverRendered":2,"data":3,"state":4,"once":5},{},false,{},{},["Set"]]</script>
|
||||
<script>window.__NUXT__={};window.__NUXT__.config={public:{primevue:{usePrimeVue:true,resolvePath:"",cssLayerOrder:"tailwind-base, primevue, tailwind-utilities",importPT:"",options:{ripple:true},components:[{name:"AutoComplete",as:"AutoComplete",from:"primevue/autocomplete",export:"default",filePath:"primevue/autocomplete",global:true},{name:"Calendar",as:"Calendar",from:"primevue/calendar",export:"default",filePath:"primevue/calendar",global:true},{name:"CascadeSelect",as:"CascadeSelect",from:"primevue/cascadeselect",export:"default",filePath:"primevue/cascadeselect",global:true},{name:"Checkbox",as:"Checkbox",from:"primevue/checkbox",export:"default",filePath:"primevue/checkbox",global:true},{name:"Chips",as:"Chips",from:"primevue/chips",export:"default",filePath:"primevue/chips",global:true},{name:"ColorPicker",as:"ColorPicker",from:"primevue/colorpicker",export:"default",filePath:"primevue/colorpicker",global:true},{name:"Dropdown",as:"Dropdown",from:"primevue/dropdown",export:"default",filePath:"primevue/dropdown",global:true},{name:"FloatLabel",as:"FloatLabel",from:"primevue/floatlabel",export:"default",filePath:"primevue/floatlabel",global:true},{name:"IconField",as:"IconField",from:"primevue/iconfield",export:"default",filePath:"primevue/iconfield",global:true},{name:"InputGroup",as:"InputGroup",from:"primevue/inputgroup",export:"default",filePath:"primevue/inputgroup",global:true},{name:"InputGroupAddon",as:"InputGroupAddon",from:"primevue/inputgroupaddon",export:"default",filePath:"primevue/inputgroupaddon",global:true},{name:"InputIcon",as:"InputIcon",from:"primevue/inputicon",export:"default",filePath:"primevue/inputicon",global:true},{name:"InputMask",as:"InputMask",from:"primevue/inputmask",export:"default",filePath:"primevue/inputmask",global:true},{name:"InputNumber",as:"InputNumber",from:"primevue/inputnumber",export:"default",filePath:"primevue/inputnumber",global:true},{name:"InputOtp",as:"InputOtp",from:"primevue/inputotp",export:"default",filePath:"primevue/inputotp",global:true},{name:"InputSwitch",as:"InputSwitch",from:"primevue/inputswitch",export:"default",filePath:"primevue/inputswitch",global:true},{name:"InputText",as:"InputText",from:"primevue/inputtext",export:"default",filePath:"primevue/inputtext",global:true},{name:"Knob",as:"Knob",from:"primevue/knob",export:"default",filePath:"primevue/knob",global:true},{name:"Listbox",as:"Listbox",from:"primevue/listbox",export:"default",filePath:"primevue/listbox",global:true},{name:"MultiSelect",as:"MultiSelect",from:"primevue/multiselect",export:"default",filePath:"primevue/multiselect",global:true},{name:"Password",as:"Password",from:"primevue/password",export:"default",filePath:"primevue/password",global:true},{name:"RadioButton",as:"RadioButton",from:"primevue/radiobutton",export:"default",filePath:"primevue/radiobutton",global:true},{name:"Rating",as:"Rating",from:"primevue/rating",export:"default",filePath:"primevue/rating",global:true},{name:"SelectButton",as:"SelectButton",from:"primevue/selectbutton",export:"default",filePath:"primevue/selectbutton",global:true},{name:"Slider",as:"Slider",from:"primevue/slider",export:"default",filePath:"primevue/slider",global:true},{name:"Textarea",as:"Textarea",from:"primevue/textarea",export:"default",filePath:"primevue/textarea",global:true},{name:"ToggleButton",as:"ToggleButton",from:"primevue/togglebutton",export:"default",filePath:"primevue/togglebutton",global:true},{name:"TreeSelect",as:"TreeSelect",from:"primevue/treeselect",export:"default",filePath:"primevue/treeselect",global:true},{name:"TriStateCheckbox",as:"TriStateCheckbox",from:"primevue/tristatecheckbox",export:"default",filePath:"primevue/tristatecheckbox",global:true},{name:"Button",as:"Button",from:"primevue/button",export:"default",filePath:"primevue/button",global:true},{name:"ButtonGroup",as:"ButtonGroup",from:"primevue/buttongroup",export:"default",filePath:"primevue/buttongroup",global:true},{name:"SpeedDial",as:"SpeedDial",from:"primevue/speeddial",export:"default",filePath:"primevue/speeddial",global:true},{name:"SplitButton",as:"SplitButton",from:"primevue/splitbutton",export:"default",filePath:"primevue/splitbutton",global:true},{name:"Column",as:"Column",from:"primevue/column",export:"default",filePath:"primevue/column",global:true},{name:"Row",as:"Row",from:"primevue/row",export:"default",filePath:"primevue/row",global:true},{name:"ColumnGroup",as:"ColumnGroup",from:"primevue/columngroup",export:"default",filePath:"primevue/columngroup",global:true},{name:"DataTable",as:"DataTable",from:"primevue/datatable",export:"default",filePath:"primevue/datatable",global:true},{name:"DataView",as:"DataView",from:"primevue/dataview",export:"default",filePath:"primevue/dataview",global:true},{name:"DataViewLayoutOptions",as:"DataViewLayoutOptions",from:"primevue/dataviewlayoutoptions",export:"default",filePath:"primevue/dataviewlayoutoptions",global:true},{name:"OrderList",as:"OrderList",from:"primevue/orderlist",export:"Line truncated
|
||||
@@ -1,3 +0,0 @@
|
||||
import{s as k}from"./CiBqmW71.js";import{a3 as O,a5 as w,t as c,v as m,x as p,N as C,Q as S,aa as u,Y as b,y as V,W as g,P as B,ab as x}from"./CdAotn7S.js";import{s as A}from"./AdkLG1re.js";import"./CYhL7ix_.js";var P={root:function(t){var n=t.instance,r=t.props;return["p-chips p-component p-inputwrapper",{"p-disabled":r.disabled,"p-invalid":r.invalid,"p-focus":n.focused,"p-inputwrapper-filled":r.modelValue&&r.modelValue.length||n.inputValue&&n.inputValue.length,"p-inputwrapper-focus":n.focused}]},container:function(t){var n=t.props,r=t.instance;return["p-inputtext p-chips-multiple-container",{"p-variant-filled":n.variant?n.variant==="filled":r.$primevue.config.inputStyle==="filled"}]},token:function(t){var n=t.state,r=t.index;return["p-chips-token",{"p-focus":n.focusedIndex===r}]},label:"p-chips-token-label",removeTokenIcon:"p-chips-token-icon",inputToken:"p-chips-input-token"},K=O.extend({name:"chips",classes:P}),D={name:"BaseChips",extends:A,props:{modelValue:{type:Array,default:null},max:{type:Number,default:null},separator:{type:[String,Object],default:null},addOnBlur:{type:Boolean,default:null},allowDuplicate:{type:Boolean,default:!0},placeholder:{type:String,default:null},variant:{type:String,default:null},invalid:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},inputId:{type:String,default:null},inputClass:{type:[String,Object],default:null},inputStyle:{type:Object,default:null},inputProps:{type:null,default:null},removeTokenIcon:{type:String,default:void 0},ariaLabelledby:{type:String,default:null},ariaLabel:{type:String,default:null}},style:K,provide:function(){return{$parentInstance:this}}};function f(e){return L(e)||F(e)||j(e)||T()}function T(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
||||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function j(e,t){if(e){if(typeof e=="string")return h(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return h(e,t)}}function F(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function L(e){if(Array.isArray(e))return h(e)}function h(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var E={name:"Chips",extends:D,inheritAttrs:!1,emits:["update:modelValue","add","remove","focus","blur"],data:function(){return{id:this.$attrs.id,inputValue:null,focused:!1,focusedIndex:null}},watch:{"$attrs.id":{immediate:!0,handler:function(t){this.id=t||w()}}},methods:{onWrapperClick:function(){this.$refs.input.focus()},onInput:function(t){this.inputValue=t.target.value,this.focusedIndex=null},onFocus:function(t){this.focused=!0,this.focusedIndex=null,this.$emit("focus",t)},onBlur:function(t){this.focused=!1,this.focusedIndex=null,this.addOnBlur&&this.addItem(t,t.target.value,!1),this.$emit("blur",t)},onKeyDown:function(t){var n=t.target.value;switch(t.code){case"Backspace":n.length===0&&this.modelValue&&this.modelValue.length>0&&(this.focusedIndex!==null?this.removeItem(t,this.focusedIndex):this.removeItem(t,this.modelValue.length-1));break;case"Enter":case"NumpadEnter":n&&n.trim().length&&!this.maxedOut&&this.addItem(t,n,!0);break;case"ArrowLeft":n.length===0&&this.modelValue&&this.modelValue.length>0&&this.$refs.container.focus();break;case"ArrowRight":t.stopPropagation();break;default:this.separator&&(this.separator===t.key||t.key.match(this.separator))&&this.addItem(t,n,!0);break}},onPaste:function(t){var n=this;if(this.separator){var r=this.separator.replace("\\n",`
|
||||
`).replace("\\r","\r").replace("\\t"," "),i=(t.clipboardData||window.clipboardData).getData("Text");if(i){var o=this.modelValue||[],a=i.split(r);a=a.filter(function(l){return n.allowDuplicate||o.indexOf(l)===-1}),o=[].concat(f(o),f(a)),this.updateModel(t,o,!0)}}},onContainerFocus:function(){this.focused=!0},onContainerBlur:function(){this.focusedIndex=-1,this.focused=!1},onContainerKeyDown:function(t){switch(t.code){case"ArrowLeft":this.onArrowLeftKeyOn(t);break;case"ArrowRight":this.onArrowRightKeyOn(t);break;case"Backspace":this.onBackspaceKeyOn(t);break}},onArrowLeftKeyOn:function(){this.inputValue.length===0&&this.modelValue&&this.modelValue.length>0&&(this.focusedIndex=this.focusedIndex===null?this.modelValue.length-1:this.focusedIndex-1,this.focusedIndex<0&&(this.focusedIndex=0))},onArrowRightKeyOn:function(){this.inputValue.length===0&&this.modelValue&&this.modelValue.length>0&&(this.focusedIndex===this.modelValue.length-1?(this.focusedIndex=null,this.$refs.input.focus()):this.focusedIndex++)},onBackspaceKeyOn:function(t){this.focusedIndex!==null&&this.removeItem(t,this.focusedIndex)},updateModel:function(t,n,r){var i=this;this.$emit("update:modelValue",n),this.$emit("add",{originalEvent:t,value:n}),this.$refs.input.value="",this.inputValue="",setTimeout(function(){i.maxedOut&&(i.focused=!1)},0),r&&t.preventDefault()},addItem:function(t,n,r){if(n&&n.trim().length){var i=this.modelValue?f(this.modelValue):[];(this.allowDuplicate||i.indexOf(n)===-1)&&(i.push(n),this.updateModel(t,i,r))}},removeItem:function(t,n){if(!this.disabled){var r=f(this.modelValue),i=r.splice(n,1);this.focusedIndex=null,this.$refs.input.focus(),this.$emit("update:modelValue",r),this.$emit("remove",{originalEvent:t,value:i})}}},computed:{maxedOut:function(){return this.max&&this.modelValue&&this.max===this.modelValue.length},focusedOptionId:function(){return this.focusedIndex!==null?"".concat(this.id,"_chips_item_").concat(this.focusedIndex):null}},components:{TimesCircleIcon:k}};function d(e){"@babel/helpers - typeof";return d=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},d(e)}function v(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function I(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?v(Object(n),!0).forEach(function(r){M(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):v(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function M(e,t,n){return t=N(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function N(e){var t=R(e,"string");return d(t)=="symbol"?t:String(t)}function R(e,t){if(d(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||"default");if(d(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var W=["aria-labelledby","aria-label","aria-activedescendant"],z=["id","aria-label","aria-setsize","aria-posinset","data-p-focused"],U=["id","disabled","placeholder","aria-invalid"];function q(e,t,n,r,i,o){return c(),m("div",u({class:e.cx("root")},e.ptmi("root")),[p("ul",u({ref:"container",class:e.cx("container"),tabindex:"-1",role:"listbox","aria-orientation":"horizontal","aria-labelledby":e.ariaLabelledby,"aria-label":e.ariaLabel,"aria-activedescendant":i.focused?o.focusedOptionId:void 0,onClick:t[5]||(t[5]=function(a){return o.onWrapperClick()}),onFocus:t[6]||(t[6]=function(){return o.onContainerFocus&&o.onContainerFocus.apply(o,arguments)}),onBlur:t[7]||(t[7]=function(){return o.onContainerBlur&&o.onContainerBlur.apply(o,arguments)}),onKeydown:t[8]||(t[8]=function(){return o.onContainerKeyDown&&o.onContainerKeyDown.apply(o,arguments)})},e.ptm("container")),[(c(!0),m(C,null,S(e.modelValue,function(a,l){return c(),m("li",u({key:"".concat(l,"_").concat(a),id:i.id+"_chips_item_"+l,role:"option",class:e.cx("token",{index:l}),"aria-label":a,"aria-selected":!0,"aria-setsize":e.modelValue.length,"aria-posinset":l+1},e.ptm("token"),{"data-p-focused":i.focusedIndex===l}),[b(e.$slots,"chip",{class:g(e.cx("label")),value:a},function(){return[p("span",u({class:e.cx("label")},e.ptm("label")),V(a),17)]}),b(e.$slots,"removetokenicon",{class:g(e.cx("removeTokenIcon")),index:l,onClick:function(s){return o.removeItem(s,l)},removeCallback:function(s){return o.removeItem(s,l)}},function(){return[(c(),B(x(e.removeTokenIcon?"span":"TimesCircleIcon"),u({class:[e.cx("removeTokenIcon"),e.removeTokenIcon],onClick:function(s){return o.removeItem(s,l)},"aria-hidden":"true"},e.ptm("removeTokenIcon")),null,16,["class","onClick"]))]}
Line truncated
|
||||
@@ -1,2 +0,0 @@
|
||||
import{O as P}from"./eLdOjEri.js";import{s as K}from"./BIoHdha8.js";import{a3 as T,a5 as z,a6 as g,a7 as o,a8 as D,a4 as H,aa as l,a9 as V,Z as F,t as r,v as d,x as O,$ as B,P as b,W as R,ab as L,O as f,y as M,i as x,A as C,z as N,ac as U,Y as I,N as h,Q as w,B as Z}from"./CdAotn7S.js";import{s as A}from"./AdkLG1re.js";var W={root:function(e){var i=e.instance,s=e.props;return["p-menu p-component",{"p-menu-overlay":s.popup,"p-ripple-disabled":i.$primevue.config.ripple===!1}]},start:"p-menu-start",menu:"p-menu-list p-reset",submenuHeader:"p-submenu-header",separator:"p-menuitem-separator",end:"p-menu-end",menuitem:function(e){var i=e.instance;return["p-menuitem",{"p-focus":i.id===i.focusedOptionId,"p-disabled":i.disabled()}]},content:"p-menuitem-content",action:"p-menuitem-link",icon:"p-menuitem-icon",label:"p-menuitem-text"},j=T.extend({name:"menu",classes:W}),q={name:"BaseMenu",extends:A,props:{popup:{type:Boolean,default:!1},model:{type:Array,default:null},appendTo:{type:[String,Object],default:"body"},autoZIndex:{type:Boolean,default:!0},baseZIndex:{type:Number,default:0},tabindex:{type:Number,default:0},ariaLabel:{type:String,default:null},ariaLabelledby:{type:String,default:null}},style:j,provide:function(){return{$parentInstance:this}}},E={name:"Menuitem",hostName:"Menu",extends:A,inheritAttrs:!1,emits:["item-click","item-mousemove"],props:{item:null,templates:null,id:null,focusedOptionId:null,index:null},methods:{getItemProp:function(e,i){return e&&e.item?H.getItemValue(e.item[i]):void 0},getPTOptions:function(e){return this.ptm(e,{context:{item:this.item,index:this.index,focused:this.isItemFocused(),disabled:this.disabled()}})},isItemFocused:function(){return this.focusedOptionId===this.id},onItemClick:function(e){var i=this.getItemProp(this.item,"command");i&&i({originalEvent:e,item:this.item.item}),this.$emit("item-click",{originalEvent:e,item:this.item,id:this.id})},onItemMouseMove:function(e){this.$emit("item-mousemove",{originalEvent:e,item:this.item,id:this.id})},visible:function(){return typeof this.item.visible=="function"?this.item.visible():this.item.visible!==!1},disabled:function(){return typeof this.item.disabled=="function"?this.item.disabled():this.item.disabled},label:function(){return typeof this.item.label=="function"?this.item.label():this.item.label},getMenuItemProps:function(e){return{action:l({class:this.cx("action"),tabindex:"-1","aria-hidden":!0},this.getPTOptions("action")),icon:l({class:[this.cx("icon"),e.icon]},this.getPTOptions("icon")),label:l({class:this.cx("label")},this.getPTOptions("label"))}}},directives:{ripple:V}},Q=["id","aria-label","aria-disabled","data-p-focused","data-p-disabled"],Y=["href","target"];function G(t,e,i,s,u,n){var v=F("ripple");return n.visible()?(r(),d("li",l({key:0,id:i.id,class:[t.cx("menuitem"),i.item.class],role:"menuitem",style:i.item.style,"aria-label":n.label(),"aria-disabled":n.disabled()},n.getPTOptions("menuitem"),{"data-p-focused":n.isItemFocused(),"data-p-disabled":n.disabled()||!1}),[O("div",l({class:t.cx("content"),onClick:e[0]||(e[0]=function(p){return n.onItemClick(p)}),onMousemove:e[1]||(e[1]=function(p){return n.onItemMouseMove(p)})},n.getPTOptions("content")),[i.templates.item?i.templates.item?(r(),b(L(i.templates.item),{key:1,item:i.item,label:n.label(),props:n.getMenuItemProps(i.item)},null,8,["item","label","props"])):f("",!0):B((r(),d("a",l({key:0,href:i.item.url,class:t.cx("action"),target:i.item.target,tabindex:"-1","aria-hidden":"true"},n.getPTOptions("action")),[i.templates.itemicon?(r(),b(L(i.templates.itemicon),{key:0,item:i.item,class:R(t.cx("icon"))},null,8,["item","class"])):i.item.icon?(r(),d("span",l({key:1,class:[t.cx("icon"),i.item.icon]},n.getPTOptions("icon")),null,16)):f("",!0),O("span",l({class:t.cx("label")},n.getPTOptions("label")),M(n.label()),17)],16,Y)),[[v]])],16)],16,Q)):f("",!0)}E.render=G;function S(t){return $(t)||_(t)||X(t)||J()}function J(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
||||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function X(t,e){if(t){if(typeof t=="string")return k(t,e);var i=Object.prototype.toString.call(t).slice(8,-1);if(i==="Object"&&t.constructor&&(i=t.constructor.name),i==="Map"||i==="Set")return Array.from(t);if(i==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i))return k(t,e)}}function _(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function $(t){if(Array.isArray(t))return k(t)}function k(t,e){(e==null||e>t.length)&&(e=t.length);for(var i=0,s=new Array(e);i<e;i++)s[i]=t[i];return s}var ee={name:"Menu",extends:q,inheritAttrs:!1,emits:["show","hide","focus","blur"],data:function(){return{id:this.$attrs.id,overlayVisible:!1,focused:!1,focusedOptionIndex:-1,selectedOptionIndex:-1}},watch:{"$attrs.id":{immediate:!0,handler:function(e){this.id=e||z()}}},target:null,outsideClickListener:null,scrollHandler:null,resizeListener:null,container:null,list:null,mounted:function(){this.popup||(this.bindResizeListener(),this.bindOutsideClickListener())},beforeUnmount:function(){this.unbindResizeListener(),this.unbindOutsideClickListener(),this.scrollHandler&&(this.scrollHandler.destroy(),this.scrollHandler=null),this.target=null,this.container&&this.autoZIndex&&g.clear(this.container),this.container=null},methods:{itemClick:function(e){var i=e.item;this.disabled(i)||(i.command&&i.command(e),this.overlayVisible&&this.hide(),!this.popup&&this.focusedOptionIndex!==e.id&&(this.focusedOptionIndex=e.id))},itemMouseMove:function(e){this.focused&&(this.focusedOptionIndex=e.id)},onListFocus:function(e){this.focused=!0,!this.popup&&this.changeFocusedOptionIndex(0),this.$emit("focus",e)},onListBlur:function(e){this.focused=!1,this.focusedOptionIndex=-1,this.$emit("blur",e)},onListKeyDown:function(e){switch(e.code){case"ArrowDown":this.onArrowDownKey(e);break;case"ArrowUp":this.onArrowUpKey(e);break;case"Home":this.onHomeKey(e);break;case"End":this.onEndKey(e);break;case"Enter":case"NumpadEnter":this.onEnterKey(e);break;case"Space":this.onSpaceKey(e);break;case"Escape":this.popup&&(o.focus(this.target),this.hide());case"Tab":this.overlayVisible&&this.hide();break}},onArrowDownKey:function(e){var i=this.findNextOptionIndex(this.focusedOptionIndex);this.changeFocusedOptionIndex(i),e.preventDefault()},onArrowUpKey:function(e){if(e.altKey&&this.popup)o.focus(this.target),this.hide(),e.preventDefault();else{var i=this.findPrevOptionIndex(this.focusedOptionIndex);this.changeFocusedOptionIndex(i),e.preventDefault()}},onHomeKey:function(e){this.changeFocusedOptionIndex(0),e.preventDefault()},onEndKey:function(e){this.changeFocusedOptionIndex(o.find(this.container,'li[data-pc-section="menuitem"][data-p-disabled="false"]').length-1),e.preventDefault()},onEnterKey:function(e){var i=o.findSingle(this.list,'li[id="'.concat("".concat(this.focusedOptionIndex),'"]')),s=i&&o.findSingle(i,'a[data-pc-section="action"]');this.popup&&o.focus(this.target),s?s.click():i&&i.click(),e.preventDefault()},onSpaceKey:function(e){this.onEnterKey(e)},findNextOptionIndex:function(e){var i=o.find(this.container,'li[data-pc-section="menuitem"][data-p-disabled="false"]'),s=S(i).findIndex(function(u){return u.id===e});return s>-1?s+1:0},findPrevOptionIndex:function(e){var i=o.find(this.container,'li[data-pc-section="menuitem"][data-p-disabled="false"]'),s=S(i).findIndex(function(u){return u.id===e});return s>-1?s-1:0},changeFocusedOptionIndex:function(e){var i=o.find(this.container,'li[data-pc-section="menuitem"][data-p-disabled="false"]'),s=e>=i.length?i.length-1:e<0?0:e;s>-1&&(this.focusedOptionIndex=i[s].getAttribute("id"))},toggle:function(e){this.overlayVisible?this.hide():this.show(e)},show:function(e){this.overlayVisible=!0,this.target=e.currentTarget},hide:function(){this.overlayVisible=!1,this.target=null},onEnter:function(e){o.addStyles(e,{position:"absolute",top:"0",left:"0"}),this.alignOverlay(),this.bindOutsideClickListener(),this.bindResizeListener(),this.bindScrollListener(),this.autoZIndex&&g.set("menu",e,this.baseZIndex+this.$primevue.config.zIndex.menu),this.popup&&o.focus(this.list),this.$emit("show")},onLeave:function(){this.unbindOutsideClickListener(),this.unbindResizeListener(),this.unbindScrollListener(),this.$emit("hide")},onAfterLeave:function(e){this.autoZIndex&&g.clear(e)},alignOverlay:function(){o.absolutePosition(this.container,this.target);var e=o.getOuterWidth(this.target);e>o.getOuterWidth(this.container)&&(this.container.style.minWidth=o.getOuterWidth(this.target)+"px")},bindOutsideClickListener:function(){var e=this;this.outsideClickListener||(this.outsideClickListener=function(i){var s=e.container&&!e.container.contains(i.target),u=!(e.target&&(e.target===i.target||e.target.contains(i.target)));e.overlayVisible&&s&&u?e.hide():!e.popup&&s&&u&&(e.focusedOptionIndex=-1)},document.addEventListener("click",this.outsideClickListener))},unbindOutsideClickListener:function(){this.outsideClickList
Line truncated
|
||||
@@ -1 +0,0 @@
|
||||
import{s as f}from"./DtEiWfmc.js";import{s as y,a as b}from"./DaK9vsnd.js";import{s as P}from"./B3yzUv7e.js";import{s as d}from"./CiBqmW71.js";import{a3 as S,a9 as $,i as k,Z as B,t as i,P as u,A as C,$ as v,x as g,aa as s,Y as c,v as m,ab as j,O as D,ad as A,ac as T}from"./CdAotn7S.js";import{s as E}from"./AdkLG1re.js";import"./CYhL7ix_.js";var N={root:function(t){var o=t.props;return"p-message p-component p-message-"+o.severity},wrapper:"p-message-wrapper",icon:"p-message-icon",text:"p-message-text",closeButton:"p-message-close p-link",closeIcon:"p-message-close-icon"},L=S.extend({name:"message",classes:N}),M={name:"BaseMessage",extends:E,props:{severity:{type:String,default:"info"},closable:{type:Boolean,default:!0},sticky:{type:Boolean,default:!0},life:{type:Number,default:3e3},icon:{type:String,default:void 0},closeIcon:{type:String,default:void 0},closeButtonProps:{type:null,default:null}},style:L,provide:function(){return{$parentInstance:this}}},K={name:"Message",extends:M,inheritAttrs:!1,emits:["close","life-end"],timeout:null,data:function(){return{visible:!0}},watch:{sticky:function(t){t||this.closeAfterDelay()}},mounted:function(){this.sticky||this.closeAfterDelay()},methods:{close:function(t){this.visible=!1,this.$emit("close",t)},closeAfterDelay:function(){var t=this;setTimeout(function(){t.visible=!1,t.$emit("life-end")},this.life)}},computed:{iconComponent:function(){return{info:y,success:f,warn:b,error:d}[this.severity]},closeAriaLabel:function(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.close:void 0}},directives:{ripple:$},components:{TimesIcon:P,InfoCircleIcon:y,CheckIcon:f,ExclamationTriangleIcon:b,TimesCircleIcon:d}};function l(e){"@babel/helpers - typeof";return l=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},l(e)}function h(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(p){return Object.getOwnPropertyDescriptor(e,p).enumerable})),o.push.apply(o,r)}return o}function n(e){for(var t=1;t<arguments.length;t++){var o=arguments[t]!=null?arguments[t]:{};t%2?h(Object(o),!0).forEach(function(r){V(e,r,o[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):h(Object(o)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(o,r))})}return e}function V(e,t,o){return t=R(t),t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function R(e){var t=Y(e,"string");return l(t)=="symbol"?t:String(t)}function Y(e,t){if(l(e)!="object"||!e)return e;var o=e[Symbol.toPrimitive];if(o!==void 0){var r=o.call(e,t||"default");if(l(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Z=["aria-label"];function q(e,t,o,r,p,a){var I=k("TimesIcon"),w=B("ripple");return i(),u(T,s({name:"p-message",appear:""},e.ptmi("transition")),{default:C(function(){return[v(g("div",s({class:e.cx("root"),role:"alert","aria-live":"assertive","aria-atomic":"true"},e.ptm("root")),[e.$slots.container?c(e.$slots,"container",{key:0,onClose:a.close,closeCallback:a.close}):(i(),m("div",s({key:1,class:e.cx("wrapper")},e.ptm("wrapper")),[c(e.$slots,"messageicon",{class:"p-message-icon"},function(){return[(i(),u(j(e.icon?"span":a.iconComponent),s({class:[e.cx("icon"),e.icon]},e.ptm("icon")),null,16,["class"]))]}),g("div",s({class:["p-message-text",e.cx("text")]},e.ptm("text")),[c(e.$slots,"default")],16),e.closable?v((i(),m("button",s({key:0,class:e.cx("closeButton"),"aria-label":a.closeAriaLabel,type:"button",onClick:t[0]||(t[0]=function(O){return a.close(O)})},n(n(n({},e.closeButtonProps),e.ptm("button")),e.ptm("closeButton"))),[c(e.$slots,"closeicon",{},function(){return[e.closeIcon?(i(),m("i",s({key:0,class:[e.cx("closeIcon"),e.closeIcon]},n(n({},e.ptm("buttonIcon")),e.ptm("closeIcon"))),null,16)):(i(),u(I,s({key:1,class:[e.cx("closeIcon"),e.closeIcon]},n(n({},e.ptm("buttonIcon")),e.ptm("closeIcon"))),null,16,["class"]))]})],16,Z)),[[w]]):D("",!0)],16))],16),[[A,p.visible]])]}),_:3},16)}K.render=q;export{K as default};
|
||||
@@ -1 +0,0 @@
|
||||
import{s as r}from"./CYhL7ix_.js";import{t,v as o,aa as s,x as a}from"./CdAotn7S.js";var n={name:"MinusIcon",extends:r},i=a("path",{d:"M13.2222 7.77778H0.777778C0.571498 7.77778 0.373667 7.69584 0.227806 7.54998C0.0819442 7.40412 0 7.20629 0 7.00001C0 6.79373 0.0819442 6.5959 0.227806 6.45003C0.373667 6.30417 0.571498 6.22223 0.777778 6.22223H13.2222C13.4285 6.22223 13.6263 6.30417 13.7722 6.45003C13.9181 6.5959 14 6.79373 14 7.00001C14 7.20629 13.9181 7.40412 13.7722 7.54998C13.6263 7.69584 13.4285 7.77778 13.2222 7.77778Z",fill:"currentColor"},null,-1),p=[i];function c(e,l,d,C,h,m){return t(),o("svg",s({width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e.pti()),p,16)}n.render=c;export{n as s};
|
||||
@@ -1 +0,0 @@
|
||||
import{s as r}from"./AdkLG1re.js";import{a3 as a,t as i,v as l,Y as o,aa as p}from"./CdAotn7S.js";var u={root:function(t){var n=t.instance;return["p-splitter-panel",{"p-splitter-panel-nested":n.isNested}]}},d=a.extend({name:"splitterpanel",classes:u}),c={name:"BaseSplitterPanel",extends:r,props:{size:{type:Number,default:null},minSize:{type:Number,default:null}},style:d,provide:function(){return{$parentInstance:this}}},f={name:"SplitterPanel",extends:c,inheritAttrs:!1,data:function(){return{nestedState:null}},computed:{isNested:function(){var t=this;return this.$slots.default().some(function(n){return t.nestedState=n.type.name==="Splitter"?!0:null,t.nestedState})},getPTOptions:function(){return{context:{nested:this.isNested}}}}};function m(e,t,n,S,v,s){return i(),l("div",p({ref:"container",class:e.cx("root")},e.ptmi("root",s.getPTOptions)),[o(e.$slots,"default")],16)}f.render=m;export{f as default};
|
||||
@@ -1,2 +0,0 @@
|
||||
import{t as o,v as p,aa as l,x as y,a3 as J,a5 as X,a6 as T,a4 as c,a7 as a,a8 as $,ah as _,a9 as ee,i as w,Z as te,Y as h,B as P,y as O,P as v,ab as A,W as x,O as I,z as B,A as K,ac as ie,a1 as ne,N as H,Q as re,$ as se}from"./CdAotn7S.js";import{s as le}from"./CYhL7ix_.js";import{s as oe}from"./DtEiWfmc.js";import{s as ae}from"./BwlcA3rq.js";import{s as ue}from"./DUyMz6Kq.js";import{s as de}from"./BO3ltiFH.js";import{s as ce}from"./B3yzUv7e.js";import{O as pe}from"./eLdOjEri.js";import{s as fe}from"./BIoHdha8.js";import he from"./BIUw7GKS.js";import{s as ye}from"./AdkLG1re.js";var z={name:"BlankIcon",extends:le},be=y("rect",{width:"1",height:"1",fill:"currentColor","fill-opacity":"0"},null,-1),me=[be];function ge(t,e,i,r,s,n){return o(),p("svg",l({width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},t.pti()),me,16)}z.render=ge;var Oe={root:function(e){var i=e.instance,r=e.props,s=e.state;return["p-dropdown p-component p-inputwrapper",{"p-disabled":r.disabled,"p-invalid":r.invalid,"p-variant-filled":r.variant?r.variant==="filled":i.$primevue.config.inputStyle==="filled","p-dropdown-clearable":r.showClear,"p-focus":s.focused,"p-inputwrapper-filled":i.hasSelectedOption,"p-inputwrapper-focus":s.focused||s.overlayVisible,"p-overlay-open":s.overlayVisible}]},input:function(e){var i,r=e.instance,s=e.props;return["p-dropdown-label p-inputtext",{"p-placeholder":!s.editable&&r.label===s.placeholder,"p-dropdown-label-empty":!s.editable&&!r.$slots.value&&(r.label==="p-emptylabel"||((i=r.label)===null||i===void 0?void 0:i.length)===0)}]},clearIcon:"p-dropdown-clear-icon",trigger:"p-dropdown-trigger",loadingicon:"p-dropdown-trigger-icon",dropdownIcon:"p-dropdown-trigger-icon",panel:function(e){e.props;var i=e.instance;return["p-dropdown-panel p-component",{"p-ripple-disabled":i.$primevue.config.ripple===!1}]},header:"p-dropdown-header",filterContainer:"p-dropdown-filter-container",filterInput:function(e){var i=e.props,r=e.instance;return["p-dropdown-filter p-inputtext p-component",{"p-variant-filled":i.variant?i.variant==="filled":r.$primevue.config.inputStyle==="filled"}]},filterIcon:"p-dropdown-filter-icon",wrapper:"p-dropdown-items-wrapper",list:"p-dropdown-items",itemGroup:"p-dropdown-item-group",itemGroupLabel:"p-dropdown-item-group-label",item:function(e){var i=e.instance,r=e.props,s=e.state,n=e.option,d=e.focusedOption;return["p-dropdown-item",{"p-highlight":i.isSelected(n)&&r.highlightOnSelect,"p-focus":s.focusedOptionIndex===d,"p-disabled":i.isOptionDisabled(n)}]},itemLabel:"p-dropdown-item-label",checkIcon:"p-dropdown-check-icon",blankIcon:"p-dropdown-blank-icon",emptyMessage:"p-dropdown-empty-message"},ve=J.extend({name:"dropdown",classes:Oe}),Ie={name:"BaseDropdown",extends:ye,props:{modelValue:null,options:Array,optionLabel:[String,Function],optionValue:[String,Function],optionDisabled:[String,Function],optionGroupLabel:[String,Function],optionGroupChildren:[String,Function],scrollHeight:{type:String,default:"200px"},filter:Boolean,filterPlaceholder:String,filterLocale:String,filterMatchMode:{type:String,default:"contains"},filterFields:{type:Array,default:null},editable:Boolean,placeholder:{type:String,default:null},variant:{type:String,default:null},invalid:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},dataKey:null,showClear:{type:Boolean,default:!1},inputId:{type:String,default:null},inputClass:{type:[String,Object],default:null},inputStyle:{type:Object,default:null},inputProps:{type:null,default:null},panelClass:{type:[String,Object],default:null},panelStyle:{type:Object,default:null},panelProps:{type:null,default:null},filterInputProps:{type:null,default:null},clearIconProps:{type:null,default:null},appendTo:{type:[String,Object],default:"body"},loading:{type:Boolean,default:!1},clearIcon:{type:String,default:void 0},dropdownIcon:{type:String,default:void 0},filterIcon:{type:String,default:void 0},loadingIcon:{type:String,default:void 0},resetFilterOnHide:{type:Boolean,default:!1},resetFilterOnClear:{type:Boolean,default:!1},virtualScrollerOptions:{type:Object,default:null},autoOptionFocus:{type:Boolean,default:!1},autoFilterFocus:{type:Boolean,default:!1},selectOnFocus:{type:Boolean,default:!1},focusOnHover:{type:Boolean,default:!0},highlightOnSelect:{type:Boolean,default:!0},checkmark:{type:Boolean,default:!1},filterMessage:{type:String,default:null},selectionMessage:{type:String,default:null},emptySelectionMessage:{type:String,default:null},emptyFilterMessage:{type:String,default:null},emptyMessage:{type:String,default:null},tabindex:{type:Number,default:0},ariaLabel:{type:String,default:null},ariaLabelledby:{type:String,default:null}},style:ve,provide:function(){return{$parentInstance:this}}};function L(t){"@babel/helpers - typeof";return L=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},L(t)}Line truncated
|
||||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Le(t,e){if(t){if(typeof t=="string")return j(t,e);var i=Object.prototype.toString.call(t).slice(8,-1);if(i==="Object"&&t.constructor&&(i=t.constructor.name),i==="Map"||i==="Set")return Array.from(t);if(i==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i))return j(t,e)}}function ke(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function Fe(t){if(Array.isArray(t))return j(t)}function j(t,e){(e==null||e>t.length)&&(e=t.length);for(var i=0,r=new Array(e);i<e;i++)r[i]=t[i];return r}function G(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(t,s).enumerable})),i.push.apply(i,r)}return i}function R(t){for(var e=1;e<arguments.length;e++){var i=arguments[e]!=null?arguments[e]:{};e%2?G(Object(i),!0).forEach(function(r){N(t,r,i[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):G(Object(i)).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(i,r))})}return t}function N(t,e,i){return e=Ce(e),e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}function Ce(t){var e=Ve(t,"string");return L(e)=="symbol"?e:String(e)}function Ve(t,e){if(L(t)!="object"||!t)return t;var i=t[Symbol.toPrimitive];if(i!==void 0){var r=i.call(t,e||"default");if(L(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var xe={name:"Dropdown",extends:Ie,inheritAttrs:!1,emits:["update:modelValue","change","focus","blur","before-show","before-hide","show","hide","filter"],outsideClickListener:null,scrollHandler:null,resizeListener:null,labelClickListener:null,overlay:null,list:null,virtualScroller:null,searchTimeout:null,searchValue:null,isModelValueChanged:!1,data:function(){return{id:this.$attrs.id,clicked:!1,focused:!1,focusedOptionIndex:-1,filterValue:null,overlayVisible:!1}},watch:{"$attrs.id":{immediate:!0,handler:function(e){this.id=e||X()}},modelValue:function(){this.isModelValueChanged=!0},options:function(){this.autoUpdateModel()}},mounted:function(){this.autoUpdateModel(),this.bindLabelClickListener()},updated:function(){this.overlayVisible&&this.isModelValueChanged&&this.scrollInView(this.findSelectedOptionIndex()),this.isModelValueChanged=!1},beforeUnmount:function(){this.unbindOutsideClickListener(),this.unbindResizeListener(),this.unbindLabelClickListener(),this.scrollHandler&&(this.scrollHandler.destroy(),this.scrollHandler=null),this.overlay&&(T.clear(this.overlay),this.overlay=null)},methods:{getOptionIndex:function(e,i){return this.virtualScrollerDisabled?e:i&&i(e).index},getOptionLabel:function(e){return this.optionLabel?c.resolveFieldData(e,this.optionLabel):e},getOptionValue:function(e){return this.optionValue?c.resolveFieldData(e,this.optionValue):e},getOptionRenderKey:function(e,i){return(this.dataKey?c.resolveFieldData(e,this.dataKey):this.getOptionLabel(e))+"_"+i},getPTItemOptions:function(e,i,r,s){return this.ptm(s,{context:{option:e,index:r,selected:this.isSelected(e),focused:this.focusedOptionIndex===this.getOptionIndex(r,i),disabled:this.isOptionDisabled(e)}})},isOptionDisabled:function(e){return this.optionDisabled?c.resolveFieldData(e,this.optionDisabled):!1},isOptionGroup:function(e){return this.optionGroupLabel&&e.optionGroup&&e.group},getOptionGroupLabel:function(e){return c.resolveFieldData(e,this.optionGroupLabel)},getOptionGroupChildren:function(e){return c.resolveFieldData(e,this.optionGroupChildren)},getAriaPosInset:function(e){var i=this;return(this.optionGroupLabel?e-this.visibleOptions.slice(0,e).filter(function(r){return i.isOptionGroup(r)}).length:e)+1},show:function(e){this.$emit("before-show"),this.overlayVisible=!0,this.focusedOptionIndex=this.focusedOptionIndex!==-1?this.focusedOptionIndex:this.autoOptionFocus?this.findFirstFocusedOptionIndex():this.editable?-1:this.findSelectedOptionIndex(),e&&a.focus(this.$refs.focusInput)},hide:function(e){var i=this,r=function(){i.$emit("before-hide"),i.overlayVisible=!1,i.clicked=!1,i.focusedOptionIndex=-1,i.searchValue="",i.resetFilterOnHide&&(i.filterValue=null),e&&a.focus(i.$refs.focusInput)};setTimeout(function(){r()},0)},onFocus:function(e){this.disabled||(this.focused=!0,this.overlayVisible&&(this.focusedOptionIndex=this.focusedOptionIndex!==-1?this.focusedOptionIndex:this.autoOptionFocus?this.findFirstFocusedOptionIndex():this.editable?-1:this.findSelectedOptionIndex(),this.scrollInView(this.focusedOptionIndex)),this.$emit("focus",e))},onBlur:function(e){this.focused=!1,this.focusedOptionIndex=-1,this.searchValue="",this.$emit("blur",e)},onKeyDown:function(e){if(this.disabled||a.isAndroid()){e.preventDefault();return}var i=e.metaKey||e.ctrlKey;switch(e.code){case"ArrowDown":this.onArrowDownKey(e);break;c
Line truncated
|
||||
@@ -1 +0,0 @@
|
||||
import{s as m}from"./AdkLG1re.js";import{a3 as p,t as u,v as l,aa as r,x as d,y as f,O as c}from"./CdAotn7S.js";var v={root:function(a){var i=a.props;return["p-knob p-component",{"p-disabled":i.disabled}]},range:"p-knob-range",value:"p-knob-value",label:"p-knob-text"},y=p.extend({name:"knob",classes:v}),b={name:"BaseKnob",extends:m,props:{modelValue:{type:Number,default:null},size:{type:Number,default:100},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},step:{type:Number,default:1},min:{type:Number,default:0},max:{type:Number,default:100},valueColor:{type:String,default:"var(--primary-color, Black)"},rangeColor:{type:String,default:"var(--surface-border, LightGray)"},textColor:{type:String,default:"var(--text-color-secondary, Black)"},strokeWidth:{type:Number,default:14},showValue:{type:Boolean,default:!0},valueTemplate:{type:String,default:"{value}"},tabindex:{type:Number,default:0},ariaLabelledby:{type:String,default:null},ariaLabel:{type:String,default:null}},style:y,provide:function(){return{$parentInstance:this}}},o=3.14159265358979,g={name:"Knob",extends:b,inheritAttrs:!1,emits:["update:modelValue","change"],data:function(){return{radius:40,midX:50,midY:50,minRadians:4*o/3,maxRadians:-o/3}},methods:{updateValue:function(a,i){var n=a-this.size/2,s=this.size/2-i,t=Math.atan2(s,n),h=-o/2-o/6;this.updateModel(t,h)},updateModel:function(a,i){var n;if(a>this.maxRadians)n=this.mapRange(a,this.minRadians,this.maxRadians,this.min,this.max);else if(a<i)n=this.mapRange(a+2*o,this.minRadians,this.maxRadians,this.min,this.max);else return;var s=Math.round((n-this.min)/this.step)*this.step+this.min;this.$emit("update:modelValue",s),this.$emit("change",s)},updateModelValue:function(a){a>this.max?this.$emit("update:modelValue",this.max):a<this.min?this.$emit("update:modelValue",this.min):this.$emit("update:modelValue",a)},mapRange:function(a,i,n,s,t){return(a-i)*(t-s)/(n-i)+s},onClick:function(a){!this.disabled&&!this.readonly&&this.updateValue(a.offsetX,a.offsetY)},onMouseDown:function(a){!this.disabled&&!this.readonly&&(window.addEventListener("mousemove",this.onMouseMove),window.addEventListener("mouseup",this.onMouseUp),a.preventDefault())},onMouseUp:function(a){!this.disabled&&!this.readonly&&(window.removeEventListener("mousemove",this.onMouseMove),window.removeEventListener("mouseup",this.onMouseUp),a.preventDefault())},onTouchStart:function(a){!this.disabled&&!this.readonly&&(window.addEventListener("touchmove",this.onTouchMove),window.addEventListener("touchend",this.onTouchEnd),a.preventDefault())},onTouchEnd:function(a){!this.disabled&&!this.readonly&&(window.removeEventListener("touchmove",this.onTouchMove),window.removeEventListener("touchend",this.onTouchEnd),a.preventDefault())},onMouseMove:function(a){!this.disabled&&!this.readonly&&(this.updateValue(a.offsetX,a.offsetY),a.preventDefault())},onTouchMove:function(a){if(!this.disabled&&!this.readonly&&a.touches.length==1){var i=this.$el.getBoundingClientRect(),n=a.targetTouches.item(0),s=n.clientX-i.left,t=n.clientY-i.top;this.updateValue(s,t)}},onKeyDown:function(a){if(!this.disabled&&!this.readonly)switch(a.code){case"ArrowRight":case"ArrowUp":{a.preventDefault(),this.updateModelValue(this.modelValue+this.step);break}case"ArrowLeft":case"ArrowDown":{a.preventDefault(),this.updateModelValue(this.modelValue-this.step);break}case"Home":{a.preventDefault(),this.$emit("update:modelValue",this.min);break}case"End":{a.preventDefault(),this.$emit("update:modelValue",this.max);break}case"PageUp":{a.preventDefault(),this.updateModelValue(this.modelValue+10);break}case"PageDown":{a.preventDefault(),this.updateModelValue(this.modelValue-10);break}}}},computed:{rangePath:function(){return"M ".concat(this.minX," ").concat(this.minY," A ").concat(this.radius," ").concat(this.radius," 0 1 1 ").concat(this.maxX," ").concat(this.maxY)},valuePath:function(){return"M ".concat(this.zeroX," ").concat(this.zeroY," A ").concat(this.radius," ").concat(this.radius," 0 ").concat(this.largeArc," ").concat(this.sweep," ").concat(this.valueX," ").concat(this.valueY)},zeroRadians:function(){return this.min>0&&this.max>0?this.mapRange(this.min,this.min,this.max,this.minRadians,this.maxRadians):this.mapRange(0,this.min,this.max,this.minRadians,this.maxRadians)},valueRadians:function(){return this.mapRange(this.modelValue,this.min,this.max,this.minRadians,this.maxRadians)},minX:function(){return this.midX+Math.cos(this.minRadians)*this.radius},minY:function(){return this.midY-Math.sin(this.minRadians)*this.radius},maxX:function(){return this.midX+Math.cos(this.maxRadians)*this.radius},maxY:function(){return this.midY-Math.sin(this.maxRadians)*this.radius},zeroX:function(){return this.midX+Math.cos(this.zeroRadians)*this.radius},zeroY:function(){return this.midY-Math.sin(this.zeroRadians)*this.radius},valueX:function(){return this.midX+Math.cos(this.valueRadians)*this.radius},valueY:function(){return this.midY-Math.sin(this.valueRadians)*this.radius},largeArc:funLine truncated
|
||||
@@ -1 +0,0 @@
|
||||
import{ax as d,a3 as u,t as m,v as i,ae as f,aa as t,y as a,O as v,x as s,N as y,Q as T,$ as h,ai as g}from"./CdAotn7S.js";import{s as k}from"./AdkLG1re.js";var l=d(),w={root:"p-terminal p-component",content:"p-terminal-content",prompt:"p-terminal-prompt",command:"p-terminal-command",response:"p-terminal-response",container:"p-terminal-prompt-container",commandText:"p-terminal-input"},x=u.extend({name:"terminal",classes:w}),S={name:"BaseTerminal",extends:k,props:{welcomeMessage:{type:String,default:null},prompt:{type:String,default:null}},style:x,provide:function(){return{$parentInstance:this}}},C={name:"Terminal",extends:S,inheritAttrs:!1,data:function(){return{commandText:null,commands:[]}},mounted:function(){l.on("response",this.responseListener),this.$refs.input.focus()},updated:function(){this.$el.scrollTop=this.$el.scrollHeight},beforeUnmount:function(){l.off("response",this.responseListener)},methods:{onClick:function(){this.$refs.input.focus()},onKeydown:function(n){n.key==="Enter"&&this.commandText&&(this.commands.push({text:this.commandText}),l.emit("command",this.commandText),this.commandText="")},responseListener:function(n){this.commands[this.commands.length-1].response=n}}};function B(e,n,K,L,p,o){return m(),i("div",t({class:e.cx("root"),onClick:n[2]||(n[2]=function(){return o.onClick&&o.onClick.apply(o,arguments)})},e.ptmi("root")),[e.welcomeMessage?(m(),i("div",f(t({key:0},e.ptm("welcomeMessage"))),a(e.welcomeMessage),17)):v("",!0),s("div",t({class:e.cx("content")},e.ptm("content")),[(m(!0),i(y,null,T(p.commands,function(r,c){return m(),i("div",t({key:r.text+c.toString()},e.ptm("commands")),[s("span",t({class:e.cx("prompt")},e.ptm("prompt")),a(e.prompt),17),s("span",t({class:e.cx("command")},e.ptm("command")),a(r.text),17),s("div",t({class:e.cx("response"),"aria-live":"polite"},e.ptm("response")),a(r.response),17)],16)}),128))],16),s("div",t({class:e.cx("container")},e.ptm("container")),[s("span",t({class:e.cx("prompt")},e.ptm("prompt")),a(e.prompt),17),h(s("input",t({ref:"input","onUpdate:modelValue":n[0]||(n[0]=function(r){return p.commandText=r}),type:"text",class:e.cx("commandText"),autocomplete:"off",onKeydown:n[1]||(n[1]=function(){return o.onKeydown&&o.onKeydown.apply(o,arguments)})},e.ptm("commandText")),null,16),[[g,p.commandText]])],16)],16)}C.render=B;export{C as default};
|
||||
@@ -1 +0,0 @@
|
||||
import{O as M}from"./eLdOjEri.js";import{s as T}from"./BIoHdha8.js";import{a3 as V,a5 as F,a4 as h,a6 as P,a7 as c,a8 as O,aa as d,a9 as D,i as y,Z as z,t as l,P as p,A as x,v as I,N as k,Q as R,x as K,$ as N,ab as L,W as B,O as g,y as G,aD as H,ac as w,z as E,Y as S}from"./CdAotn7S.js";import{s as C}from"./AdkLG1re.js";import{s as U}from"./CQay6pFc.js";import"./CYhL7ix_.js";var W={submenu:function(e){var i=e.instance,s=e.processedItem;return{display:i.isItemActive(s)?"block":"none"}}},Z={root:function(e){var i=e.instance,s=e.props;return["p-tieredmenu p-component",{"p-tieredmenu-overlay":s.popup,"p-ripple-disabled":i.$primevue.config.ripple===!1}]},start:"p-tieredmenu-start",menu:"p-tieredmenu-root-list",menuitem:function(e){var i=e.instance,s=e.processedItem;return["p-menuitem",{"p-menuitem-active p-highlight":i.isItemActive(s),"p-focus":i.isItemFocused(s),"p-disabled":i.isItemDisabled(s)}]},content:"p-menuitem-content",action:"p-menuitem-link",icon:"p-menuitem-icon",text:"p-menuitem-text",submenuIcon:"p-submenu-icon",submenu:"p-submenu-list",separator:"p-menuitem-separator",end:"p-tieredmenu-end"},j=V.extend({name:"tieredmenu",classes:Z,inlineStyles:W}),_={name:"BaseTieredMenu",extends:C,props:{popup:{type:Boolean,default:!1},model:{type:Array,default:null},appendTo:{type:[String,Object],default:"body"},autoZIndex:{type:Boolean,default:!0},baseZIndex:{type:Number,default:0},disabled:{type:Boolean,default:!1},tabindex:{type:Number,default:0},ariaLabelledby:{type:String,default:null},ariaLabel:{type:String,default:null}},style:j,provide:function(){return{$parentInstance:this}}},A={name:"TieredMenuSub",hostName:"TieredMenu",extends:C,emits:["item-click","item-mouseenter","item-mousemove"],container:null,props:{menuId:{type:String,default:null},focusedItemId:{type:String,default:null},items:{type:Array,default:null},visible:{type:Boolean,default:!1},level:{type:Number,default:0},templates:{type:Object,default:null},activeItemPath:{type:Object,default:null},tabindex:{type:Number,default:0}},methods:{getItemId:function(e){return"".concat(this.menuId,"_").concat(e.key)},getItemKey:function(e){return this.getItemId(e)},getItemProp:function(e,i,s){return e&&e.item?h.getItemValue(e.item[i],s):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},getItemLabelId:function(e){return"".concat(this.menuId,"_").concat(e.key,"_label")},getPTOptions:function(e,i,s){return this.ptm(s,{context:{item:e,index:i,active:this.isItemActive(e),focused:this.isItemFocused(e),disabled:this.isItemDisabled(e)}})},isItemActive:function(e){return this.activeItemPath.some(function(i){return i.key===e.key})},isItemVisible:function(e){return this.getItemProp(e,"visible")!==!1},isItemDisabled:function(e){return this.getItemProp(e,"disabled")},isItemFocused:function(e){return this.focusedItemId===this.getItemId(e)},isItemGroup:function(e){return h.isNotEmpty(e.items)},onEnter:function(){c.nestedPosition(this.container,this.level)},onItemClick:function(e,i){this.getItemProp(i,"command",{originalEvent:e,item:i.item}),this.$emit("item-click",{originalEvent:e,processedItem:i,isFocus:!0})},onItemMouseEnter:function(e,i){this.$emit("item-mouseenter",{originalEvent:e,processedItem:i})},onItemMouseMove:function(e,i){this.$emit("item-mousemove",{originalEvent:e,processedItem:i})},getAriaSetSize:function(){var e=this;return this.items.filter(function(i){return e.isItemVisible(i)&&!e.getItemProp(i,"separator")}).length},getAriaPosInset:function(e){var i=this;return e-this.items.slice(0,e).filter(function(s){return i.isItemVisible(s)&&i.getItemProp(s,"separator")}).length+1},getMenuItemProps:function(e,i){return{action:d({class:this.cx("action"),tabindex:-1,"aria-hidden":!0},this.getPTOptions(e,i,"action")),icon:d({class:[this.cx("icon"),this.getItemProp(e,"icon")]},this.getPTOptions(e,i,"icon")),label:d({class:this.cx("label")},this.getPTOptions(e,i,"label")),submenuicon:d({class:this.cx("submenuIcon")},this.getPTOptions(e,i,"submenuIcon"))}},containerRef:function(e){this.container=e}},components:{AngleRightIcon:U},directives:{ripple:D}},q=["tabindex"],Q=["id","aria-label","aria-disabled","aria-expanded","aria-haspopup","aria-level","aria-setsize","aria-posinset","data-p-highlight","data-p-focused","data-p-disabled"],Y=["onClick","onMouseenter","onMousemove"],J=["href","target"],X=["id"],$=["id"];function ee(t,e,i,s,a,n){var u=y("AngleRightIcon"),f=y("TieredMenuSub",!0),v=z("ripple");return l(),p(w,d({name:"p-tieredmenu",onEnter:n.onEnter},t.ptm("menu.transition")),{default:x(function(){return[i.level===0||i.visible?(l(),I("ul",d({key:0,ref:n.containerRef,class:i.level===0?t.cx("menu"):t.cx("submenu"),tabindex:i.tabindex},i.level===0?t.ptm("menu"):t.ptm("submenu")),[(l(!0),I(k,null,R(i.items,function(r,o){return l(),I(k,{key:n.getItemKey(r)},[n.isItemVisible(r)&&!n.getItemProp(r,"separator")?(l(),I("li",d({key:0,id:n.getItemId(r),style:n.getItemProp(r,"style"),class:[t.cx("menuitem",{processedItem:r}),n.getItemProp(r,"class")],role:"menuiLine truncated
|
||||
@@ -1 +0,0 @@
|
||||
import{t as s,v as c,aa as n,x as i,a3 as R,a6 as b,a7 as f,av as Z,i as p,Z as V,Y as u,P as $,ab as j,O as w,z as m,A as y,$ as H,ae as C,af as d,ac as T,W as U,aD as K}from"./CdAotn7S.js";import{s as N}from"./gJ3REwVq.js";import{s as h}from"./CYhL7ix_.js";import{s as q}from"./B3yzUv7e.js";import{s as F}from"./BIoHdha8.js";import{s as W}from"./AdkLG1re.js";var I={name:"RefreshIcon",extends:h},Y=i("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M6.77051 5.96336C6.84324 5.99355 6.92127 6.00891 7.00002 6.00854C7.07877 6.00891 7.1568 5.99355 7.22953 5.96336C7.30226 5.93317 7.36823 5.88876 7.42357 5.83273L9.82101 3.43529C9.93325 3.32291 9.99629 3.17058 9.99629 3.01175C9.99629 2.85292 9.93325 2.70058 9.82101 2.5882L7.42357 0.190763C7.3687 0.131876 7.30253 0.0846451 7.22901 0.0518865C7.15549 0.019128 7.07612 0.00151319 6.99564 9.32772e-05C6.91517 -0.00132663 6.83523 0.0134773 6.7606 0.0436218C6.68597 0.0737664 6.61817 0.118634 6.56126 0.175548C6.50435 0.232462 6.45948 0.300257 6.42933 0.374888C6.39919 0.449519 6.38439 0.529456 6.38581 0.609933C6.38722 0.690409 6.40484 0.769775 6.4376 0.843296C6.47036 0.916817 6.51759 0.982986 6.57647 1.03786L7.95103 2.41241H6.99998C5.46337 2.41241 3.98969 3.02283 2.90314 4.10938C1.81659 5.19593 1.20618 6.66961 1.20618 8.20622C1.20618 9.74283 1.81659 11.2165 2.90314 12.3031C3.98969 13.3896 5.46337 14 6.99998 14C8.53595 13.9979 10.0084 13.3868 11.0945 12.3007C12.1806 11.2146 12.7917 9.74218 12.7938 8.20622C12.7938 8.04726 12.7306 7.89481 12.6182 7.78241C12.5058 7.67001 12.3534 7.60686 12.1944 7.60686C12.0355 7.60686 11.883 7.67001 11.7706 7.78241C11.6582 7.89481 11.5951 8.04726 11.5951 8.20622C11.5951 9.11504 11.3256 10.0035 10.8207 10.7591C10.3157 11.5148 9.59809 12.1037 8.75845 12.4515C7.9188 12.7993 6.99489 12.8903 6.10353 12.713C5.21217 12.5357 4.3934 12.0981 3.75077 11.4554C3.10813 10.8128 2.67049 9.99404 2.49319 9.10268C2.31589 8.21132 2.40688 7.2874 2.75468 6.44776C3.10247 5.60811 3.69143 4.89046 4.44709 4.38554C5.20275 3.88063 6.09116 3.61113 6.99998 3.61113H7.95098L6.57647 4.98564C6.46423 5.09802 6.40119 5.25035 6.40119 5.40918C6.40119 5.56801 6.46423 5.72035 6.57647 5.83273C6.63181 5.88876 6.69778 5.93317 6.77051 5.96336Z",fill:"currentColor"},null,-1),G=[Y];function J(e,t,o,a,l,r){return s(),c("svg",n({width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e.pti()),G,16)}I.render=J;var L={name:"SearchMinusIcon",extends:h},Q=i("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M6.0208 12.0411C4.83005 12.0411 3.66604 11.688 2.67596 11.0265C1.68589 10.3649 0.914216 9.42464 0.458534 8.32452C0.00285271 7.22441 -0.116374 6.01388 0.11593 4.84601C0.348235 3.67813 0.921637 2.60537 1.76363 1.76338C2.60562 0.921393 3.67838 0.34799 4.84625 0.115686C6.01412 -0.116618 7.22466 0.00260857 8.32477 0.45829C9.42488 0.913972 10.3652 1.68564 11.0267 2.67572C11.6883 3.66579 12.0414 4.8298 12.0414 6.02056C12.0395 7.41563 11.5542 8.76029 10.6783 9.8305L13.8244 12.9765C13.9367 13.089 13.9997 13.2414 13.9997 13.4003C13.9997 13.5592 13.9367 13.7116 13.8244 13.8241C13.769 13.8801 13.703 13.9245 13.6302 13.9548C13.5575 13.985 13.4794 14.0003 13.4006 14C13.3218 14.0003 13.2437 13.985 13.171 13.9548C13.0982 13.9245 13.0322 13.8801 12.9768 13.8241L9.83082 10.678C8.76059 11.5539 7.4159 12.0393 6.0208 12.0411ZM6.0208 1.20731C5.07199 1.20731 4.14449 1.48867 3.35559 2.0158C2.56669 2.54292 1.95181 3.29215 1.58872 4.16874C1.22562 5.04532 1.13062 6.00989 1.31572 6.94046C1.50083 7.87104 1.95772 8.72583 2.62863 9.39674C3.29954 10.0676 4.15433 10.5245 5.0849 10.7096C6.01548 10.8947 6.98005 10.7997 7.85663 10.4367C8.73322 10.0736 9.48244 9.45868 10.0096 8.66978C10.5367 7.88088 10.8181 6.95337 10.8181 6.00457C10.8181 4.73226 10.3126 3.51206 9.41297 2.6124C8.51331 1.71274 7.29311 1.20731 6.0208 1.20731ZM4.00591 6.60422H8.00362C8.16266 6.60422 8.31518 6.54104 8.42764 6.42859C8.5401 6.31613 8.60328 6.1636 8.60328 6.00456C8.60328 5.84553 8.5401 5.693 8.42764 5.58054C8.31518 5.46809 8.16266 5.40491 8.00362 5.40491H4.00591C3.84687 5.40491 3.69434 5.46809 3.58189 5.58054C3.46943 5.693 3.40625 5.84553 3.40625 6.00456C3.40625 6.1636 3.46943 6.31613 3.58189 6.42859C3.69434 6.54104 3.84687 6.60422 4.00591 6.60422Z",fill:"currentColor"},null,-1),X=[Q];function _(e,t,o,a,l,r){return s(),c("svg",n({width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e.pti()),X,16)}L.render=_;var B={name:"SearchPlusIcon",extends:h},x=i("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M2.67596 11.0265C3.66604 11.688 4.83005 12.0411 6.0208 12.0411C6.81143 12.0411 7.59432 11.8854 8.32477 11.5828C8.86999 11.357 9.37802 11.0526 9.83311 10.6803L12.9768 13.8241C13.0322 13.8801 13.0982 13.9245 13.171 13.9548C13.2437 13.985 13.3218 14.0003 13.4006 14C13.4794 14.0003 13.5575 13.985 13.6302 13.9548C13.703 13.9245 13.769 13.8801 13.8244 13.8241C13.9367 13.7116 13.9997 13.5592 13.9997 13.4003C13.9997 13.2414 13.9367 13.089 13.8244 12.9765L10.6806 9.8328C11.0529 9.37Line truncated
|
||||
@@ -1 +0,0 @@
|
||||
import{a3 as u,a4 as r,t as s,v as o,x as d,aa as i}from"./CdAotn7S.js";import{s as p}from"./AdkLG1re.js";var b={root:function(a){var n=a.instance,l=a.props;return["p-radiobutton p-component",{"p-highlight":n.checked,"p-disabled":l.disabled,"p-invalid":l.invalid,"p-variant-filled":l.variant?l.variant==="filled":n.$primevue.config.inputStyle==="filled"}]},box:"p-radiobutton-box",input:"p-radiobutton-input",icon:"p-radiobutton-icon"},c=u.extend({name:"radiobutton",classes:b}),h={name:"BaseRadioButton",extends:p,props:{value:null,modelValue:null,binary:Boolean,name:{type:String,default:null},variant:{type:String,default:null},invalid:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},tabindex:{type:Number,default:null},inputId:{type:String,default:null},inputClass:{type:[String,Object],default:null},inputStyle:{type:Object,default:null},ariaLabelledby:{type:String,default:null},ariaLabel:{type:String,default:null}},style:c,provide:function(){return{$parentInstance:this}}},f={name:"RadioButton",extends:h,inheritAttrs:!1,emits:["update:modelValue","change","focus","blur"],methods:{getPTOptions:function(a){var n=a==="root"?this.ptmi:this.ptm;return n(a,{context:{checked:this.checked,disabled:this.disabled}})},onChange:function(a){if(!this.disabled&&!this.readonly){var n=this.binary?!this.checked:this.value;this.$emit("update:modelValue",n),this.$emit("change",a)}},onFocus:function(a){this.$emit("focus",a)},onBlur:function(a){this.$emit("blur",a)}},computed:{checked:function(){return this.modelValue!=null&&(this.binary?!!this.modelValue:r.equals(this.modelValue,this.value))}}},m=["data-p-highlight","data-p-disabled"],y=["id","value","name","checked","tabindex","disabled","readonly","aria-labelledby","aria-label","aria-invalid"];function v(e,a,n,l,g,t){return s(),o("div",i({class:e.cx("root")},t.getPTOptions("root"),{"data-p-highlight":t.checked,"data-p-disabled":e.disabled}),[d("input",i({id:e.inputId,type:"radio",class:[e.cx("input"),e.inputClass],style:e.inputStyle,value:e.value,name:e.name,checked:t.checked,tabindex:e.tabindex,disabled:e.disabled,readonly:e.readonly,"aria-labelledby":e.ariaLabelledby,"aria-label":e.ariaLabel,"aria-invalid":e.invalid||void 0,onFocus:a[0]||(a[0]=function(){return t.onFocus&&t.onFocus.apply(t,arguments)}),onBlur:a[1]||(a[1]=function(){return t.onBlur&&t.onBlur.apply(t,arguments)}),onChange:a[2]||(a[2]=function(){return t.onChange&&t.onChange.apply(t,arguments)})},t.getPTOptions("input")),null,16,y),d("div",i({class:e.cx("box")},t.getPTOptions("box")),[d("div",i({class:e.cx("icon")},t.getPTOptions("icon")),null,16)],16)],16,m)}f.render=v;export{f as default};
|
||||
@@ -1,2 +0,0 @@
|
||||
import{a3 as V,at as D,a4 as c,aa as $}from"./CdAotn7S.js";function h(n){"@babel/helpers - typeof";return h=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},h(n)}function S(n,t){var e=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),e.push.apply(e,r)}return e}function U(n){for(var t=1;t<arguments.length;t++){var e=arguments[t]!=null?arguments[t]:{};t%2?S(Object(e),!0).forEach(function(r){B(n,r,e[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(e)):S(Object(e)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(e,r))})}return n}function B(n,t,e){return t=x(t),t in n?Object.defineProperty(n,t,{value:e,enumerable:!0,configurable:!0,writable:!0}):n[t]=e,n}function x(n){var t=E(n,"string");return h(t)=="symbol"?t:String(t)}function E(n,t){if(h(n)!="object"||!n)return n;var e=n[Symbol.toPrimitive];if(e!==void 0){var r=e.call(n,t||"default");if(h(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(n)}var O=V.extend({name:"common",loadGlobalStyle:function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return D(t,U({name:"global"},e))}});function y(n){"@babel/helpers - typeof";return y=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},y(n)}function G(n){return I(n)||N(n)||C(n)||w()}function N(n){if(typeof Symbol<"u"&&n[Symbol.iterator]!=null||n["@@iterator"]!=null)return Array.from(n)}function b(n,t){return I(n)||F(n,t)||C(n,t)||w()}function w(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
||||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function C(n,t){if(n){if(typeof n=="string")return T(n,t);var e=Object.prototype.toString.call(n).slice(8,-1);if(e==="Object"&&n.constructor&&(e=n.constructor.name),e==="Map"||e==="Set")return Array.from(n);if(e==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))return T(n,t)}}function T(n,t){(t==null||t>n.length)&&(t=n.length);for(var e=0,r=new Array(t);e<t;e++)r[e]=n[e];return r}function F(n,t){var e=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(e!=null){var r,i,a,f,l=[],u=!0,d=!1;try{if(a=(e=e.call(n)).next,t===0){if(Object(e)!==e)return;u=!1}else for(;!(u=(r=a.call(e)).done)&&(l.push(r.value),l.length!==t);u=!0);}catch(o){d=!0,i=o}finally{try{if(!u&&e.return!=null&&(f=e.return(),Object(f)!==f))return}finally{if(d)throw i}}return l}}function I(n){if(Array.isArray(n))return n}function j(n,t){var e=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),e.push.apply(e,r)}return e}function s(n){for(var t=1;t<arguments.length;t++){var e=arguments[t]!=null?arguments[t]:{};t%2?j(Object(e),!0).forEach(function(r){P(n,r,e[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(e)):j(Object(e)).forEach(function(r){Object.defineProperty(n,r,Object.getOwnPropertyDescriptor(e,r))})}return n}function P(n,t,e){return t=K(t),t in n?Object.defineProperty(n,t,{value:e,enumerable:!0,configurable:!0,writable:!0}):n[t]=e,n}function K(n){var t=M(n,"string");return y(t)=="symbol"?t:String(t)}function M(n,t){if(y(n)!="object"||!n)return n;var e=n[Symbol.toPrimitive];if(e!==void 0){var r=e.call(n,t||"default");if(y(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(n)}var W={name:"BaseComponent",props:{pt:{type:Object,default:void 0},ptOptions:{type:Object,default:void 0},unstyled:{type:Boolean,default:void 0}},inject:{$parentInstance:{default:void 0}},watch:{isUnstyled:{immediate:!0,handler:function(t){if(!t){var e,r;O.loadStyle({nonce:(e=this.$config)===null||e===void 0||(e=e.csp)===null||e===void 0?void 0:e.nonce}),this.$options.style&&this.$style.loadStyle({nonce:(r=this.$config)===null||r===void 0||(r=r.csp)===null||r===void 0?void 0:r.nonce})}}}},beforeCreate:function(){var t,e,r,i,a,f,l,u,d,o,g,p=(t=this.pt)===null||t===void 0?void 0:t._usept,m=p?(e=this.pt)===null||e===void 0||(e=e.originalValue)===null||e===void 0?void 0:e[this.$.type.name]:void 0,v=p?(r=this.pt)===null||r===void 0||(r=r.value)===null||r===void 0?void 0:r[this.$.type.name]:this.pt;(i=v||m)===null||i===void 0||(i=i.hooks)===null||i===void 0||(a=i.onBeforeCreate)===null||a===void 0||a.call(i);var _=(f=this.$config)===null||f===void 0||(f=f.pt)===null||f===void 0?void 0:f._usept,k=_?(l=this.$primevue)===null||l===void 0||(l=l.config)===null||l===void 0||(l=l.pt)===null||l===void 0?void 0:l.originalValue:void 0,A=_?(u=this.$primevue)===null||u===void 0||(u=u.config)===null||u===void 0||(u=u.pt)===null||u===void 0?void 0:u.value:(d=this.$primevue)===null||d===void 0||(d=d.config)===null||d===void 0?void 0:d.pt;(o=A||k)===null||o===void 0||(o=o[this.$.type.name])===null||o===void 0||(o=o.hooks)===null||o===void 0||(g=o.onBeforeCreate)===null||g===void 0||g.call(o)},created:function(){this._hook("onCreated")},beforeMount:function(){var t;V.loadStyle({nonce:(t=this.$config)===null||t===void 0||(t=t.csp)===null||t===void 0?void 0:t.nonce}),this._loadGlobalStyles(),this._hook("onBeforeMount")},mounted:function(){this._hook("onMounted")},beforeUpdate:function(){this._hook("onBeforeUpdate")},updated:function(){this._hook("onUpdated")},beforeUnmount:function(){this._hook("onBeforeUnmount")},unmounted:function(){this._hook("onUnmounted")},methods:{_hook:function(t){if(!this.$options.hostName){var e=this._usePT(this._getPT(this.pt,this.$.type.name),this._getOptionValue,"hooks.".concat(t)),r=this._useDefaultPT(this._getOptionValue,"hooks.".concat(t));e==null||e(),r==null||r()}},_mergeProps:function(t){for(var e=arguments.length,r=new Array(e>1?e-1:0),i=1;i<e;i++)r[i-1]=arguments[i];return c.isFunction(t)?t.apply(void 0,r):$.apply(void 0,r)},_loadGlobalStyles:function(){var t,e=this._useGlobalPT(this._getOptionValue,"global.css",this.$params);c.isNotEmpty(e)&&O.loadGlobalStyle(e,{nonce:(t=this.$config)===null||t===void 0||(t=t.csp)===null||t===void 0?void 0:t.nonce})},_getHostInstance:function(t){return t?this.$options.hostName?t.$.type.name===this.$options.hostName?t:this._getHostInstance(t.$parentInstance):t.$parentInstance:void 0},_getPropValue:function(t){var e;return this[t]||((e=this._getHostInstance(this))===null||e===void 0?void 0:e[t])},_getOptionValue:function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"",r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},i=c.toFlatCase(e).split(
Line truncated
|
||||
@@ -1,2 +0,0 @@
|
||||
import{s as p}from"./DtEiWfmc.js";import{a3 as h,a4 as o,i as f,t as s,v as b,x as d,aa as r,Y as m,P as y,O as v,W as g}from"./CdAotn7S.js";import{s as k}from"./AdkLG1re.js";import"./CYhL7ix_.js";var C={root:function(a){var t=a.instance,l=a.props;return["p-checkbox p-component",{"p-highlight":t.checked,"p-disabled":l.disabled,"p-invalid":l.invalid,"p-variant-filled":l.variant?l.variant==="filled":t.$primevue.config.inputStyle==="filled"}]},box:"p-checkbox-box",input:"p-checkbox-input",icon:"p-checkbox-icon"},S=h.extend({name:"checkbox",classes:C}),B={name:"BaseCheckbox",extends:k,props:{value:null,modelValue:null,binary:Boolean,name:{type:String,default:null},trueValue:{type:null,default:!0},falseValue:{type:null,default:!1},variant:{type:String,default:null},invalid:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},required:{type:Boolean,default:!1},tabindex:{type:Number,default:null},inputId:{type:String,default:null},inputClass:{type:[String,Object],default:null},inputStyle:{type:Object,default:null},ariaLabelledby:{type:String,default:null},ariaLabel:{type:String,default:null}},style:S,provide:function(){return{$parentInstance:this}}};function A(e){return x(e)||I(e)||V(e)||O()}function O(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
||||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function V(e,a){if(e){if(typeof e=="string")return i(e,a);var t=Object.prototype.toString.call(e).slice(8,-1);if(t==="Object"&&e.constructor&&(t=e.constructor.name),t==="Map"||t==="Set")return Array.from(e);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return i(e,a)}}function I(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function x(e){if(Array.isArray(e))return i(e)}function i(e,a){(a==null||a>e.length)&&(a=e.length);for(var t=0,l=new Array(a);t<a;t++)l[t]=e[t];return l}var T={name:"Checkbox",extends:B,inheritAttrs:!1,emits:["update:modelValue","change","focus","blur"],methods:{getPTOptions:function(a){var t=a==="root"?this.ptmi:this.ptm;return t(a,{context:{checked:this.checked,disabled:this.disabled}})},onChange:function(a){var t=this;if(!this.disabled&&!this.readonly){var l;this.binary?l=this.checked?this.falseValue:this.trueValue:this.checked?l=this.modelValue.filter(function(u){return!o.equals(u,t.value)}):l=this.modelValue?[].concat(A(this.modelValue),[this.value]):[this.value],this.$emit("update:modelValue",l),this.$emit("change",a)}},onFocus:function(a){this.$emit("focus",a)},onBlur:function(a){this.$emit("blur",a)}},computed:{checked:function(){return this.binary?this.modelValue===this.trueValue:o.contains(this.value,this.modelValue)}},components:{CheckIcon:p}},P=["data-p-highlight","data-p-disabled"],j=["id","value","name","checked","tabindex","disabled","readonly","required","aria-labelledby","aria-label","aria-invalid"];function q(e,a,t,l,u,n){var c=f("CheckIcon");return s(),b("div",r({class:e.cx("root")},n.getPTOptions("root"),{"data-p-highlight":n.checked,"data-p-disabled":e.disabled}),[d("input",r({id:e.inputId,type:"checkbox",class:[e.cx("input"),e.inputClass],style:e.inputStyle,value:e.value,name:e.name,checked:n.checked,tabindex:e.tabindex,disabled:e.disabled,readonly:e.readonly,required:e.required,"aria-labelledby":e.ariaLabelledby,"aria-label":e.ariaLabel,"aria-invalid":e.invalid||void 0,onFocus:a[0]||(a[0]=function(){return n.onFocus&&n.onFocus.apply(n,arguments)}),onBlur:a[1]||(a[1]=function(){return n.onBlur&&n.onBlur.apply(n,arguments)}),onChange:a[2]||(a[2]=function(){return n.onChange&&n.onChange.apply(n,arguments)})},n.getPTOptions("input")),null,16,j),d("div",r({class:e.cx("box")},n.getPTOptions("box")),[m(e.$slots,"icon",{checked:n.checked,class:g(e.cx("icon"))},function(){return[n.checked?(s(),y(c,r({key:0,class:e.cx("icon")},n.getPTOptions("icon")),null,16,["class"])):v("",!0)]})],16)],16,P)}T.render=q;export{T as default};
|
||||
@@ -1 +0,0 @@
|
||||
import{s as r}from"./CYhL7ix_.js";import{t,v as o,aa as s,x as C}from"./CdAotn7S.js";var a={name:"TimesIcon",extends:r},n=C("path",{d:"M8.01186 7.00933L12.27 2.75116C12.341 2.68501 12.398 2.60524 12.4375 2.51661C12.4769 2.42798 12.4982 2.3323 12.4999 2.23529C12.5016 2.13827 12.4838 2.0419 12.4474 1.95194C12.4111 1.86197 12.357 1.78024 12.2884 1.71163C12.2198 1.64302 12.138 1.58893 12.0481 1.55259C11.9581 1.51625 11.8617 1.4984 11.7647 1.50011C11.6677 1.50182 11.572 1.52306 11.4834 1.56255C11.3948 1.60204 11.315 1.65898 11.2488 1.72997L6.99067 5.98814L2.7325 1.72997C2.59553 1.60234 2.41437 1.53286 2.22718 1.53616C2.03999 1.53946 1.8614 1.61529 1.72901 1.74767C1.59663 1.88006 1.5208 2.05865 1.5175 2.24584C1.5142 2.43303 1.58368 2.61419 1.71131 2.75116L5.96948 7.00933L1.71131 11.2675C1.576 11.403 1.5 11.5866 1.5 11.7781C1.5 11.9696 1.576 12.1532 1.71131 12.2887C1.84679 12.424 2.03043 12.5 2.2219 12.5C2.41338 12.5 2.59702 12.424 2.7325 12.2887L6.99067 8.03052L11.2488 12.2887C11.3843 12.424 11.568 12.5 11.7594 12.5C11.9509 12.5 12.1346 12.424 12.27 12.2887C12.4053 12.1532 12.4813 11.9696 12.4813 11.7781C12.4813 11.5866 12.4053 11.403 12.27 11.2675L8.01186 7.00933Z",fill:"currentColor"},null,-1),i=[n];function p(e,c,l,d,m,h){return t(),o("svg",s({width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e.pti()),i,16)}a.render=p;export{a as s};
|
||||
@@ -1 +0,0 @@
|
||||
import{aI as B,r as k,L as S,G as N,v as u,y as d,O as s,W as c,x as r,P as f,A as x,ac as D,i as h,t as i,$ as L,ad as W,N as E,Q as O}from"./CdAotn7S.js";import{useLayout as R}from"./DiD3_pIL.js";const T={key:0,class:"layout-menuitem-root-text"},j=["href","target"],z={class:"layout-menuitem-text"},F={key:0,class:"pi pi-fw pi-angle-down layout-submenu-toggler"},G={class:"layout-menuitem-text"},P={key:0,class:"pi pi-fw pi-angle-down layout-submenu-toggler"},Q={class:"layout-submenu"},q={__name:"AppMenuItem",props:{item:{type:Object,default:()=>({})},index:{type:Number,default:0},root:{type:Boolean,default:!0},parentItemKey:{type:String,default:null}},setup(e){const I=B(),{layoutConfig:M,layoutState:b,setActiveMenuItem:C,onMenuToggle:K}=R(),m=e,o=k(!1),n=k(null);S(()=>{n.value=m.parentItemKey?m.parentItemKey+"-"+m.index:String(m.index);const t=b.activeMenuItem;o.value=t===n.value||t?t.startsWith(n.value+"-"):!1}),N(()=>M.activeMenuItem.value,t=>{o.value=t===n.value||t.startsWith(n.value+"-")});const g=(t,a)=>{if(a.disabled){t.preventDefault();return}const{overlayMenuActive:v,staticMenuMobileActive:y}=b;(a.to||a.url)&&(y.value||v.value)&&K(),a.command&&a.command({originalEvent:t,item:a});const l=a.items?o.value?m.parentItemKey:n:n.value;C(l)},w=t=>I.path===t.to;return(t,a)=>{const v=h("router-link"),y=h("app-menu-item",!0);return i(),u("li",{class:c({"layout-root-menuitem":e.root,"active-menuitem":o.value})},[e.root&&e.item.visible!==!1?(i(),u("div",T,d(e.item.label),1)):s("",!0),(!e.item.to||e.item.items)&&e.item.visible!==!1?(i(),u("a",{key:1,href:e.item.url,onClick:a[0]||(a[0]=l=>g(l,e.item,e.index)),class:c(e.item.class),target:e.item.target,tabindex:"0"},[r("i",{class:c([e.item.icon,"layout-menuitem-icon"])},null,2),r("span",z,d(e.item.label),1),e.item.items?(i(),u("i",F)):s("",!0)],10,j)):s("",!0),e.item.to&&!e.item.items&&e.item.visible!==!1?(i(),f(v,{key:2,onClick:a[1]||(a[1]=l=>g(l,e.item,e.index)),class:c([e.item.class,{"active-route":w(e.item)}]),tabindex:"0",to:e.item.to},{default:x(()=>[r("i",{class:c([e.item.icon,"layout-menuitem-icon"])},null,2),r("span",G,d(e.item.label),1),e.item.items?(i(),u("i",P)):s("",!0)]),_:1},8,["class","to"])):s("",!0),e.item.items&&e.item.visible!==!1?(i(),f(D,{key:3,name:"layout-submenu"},{default:x(()=>[L(r("ul",Q,[(i(!0),u(E,null,O(e.item.items,(l,A)=>(i(),f(y,{key:l,index:A,item:l,parentItemKey:n.value,root:!1},null,8,["index","item","parentItemKey"]))),128))],512),[[W,e.root?!0:o.value]])]),_:1})):s("",!0)],2)}}};export{q as default};
|
||||
@@ -1 +0,0 @@
|
||||
import{u as S,a as A,_ as B}from"./C0K2Sjq5.js";import{r as i,T as L,o as M,e as T,c,U as x,v as E,x as t,M as l,z as d,A as N,W as R,i as w,t as O}from"./CdAotn7S.js";import{useLayout as U}from"./DiD3_pIL.js";import"./BK_1YlQG.js";import"./AdkLG1re.js";const $={class:"layout-topbar"},q=t("i",{class:"pi pi-bars"},null,-1),z=[q],D=["src"],V=t("span",null,"Dashboard | WAHA",-1),W=t("i",{class:"pi pi-ellipsis-v"},null,-1),H=[W],I={class:"m-auto"},j=["disabled"],F=t("i",{class:"pi pi-refresh"},null,-1),G=t("span",null,"Refresh",-1),J=[F,G],tt={__name:"AppTopbar",setup(K){const{layoutConfig:p,onMenuToggle:_}=U(),s=i(null),n=i(!1);L();const r=S();M(()=>{v()}),T(()=>{h()});const m=c(()=>`/dashboard/layout/images/${p.darkTheme.value?"logo-white":"logo-dark"}.svg`),b=()=>{n.value=!n.value},f=c(()=>({"layout-topbar-menu-mobile-active":n.value})),v=()=>{s.value||(s.value=o=>{g(o)&&(n.value=!1)},document.addEventListener("click",s.value))},h=()=>{s.value&&(document.removeEventListener("click",s),s.value=null)},g=o=>{if(!n.value)return;const e=document.querySelector(".layout-topbar-menu"),a=document.querySelector(".layout-topbar-menu-button");return!(e.isSameNode(o.target)||e.contains(o.target)||a.isSameNode(o.target)||a.contains(o.target))};function k(){A("store",async()=>await r.refresh())}const{refreshing:u}=x(r);return(o,e)=>{const a=w("router-link"),y=B;return O(),E("div",$,[t("button",{class:"p-link layout-menu-button layout-topbar-button",onClick:e[0]||(e[0]=C=>l(_)())},z),d(a,{to:"/",class:"layout-topbar-logo"},{default:N(()=>[t("img",{class:"mb-1",src:m.value,alt:"logo"},null,8,D),V]),_:1}),t("button",{class:"p-link layout-topbar-menu-button layout-topbar-button",onClick:e[1]||(e[1]=C=>b())},H),t("div",{class:R(["layout-topbar-menu",f.value])},[t("div",I,[d(y,{refreshing:l(u)},null,8,["refreshing"])]),t("button",{onClick:k,class:"p-link layout-topbar-button",disabled:l(u)},J,8,j)],2)])}}};export{tt as default};
|
||||
@@ -1 +0,0 @@
|
||||
import{s as S}from"./BIoHdha8.js";import{a3 as F,a5 as V,a4 as d,a6 as x,a7 as m,aa as l,a9 as D,i as y,Z as T,t as u,P as v,A as k,v as I,N as L,Q as O,x as K,$ as z,ab as P,W as C,O as g,y as R,ac as E,z as M}from"./CdAotn7S.js";import{s as w}from"./AdkLG1re.js";import{s as N}from"./CQay6pFc.js";import"./CYhL7ix_.js";var B={root:function(e){var t=e.instance;return["p-contextmenu p-component",{"p-ripple-disabled":t.$primevue.config.ripple===!1}]},menu:"p-contextmenu-root-list",menuitem:function(e){var t=e.instance,a=e.processedItem;return["p-menuitem",{"p-menuitem-active p-highlight":t.isItemActive(a),"p-focus":t.isItemFocused(a),"p-disabled":t.isItemDisabled(a)}]},content:"p-menuitem-content",action:"p-menuitem-link",icon:"p-menuitem-icon",label:"p-menuitem-text",submenuIcon:"p-submenu-icon",submenu:"p-submenu-list",separator:"p-menuitem-separator"},_=F.extend({name:"contextmenu",classes:B}),G={name:"BaseContextMenu",extends:w,props:{model:{type:Array,default:null},appendTo:{type:[String,Object],default:"body"},autoZIndex:{type:Boolean,default:!0},baseZIndex:{type:Number,default:0},global:{type:Boolean,default:!1},tabindex:{type:Number,default:0},ariaLabelledby:{type:String,default:null},ariaLabel:{type:String,default:null}},style:_,provide:function(){return{$parentInstance:this}}},A={name:"ContextMenuSub",hostName:"ContextMenu",extends:w,emits:["item-click","item-mouseenter","item-mousemove"],props:{items:{type:Array,default:null},menuId:{type:String,default:null},focusedItemId:{type:String,default:null},root:{type:Boolean,default:!1},visible:{type:Boolean,default:!1},level:{type:Number,default:0},templates:{type:Object,default:null},activeItemPath:{type:Object,default:null},tabindex:{type:Number,default:0}},methods:{getItemId:function(e){return"".concat(this.menuId,"_").concat(e.key)},getItemKey:function(e){return this.getItemId(e)},getItemProp:function(e,t,a){return e&&e.item?d.getItemValue(e.item[t],a):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},getItemLabelId:function(e){return"".concat(this.menuId,"_").concat(e.key,"_label")},getPTOptions:function(e,t,a){return this.ptm(e,{context:{item:t,active:this.isItemActive(t),focused:this.isItemFocused(t),disabled:this.isItemDisabled(t),index:a}})},isItemActive:function(e){return this.activeItemPath.some(function(t){return t.key===e.key})},isItemVisible:function(e){return this.getItemProp(e,"visible")!==!1},isItemDisabled:function(e){return this.getItemProp(e,"disabled")},isItemFocused:function(e){return this.focusedItemId===this.getItemId(e)},isItemGroup:function(e){return d.isNotEmpty(e.items)},onItemClick:function(e,t){this.getItemProp(t,"command",{originalEvent:e,item:t.item}),this.$emit("item-click",{originalEvent:e,processedItem:t,isFocus:!0})},onItemMouseEnter:function(e,t){this.$emit("item-mouseenter",{originalEvent:e,processedItem:t})},onItemMouseMove:function(e,t){this.$emit("item-mousemove",{originalEvent:e,processedItem:t,isFocus:!0})},getAriaSetSize:function(){var e=this;return this.items.filter(function(t){return e.isItemVisible(t)&&!e.getItemProp(t,"separator")}).length},getAriaPosInset:function(e){var t=this;return e-this.items.slice(0,e).filter(function(a){return t.isItemVisible(a)&&t.getItemProp(a,"separator")}).length+1},onEnter:function(){m.nestedPosition(this.$refs.container,this.level)},getMenuItemProps:function(e,t){return{action:l({class:this.cx("action"),tabindex:-1,"aria-hidden":!0},this.getPTOptions("action",e,t)),icon:l({class:[this.cx("icon"),this.getItemProp(e,"icon")]},this.getPTOptions("icon",e,t)),label:l({class:this.cx("label")},this.getPTOptions("label",e,t)),submenuicon:l({class:this.cx("submenuIcon")},this.getPTOptions("submenuicon",e,t))}}},components:{AngleRightIcon:N},directives:{ripple:D}},U=["tabindex"],H=["id","aria-label","aria-disabled","aria-expanded","aria-haspopup","aria-level","aria-setsize","aria-posinset","data-p-highlight","data-p-focused","data-p-disabled"],Z=["onClick","onMouseenter","onMousemove"],W=["href","target"],j=["id"],X=["id"];function Y(i,e,t,a,r,n){var o=y("AngleRightIcon"),h=y("ContextMenuSub",!0),b=T("ripple");return u(),v(E,l({name:"p-contextmenusub",onEnter:n.onEnter},i.ptm("menu.transition")),{default:k(function(){return[t.root||t.visible?(u(),I("ul",l({key:0,ref:"container",tabindex:t.tabindex},i.ptm("menu")),[(u(!0),I(L,null,O(t.items,function(s,c){return u(),I(L,{key:n.getItemKey(s)},[n.isItemVisible(s)&&!n.getItemProp(s,"separator")?(u(),I("li",l({key:0,id:n.getItemId(s),style:n.getItemProp(s,"style"),class:[i.cx("menuitem",{processedItem:s}),n.getItemProp(s,"class")],role:"menuitem","aria-label":n.getItemLabel(s),"aria-disabled":n.isItemDisabled(s)||void 0,"aria-expanded":n.isItemGroup(s)?n.isItemActive(s):void 0,"aria-haspopup":n.isItemGroup(s)&&!n.getItemProp(s,"to")?"menu":void 0,"aria-level":t.level+1,"aria-setsize":n.getAriaSetSize(),"aria-posinset":n.getAriaPosInset(c)},n.getPTOptions("menuitem",s,c),{"data-p-highlight":n.isItemActive(s),"data-p-focused"Line truncated
|
||||
@@ -1,2 +0,0 @@
|
||||
import{s as D}from"./BwlcA3rq.js";import{s as T}from"./D1Sip8Hx.js";import{a3 as j,a5 as B,a4 as c,a7 as m,aa as o,a9 as U,i as E,Z as R,t as d,v as f,N as b,Q as C,x as v,$ as k,P as g,ab as y,O as p,W as w,y as F,z as A,A as L,ad as M,ac as N,Y as _}from"./CdAotn7S.js";import{s as H}from"./AdkLG1re.js";import"./CYhL7ix_.js";var G={root:"p-panelmenu p-component",panel:"p-panelmenu-panel",header:function(e){var t=e.instance,a=e.item;return["p-panelmenu-header",{"p-highlight":t.isItemActive(a)&&!!a.items,"p-disabled":t.isItemDisabled(a)}]},headerContent:"p-panelmenu-header-content",headerAction:"p-panelmenu-header-action",headerIcon:"p-menuitem-icon",headerLabel:"p-menuitem-text",toggleableContent:"p-toggleable-content",menuContent:"p-panelmenu-content",menu:"p-panelmenu-root-list",menuitem:function(e){var t=e.instance,a=e.processedItem;return["p-menuitem",{"p-focus":t.isItemFocused(a),"p-disabled":t.isItemDisabled(a)}]},content:"p-menuitem-content",action:"p-menuitem-link",icon:"p-menuitem-icon",label:"p-menuitem-text",submenuIcon:"p-submenu-icon",submenu:"p-submenu-list",separator:"p-menuitem-separator"},q=j.extend({name:"panelmenu",classes:G}),z={name:"BasePanelMenu",extends:H,props:{model:{type:Array,default:null},expandedKeys:{type:Object,default:null},multiple:{type:Boolean,default:!1},tabindex:{type:Number,default:0}},style:q,provide:function(){return{$parentInstance:this}}},x={name:"PanelMenuSub",hostName:"PanelMenu",extends:H,emits:["item-toggle","item-mousemove"],props:{panelId:{type:String,default:null},focusedItemId:{type:String,default:null},items:{type:Array,default:null},level:{type:Number,default:0},templates:{type:Object,default:null},activeItemPath:{type:Object,default:null},tabindex:{type:Number,default:-1}},methods:{getItemId:function(e){return"".concat(this.panelId,"_").concat(e.key)},getItemKey:function(e){return this.getItemId(e)},getItemProp:function(e,t,a){return e&&e.item?c.getItemValue(e.item[t],a):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},getPTOptions:function(e,t,a){return this.ptm(e,{context:{item:t,index:a,active:this.isItemActive(t),focused:this.isItemFocused(t),disabled:this.isItemDisabled(t)}})},isItemActive:function(e){return this.activeItemPath.some(function(t){return t.key===e.key})},isItemVisible:function(e){return this.getItemProp(e,"visible")!==!1},isItemDisabled:function(e){return this.getItemProp(e,"disabled")},isItemFocused:function(e){return this.focusedItemId===this.getItemId(e)},isItemGroup:function(e){return c.isNotEmpty(e.items)},onItemClick:function(e,t){this.getItemProp(t,"command",{originalEvent:e,item:t.item}),this.$emit("item-toggle",{processedItem:t,expanded:!this.isItemActive(t)})},onItemToggle:function(e){this.$emit("item-toggle",e)},onItemMouseMove:function(e,t){this.$emit("item-mousemove",{originalEvent:e,processedItem:t})},getAriaSetSize:function(){var e=this;return this.items.filter(function(t){return e.isItemVisible(t)&&!e.getItemProp(t,"separator")}).length},getAriaPosInset:function(e){var t=this;return e-this.items.slice(0,e).filter(function(a){return t.isItemVisible(a)&&t.getItemProp(a,"separator")}).length+1},getMenuItemProps:function(e,t){return{action:o({class:this.cx("action"),tabindex:-1,"aria-hidden":!0},this.getPTOptions("action",e,t)),icon:o({class:[this.cx("icon"),this.getItemProp(e,"icon")]},this.getPTOptions("icon",e,t)),label:o({class:this.cx("label")},this.getPTOptions("label",e,t)),submenuicon:o({class:this.cx("submenuIcon")},this.getPTOptions("submenuicon",e,t))}}},components:{ChevronRightIcon:T,ChevronDownIcon:D},directives:{ripple:U}},W=["tabindex"],Q=["id","aria-label","aria-expanded","aria-level","aria-setsize","aria-posinset","data-p-focused","data-p-disabled"],Y=["onClick","onMousemove"],Z=["href","target"];function J(n,e,t,a,s,i){var l=E("PanelMenuSub",!0),u=R("ripple");return d(),f("ul",{class:w(n.cx("submenu")),tabindex:t.tabindex},[(d(!0),f(b,null,C(t.items,function(r,h){return d(),f(b,{key:i.getItemKey(r)},[i.isItemVisible(r)&&!i.getItemProp(r,"separator")?(d(),f("li",o({key:0,id:i.getItemId(r),class:[n.cx("menuitem",{processedItem:r}),i.getItemProp(r,"class")],style:i.getItemProp(r,"style"),role:"treeitem","aria-label":i.getItemLabel(r),"aria-expanded":i.isItemGroup(r)?i.isItemActive(r):void 0,"aria-level":t.level+1,"aria-setsize":i.getAriaSetSize(),"aria-posinset":i.getAriaPosInset(h)},i.getPTOptions("menuitem",r,h),{"data-p-focused":i.isItemFocused(r),"data-p-disabled":i.isItemDisabled(r)}),[v("div",o({class:n.cx("content"),onClick:function(K){return i.onItemClick(K,r)},onMousemove:function(K){return i.onItemMouseMove(K,r)}},i.getPTOptions("content",r,h)),[t.templates.item?(d(),g(y(t.templates.item),{key:1,item:r.item,root:!1,active:i.isItemActive(r),hasSubmenu:i.isItemGroup(r),label:i.getItemLabel(r),props:i.getMenuItemProps(r,h)},null,8,["item","active","hasSubmenu","label","props"])):k((d(),f("a",o({key:0,href:i.getItemProp(r,"url"),class:n.cx("action"),target:i.getItemProp(r,"target"),Line truncated
|
||||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ee(n,e){if(n){if(typeof n=="string")return O(n,e);var t=Object.prototype.toString.call(n).slice(8,-1);if(t==="Object"&&n.constructor&&(t=n.constructor.name),t==="Map"||t==="Set")return Array.from(n);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return O(n,e)}}function O(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,a=new Array(e);t<e;t++)a[t]=n[t];return a}function te(n,e){var t=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(t!=null){var a,s,i,l,u=[],r=!0,h=!1;try{if(i=(t=t.call(n)).next,e===0){if(Object(t)!==t)return;r=!1}else for(;!(r=(a=i.call(t)).done)&&(u.push(a.value),u.length!==e);r=!0);}catch(I){h=!0,s=I}finally{try{if(!r&&t.return!=null&&(l=t.return(),Object(l)!==l))return}finally{if(h)throw s}}return u}}function ne(n){if(Array.isArray(n))return n}var V={name:"PanelMenuList",hostName:"PanelMenu",extends:H,emits:["item-toggle","header-focus"],props:{panelId:{type:String,default:null},items:{type:Array,default:null},templates:{type:Object,default:null},expandedKeys:{type:Object,default:null}},searchTimeout:null,searchValue:null,data:function(){return{focused:!1,focusedItem:null,activeItemPath:[]}},watch:{expandedKeys:function(e){this.autoUpdateActiveItemPath(e)}},mounted:function(){this.autoUpdateActiveItemPath(this.expandedKeys)},methods:{getItemProp:function(e,t){return e&&e.item?c.getItemValue(e.item[t]):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},isItemVisible:function(e){return this.getItemProp(e,"visible")!==!1},isItemDisabled:function(e){return this.getItemProp(e,"disabled")},isItemActive:function(e){return this.activeItemPath.some(function(t){return t.key===e.parentKey})},isItemGroup:function(e){return c.isNotEmpty(e.items)},onFocus:function(e){this.focused=!0,this.focusedItem=this.focusedItem||(this.isElementInPanel(e,e.relatedTarget)?this.findFirstItem():this.findLastItem())},onBlur:function(){this.focused=!1,this.focusedItem=null,this.searchValue=""},onKeyDown:function(e){var t=e.metaKey||e.ctrlKey;switch(e.code){case"ArrowDown":this.onArrowDownKey(e);break;case"ArrowUp":this.onArrowUpKey(e);break;case"ArrowLeft":this.onArrowLeftKey(e);break;case"ArrowRight":this.onArrowRightKey(e);break;case"Home":this.onHomeKey(e);break;case"End":this.onEndKey(e);break;case"Space":this.onSpaceKey(e);break;case"Enter":case"NumpadEnter":this.onEnterKey(e);break;case"Escape":case"Tab":case"PageDown":case"PageUp":case"Backspace":case"ShiftLeft":case"ShiftRight":break;default:!t&&c.isPrintableCharacter(e.key)&&this.searchItems(e,e.key);break}},onArrowDownKey:function(e){var t=c.isNotEmpty(this.focusedItem)?this.findNextItem(this.focusedItem):this.findFirstItem();this.changeFocusedItem({originalEvent:e,processedItem:t,focusOnNext:!0}),e.preventDefault()},onArrowUpKey:function(e){var t=c.isNotEmpty(this.focusedItem)?this.findPrevItem(this.focusedItem):this.findLastItem();this.changeFocusedItem({originalEvent:e,processedItem:t,selfCheck:!0}),e.preventDefault()},onArrowLeftKey:function(e){var t=this;if(c.isNotEmpty(this.focusedItem)){var a=this.activeItemPath.some(function(s){return s.key===t.focusedItem.key});a?this.activeItemPath=this.activeItemPath.filter(function(s){return s.key!==t.focusedItem.key}):this.focusedItem=c.isNotEmpty(this.focusedItem.parent)?this.focusedItem.parent:this.focusedItem,e.preventDefault()}},onArrowRightKey:function(e){var t=this;if(c.isNotEmpty(this.focusedItem)){var a=this.isItemGroup(this.focusedItem);if(a){var s=this.activeItemPath.some(function(i){return i.key===t.focusedItem.key});s?this.onArrowDownKey(e):(this.activeItemPath=this.activeItemPath.filter(function(i){return i.parentKey!==t.focusedItem.parentKey}),this.activeItemPath.push(this.focusedItem))}e.preventDefault()}},onHomeKey:function(e){this.changeFocusedItem({originalEvent:e,processedItem:this.findFirstItem(),allowHeaderFocus:!1}),e.preventDefault()},onEndKey:function(e){this.changeFocusedItem({originalEvent:e,processedItem:this.findLastItem(),focusOnNext:!0,allowHeaderFocus:!1}),e.preventDefault()},onEnterKey:function(e){if(c.isNotEmpty(this.focusedItem)){var t=m.findSingle(this.$el,'li[id="'.concat("".concat(this.focusedItemId),'"]')),a=t&&(m.findSingle(t,'[data-pc-section="action"]')||m.findSingle(t,"a,button"));a?a.click():t&&t.click()}e.preventDefault()},onSpaceKey:function(e){this.onEnterKey(e)},onItemToggle:function(e){var t=e.processedItem,a=e.expanded;this.expandedKeys?this.$emit("item-toggle",{item:t.item,expanded:a}):(this.activeItemPath=this.activeItemPath.filter(function(s){return s.parentKey!==t.parentKey}),a&&this.activeItemPath.push(t)),this.focusedItem=t,m.focus(this.$el)},onItemMouseMove:function(e){this.focused&&(this.focusedItem=e.processedItem)},isElementInPanel:function(e,t){var a=e.currentTarget.closest('[data-pc-section="panel"]');return a&&a.contains(t)},isItemMatched:function(e){var t;return this.isValidItem(e)&&((t=this.
Line truncated
|
||||
@@ -1 +0,0 @@
|
||||
import{s as p}from"./DtEiWfmc.js";import{s as c,a as l}from"./DaK9vsnd.js";import{s as m}from"./CiBqmW71.js";import{s as u}from"./AdkLG1re.js";import{a3 as f,t as i,v as d,Y as o,P as v,aa as n,ab as $,x as g,B as y}from"./CdAotn7S.js";import"./CYhL7ix_.js";var h={root:function(s){var t=s.props,r=s.instance;return["p-inline-message p-component p-inline-message-"+t.severity,{"p-inline-message-icon-only":!r.$slots.default}]},icon:function(s){var t=s.props;return["p-inline-message-icon",t.icon]},text:"p-inline-message-text"},B=f.extend({name:"inlinemessage",classes:h}),x={name:"BaseInlineMessage",extends:u,props:{severity:{type:String,default:"error"},icon:{type:String,default:void 0}},style:B,provide:function(){return{$parentInstance:this}}},S={name:"InlineMessage",extends:x,inheritAttrs:!1,timeout:null,data:function(){return{visible:!0}},mounted:function(){var s=this;this.sticky||setTimeout(function(){s.visible=!1},this.life)},computed:{iconComponent:function(){return{info:c,success:p,warn:l,error:m}[this.severity]}}};function k(e,s,t,r,C,a){return i(),d("div",n({role:"alert","aria-live":"assertive","aria-atomic":"true",class:e.cx("root")},e.ptmi("root")),[o(e.$slots,"icon",{},function(){return[(i(),v($(e.icon?"span":a.iconComponent),n({class:e.cx("icon")},e.ptm("icon")),null,16,["class"]))]}),g("span",n({class:e.cx("text")},e.ptm("text")),[o(e.$slots,"default",{},function(){return[y(" ")]})],16)],16)}S.render=k;export{S as default};
|
||||
@@ -1,64 +0,0 @@
|
||||
import{s as q}from"./BO3ltiFH.js";import{a3 as G,a7 as p,i as J,t as R,v as W,Y as A,x as U,N as k,Q as K,aa as M,O as D,z as X}from"./CdAotn7S.js";import{s as x}from"./AdkLG1re.js";import"./CYhL7ix_.js";var $=`
|
||||
@layer primevue {
|
||||
.p-virtualscroller {
|
||||
position: relative;
|
||||
overflow: auto;
|
||||
contain: strict;
|
||||
transform: translateZ(0);
|
||||
will-change: scroll-position;
|
||||
outline: 0 none;
|
||||
}
|
||||
|
||||
.p-virtualscroller-content {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
/* contain: content; */
|
||||
min-height: 100%;
|
||||
min-width: 100%;
|
||||
will-change: transform;
|
||||
}
|
||||
|
||||
.p-virtualscroller-spacer {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
height: 1px;
|
||||
width: 1px;
|
||||
transform-origin: 0 0;
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.p-virtualscroller .p-virtualscroller-loader {
|
||||
position: sticky;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.p-virtualscroller-loader.p-component-overlay {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.p-virtualscroller-loading-icon {
|
||||
font-size: 2rem;
|
||||
}
|
||||
|
||||
.p-virtualscroller-loading-icon.p-icon {
|
||||
width: 2rem;
|
||||
height: 2rem;
|
||||
}
|
||||
|
||||
.p-virtualscroller-horizontal > .p-virtualscroller-content {
|
||||
display: flex;
|
||||
}
|
||||
|
||||
/* Inline */
|
||||
.p-virtualscroller-inline .p-virtualscroller-content {
|
||||
position: static;
|
||||
}
|
||||
}
|
||||
`,Q=G.extend({name:"virtualscroller",css:$}),tt={name:"BaseVirtualScroller",extends:x,props:{id:{type:String,default:null},style:null,class:null,items:{type:Array,default:null},itemSize:{type:[Number,Array],default:0},scrollHeight:null,scrollWidth:null,orientation:{type:String,default:"vertical"},numToleratedItems:{type:Number,default:null},delay:{type:Number,default:0},resizeDelay:{type:Number,default:10},lazy:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},loaderDisabled:{type:Boolean,default:!1},columns:{type:Array,default:null},loading:{type:Boolean,default:!1},showSpacer:{type:Boolean,default:!0},showLoader:{type:Boolean,default:!1},tabindex:{type:Number,default:0},inline:{type:Boolean,default:!1},step:{type:Number,default:0},appendOnly:{type:Boolean,default:!1},autoSize:{type:Boolean,default:!1}},style:Q,provide:function(){return{$parentInstance:this}},beforeMount:function(){var t;Q.loadStyle({nonce:(t=this.$config)===null||t===void 0||(t=t.csp)===null||t===void 0?void 0:t.nonce})}};function E(e){"@babel/helpers - typeof";return E=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},E(e)}function Y(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),i.push.apply(i,n)}return i}function j(e){for(var t=1;t<arguments.length;t++){var i=arguments[t]!=null?arguments[t]:{};t%2?Y(Object(i),!0).forEach(function(n){Z(e,n,i[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):Y(Object(i)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(i,n))})}return e}function Z(e,t,i){return t=et(t),t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function et(e){var t=it(e,"string");return E(t)=="symbol"?t:String(t)}function it(e,t){if(E(e)!="object"||!e)return e;var i=e[Symbol.toPrimitive];if(i!==void 0){var n=i.call(e,t||"default");if(E(n)!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var st={name:"VirtualScroller",extends:tt,inheritAttrs:!1,emits:["update:numToleratedItems","scroll","scroll-index-change","lazy-load"],data:function(){var t=this.isBoth();return{first:t?{rows:0,cols:0}:0,last:t?{rows:0,cols:0}:0,page:t?{rows:0,cols:0}:0,numItemsInViewport:t?{rows:0,cols:0}:0,lastScrollPos:t?{top:0,left:0}:0,d_numToleratedItems:this.numToleratedItems,d_loading:this.loading,loaderArr:[],spacerStyle:{},contentStyle:{}}},element:null,content:null,lastScrollPos:null,scrollTimeout:null,resizeTimeout:null,defaultWidth:0,defaultHeight:0,defaultContentWidth:0,defaultContentHeight:0,isRangeChanged:!1,lazyLoadState:{},resizeListener:null,initialized:!1,watch:{numToleratedItems:function(t){this.d_numToleratedItems=t},loading:function(t,i){this.lazy&&t!==i&&t!==this.d_loading&&(this.d_loading=t)},items:function(t,i){(!i||i.length!==(t||[]).length)&&(this.init(),this.calculateAutoSize())},itemSize:function(){this.init(),this.calculateAutoSize()},orientation:function(){this.lastScrollPos=this.isBoth()?{top:0,left:0}:0},scrollHeight:function(){this.init(),this.calculateAutoSize()},scrollWidth:function(){this.init(),this.calculateAutoSize()}},mounted:function(){this.viewInit(),this.lastScrollPos=this.isBoth()?{top:0,left:0}:0,this.lazyLoadState=this.lazyLoadState||{}},updated:function(){!this.initialized&&this.viewInit()},unmounted:function(){this.unbindResizeListener(),this.initialized=!1},methods:{viewInit:function(){p.isVisible(this.element)&&(this.setContentEl(this.content),this.init(),this.calculateAutoSize(),this.bindResizeListener(),this.defaultWidth=p.getWidth(this.element),this.defaultHeight=p.getHeight(this.element),this.defaultContentWidth=p.getWidth(this.content),this.defaultContentHeight=p.getHeight(this.content),this.initialized=!0)},init:function(){this.disabled||(this.setSize(),this.calculateOptions(),this.setSpacerSize())},isVertical:function(){return this.orientation==="vertical"},isHorizontal:function(){return this.orientation==="horizontal"},isBoth:function(){return this.orientation==="both"},scrollTo:function(t){this.element&&this.element.scrollTo(t)},scrollToIndex:function(t){var i=this,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"auto",r=this.isBoth(),s=this.isHorizontal(),l=r?t.every(function(P){return P>-1}):t>-1;if(l){var a=this.first,h=this.element,u=h.scrollTop,o=u===void 0?0:u,c=h.scrollLeft,d=c===void 0?0:c,y=this.calculateNumItems(),g=y.numToleratedItems,v=this.getContentPosition(),z=this.itemSize,b=function(){var I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,H=arguments.length>1?arguments[1]:void 0;return I<=H?0:I},w=function(I,H,V){return I*H+V},L=function(){var I=arguments.length>0&&arguments[0]!==
Line truncated
|
||||
@@ -1 +0,0 @@
|
||||
import{a7 as d,Y as t,t as r,P as s,ay as l,O as i}from"./CdAotn7S.js";var u={name:"Portal",props:{appendTo:{type:[String,Object],default:"body"},disabled:{type:Boolean,default:!1}},data:function(){return{mounted:!1}},mounted:function(){this.mounted=d.isClient()},computed:{inline:function(){return this.disabled||this.appendTo==="self"}}};function p(e,c,n,f,o,a){return a.inline?t(e.$slots,"default",{key:0}):o.mounted?(r(),s(l,{key:1,to:n.appendTo},[t(e.$slots,"default")],8,["to"])):i("",!0)}u.render=p;export{u as s};
|
||||
@@ -1 +0,0 @@
|
||||
import f from"./DREobrkF.js";import{s as m}from"./AdkLG1re.js";import{a3 as c,i as h,t as s,v as l,N as v,Q as y,Y as g,z as T,W as b,aa as I}from"./CdAotn7S.js";var k={root:"p-inputotp p-component",input:"p-inputotp-input"},N=c.extend({name:"inputotp",classes:k}),x={name:"BaseInputOtp",extends:m,props:{modelValue:{type:null,default:!1},invalid:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},variant:{type:String,default:null},tabindex:{type:Number,default:null},length:{type:Number,default:4},mask:{type:Boolean,default:!1},integerOnly:{type:Boolean,default:!1}},style:N,provide:function(){return{$parentInstance:this}}},P={name:"InputOtp",extends:x,inheritAttrs:!1,emits:["update:modelValue","change","focus","blur"],data:function(){return{tokens:[]}},watch:{modelValue:{immediate:!0,handler:function(t){this.tokens=t?t.split(""):new Array(this.length)}}},methods:{getTemplateAttrs:function(t){return{value:this.tokens[t]}},getTemplateEvents:function(t){var e=this;return{input:function(r){return e.onInput(r,t)},keydown:function(r){return e.onKeyDown(r)},focus:function(r){return e.onFocus(r)},blur:function(r){return e.onBlur(r)},paste:function(r){return e.onPaste(r)}}},getPTOptions:function(t){var e=t==="root"?this.ptmi:this.ptm;return e(t,{context:{checked:this.checked,disabled:this.disabled}})},onInput:function(t,e){this.tokens[e]=t.target.value,this.updateModel(t),t.inputType==="deleteContentBackward"?this.moveToPrev(t):(t.inputType==="insertText"||t.inputType==="deleteContentForward")&&this.moveToNext(t)},updateModel:function(t){var e=this.tokens.join("");this.$emit("update:modelValue",e),this.$emit("change",{originalEvent:t,value:e})},moveToPrev:function(t){var e=this.findPrevInput(t.target);e&&(e.focus(),e.select())},moveToNext:function(t){var e=this.findNextInput(t.target);e&&(e.focus(),e.select())},findNextInput:function(t){var e=t.nextElementSibling;if(e)return e.nodeName==="INPUT"?e:this.findNextInput(e)},findPrevInput:function(t){var e=t.previousElementSibling;if(e)return e.nodeName==="INPUT"?e:this.findPrevInput(e)},onFocus:function(t){t.target.select(),this.$emit("focus",t)},onBlur:function(t){this.$emit("blur",t)},onKeyDown:function(t){switch(t.code){case"ArrowLeft":this.moveToPrev(t),t.preventDefault();break;case"ArrowUp":case"ArrowDown":t.preventDefault();break;case"Backspace":t.target.value.length===0&&(this.moveToPrev(t),t.preventDefault());break;case"ArrowRight":this.moveToNext(t),t.preventDefault();break;default:(this.integerOnly&&!((t.code.startsWith("Digit")||t.code.startsWith("Numpad"))&&Number(t.key)>=0&&Number(t.key)<=9)||this.tokens.join("").length>=this.length&&t.code!=="Delete")&&t.preventDefault();break}},onPaste:function(t){var e=t.clipboardData.getData("text");if(e.length){var u=e.substring(0,this.length+1);(!this.integerOnly||!isNaN(u))&&(this.tokens=u.split(""),this.updateModel(t))}t.preventDefault()}},computed:{inputMode:function(){return this.integerOnly?"numeric":"text"},inputType:function(){return this.mask?"password":"text"}},components:{OtpInputText:f}};function w(n,t,e,u,r,o){var p=h("OtpInputText");return s(),l("div",I({class:n.cx("root")},n.ptmi("root")),[(s(!0),l(v,null,y(n.length,function(i){return g(n.$slots,"default",{key:i,events:o.getTemplateEvents(i-1),attrs:o.getTemplateAttrs(i-1),index:i},function(){return[T(p,{value:r.tokens[i-1],type:o.inputType,class:b(n.cx("input")),inputmode:o.inputMode,variant:n.variant,readonly:n.readonly,disabled:n.disabled,invalid:n.invalid,tabindex:n.tabindex,unstyled:n.unstyled,onInput:function(d){return o.onInput(d,i-1)},onFocus:t[0]||(t[0]=function(a){return o.onFocus(a)}),onBlur:t[1]||(t[1]=function(a){return o.onBlur(a)}),onPaste:t[2]||(t[2]=function(a){return o.onPaste(a)}),onKeydown:t[3]||(t[3]=function(a){return o.onKeyDown(a)}),pt:n.ptm("input")},null,8,["value","type","class","inputmode","variant","readonly","disabled","invalid","tabindex","unstyled","onInput","pt"])]})}),128))],16)}P.render=w;export{P as default};
|
||||
@@ -1 +0,0 @@
|
||||
import{s}from"./AdkLG1re.js";import{a3 as n,t as r,v as o,aa as u}from"./CdAotn7S.js";var d={root:function(t){var l=t.instance,a=t.props;return["p-inputtextarea p-inputtext p-component",{"p-filled":l.filled,"p-inputtextarea-resizable ":a.autoResize,"p-invalid":a.invalid,"p-variant-filled":a.variant?a.variant==="filled":l.$primevue.config.inputStyle==="filled"}]}},p=n.extend({name:"textarea",classes:d}),h={name:"BaseTextarea",extends:s,props:{modelValue:null,autoResize:Boolean,invalid:{type:Boolean,default:!1},variant:{type:String,default:null}},style:p,provide:function(){return{$parentInstance:this}}},f={name:"Textarea",extends:h,inheritAttrs:!1,emits:["update:modelValue"],mounted:function(){this.$el.offsetParent&&this.autoResize&&this.resize()},updated:function(){this.$el.offsetParent&&this.autoResize&&this.resize()},methods:{resize:function(){this.$el.style.height="auto",this.$el.style.height=this.$el.scrollHeight+"px",parseFloat(this.$el.style.height)>=parseFloat(this.$el.style.maxHeight)?(this.$el.style.overflowY="scroll",this.$el.style.height=this.$el.style.maxHeight):this.$el.style.overflow="hidden"},onInput:function(t){this.autoResize&&this.resize(),this.$emit("update:modelValue",t.target.value)}},computed:{filled:function(){return this.modelValue!=null&&this.modelValue.toString().length>0},ptmParams:function(){return{context:{disabled:this.$attrs.disabled||this.$attrs.disabled===""}}}}},m=["value","aria-invalid"];function v(e,t,l,a,c,i){return r(),o("textarea",u({class:e.cx("root"),value:e.modelValue,"aria-invalid":e.invalid||void 0,onInput:t[0]||(t[0]=function(){return i.onInput&&i.onInput.apply(i,arguments)})},e.ptmi("root",i.ptmParams)),null,16,m)}f.render=v;export{f as default};
|
||||
@@ -1 +0,0 @@
|
||||
import{s as i}from"./AdkLG1re.js";import{a3 as a,t as s,v as t,aa as r,x as o}from"./CdAotn7S.js";var p={root:"p-progress-spinner",spinner:"p-progress-spinner-svg",circle:"p-progress-spinner-circle"},l=a.extend({name:"progressspinner",classes:p}),c={name:"BaseProgressSpinner",extends:i,props:{strokeWidth:{type:String,default:"2"},fill:{type:String,default:"none"},animationDuration:{type:String,default:"2s"}},style:l,provide:function(){return{$parentInstance:this}}},d={name:"ProgressSpinner",extends:c,inheritAttrs:!1,computed:{svgStyle:function(){return{"animation-duration":this.animationDuration}}}},g=["fill","stroke-width"];function m(e,u,v,f,y,n){return s(),t("div",r({class:e.cx("root"),role:"progressbar"},e.ptmi("root")),[(s(),t("svg",r({class:e.cx("spinner"),viewBox:"25 25 50 50",style:n.svgStyle},e.ptm("spinner")),[o("circle",r({class:e.cx("circle"),cx:"50",cy:"50",r:"20",fill:e.fill,"stroke-width":e.strokeWidth,strokeMiterlimit:"10"},e.ptm("circle")),null,16,g)],16))],16)}d.render=m;export{d as default};
|
||||
@@ -1,23 +0,0 @@
|
||||
import{a3 as G,a7 as X,a5 as ee,t as o,v as g,y as E,aa as c,a9 as S,Z as I,$ as A,P as l,ab as v,i as d,a1 as V,A as $,W as T,N,Q as R,B as te,Y as J,O,ae}from"./CdAotn7S.js";import{s as h}from"./AdkLG1re.js";import{s as ne,a as re,b as oe}from"./DMn_A95H.js";import U from"./4TRLVPYt.js";import ie from"./BtwAl4SI.js";import{s as se}from"./CQay6pFc.js";import"./CYhL7ix_.js";import"./DtEiWfmc.js";import"./BwlcA3rq.js";import"./DUyMz6Kq.js";import"./BO3ltiFH.js";import"./B3yzUv7e.js";import"./eLdOjEri.js";import"./BIoHdha8.js";import"./BIUw7GKS.js";import"./Dbq0hxqO.js";import"./DxKOBqhC.js";import"./CzF1vgty.js";import"./RtM6PxTR.js";import"./DREobrkF.js";function C(e){"@babel/helpers - typeof";return C=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},C(e)}function pe(e,t,a){return t=le(t),t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function le(e){var t=ue(e,"string");return C(t)=="symbol"?t:String(t)}function ue(e,t){if(C(e)!="object"||!e)return e;var a=e[Symbol.toPrimitive];if(a!==void 0){var r=a.call(e,t||"default");if(C(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var ge={paginator:function(t){var a=t.instance,r=t.key;return["p-paginator p-component",pe({"p-paginator-default":!a.hasBreakpoints()},"p-paginator-".concat(r),a.hasBreakpoints())]},start:"p-paginator-left-content",end:"p-paginator-right-content",firstPageButton:function(t){var a=t.instance;return["p-paginator-first p-paginator-element p-link",{"p-disabled":a.$attrs.disabled}]},firstPageIcon:"p-paginator-icon",previousPageButton:function(t){var a=t.instance;return["p-paginator-prev p-paginator-element p-link",{"p-disabled":a.$attrs.disabled}]},previousPageIcon:"p-paginator-icon",nextPageButton:function(t){var a=t.instance;return["p-paginator-next p-paginator-element p-link",{"p-disabled":a.$attrs.disabled}]},nextPageIcon:"p-paginator-icon",lastPageButton:function(t){var a=t.instance;return["p-paginator-last p-paginator-element p-link",{"p-disabled":a.$attrs.disabled}]},lastPageIcon:"p-paginator-icon",pages:"p-paginator-pages",pageButton:function(t){var a=t.props,r=t.pageLink;return["p-paginator-page p-paginator-element p-link",{"p-highlight":r-1===a.page}]},current:"p-paginator-current",rowPerPageDropdown:"p-paginator-rpp-options",jumpToPageDropdown:"p-paginator-page-options",jumpToPageInput:"p-paginator-page-input"},ce=G.extend({name:"paginator",classes:ge}),de={name:"BasePaginator",extends:h,props:{totalRecords:{type:Number,default:0},rows:{type:Number,default:0},first:{type:Number,default:0},pageLinkSize:{type:Number,default:5},rowsPerPageOptions:{type:Array,default:null},template:{type:[Object,String],default:"FirstPageLink PrevPageLink PageLinks NextPageLink LastPageLink RowsPerPageDropdown"},currentPageReportTemplate:{type:null,default:"({currentPage} of {totalPages})"},alwaysShow:{type:Boolean,default:!0}},style:ce,provide:function(){return{$parentInstance:this}}},M={name:"CurrentPageReport",hostName:"Paginator",extends:h,props:{pageCount:{type:Number,default:0},currentPage:{type:Number,default:0},page:{type:Number,default:0},first:{type:Number,default:0},rows:{type:Number,default:0},totalRecords:{type:Number,default:0},template:{type:String,default:"({currentPage} of {totalPages})"}},computed:{text:function(){var t=this.template.replace("{currentPage}",this.currentPage).replace("{totalPages}",this.pageCount).replace("{first}",this.pageCount>0?this.first+1:0).replace("{last}",Math.min(this.first+this.rows,this.totalRecords)).replace("{rows}",this.rows).replace("{totalRecords}",this.totalRecords);return t}}};function me(e,t,a,r,p,n){return o(),g("span",c({class:e.cx("current")},e.ptm("current")),E(n.text),17)}M.render=me;var z={name:"FirstPageLink",hostName:"Paginator",extends:h,props:{template:{type:Function,default:null}},methods:{getPTOptions:function(t){return this.ptm(t,{context:{disabled:this.$attrs.disabled}})}},components:{AngleDoubleLeftIcon:ne},directives:{ripple:S}};function fe(e,t,a,r,p,n){var i=I("ripple");return A((o(),g("button",c({class:e.cx("firstPageButton"),type:"button"},n.getPTOptions("firstPageButton"),{"data-pc-group-section":"pagebutton"}),[(o(),l(v(a.template||"AngleDoubleLeftIcon"),c({class:e.cx("firstPageIcon")},n.getPTOptions("firstPageIcon")),null,16,["class"]))],16)),[[i]])}z.render=fe;var W={name:"JumpToPageDropdown",hostName:"Paginator",extends:h,emits:["page-change"],props:{page:Number,pageCount:Number,disabled:Boolean,templates:null},methods:{onChange:function(t){this.$emit("page-change",t)}},computed:{pageOptions:function(){for(var t=[],a=0;a<this.pageCount;a++)t.push({label:String(a+1),value:a});return t}},components:{JTPDropdown:U}};function Pe(e,t,a,r,p,n){var i=d("JTPDropdown");return o(),l(i,{modelValue:a.page,optionLine truncated
|
||||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Se(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function Ie(e){if(Array.isArray(e))return j(e)}function B(e){"@babel/helpers - typeof";return B=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},B(e)}function x(e,t){return Ne(e)||Oe(e,t)||Z(e,t)||Ae()}function Ae(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
||||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Z(e,t){if(e){if(typeof e=="string")return j(e,t);var a=Object.prototype.toString.call(e).slice(8,-1);if(a==="Object"&&e.constructor&&(a=e.constructor.name),a==="Map"||a==="Set")return Array.from(e);if(a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a))return j(e,t)}}function j(e,t){(t==null||t>e.length)&&(t=e.length);for(var a=0,r=new Array(t);a<t;a++)r[a]=e[a];return r}function Oe(e,t){var a=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(a!=null){var r,p,n,i,s=[],f=!0,m=!1;try{if(n=(a=a.call(e)).next,t===0){if(Object(a)!==a)return;f=!1}else for(;!(f=(r=n.call(a)).done)&&(s.push(r.value),s.length!==t);f=!0);}catch(w){m=!0,p=w}finally{try{if(!f&&a.return!=null&&(i=a.return(),Object(i)!==i))return}finally{if(m)throw p}}return s}}function Ne(e){if(Array.isArray(e))return e}var De={name:"Paginator",extends:de,inheritAttrs:!1,emits:["update:first","update:rows","page"],data:function(){return{d_first:this.first,d_rows:this.rows}},watch:{first:function(t){this.d_first=t},rows:function(t){this.d_rows=t},totalRecords:function(t){this.page>0&&t&&this.d_first>=t&&this.changePage(this.pageCount-1)}},mounted:function(){this.setPaginatorAttribute(),this.createStyle()},methods:{changePage:function(t){var a=this.pageCount;if(t>=0&&t<a){this.d_first=this.d_rows*t;var r={page:t,first:this.d_first,rows:this.d_rows,pageCount:a};this.$emit("update:first",this.d_first),this.$emit("update:rows",this.d_rows),this.$emit("page",r)}},changePageToFirst:function(t){this.isFirstPage||this.changePage(0),t.preventDefault()},changePageToPrev:function(t){this.changePage(this.page-1),t.preventDefault()},changePageLink:function(t){this.changePage(t.value-1),t.originalEvent.preventDefault()},changePageToNext:function(t){this.changePage(this.page+1),t.preventDefault()},changePageToLast:function(t){this.isLastPage||this.changePage(this.pageCount-1),t.preventDefault()},onRowChange:function(t){this.d_rows=t,this.changePage(this.page)},createStyle:function(){var t=this;if(this.hasBreakpoints()&&!this.isUnstyled){var a;this.styleElement=document.createElement("style"),this.styleElement.type="text/css",X.setAttribute(this.styleElement,"nonce",(a=this.$primevue)===null||a===void 0||(a=a.config)===null||a===void 0||(a=a.csp)===null||a===void 0?void 0:a.nonce),document.head.appendChild(this.styleElement);var r="",p=Object.keys(this.template),n={};p.sort(function(y,D){return parseInt(y)-parseInt(D)}).forEach(function(y){n[y]=t.template[y]});for(var i=0,s=Object.entries(Object.entries(n));i<s.length;i++){var f=x(s[i],2),m=f[0],w=x(f[1],1),b=w[0],L=void 0,k=void 0;b!=="default"&&typeof Object.keys(n)[m-1]=="string"?k=Number(Object.keys(n)[m-1].slice(0,-2))+1+"px":k=Object.keys(n)[m-1],L=Object.entries(n)[m-1]?"and (min-width:".concat(k,")"):"",b==="default"?r+=`
|
||||
@media screen `.concat(L,` {
|
||||
.paginator[`).concat(this.attributeSelector,`],
|
||||
.p-paginator-default{
|
||||
display: flex;
|
||||
}
|
||||
}
|
||||
`):r+=`
|
||||
.paginator[`.concat(this.attributeSelector,"], .p-paginator-").concat(b,` {
|
||||
display: none;
|
||||
}
|
||||
@media screen `).concat(L," and (max-width: ").concat(b,`) {
|
||||
.paginator[`).concat(this.attributeSelector,"], .p-paginator-").concat(b,` {
|
||||
display: flex;
|
||||
}
|
||||
.paginator[`).concat(this.attributeSelector,`],
|
||||
.p-paginator-default{
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
`)}this.styleElement.innerHTML=r}},hasBreakpoints:function(){return B(this.template)==="object"},setPaginatorAttribute:function(){var t=this;this.$refs.paginator&&this.$refs.paginator.length>=0&&Te(this.$refs.paginator).forEach(function(a){a.setAttribute(t.attributeSelector,"")})},getAriaLabel:function(t){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria[t]:void 0}},computed:{templateItems:function(){var t={};if(this.hasBreakpoints()){t=this.template,t.default||(t.default="FirstPageLink PrevPageLink PageLinks NextPageLink LastPageLink RowsPerPageDropdown");for(var a in t)t[a]=this.template[a].split(" ").map(function(r){return r.trim()});return t}return t.default=this.template.split(" ").map(function(r){return r.trim()}),t},page:function(){return Math.floor(this.d_first/this.d_rows)},pageCount:function(){return Math.ceil(this.totalRecords/this.d_rows)},isFirstPage:function(){return this.page===0},isLastPage:function(){return this.page===this.pageCount-1},calculatePageLinkBoundaries:function(){var t=this.pageCount,a=Math.min(this.pageLinkSize,t),r=Math.max(0,Math.ceil(this.page-a/2)),p=Math.min(t-1,r+a-1),n=this.pageLinkSize-(p-r+1);return r=Math.max(0,r-n),[r,p]},pageLinks:function(){for(var t=[],a=this.calculatePageLinkBoundaries,r=a[0],p=a[1],n=r;n<=p;n++)t.push(n+1);return t},currentState:function(){return{page:this.page,first:this.d_first,rows:this.d_rows}},empty:function(){return this.pageCount===0},currentPage:function(){return this.pageCount>0?this.page+1:0},attributeSelector:function(){return ee()}},components:{CurrentPageReport:M,FirstPageLink:z,LastPageLink:H,NextPageLink:q,PageLinks:K,PrevPageLink:Q,RowsPerPageDropdown:Y,JumpToPageDropdown:W,JumpToPageInput:_}};function Re(e,t,a,r,p,n){var i=d("FirstPageLink"),s=d("PrevPageLink"),f=d("NextPageLink"),m=d("LastPageLink"),w=d("PageLinks"),b=d("CurrentPageReport"),L=d("RowsPerPageDropdown"),k=d("JumpToPageDropdown"),y=d("JumpToPageInput");return e.alwaysShow||n.pageLinks&&n.pageLinks.length>1?(o(),g("nav",ae(c({key:0},e.ptmi("paginatorWrapper"))),[(o(!0),g(N,null,R(n.templateItems,function(D,F){return o(),g("div",c({key:F,ref_for:!0,ref:"paginator",class:e.cx("paginator",{key:F})},e.ptm("root")),[e.$slots.start?(o(),g("div",c({key:0,class:e.cx("start")},e.ptm("start")),[J(e.$slots,"start",{state:n.currentState})],16)):O("",!0),(o(!0),g(N,null,R(D,function(P){return o(),g(N,{key:P},[P==="FirstPageLink"?(o(),l(i,{key:0,"aria-label":n.getAriaLabel("firstPageLabel"),template:e.$slots.firstpagelinkicon,onClick:t[0]||(t[0]=function(u){return n.changePageToFirst(u)}),disabled:n.isFirstPage||n.empty,unstyled:e.unstyled,pt:e.pt},null,8,["aria-label","template","disabled","unstyled","pt"])):P==="PrevPageLink"?(o(),l(s,{key:1,"aria-label":n.getAriaLabel("prevPageLabel"),template:e.$slots.prevpagelinkicon,onClick:t[1]||(t[1]=function(u){return n.changePageToPrev(u)}),disabled:n.isFirstPage||n.empty,unstyled:e.unstyled,pt:e.pt},null,8,["aria-label","template","disabled","unstyled","pt"])):P==="NextPageLink"?(o(),l(f,{key:2,"aria-label":n.getAriaLabel("nextPageLabel"),template:e.$slots.nextpagelinkicon,onClick:t[2]||(t[2]=function(u){return n.changePageToNext(u)}),disabled:n.isLastPage||n.empty,unstyled:e.unstyled,pt:e.pt},null,8,["aria-label","template","disabled","unstyled","pt"])):P==="LastPageLink"?(o(),l(m,{key:3,"aria-label":n.getAriaLabel("lastPageLabel"),template:e.$slots.lastpagelinkicon,onClick:t[3]||(t[3]=function(u){return n.changePageToLast(u)}),disabled:n.isLastPage||n.empty,unstyled:e.unstyled,pt:e.pt},null,8,["aria-label","template","disabled","unstyled","pt"])):P==="PageLinks"?(o(),l(w,{key:4,"aria-label":n.getAriaLabel("pageLabel"),value:n.pageLinks,page:n.page,onClick:t[4]||(t[4]=function(u){return n.changePageLink(u)}),pt:e.pt},null,8,["aria-label","value","page","pt"])):P==="CurrentPageReport"?(o(),l(b,{key:5,"aria-live":"polite",template:e.currentPageReportTemplate,currentPage:n.currentPage,page:n.page,pageCount:n.pageCount,first:p.d_first,rows:p.d_rows,totalRecords:e.totalRecords,unstyled:e.unstyled,pt:e.pt},null,8,["template","currentPage","page","pageCount","first","rows","totalRecords","unstyled","pt"])):P==="RowsPerPageDropdown"&&e.rowsPerPageOptions?(o(),l(L,{key:6,"aria-label":n.getAriaLabel("rowsPerPageLabel"),rows:p.d_rows,options:e.rowsPerPageOptions,onRowsChange:t[5]||(t[5]=function(u){return n.onRowChange(u)}),disabled:n.empty,templates:e.$slots,unstyled:e.unstyled,pt:e.pt},null,8,["aria-label","rows","options","disabled","templates","unstyled","pt"])):P==="JumpToPageDropdown"?(o(),l(k,{key:7,"aria-label":n.getAriaLabel("jumpToPageDropdownLabel"),page:n.page,pageCount:n.pageCount,onPageChange:t[6]||(t[6]=function(u){return n.changePage(u)}),disabled:n.empty,templates:e.$slots,unstyled:e.unstyled,pt:e.pt},null,8,["aria-label","page","pageCount","disabled","templates","unstyled","pt"])):P==="JumpToPageInput"?(o(),l(y,{key:8,page:n.currentPage,onPageChange:t[7]||(t[7]=function(u){return n.
Line truncated
|
||||
@@ -1 +0,0 @@
|
||||
import{s as V}from"./CM_CX4UR.js";import{a3 as z,a5 as D,a4 as m,a6 as M,a7 as b,aa as c,a9 as N,i as K,Z as O,t as l,v as d,y as A,O as g,N as y,Q as x,x as P,$ as T,P as p,W as E,ab as k,aD as B,Y as L,z as S,ae as R,af as G}from"./CdAotn7S.js";import{s as F}from"./AdkLG1re.js";import{s as U}from"./CzF1vgty.js";import{s as H}from"./CQay6pFc.js";import"./CYhL7ix_.js";var q={submenu:function(e){var i=e.instance,s=e.processedItem;return{display:i.isItemActive(s)?"block":"none"}}},j={root:function(e){var i=e.instance;return["p-megamenu p-component",{"p-megamenu-mobile":i.queryMatches,"p-megamenu-mobile-active":i.mobileActive,"p-megamenu-horizontal":i.horizontal,"p-megamenu-vertical":i.vertical}]},start:"p-megamenu-start",menubutton:"p-megamenu-button",menu:"p-megamenu-root-list",submenuHeader:function(e){var i=e.instance,s=e.processedItem;return["p-megamenu-submenu-header p-submenu-header",{"p-disabled":i.isItemDisabled(s)}]},menuitem:function(e){var i=e.instance,s=e.processedItem;return["p-menuitem",{"p-menuitem-active p-highlight":i.isItemActive(s),"p-focus":i.isItemFocused(s),"p-disabled":i.isItemDisabled(s)}]},content:"p-menuitem-content",action:"p-menuitem-link",icon:"p-menuitem-icon",label:"p-menuitem-text",submenuIcon:"p-submenu-icon",panel:"p-megamenu-panel",grid:"p-megamenu-grid",column:function(e){var i=e.instance,s=e.processedItem,r=i.isItemGroup(s)?s.items.length:0,n;if(i.$parentInstance.queryMatches)n="p-megamenu-col-12";else switch(r){case 2:n="p-megamenu-col-6";break;case 3:n="p-megamenu-col-4";break;case 4:n="p-megamenu-col-3";break;case 6:n="p-megamenu-col-2";break;default:n="p-megamenu-col-12";break}return n},submenu:"p-submenu-list p-megamenu-submenu",submenuLabel:"p-menuitem-text",separator:"p-menuitem-separator",end:"p-megamenu-end"},W=z.extend({name:"megamenu",classes:j,inlineStyles:q}),Z={name:"BaseMegaMenu",extends:F,props:{model:{type:Array,default:null},orientation:{type:String,default:"horizontal"},breakpoint:{type:String,default:"960px"},disabled:{type:Boolean,default:!1},tabindex:{type:Number,default:0},ariaLabelledby:{type:String,default:null},ariaLabel:{type:String,default:null}},style:W,provide:function(){return{$parentInstance:this}}},w={name:"MegaMenuSub",hostName:"MegaMenu",extends:F,emits:["item-click","item-mouseenter"],props:{menuId:{type:String,default:null},focusedItemId:{type:String,default:null},horizontal:{type:Boolean,default:!1},submenu:{type:Object,default:null},mobileActive:{type:Boolean,default:!1},items:{type:Array,default:null},level:{type:Number,default:0},templates:{type:Object,default:null},activeItem:{type:Object,default:null},tabindex:{type:Number,default:0}},methods:{getSubListId:function(e){return"".concat(this.getItemId(e),"_list")},getSubListKey:function(e){return this.getSubListId(e)},getItemId:function(e){return"".concat(this.menuId,"_").concat(e.key)},getItemKey:function(e){return this.getItemId(e)},getItemProp:function(e,i,s){return e&&e.item?m.getItemValue(e.item[i],s):void 0},getItemLabel:function(e){return this.getItemProp(e,"label")},getPTOptions:function(e,i,s){return this.ptm(s,{context:{item:e,index:i,active:this.isItemActive(e),focused:this.isItemFocused(e),disabled:this.isItemDisabled(e)}})},isItemActive:function(e){return m.isNotEmpty(this.activeItem)?this.activeItem.key===e.key:!1},isItemVisible:function(e){return this.getItemProp(e,"visible")!==!1},isItemDisabled:function(e){return this.getItemProp(e,"disabled")},isItemFocused:function(e){return this.focusedItemId===this.getItemId(e)},isItemGroup:function(e){return m.isNotEmpty(e.items)},onItemClick:function(e,i){this.getItemProp(i,"command",{originalEvent:e,item:i.item}),this.$emit("item-click",{originalEvent:e,processedItem:i,isFocus:!0})},onItemMouseEnter:function(e,i){this.$emit("item-mouseenter",{originalEvent:e,processedItem:i})},getAriaSetSize:function(){var e=this;return this.items.filter(function(i){return e.isItemVisible(i)&&!e.getItemProp(i,"separator")}).length},getAriaPosInset:function(e){var i=this;return e-this.items.slice(0,e).filter(function(s){return i.isItemVisible(s)&&i.getItemProp(s,"separator")}).length+1},getMenuItemProps:function(e,i){return{action:c({class:this.cx("action"),tabindex:-1,"aria-hidden":!0},this.getPTOptions(e,i,"action")),icon:c({class:[this.cx("icon"),this.getItemProp(e,"icon")]},this.getPTOptions(e,i,"icon")),label:c({class:this.cx("label")},this.getPTOptions(e,i,"label")),submenuicon:c({class:this.cx("submenuIcon")},this.getPTOptions(e,i,"submenuIcon"))}}},components:{AngleRightIcon:H,AngleDownIcon:U},directives:{ripple:N}},Q=["tabindex"],Y=["id","aria-label","aria-disabled","aria-expanded","aria-haspopup","aria-level","aria-setsize","aria-posinset","data-p-highlight","data-p-focused","data-p-disabled"],J=["onClick","onMouseenter"],X=["href","target"],_=["id"];function $(t,e,i,s,r,n){var o=K("MegaMenuSub",!0),h=O("ripple");return l(),d("ul",c({class:i.level===0?t.cx("menu"):t.cx("submenu"),tabindex:i.tabindex},i.level===0?t.ptm("menu"):t.ptm("Line truncated
|
||||
@@ -1,2 +0,0 @@
|
||||
import{s as k}from"./AdkLG1re.js";import{a3 as M,a5 as A,a4 as S,a7 as u,aa as l,a9 as w,aC as D,Z as h,t as d,v as c,x as b,N as K,Q as P,$ as y,P as I,W as C,ab as g,i as T,z as E}from"./CdAotn7S.js";var F={root:function(e){var n=e.instance,a=e.props;return["p-dock p-component","p-dock-".concat(a.position),{"p-dock-mobile":n.queryMatches}]},container:"p-dock-list-container",menu:"p-dock-list",menuitem:function(e){var n=e.instance,a=e.processedItem,r=e.index,i=e.id;return["p-dock-item",{"p-focus":n.isItemActive(i),"p-disabled":n.disabled(a),"p-dock-item-second-prev":n.currentIndex-2===r,"p-dock-item-prev":n.currentIndex-1===r,"p-dock-item-current":n.currentIndex===r,"p-dock-item-next":n.currentIndex+1===r,"p-dock-item-second-next":n.currentIndex+2===r}]},content:"p-menuitem-content",action:"p-dock-link",icon:"p-dock-icon"},N=M.extend({name:"dock",classes:F}),B={name:"BaseDock",extends:k,props:{position:{type:String,default:"bottom"},model:null,class:null,style:null,tooltipOptions:null,menuId:{type:String,default:null},tabindex:{type:Number,default:0},breakpoint:{type:String,default:"960px"},ariaLabel:{type:String,default:null},ariaLabelledby:{type:String,default:null}},style:N,provide:function(){return{$parentInstance:this}}};function v(t){return j(t)||H(t)||q(t)||U()}function U(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
||||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function q(t,e){if(t){if(typeof t=="string")return p(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);if(n==="Object"&&t.constructor&&(n=t.constructor.name),n==="Map"||n==="Set")return Array.from(t);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return p(t,e)}}function H(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function j(t){if(Array.isArray(t))return p(t)}function p(t,e){(e==null||e>t.length)&&(e=t.length);for(var n=0,a=new Array(e);n<e;n++)a[n]=t[n];return a}var L={name:"DockSub",hostName:"Dock",extends:k,emits:["focus","blur"],props:{position:{type:String,default:"bottom"},model:{type:Array,default:null},templates:{type:null,default:null},tooltipOptions:null,menuId:{type:String,default:null},tabindex:{type:Number,default:0},ariaLabel:{type:String,default:null},ariaLabelledby:{type:String,default:null}},data:function(){return{id:this.menuId,currentIndex:-3,focused:!1,focusedOptionIndex:-1}},watch:{menuId:{immediate:!0,handler:function(e){this.id=e||A()}}},methods:{getItemId:function(e){return"".concat(this.id,"_").concat(e)},getItemProp:function(e,n){return e&&e.item?S.getItemValue(e.item[n]):void 0},getPTOptions:function(e,n,a){return this.ptm(e,{context:{index:a,item:n,active:this.isItemActive(this.getItemId(a))}})},isSameMenuItem:function(e){return e.currentTarget&&(e.currentTarget.isSameNode(e.target)||e.currentTarget.isSameNode(e.target.closest('[data-pc-section="menuitem"]')))},isItemActive:function(e){return e===this.focusedOptionIndex},onListMouseLeave:function(){this.currentIndex=-3},onItemMouseEnter:function(e){this.currentIndex=e},onItemClick:function(e,n){if(this.isSameMenuItem(e)){var a=this.getItemProp(n,"command");a&&a({originalEvent:e,item:n.item})}},onListFocus:function(e){this.focused=!0,this.changeFocusedOptionIndex(0),this.$emit("focus",e)},onListBlur:function(e){this.focused=!1,this.focusedOptionIndex=-1,this.$emit("blur",e)},onListKeyDown:function(e){switch(e.code){case"ArrowDown":{(this.position==="left"||this.position==="right")&&this.onArrowDownKey(),e.preventDefault();break}case"ArrowUp":{(this.position==="left"||this.position==="right")&&this.onArrowUpKey(),e.preventDefault();break}case"ArrowRight":{(this.position==="top"||this.position==="bottom")&&this.onArrowDownKey(),e.preventDefault();break}case"ArrowLeft":{(this.position==="top"||this.position==="bottom")&&this.onArrowUpKey(),e.preventDefault();break}case"Home":{this.onHomeKey(),e.preventDefault();break}case"End":{this.onEndKey(),e.preventDefault();break}case"Enter":case"NumpadEnter":case"Space":{this.onSpaceKey(e),e.preventDefault();break}}},onArrowDownKey:function(){var e=this.findNextOptionIndex(this.focusedOptionIndex);this.changeFocusedOptionIndex(e)},onArrowUpKey:function(){var e=this.findPrevOptionIndex(this.focusedOptionIndex);this.changeFocusedOptionIndex(e)},onHomeKey:function(){this.changeFocusedOptionIndex(0)},onEndKey:function(){this.changeFocusedOptionIndex(u.find(this.$refs.list,'li[data-pc-section="menuitem"][data-p-disabled="false"]').length-1)},onSpaceKey:function(){var e=u.findSingle(this.$refs.list,'li[id="'.concat("".concat(this.focusedOptionIndex),'"]')),n=e&&u.findSingle(e,'[data-pc-section="action"]');n?n.click():e&&e.click()},findNextOptionIndex:function(e){var n=u.find(this.$refs.list,'li[data-pc-section="menuitem"][data-p-disabled="false"]'),a=v(n).findIndex(function(r){return r.id===e});return a>-1?a+1:0},findPrevOptionIndex:function(e){var n=u.find(this.$refs.list,'li[data-pc-section="menuitem"][data-p-disabled="false"]'),a=v(n).findIndex(function(r){return r.id===e});return a>-1?a-1:0},changeFocusedOptionIndex:function(e){var n=u.find(this.$refs.list,'li[data-pc-section="menuitem"][data-p-disabled="false"]'),a=e>=n.length?n.length-1:e<0?0:e;this.focusedOptionIndex=n[a].getAttribute("id")},disabled:function(e){return typeof e.disabled=="function"?e.disabled():e.disabled},getMenuItemProps:function(e,n){return{action:l({tabindex:-1,"aria-hidden":!0,class:this.cx("action")},this.getPTOptions("action",e,n)),icon:l({class:[this.cx("icon"),e.icon]},this.getPTOptions("icon",e,n))}}},computed:{focusedOptionId:function(){return this.focusedOptionIndex!==-1?this.focusedOptionIndex:null}},directives:{ripple:w,tooltip:D}},z=["id","aria-orientation","aria-activedescendant","tabindex","aria-label","aria-labelledby"],V=["id","aria-label","aria-disabled","onClick","onMouseenter","data-p-focused","data-p-disabled"],R=["href","target"];function W(t,e,n,a,r,i){var m=h("ripple"),O=h("tooltip");return d(),c("div",l({class:t.cx("container")},t.ptm("container")),[b("ul",l({ref:"list",id:r.id,class:t.cx("menu"),role:"menu","aria-orientation":n.position==="bottom"||n.position==="top"?"horizontal":"vertical","aria-activedescendant":r.focused?i.focusedOptionId:void 0,tabindex:n.tabindex,"aria-label":n.ariaLabel,"aria-labelledby":n.ariaLabelledby,onFocus
Line truncated
|
||||
@@ -1 +0,0 @@
|
||||
import{s as C}from"./CYhL7ix_.js";import{t as r,v as t,aa as o,x as s}from"./CdAotn7S.js";var a={name:"SpinnerIcon",extends:C},n=s("path",{d:"M6.99701 14C5.85441 13.999 4.72939 13.7186 3.72012 13.1832C2.71084 12.6478 1.84795 11.8737 1.20673 10.9284C0.565504 9.98305 0.165424 8.89526 0.041387 7.75989C-0.0826496 6.62453 0.073125 5.47607 0.495122 4.4147C0.917119 3.35333 1.59252 2.4113 2.46241 1.67077C3.33229 0.930247 4.37024 0.413729 5.4857 0.166275C6.60117 -0.0811796 7.76026 -0.0520535 8.86188 0.251112C9.9635 0.554278 10.9742 1.12227 11.8057 1.90555C11.915 2.01493 11.9764 2.16319 11.9764 2.31778C11.9764 2.47236 11.915 2.62062 11.8057 2.73C11.7521 2.78503 11.688 2.82877 11.6171 2.85864C11.5463 2.8885 11.4702 2.90389 11.3933 2.90389C11.3165 2.90389 11.2404 2.8885 11.1695 2.85864C11.0987 2.82877 11.0346 2.78503 10.9809 2.73C9.9998 1.81273 8.73246 1.26138 7.39226 1.16876C6.05206 1.07615 4.72086 1.44794 3.62279 2.22152C2.52471 2.99511 1.72683 4.12325 1.36345 5.41602C1.00008 6.70879 1.09342 8.08723 1.62775 9.31926C2.16209 10.5513 3.10478 11.5617 4.29713 12.1803C5.48947 12.7989 6.85865 12.988 8.17414 12.7157C9.48963 12.4435 10.6711 11.7264 11.5196 10.6854C12.3681 9.64432 12.8319 8.34282 12.8328 7C12.8328 6.84529 12.8943 6.69692 13.0038 6.58752C13.1132 6.47812 13.2616 6.41667 13.4164 6.41667C13.5712 6.41667 13.7196 6.47812 13.8291 6.58752C13.9385 6.69692 14 6.84529 14 7C14 8.85651 13.2622 10.637 11.9489 11.9497C10.6356 13.2625 8.85432 14 6.99701 14Z",fill:"currentColor"},null,-1),i=[n];function p(e,c,l,d,h,m){return r(),t("svg",o({width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e.pti()),i,16)}a.render=p;export{a as s};
|
||||
@@ -1,13 +0,0 @@
|
||||
import{a3 as Z,a7 as c,a6 as k,av as q,a9 as N,Z as C,t as s,v as d,x as b,$ as g,aa as l,P as f,ab as p,O as h,N as R,Q as H,a4 as $,a5 as X,i as A,z as M,A as L,ac as Y}from"./CdAotn7S.js";import{s as Q}from"./BIoHdha8.js";import{s as O}from"./AdkLG1re.js";import{s as J}from"./B3yzUv7e.js";import{s as U}from"./DDd6n_m5.js";import{s as G}from"./D1Sip8Hx.js";import{s as ee}from"./BwlcA3rq.js";import{s as te}from"./DJsXWhIp.js";import"./CYhL7ix_.js";var ie={mask:function(e){var i=e.instance;return["p-galleria-mask p-component-overlay p-component-overlay-enter",{"p-ripple-disabled":i.$primevue.config.ripple===!1}]},root:function(e){var i=e.instance,n=i.$attrs.showThumbnails&&i.getPositionClass("p-galleria-thumbnails",i.$attrs.thumbnailsPosition),r=i.$attrs.showIndicators&&i.getPositionClass("p-galleria-indicators",i.$attrs.indicatorsPosition);return["p-galleria p-component",{"p-galleria-fullscreen":i.$attrs.fullScreen,"p-galleria-indicator-onitem":i.$attrs.showIndicatorsOnItem,"p-galleria-item-nav-onhover":i.$attrs.showItemNavigatorsOnHover&&!i.$attrs.fullScreen},n,r]},closeButton:"p-galleria-close p-link",closeIcon:"p-galleria-close-icon",header:"p-galleria-header",content:"p-galleria-content",footer:"p-galleria-footer",itemWrapper:"p-galleria-item-wrapper",itemContainer:"p-galleria-item-container",previousItemButton:function(e){var i=e.instance;return["p-galleria-item-prev p-galleria-item-nav p-link",{"p-disabled":i.isNavBackwardDisabled()}]},previousItemIcon:"p-galleria-item-prev-icon",item:"p-galleria-item",nextItemButton:function(e){var i=e.instance;return["p-galleria-item-next p-galleria-item-nav p-link",{"p-disabled":i.isNavForwardDisabled()}]},nextItemIcon:"p-galleria-item-next-icon",caption:"p-galleria-caption",indicators:"p-galleria-indicators p-reset",indicator:function(e){var i=e.instance,n=e.index;return["p-galleria-indicator",{"p-highlight":i.isIndicatorItemActive(n)}]},indicatorButton:"p-link",thumbnailWrapper:"p-galleria-thumbnail-wrapper",thumbnailContainer:"p-galleria-thumbnail-container",previousThumbnailButton:function(e){var i=e.instance;return["p-galleria-thumbnail-prev p-link",{"p-disabled":i.isNavBackwardDisabled()}]},previousThumbnailIcon:"p-galleria-thumbnail-prev-icon",thumbnailItemsContainer:"p-galleria-thumbnail-items-container",thumbnailItems:"p-galleria-thumbnail-items",thumbnailItem:function(e){var i=e.instance,n=e.index,r=e.activeIndex;return["p-galleria-thumbnail-item",{"p-galleria-thumbnail-item-current":r===n,"p-galleria-thumbnail-item-active":i.isItemActive(n),"p-galleria-thumbnail-item-start":i.firstItemAciveIndex()===n,"p-galleria-thumbnail-item-end":i.lastItemActiveIndex()===n}]},thumbnailItemContent:"p-galleria-thumbnail-item-content",nextThumbnailButton:function(e){var i=e.instance;return["p-galleria-thumbnail-next p-link",{"p-disabled":i.isNavForwardDisabled()}]},nextThumbnailIcon:"p-galleria-thumbnail-next-icon"},ne=Z.extend({name:"galleria",classes:ie}),ae={name:"BaseGalleria",extends:O,props:{id:{type:String,default:null},value:{type:Array,default:null},activeIndex:{type:Number,default:0},fullScreen:{type:Boolean,default:!1},visible:{type:Boolean,default:!1},numVisible:{type:Number,default:3},responsiveOptions:{type:Array,default:null},showItemNavigators:{type:Boolean,default:!1},showThumbnailNavigators:{type:Boolean,default:!0},showItemNavigatorsOnHover:{type:Boolean,default:!1},changeItemOnIndicatorHover:{type:Boolean,default:!1},circular:{type:Boolean,default:!1},autoPlay:{type:Boolean,default:!1},transitionInterval:{type:Number,default:4e3},showThumbnails:{type:Boolean,default:!0},thumbnailsPosition:{type:String,default:"bottom"},verticalThumbnailViewPortHeight:{type:String,default:"300px"},showIndicators:{type:Boolean,default:!1},showIndicatorsOnItem:{type:Boolean,default:!1},indicatorsPosition:{type:String,default:"bottom"},baseZIndex:{type:Number,default:0},maskClass:{type:String,default:null},containerStyle:{type:null,default:null},containerClass:{type:null,default:null},containerProps:{type:null,default:null},prevButtonProps:{type:null,default:null},nextButtonProps:{type:null,default:null},ariaLabel:{type:String,default:null},ariaRoledescription:{type:String,default:null}},style:ne,provide:function(){return{$parentInstance:this}}};function y(t){return le(t)||se(t)||oe(t)||re()}function re(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
||||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function oe(t,e){if(t){if(typeof t=="string")return B(t,e);var i=Object.prototype.toString.call(t).slice(8,-1);if(i==="Object"&&t.constructor&&(i=t.constructor.name),i==="Map"||i==="Set")return Array.from(t);if(i==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i))return B(t,e)}}function se(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function le(t){if(Array.isArray(t))return B(t)}function B(t,e){(e==null||e>t.length)&&(e=t.length);for(var i=0,n=new Array(e);i<e;i++)n[i]=t[i];return n}var z={name:"GalleriaItem",hostName:"Galleria",extends:O,emits:["start-slideshow","stop-slideshow","update:activeIndex"],props:{circular:{type:Boolean,default:!1},activeIndex:{type:Number,default:0},value:{type:Array,default:null},showItemNavigators:{type:Boolean,default:!0},showIndicators:{type:Boolean,default:!0},slideShowActive:{type:Boolean,default:!0},changeItemOnIndicatorHover:{type:Boolean,default:!0},autoPlay:{type:Boolean,default:!1},templates:{type:null,default:null},id:{type:String,default:null}},mounted:function(){this.autoPlay&&this.$emit("start-slideshow")},methods:{getIndicatorPTOptions:function(e){return{context:{highlighted:this.activeIndex===e}}},next:function(){var e=this.activeIndex+1,i=this.circular&&this.value.length-1===this.activeIndex?0:e;this.$emit("update:activeIndex",i)},prev:function(){var e=this.activeIndex!==0?this.activeIndex-1:0,i=this.circular&&this.activeIndex===0?this.value.length-1:e;this.$emit("update:activeIndex",i)},stopSlideShow:function(){this.slideShowActive&&this.stopSlideShow&&this.$emit("stop-slideshow")},navBackward:function(e){this.stopSlideShow(),this.prev(),e&&e.cancelable&&e.preventDefault()},navForward:function(e){this.stopSlideShow(),this.next(),e&&e.cancelable&&e.preventDefault()},onIndicatorClick:function(e){this.stopSlideShow(),this.$emit("update:activeIndex",e)},onIndicatorMouseEnter:function(e){this.changeItemOnIndicatorHover&&(this.stopSlideShow(),this.$emit("update:activeIndex",e))},onIndicatorKeyDown:function(e,i){switch(e.code){case"Enter":case"NumpadEnter":case"Space":this.stopSlideShow(),this.$emit("update:activeIndex",i),e.preventDefault();break;case"ArrowRight":this.onRightKey();break;case"ArrowLeft":this.onLeftKey();break;case"Home":this.onHomeKey(),e.preventDefault();break;case"End":this.onEndKey(),e.preventDefault();break;case"Tab":this.onTabKey();break;case"ArrowDown":case"ArrowUp":case"PageUp":case"PageDown":e.preventDefault();break}},onRightKey:function(){var e=y(c.find(this.$refs.indicatorContent,'[data-pc-section="indicator"]')),i=this.findFocusedIndicatorIndex();this.changedFocusedIndicator(i,i+1===e.length?e.length-1:i+1)},onLeftKey:function(){var e=this.findFocusedIndicatorIndex();this.changedFocusedIndicator(e,e-1<=0?0:e-1)},onHomeKey:function(){var e=this.findFocusedIndicatorIndex();this.changedFocusedIndicator(e,0)},onEndKey:function(){var e=y(c.find(this.$refs.indicatorContent,'[data-pc-section="indicator"]')),i=this.findFocusedIndicatorIndex();this.changedFocusedIndicator(i,e.length-1)},onTabKey:function(){var e=y(c.find(this.$refs.indicatorContent,'[data-pc-section="indicator"]')),i=e.findIndex(function(a){return c.getAttribute(a,"data-p-highlight")===!0}),n=c.findSingle(this.$refs.indicatorContent,'[data-pc-section="indicator"] > button[tabindex="0"]'),r=e.findIndex(function(a){return a===n.parentElement});e[r].children[0].tabIndex="-1",e[i].children[0].tabIndex="0"},findFocusedIndicatorIndex:function(){var e=y(c.find(this.$refs.indicatorContent,'[data-pc-section="indicator"]')),i=c.findSingle(this.$refs.indicatorContent,'[data-pc-section="indicator"] > button[tabindex="0"]');return e.findIndex(function(n){return n===i.parentElement})},changedFocusedIndicator:function(e,i){var n=y(c.find(this.$refs.indicatorContent,'[data-pc-section="indicator"]'));n[e].children[0].tabIndex="-1",n[i].children[0].tabIndex="0",n[i].children[0].focus()},isIndicatorItemActive:function(e){return this.activeIndex===e},isNavBackwardDisabled:function(){return!this.circular&&this.activeIndex===0},isNavForwardDisabled:function(){return!this.circular&&this.activeIndex===this.value.length-1},ariaSlideNumber:function(e){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.slideNumber.replace(/{slideNumber}/g,e):void 0},ariaPageLabel:function(e){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.pageLabel.replace(/{page}/g,e):void 0}},computed:{activeItem:function(){return this.value[this.activeIndex]},ariaSlideLabel:function(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.slide:void 0}},components:{ChevronLeftIcon:U,ChevronRightIcon:G},directives:{ripple:N}},ue=["disabled"],ce=["id","aria-label","aria-roledescription"],de=["disabled"],he=["aria-label","aria-selected","aria-controls","onClick","onMouseenter","onKeydown","data-p-highlight"],me=["tabindex"]
Line truncated
|
||||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function pe(t,e){if(t){if(typeof t=="string")return V(t,e);var i=Object.prototype.toString.call(t).slice(8,-1);if(i==="Object"&&t.constructor&&(i=t.constructor.name),i==="Map"||i==="Set")return Array.from(t);if(i==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i))return V(t,e)}}function be(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function Ie(t){if(Array.isArray(t))return V(t)}function V(t,e){(e==null||e>t.length)&&(e=t.length);for(var i=0,n=new Array(e);i<e;i++)n[i]=t[i];return n}var W={name:"GalleriaThumbnails",hostName:"Galleria",extends:O,emits:["stop-slideshow","update:activeIndex"],props:{containerId:{type:String,default:null},value:{type:Array,default:null},numVisible:{type:Number,default:3},activeIndex:{type:Number,default:0},isVertical:{type:Boolean,default:!1},slideShowActive:{type:Boolean,default:!1},circular:{type:Boolean,default:!1},responsiveOptions:{type:Array,default:null},contentHeight:{type:String,default:"300px"},showThumbnailNavigators:{type:Boolean,default:!0},templates:{type:null,default:null},prevButtonProps:{type:null,default:null},nextButtonProps:{type:null,default:null}},startPos:null,thumbnailsStyle:null,sortedResponsiveOptions:null,data:function(){return{d_numVisible:this.numVisible,d_oldNumVisible:this.numVisible,d_activeIndex:this.activeIndex,d_oldActiveItemIndex:this.activeIndex,totalShiftedItems:0,page:0}},watch:{numVisible:function(e,i){this.d_numVisible=e,this.d_oldNumVisible=i},activeIndex:function(e,i){this.d_activeIndex=e,this.d_oldActiveItemIndex=i}},mounted:function(){this.createStyle(),this.calculatePosition(),this.responsiveOptions&&this.bindDocumentListeners()},updated:function(){var e=this.totalShiftedItems;(this.d_oldNumVisible!==this.d_numVisible||this.d_oldActiveItemIndex!==this.d_activeIndex)&&(this.d_activeIndex<=this.getMedianItemIndex()?e=0:this.value.length-this.d_numVisible+this.getMedianItemIndex()<this.d_activeIndex?e=this.d_numVisible-this.value.length:this.value.length-this.d_numVisible<this.d_activeIndex&&this.d_numVisible%2===0?e=this.d_activeIndex*-1+this.getMedianItemIndex()+1:e=this.d_activeIndex*-1+this.getMedianItemIndex(),e!==this.totalShiftedItems&&(this.totalShiftedItems=e),this.$refs.itemsContainer.style.transform=this.isVertical?"translate3d(0, ".concat(e*(100/this.d_numVisible),"%, 0)"):"translate3d(".concat(e*(100/this.d_numVisible),"%, 0, 0)"),this.d_oldActiveItemIndex!==this.d_activeIndex&&(document.body.setAttribute("data-p-items-hidden","false"),!this.isUnstyled&&c.removeClass(this.$refs.itemsContainer,"p-items-hidden"),this.$refs.itemsContainer.style.transition="transform 500ms ease 0s"),this.d_oldActiveItemIndex=this.d_activeIndex,this.d_oldNumVisible=this.d_numVisible)},beforeUnmount:function(){this.responsiveOptions&&this.unbindDocumentListeners(),this.thumbnailsStyle&&this.thumbnailsStyle.parentNode.removeChild(this.thumbnailsStyle)},methods:{step:function(e){var i=this.totalShiftedItems+e;e<0&&-1*i+this.d_numVisible>this.value.length-1?i=this.d_numVisible-this.value.length:e>0&&i>0&&(i=0),this.circular&&(e<0&&this.value.length-1===this.d_activeIndex?i=0:e>0&&this.d_activeIndex===0&&(i=this.d_numVisible-this.value.length)),this.$refs.itemsContainer&&(document.body.setAttribute("data-p-items-hidden","false"),!this.isUnstyled&&c.removeClass(this.$refs.itemsContainer,"p-items-hidden"),this.$refs.itemsContainer.style.transform=this.isVertical?"translate3d(0, ".concat(i*(100/this.d_numVisible),"%, 0)"):"translate3d(".concat(i*(100/this.d_numVisible),"%, 0, 0)"),this.$refs.itemsContainer.style.transition="transform 500ms ease 0s"),this.totalShiftedItems=i},stopSlideShow:function(){this.slideShowActive&&this.stopSlideShow&&this.$emit("stop-slideshow")},getMedianItemIndex:function(){var e=Math.floor(this.d_numVisible/2);return this.d_numVisible%2?e:e-1},navBackward:function(e){this.stopSlideShow();var i=this.d_activeIndex!==0?this.d_activeIndex-1:0,n=i+this.totalShiftedItems;this.d_numVisible-n-1>this.getMedianItemIndex()&&(-1*this.totalShiftedItems!==0||this.circular)&&this.step(1);var r=this.circular&&this.d_activeIndex===0?this.value.length-1:i;this.$emit("update:activeIndex",r),e.cancelable&&e.preventDefault()},navForward:function(e){this.stopSlideShow();var i=this.d_activeIndex===this.value.length-1?this.value.length-1:this.d_activeIndex+1;i+this.totalShiftedItems>this.getMedianItemIndex()&&(-1*this.totalShiftedItems<this.getTotalPageNumber()-1||this.circular)&&this.step(-1);var n=this.circular&&this.value.length-1===this.d_activeIndex?0:i;this.$emit("update:activeIndex",n),e.cancelable&&e.preventDefault()},onItemClick:function(e){this.stopSlideShow();var i=e;if(i!==this.d_activeIndex){var n=i+this.totalShiftedItems,r=0;i<this.d_activeIndex?(r=this.d_numVisible-n-1-this.getMedianItemIndex(),r>0&&-1*this.totalShiftedItems!==0&&this.step(r)):(r=this.getMedianItemIndex()-n,r<0&&-1*this
Line truncated
|
||||
#`.concat(this.containerId,` [data-pc-section="thumbnailitem"] {
|
||||
flex: 1 0 `).concat(100/this.d_numVisible,`%
|
||||
}
|
||||
`);if(this.responsiveOptions&&!this.isUnstyled){this.sortedResponsiveOptions=T(this.responsiveOptions);var n=$.localeComparator();this.sortedResponsiveOptions.sort(function(v,u){var o=v.breakpoint,m=u.breakpoint;return $.sort(o,m,-1,n)});for(var r=0;r<this.sortedResponsiveOptions.length;r++){var a=this.sortedResponsiveOptions[r];i+=`
|
||||
@media screen and (max-width: `.concat(a.breakpoint,`) {
|
||||
#`).concat(this.containerId,` .p-galleria-thumbnail-item {
|
||||
flex: 1 0 `).concat(100/a.numVisible,`%
|
||||
}
|
||||
}
|
||||
`)}}this.thumbnailsStyle.innerHTML=i},calculatePosition:function(){if(this.$refs.itemsContainer&&this.sortedResponsiveOptions){for(var e=window.innerWidth,i={numVisible:this.numVisible},n=0;n<this.sortedResponsiveOptions.length;n++){var r=this.sortedResponsiveOptions[n];parseInt(r.breakpoint,10)>=e&&(i=r)}this.d_numVisible!==i.numVisible&&(this.d_numVisible=i.numVisible)}},bindDocumentListeners:function(){var e=this;this.documentResizeListener||(this.documentResizeListener=function(){e.calculatePosition()},window.addEventListener("resize",this.documentResizeListener))},unbindDocumentListeners:function(){this.documentResizeListener&&(window.removeEventListener("resize",this.documentResizeListener),this.documentResizeListener=null)},isNavBackwardDisabled:function(){return!this.circular&&this.d_activeIndex===0||this.value.length<=this.d_numVisible},isNavForwardDisabled:function(){return!this.circular&&this.d_activeIndex===this.value.length-1||this.value.length<=this.d_numVisible},firstItemAciveIndex:function(){return this.totalShiftedItems*-1},lastItemActiveIndex:function(){return this.firstItemAciveIndex()+this.d_numVisible-1},isItemActive:function(e){return this.firstItemAciveIndex()<=e&&this.lastItemActiveIndex()>=e},ariaPageLabel:function(e){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.pageLabel.replace(/{page}/g,e):void 0}},computed:{ariaPrevButtonLabel:function(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.prevPageLabel:void 0},ariaNextButtonLabel:function(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.nextPageLabel:void 0}},components:{ChevronLeftIcon:U,ChevronRightIcon:G,ChevronUpIcon:te,ChevronDownIcon:ee},directives:{ripple:N}};function S(t){"@babel/helpers - typeof";return S=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},S(t)}function D(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(t,r).enumerable})),i.push.apply(i,n)}return i}function P(t){for(var e=1;e<arguments.length;e++){var i=arguments[e]!=null?arguments[e]:{};e%2?D(Object(i),!0).forEach(function(n){ge(t,n,i[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(i)):D(Object(i)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(i,n))})}return t}function ge(t,e,i){return e=ye(e),e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}function ye(t){var e=Se(t,"string");return S(e)=="symbol"?e:String(e)}function Se(t,e){if(S(t)!="object"||!t)return t;var i=t[Symbol.toPrimitive];if(i!==void 0){var n=i.call(t,e||"default");if(S(n)!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var we=["disabled","aria-label"],xe=["data-p-active","aria-selected","aria-controls","onKeydown","data-p-galleria-thumbnail-item-current","data-p-galleria-thumbnail-item-active","data-p-galleria-thumbnail-item-start","data-p-galleria-thumbnail-item-end"],Pe=["tabindex","aria-label","aria-current","onClick"],Ae=["disabled","aria-label"];function Ce(t,e,i,n,r,a){var v=C("ripple");return s(),d("div",l({class:t.cx("thumbnailWrapper")},t.ptm("thumbnailWrapper")),[b("div",l({class:t.cx("thumbnailContainer")},t.ptm("thumbnailContainer")),[i.showThumbnailNavigators?g((s(),d("button",l({key:0,class:t.cx("previousThumbnailButton"),disabled:a.isNavBackwardDisabled(),type:"button","aria-label":a.ariaPrevButtonLabel,onClick:e[0]||(e[0]=function(u){return a.navBackward(u)})},P(P({},i.prevButtonProps),t.ptm("previousThumbnailButton")),{"data-pc-group-section":"thumbnailnavigator"}),[(s(),f(p(i.templates.previousthumbnailicon||(i.isVertical?"ChevronUpIcon":"ChevronLeftIcon")),l({class:t.cx("previousThumbnailIcon")},t.ptm("previousThumbnailIcon")),null,16,["class"]))],16,we)),[[v]]):h("",!0),b("div",l({class:t.cx("thumbnailItemsContainer"),style:{height:i.isVertical?i.contentHeight:""}},t.ptm("thumbnailItemsContainer")),[b("div",l({ref:"itemsContainer",class:t.cx("thumbnailItems"),role:"tablist",onTransitionend:e[1]||(e[1]=function(u){return a.onTransitionEnd(u)}),onTouchstart:e[2]||(e[2]=function(u){return a.onTouchStart(u)}),onTouchmove:e[3]||(e[3]=function(u){return a.onTouchMove(u)}),onTouchend:e[4]||(e[4]=function(u){return a.onTouchEnd(u)})},t.ptm("thumbnailItems")),[(s(!0),d(R,null,H(i.value,function(u,o){return s(),d("div",l({key:"p-galleria-thumbnail-item-".concat(o),class:t.cx("thumbnailItem",{index:o,activeIndex:i.activeIndex}),role:"tab","data-p-active":i.activeIndex===o,"aria-selected":i.activeIndex===o,"aria-controls":i.containerId+"_item_"+o,onKeydown:function(I){return a.onThumbnailKeydown(I,o)}},t.ptm("thumbnailIt
Line truncated
|
||||
@@ -1,5 +0,0 @@
|
||||
import{a3 as we,aw as Oe,a4 as C,a7 as d,ah as Q,aa as h,t as c,v as p,P as g,ab as k,O as y,B as Te,y as $,ae as G,a9 as ze,i as T,Z as Ke,$ as Me,N as P,W as v,A as S,x as w,Q as K,Y as m,a1 as Y}from"./CdAotn7S.js";import{s as fe}from"./BO3ltiFH.js";import Ee from"./BMxgtM-u.js";import{s as L}from"./AdkLG1re.js";import{s as Z,a as J,b as ee}from"./C1z1il7n.js";import je from"./B1YYYcwB.js";import{s as Fe}from"./DtEiWfmc.js";import{s as Ie}from"./BwlcA3rq.js";import{s as xe}from"./D1Sip8Hx.js";import{s as De}from"./2QbcHjol.js";import"./CYhL7ix_.js";import"./DMn_A95H.js";import"./4TRLVPYt.js";import"./DUyMz6Kq.js";import"./B3yzUv7e.js";import"./eLdOjEri.js";import"./BIoHdha8.js";import"./BIUw7GKS.js";import"./BtwAl4SI.js";import"./Dbq0hxqO.js";import"./DxKOBqhC.js";import"./CzF1vgty.js";import"./RtM6PxTR.js";import"./DREobrkF.js";import"./CQay6pFc.js";var Re={root:function(e){var n=e.instance,r=e.props;return["p-treetable p-component",{"p-treetable-hoverable-rows":r.rowHover||n.rowSelectionMode,"p-treetable-auto-layout":r.autoLayout,"p-treetable-resizable":r.resizableColumns,"p-treetable-resizable-fit":r.resizableColumns&&r.columnResizeMode==="fit","p-treetable-gridlines":r.showGridlines,"p-treetable-scrollable":r.scrollable,"p-treetable-scrollable-vertical":r.scrollable&&r.scrollDirection==="vertical","p-treetable-scrollable-horizontal":r.scrollable&&r.scrollDirection==="horizontal","p-treetable-scrollable-both":r.scrollable&&r.scrollDirection==="both","p-treetable-flex-scrollable":r.scrollable&&r.scrollHeight==="flex","p-treetable-responsive-scroll":r.responsiveLayout==="scroll","p-treetable-sm":r.size==="small","p-treetable-lg":r.size==="large"}]},loadingWrapper:"p-treetable-loading",loadingOverlay:"p-treetable-loading-overlay p-component-overlay",loadingIcon:"p-treetable-loading-icon",header:"p-treetable-header",paginator:function(e){var n=e.instance;return n.paginatorTop?"p-paginator-top":n.paginatorBottom?"p-paginator-bottom":""},wrapper:"p-treetable-wrapper",thead:"p-treetable-thead",headerCell:function(e){var n=e.instance,r=e.props,i=e.column;return i&&n.hasColumnFilter()?["p-filter-column",{"p-frozen-column":n.columnProp(i,"frozen")}]:[{"p-sortable-column":n.columnProp("sortable"),"p-resizable-column":r.resizableColumns,"p-highlight":n.isColumnSorted(),"p-frozen-column":n.columnProp("frozen")}]},columnResizer:"p-column-resizer",headerTitle:"p-column-title",sortIcon:"p-sortable-column-icon",sortBadge:"p-sortable-column-badge",tbody:"p-treetable-tbody",row:function(e){var n=e.instance;return[{"p-highlight":n.selected}]},bodyCell:function(e){var n=e.instance;return[{"p-frozen-column":n.columnProp("frozen")}]},rowToggler:"p-treetable-toggler p-link",rowTogglerIcon:"p-tree-toggler-icon",rowCheckbox:function(e){var n=e.instance;return["p-treetable-checkbox",{"p-indeterminate":n.partialChecked}]},emptyMessage:"p-treetable-emptymessage",tfoot:"p-treetable-tfoot",footerCell:function(e){var n=e.instance;return[{"p-frozen-column":n.columnProp("frozen")}]},footer:"p-treetable-footer",resizeHelper:"p-column-resizer-helper p-highlight"},Ae=we.extend({name:"treetable",classes:Re}),Ne={name:"BaseTreeTable",extends:L,props:{value:{type:null,default:null},dataKey:{type:[String,Function],default:"key"},expandedKeys:{type:null,default:null},selectionKeys:{type:null,default:null},selectionMode:{type:String,default:null},metaKeySelection:{type:Boolean,default:!1},rows:{type:Number,default:0},first:{type:Number,default:0},totalRecords:{type:Number,default:0},paginator:{type:Boolean,default:!1},paginatorPosition:{type:String,default:"bottom"},alwaysShowPaginator:{type:Boolean,default:!0},paginatorTemplate:{type:String,default:"FirstPageLink PrevPageLink PageLinks NextPageLink LastPageLink RowsPerPageDropdown"},pageLinkSize:{type:Number,default:5},rowsPerPageOptions:{type:Array,default:null},currentPageReportTemplate:{type:String,default:"({currentPage} of {totalPages})"},lazy:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},loadingIcon:{type:String,default:void 0},loadingMode:{type:String,default:"mask"},rowHover:{type:Boolean,default:!1},autoLayout:{type:Boolean,default:!1},sortField:{type:[String,Function],default:null},sortOrder:{type:Number,default:null},defaultSortOrder:{type:Number,default:1},multiSortMeta:{type:Array,default:null},sortMode:{type:String,default:"single"},removableSort:{type:Boolean,default:!1},filters:{type:Object,default:null},filterMode:{type:String,default:"lenient"},filterLocale:{type:String,default:void 0},resizableColumns:{type:Boolean,default:!1},columnResizeMode:{type:String,default:"fit"},indentation:{type:Number,default:1},showGridlines:{type:Boolean,default:!1},scrollable:{type:Boolean,default:!1},scrollDirection:{type:String,default:"vertical"},scrollHeight:{type:String,default:null},responsiveLayout:{type:String,default:null},size:{type:String,default:null},tableProps:{type:Object,default:null}},style:Ae,provide:function(){return{$parentInstance:this}}},he={name:"FooterCelLine truncated
|
||||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var o=!0,u=!1,s;return{s:function(){n=n.call(t)},n:function(){var f=n.next();return o=f.done,f},e:function(f){u=!0,s=f},f:function(){try{!o&&n.return!=null&&n.return()}finally{if(u)throw s}}}}function ae(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),n.push.apply(n,r)}return n}function V(t){for(var e=1;e<arguments.length;e++){var n=arguments[e]!=null?arguments[e]:{};e%2?ae(Object(n),!0).forEach(function(r){et(t,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):ae(Object(n)).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(n,r))})}return t}function et(t,e,n){return e=tt(e),e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function tt(t){var e=nt(t,"string");return R(e)=="symbol"?e:String(e)}function nt(t,e){if(R(t)!="object"||!t)return t;var n=t[Symbol.toPrimitive];if(n!==void 0){var r=n.call(t,e||"default");if(R(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function se(t){return it(t)||ot(t)||ye(t)||rt()}function rt(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
||||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ye(t,e){if(t){if(typeof t=="string")return _(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);if(n==="Object"&&t.constructor&&(n=t.constructor.name),n==="Map"||n==="Set")return Array.from(t);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _(t,e)}}function ot(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function it(t){if(Array.isArray(t))return _(t)}function _(t,e){(e==null||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}var ge={name:"TreeTableRow",hostName:"TreeTable",extends:L,emits:["node-click","node-toggle","checkbox-change","nodeClick","nodeToggle","checkboxChange"],props:{node:{type:null,default:null},dataKey:{type:[String,Function],default:"key"},parentNode:{type:null,default:null},columns:{type:null,default:null},expandedKeys:{type:null,default:null},selectionKeys:{type:null,default:null},selectionMode:{type:String,default:null},level:{type:Number,default:0},indentation:{type:Number,default:1},tabindex:{type:Number,default:-1},ariaSetSize:{type:Number,default:null},ariaPosInset:{type:Number,default:null},loadingMode:{type:String,default:"mask"},templates:{type:Object,default:null}},nodeTouched:!1,methods:{columnProp:function(e,n){return C.getVNodeProp(e,n)},toggle:function(){this.$emit("node-toggle",this.node)},onClick:function(e){d.isClickable(e.target)||d.getAttribute(e.target,"data-pc-section")==="rowtoggler"||d.getAttribute(e.target,"data-pc-section")==="rowtogglericon"||e.target.tagName==="path"||(this.setTabIndexForSelectionMode(e,this.nodeTouched),this.$emit("node-click",{originalEvent:e,nodeTouched:this.nodeTouched,node:this.node}),this.nodeTouched=!1)},onTouchEnd:function(){this.nodeTouched=!0},nodeKey:function(e){return C.resolveFieldData(e,this.dataKey)},onKeyDown:function(e,n){switch(e.code){case"ArrowDown":this.onArrowDownKey(e);break;case"ArrowUp":this.onArrowUpKey(e);break;case"ArrowLeft":this.onArrowLeftKey(e);break;case"ArrowRight":this.onArrowRightKey(e);break;case"Home":this.onHomeKey(e);break;case"End":this.onEndKey(e);break;case"Enter":case"NumpadEnter":case"Space":d.isClickable(e.target)||this.onEnterKey(e,n);break;case"Tab":this.onTabKey(e);break}},onArrowDownKey:function(e){var n=e.currentTarget.nextElementSibling;n&&this.focusRowChange(e.currentTarget,n),e.preventDefault()},onArrowUpKey:function(e){var n=e.currentTarget.previousElementSibling;n&&this.focusRowChange(e.currentTarget,n),e.preventDefault()},onArrowRightKey:function(e){var n=this,r=d.findSingle(e.currentTarget,"button").style.visibility==="hidden",i=d.findSingle(this.$refs.node,'[data-pc-section="rowtoggler"]');r||(!this.expanded&&i.click(),this.$nextTick(function(){n.onArrowDownKey(e)}),e.preventDefault())},onArrowLeftKey:function(e){if(!(this.level===0&&!this.expanded)){var n=e.currentTarget,r=d.findSingle(n,"button").style.visibility==="hidden",i=d.findSingle(n,'[data-pc-section="rowtoggler"]');if(this.expanded&&!r){i.click();return}var o=this.findBeforeClickableNode(n);o&&this.focusRowChange(n,o)}},onHomeKey:function(e){var n=d.findSingle(e.currentTarget.parentElement,'tr[aria-level="'.concat(this.level+1,'"]'));n&&d.focus(n),e.preventDefault()},onEndKey:function(e){var n=d.find(e.currentTarget.parentElement,'tr[aria-level="'.concat(this.level+1,'"]')),r=n[n.length-1];d.focus(r),e.preventDefault()},onEnterKey:function(e){if(e.preventDefault(),this.setTabIndexForSelectionMode(e,this.nodeTouched),this.selectionMode==="checkbox"){this.toggleCheckbox();return}this.$emit("node-click",{originalEvent:e,nodeTouched:this.nodeTouched,node:this.node}),this.nodeTouched=!1},onTabKey:function(){var e=se(d.find(this.$refs.node.parentElement,"tr")),n=e.some(function(i){return d.getAttribute(i,"data-p-highlight")||i.getAttribute("aria-checked")==="true"});if(e.forEach(function(i){i.tabIndex=-1}),n){var r=e.filter(function(i){return d.getAttribute(i,"data-p-highlight")||i.getAttribute("aria-checked")==="true"});r[0].tabIndex=0;return}e[0].tabIndex=0},focusRowChange:function(e,n){e.tabIndex="-1",n.tabIndex="0",d.focus(n)},findBeforeClickableNode:function(e){var n=e.previousElementSibling;if(n){var r=n.querySelector("button");return r&&r.style.visibility!=="hidden"?n:this.findBeforeClickableNode(n)}return null},toggleCheckbox:function(){var e=this.selectionKeys?V({},this.selectionKeys):{},n=!this.checked;this.propagateDown(this.node,n,e),this.$emit("checkbox-change",{node:this.node,check:n,selectionKeys:e})},propagateDown:function(e,n,r){if(n?r[this.nodeKey(e)]={checked:!0,partialChecked:!1}:delete r[this.nodeKey(e)],e.children&&e.children.length){var i=W(e.children),o;try{for(i.s();!(o=i.n()).done;){var u=o.value;this.propagateDown(u,n,r)}}catch(s){i.e(s)}finally{i.f()}}},propagateUp:function(e){var n=e.check,r=V({},e.selectionKeys),i=0,o=!1,u=W(this.node.children),s;try{for(u.s();!(s=u.n()).done;){var a=s.value;r[th
Line truncated
|
||||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var o=!0,u=!1,s;return{s:function(){n=n.call(t)},n:function(){var f=n.next();return o=f.done,f},e:function(f){u=!0,s=f},f:function(){try{!o&&n.return!=null&&n.return()}finally{if(u)throw s}}}}function ue(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable})),n.push.apply(n,r)}return n}function O(t){for(var e=1;e<arguments.length;e++){var n=arguments[e]!=null?arguments[e]:{};e%2?ue(Object(n),!0).forEach(function(r){st(t,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):ue(Object(n)).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(n,r))})}return t}function st(t,e,n){return e=ut(e),e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function ut(t){var e=ct(t,"string");return A(e)=="symbol"?e:String(e)}function ct(t,e){if(A(t)!="object"||!t)return t;var n=t[Symbol.toPrimitive];if(n!==void 0){var r=n.call(t,e||"default");if(A(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}function F(t){return ht(t)||ft(t)||be(t)||dt()}function dt(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
||||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function be(t,e){if(t){if(typeof t=="string")return U(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);if(n==="Object"&&t.constructor&&(n=t.constructor.name),n==="Map"||n==="Set")return Array.from(t);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return U(t,e)}}function ft(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function ht(t){if(Array.isArray(t))return U(t)}function U(t,e){(e==null||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}var pt={name:"TreeTable",extends:Ne,inheritAttrs:!1,emits:["node-expand","node-collapse","update:expandedKeys","update:selectionKeys","node-select","node-unselect","update:first","update:rows","page","update:sortField","update:sortOrder","update:multiSortMeta","sort","filter","column-resize-end"],provide:function(){return{$columns:this.d_columns}},data:function(){return{d_expandedKeys:this.expandedKeys||{},d_first:this.first,d_rows:this.rows,d_sortField:this.sortField,d_sortOrder:this.sortOrder,d_multiSortMeta:this.multiSortMeta?F(this.multiSortMeta):[],hasASelectedNode:!1,d_columns:new Oe({type:"Column"})}},documentColumnResizeListener:null,documentColumnResizeEndListener:null,lastResizeHelperX:null,resizeColumnElement:null,watch:{expandedKeys:function(e){this.d_expandedKeys=e},first:function(e){this.d_first=e},rows:function(e){this.d_rows=e},sortField:function(e){this.d_sortField=e},sortOrder:function(e){this.d_sortOrder=e},multiSortMeta:function(e){this.d_multiSortMeta=e}},mounted:function(){this.scrollable&&this.scrollDirection!=="vertical"&&this.updateScrollWidth()},updated:function(){this.scrollable&&this.scrollDirection!=="vertical"&&this.updateScrollWidth()},beforeUnmount:function(){this.d_columns.clear()},methods:{columnProp:function(e,n){return C.getVNodeProp(e,n)},ptHeaderCellOptions:function(e){return{context:{frozen:this.columnProp(e,"frozen")}}},onNodeToggle:function(e){var n=this.nodeKey(e);this.d_expandedKeys[n]?(delete this.d_expandedKeys[n],this.$emit("node-collapse",e)):(this.d_expandedKeys[n]=!0,this.$emit("node-expand",e)),this.d_expandedKeys=O({},this.d_expandedKeys),this.$emit("update:expandedKeys",this.d_expandedKeys)},onNodeClick:function(e){if(this.rowSelectionMode&&e.node.selectable!==!1){var n=e.nodeTouched?!1:this.metaKeySelection,r=n?this.handleSelectionWithMetaKey(e):this.handleSelectionWithoutMetaKey(e);this.$emit("update:selectionKeys",r)}},nodeKey:function(e){return C.resolveFieldData(e,this.dataKey)},handleSelectionWithMetaKey:function(e){var n=e.originalEvent,r=e.node,i=this.nodeKey(r),o=n.metaKey||n.ctrlKey,u=this.isNodeSelected(r),s;return u&&o?(this.isSingleSelectionMode()?s={}:(s=O({},this.selectionKeys),delete s[i]),this.$emit("node-unselect",r)):(this.isSingleSelectionMode()?s={}:this.isMultipleSelectionMode()&&(s=o?this.selectionKeys?O({},this.selectionKeys):{}:{}),s[i]=!0,this.$emit("node-select",r)),s},handleSelectionWithoutMetaKey:function(e){var n=e.node,r=this.nodeKey(n),i=this.isNodeSelected(n),o;return this.isSingleSelectionMode()?i?(o={},this.$emit("node-unselect",n)):(o={},o[r]=!0,this.$emit("node-select",n)):i?(o=O({},this.selectionKeys),delete o[r],this.$emit("node-unselect",n)):(o=this.selectionKeys?O({},this.selectionKeys):{},o[r]=!0,this.$emit("node-select",n)),o},onCheckboxChange:function(e){this.$emit("update:selectionKeys",e.selectionKeys),e.check?this.$emit("node-select",e.node):this.$emit("node-unselect",e.node)},isSingleSelectionMode:function(){return this.selectionMode==="single"},isMultipleSelectionMode:function(){return this.selectionMode==="multiple"},onPage:function(e){this.d_first=e.first,this.d_rows=e.rows;var n=this.createLazyLoadEvent(e);n.pageCount=e.pageCount,n.page=e.page,this.d_expandedKeys={},this.$emit("update:expandedKeys",this.d_expandedKeys),this.$emit("update:first",this.d_first),this.$emit("update:rows",this.d_rows),this.$emit("page",n)},resetPage:function(){this.d_first=0,this.$emit("update:first",this.d_first)},getFilterColumnHeaderClass:function(e){return[this.cx("headerCell",{column:e}),this.columnProp(e,"filterHeaderClass")]},onColumnHeaderClick:function(e){var n=e.originalEvent,r=e.column;if(this.columnProp(r,"sortable")){var i=n.target,o=this.columnProp(r,"sortField")||this.columnProp(r,"field");if(d.getAttribute(i,"data-p-sortable-column")===!0||d.getAttribute(i,"data-pc-section")==="headertitle"||d.getAttribute(i,"data-pc-section")==="sorticon"||d.getAttribute(i.parentElement,"data-pc-section")==="sorticon"||d.getAttribute(i.parentElement.parentElement,"data-pc-section")==="sorticon"||i.closest('[data-p-sortable-column="true"]')){if(d.clearSelection(),this.sortMode==="single")this.d_sortField===o?this.removableSort&&this.d_sortOrder*-1===this.defaultSortOrder?(this.d_sortOrder=null,this.d_sortField=null):this.d_sortOrder=this.d_sortOrder*-1:(this.d_sortOrder=this.defaultSortOrder,this.d_sor
Line truncated
|
||||
@@ -1 +0,0 @@
|
||||
import{a3 as o,a7 as h,t as d,v as c,aa as p}from"./CdAotn7S.js";import{s as m}from"./AdkLG1re.js";var g={root:function(e){var s=e.props,t=e.instance;return["p-inputmask p-inputtext p-component",{"p-filled":t.filled,"p-invalid":s.invalid,"p-variant-filled":s.variant?s.variant==="filled":t.$primevue.config.inputStyle==="filled"}]}},k=o.extend({name:"inputmask",classes:g}),v={name:"BaseInputMask",extends:m,props:{modelValue:null,slotChar:{type:String,default:"_"},mask:{type:String,default:null},autoClear:{type:Boolean,default:!0},unmask:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},invalid:{type:Boolean,default:!1},variant:{type:String,default:null}},style:k},b={name:"InputMask",extends:v,inheritAttrs:!1,emits:["update:modelValue","focus","blur","keydown","complete","keypress","paste"],watch:{mask:function(e,s){s!==e&&this.initMask()}},mounted:function(){this.initMask()},updated:function(){this.isValueUpdated()&&this.updateValue()},methods:{onInput:function(e){this.androidChrome?this.handleAndroidInput(e):this.handleInputChange(e),this.$emit("update:modelValue",e.target.value)},onFocus:function(e){var s=this;if(!this.readonly){this.focus=!0,clearTimeout(this.caretTimeoutId);var t;this.focusText=this.$el.value,t=this.checkVal(),this.caretTimeoutId=setTimeout(function(){s.$el===document.activeElement&&(s.writeBuffer(),t===s.mask.replace("?","").length?s.caret(0,t):s.caret(t))},10),this.$emit("focus",e)}},onBlur:function(e){if(this.focus=!1,this.checkVal(),this.updateModel(e),this.$el.value!==this.focusText){var s=document.createEvent("HTMLEvents");s.initEvent("change",!0,!1),this.$el.dispatchEvent(s)}this.$emit("blur",e)},onKeyDown:function(e){if(!this.readonly){var s=e.code,t,i,a,n=/iphone/i.test(h.getUserAgent());this.oldVal=this.$el.value,s==="Backspace"||s==="Delete"||n&&s==="Escape"?(t=this.caret(),i=t.begin,a=t.end,a-i===0&&(i=s!=="Delete"?this.seekPrev(i):a=this.seekNext(i-1),a=s==="Delete"?this.seekNext(a):a),this.clearBuffer(i,a),this.shiftL(i,a-1),this.updateModel(e),e.preventDefault()):s==="Enter"?(this.$el.blur(),this.updateModel(e)):s==="Escape"&&(this.$el.value=this.focusText,this.caret(0,this.checkVal()),this.updateModel(e),e.preventDefault()),this.$emit("keydown",e)}},onKeyPress:function(e){var s=this;if(!this.readonly){var t=e.code,i=this.caret(),a,n,r,u;if(!(e.ctrlKey||e.altKey||e.metaKey||e.shiftKey||e.key==="CapsLock"||e.key==="Escape"||e.key==="Tab")){if(t&&t!=="Enter"){if(i.end-i.begin!==0&&(this.clearBuffer(i.begin,i.end),this.shiftL(i.begin,i.end-1)),a=this.seekNext(i.begin-1),a<this.len&&(n=e.key,this.tests[a].test(n))){if(this.shiftR(a),this.buffer[a]=n,this.writeBuffer(),r=this.seekNext(a),/android/i.test(h.getUserAgent())){var f=function(){s.caret(r)};setTimeout(f,0)}else this.caret(r);i.begin<=this.lastRequiredNonMaskPos&&(u=this.isCompleted())}e.preventDefault()}this.updateModel(e),u&&this.$emit("complete",e),this.$emit("keypress",e)}}},onPaste:function(e){this.handleInputChange(e),this.$emit("paste",e)},caret:function(e,s){var t,i,a;if(!(!this.$el.offsetParent||this.$el!==document.activeElement))if(typeof e=="number")i=e,a=typeof s=="number"?s:i,this.$el.setSelectionRange?this.$el.setSelectionRange(i,a):this.$el.createTextRange&&(t=this.$el.createTextRange(),t.collapse(!0),t.moveEnd("character",a),t.moveStart("character",i),t.select());else return this.$el.setSelectionRange?(i=this.$el.selectionStart,a=this.$el.selectionEnd):document.selection&&document.selection.createRange&&(t=document.selection.createRange(),i=0-t.duplicate().moveStart("character",-1e5),a=i+t.text.length),{begin:i,end:a}},isCompleted:function(){for(var e=this.firstNonMaskPos;e<=this.lastRequiredNonMaskPos;e++)if(this.tests[e]&&this.buffer[e]===this.getPlaceholder(e))return!1;return!0},getPlaceholder:function(e){return e<this.slotChar.length?this.slotChar.charAt(e):this.slotChar.charAt(0)},seekNext:function(e){for(;++e<this.len&&!this.tests[e];);return e},seekPrev:function(e){for(;--e>=0&&!this.tests[e];);return e},shiftL:function(e,s){var t,i;if(!(e<0)){for(t=e,i=this.seekNext(s);t<this.len;t++)if(this.tests[t]){if(i<this.len&&this.tests[t].test(this.buffer[i]))this.buffer[t]=this.buffer[i],this.buffer[i]=this.getPlaceholder(i);else break;i=this.seekNext(i)}this.writeBuffer(),this.caret(Math.max(this.firstNonMaskPos,e))}},shiftR:function(e){var s,t,i,a;for(s=e,t=this.getPlaceholder(e);s<this.len;s++)if(this.tests[s])if(i=this.seekNext(s),a=this.buffer[s],this.buffer[s]=t,i<this.len&&this.tests[i].test(a))t=a;else break},handleAndroidInput:function(e){var s=this.$el.value,t=this.caret();if(this.oldVal&&this.oldVal.length&&this.oldVal.length>s.length){for(this.checkVal(!0);t.begin>0&&!this.tests[t.begin-1];)t.begin--;if(t.begin===0)for(;t.begin<this.firstNonMaskPos&&!this.tests[t.begin];)t.begin++;this.caret(t.begin,t.begin)}else{for(this.checkVal(!0);t.begin<this.len&&!this.tests[t.begin];)t.begin++;this.caret(t.begin,t.begin)}this.isCompleted()&&this.$emit("complete",e)},clearBuffer:function(e,sLine truncated
|
||||
@@ -1 +0,0 @@
|
||||
import{s as v}from"./AdkLG1re.js";import{a3 as k,t as n,v as o,N as g,Q as y,aa as i,Y as u,W as h,x as f,y as b,i as S,z as d,O as m}from"./CdAotn7S.js";var z={root:function(t){var r=t.props;return["p-metergroup p-component",{"p-metergroup-horizontal":r.orientation==="horizontal","p-metergroup-vertical":r.orientation==="vertical"}]},metercontainer:"p-metergroup-meters",meter:"p-metergroup-meter",labellist:function(t){var r=t.props;return["p-metergroup-labels",{"p-metergroup-labels-vertical":r.labelOrientation==="vertical","p-metergroup-labels-horizontal":r.labelOrientation==="horizontal"}]},labellistitem:"p-metergroup-label",labelicon:"p-metergroup-label-icon",labellisttype:"p-metergroup-label-marker",label:"p-metergroup-label-text"},M=k.extend({name:"metergroup",classes:z}),V={name:"MeterGroup",extends:v,props:{value:{type:Array,default:null},min:{type:Number,default:0},max:{type:Number,default:100},orientation:{type:String,default:"horizontal"},labelPosition:{type:String,default:"end"},labelOrientation:{type:String,default:"horizontal"}},style:M,provide:function(){return{$parentInstance:this}}},P={name:"MeterGroupLabel",hostName:"MeterGroup",extends:v,inheritAttrs:!1,props:{value:{type:Array,default:null},labelPosition:{type:String,default:"end"},labelOrientation:{type:String,default:"horizontal"}}};function C(e,t,r,p,O,a){return n(),o("ol",i({class:e.cx("labellist")},e.ptm("labellist")),[(n(!0),o(g,null,y(r.value,function(l,s){return n(),o("li",i({key:s+"_label",class:e.cx("labellistitem")},e.ptm("labellistitem")),[u(e.$slots,"icon",{value:l,class:h(e.cx("labelicon"))},function(){return[l.icon?(n(),o("i",i({key:0,class:[l.icon,e.cx("labelicon")],style:{color:l.color}},e.ptm("labelicon")),null,16)):(n(),o("span",i({key:1,class:e.cx("labellisttype"),style:{backgroundColor:l.color}},e.ptm("labellisttype")),null,16))]}),f("span",i({class:e.cx("label")},e.ptm("label")),b(l.label)+" ("+b(e.$parentInstance.percentValue(l.value))+")",17)],16)}),128))],16)}P.render=C;var G={name:"MeterGroup",extends:V,inheritAttrs:!1,methods:{getPTOptions:function(t,r,p){return this.ptm(t,{context:{value:r,index:p}})},percent:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,r=(t-this.min)/(this.max-this.min)*100;return Math.round(Math.max(0,Math.min(100,r)))},percentValue:function(t){return this.percent(t)+"%"},meterCalculatedStyles:function(t){return{backgroundColor:t.color,width:this.orientation==="horizontal"&&this.percentValue(t.value),height:this.orientation==="vertical"&&this.percentValue(t.value)}}},computed:{totalPercent:function(){return this.percent(this.value.reduce(function(t,r){return t+r.value},0))},percentages:function(){var t=0,r=[];return this.value.forEach(function(p){t+=p.value,r.push(t)}),r}},components:{MeterGroupLabel:P}},N=["aria-valuemin","aria-valuemax","aria-valuenow"];function A(e,t,r,p,O,a){var l=S("MeterGroupLabel");return n(),o("div",i({class:e.cx("root"),role:"meter","aria-valuemin":e.min,"aria-valuemax":e.max,"aria-valuenow":a.totalPercent},e.ptmi("root")),[e.labelPosition==="start"?u(e.$slots,"label",{key:0,value:e.value,totalPercent:a.totalPercent,percentages:a.percentages},function(){return[d(l,{value:e.value,labelPosition:e.labelPosition,labelOrientation:e.labelOrientation,unstyled:e.unstyled,pt:e.pt},null,8,["value","labelPosition","labelOrientation","unstyled","pt"])]}):m("",!0),u(e.$slots,"start",{value:e.value,totalPercent:a.totalPercent,percentages:a.percentages}),f("div",i({class:e.cx("metercontainer")},e.ptm("metercontainer")),[(n(!0),o(g,null,y(e.value,function(s,c){return u(e.$slots,"meter",{key:c,value:s,index:c,class:h(e.cx("meter")),orientation:e.orientation,size:a.percentValue(s.value),totalPercent:a.totalPercent},function(){return[a.percent(s.value)?(n(),o("span",i({key:0,class:e.cx("meter"),style:a.meterCalculatedStyles(s)},a.getPTOptions("meter",s,c)),null,16)):m("",!0)]})}),128))],16),u(e.$slots,"end",{value:e.value,totalPercent:a.totalPercent,percentages:a.percentages}),e.labelPosition==="end"?u(e.$slots,"label",{key:1,value:e.value,totalPercent:a.totalPercent,percentages:a.percentages},function(){return[d(l,{value:e.value,labelPosition:e.labelPosition,labelOrientation:e.labelOrientation,unstyled:e.unstyled,pt:e.pt},null,8,["value","labelPosition","labelOrientation","unstyled","pt"])]}):m("",!0)],16,N)}G.render=A;export{G as default};
|
||||
@@ -1 +0,0 @@
|
||||
import E from"./Dbq0hxqO.js";import{a3 as A,au as l,a6 as h,a7 as r,a8 as B,av as S,i as g,Z as z,t as c,P as v,A as u,z as L,ac as R,aa as s,$ as H,v as f,Y as p,N as K,ab as C,W as b,O as k,x as m,y as F,a1 as j}from"./CdAotn7S.js";import{O as I}from"./eLdOjEri.js";import{s as P}from"./BIoHdha8.js";import{s as D}from"./AdkLG1re.js";import"./DxKOBqhC.js";import"./BO3ltiFH.js";import"./CYhL7ix_.js";var T={root:function(e){var i=e.instance;return["p-confirm-popup p-component",{"p-ripple-disabled":i.$primevue.config.ripple===!1}]},content:"p-confirm-popup-content",icon:"p-confirm-popup-icon",message:"p-confirm-popup-message",footer:"p-confirm-popup-footer",rejectButton:function(e){var i=e.instance;return["p-confirm-popup-reject",i.confirmation&&!i.confirmation.rejectClass?"p-button-sm p-button-text":null]},acceptButton:function(e){var i=e.instance;return["p-confirm-popup-accept",i.confirmation&&!i.confirmation.acceptClass?"p-button-sm":null]}},N=A.extend({name:"confirmpopup",classes:T}),U={name:"BaseConfirmPopup",extends:D,props:{group:String},style:N,provide:function(){return{$parentInstance:this}}},V={name:"ConfirmPopup",extends:U,inheritAttrs:!1,data:function(){return{visible:!1,confirmation:null,autoFocusAccept:null,autoFocusReject:null}},target:null,outsideClickListener:null,scrollHandler:null,resizeListener:null,container:null,confirmListener:null,closeListener:null,mounted:function(){var e=this;this.confirmListener=function(i){i&&i.group===e.group&&(e.confirmation=i,e.target=i.target,e.confirmation.onShow&&e.confirmation.onShow(),e.visible=!0)},this.closeListener=function(){e.visible=!1,e.confirmation=null},l.on("confirm",this.confirmListener),l.on("close",this.closeListener)},beforeUnmount:function(){l.off("confirm",this.confirmListener),l.off("close",this.closeListener),this.unbindOutsideClickListener(),this.scrollHandler&&(this.scrollHandler.destroy(),this.scrollHandler=null),this.unbindResizeListener(),this.container&&(h.clear(this.container),this.container=null),this.target=null,this.confirmation=null},methods:{accept:function(){this.confirmation.accept&&this.confirmation.accept(),this.visible=!1},reject:function(){this.confirmation.reject&&this.confirmation.reject(),this.visible=!1},onHide:function(){this.confirmation.onHide&&this.confirmation.onHide(),this.visible=!1},onAcceptKeydown:function(e){(e.code==="Space"||e.code==="Enter"||e.code==="NumpadEnter")&&(this.accept(),r.focus(this.target),e.preventDefault())},onRejectKeydown:function(e){(e.code==="Space"||e.code==="Enter"||e.code==="NumpadEnter")&&(this.reject(),r.focus(this.target),e.preventDefault())},onEnter:function(e){this.autoFocusAccept=this.confirmation.defaultFocus===void 0||this.confirmation.defaultFocus==="accept",this.autoFocusReject=this.confirmation.defaultFocus==="reject",this.bindOutsideClickListener(),this.bindScrollListener(),this.bindResizeListener(),h.set("overlay",e,this.$primevue.config.zIndex.overlay)},onAfterEnter:function(){this.focus()},onLeave:function(){this.autoFocusAccept=null,this.autoFocusReject=null,this.unbindOutsideClickListener(),this.unbindScrollListener(),this.unbindResizeListener()},onAfterLeave:function(e){h.clear(e)},alignOverlay:function(){r.absolutePosition(this.container,this.target,!1);var e=r.getOffset(this.container),i=r.getOffset(this.target),d=0;e.left<i.left&&(d=i.left-e.left),this.container.style.setProperty("--overlayArrowLeft","".concat(d,"px")),e.top<i.top&&(this.container.setAttribute("data-p-confirm-popup-flipped","true"),!this.isUnstyled&&r.addClass(this.container,"p-confirm-popup-flipped"))},bindOutsideClickListener:function(){var e=this;this.outsideClickListener||(this.outsideClickListener=function(i){e.visible&&e.container&&!e.container.contains(i.target)&&!e.isTargetClicked(i)?(e.confirmation.onHide&&e.confirmation.onHide(),e.visible=!1):e.alignOverlay()},document.addEventListener("click",this.outsideClickListener))},unbindOutsideClickListener:function(){this.outsideClickListener&&(document.removeEventListener("click",this.outsideClickListener),this.outsideClickListener=null)},bindScrollListener:function(){var e=this;this.scrollHandler||(this.scrollHandler=new B(this.target,function(){e.visible&&(e.visible=!1)})),this.scrollHandler.bindScrollListener()},unbindScrollListener:function(){this.scrollHandler&&this.scrollHandler.unbindScrollListener()},bindResizeListener:function(){var e=this;this.resizeListener||(this.resizeListener=function(){e.visible&&!r.isTouchDevice()&&(e.visible=!1)},window.addEventListener("resize",this.resizeListener))},unbindResizeListener:function(){this.resizeListener&&(window.removeEventListener("resize",this.resizeListener),this.resizeListener=null)},focus:function(){var e=this.container.querySelector("[autofocus]");e&&e.focus({preventScroll:!0})},isTargetClicked:function(e){return this.target&&(this.target===e.target||this.target.contains(e.target))},containerRef:function(e){this.container=e},onOverlayClick:function(e){I.emit("overlay-click",{originalEventLine truncated
|
||||
@@ -1 +0,0 @@
|
||||
import{s as r}from"./AdkLG1re.js";import"./CdAotn7S.js";var e={},u={name:"BaseColumnGroup",extends:r,props:{type:{type:String,default:null}},style:e,provide:function(){return{$parentInstance:this}}},i={name:"ColumnGroup",extends:u,inheritAttrs:!1,inject:["$columnGroups"],mounted:function(){var n;(n=this.$columnGroups)===null||n===void 0||n.add(this.$)},unmounted:function(){var n;(n=this.$columnGroups)===null||n===void 0||n.delete(this.$)},render:function(){return null}};export{i as default};
|
||||
@@ -1 +0,0 @@
|
||||
import{s as r}from"./AdkLG1re.js";import"./CdAotn7S.js";var s={name:"Row",extends:r,inject:["$rows"],mounted:function(){var t;(t=this.$rows)===null||t===void 0||t.add(this.$)},unmounted:function(){var t;(t=this.$rows)===null||t===void 0||t.delete(this.$)},render:function(){return null}};export{s as default};
|
||||
@@ -1 +0,0 @@
|
||||
import{s as t}from"./AdkLG1re.js";import{a3 as n,t as a,v as r,Y as o,aa as c}from"./CdAotn7S.js";var p={root:"p-input-icon"},i=n.extend({name:"inputicon",classes:p}),l={name:"BaseInputIcon",extends:t,style:i,props:{class:null},provide:function(){return{$parentInstance:this}}},u={name:"InputIcon",extends:l,inheritAttrs:!1,computed:{containerClass:function(){return[this.cx("root"),this.class]}}};function d(e,m,f,v,I,s){return a(),r("span",c({class:s.containerClass},e.ptmi("root")),[o(e.$slots,"default")],16)}u.render=d;export{u as default};
|
||||
@@ -1 +0,0 @@
|
||||
import{s as T}from"./gJ3REwVq.js";import{s as I}from"./CYhL7ix_.js";import{t as u,v as m,aa as a,x as p,a3 as P,a5 as V,a6 as c,a7 as s,a8 as E,i as y,z as f,Y as o,O as h,y as v,A as g,ac as R,P as b,ab as C}from"./CdAotn7S.js";import z from"./DREobrkF.js";import{O as M}from"./eLdOjEri.js";import{s as B}from"./BIoHdha8.js";import{s as j}from"./AdkLG1re.js";var S={name:"EyeSlashIcon",extends:I},$=p("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M13.9414 6.74792C13.9437 6.75295 13.9455 6.757 13.9469 6.76003C13.982 6.8394 14.0001 6.9252 14.0001 7.01195C14.0001 7.0987 13.982 7.1845 13.9469 7.26386C13.6004 8.00059 13.1711 8.69549 12.6674 9.33515C12.6115 9.4071 12.54 9.46538 12.4582 9.50556C12.3765 9.54574 12.2866 9.56678 12.1955 9.56707C12.0834 9.56671 11.9737 9.53496 11.8788 9.47541C11.7838 9.41586 11.7074 9.3309 11.6583 9.23015C11.6092 9.12941 11.5893 9.01691 11.6008 8.90543C11.6124 8.79394 11.6549 8.68793 11.7237 8.5994C12.1065 8.09726 12.4437 7.56199 12.7313 6.99995C12.2595 6.08027 10.3402 2.8014 6.99732 2.8014C6.63723 2.80218 6.27816 2.83969 5.92569 2.91336C5.77666 2.93304 5.62568 2.89606 5.50263 2.80972C5.37958 2.72337 5.29344 2.59398 5.26125 2.44714C5.22907 2.30031 5.2532 2.14674 5.32885 2.01685C5.40451 1.88696 5.52618 1.79021 5.66978 1.74576C6.10574 1.64961 6.55089 1.60134 6.99732 1.60181C11.5916 1.60181 13.7864 6.40856 13.9414 6.74792ZM2.20333 1.61685C2.35871 1.61411 2.5091 1.67179 2.6228 1.77774L12.2195 11.3744C12.3318 11.4869 12.3949 11.6393 12.3949 11.7983C12.3949 11.9572 12.3318 12.1097 12.2195 12.2221C12.107 12.3345 11.9546 12.3976 11.7956 12.3976C11.6367 12.3976 11.4842 12.3345 11.3718 12.2221L10.5081 11.3584C9.46549 12.0426 8.24432 12.4042 6.99729 12.3981C2.403 12.3981 0.208197 7.59135 0.0532336 7.25198C0.0509364 7.24694 0.0490875 7.2429 0.0476856 7.23986C0.0162332 7.16518 3.05176e-05 7.08497 3.05176e-05 7.00394C3.05176e-05 6.92291 0.0162332 6.8427 0.0476856 6.76802C0.631261 5.47831 1.46902 4.31959 2.51084 3.36119L1.77509 2.62545C1.66914 2.51175 1.61146 2.36136 1.61421 2.20597C1.61695 2.05059 1.6799 1.90233 1.78979 1.79244C1.89968 1.68254 2.04794 1.6196 2.20333 1.61685ZM7.45314 8.35147L5.68574 6.57609V6.5361C5.5872 6.78938 5.56498 7.06597 5.62183 7.33173C5.67868 7.59749 5.8121 7.84078 6.00563 8.03158C6.19567 8.21043 6.43052 8.33458 6.68533 8.39089C6.94014 8.44721 7.20543 8.43359 7.45314 8.35147ZM1.26327 6.99994C1.7351 7.91163 3.64645 11.1985 6.99729 11.1985C7.9267 11.2048 8.8408 10.9618 9.64438 10.4947L8.35682 9.20718C7.86027 9.51441 7.27449 9.64491 6.69448 9.57752C6.11446 9.51014 5.57421 9.24881 5.16131 8.83592C4.74842 8.42303 4.4871 7.88277 4.41971 7.30276C4.35232 6.72274 4.48282 6.13697 4.79005 5.64041L3.35855 4.2089C2.4954 5.00336 1.78523 5.94935 1.26327 6.99994Z",fill:"currentColor"},null,-1),A=[$];function H(e,t,n,i,l,r){return u(),m("svg",a({width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e.pti()),A,16)}S.render=H;var U={root:function(t){var n=t.props;return{position:n.appendTo==="self"?"relative":void 0}}},x={root:function(t){var n=t.instance,i=t.props;return["p-password p-component p-inputwrapper",{"p-inputwrapper-filled":n.filled,"p-inputwrapper-focus":n.focused,"p-icon-field p-icon-field-right":i.toggleMask}]},input:function(t){var n=t.props;return["p-password-input",{"p-disabled":n.disabled}]},hideIcon:"p-input-icon",showIcon:"p-input-icon",panel:function(t){var n=t.instance;return["p-password-panel p-component",{"p-ripple-disabled":n.$primevue.config.ripple===!1}]},meter:"p-password-meter",meterLabel:function(t){var n=t.instance;return"p-password-strength ".concat(n.meter?n.meter.strength:"")},info:"p-password-info"},q=P.extend({name:"password",classes:x,inlineStyles:U}),D={name:"BasePassword",extends:j,props:{modelValue:String,promptLabel:{type:String,default:null},mediumRegex:{type:String,default:"^(((?=.*[a-z])(?=.*[A-Z]))|((?=.*[a-z])(?=.*[0-9]))|((?=.*[A-Z])(?=.*[0-9])))(?=.{6,})"},strongRegex:{type:String,default:"^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.{8,})"},weakLabel:{type:String,default:null},mediumLabel:{type:String,default:null},strongLabel:{type:String,default:null},feedback:{type:Boolean,default:!0},appendTo:{type:[String,Object],default:"body"},toggleMask:{type:Boolean,default:!1},hideIcon:{type:String,default:void 0},showIcon:{type:String,default:void 0},variant:{type:String,default:null},invalid:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},placeholder:{type:String,default:null},required:{type:Boolean,default:!1},inputId:{type:String,default:null},inputClass:{type:[String,Object],default:null},inputStyle:{type:Object,default:null},inputProps:{type:null,default:null},panelId:{type:String,default:null},panelClass:{type:[String,Object],default:null},panelStyle:{type:Object,default:null},panelProps:{type:null,default:null},ariaLabelledby:{type:String,default:null},ariaLabel:{type:String,default:null}},style:q,provide:function(){return{$parentInstance:this}}},Z={name:"Password",extends:D,inheritAttrs:!1,emLine truncated
|
||||
@@ -1 +0,0 @@
|
||||
import{a3 as o,t as l,v as t,Y as i,aa as n,y as p,P as u,W as m,ab as d,O as c}from"./CdAotn7S.js";import{s as v}from"./AdkLG1re.js";var y={root:function(e){var r=e.props;return["p-avatar p-component",{"p-avatar-image":r.image!=null,"p-avatar-circle":r.shape==="circle","p-avatar-lg":r.size==="large","p-avatar-xl":r.size==="xlarge"}]},label:"p-avatar-text",icon:"p-avatar-icon"},b=o.extend({name:"avatar",classes:y}),g={name:"BaseAvatar",extends:v,props:{label:{type:String,default:null},icon:{type:String,default:null},image:{type:String,default:null},size:{type:String,default:"normal"},shape:{type:String,default:"square"},ariaLabelledby:{type:String,default:null},ariaLabel:{type:String,default:null}},style:b,provide:function(){return{$parentInstance:this}}},f={name:"Avatar",extends:g,inheritAttrs:!1,emits:["error"],methods:{onError:function(e){this.$emit("error",e)}}},S=["aria-labelledby","aria-label"],$=["src","alt"];function h(a,e,r,k,E,s){return l(),t("div",n({class:a.cx("root"),"aria-labelledby":a.ariaLabelledby,"aria-label":a.ariaLabel},a.ptmi("root")),[i(a.$slots,"default",{},function(){return[a.label?(l(),t("span",n({key:0,class:a.cx("label")},a.ptm("label")),p(a.label),17)):a.$slots.icon?(l(),u(d(a.$slots.icon),{key:1,class:m(a.cx("icon"))},null,8,["class"])):a.icon?(l(),t("span",n({key:2,class:[a.cx("icon"),a.icon]},a.ptm("icon")),null,16)):a.image?(l(),t("img",n({key:3,src:a.image,alt:a.ariaLabel,onError:e[0]||(e[0]=function(){return s.onError&&s.onError.apply(s,arguments)})},a.ptm("image")),null,16,$)):c("",!0)]})],16,S)}f.render=h;export{f as default};
|
||||
@@ -1,2 +0,0 @@
|
||||
import W from"./Dbq0hxqO.js";import{s as _}from"./CzF1vgty.js";import{s as z}from"./RtM6PxTR.js";import H from"./DREobrkF.js";import{a3 as Y,a4 as A,a7 as M,i as U,t as g,v as R,z as P,aa as p,A as D,Y as S,P as w,ab as C,az as $,O as N}from"./CdAotn7S.js";import{s as q}from"./AdkLG1re.js";import"./DxKOBqhC.js";import"./BO3ltiFH.js";import"./CYhL7ix_.js";var J={root:function(e){var t=e.instance,i=e.props;return["p-inputnumber p-component p-inputwrapper",{"p-inputwrapper-filled":t.filled||i.allowEmpty===!1,"p-inputwrapper-focus":t.focused,"p-inputnumber-buttons-stacked":i.showButtons&&i.buttonLayout==="stacked","p-inputnumber-buttons-horizontal":i.showButtons&&i.buttonLayout==="horizontal","p-inputnumber-buttons-vertical":i.showButtons&&i.buttonLayout==="vertical","p-invalid":i.invalid}]},input:function(e){var t=e.props,i=e.instance;return["p-inputnumber-input",{"p-variant-filled":t.variant?t.variant==="filled":i.$primevue.config.inputStyle==="filled"}]},buttonGroup:"p-inputnumber-button-group",incrementButton:function(e){var t=e.instance,i=e.props;return["p-inputnumber-button p-inputnumber-button-up",{"p-disabled":i.showButtons&&i.max!==null&&t.maxBoundry()}]},decrementButton:function(e){var t=e.instance,i=e.props;return["p-inputnumber-button p-inputnumber-button-down",{"p-disabled":i.showButtons&&i.min!==null&&t.minBoundry()}]}},Q=Y.extend({name:"inputnumber",classes:J}),X={name:"BaseInputNumber",extends:q,props:{modelValue:{type:Number,default:null},format:{type:Boolean,default:!0},showButtons:{type:Boolean,default:!1},buttonLayout:{type:String,default:"stacked"},incrementButtonClass:{type:String,default:null},decrementButtonClass:{type:String,default:null},incrementButtonIcon:{type:String,default:void 0},decrementButtonIcon:{type:String,default:void 0},locale:{type:String,default:void 0},localeMatcher:{type:String,default:void 0},mode:{type:String,default:"decimal"},prefix:{type:String,default:null},suffix:{type:String,default:null},currency:{type:String,default:void 0},currencyDisplay:{type:String,default:void 0},useGrouping:{type:Boolean,default:!0},minFractionDigits:{type:Number,default:void 0},maxFractionDigits:{type:Number,default:void 0},roundingMode:{type:String,default:"halfExpand",validator:function(e){return["ceil","floor","expand","trunc","halfCeil","halfFloor","halfExpand","halfTrunc","halfEven"].includes(e)}},min:{type:Number,default:null},max:{type:Number,default:null},step:{type:Number,default:1},allowEmpty:{type:Boolean,default:!0},highlightOnFocus:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},variant:{type:String,default:null},invalid:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},placeholder:{type:String,default:null},inputId:{type:String,default:null},inputClass:{type:[String,Object],default:null},inputStyle:{type:Object,default:null},inputProps:{type:null,default:null},incrementButtonProps:{type:null,default:null},decrementButtonProps:{type:null,default:null},ariaLabelledby:{type:String,default:null},ariaLabel:{type:String,default:null}},style:Q,provide:function(){return{$parentInstance:this}}};function x(n){"@babel/helpers - typeof";return x=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},x(n)}function L(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(n);e&&(i=i.filter(function(r){return Object.getOwnPropertyDescriptor(n,r).enumerable})),t.push.apply(t,i)}return t}function T(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?L(Object(t),!0).forEach(function(i){Z(n,i,t[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):L(Object(t)).forEach(function(i){Object.defineProperty(n,i,Object.getOwnPropertyDescriptor(t,i))})}return n}function Z(n,e,t){return e=ee(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function ee(n){var e=te(n,"string");return x(e)=="symbol"?e:String(e)}function te(n,e){if(x(n)!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var i=t.call(n,e||"default");if(x(i)!="object")return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function ne(n){return ue(n)||se(n)||re(n)||ie()}function ie(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
||||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function re(n,e){if(n){if(typeof n=="string")return F(n,e);var t=Object.prototype.toString.call(n).slice(8,-1);if(t==="Object"&&n.constructor&&(t=n.constructor.name),t==="Map"||t==="Set")return Array.from(n);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return F(n,e)}}function se(n){if(typeof Symbol<"u"&&n[Symbol.iterator]!=null||n["@@iterator"]!=null)return Array.from(n)}function ue(n){if(Array.isArray(n))return F(n)}function F(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,i=new Array(e);t<e;t++)i[t]=n[t];return i}var ae={name:"InputNumber",extends:X,inheritAttrs:!1,emits:["update:modelValue","input","focus","blur"],numberFormat:null,_numeral:null,_decimal:null,_group:null,_minusSign:null,_currency:null,_suffix:null,_prefix:null,_index:null,groupChar:"",isSpecialChar:null,prefixChar:null,suffixChar:null,timer:null,data:function(){return{d_modelValue:this.modelValue,focused:!1}},watch:{modelValue:function(e){this.d_modelValue=e},locale:function(e,t){this.updateConstructParser(e,t)},localeMatcher:function(e,t){this.updateConstructParser(e,t)},mode:function(e,t){this.updateConstructParser(e,t)},currency:function(e,t){this.updateConstructParser(e,t)},currencyDisplay:function(e,t){this.updateConstructParser(e,t)},useGrouping:function(e,t){this.updateConstructParser(e,t)},minFractionDigits:function(e,t){this.updateConstructParser(e,t)},maxFractionDigits:function(e,t){this.updateConstructParser(e,t)},suffix:function(e,t){this.updateConstructParser(e,t)},prefix:function(e,t){this.updateConstructParser(e,t)}},created:function(){this.constructParser()},methods:{getOptions:function(){return{localeMatcher:this.localeMatcher,style:this.mode,currency:this.currency,currencyDisplay:this.currencyDisplay,useGrouping:this.useGrouping,minimumFractionDigits:this.minFractionDigits,maximumFractionDigits:this.maxFractionDigits,roundingMode:this.roundingMode}},constructParser:function(){this.numberFormat=new Intl.NumberFormat(this.locale,this.getOptions());var e=ne(new Intl.NumberFormat(this.locale,{useGrouping:!1}).format(9876543210)).reverse(),t=new Map(e.map(function(i,r){return[i,r]}));this._numeral=new RegExp("[".concat(e.join(""),"]"),"g"),this._group=this.getGroupingExpression(),this._minusSign=this.getMinusSignExpression(),this._currency=this.getCurrencyExpression(),this._decimal=this.getDecimalExpression(),this._suffix=this.getSuffixExpression(),this._prefix=this.getPrefixExpression(),this._index=function(i){return t.get(i)}},updateConstructParser:function(e,t){e!==t&&this.constructParser()},escapeRegExp:function(e){return e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&")},getDecimalExpression:function(){var e=new Intl.NumberFormat(this.locale,T(T({},this.getOptions()),{},{useGrouping:!1}));return new RegExp("[".concat(e.format(1.1).replace(this._currency,"").trim().replace(this._numeral,""),"]"),"g")},getGroupingExpression:function(){var e=new Intl.NumberFormat(this.locale,{useGrouping:!0});return this.groupChar=e.format(1e6).trim().replace(this._numeral,"").charAt(0),new RegExp("[".concat(this.groupChar,"]"),"g")},getMinusSignExpression:function(){var e=new Intl.NumberFormat(this.locale,{useGrouping:!1});return new RegExp("[".concat(e.format(-1).trim().replace(this._numeral,""),"]"),"g")},getCurrencyExpression:function(){if(this.currency){var e=new Intl.NumberFormat(this.locale,{style:"currency",currency:this.currency,currencyDisplay:this.currencyDisplay,minimumFractionDigits:0,maximumFractionDigits:0,roundingMode:this.roundingMode});return new RegExp("[".concat(e.format(1).replace(/\s/g,"").replace(this._numeral,"").replace(this._group,""),"]"),"g")}return new RegExp("[]","g")},getPrefixExpression:function(){if(this.prefix)this.prefixChar=this.prefix;else{var e=new Intl.NumberFormat(this.locale,{style:this.mode,currency:this.currency,currencyDisplay:this.currencyDisplay});this.prefixChar=e.format(1).split("1")[0]}return new RegExp("".concat(this.escapeRegExp(this.prefixChar||"")),"g")},getSuffixExpression:function(){if(this.suffix)this.suffixChar=this.suffix;else{var e=new Intl.NumberFormat(this.locale,{style:this.mode,currency:this.currency,currencyDisplay:this.currencyDisplay,minimumFractionDigits:0,maximumFractionDigits:0,roundingMode:this.roundingMode});this.suffixChar=e.format(1).split("1")[1]}return new RegExp("".concat(this.escapeRegExp(this.suffixChar||"")),"g")},formatValue:function(e){if(e!=null){if(e==="-")return e;if(this.format){var t=new Intl.NumberFormat(this.locale,this.getOptions()),i=t.format(e);return this.prefix&&(i=this.prefix+i),this.suffix&&(i=i+this.suffix),i}return e.toString()}return""},parseValue:function(e){var t=e.replace(this._suffix,"").replace(this._prefix,"").trim().replace(/\s/g,"").replace(this._currency,"").replace(this._group,"").replace(this._minusSign,"-").replace(this._decimal,".").replace(this._numeral,this._index);if(t){if(t==="-")return t;var i=+t;return isNaN(i)?nu
Line truncated
|
||||
@@ -1 +0,0 @@
|
||||
import{useLayout as t}from"./DiD3_pIL.js";import{c as e}from"./CdAotn7S.js";const n={__name:"AppFooter",setup(r){const{layoutConfig:o}=t();return e(()=>`/dashboard/layout/images/${o.darkTheme.value?"logo-white":"logo-dark"}.svg`),(a,u)=>null}};export{n as default};
|
||||
@@ -1 +0,0 @@
|
||||
import{u as P,d as A,c as y,h as N,r as C,o as B,a as j,b as I,e as L,f as E,g as S,i as T,j as U,p as V,k as D,n as H,l as F,m as q,q as O,w as $,s as M,_ as G,t as Q,v as W,x as m,y as k,z as J,A as K,B as X,C as Y,D as Z}from"./CdAotn7S.js";import{u as ee}from"./DISPJkjY.js";async function z(t,a=P()){const{path:i,matched:e}=a.resolve(t);if(!e.length||(a._routePreloaded||(a._routePreloaded=new Set),a._routePreloaded.has(i)))return;const r=a._preloadPromises=a._preloadPromises||[];if(r.length>4)return Promise.all(r).then(()=>z(t,a));a._routePreloaded.add(i);const s=e.map(u=>{var n;return(n=u.components)==null?void 0:n.default}).filter(u=>typeof u=="function");for(const u of s){const n=Promise.resolve(u()).catch(()=>{}).finally(()=>r.splice(r.indexOf(n)));r.push(n)}await Promise.all(r)}const te=(...t)=>t.find(a=>a!==void 0);function ae(t){const a=t.componentName||"NuxtLink";function i(e,r){if(!e||t.trailingSlash!=="append"&&t.trailingSlash!=="remove")return e;if(typeof e=="string")return w(e,t.trailingSlash);const s="path"in e&&e.path!==void 0?e.path:r(e).path;return{...e,name:void 0,path:w(s,t.trailingSlash)}}return A({name:a,props:{to:{type:[String,Object],default:void 0,required:!1},href:{type:[String,Object],default:void 0,required:!1},target:{type:String,default:void 0,required:!1},rel:{type:String,default:void 0,required:!1},noRel:{type:Boolean,default:void 0,required:!1},prefetch:{type:Boolean,default:void 0,required:!1},noPrefetch:{type:Boolean,default:void 0,required:!1},activeClass:{type:String,default:void 0,required:!1},exactActiveClass:{type:String,default:void 0,required:!1},prefetchedClass:{type:String,default:void 0,required:!1},replace:{type:Boolean,default:void 0,required:!1},ariaCurrentValue:{type:String,default:void 0,required:!1},external:{type:Boolean,default:void 0,required:!1},custom:{type:Boolean,default:void 0,required:!1}},setup(e,{slots:r}){const s=P(),u=F(),n=y(()=>{const o=e.to||e.href||"";return i(o,s.resolve)}),d=y(()=>typeof n.value=="string"&&N(n.value,{acceptRelative:!0})),g=y(()=>e.target&&e.target!=="_self"),b=y(()=>e.external||g.value?!0:typeof n.value=="object"?!1:n.value===""||d.value),_=C(!1),h=C(null),R=o=>{var f;h.value=e.custom?(f=o==null?void 0:o.$el)==null?void 0:f.nextElementSibling:o==null?void 0:o.$el};if(e.prefetch!==!1&&e.noPrefetch!==!0&&e.target!=="_blank"&&!oe()){const f=q();let p,l=null;B(()=>{const x=re();j(()=>{p=I(()=>{var c;(c=h==null?void 0:h.value)!=null&&c.tagName&&(l=x.observe(h.value,async()=>{l==null||l(),l=null;const v=typeof n.value=="string"?n.value:s.resolve(n.value).fullPath;await Promise.all([f.hooks.callHook("link:prefetch",v).catch(()=>{}),!b.value&&z(n.value,s).catch(()=>{})]),_.value=!0}))})})}),L(()=>{p&&E(p),l==null||l(),l=null})}return()=>{var l,x;if(!b.value){const c={ref:R,to:n.value,activeClass:e.activeClass||t.activeClass,exactActiveClass:e.exactActiveClass||t.exactActiveClass,replace:e.replace,ariaCurrentValue:e.ariaCurrentValue,custom:e.custom};return e.custom||(_.value&&(c.class=e.prefetchedClass||t.prefetchedClass),c.rel=e.rel||void 0),S(T("RouterLink"),c,r.default)}const o=typeof n.value=="object"?((l=s.resolve(n.value))==null?void 0:l.href)??null:n.value&&!e.external&&!d.value?i(U(u.app.baseURL,n.value),s.resolve):n.value||null,f=e.target||null,p=te(e.noRel?"":e.rel,t.externalRelAttribute,d.value||g.value?"noopener noreferrer":"")||null;if(e.custom){if(!r.default)return null;const c=()=>O(o,{replace:e.replace,external:e.external});return r.default({href:o,navigate:c,get route(){if(!o)return;const v=V(o);return{path:v.pathname,fullPath:v.pathname,get query(){return D(v.search)},hash:v.hash,params:{},name:void 0,matched:[],redirectedFrom:void 0,meta:{},href:o}},rel:p,target:f,isExternal:b.value,isActive:!1,isExactActive:!1})}return S("a",{ref:h,href:o,rel:p,target:f},(x=r.default)==null?void 0:x.call(r))}}})}const ne=ae(H);function w(t,a){const i=a==="append"?$:M;return N(t)&&!t.startsWith("http")?t:i(t,!0)}function re(){const t=q();if(t._observer)return t._observer;let a=null;const i=new Map,e=(s,u)=>(a||(a=new IntersectionObserver(n=>{for(const d of n){const g=i.get(d.target);(d.isIntersecting||d.intersectionRatio>0)&&g&&g()}})),i.set(s,u),a.observe(s),()=>{i.delete(s),a.unobserve(s),i.size===0&&(a.disconnect(),a=null)});return t._observer={observe:e}}function oe(){const t=navigator.connection;return!!(t&&(t.saveData||/2g/.test(t.effectiveType)))}const se=t=>(Y("data-v-73a07988"),t=t(),Z(),t),ie={class:"font-sans antialiased bg-white dark:bg-black text-black dark:text-white grid min-h-screen place-content-center overflow-hidden"},le=se(()=>m("div",{class:"fixed left-0 right-0 spotlight z-10"},null,-1)),ue={class:"max-w-520px text-center z-20"},ce=["textContent"],de=["textContent"],fe={class:"w-full flex items-center justify-center"},he={__name:"error-404",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},statusCode:{type:Number,default:404},statusMessage:{type:String,default:"Not Found"},descrLine truncated
|
||||
@@ -1 +0,0 @@
|
||||
import{s as r}from"./CYhL7ix_.js";import{t as o,v as t,aa as s,x as a}from"./CdAotn7S.js";var n={name:"ChevronDownIcon",extends:r},i=a("path",{d:"M7.01744 10.398C6.91269 10.3985 6.8089 10.378 6.71215 10.3379C6.61541 10.2977 6.52766 10.2386 6.45405 10.1641L1.13907 4.84913C1.03306 4.69404 0.985221 4.5065 1.00399 4.31958C1.02276 4.13266 1.10693 3.95838 1.24166 3.82747C1.37639 3.69655 1.55301 3.61742 1.74039 3.60402C1.92777 3.59062 2.11386 3.64382 2.26584 3.75424L7.01744 8.47394L11.769 3.75424C11.9189 3.65709 12.097 3.61306 12.2748 3.62921C12.4527 3.64535 12.6199 3.72073 12.7498 3.84328C12.8797 3.96582 12.9647 4.12842 12.9912 4.30502C13.0177 4.48162 12.9841 4.662 12.8958 4.81724L7.58083 10.1322C7.50996 10.2125 7.42344 10.2775 7.32656 10.3232C7.22968 10.3689 7.12449 10.3944 7.01744 10.398Z",fill:"currentColor"},null,-1),p=[i];function C(e,c,l,d,h,m){return o(),t("svg",s({width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e.pti()),p,16)}n.render=C;export{n as s};
|
||||
@@ -1 +0,0 @@
|
||||
import{a3 as k,a7 as l,aa as o,a9 as y,Z as x,t as c,v as u,x as m,N as b,Q as T,$ as P,P as h,W as w,ab as p,O as v,y as S}from"./CdAotn7S.js";import{s as C}from"./AdkLG1re.js";var D={root:"p-tabmenu p-component",menu:"p-tabmenu-nav p-reset",menuitem:function(e){var t=e.instance,r=e.index,d=e.item;return["p-tabmenuitem",{"p-highlight":t.d_activeIndex===r,"p-disabled":t.disabled(d)}]},action:"p-menuitem-link",icon:"p-menuitem-icon",label:"p-menuitem-text",inkbar:"p-tabmenu-ink-bar"},F=k.extend({name:"tabmenu",classes:D}),L={name:"BaseTabMenu",extends:C,props:{model:{type:Array,default:null},activeIndex:{type:Number,default:0},ariaLabelledby:{type:String,default:null},ariaLabel:{type:String,default:null}},style:F,provide:function(){return{$parentInstance:this}}},K={name:"TabMenu",extends:L,inheritAttrs:!1,emits:["update:activeIndex","tab-change"],timeout:null,data:function(){return{d_activeIndex:this.activeIndex}},watch:{activeIndex:function(e){this.d_activeIndex=e}},mounted:function(){this.updateInkBar();var e=this.findActiveItem();e&&(e.tabIndex="0")},updated:function(){this.updateInkBar()},beforeUnmount:function(){clearTimeout(this.timeout)},methods:{getPTOptions:function(e,t,r){return this.ptm(e,{context:{item:t,index:r}})},onItemClick:function(e,t,r){if(this.disabled(t)){e.preventDefault();return}t.command&&t.command({originalEvent:e,item:t}),r!==this.d_activeIndex&&(this.d_activeIndex=r,this.$emit("update:activeIndex",this.d_activeIndex)),this.$emit("tab-change",{originalEvent:e,index:r})},onKeydownItem:function(e,t,r){switch(e.code){case"ArrowRight":{this.navigateToNextItem(e.target),e.preventDefault();break}case"ArrowLeft":{this.navigateToPrevItem(e.target),e.preventDefault();break}case"Home":{this.navigateToFirstItem(e.target),e.preventDefault();break}case"End":{this.navigateToLastItem(e.target),e.preventDefault();break}case"Space":case"NumpadEnter":case"Enter":{this.onItemClick(e,t,r),e.preventDefault();break}case"Tab":{this.onTabKey();break}}},navigateToNextItem:function(e){var t=this.findNextItem(e);t&&this.setFocusToMenuitem(e,t)},navigateToPrevItem:function(e){var t=this.findPrevItem(e);t&&this.setFocusToMenuitem(e,t)},navigateToFirstItem:function(e){var t=this.findFirstItem(e);t&&this.setFocusToMenuitem(e,t)},navigateToLastItem:function(e){var t=this.findLastItem(e);t&&this.setFocusToMenuitem(e,t)},findNextItem:function(e){var t=e.parentElement.nextElementSibling;return t?l.getAttribute(t,"data-p-disabled")===!0?this.findNextItem(t.children[0]):t.children[0]:null},findPrevItem:function(e){var t=e.parentElement.previousElementSibling;return t?l.getAttribute(t,"data-p-disabled")===!0?this.findPrevItem(t.children[0]):t.children[0]:null},findFirstItem:function(){var e=l.findSingle(this.$refs.nav,'[data-pc-section="menuitem"][data-p-disabled="false"]');return e?e.children[0]:null},findLastItem:function(){var e=l.find(this.$refs.nav,'[data-pc-section="menuitem"][data-p-disabled="false"]');return e?e[e.length-1].children[0]:null},findActiveItem:function(){var e=l.findSingle(this.$refs.nav,'[data-pc-section="menuitem"][data-p-disabled="false"][data-p-highlight="true"]');return e?e.children[0]:null},setFocusToMenuitem:function(e,t){e.tabIndex="-1",t.tabIndex="0",t.focus()},onTabKey:function(){var e=l.findSingle(this.$refs.nav,'[data-pc-section="menuitem"][data-p-disabled="false"][data-p-highlight="true"]'),t=l.findSingle(this.$refs.nav,'[data-pc-section="action"][tabindex="0"]');t!==e.children[0]&&(e&&(e.children[0].tabIndex="0"),t.tabIndex="-1")},visible:function(e){return typeof e.visible=="function"?e.visible():e.visible!==!1},disabled:function(e){return typeof e.disabled=="function"?e.disabled():e.disabled===!0},label:function(e){return typeof e.label=="function"?e.label():e.label},updateInkBar:function(){for(var e=this.$refs.nav.children,t=!1,r=0;r<e.length;r++){var d=e[r];l.getAttribute(d,"data-p-highlight")&&(this.$refs.inkbar.style.width=l.getWidth(d)+"px",this.$refs.inkbar.style.left=l.getOffset(d).left-l.getOffset(this.$refs.nav).left+"px",t=!0)}t||(this.$refs.inkbar.style.width="0px",this.$refs.inkbar.style.left="0px")},getMenuItemProps:function(e,t){var r=this;return{action:o({class:this.cx("action"),tabindex:-1,onClick:function(i){return r.onItemClick(i,e,t)},onKeyDown:function(i){return r.onKeydownItem(i,e,t)}},this.getPTOptions("action",e,t)),icon:o({class:[this.cx("icon"),e.icon]},this.getPTOptions("icon",e,t)),label:o({class:this.cx("label")},this.getPTOptions("label",e,t))}}},directives:{ripple:y}},M=["aria-labelledby","aria-label"],N=["onClick","onKeydown","data-p-highlight","data-p-disabled"],O=["href","target","aria-label","aria-disabled"];function A(a,e,t,r,d,i){var I=x("ripple");return c(),u("div",o({class:a.cx("root")},a.ptmi("root")),[m("ul",o({ref:"nav",class:a.cx("menu"),role:"menubar","aria-labelledby":a.ariaLabelledby,"aria-label":a.ariaLabel},a.ptm("menu")),[(c(!0),u(b,null,T(a.model,function(n,s){return c(),u(b,{key:i.label(n)+"_"+s.toString()},[i.visible(n)?(c(),u("li",Line truncated
|
||||
@@ -1 +0,0 @@
|
||||
import{a3 as p,a4 as r,a9 as c,Z as b,t as o,v as s,x as u,aa as i,$ as f,Y as h,O as g,W as m,y as v}from"./CdAotn7S.js";import{s as y}from"./AdkLG1re.js";var B={root:function(t){var n=t.instance,l=t.props;return["p-togglebutton p-component",{"p-disabled":l.disabled,"p-highlight":n.active,"p-invalid":l.invalid}]},input:"p-togglebutton-input",box:function(t){var n=t.instance;return["p-button p-component",{"p-button-icon-only":n.hasIcon&&!n.hasLabel}]},icon:function(t){var n=t.instance,l=t.props;return["p-button-icon",{"p-button-icon-left":l.iconPos==="left"&&n.label,"p-button-icon-right":l.iconPos==="right"&&n.label}]},label:"p-button-label"},S=p.extend({name:"togglebutton",classes:B}),I={name:"BaseToggleButton",extends:y,props:{modelValue:Boolean,onIcon:String,offIcon:String,onLabel:{type:String,default:"Yes"},offLabel:{type:String,default:"No"},iconPos:{type:String,default:"left"},invalid:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},tabindex:{type:Number,default:null},inputId:{type:String,default:null},inputClass:{type:[String,Object],default:null},inputStyle:{type:Object,default:null},ariaLabelledby:{type:String,default:null},ariaLabel:{type:String,default:null}},style:S,provide:function(){return{$parentInstance:this}}},L={name:"ToggleButton",extends:I,inheritAttrs:!1,emits:["update:modelValue","change","focus","blur"],methods:{getPTOptions:function(t){var n=t==="root"?this.ptmi:this.ptm;return n(t,{context:{active:this.active,disabled:this.disabled}})},onChange:function(t){!this.disabled&&!this.readonly&&(this.$emit("update:modelValue",!this.modelValue),this.$emit("change",t))},onFocus:function(t){this.$emit("focus",t)},onBlur:function(t){this.$emit("blur",t)}},computed:{active:function(){return this.modelValue===!0},hasLabel:function(){return r.isNotEmpty(this.onLabel)&&r.isNotEmpty(this.offLabel)},hasIcon:function(){return this.$slots.icon||this.onIcon&&this.offIcon},label:function(){return this.hasLabel?this.modelValue?this.onLabel:this.offLabel:" "}},directives:{ripple:c}},O=["data-p-highlight","data-p-disabled"],P=["id","value","checked","tabindex","disabled","readonly","aria-labelledby","aria-label","aria-invalid"];function V(e,t,n,l,T,a){var d=b("ripple");return o(),s("div",i({class:e.cx("root")},a.getPTOptions("root"),{"data-p-highlight":a.active,"data-p-disabled":e.disabled}),[u("input",i({id:e.inputId,type:"checkbox",role:"switch",class:[e.cx("input"),e.inputClass],style:e.inputStyle,value:e.modelValue,checked:a.active,tabindex:e.tabindex,disabled:e.disabled,readonly:e.readonly,"aria-labelledby":e.ariaLabelledby,"aria-label":e.ariaLabel,"aria-invalid":e.invalid||void 0,onFocus:t[0]||(t[0]=function(){return a.onFocus&&a.onFocus.apply(a,arguments)}),onBlur:t[1]||(t[1]=function(){return a.onBlur&&a.onBlur.apply(a,arguments)}),onChange:t[2]||(t[2]=function(){return a.onChange&&a.onChange.apply(a,arguments)})},a.getPTOptions("input")),null,16,P),f((o(),s("div",i({class:e.cx("box")},a.getPTOptions("box")),[h(e.$slots,"icon",{value:e.modelValue,class:m(e.cx("icon"))},function(){return[e.onIcon||e.offIcon?(o(),s("span",i({key:0,class:[e.cx("icon"),e.modelValue?e.onIcon:e.offIcon]},a.getPTOptions("icon")),null,16)):g("",!0)]}),u("span",i({class:e.cx("label")},a.getPTOptions("label")),v(a.label),17)],16)),[[d]])],16,O)}L.render=V;export{L as default};
|
||||
@@ -1 +0,0 @@
|
||||
import{s as i}from"./AdkLG1re.js";import{t as s,v as l,Y as d,O as a,aa as c}from"./CdAotn7S.js";var u={},f={name:"DeferredContent",extends:i,inheritAttrs:!1,emits:["load"],style:u,data:function(){return{loaded:!1}},mounted:function(){this.loaded||(this.shouldLoad()?this.load():this.bindScrollListener())},beforeUnmount:function(){this.unbindScrollListener()},methods:{bindScrollListener:function(){var t=this;this.documentScrollListener=function(){t.shouldLoad()&&(t.load(),t.unbindScrollListener())},window.addEventListener("scroll",this.documentScrollListener)},unbindScrollListener:function(){this.documentScrollListener&&(window.removeEventListener("scroll",this.documentScrollListener),this.documentScrollListener=null)},shouldLoad:function(){if(this.loaded)return!1;var t=this.$refs.container.getBoundingClientRect(),n=document.documentElement,o=n.clientHeight;return o>=t.top},load:function(t){this.loaded=!0,this.$emit("load",t)}}};function m(e,t,n,o,r,h){return s(),l("div",c({ref:"container"},e.ptmi("root")),[r.loaded?d(e.$slots,"default",{key:0}):a("",!0)],16)}f.render=m;export{f as default};
|
||||
@@ -1,33 +0,0 @@
|
||||
var A_=Object.defineProperty;var E_=(s,u,i)=>u in s?A_(s,u,{enumerable:!0,configurable:!0,writable:!0,value:i}):s[u]=i;var Or=(s,u,i)=>(E_(s,typeof u!="symbol"?u+"":u,i),i);import{ak as R_,r as et,al as b_,am as O_,L as T_,an as C_,G as P_,ao as jo,m as L_,ap as I_,M as D_,K as F_,aq as B_,_ as N_,t as U_,P as M_,O as W_,ar as H_,a0 as q_,as as nf,c as G_}from"./CdAotn7S.js";import $_ from"./BK_1YlQG.js";const z_=s=>s==="defer"||s===!1;function yv(...s){var P;const u=typeof s[s.length-1]=="string"?s.pop():void 0;typeof s[0]!="string"&&s.unshift(u);let[i,l,h={}]=s;if(typeof i!="string")throw new TypeError("[nuxt] [asyncData] key must be a string.");if(typeof l!="function")throw new TypeError("[nuxt] [asyncData] handler must be a function.");const p=L_(),v=l,R=()=>null,I=()=>p.isHydrating?p.payload.data[i]:p.static.data[i];h.server=h.server??!0,h.default=h.default??R,h.getCachedData=h.getCachedData??I,h.lazy=h.lazy??!1,h.immediate=h.immediate??!0,h.deep=h.deep??R_.deep,h.dedupe=h.dedupe??"cancel";const F=()=>h.getCachedData(i,p)!=null;if(!p._asyncData[i]||!h.immediate){(P=p.payload._errors)[i]??(P[i]=null);const T=h.deep?et:b_;p._asyncData[i]={data:T(h.getCachedData(i,p)??h.default()),pending:et(!F()),error:O_(p.payload._errors,i),status:et("idle")}}const b={...p._asyncData[i]};b.refresh=b.execute=(T={})=>{if(p._asyncDataPromises[i]){if(z_(T.dedupe??h.dedupe))return p._asyncDataPromises[i];p._asyncDataPromises[i].cancelled=!0}if((T._initial||p.isHydrating&&T._initial!==!1)&&F())return Promise.resolve(h.getCachedData(i,p));b.pending.value=!0,b.status.value="pending";const q=new Promise((k,Z)=>{try{k(v(p))}catch(rn){Z(rn)}}).then(async k=>{if(q.cancelled)return p._asyncDataPromises[i];let Z=k;h.transform&&(Z=await h.transform(k)),h.pick&&(Z=J_(Z,h.pick)),p.payload.data[i]=Z,b.data.value=Z,b.error.value=null,b.status.value="success"}).catch(k=>{if(q.cancelled)return p._asyncDataPromises[i];b.error.value=I_(k),b.data.value=D_(h.default()),b.status.value="error"}).finally(()=>{q.cancelled||(b.pending.value=!1,delete p._asyncDataPromises[i])});return p._asyncDataPromises[i]=q,p._asyncDataPromises[i]},b.clear=()=>K_(p,i);const E=()=>b.refresh({_initial:!0}),tn=h.server!==!1&&p.payload.serverRendered;{const T=F_();if(T&&!T._nuxtOnBeforeMountCbs){T._nuxtOnBeforeMountCbs=[];const Z=T._nuxtOnBeforeMountCbs;T_(()=>{Z.forEach(rn=>{rn()}),Z.splice(0,Z.length)}),C_(()=>Z.splice(0,Z.length))}tn&&p.isHydrating&&(b.error.value||F())?(b.pending.value=!1,b.status.value=b.error.value?"error":"success"):T&&(p.payload.serverRendered&&p.isHydrating||h.lazy)&&h.immediate?T._nuxtOnBeforeMountCbs.push(E):h.immediate&&E();const q=B_();if(h.watch){const Z=P_(h.watch,()=>b.refresh());q&&jo(Z)}const k=p.hook("app:data:refresh",async Z=>{(!Z||Z.includes(i))&&await b.refresh()});q&&jo(k)}const un=Promise.resolve(p._asyncDataPromises[i]).then(()=>b);return Object.assign(un,b),un}function K_(s,u){u in s.payload.data&&(s.payload.data[u]=void 0),u in s.payload._errors&&(s.payload._errors[u]=null),s._asyncData[u]&&(s._asyncData[u].data.value=void 0,s._asyncData[u].error.value=null,s._asyncData[u].pending.value=!1,s._asyncData[u].status.value="idle"),u in s._asyncDataPromises&&(s._asyncDataPromises[u].cancelled=!0,s._asyncDataPromises[u]=void 0)}function J_(s,u){const i={};for(const l of u)i[l]=s[l];return i}const k_={__name:"RefreshIcon",props:["refreshing"],setup(s){return(u,i)=>{const l=$_;return s.refreshing?(U_(),M_(l,{key:0,style:{width:"1rem",height:"1rem"},"stroke-width":"4"})):W_("",!0)}}},Sv=N_(k_,[["__scopeId","data-v-4b9cdb75"]]);var Ot=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function X_(s){return s&&s.__esModule&&Object.prototype.hasOwnProperty.call(s,"default")?s.default:s}var Lr={exports:{}};/**
|
||||
* @license
|
||||
* Lodash <https://lodash.com/>
|
||||
* Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
|
||||
* Released under MIT license <https://lodash.com/license>
|
||||
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
|
||||
* Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
|
||||
*/Lr.exports;(function(s,u){(function(){var i,l="4.17.21",h=200,p="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",v="Expected a function",R="Invalid `variable` option passed into `_.template`",I="__lodash_hash_undefined__",F=500,b="__lodash_placeholder__",E=1,tn=2,un=4,P=1,T=2,q=1,k=2,Z=4,rn=8,Vn=16,Dn=32,ge=64,$n=128,Oe=256,it=512,W=30,Y="...",zn=800,Te=16,It=1,Mr=2,Dt=3,Ce=1/0,_e=9007199254740991,Ff=17976931348623157e292,Ft=NaN,Qn=4294967295,Bf=Qn-1,Nf=Qn>>>1,Uf=[["ary",$n],["bind",q],["bindKey",k],["curry",rn],["curryRight",Vn],["flip",it],["partial",Dn],["partialRight",ge],["rearg",Oe]],We="[object Arguments]",Bt="[object Array]",Mf="[object AsyncFunction]",st="[object Boolean]",ut="[object Date]",Wf="[object DOMException]",Nt="[object Error]",Ut="[object Function]",Ss="[object GeneratorFunction]",Kn="[object Map]",ot="[object Number]",Hf="[object Null]",ie="[object Object]",xs="[object Promise]",qf="[object Proxy]",ft="[object RegExp]",Jn="[object Set]",at="[object String]",Mt="[object Symbol]",Gf="[object Undefined]",lt="[object WeakMap]",$f="[object WeakSet]",ct="[object ArrayBuffer]",He="[object DataView]",Wr="[object Float32Array]",Hr="[object Float64Array]",qr="[object Int8Array]",Gr="[object Int16Array]",$r="[object Int32Array]",zr="[object Uint8Array]",Kr="[object Uint8ClampedArray]",Jr="[object Uint16Array]",kr="[object Uint32Array]",zf=/\b__p \+= '';/g,Kf=/\b(__p \+=) '' \+/g,Jf=/(__e\(.*?\)|\b__t\)) \+\n'';/g,As=/&(?:amp|lt|gt|quot|#39);/g,Es=/[&<>"']/g,kf=RegExp(As.source),Xf=RegExp(Es.source),Zf=/<%-([\s\S]+?)%>/g,Yf=/<%([\s\S]+?)%>/g,Rs=/<%=([\s\S]+?)%>/g,Vf=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Qf=/^\w*$/,jf=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Xr=/[\\^$.*+?()[\]{}|]/g,na=RegExp(Xr.source),Zr=/^\s+/,ea=/\s/,ta=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,ra=/\{\n\/\* \[wrapped with (.+)\] \*/,ia=/,? & /,sa=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ua=/[()=,{}\[\]\/\s]/,oa=/\\(\\)?/g,fa=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,bs=/\w*$/,aa=/^[-+]0x[0-9a-f]+$/i,la=/^0b[01]+$/i,ca=/^\[object .+?Constructor\]$/,ha=/^0o[0-7]+$/i,da=/^(?:0|[1-9]\d*)$/,pa=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Wt=/($^)/,ga=/['\n\r\u2028\u2029\\]/g,Ht="\\ud800-\\udfff",_a="\\u0300-\\u036f",va="\\ufe20-\\ufe2f",ma="\\u20d0-\\u20ff",Os=_a+va+ma,Ts="\\u2700-\\u27bf",Cs="a-z\\xdf-\\xf6\\xf8-\\xff",wa="\\xac\\xb1\\xd7\\xf7",ya="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Sa="\\u2000-\\u206f",xa=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Ps="A-Z\\xc0-\\xd6\\xd8-\\xde",Ls="\\ufe0e\\ufe0f",Is=wa+ya+Sa+xa,Yr="['’]",Aa="["+Ht+"]",Ds="["+Is+"]",qt="["+Os+"]",Fs="\\d+",Ea="["+Ts+"]",Bs="["+Cs+"]",Ns="[^"+Ht+Is+Fs+Ts+Cs+Ps+"]",Vr="\\ud83c[\\udffb-\\udfff]",Ra="(?:"+qt+"|"+Vr+")",Us="[^"+Ht+"]",Qr="(?:\\ud83c[\\udde6-\\uddff]){2}",jr="[\\ud800-\\udbff][\\udc00-\\udfff]",qe="["+Ps+"]",Ms="\\u200d",Ws="(?:"+Bs+"|"+Ns+")",ba="(?:"+qe+"|"+Ns+")",Hs="(?:"+Yr+"(?:d|ll|m|re|s|t|ve))?",qs="(?:"+Yr+"(?:D|LL|M|RE|S|T|VE))?",Gs=Ra+"?",$s="["+Ls+"]?",Oa="(?:"+Ms+"(?:"+[Us,Qr,jr].join("|")+")"+$s+Gs+")*",Ta="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Ca="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",zs=$s+Gs+Oa,Pa="(?:"+[Ea,Qr,jr].join("|")+")"+zs,La="(?:"+[Us+qt+"?",qt,Qr,jr,Aa].join("|")+")",Ia=RegExp(Yr,"g"),Da=RegExp(qt,"g"),ni=RegExp(Vr+"(?="+Vr+")|"+La+zs,"g"),Fa=RegExp([qe+"?"+Bs+"+"+Hs+"(?="+[Ds,qe,"$"].join("|")+")",ba+"+"+qs+"(?="+[Ds,qe+Ws,"$"].join("|")+")",qe+"?"+Ws+"+"+Hs,qe+"+"+qs,Ca,Ta,Fs,Pa].join("|"),"g"),Ba=RegExp("["+Ms+Ht+Os+Ls+"]"),Na=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Ua=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Ma=-1,sn={};sn[Wr]=sn[Hr]=sn[qr]=sn[Gr]=sn[$r]=sn[zr]=sn[Kr]=sn[Jr]=sn[kr]=!0,sn[We]=sn[Bt]=sn[ct]=sn[st]=sn[He]=sn[ut]=sn[Nt]=sn[Ut]=sn[Kn]=sn[ot]=sn[ie]=sn[ft]=sn[Jn]=sn[at]=sn[lt]=!1;var en={};en[We]=en[Bt]=en[ct]=en[He]=en[st]=en[ut]=en[Wr]=en[Hr]=en[qr]=en[Gr]=en[$r]=en[Kn]=en[ot]=en[ie]=en[ft]=en[Jn]=en[at]=en[Mt]=en[zr]=en[Kr]=en[Jr]=en[kr]=!0,en[Nt]=en[Ut]=en[lt]=!1;var Wa={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Line truncated
|
||||
/* [wrapped with `+e+`] */
|
||||
`)}function eh(n){return M(n)||Me(n)||!!(du&&n&&n[du])}function le(n,e){var t=typeof n;return e=e??_e,!!e&&(t=="number"||t!="symbol"&&da.test(n))&&n>-1&&n%1==0&&n<e}function Sn(n,e,t){if(!fn(t))return!1;var r=typeof e;return(r=="number"?En(t)&&le(e,t.length):r=="string"&&e in t)?Zn(t[e],n):!1}function qi(n,e){if(M(n))return!1;var t=typeof n;return t=="number"||t=="symbol"||t=="boolean"||n==null||Pn(n)?!0:Qf.test(n)||!Vf.test(n)||e!=null&&n in nn(e)}function th(n){var e=typeof n;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?n!=="__proto__":n===null}function Gi(n){var e=_r(n),t=f[e];if(typeof t!="function"||!(e in K.prototype))return!1;if(n===t)return!0;var r=Mi(t);return!!r&&n===r[0]}function rh(n){return!!au&&au in n}var ih=Jt?ce:ss;function Et(n){var e=n&&n.constructor,t=typeof e=="function"&&e.prototype||Je;return n===t}function ao(n){return n===n&&!fn(n)}function lo(n,e){return function(t){return t==null?!1:t[n]===e&&(e!==i||n in nn(t))}}function sh(n){var e=xr(n,function(r){return t.size===F&&t.clear(),r}),t=e.cache;return e}function uh(n,e){var t=n[1],r=e[1],o=t|r,a=o<(q|k|$n),c=r==$n&&t==rn||r==$n&&t==Oe&&n[7].length<=e[8]||r==($n|Oe)&&e[7].length<=e[8]&&t==rn;if(!(a||c))return n;r&q&&(n[2]=e[2],o|=t&q?0:Z);var d=e[3];if(d){var _=n[3];n[3]=_?Ju(_,d,e[4]):d,n[4]=_?we(n[3],b):e[4]}return d=e[5],d&&(_=n[5],n[5]=_?ku(_,d,e[6]):d,n[6]=_?we(n[5],b):e[6]),d=e[7],d&&(n[7]=d),r&$n&&(n[8]=n[8]==null?e[8]:mn(n[8],e[8])),n[9]==null&&(n[9]=e[9]),n[0]=e[0],n[1]=o,n}function oh(n){var e=[];if(n!=null)for(var t in nn(n))e.push(t);return e}function fh(n){return Xt.call(n)}function co(n,e,t){return e=pn(e===i?n.length-1:e,0),function(){for(var r=arguments,o=-1,a=pn(r.length-e,0),c=m(a);++o<a;)c[o]=r[e+o];o=-1;for(var d=m(e+1);++o<e;)d[o]=r[o];return d[e]=t(c),On(n,this,d)}}function ho(n,e){return e.length<2?n:Be(n,Wn(e,0,-1))}function ah(n,e){for(var t=n.length,r=mn(e.length,t),o=An(n);r--;){var a=e[r];n[r]=le(a,t)?o[a]:i}return n}function $i(n,e){if(!(e==="constructor"&&typeof n[e]=="function")&&e!="__proto__")return n[e]}var po=_o(Nu),Rt=El||function(n,e){return _n.setTimeout(n,e)},zi=_o(Ic);function go(n,e,t){var r=e+"";return zi(n,nh(r,lh(Vc(r),t)))}function _o(n){var e=0,t=0;return function(){var r=Tl(),o=Te-(r-t);if(t=r,o>0){if(++e>=zn)return arguments[0]}else e=0;return n.apply(i,arguments)}}function mr(n,e){var t=-1,r=n.length,o=r-1;for(e=e===i?r:e;++t<e;){var a=bi(t,o),c=n[a];n[a]=n[t],n[t]=c}return n.length=e,n}var vo=sh(function(n){var e=[];return n.charCodeAt(0)===46&&e.push(""),n.replace(jf,function(t,r,o,a){e.push(o?a.replace(oa,"$1"):r||t)}),e});function ee(n){if(typeof n=="string"||Pn(n))return n;var e=n+"";return e=="0"&&1/n==-Ce?"-0":e}function Ue(n){if(n!=null){try{return kt.call(n)}catch{}try{return n+""}catch{}}return""}function lh(n,e){return Bn(Uf,function(t){var r="_."+t[0];e&t[1]&&!Gt(n,r)&&n.push(r)}),n.sort()}function mo(n){if(n instanceof K)return n.clone();var e=new Un(n.__wrapped__,n.__chain__);return e.__actions__=An(n.__actions__),e.__index__=n.__index__,e.__values__=n.__values__,e}function ch(n,e,t){(t?Sn(n,e,t):e===i)?e=1:e=pn(H(e),0);var r=n==null?0:n.length;if(!r||e<1)return[];for(var o=0,a=0,c=m(nr(r/e));o<r;)c[a++]=Wn(n,o,o+=e);return c}function hh(n){for(var e=-1,t=n==null?0:n.length,r=0,o=[];++e<t;){var a=n[e];a&&(o[r++]=a)}return o}function dh(){var n=arguments.length;if(!n)return[];for(var e=m(n-1),t=arguments[0],r=n;r--;)e[r-1]=arguments[r];return me(M(t)?An(t):[t],vn(e,1))}var ph=$(function(n,e){return ln(n)?wt(n,vn(e,1,ln,!0)):[]}),gh=$(function(n,e){var t=Hn(e);return ln(t)&&(t=i),ln(n)?wt(n,vn(e,1,ln,!0),D(t,2)):[]}),_h=$(function(n,e){var t=Hn(e);return ln(t)&&(t=i),ln(n)?wt(n,vn(e,1,ln,!0),i,t):[]});function vh(n,e,t){var r=n==null?0:n.length;return r?(e=t||e===i?1:H(e),Wn(n,e<0?0:e,r)):[]}function mh(n,e,t){var r=n==null?0:n.length;return r?(e=t||e===i?1:H(e),e=r-e,Wn(n,0,e<0?0:e)):[]}function wh(n,e){return n&&n.length?lr(n,D(e,3),!0,!0):[]}function yh(n,e){return n&&n.length?lr(n,D(e,3),!0):[]}function Sh(n,e,t,r){var o=n==null?0:n.length;return o?(t&&typeof t!="number"&&Sn(n,e,t)&&(t=0,r=o),dc(n,e,t,r)):[]}function wo(n,e,t){var r=n==null?0:n.length;if(!r)return-1;var o=t==null?0:H(t);return o<0&&(o=pn(r+o,0)),$t(n,D(e,3),o)}function yo(n,e,t){var r=n==null?0:n.length;if(!r)return-1;var o=r-1;return t!==i&&(o=H(t),o=t<0?pn(r+o,0):mn(o,r-1)),$t(n,D(e,3),o,!0)}function So(n){var e=n==null?0:n.length;return e?vn(n,1):[]}function xh(n){var e=n==null?0:n.length;return e?vn(n,Ce):[]}function Ah(n,e){var t=n==null?0:n.length;return t?(e=e===i?1:H(e),vn(n,e)):[]}function Eh(n){for(var e=-1,t=n==null?0:n.length,r={};++e<t;){var o=n[e];r[o[0]]=o[1]}return r}function xo(n){return n&&n.length?n[0]:i}function Rh(n,e,t){var r=n==null?0:n.length;if(!r)return-1;var o=t==null?0:H(t);return o<0&&(o=pn(r+o,0)),Ge(n,e,o)}function bh(n){var e=n==null?0:n.length;return e?Wn(n,0,-1):[]}var Oh=$(function(n){var e=on(n,Li);return e.length&&e[0]===n[0]?Si(e):[]}),Th=$(function(n
Line truncated
|
||||
`;n.replace(O,function(N,z,J,Ln,xn,In){return J||(J=Ln),A+=n.slice(y,In).replace(ga,il),z&&(d=!0,A+=`' +
|
||||
__e(`+z+`) +
|
||||
'`),xn&&(_=!0,A+=`';
|
||||
`+xn+`;
|
||||
__p += '`),J&&(A+=`' +
|
||||
((__t = (`+J+`)) == null ? '' : __t) +
|
||||
'`),y=In+N.length,N}),A+=`';
|
||||
`;var B=j.call(e,"variable")&&e.variable;if(!B)A=`with (obj) {
|
||||
`+A+`
|
||||
}
|
||||
`;else if(ua.test(B))throw new U(R);A=(_?A.replace(zf,""):A).replace(Kf,"$1").replace(Jf,"$1;"),A="function("+(B||"obj")+`) {
|
||||
`+(B?"":`obj || (obj = {});
|
||||
`)+"var __t, __p = ''"+(d?", __e = _.escape":"")+(_?`, __j = Array.prototype.join;
|
||||
function print() { __p += __j.call(arguments, '') }
|
||||
`:`;
|
||||
`)+A+`return __p
|
||||
}`;var G=Yo(function(){return V(a,L+"return "+A).apply(i,c)});if(G.source=A,Zi(G))throw G;return G}function Pg(n){return Q(n).toLowerCase()}function Lg(n){return Q(n).toUpperCase()}function Ig(n,e,t){if(n=Q(n),n&&(t||e===i))return iu(n);if(!n||!(e=Cn(e)))return n;var r=kn(n),o=kn(e),a=su(r,o),c=uu(r,o)+1;return Ee(r,a,c).join("")}function Dg(n,e,t){if(n=Q(n),n&&(t||e===i))return n.slice(0,fu(n)+1);if(!n||!(e=Cn(e)))return n;var r=kn(n),o=uu(r,kn(e))+1;return Ee(r,0,o).join("")}function Fg(n,e,t){if(n=Q(n),n&&(t||e===i))return n.replace(Zr,"");if(!n||!(e=Cn(e)))return n;var r=kn(n),o=su(r,kn(e));return Ee(r,o).join("")}function Bg(n,e){var t=W,r=Y;if(fn(e)){var o="separator"in e?e.separator:o;t="length"in e?H(e.length):t,r="omission"in e?Cn(e.omission):r}n=Q(n);var a=n.length;if($e(n)){var c=kn(n);a=c.length}if(t>=a)return n;var d=t-ze(r);if(d<1)return r;var _=c?Ee(c,0,d).join(""):n.slice(0,d);if(o===i)return _+r;if(c&&(d+=_.length-d),Yi(o)){if(n.slice(d).search(o)){var y,S=_;for(o.global||(o=hi(o.source,Q(bs.exec(o))+"g")),o.lastIndex=0;y=o.exec(S);)var A=y.index;_=_.slice(0,A===i?d:A)}}else if(n.indexOf(Cn(o),d)!=d){var O=_.lastIndexOf(o);O>-1&&(_=_.slice(0,O))}return _+r}function Ng(n){return n=Q(n),n&&kf.test(n)?n.replace(As,cl):n}var Ug=Ve(function(n,e,t){return n+(t?" ":"")+e.toUpperCase()}),ji=Yu("toUpperCase");function Zo(n,e,t){return n=Q(n),e=t?i:e,e===i?ul(n)?pl(n):Va(n):n.match(e)||[]}var Yo=$(function(n,e){try{return On(n,i,e)}catch(t){return Zi(t)?t:new U(t)}}),Mg=ae(function(n,e){return Bn(e,function(t){t=ee(t),oe(n,t,ki(n[t],n))}),n});function Wg(n){var e=n==null?0:n.length,t=D();return n=e?on(n,function(r){if(typeof r[1]!="function")throw new Nn(v);return[t(r[0]),r[1]]}):[],$(function(r){for(var o=-1;++o<e;){var a=n[o];if(On(a[0],this,r))return On(a[1],this,r)}})}function Hg(n){return cc(Mn(n,E))}function ns(n){return function(){return n}}function qg(n,e){return n==null||n!==n?e:n}var Gg=Qu(),$g=Qu(!0);function bn(n){return n}function es(n){return Tu(typeof n=="function"?n:Mn(n,E))}function zg(n){return Pu(Mn(n,E))}function Kg(n,e){return Lu(n,Mn(e,E))}var Jg=$(function(n,e){return function(t){return yt(t,n,e)}}),kg=$(function(n,e){return function(t){return yt(n,t,e)}});function ts(n,e,t){var r=gn(e),o=or(e,r);t==null&&!(fn(e)&&(o.length||!r.length))&&(t=e,e=n,n=this,o=or(e,gn(e)));var a=!(fn(t)&&"chain"in t)||!!t.chain,c=ce(n);return Bn(o,function(d){var _=e[d];n[d]=_,c&&(n.prototype[d]=function(){var y=this.__chain__;if(a||y){var S=n(this.__wrapped__),A=S.__actions__=An(this.__actions__);return A.push({func:_,args:arguments,thisArg:n}),S.__chain__=y,S}return _.apply(n,me([this.value()],arguments))})}),n}function Xg(){return _n._===this&&(_n._=yl),this}function rs(){}function Zg(n){return n=H(n),$(function(e){return Iu(e,n)})}var Yg=Fi(on),Vg=Fi(js),Qg=Fi(si);function Vo(n){return qi(n)?ui(ee(n)):Tc(n)}function jg(n){return function(e){return n==null?i:Be(n,e)}}var n_=no(),e_=no(!0);function is(){return[]}function ss(){return!1}function t_(){return{}}function r_(){return""}function i_(){return!0}function s_(n,e){if(n=H(n),n<1||n>_e)return[];var t=Qn,r=mn(n,Qn);e=D(e),n-=Qn;for(var o=ai(r,e);++t<n;)e(t);return o}function u_(n){return M(n)?on(n,ee):Pn(n)?[n]:An(vo(Q(n)))}function o_(n){var e=++ml;return Q(n)+e}var f_=dr(function(n,e){return n+e},0),a_=Bi("ceil"),l_=dr(function(n,e){return n/e},1),c_=Bi("floor");function h_(n){return n&&n.length?ur(n,bn,yi):i}function d_(n,e){return n&&n.length?ur(n,D(e,2),yi):i}function p_(n){return tu(n,bn)}function g_(n,e){return tu(n,D(e,2))}function __(n){return n&&n.length?ur(n,bn,Ei):i}function v_(n,e){return n&&n.length?ur(n,D(e,2),Ei):i}var m_=dr(function(n,e){return n*e},1),w_=Bi("round"),y_=dr(function(n,e){return n-e},0);function S_(n){return n&&n.length?fi(n,bn):0}function x_(n,e){return n&&n.length?fi(n,D(e,2)):0}return f.after=zd,f.ary=To,f.assign=Lp,f.assignIn=Go,f.assignInWith=br,f.assignWith=Ip,f.at=Dp,f.before=Co,f.bind=ki,f.bindAll=Mg,f.bindKey=Po,f.castArray=tp,f.chain=Ro,f.chunk=ch,f.compact=hh,f.concat=dh,f.cond=Wg,f.conforms=Hg,f.constant=ns,f.countBy=Sd,f.create=Fp,f.curry=Lo,f.curryRight=Io,f.debounce=Do,f.defaults=Bp,f.defaultsDeep=Np,f.defer=Kd,f.delay=Jd,f.difference=ph,f.differenceBy=gh,f.differenceWith=_h,f.drop=vh,f.dropRight=mh,f.dropRightWhile=wh,f.dropWhile=yh,f.fill=Sh,f.filter=Ad,f.flatMap=bd,f.flatMapDeep=Od,f.flatMapDepth=Td,f.flatten=So,f.flattenDeep=xh,f.flattenDepth=Ah,f.flip=kd,f.flow=Gg,f.flowRight=$g,f.fromPairs=Eh,f.functions=$p,f.functionsIn=zp,f.groupBy=Cd,f.initial=bh,f.intersection=Oh,f.intersectionBy=Th,f.intersectionWith=Ch,f.invert=Jp,f.invertBy=kp,f.invokeMap=Ld,f.iteratee=es,f.keyBy=Id,f.keys=gn,f.keysIn=Rn,f.map=yr,f.mapKeys=Zp,f.mapValues=Yp,f.matches=zg,f.matchesProperty=Kg,f.memoize=xr,f.merge=Vp,f.mergeWith=$o,f.method=Jg,f.methodOf=kg,f.mixin=ts,f.negate=Ar,f.nthArg=Zg,f.omit=Qp,f.omitBy=jp,f.once=Xd,f.orderBy=Dd,f.over=Yg,f.overArgs=Zd,f.overEvery=Vg,f.overSome=Qg,f.partial=Xi,f.partialRight=Fo,f.p
Line truncated
|
||||
`).forEach(function(v){h=v.indexOf(":"),i=v.substring(0,h).trim().toLowerCase(),l=v.substring(h+1).trim(),!(!i||u[i]&&Z0[i])&&(i==="set-cookie"?u[i]?u[i].push(l):u[i]=[l]:u[i]=u[i]?u[i]+", "+l:l)}),u},of=Symbol("internals");function Tt(s){return s&&String(s).trim().toLowerCase()}function Cr(s){return s===!1||s==null?s:x.isArray(s)?s.map(Cr):String(s)}function V0(s){const u=Object.create(null),i=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let l;for(;l=i.exec(s);)u[l[1]]=l[2];return u}const Q0=s=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(s.trim());function os(s,u,i,l,h){if(x.isFunction(l))return l.call(this,u,i);if(h&&(u=i),!!x.isString(u)){if(x.isString(l))return u.indexOf(l)!==-1;if(x.isRegExp(l))return l.test(u)}}function j0(s){return s.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(u,i,l)=>i.toUpperCase()+l)}function nv(s,u){const i=x.toCamelCase(" "+u);["get","set","has"].forEach(l=>{Object.defineProperty(s,l+i,{value:function(h,p,v){return this[l].call(this,u,h,p,v)},configurable:!0})})}class Ur{constructor(u){u&&this.set(u)}set(u,i,l){const h=this;function p(R,I,F){const b=Tt(I);if(!b)throw new Error("header name must be a non-empty string");const E=x.findKey(h,b);(!E||h[E]===void 0||F===!0||F===void 0&&h[E]!==!1)&&(h[E||I]=Cr(R))}const v=(R,I)=>x.forEach(R,(F,b)=>p(F,b,I));return x.isPlainObject(u)||u instanceof this.constructor?v(u,i):x.isString(u)&&(u=u.trim())&&!Q0(u)?v(Y0(u),i):u!=null&&p(i,u,l),this}get(u,i){if(u=Tt(u),u){const l=x.findKey(this,u);if(l){const h=this[l];if(!i)return h;if(i===!0)return V0(h);if(x.isFunction(i))return i.call(this,h,l);if(x.isRegExp(i))return i.exec(h);throw new TypeError("parser must be boolean|regexp|function")}}}has(u,i){if(u=Tt(u),u){const l=x.findKey(this,u);return!!(l&&this[l]!==void 0&&(!i||os(this,this[l],l,i)))}return!1}delete(u,i){const l=this;let h=!1;function p(v){if(v=Tt(v),v){const R=x.findKey(l,v);R&&(!i||os(l,l[R],R,i))&&(delete l[R],h=!0)}}return x.isArray(u)?u.forEach(p):p(u),h}clear(u){const i=Object.keys(this);let l=i.length,h=!1;for(;l--;){const p=i[l];(!u||os(this,this[p],p,u,!0))&&(delete this[p],h=!0)}return h}normalize(u){const i=this,l={};return x.forEach(this,(h,p)=>{const v=x.findKey(l,p);if(v){i[v]=Cr(h),delete i[p];return}const R=u?j0(p):String(p).trim();R!==p&&delete i[p],i[R]=Cr(h),l[R]=!0}),this}concat(...u){return this.constructor.concat(this,...u)}toJSON(u){const i=Object.create(null);return x.forEach(this,(l,h)=>{l!=null&&l!==!1&&(i[h]=u&&x.isArray(l)?l.join(", "):l)}),i}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([u,i])=>u+": "+i).join(`
|
||||
`)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(u){return u instanceof this?u:new this(u)}static concat(u,...i){const l=new this(u);return i.forEach(h=>l.set(h)),l}static accessor(u){const l=(this[of]=this[of]={accessors:{}}).accessors,h=this.prototype;function p(v){const R=Tt(v);l[R]||(nv(h,v),l[R]=!0)}return x.isArray(u)?u.forEach(p):p(u),this}}Ur.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);x.reduceDescriptors(Ur.prototype,({value:s},u)=>{let i=u[0].toUpperCase()+u.slice(1);return{get:()=>s,set(l){this[i]=l}}});x.freezeMethods(Ur);const pe=Ur;function fs(s,u){const i=this||ms,l=u||i,h=pe.from(l.headers);let p=l.data;return x.forEach(s,function(R){p=R.call(i,p,h.normalize(),u?u.status:void 0)}),h.normalize(),p}function Cf(s){return!!(s&&s.__CANCEL__)}function Lt(s,u,i){X.call(this,s??"canceled",X.ERR_CANCELED,u,i),this.name="CanceledError"}x.inherits(Lt,X,{__CANCEL__:!0});function ev(s,u,i){const l=i.config.validateStatus;!i.status||!l||l(i.status)?s(i):u(new X("Request failed with status code "+i.status,[X.ERR_BAD_REQUEST,X.ERR_BAD_RESPONSE][Math.floor(i.status/100)-4],i.config,i.request,i))}const tv=te.hasStandardBrowserEnv?{write(s,u,i,l,h,p){const v=[s+"="+encodeURIComponent(u)];x.isNumber(i)&&v.push("expires="+new Date(i).toGMTString()),x.isString(l)&&v.push("path="+l),x.isString(h)&&v.push("domain="+h),p===!0&&v.push("secure"),document.cookie=v.join("; ")},read(s){const u=document.cookie.match(new RegExp("(^|;\\s*)("+s+")=([^;]*)"));return u?decodeURIComponent(u[3]):null},remove(s){this.write(s,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function rv(s){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(s)}function iv(s,u){return u?s.replace(/\/?\/$/,"")+"/"+u.replace(/^\/+/,""):s}function Pf(s,u){return s&&!rv(u)?iv(s,u):u}const sv=te.hasStandardBrowserEnv?function(){const u=/(msie|trident)/i.test(navigator.userAgent),i=document.createElement("a");let l;function h(p){let v=p;return u&&(i.setAttribute("href",v),v=i.href),i.setAttribute("href",v),{href:i.href,protocol:i.protocol?i.protocol.replace(/:$/,""):"",host:i.host,search:i.search?i.search.replace(/^\?/,""):"",hash:i.hash?i.hash.replace(/^#/,""):"",hostname:i.hostname,port:i.port,pathname:i.pathname.charAt(0)==="/"?i.pathname:"/"+i.pathname}}return l=h(window.location.href),function(v){const R=x.isString(v)?h(v):v;return R.protocol===l.protocol&&R.host===l.host}}():function(){return function(){return!0}}();function uv(s){const u=/^([-+\w]{1,25})(:?\/\/|:)/.exec(s);return u&&u[1]||""}function ov(s,u){s=s||10;const i=new Array(s),l=new Array(s);let h=0,p=0,v;return u=u!==void 0?u:1e3,function(I){const F=Date.now(),b=l[p];v||(v=F),i[h]=I,l[h]=F;let E=p,tn=0;for(;E!==h;)tn+=i[E++],E=E%s;if(h=(h+1)%s,h===p&&(p=(p+1)%s),F-v<u)return;const un=b&&F-b;return un?Math.round(tn*1e3/un):void 0}}function ff(s,u){let i=0;const l=ov(50,250);return h=>{const p=h.loaded,v=h.lengthComputable?h.total:void 0,R=p-i,I=l(R),F=p<=v;i=p;const b={loaded:p,total:v,progress:v?p/v:void 0,bytes:R,rate:I||void 0,estimated:I&&v&&F?(v-p)/I:void 0,event:h};b[u?"download":"upload"]=!0,s(b)}}const fv=typeof XMLHttpRequest<"u",av=fv&&function(s){return new Promise(function(i,l){let h=s.data;const p=pe.from(s.headers).normalize();let{responseType:v,withXSRFToken:R}=s,I;function F(){s.cancelToken&&s.cancelToken.unsubscribe(I),s.signal&&s.signal.removeEventListener("abort",I)}let b;if(x.isFormData(h)){if(te.hasStandardBrowserEnv||te.hasStandardBrowserWebWorkerEnv)p.setContentType(!1);else if((b=p.getContentType())!==!1){const[T,...q]=b?b.split(";").map(k=>k.trim()).filter(Boolean):[];p.setContentType([T||"multipart/form-data",...q].join("; "))}}let E=new XMLHttpRequest;if(s.auth){const T=s.auth.username||"",q=s.auth.password?unescape(encodeURIComponent(s.auth.password)):"";p.set("Authorization","Basic "+btoa(T+":"+q))}const tn=Pf(s.baseURL,s.url);E.open(s.method.toUpperCase(),Rf(tn,s.params,s.paramsSerializer),!0),E.timeout=s.timeout;function un(){if(!E)return;const T=pe.from("getAllResponseHeaders"in E&&E.getAllResponseHeaders()),k={data:!v||v==="text"||v==="json"?E.responseText:E.response,status:E.status,statusText:E.statusText,headers:T,config:s,request:E};ev(function(rn){i(rn),F()},function(rn){l(rn),F()},k),E=null}if("onloadend"in E?E.onloadend=un:E.onreadystatechange=function(){!E||E.readyState!==4||E.status===0&&!(E.responseURL&&E.responseURL.indexOf("file:")===0)||setTimeout(un)},E.onabort=function(){E&&(l(new X("Request aborted",X.ECONNABORTED,s,E)),E=null)},E.onerror=function(){l(new X("Network Error",X.ERR_NETWORK,s,E)),E=null},E.ontimeout=function(){let q=s.timeout?"timeout of "+s.timeout+"ms exceeded":"timeout exceeded";const k=s.transitional||bf;s.timeoutErrorMessage&&(q=s.timeoutErrorMessage),l(new X(q,k.clarifyTimeoutError?X.ETIMEDOUT:X.ECONNABORTED,s,E)),E=null},te.hasStandardBrowserEnv&&(R&&x.isFunction(R)&&(R=R(s)),R||R!==!1&&sv(tn))){const T=s.xsrfHeaderName&&s.xsrfCookieName&&tv.read(
Line truncated
|
||||
`+p.map(af).join(`
|
||||
`):" "+af(p[0]):"as no adapter specified";throw new X("There is no suitable adapter to dispatch the request "+v,"ERR_NOT_SUPPORT")}return l},adapters:hs};function as(s){if(s.cancelToken&&s.cancelToken.throwIfRequested(),s.signal&&s.signal.aborted)throw new Lt(null,s)}function lf(s){return as(s),s.headers=pe.from(s.headers),s.data=fs.call(s,s.transformRequest),["post","put","patch"].indexOf(s.method)!==-1&&s.headers.setContentType("application/x-www-form-urlencoded",!1),Lf.getAdapter(s.adapter||ms.adapter)(s).then(function(l){return as(s),l.data=fs.call(s,s.transformResponse,l),l.headers=pe.from(l.headers),l},function(l){return Cf(l)||(as(s),l&&l.response&&(l.response.data=fs.call(s,s.transformResponse,l.response),l.response.headers=pe.from(l.response.headers))),Promise.reject(l)})}const cf=s=>s instanceof pe?{...s}:s;function tt(s,u){u=u||{};const i={};function l(F,b,E){return x.isPlainObject(F)&&x.isPlainObject(b)?x.merge.call({caseless:E},F,b):x.isPlainObject(b)?x.merge({},b):x.isArray(b)?b.slice():b}function h(F,b,E){if(x.isUndefined(b)){if(!x.isUndefined(F))return l(void 0,F,E)}else return l(F,b,E)}function p(F,b){if(!x.isUndefined(b))return l(void 0,b)}function v(F,b){if(x.isUndefined(b)){if(!x.isUndefined(F))return l(void 0,F)}else return l(void 0,b)}function R(F,b,E){if(E in u)return l(F,b);if(E in s)return l(void 0,F)}const I={url:p,method:p,data:p,baseURL:v,transformRequest:v,transformResponse:v,paramsSerializer:v,timeout:v,timeoutMessage:v,withCredentials:v,withXSRFToken:v,adapter:v,responseType:v,xsrfCookieName:v,xsrfHeaderName:v,onUploadProgress:v,onDownloadProgress:v,decompress:v,maxContentLength:v,maxBodyLength:v,beforeRedirect:v,transport:v,httpAgent:v,httpsAgent:v,cancelToken:v,socketPath:v,responseEncoding:v,validateStatus:R,headers:(F,b)=>h(cf(F),cf(b),!0)};return x.forEach(Object.keys(Object.assign({},s,u)),function(b){const E=I[b]||h,tn=E(s[b],u[b],b);x.isUndefined(tn)&&E!==R||(i[b]=tn)}),i}const If="1.6.8",ws={};["object","boolean","number","function","string","symbol"].forEach((s,u)=>{ws[s]=function(l){return typeof l===s||"a"+(u<1?"n ":" ")+s}});const hf={};ws.transitional=function(u,i,l){function h(p,v){return"[Axios v"+If+"] Transitional option '"+p+"'"+v+(l?". "+l:"")}return(p,v,R)=>{if(u===!1)throw new X(h(v," has been removed"+(i?" in "+i:"")),X.ERR_DEPRECATED);return i&&!hf[v]&&(hf[v]=!0,console.warn(h(v," has been deprecated since v"+i+" and will be removed in the near future"))),u?u(p,v,R):!0}};function cv(s,u,i){if(typeof s!="object")throw new X("options must be an object",X.ERR_BAD_OPTION_VALUE);const l=Object.keys(s);let h=l.length;for(;h-- >0;){const p=l[h],v=u[p];if(v){const R=s[p],I=R===void 0||v(R,p,s);if(I!==!0)throw new X("option "+p+" must be "+I,X.ERR_BAD_OPTION_VALUE);continue}if(i!==!0)throw new X("Unknown option "+p,X.ERR_BAD_OPTION)}}const ds={assertOptions:cv,validators:ws},be=ds.validators;class Ir{constructor(u){this.defaults=u,this.interceptors={request:new uf,response:new uf}}async request(u,i){try{return await this._request(u,i)}catch(l){if(l instanceof Error){let h;Error.captureStackTrace?Error.captureStackTrace(h={}):h=new Error;const p=h.stack?h.stack.replace(/^.+\n/,""):"";l.stack?p&&!String(l.stack).endsWith(p.replace(/^.+\n.+\n/,""))&&(l.stack+=`
|
||||
`+p):l.stack=p}throw l}}_request(u,i){typeof u=="string"?(i=i||{},i.url=u):i=u||{},i=tt(this.defaults,i);const{transitional:l,paramsSerializer:h,headers:p}=i;l!==void 0&&ds.assertOptions(l,{silentJSONParsing:be.transitional(be.boolean),forcedJSONParsing:be.transitional(be.boolean),clarifyTimeoutError:be.transitional(be.boolean)},!1),h!=null&&(x.isFunction(h)?i.paramsSerializer={serialize:h}:ds.assertOptions(h,{encode:be.function,serialize:be.function},!0)),i.method=(i.method||this.defaults.method||"get").toLowerCase();let v=p&&x.merge(p.common,p[i.method]);p&&x.forEach(["delete","get","head","post","put","patch","common"],P=>{delete p[P]}),i.headers=pe.concat(v,p);const R=[];let I=!0;this.interceptors.request.forEach(function(T){typeof T.runWhen=="function"&&T.runWhen(i)===!1||(I=I&&T.synchronous,R.unshift(T.fulfilled,T.rejected))});const F=[];this.interceptors.response.forEach(function(T){F.push(T.fulfilled,T.rejected)});let b,E=0,tn;if(!I){const P=[lf.bind(this),void 0];for(P.unshift.apply(P,R),P.push.apply(P,F),tn=P.length,b=Promise.resolve(i);E<tn;)b=b.then(P[E++],P[E++]);return b}tn=R.length;let un=i;for(E=0;E<tn;){const P=R[E++],T=R[E++];try{un=P(un)}catch(q){T.call(this,q);break}}try{b=lf.call(this,un)}catch(P){return Promise.reject(P)}for(E=0,tn=F.length;E<tn;)b=b.then(F[E++],F[E++]);return b}getUri(u){u=tt(this.defaults,u);const i=Pf(u.baseURL,u.url);return Rf(i,u.params,u.paramsSerializer)}}x.forEach(["delete","get","head","options"],function(u){Ir.prototype[u]=function(i,l){return this.request(tt(l||{},{method:u,url:i,data:(l||{}).data}))}});x.forEach(["post","put","patch"],function(u){function i(l){return function(p,v,R){return this.request(tt(R||{},{method:u,headers:l?{"Content-Type":"multipart/form-data"}:{},url:p,data:v}))}}Ir.prototype[u]=i(),Ir.prototype[u+"Form"]=i(!0)});const Pr=Ir;class ys{constructor(u){if(typeof u!="function")throw new TypeError("executor must be a function.");let i;this.promise=new Promise(function(p){i=p});const l=this;this.promise.then(h=>{if(!l._listeners)return;let p=l._listeners.length;for(;p-- >0;)l._listeners[p](h);l._listeners=null}),this.promise.then=h=>{let p;const v=new Promise(R=>{l.subscribe(R),p=R}).then(h);return v.cancel=function(){l.unsubscribe(p)},v},u(function(p,v,R){l.reason||(l.reason=new Lt(p,v,R),i(l.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(u){if(this.reason){u(this.reason);return}this._listeners?this._listeners.push(u):this._listeners=[u]}unsubscribe(u){if(!this._listeners)return;const i=this._listeners.indexOf(u);i!==-1&&this._listeners.splice(i,1)}static source(){let u;return{token:new ys(function(h){u=h}),cancel:u}}}const hv=ys;function dv(s){return function(i){return s.apply(null,i)}}function pv(s){return x.isObject(s)&&s.isAxiosError===!0}const ps={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(ps).forEach(([s,u])=>{ps[u]=s});const gv=ps;function Df(s){const u=new Pr(s),i=df(Pr.prototype.request,u);return x.extend(i,Pr.prototype,u,{allOwnKeys:!0}),x.extend(i,u,null,{allOwnKeys:!0}),i.create=function(h){return Df(tt(s,h))},i}const hn=Df(ms);hn.Axios=Pr;hn.CanceledError=Lt;hn.CancelToken=hv;hn.isCancel=Cf;hn.VERSION=If;hn.toFormData=Nr;hn.AxiosError=X;hn.Cancel=hn.CanceledError;hn.all=function(u){return Promise.all(u)};hn.spread=dv;hn.isAxiosError=pv;hn.mergeConfig=tt;hn.AxiosHeaders=pe;hn.formToJSON=s=>Tf(x.isHTMLForm(s)?new FormData(s):s);hn.getAdapter=Lf.getAdapter;hn.HttpStatusCode=gv;hn.default=hn;class _v{constructor(u){this.resolver=u}async resolve(u){return this.resolver.get(u).then(i=>i.connection)}async call(u,i){const l=await this.resolve(u);let h=new URL(i.uri,l.url).toString();const p={"Content-Type":"application/json",Accept:"application/json"};return l.key&&(p["X-Api-Key"]=l.key),hn({method:i.method,url:h,headers:p,data:i.body,params:i.params}).then(v=>v.
Line truncated
|
||||
Please make sure it's online and set right API key in the configuration.`,life:3e3}),console.error(`Failed to refresh server - ${W}`,Te)}}async function tn(W){I.set(W,await l.getSessions(W))}async function un(W){W.version=await l.getVersion(W.id)}async function P(){b(),p.value=!0,await F();const W=[];for(const Y of R.value)W.push(E(Y.id));try{await Promise.all(W)}finally{p.value=!1}}async function T(W){await u.add(W),await P()}async function q(W){await u.remove(W),I.delete(W),await P()}async function k(W,Y){await u.edit(W,Y),await P()}function Z(W){var Y;return(Y=R.value.filter(zn=>zn.id===W))==null?void 0:Y[0]}async function rn(W,Y){await l.startSession(W,Y),P()}async function Vn(W,Y,zn){await l.stopSession(W,Y,zn),P()}async function Dn(W,Y){await l.logoutSession(W,Y),P()}async function ge(W,Y){return l.getScreenshot(W,Y)}async function $n(W,Y,zn){return l.getProfilePicture(W,Y,zn)}async function Oe(W,Y){return l.call(W,Y)}const it=G_(()=>{const W=new Array;return I.forEach((Y,zn)=>{const Te=Z(zn),It=Y.map(Mr=>{const Dt=Y_.cloneDeep(Mr);return Dt.server=Te,Dt});W.push(...It)}),W});return{servers:R,sessions:I,allSessions:it,refresh:P,refreshing:p,addServer:T,deleteServer:q,editServer:k,getServer:Z,startSession:rn,stopSession:Vn,logoutSession:Dn,getScreenshot:ge,getProfilePicture:$n,callServerAPI:Oe,latestVersion:h}});export{Sv as _,yv as a,Y_ as l,xv as u};
|
||||
Loaded 100 of 631 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user