Compare commits

..
57 Commits
Author SHA1 Message Date
devlikepro 359696408d [core] 2024.6.7
Release / amd64 - none - noweb (push) Canceled after 0s
Release / amd64 - chrome - chrome (push) Canceled after 0s
Release / amd64 - chromium - latest (push) Canceled after 0s
Release / linux/arm64 - chromium - arm (push) Canceled after 0s
Release / linux/arm64 - none - noweb-arm (push) Canceled after 0s
2024-06-25 13:36:40 +07:00
devlikepro d3766368f8 [core] delete status endpoint 2024-06-25 13:36:40 +07:00
devlikepro 73af7451fc [core] Use NOWEB fork with fixes
fixes #390
2024-06-25 11:58:24 +07:00
devlikepro e27fcefe45 [core] fix #373 2024-06-24 19:50:22 +07:00
devlikepro aa5ade5517 [core] Remove link to project
Fix #373
2024-06-24 19:43:20 +07:00
devlikepro 94b6a66ce4 [core] dashboard 2024-06-24 19:16:28 +07:00
devlikepro a51e486fa6 [core] timeout 10ms 2024-06-24 19:10:07 +07:00
devlikepro 2b608daea4 update dashboard 2024-06-24 18:50:38 +07:00
devlikepro aa60c2afd1 [core] warning 2024-06-24 18:49:26 +07:00
devlikepro cff22c74a9 [core] Fix sock auth 2024-06-24 18:43:23 +07:00
devlikepro b77b8ee0da [core] timeout for getEngineInfo, logs 2024-06-24 18:41:42 +07:00
devlikepro 610aef2f14 [core] Make getSessionMeInfo sync 2024-06-24 18:41:42 +07:00
devlikepro e15ca41d6e [core] websockets 2024-06-24 17:38:44 +07:00
devlikepro 60e9e53af4 [core] issue session.status, not session.status.changed 2024-06-24 17:36:20 +07:00
devlikepro 9812000724 [core] debug by default in NOWEB 2024-06-21 12:17:12 +07:00
devlikepro d72401fc39 [core] Add msgRetryCounterCache 2024-06-20 14:21:00 +07:00
devlikepro 822eba7982 [core] keepAliveIntervalMs back to 30s 2024-06-19 16:20:01 +07:00
devlikepro 9327564e6e [core] set defaultQueryTimeoutMs to 120s 2024-06-19 16:20:01 +07:00
devlikepro 6e9fe42a83 [core] bump version 2024-06-19 12:55:14 +07:00
devlikepro a32cf28ccb [core] fix forever "typing" status
fix #379
2024-06-19 12:54:43 +07:00
devlikepro 55b101802a [core] no more ssh 2024-06-19 12:04:11 +07:00
devlikepro ecda8b4394 [core] set "trace" by default for noweb 2024-06-19 12:04:09 +07:00
devlikepro 6d4f8d4c26 [core] Add logger to NOWEB engine 2024-06-19 11:30:41 +07:00
devlikepro 26aa53f3fa Use webhook.site 2024-06-18 11:18:39 +07:00
devlikepro 2f7a94ea3f [core] dashboard update
Release / amd64 - chrome - chrome (push) Canceled after 0s
Release / amd64 - chromium - latest (push) Canceled after 0s
Release / linux/arm64 - chromium - arm (push) Canceled after 0s
Release / amd64 - none - noweb (push) Canceled after 0s
Release / linux/arm64 - none - noweb-arm (push) Canceled after 0s
2024-06-18 11:02:16 +07:00
devlikepro 2b622b4ee9 [core] dashboard 2024-06-18 10:55:41 +07:00
devlikepro 3e280f1e08 [core] Bump version to 2024.6.5 2024-06-18 10:51:02 +07:00
devlikepro c54d52ad45 [core] built in ssl 2024-06-18 10:50:44 +07:00
devlikepro e54d3ea96b [core] fix for-swagger 2024-06-17 10:56:04 +07:00
devlikepro e07cb8257d [core] Bump to 2024.6.4
Release / amd64 - chrome - chrome (push) Canceled after 0s
Release / amd64 - chromium - latest (push) Canceled after 0s
Release / linux/arm64 - chromium - arm (push) Canceled after 0s
Release / amd64 - none - noweb (push) Canceled after 0s
Release / linux/arm64 - none - noweb-arm (push) Canceled after 0s
2024-06-17 10:37:11 +07:00
devlikepro 74b6a8fdba [core] add chats limit and offset 2024-06-17 10:36:51 +07:00
devlikepro e48c76397c [core] downgrade better-sqlite3
Release / amd64 - chrome - chrome (push) Canceled after 0s
Release / amd64 - chromium - latest (push) Canceled after 0s
Release / linux/arm64 - chromium - arm (push) Canceled after 0s
Release / amd64 - none - noweb (push) Canceled after 0s
Release / linux/arm64 - none - noweb-arm (push) Canceled after 0s
2024-06-14 13:52:39 +07:00
devlikepro 64aff5d041 [core] fix Dockerfile 2024-06-13 16:06:00 +07:00
devlikepro 87b24e35d0 [core] update dashboard 2024-06-13 15:58:37 +07:00
devlikepro fb48c81207 [core] rm dashboard 2024-06-13 15:57:36 +07:00
devlikepro cd9f302f8b [core] 2024.6.3 2024-06-13 15:46:43 +07:00
devlikepro df3bc97988 [core] noweb store 2024-06-13 15:46:43 +07:00
devlikepro 94191a2902 [core] noweb preview video 2024-06-13 15:46:43 +07:00
devlikepro a0dd540075 [core] webjs fix download media 2024-06-13 15:46:43 +07:00
devlikepro 5684665123 [core] Add getFilePath to LocalStore 2024-06-13 15:46:43 +07:00
devlikepro 5db407d750 [core] Fix docker pulls number 2024-06-08 17:02:30 +07:00
devlikepro 27a86f0dc1 [core] waha
Release / amd64 - chrome - chrome (push) Canceled after 0s
Release / amd64 - chromium - latest (push) Canceled after 0s
Release / linux/arm64 - chromium - arm (push) Canceled after 0s
Release / amd64 - none - noweb (push) Canceled after 0s
Release / linux/arm64 - none - noweb-arm (push) Canceled after 0s
2024-06-04 12:55:58 +07:00
devlikepro 767ea23173 [core] bump 2024.6.2 2024-06-04 12:54:24 +07:00
devlikepro 85707508ed [core] waha 2024-06-04 12:54:03 +07:00
devlikepro e8bc59ff9e [core] Bump to 2024.6.1 2024-06-02 10:25:03 +07:00
devlikepro 7f9e622a64 [core] push version tags 2024-06-02 10:06:49 +07:00
devlikepro b22e37596b Revert "[core] Don't push each version"
This reverts commit 0e295bebde.
2024-06-02 10:04:12 +07:00
devlikepro 642e90b1c8 [core] poll response fix
fix #356
2024-06-02 10:01:40 +07:00
devlikepro 8402ab896a [core] Fix ack for status@broadcast
Release / amd64 - chrome - chrome (push) Canceled after 0s
Release / amd64 - chromium - latest (push) Canceled after 0s
Release / linux/arm64 - chromium - arm (push) Canceled after 0s
Release / amd64 - none - noweb (push) Canceled after 0s
Release / linux/arm64 - none - noweb-arm (push) Canceled after 0s
fix #329
2024-06-01 16:16:19 +07:00
devlikepro d6dc7edf66 [core] WEBJS enable io from chrome if debug enabled 2024-05-31 18:16:34 +07:00
devlikepro 8f6dbf70f7 [core] WEBJS auto restart on FAILED
fix #355
2024-05-31 18:16:34 +07:00
devlikepro bd14d9a71e [core] 2024.5.14 2024-05-31 13:32:57 +07:00
devlikepro 61a0a38dd2 [core] Restart NOWEB every 30 minutes 2024-05-31 12:50:38 +07:00
devlikepro 102f438a99 [core] NOWEB fix for creds.json
fix #347
2024-05-31 12:18:11 +07:00
devlikepro 586a2d1c79 [core] rm import 2024-05-31 11:54:49 +07:00
devlikepro 5b04c39107 [core] move get default engine to EngineConfigService.ts 2024-05-31 11:54:49 +07:00
devlikepro d96e91ea70 [core] Better logging 2024-05-31 11:54:49 +07:00
623 changed files with 851169 additions and 1708 deletions

No files matched your search

+2 -2
View File
@@ -23,8 +23,8 @@ assignees: ''
```
> You can get the WAHA version by calling `GET /api/version` Try to update to
> [the latest version](https://github.com/devlikeapro/whatsapp-http-api/releases)
> before creating an issue!
> [the latest version](https://github.com/devlikeapro/waha/releases) before
> creating an issue!
**To Reproduce** Steps to reproduce the behavior:
+1 -1
View File
@@ -3,7 +3,7 @@
#
OWNER=devlikeapro
REPO=whatsapp-http-api-plus
REPO=waha-plus
# list workflows
gh api -X GET /repos/$OWNER/$REPO/actions/workflows | jq '.workflows[] | .name,.id'
+1
View File
@@ -55,6 +55,7 @@ jobs:
flavor: latest=false
tags: |
type=raw,value=${{ matrix.tag }}
type=raw,value=${{ matrix.tag }}-{{tag}}
- name: Login to image repository
if: github.ref_type == 'tag'
+1
View File
@@ -1,6 +1,7 @@
.yarn
example.ts
.*sessions
.secrets
tokens
files
venv
+10 -8
View File
@@ -6,21 +6,16 @@ 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
#
@@ -29,12 +24,15 @@ RUN yarn build && find ./dist -name "*.d.ts" -delete
FROM node:${NODE_VERSION} as release
ENV PUPPETEER_SKIP_DOWNLOAD=True
# Quick fix for memory potential memory leaks
# https://github.com/devlikeapro/whatsapp-http-api/issues/347
# https://github.com/devlikeapro/waha/issues/347
ENV NODE_OPTIONS="--max-old-space-size=16384"
ARG USE_BROWSER=chromium
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 fonts if using either chromium or chrome
RUN if [ "$USE_BROWSER" = "chromium" ] || [ "$USE_BROWSER" = "chrome" ]; then \
apt-get update \
@@ -70,6 +68,10 @@ COPY package.json ./
COPY --from=build /src/node_modules ./node_modules
COPY --from=build /src/dist ./dist
# Chokidar options to monitor file changes
ENV CHOKIDAR_USEPOLLING=1
ENV CHOKIDAR_INTERVAL=5000
# Run command, etc
EXPOSE 3000
CMD yarn start:prod
+9 -9
View File
@@ -1,39 +1,39 @@
build:
docker build . -t devlikeapro/whatsapp-http-api
docker build . -t devlikeapro/waha
build-chrome:
docker build . -t devlikeapro/whatsapp-http-api-plus:chrome --build-arg USE_BROWSER=chrome
docker build . -t devlikeapro/waha-plus:chrome --build-arg USE_BROWSER=chrome
build-noweb:
docker build . -t devlikeapro/whatsapp-http-api:noweb --build-arg USE_BROWSER=none
docker build . -t devlikeapro/waha:noweb --build-arg USE_BROWSER=none
build-all: build build-chrome build-noweb
build-plus:
docker build . -t devlikeapro/whatsapp-http-api-plus
docker build . -t devlikeapro/waha-plus
build-ssh:
# check IMAGE provided
@[ "${IMAGE}" ] || ( echo "Add APP: make build-ssh image=devlikeapro/whatsapp-http-api"; exit 1 );
@[ "${IMAGE}" ] || ( echo "Add APP: make build-ssh image=devlikeapro/waha"; exit 1 );
eval $(ssh-agent) && \
ssh-add ~/.ssh/id_rsa && \
docker buildx build --ssh default=${SSH_AUTH_SOCK} . -t ${IMAGE} --build-arg USE_BROWSER=none
stop:
docker stop whatsapp-http-api
docker stop waha
clean: stop
sudo rm -rf .sessions
push:
docker push devlikeapro/whatsapp-http-api
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 @adiwajshing/baileys@github:devlikeapro/Baileys#fork-master
. ${NVM_DIR}/nvm.sh && nvm exec yarn up venom-bot
start-proxy:
+5 -5
View File
@@ -1,4 +1,4 @@
# WhatsApp HTTP API (WAHA)
# WAHA
<p align="center">
<img src="./logo.png" style='border-radius: 50%' width='150'/>
@@ -6,7 +6,7 @@
**WAHA** - **W**hats**A**pp **H**TTP **A**PI (REST API) that you can install on your own server and run in less than 5 minutes!
[![Docker Pulls](https://img.shields.io/docker/pulls/devlikeapro/whatsapp-http-api)](https://hub.docker.com/r/devlikeapro/whatsapp-http-api)
[![Docker Pulls](https://img.shields.io/docker/pulls/devlikeapro/whatsapp-http-api)](https://hub.docker.com/r/devlikeapro/waha)
- Documentation: [https://waha.devlike.pro/](https://waha.devlike.pro/)
- Swagger Example: [https://waha.devlike.pro/swagger](https://waha.devlike.pro/swagger)
@@ -104,13 +104,13 @@ Assuming you have installed [Docker](https://docs.docker.com/get-docker/), let's
```bash
docker pull devlikeapro/whatsapp-http-api
docker pull devlikeapro/waha
```
```bash
docker login -u devlikeapro -p {KEY}
docker pull devlikeapro/whatsapp-http-api-plus
docker pull devlikeapro/waha-plus
docker logout
```
@@ -121,7 +121,7 @@ Read more about how to get `PASSWORD` for [Plus Version →]({{< relref "plus-ve
Run WhatsApp HTTP API:
```bash
docker run -it --rm -p 3000:3000/tcp --name whatsapp-http-api devlikeapro/whatsapp-http-api
docker run -it --rm -p 3000:3000/tcp --name waha devlikeapro/waha
# It prints logs and the last line must be
# WhatsApp HTTP API is running on: http://[::1]:3000
+47 -12
View File
@@ -1,24 +1,25 @@
version: '3'
services:
whatsapp-http-api:
waha:
# Check available Docker images:
# https://waha.devlike.pro/docs/how-to/engines/#docker-images
image: devlikeapro/whatsapp-http-api
container_name: whatsapp-http-api
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
# 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
whatsapp-http-api-plus:
waha-plus:
# Check available Docker images:
# https://waha.devlike.pro/docs/how-to/engines/#docker-images
image: devlikeapro/whatsapp-http-api-plus:chrome
container_name: whatsapp-http-api-plus
image: devlikeapro/waha-plus:chrome
container_name: waha-plus
ports:
- '3000:3000/tcp'
volumes:
@@ -26,7 +27,7 @@ services:
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_URL=https://webhook.site/11111111-1111-1111-1111-11111111
# - WHATSAPP_HOOK_EVENTS=message
# - WHATSAPP_API_HOSTNAME=localhost
- WHATSAPP_DEFAULT_ENGINE=WEBJS
@@ -43,11 +44,11 @@ services:
# - WAHA_WEBJS_WEB_VERSION=2.2412.54-videofix
restart: always
whatsapp-http-api-plus--mongodb:
waha-plus--mongodb:
# Check available Docker images:
# https://waha.devlike.pro/docs/how-to/engines/#docker-images
image: devlikeapro/whatsapp-http-api-plus:chrome
container_name: whatsapp-http-api-plus--mongodb
image: devlikeapro/waha-plus:chrome
container_name: waha-plus--mongodb
ports:
- '3000:3000/tcp'
volumes:
@@ -55,7 +56,7 @@ services:
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_URL=https://webhook.site/11111111-1111-1111-1111-11111111
# - WHATSAPP_HOOK_EVENTS=message
# - WHATSAPP_API_KEY=321
# - WHATSAPP_SWAGGER_USERNAME=admin
@@ -67,6 +68,40 @@ services:
- 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
+12 -12
View File
@@ -19,9 +19,9 @@ Download and start WhatsApp HTTP API docker container
```bash
# Download the image
docker pull devlikeapro/whatsapp-http-api
docker pull devlikeapro/waha
# Run the docker container
docker run -it --rm --network=host -e WHATSAPP_HOOK_URL=http://localhost:5000/bot -e "WHATSAPP_HOOK_EVENTS=*" --name whatsapp-http-api devlikeapro/whatsapp-http-api
docker run -it --rm --network=host -e WHATSAPP_HOOK_URL=http://localhost:5000/bot -e "WHATSAPP_HOOK_EVENTS=*" --name waha devlikeapro/waha
# It prints logs and the last line must be
# WhatsApp HTTP API is running on: http://[::1]:3000
@@ -36,11 +36,11 @@ commands to download the image
```bash
# Download the image
docker pull devlikeapro/whatsapp-http-api:arm
# Rename it, so you can use devlikeapro/whatsapp-http-api image in other place
docker tag devlikeapro/whatsapp-http-api:arm devlikeapro/whatsapp-http-api
docker pull devlikeapro/waha:arm
# Rename it, so you can use devlikeapro/waha image in other place
docker tag devlikeapro/waha:arm devlikeapro/waha
# Run the docker container
docker run -it --rm --network=host -e WHATSAPP_HOOK_URL=http://localhost:5000/bot -e "WHATSAPP_HOOK_EVENTS=*" --name whatsapp-http-api devlikeapro/whatsapp-http-api
docker run -it --rm --network=host -e WHATSAPP_HOOK_URL=http://localhost:5000/bot -e "WHATSAPP_HOOK_EVENTS=*" --name waha devlikeapro/waha
# It prints logs and the last line must be
# WhatsApp HTTP API is running on: http://[::1]:3000
@@ -79,9 +79,9 @@ set up webhooks and reply to incoming messages.
```bash
# Clone the git repository with example
git clone https://github.com/devlikeapro/whatsapp-http-api.git
git clone https://github.com/devlikeapro/waha.git
# Open python example folder
cd whatsapp-http-api/examples/python
cd waha/examples/python
# Install requirements
python -mpip install -r requirements.txt
# Run the bot
@@ -106,18 +106,18 @@ Download **WAHA Plus** version:
```bash
# Download the image
docker pull devlikeapro/whatsapp-http-api-plus
docker pull devlikeapro/waha-plus
# Run the docker container
docker run -it --rm --network=host -e WHATSAPP_HOOK_URL=http://localhost:5000/bot -e "WHATSAPP_HOOK_EVENTS=*" --name whatsapp-http-api devlikeapro/whatsapp-http-api-plus
docker run -it --rm --network=host -e WHATSAPP_HOOK_URL=http://localhost:5000/bot -e "WHATSAPP_HOOK_EVENTS=*" --name waha devlikeapro/waha-plus
```
Run the WhatsApp Download Files bot:
```bash
# Clone the git repository with example
git clone https://github.com/devlikeapro/whatsapp-http-api.git
git clone https://github.com/devlikeapro/waha.git
# Open python example folder
cd whatsapp-http-api/examples/python
cd waha/examples/python
# Install requirements
python -mpip install -r requirements.txt
# Run the bot
+12 -3
View File
@@ -1,5 +1,5 @@
{
"name": "whatsapp-http-api",
"name": "waha",
"version": "0.0.1",
"description": "",
"author": "",
@@ -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",
"@adiwajshing/keyed-db": "^0.2.4",
"@nestjs/axios": "^3.0.2",
"@nestjs/common": "^9.0.9",
@@ -30,17 +30,25 @@
"@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",
"async-lock": "^1.4.1",
"better-sqlite3": "9.6.0",
"check-disk-space": "^3.4.0",
"class-validator": "^0.12.2",
"chokidar": "^3.6.0",
"class-transformer": "^0.5.1",
"class-validator": "0.14.0",
"del": "^6.0.0",
"express-basic-auth": "^1.2.1",
"file-type": "16.5.4",
"https-proxy-agent": "^7.0.0",
"knex": "^3.1.0",
"libphonenumber-js": "^1.10.36",
"link-preview-js": "^3.0.4",
"lodash": "^4.17.21",
@@ -56,6 +64,7 @@
"requestretry": "^4.1.1",
"rimraf": "^3.0.2",
"rxjs": "^7.1.0",
"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"
+34
View File
@@ -0,0 +1,34 @@
import { BufferJSON } from '@adiwajshing/baileys/lib/Utils';
import {
CallHandler,
ExecutionContext,
Injectable,
NestInterceptor,
StreamableFile,
} from '@nestjs/common';
import { Observable } from 'rxjs';
import { map } from 'rxjs/operators';
@Injectable()
export class BufferJsonReplacerInterceptor implements NestInterceptor {
intercept(context: ExecutionContext, next: CallHandler): Observable<any> {
return next.handle().pipe(
map((data) => {
if (typeof data !== 'object' || data === null) {
return data;
}
// Buffer
if (Buffer.isBuffer(data) || data?.data || data?.url) {
return data;
}
// StreamableFile
if (data instanceof StreamableFile) {
return data;
}
return JSON.parse(JSON.stringify(data, BufferJSON.replacer));
}),
);
}
}
+10 -5
View File
@@ -4,16 +4,17 @@ import {
Delete,
Get,
Param,
Post,
Put,
Query,
UsePipes,
ValidationPipe,
} from '@nestjs/common';
import { ApiOperation, ApiSecurity, ApiTags } from '@nestjs/swagger';
import { SessionManager } from '../core/abc/manager.abc';
import { WhatsappSession } from '../core/abc/session.abc';
import { parseBool } from '../helpers';
import { GetChatMessagesQuery } from '../structures/chats.dto';
import { GetChatMessagesQuery, GetChatsQuery } from '../structures/chats.dto';
import { EditMessageRequest } from '../structures/chatting.dto';
import {
ChatIdApiParam,
@@ -25,14 +26,18 @@ import {
@ApiSecurity('api_key')
@Controller('api/:session/chats')
@ApiTags('chats')
@UsePipes(new ValidationPipe({ transform: true }))
class ChatsController {
constructor(private manager: SessionManager) {}
@Get('')
@SessionApiParam
@ApiOperation({ summary: 'Get all chats' })
getAllChats(@SessionParam session: WhatsappSession) {
return session.getChats();
@ApiOperation({ summary: 'Get chats' })
getChats(
@SessionParam session: WhatsappSession,
@Query() query: GetChatsQuery,
) {
return session.getChats(query);
}
@Delete(':chatId')
+1 -1
View File
@@ -31,7 +31,7 @@ export class AllExceptionsFilter implements ExceptionFilter {
/**
* If file not found - we get weird 500 error
* So we convert that exception manually to 404 and send appropriate JSON response
* @issue https://github.com/devlikeapro/whatsapp-http-api/issues/134
* @issue https://github.com/devlikeapro/waha/issues/134
* @solution https://github.com/nestjs/serve-static/issues/139#issuecomment-612429557
*/
if (exception.code === 'ENOENT') {
+2 -2
View File
@@ -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();
}
}
+11
View File
@@ -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 };
-11
View File
@@ -112,17 +112,6 @@ export class WhatsappConfigService {
return this.configService.get('WHATSAPP_SESSIONS_MONGO_URL', undefined);
}
getDefaultEngineName(): WAHAEngine {
const value = getEngineName();
if (value in WAHAEngine) {
return WAHAEngine[value];
}
console.log(
`Unknown WhatsApp default engine WHATSAPP_DEFAULT_ENGINE=${value}. Using WEBJS`,
);
return WAHAEngine.WEBJS;
}
get(name: string, defaultValue: any = undefined): any {
return this.configService.get(name, defaultValue);
}
+2 -2
View File
@@ -21,8 +21,8 @@ export class SwaggerConfiguratorCore {
'<ul>' +
'<li><a href="https://waha.devlike.pro/" target="_blank">Documentation</a></li>' +
'<li><a href="https://waha.devlike.pro/docs/how-to/engines/#features" target="_blank">Supported features in engines</a></li>' +
'<li><a href="https://github.com/devlikeapro/whatsapp-http-api" target="_blank">GitHub - WAHA Core</a></li>' +
'<li><a href="https://github.com/devlikeapro/whatsapp-http-api-plu' + // Separate line to pass pre-commit check
'<li><a href="https://github.com/devlikeapro/waha" target="_blank">GitHub - WAHA Core</a></li>' +
'<li><a href="https://github.com/devlikeapro/waha-plu' + // Separate line to pass pre-commit check
's" target="_blank">GitHub - WAHA Plus</a></li>' +
'<li><b>NEW!</b> - <a href="/dashboard">WAHA Dashboard</a></li>' +
'<li><b>NEW!</b> - <a href="https://waha.devlike.pro/docs/how-to/waha-dashboard">WAHA Dashboard Documentation</a></li>' +
+28 -5
View File
@@ -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);
};
}
}
+12 -9
View File
@@ -1,4 +1,5 @@
import { ConsoleLogger } from '@nestjs/common';
import { GetChatsQuery } from '@waha/structures/chats.dto';
import { EventEmitter } from 'events';
import * as fs from 'fs';
import { MessageId } from 'whatsapp-web.js';
@@ -40,6 +41,7 @@ import {
SessionConfig,
} from '../../structures/sessions.dto';
import {
DeleteStatusRequest,
ImageStatus,
TextStatus,
VideoStatus,
@@ -74,7 +76,6 @@ export function ensureSuffix(phone) {
export enum WAHAInternalEvent {
ENGINE_START = 'engine.start',
SESSION_STATUS_CHANGED = 'session.status.changed',
}
export interface SessionParams {
@@ -126,7 +127,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() {
@@ -184,10 +186,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;
@@ -221,8 +220,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> {
@@ -285,7 +284,7 @@ export abstract class WhatsappSession {
/**
* Chats methods
*/
public getChats() {
public getChats(query: GetChatsQuery) {
throw new NotImplementedByEngineError();
}
@@ -454,6 +453,10 @@ export abstract class WhatsappSession {
throw new NotImplementedByEngineError();
}
public deleteStatus(request: DeleteStatusRequest) {
throw new NotImplementedByEngineError();
}
public async getEngineInfo(): Promise<any> {
return {};
}
+132
View File
@@ -0,0 +1,132 @@
import { BeforeApplicationShutdown, ConsoleLogger } 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 { getLogLevels } from '@waha/helpers';
import { WAHAEvents } from '@waha/structures/enums.dto';
import { HeartbeatJob } from '@waha/utils/HeartbeatJob';
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 log: ConsoleLogger;
private heartbeat: HeartbeatJob;
constructor(private manager: SessionManager) {
const levels = getLogLevels(false);
this.log = new ConsoleLogger('WebsocketGateway', { logLevels: levels });
this.heartbeat = new HeartbeatJob(this.log, 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.log.debug(`New client connected: ${request.url}`);
const params = this.getParams(id, request, socket);
if (!params) {
return;
}
const { session, events } = params;
this.log.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.log.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.log.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.log.debug(`Client disconnected - ${socket.id}`);
this.listeners.delete(socket);
}
async beforeApplicationShutdown(signal?: string) {
this.log.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.log.log('Websocket server is down');
}
afterInit(server: Server) {
this.log.debug('Websocket server initialized');
this.manager.events.on(
WAHAEvents.SESSION_STATUS,
this.sendToAll.bind(this),
);
this.log.debug('Subscribed to manager events');
this.log.debug('Starting heartbeat service...');
this.heartbeat.start(server);
this.log.debug('Heartbeat service started');
}
sendToAll(data: any) {
this.listeners.forEach((options, client) => {
if (options.events.length === 0) {
return;
}
this.log.debug('Sending data to client', data);
client.send(JSON.stringify(data));
});
}
}
+17 -1
View File
@@ -1,8 +1,11 @@
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 { WebsocketGatewayCore } from '@waha/core/api/websocket.gateway.core';
import { join } from 'path';
import { AuthController } from '../api/auth.controller';
@@ -82,11 +85,16 @@ const PROVIDERS = [
provide: WAHAHealthCheckService,
useClass: WAHAHealthCheckServiceCore,
},
{
provide: APP_INTERCEPTOR,
useClass: BufferJsonReplacerInterceptor,
},
DashboardConfigServiceCore,
SwaggerConfigServiceCore,
WhatsappConfigService,
EngineConfigService,
ConsoleLogger,
WebsocketGatewayCore,
];
@Module({
@@ -96,4 +104,12 @@ const PROVIDERS = [
})
export class AppModuleCore {
constructor(protected config: WhatsappConfigService) {}
static getHttpsOptions() {
return undefined;
}
static appReady(app: INestApplication) {
return;
}
}
+13
View File
@@ -2,11 +2,24 @@ import { Injectable } from '@nestjs/common';
import { ConfigService } from '@nestjs/config';
import { parseBool } from '../../helpers';
import { WAHAEngine } from '../../structures/enums.dto';
import { getEngineName } from '../../version';
@Injectable()
export class EngineConfigService {
constructor(protected configService: ConfigService) {}
getDefaultEngineName(): WAHAEngine {
const value = getEngineName();
if (value in WAHAEngine) {
return WAHAEngine[value];
}
console.log(
`Unknown WhatsApp default engine WHATSAPP_DEFAULT_ENGINE=${value}. Using WEBJS`,
);
return WAHAEngine.WEBJS;
}
get shouldPrintQR(): boolean {
const value = this.configService.get('WAHA_PRINT_QR', true);
return parseBool(value);
@@ -1,8 +1,6 @@
import { useMultiFileAuthState } from '@adiwajshing/baileys';
import { Store } from 'whatsapp-web.js';
import { DataStore } from '../../abc/DataStore';
import { LocalStore } from '../../storage/LocalStore';
import { useMultiFileAuthState } from './useMultiFileAuthState';
export class NowebAuthFactoryCore {
buildAuth(store: DataStore, name: string) {
+358 -97
View File
@@ -1,29 +1,46 @@
import makeWASocket, {
Browsers,
Contact,
DisconnectReason,
extractMessageContent,
getAggregateVotesInPollMessage,
getKeyAuthor,
isJidGroup,
isJidStatusBroadcast,
isRealMessage,
jidNormalizedUser,
makeCacheableSignalKeyStore,
makeInMemoryStore,
normalizeMessageContent,
PresenceData,
proto,
WAMessageContent,
WAMessageKey,
} from '@adiwajshing/baileys';
import { isLidUser } from '@adiwajshing/baileys/lib/WABinary/jid-utils';
import { UnprocessableEntityException } from '@nestjs/common';
import { NowebInMemoryStore } from '@waha/core/engines/noweb/store/NowebInMemoryStore';
import { flipObject, getLogLevels, parseBool, splitAt } from '@waha/helpers';
import { PairingCodeResponse } from '@waha/structures/auth.dto';
import { GetChatsQuery } from '@waha/structures/chats.dto';
import { ContactQuery, ContactRequest } from '@waha/structures/contacts.dto';
import {
PollVote,
PollVotePayload,
WAMessageAckBody,
} from '@waha/structures/webhooks.dto';
import * as Buffer from 'buffer';
import { request } from 'express';
import { Agent } from 'https';
import * as lodash from 'lodash';
import { PairingCodeResponse } from 'src/structures/auth.dto';
import { toNumber } from 'lodash';
import * as NodeCache from 'node-cache';
import type { Logger } from 'pino';
import { flipObject, splitAt } from '../../../helpers';
import {
ChatRequest,
CheckNumberStatusQuery,
EditMessageRequest,
GetMessageQuery,
MessageContactVcardRequest,
MessageDestination,
MessageFileRequest,
@@ -39,7 +56,6 @@ import {
SendSeenRequest,
WANumberExistResult,
} from '../../../structures/chatting.dto';
import { ContactQuery, ContactRequest } from '../../../structures/contacts.dto';
import {
ACK_UNKNOWN,
SECOND,
@@ -62,12 +78,11 @@ import {
WAMessageReaction,
} from '../../../structures/responses.dto';
import { MeInfo } from '../../../structures/sessions.dto';
import { BROADCAST_ID, TextStatus } from '../../../structures/status.dto';
import {
PollVote,
PollVotePayload,
WAMessageAckBody,
} from '../../../structures/webhooks.dto';
BROADCAST_ID,
DeleteStatusRequest,
TextStatus,
} from '../../../structures/status.dto';
import { IEngineMediaProcessor } from '../../abc/media.abc';
import {
ensureSuffix,
@@ -80,14 +95,18 @@ 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';
import { NowebPersistentStore } from './store/NowebPersistentStore';
import { NowebStorageFactoryCore } from './store/NowebStorageFactoryCore';
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')();
const pino = require('pino');
export const BaileysEvents = {
CONNECTION_UPDATE: 'connection.update',
@@ -109,21 +128,40 @@ const PresenceStatuses = {
const ToEnginePresenceStatus = flipObject(PresenceStatuses);
export class WhatsappSessionNoWebCore extends WhatsappSession {
private START_ATTEMPT_DELAY_SECONDS = 2;
private AUTO_RESTART_AFTER_SECONDS = 30 * 60;
engine = WAHAEngine.NOWEB;
authFactory = new NowebAuthFactoryCore();
private restartTimeoutId: null | ReturnType<typeof setTimeout> = null;
storageFactory = new NowebStorageFactoryCore();
private startTimeoutId: null | ReturnType<typeof setTimeout> = null;
private autoRestartTimeoutId: null | ReturnType<typeof setTimeout> = null;
public logger: Logger;
private msgRetryCounterCache: NodeCache;
get listenConnectionEventsFromTheStart() {
return true;
}
sock: any;
store: any;
sock: ReturnType<typeof makeWASocket>;
store: INowebStore;
private qr: QR;
public constructor(config) {
super(config);
this.qr = new QR();
const levels = getLogLevels(this.sessionConfig?.debug);
const debug = levels.includes('debug');
const logger = pino({ level: debug ? 'debug' : 'info' });
this.logger = logger.child({
session: this.name,
});
// 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,
});
}
start() {
@@ -132,20 +170,27 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
}
getSocketConfig(agent, state) {
const fullSyncEnabled = this.sessionConfig?.noweb?.store?.fullSync || false;
const browser = fullSyncEnabled
? Browsers.ubuntu('Desktop')
: Browsers.ubuntu('Chrome');
return {
agent: agent,
fetchAgent: agent,
auth: {
creds: state.creds,
/** caching makes the store faster to send/recv messages */
keys: makeCacheableSignalKeyStore(state.keys, logger),
keys: makeCacheableSignalKeyStore(state.keys, this.logger),
},
printQRInTerminal: false,
browser: Browsers.ubuntu('Chrome'),
logger: logger,
browser: browser,
logger: this.logger,
mobile: false,
defaultQueryTimeoutMs: undefined,
defaultQueryTimeoutMs: 120_000,
keepAliveIntervalMs: 30_000,
getMessage: (key) => this.getMessage(key),
syncFullHistory: fullSyncEnabled,
msgRetryCounterCache: this.msgRetryCounterCache,
};
}
@@ -156,8 +201,8 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
);
const agent = this.makeAgent();
const socketConfig = this.getSocketConfig(agent, state);
const sock: any = makeWASocket(socketConfig);
sock.ev.on(BaileysEvents.CREDS_UPDATE, saveCreds);
const sock = makeWASocket(socketConfig);
sock.ev.on('creds.update', saveCreds);
return sock;
}
@@ -168,14 +213,33 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
return createAgentProxy(this.proxyConfig);
}
connectStore() {
async connectStore() {
this.log.debug(`Connecting store...`);
if (!this.store) {
this.log.debug(`Making a new auth store...`);
this.store = makeInMemoryStore({ logger: logger });
this.log.debug(`Making a new store...`);
const levels = getLogLevels(this.sessionConfig?.debug);
const log = buildLogger(`NowebStore - ${this.name}`, levels);
const storeEnabled = this.sessionConfig?.noweb?.store?.enabled || false;
if (storeEnabled) {
this.log.debug('Using NowebPersistentStore');
const storage = this.storageFactory.createStorage(
this.sessionStore,
this.name,
);
this.store = new NowebPersistentStore(log, storage);
await this.store.init().catch((err) => {
this.log.error(`Failed to initialize storage or store: ${err}`);
this.status = WAHASessionStatus.FAILED;
this.end();
throw err;
});
} else {
this.log.debug('Using NowebInMemoryStore');
this.store = new NowebInMemoryStore();
}
}
this.log.debug(`Binding store to socket...`);
this.store.bind(this.sock.ev);
this.store.bind(this.sock.ev, this.sock);
}
resubscribeToKnownPresences() {
@@ -186,14 +250,33 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
async buildClient() {
this.sock = await this.makeSocket();
this.connectStore();
this.issueMessageUpdateOnEdits();
this.issuePresenceUpdateOnMessageUpsert();
if (this.isDebugEnabled()) {
this.listenEngineEventsInDebugMode();
}
await this.connectStore();
if (this.listenConnectionEventsFromTheStart) {
this.listenConnectionEvents();
this.events.emit(WAHAInternalEvent.ENGINE_START);
}
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...');
this.sock?.end(new Error('auto-restart'));
}, delay * SECOND);
}
protected async getMessage(
@@ -213,22 +296,24 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
}
private restartClient() {
if (this.restartTimeoutId) {
if (this.startTimeoutId) {
this.log.log(
'Request to restart is already in progress, ignoring this request',
);
return;
}
this.log.log('Setting up client restart in 2 seconds...');
this.restartTimeoutId = setTimeout(() => {
this.restartTimeoutId = undefined;
this.log.log(
`Setting up client start in ${this.START_ATTEMPT_DELAY_SECONDS} seconds...`,
);
this.startTimeoutId = setTimeout(() => {
this.startTimeoutId = undefined;
this.buildClient();
}, 2 * SECOND);
}, this.START_ATTEMPT_DELAY_SECONDS * SECOND);
}
protected listenConnectionEvents() {
this.log.debug(`Start listening ${BaileysEvents.CONNECTION_UPDATE}...`);
this.sock.ev.on(BaileysEvents.CONNECTION_UPDATE, async (update) => {
this.sock.ev.on('connection.update', async (update) => {
const { connection, lastDisconnect, qr, isNewLogin } = update;
if (isNewLogin) {
this.restartClient();
@@ -239,19 +324,21 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
return;
} else if (connection === 'close') {
const shouldReconnect =
// @ts-ignore: Property output does not exist on type 'Error'
lastDisconnect.error?.output?.statusCode !==
DisconnectReason.loggedOut;
this.log.error(
'connection closed due to ',
lastDisconnect.error,
', reconnecting ',
shouldReconnect,
);
this.qr.save('');
// reconnect if not logged out
if (shouldReconnect) {
this.log.log(
`Connection closed due to '${lastDisconnect.error}', reconnecting...`,
);
this.restartClient();
} else {
this.log.error(
`Connection closed due to '${lastDisconnect.error}', do not reconnect the session.`,
);
await this.end();
this.status = WAHASessionStatus.FAILED;
}
}
@@ -267,24 +354,90 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
}
async stop() {
this.sock?.ev?.removeAllListeners();
this.sock?.ws?.removeAllListeners();
this.sock?.ws?.close();
this.status = WAHASessionStatus.STOPPED;
this.events.removeAllListeners();
await this.end();
return;
}
async getSessionMeInfo(): Promise<MeInfo | null> {
const me = this.sock.authState?.creds?.me;
private issueMessageUpdateOnEdits() {
// Remove it after it's been merged
// https://github.com/WhiskeySockets/Baileys/pull/855/
this.sock.ev.on('messages.upsert', ({ messages }) => {
for (const message of messages) {
const content = normalizeMessageContent(message.message);
const protocolMsg = content?.protocolMessage;
if (
protocolMsg !== null &&
protocolMsg !== undefined &&
protocolMsg.editedMessage
) {
this.sock?.ev.emit('messages.update', [
{
key: {
...message.key,
id: protocolMsg.key.id,
},
update: { message: protocolMsg.editedMessage },
},
]);
}
}
});
}
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.log.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);
// @ts-ignore
this.sock?.ev?.removeAllListeners();
this.sock?.ws?.removeAllListeners();
this.sock?.end(undefined);
this.store?.close();
}
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;
}
/**
@@ -361,7 +514,7 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
}
sendText(request: MessageTextRequest) {
const chatId = this.ensureSuffix(request.chatId);
const chatId = toJID(this.ensureSuffix(request.chatId));
const message = {
text: request.text,
mentions: request.mentions?.map(toJID),
@@ -372,7 +525,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(
@@ -391,7 +551,7 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
}
async sendContactVCard(request: MessageContactVcardRequest) {
const chatId = this.ensureSuffix(request.chatId);
const chatId = toJID(this.ensureSuffix(request.chatId));
const contacts = request.contacts.map((el) => ({ vcard: toVcard(el) }));
await this.sock.sendMessage(chatId, {
contacts: {
@@ -453,7 +613,7 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
sendLinkPreview(request: MessageLinkPreviewRequest) {
const text = `${request.title}\n${request.url}`;
const chatId = this.ensureSuffix(request.chatId);
const chatId = toJID(this.ensureSuffix(request.chatId));
return this.sock.sendMessage(chatId, { text: text });
}
@@ -475,6 +635,31 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
return this.sock.sendPresenceUpdate('paused', request.chatId);
}
async getMessages(query: GetMessageQuery) {
return this.getChatMessages(query.chatId, query.limit, query.downloadMedia);
}
public async getChatMessages(
chatId: string,
limit: number,
downloadMedia: boolean,
) {
downloadMedia = parseBool(downloadMedia);
const messages = await this.store.getMessagesByJid(
toJID(chatId),
toNumber(limit),
);
const result = [];
for (const msg of messages) {
const wamsg = await this.processIncomingMessage(msg, downloadMedia);
if (!wamsg) {
continue;
}
result.push(wamsg);
}
return result;
}
async setReaction(request: MessageReactionRequest) {
const key = parseMessageId(request.messageId);
const reactionMessage = {
@@ -500,14 +685,31 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
}
/**
* Contacts methods
* Chats methods
*/
getContact(query: ContactQuery) {
throw new NotImplementedByEngineError();
async getChats(query: GetChatsQuery) {
const chats = await this.store.getChats(query.limit, query.offset);
// Remove unreadCount, it's not ready yet
chats.forEach((chat) => delete chat.unreadCount);
return chats;
}
getContacts() {
throw new NotImplementedByEngineError();
/**
* Contacts methods
*/
async getContact(query: ContactQuery) {
const jid = toJID(query.contactId);
const contact = await this.store.getContactById(jid);
if (!contact) {
return null;
}
return this.toWAContact(contact);
}
async getContacts() {
const contacts = await this.store.getContacts();
return contacts.map(this.toWAContact);
}
public async getContactAbout(query: ContactQuery) {
@@ -615,20 +817,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);
}
/**
@@ -636,14 +831,45 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
*/
public sendTextStatus(status: TextStatus) {
const message = { text: status.text };
const JIDs = status.contacts.map(toJID);
this.upsertMeInJIDs(JIDs);
const options = {
backgroundColor: status.backgroundColor,
font: status.font,
statusJidList: status.contacts.map(toJID),
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;
}
const myJID = jidNormalizedUser(this.sock.authState.creds.me.id);
if (!JIDs.includes(myJID)) {
JIDs.push(myJID);
}
}
/**
* END - Methods for API
*/
@@ -651,23 +877,23 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
subscribeEngineEvent(event, handler): boolean {
switch (event) {
case WAHAEvents.MESSAGE:
this.sock.ev.on(BaileysEvents.MESSAGES_UPSERT, ({ messages }) => {
this.sock.ev.on('messages.upsert', ({ messages }) => {
this.handleIncomingMessages(messages, handler, false);
});
return true;
case WAHAEvents.MESSAGE_REACTION:
this.sock.ev.on(BaileysEvents.MESSAGES_UPSERT, ({ messages }) => {
this.sock.ev.on('messages.upsert', ({ messages }) => {
const reactions = this.processMessageReaction(messages);
reactions.map(handler);
});
return true;
case WAHAEvents.MESSAGE_ANY:
this.sock.ev.on(BaileysEvents.MESSAGES_UPSERT, ({ messages }) =>
this.sock.ev.on('messages.upsert', ({ messages }) =>
this.handleIncomingMessages(messages, handler, true),
);
return true;
case WAHAEvents.MESSAGE_ACK: // Direct message ack
this.sock.ev.on(BaileysEvents.MESSAGES_UPDATE, (events) => {
this.sock.ev.on('messages.update', (events) => {
events
.filter(isMine)
.filter(isAckUpdateMessageEvent)
@@ -675,7 +901,7 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
.forEach(handler);
});
// Group message ack
this.sock.ev.on(BaileysEvents.MESSAGE_RECEIPT_UPDATE, (events) => {
this.sock.ev.on('message-receipt.update', (events) => {
events
.filter(isMine)
.map(this.convertMessageReceiptUpdateToMessageAck)
@@ -683,25 +909,25 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
});
return true;
case WAHAEvents.STATE_CHANGE:
this.sock.ev.on(BaileysEvents.CONNECTION_UPDATE, handler);
this.sock.ev.on('connection.update', handler);
return true;
case WAHAEvents.GROUP_JOIN:
this.sock.ev.on(BaileysEvents.GROUPS_UPSERT, handler);
this.sock.ev.on('groups.upsert', handler);
return true;
case WAHAEvents.PRESENCE_UPDATE:
this.sock.ev.on(BaileysEvents.PRESENCE_UPDATE, (data) =>
this.sock.ev.on('presence.update', (data) =>
handler(this.toWahaPresences(data.id, data.presences)),
);
return true;
case WAHAEvents.POLL_VOTE:
this.sock.ev.on(BaileysEvents.MESSAGES_UPDATE, (events) => {
this.sock.ev.on('messages.update', (events) => {
events.forEach((event) =>
this.handleMessagesUpdatePollVote(event, handler),
);
});
return true;
case WAHAEvents.POLL_VOTE_FAILED:
this.sock.ev.on(BaileysEvents.MESSAGES_UPSERT, ({ messages }) => {
this.sock.ev.on('messages.upsert', ({ messages }) => {
messages.forEach((message) =>
this.handleMessageUpsertPollVoteFailed(message, handler),
);
@@ -714,18 +940,16 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
private handleIncomingMessages(messages, handler, includeFromMe) {
for (const message of messages) {
// if there is no text or media message
if (!message) return;
if (!message.message) return;
// Ignore reactions, we have dedicated handler for that
if (message.message.reactionMessage) return;
// Ignore poll votes, we have dedicated handler for that
if (message.message.pollUpdateMessage) return;
// Do not include my messages
if (!includeFromMe && message.key.fromMe) {
continue;
}
this.processIncomingMessage(message).then(handler);
this.processIncomingMessage(message).then((msg) => {
if (!msg) {
return;
}
handler(msg);
});
}
}
@@ -757,14 +981,32 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
return reactions;
}
private processIncomingMessage(message) {
return this.downloadMedia(message)
.then(this.toWAMessage)
.catch((error) => {
this.log.error('Failed to process incoming message');
this.log.error(error);
console.trace(error);
});
private async processIncomingMessage(message, downloadMedia = true) {
// if there is no text or media message
if (!message) return;
if (!message.message) return;
// Ignore reactions, we have dedicated handler for that
if (message.message.reactionMessage) return;
// Ignore poll votes, we have dedicated handler for that
if (message.message.pollUpdateMessage) return;
if (downloadMedia) {
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);
}
}
try {
return await this.toWAMessage(message);
} catch (error) {
this.log.error('Failed to process incoming message');
this.log.error(error);
console.trace(error);
return null;
}
}
protected toWAMessage(message): Promise<WAMessage> {
@@ -773,15 +1015,16 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
let body = message.message.conversation;
if (!body) {
// Some of the messages have no conversation, but instead have text in extendedTextMessage
// https://github.com/devlikeapro/whatsapp-http-api/issues/90
// https://github.com/devlikeapro/waha/issues/90
body = message.message.extendedTextMessage?.text;
}
if (!body) {
// Populate from caption
const mediaContent = extractMediaContent(message.message);
// @ts-ignore - AudioMessage doesn't have caption field
body = mediaContent.caption;
body = mediaContent?.caption;
}
const ack = message.ack || message.status - 1;
return Promise.resolve({
id: id,
timestamp: message.messageTimestamp,
@@ -795,15 +1038,24 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
media: message.media,
mediaUrl: message.media?.url,
// @ts-ignore
ack: message.ack,
ack: ack,
// @ts-ignore
ackName: WAMessageAck[message.ack] || ACK_UNKNOWN,
ackName: WAMessageAck[ack] || ACK_UNKNOWN,
location: message.location,
vCards: message.vCards,
_data: message,
});
}
protected toWAContact(contact: Contact) {
contact.id = toCusFormat(contact.id);
// @ts-ignore
contact.pushname = contact.notify;
// @ts-ignore
delete contact.notify;
return contact;
}
protected convertMessageUpdateToMessageAck(event): WAMessageAckBody {
const message = event;
const fromToParticipant = getFromToParticipant(message);
@@ -919,8 +1171,8 @@ export class WhatsappSessionNoWebCore extends WhatsappSession {
}
private toWahaPresences(
remoteJid,
storedPresences: PresenceData[],
remoteJid: string,
storedPresences: { [participant: string]: PresenceData },
): WAHAChatPresences {
const presences: WAHAPresenceData[] = [];
for (const participant in storedPresences) {
@@ -980,6 +1232,12 @@ function toCusFormat(remoteJid) {
if (isJidGroup(remoteJid)) {
return remoteJid;
}
if (isJidStatusBroadcast(remoteJid)) {
return remoteJid;
}
if (isLidUser(remoteJid)) {
return remoteJid;
}
if (!remoteJid) {
return;
}
@@ -998,6 +1256,9 @@ export function toJID(chatId) {
if (isJidGroup(chatId)) {
return chatId;
}
if (isJidStatusBroadcast(chatId)) {
return chatId;
}
const number = chatId.split('@')[0];
return number + '@s.whatsapp.net';
}
@@ -0,0 +1,15 @@
import { Chat } from '@adiwajshing/baileys';
export interface IChatRepository {
getAll(): Promise<Chat[]>;
getAllWithMessages(limit?: number, offset?: number): Promise<Chat[]>;
getById(id: string): Promise<Chat | null>;
deleteAll(): Promise<void>;
deleteById(id: string): Promise<void>;
save(chat: Chat): Promise<void>;
}
@@ -0,0 +1,13 @@
import { Contact } from '@adiwajshing/baileys';
export interface IContactRepository {
getAll(): Promise<Contact[]>;
getById(id: string): Promise<Contact | null>;
deleteAll(): Promise<void>;
deleteById(id: string): Promise<void>;
save(contact: Contact): Promise<void>;
}
@@ -0,0 +1,17 @@
export interface IMessagesRepository {
deleteAll(): Promise<void>;
upsert(messages: any[]): Promise<void>;
upsertOne(message: any): Promise<void>;
getAllByJid(jid: string, limit: number): Promise<any[]>;
getByJidById(jid: string, id: string): Promise<any | null>;
updateByJidAndId(jid: string, id: string, update: any): Promise<boolean>;
deleteByJidByIds(jid: string, ids: string[]): Promise<void>;
deleteAllByJid(jid: string): Promise<void>;
}
@@ -0,0 +1,15 @@
import { IChatRepository } from './IChatRepository';
import { IContactRepository } from './IContactRepository';
import { IMessagesRepository } from './IMessagesRepository';
export interface INowebStorage {
init(): Promise<void>;
close(): Promise<void>;
getContactsRepository(): IContactRepository;
getChatRepository(): IChatRepository;
getMessagesRepository(): IMessagesRepository;
}
@@ -0,0 +1,26 @@
import {
BaileysEventEmitter,
Chat,
Contact,
proto,
} from '@adiwajshing/baileys';
export interface INowebStore {
presences: any;
init(): Promise<void>;
close(): Promise<void>;
bind(ev: BaileysEventEmitter, socket: any): void;
loadMessage(jid: string, id: string): Promise<proto.IWebMessageInfo>;
getMessagesByJid(chatId: string, limit: number): Promise<any>;
getChats(limit?: number, offset?: number): Promise<Chat[]>;
getContacts(): Promise<Contact[]>;
getContactById(jid: string): Promise<Contact>;
}
@@ -0,0 +1,54 @@
import { Chat, Contact, makeInMemoryStore, proto } from '@adiwajshing/baileys';
import { BadRequestException, ConsoleLogger } from '@nestjs/common';
import { INowebStore } from './INowebStore';
// eslint-disable-next-line @typescript-eslint/no-var-requires
const logger = require('pino')();
export class NowebInMemoryStore implements INowebStore {
private store: ReturnType<typeof makeInMemoryStore>;
errorMessage =
'Enable NOWEB store "config.noweb.store.enabled=True" and "config.noweb.store.full_sync=True" when starting a new session. ' +
'Read more: https://waha.devlike.pro/docs/engines/noweb#store';
constructor() {
this.store = makeInMemoryStore({ logger: logger });
}
init(): Promise<void> {
return;
}
close(): Promise<void> {
return;
}
get presences() {
return this.store.presences;
}
bind(ev: any, socket: any) {
this.store.bind(ev);
}
loadMessage(jid: string, id: string): Promise<proto.IWebMessageInfo> {
return this.store.loadMessage(jid, id);
}
getMessagesByJid(chatId: string, limit: number): Promise<any> {
throw new BadRequestException(this.errorMessage);
}
getChats(limit?: number, offset?: number): Promise<Chat[]> {
throw new BadRequestException(this.errorMessage);
}
getContacts(): Promise<Contact[]> {
throw new BadRequestException(this.errorMessage);
}
getContactById(jid: string): Promise<Contact> {
throw new BadRequestException(this.errorMessage);
}
}
@@ -0,0 +1,305 @@
import {
BaileysEventEmitter,
Chat,
ChatUpdate,
Contact,
isRealMessage,
jidNormalizedUser,
proto,
updateMessageWithReaction,
updateMessageWithReceipt,
} from '@adiwajshing/baileys';
import { ConsoleLogger } from '@nestjs/common';
import { toNumber } from 'lodash';
import { toJID } from '../session.noweb.core';
import { IChatRepository } from './IChatRepository';
import { IContactRepository } from './IContactRepository';
import { IMessagesRepository } from './IMessagesRepository';
import { INowebStorage } from './INowebStorage';
import { INowebStore } from './INowebStore';
// eslint-disable-next-line @typescript-eslint/no-var-requires
const AsyncLock = require('async-lock');
export class NowebPersistentStore implements INowebStore {
private socket: any;
private chatRepo: IChatRepository;
private contactRepo: IContactRepository;
private messagesRepo: IMessagesRepository;
public presences: any;
private lock: any;
constructor(
private log: ConsoleLogger,
public storage: INowebStorage,
) {
this.socket = null;
this.chatRepo = storage.getChatRepository();
this.contactRepo = storage.getContactsRepository();
this.messagesRepo = storage.getMessagesRepository();
this.presences = {};
this.lock = new AsyncLock({ maxPending: Infinity });
}
init(): Promise<void> {
return this.storage.init();
}
bind(ev: BaileysEventEmitter, socket: any) {
// All
ev.on('messaging-history.set', (data) => this.onMessagingHistorySet(data));
// Messages
ev.on('messages.upsert', (data) =>
this.withLock('messages', () => this.onMessagesUpsert(data)),
);
ev.on('messages.update', (data) =>
this.withLock('messages', () => this.onMessageUpdate(data)),
);
ev.on('messages.delete', (data) =>
this.withLock('messages', () => this.onMessageDelete(data)),
);
ev.on('messages.reaction', (data) =>
this.withLock('messages', () => this.onMessageReaction(data)),
);
ev.on('message-receipt.update', (data) =>
this.withLock('messages', () => this.onMessageReceiptUpdate(data)),
);
// Chats
ev.on('chats.upsert', (data) =>
this.withLock('chats', () => this.onChatUpsert(data)),
);
ev.on('chats.update', (data) =>
this.withLock('chats', () => this.onChatUpdate(data)),
);
ev.on('chats.delete', (data) =>
this.withLock('chats', () => this.onChatDelete(data)),
);
// Contacts
ev.on('contacts.upsert', (data) =>
this.withLock('contacts', () => this.onContactsUpsert(data)),
);
ev.on('contacts.update', (data) =>
this.withLock('contacts', () => this.onContactUpdate(data)),
);
// Presence
ev.on('presence.update', (data) => this.onPresenceUpdate(data));
this.socket = socket;
}
async close(): Promise<void> {
await this.storage?.close().catch((error) => {
this.log.warn(`Failed to close storage: ${error}`);
});
return;
}
private async onMessagingHistorySet(history) {
const { contacts, chats, messages, isLatest } = history;
if (isLatest) {
this.log.debug(
'history sync - clearing all entities, got latest history',
);
await Promise.all([
this.withLock('contacts', () => this.contactRepo.deleteAll()),
this.withLock('chats', () => this.chatRepo.deleteAll()),
this.withLock('messages', () => this.messagesRepo.deleteAll()),
]);
}
await Promise.all([
this.withLock('contacts', async () => {
await this.onContactsUpsert(contacts);
this.log.log(`history sync - '${contacts.length}' synced contacts`);
}),
this.withLock('chats', () => this.onChatUpsert(chats)),
this.withLock('messages', () => this.syncMessagesHistory(messages)),
]);
}
private async syncMessagesHistory(messages) {
const realMessages = messages.filter(isRealMessage);
await this.messagesRepo.upsert(realMessages);
this.log.log(
`history sync - '${messages.length}' got messages, '${realMessages.length}' real messages`,
);
}
private async onMessagesUpsert(update) {
const { messages, type } = update;
if (type !== 'notify' && type !== 'append') {
this.log.debug(`unexpected type for messages.upsert: '${type}'`);
return;
}
const realMessages = messages.filter(isRealMessage);
await this.messagesRepo.upsert(realMessages);
this.log.debug(
`messages.upsert - ${messages.length} got messages, ${realMessages.length} real messages`,
);
}
private async onMessageUpdate(updates) {
for (const update of updates) {
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
const jid = jidNormalizedUser(update.key.remoteJid!);
const message = await this.messagesRepo.getByJidById(jid, update.key.id);
if (!message) {
continue;
}
const fields = { ...update.update };
// It can overwrite the key, so we need to delete it
delete fields['key'];
Object.assign(message, fields);
// In case of revoked messages - remove it
// TODO: May be we should save the flag instead of completely removing the message
const isYetRealMessage =
isRealMessage(message, this.socket?.authState?.creds?.me?.id) || false;
if (isYetRealMessage) {
await this.messagesRepo.upsertOne(message);
} else {
await this.messagesRepo.deleteByJidByIds(jid, [update.key.id]);
}
}
}
private async onMessageDelete(item) {
if ('all' in item) {
await this.messagesRepo.deleteAllByJid(item.jid);
return;
}
const jid = jidNormalizedUser(item.keys[0].remoteJid);
const ids = item.keys.map((key) => key.id);
await this.messagesRepo.deleteByJidByIds(jid, ids);
}
private async onChatUpsert(chats: Chat[]) {
for (const chat of chats) {
delete chat['messages'];
chat.conversationTimestamp = toNumber(chat.conversationTimestamp);
await this.chatRepo.save(chat);
}
this.log.log(`history sync - '${chats.length}' synced chats`);
}
private async onChatUpdate(updates: ChatUpdate[]) {
for (const update of updates) {
const chat = (await this.chatRepo.getById(update.id)) || ({} as Chat);
Object.assign(chat, update);
chat.conversationTimestamp = toNumber(chat.conversationTimestamp);
delete chat['messages'];
await this.chatRepo.save(chat);
}
}
private async onChatDelete(ids: string[]) {
for (const id of ids) {
await this.chatRepo.deleteById(id);
await this.messagesRepo.deleteAllByJid(id);
}
}
private withLock(key, fn) {
return this.lock.acquire(key, fn);
}
private async onContactsUpsert(contacts: Contact[]) {
for (const update of contacts) {
const contact = await this.contactRepo.getById(update.id);
// remove undefined from data
Object.keys(update).forEach(
(key) => update[key] === undefined && delete update[key],
);
const result = { ...(contact || {}), ...update };
await this.contactRepo.save(result);
}
}
private async onContactUpdate(updates: Partial<Contact>[]) {
for (const update of updates) {
const contact = await this.contactRepo.getById(update.id);
if (!contact) {
this.log.warn(
`got update for non-existent contact. update: '${JSON.stringify(
update,
)}'`,
);
continue;
// TODO: Find contact by hash if not found
// find contact by attrs.hash, when user is not saved as a contact
// check the in-memory for that
}
Object.assign(contact, update);
if (update.imgUrl === 'changed') {
contact.imgUrl = this.socket
? await this.socket?.profilePictureUrl(contact.id)
: undefined;
} else if (update.imgUrl === 'removed') {
delete contact.imgUrl;
}
await this.onContactsUpsert([contact]);
}
}
private async onMessageReaction(reactions) {
for (const { key, reaction } of reactions) {
const msg = await this.messagesRepo.getByJidById(key.remoteJid, key.id);
if (!msg) {
this.log.warn(
`got reaction update for non-existent message. key: '${JSON.stringify(
key,
)}'`,
);
continue;
}
updateMessageWithReaction(msg, reaction);
await this.messagesRepo.upsertOne(msg);
}
}
private async onMessageReceiptUpdate(updates) {
for (const { key, receipt } of updates) {
const msg = await this.messagesRepo.getByJidById(key.remoteJid, key.id);
if (!msg) {
this.log.warn(
`got receipt update for non-existent message. key: '${JSON.stringify(
key,
)}'`,
);
continue;
}
updateMessageWithReceipt(msg, receipt);
await this.messagesRepo.upsertOne(msg);
}
}
private async onPresenceUpdate({ id, presences: update }) {
this.presences[id] = this.presences[id] || {};
Object.assign(this.presences[id], update);
}
async loadMessage(jid: string, id: string) {
const data = await this.messagesRepo.getByJidById(jid, id);
if (!data) {
return null;
}
return proto.WebMessageInfo.fromObject(data);
}
getMessagesByJid(chatId: string, limit: number) {
return this.messagesRepo.getAllByJid(toJID(chatId), toNumber(limit));
}
getChats(limit?: number, offset?: number): Promise<Chat[]> {
return this.chatRepo.getAllWithMessages(limit, offset);
}
getContactById(jid) {
return this.contactRepo.getById(jid);
}
getContacts() {
return this.contactRepo.getAll();
}
}
@@ -0,0 +1,9 @@
import { DataStore } from '../../../abc/DataStore';
import { INowebStorage } from './INowebStorage';
import { Sqlite3Storage } from './sqlite3/Sqlite3Storage';
export class NowebStorageFactoryCore {
createStorage(store: DataStore, name: string): INowebStorage {
return new Sqlite3Storage(':memory:');
}
}
+56
View File
@@ -0,0 +1,56 @@
export class Field {
constructor(
public fieldName: string,
public type: string,
) {}
}
export class Index {
constructor(
public name: string,
public columns: string[],
) {}
}
export class Schema {
constructor(
public name: string,
public columns: Field[],
public indexes: Index[],
) {}
}
export const NOWEB_STORE_SCHEMA = [
new Schema(
'contacts',
[new Field('id', 'TEXT'), new Field('data', 'TEXT')],
[new Index('contacts_id_index', ['id'])],
),
new Schema(
'chats',
[
new Field('id', 'TEXT'),
new Field('conversationTimestamp', 'INTEGER'),
new Field('data', 'TEXT'),
],
[
new Index('chats_id_index', ['id']),
new Index('chats_conversationTimestamp_index', ['conversationTimestamp']),
],
),
new Schema(
'messages',
[
new Field('jid', 'TEXT'),
new Field('id', 'TEXT'),
new Field('messageTimestamp', 'INTEGER'),
new Field('data', 'TEXT'),
],
[
new Index('messages_id_index', ['id']),
new Index('messages_jid_id_index', ['jid', 'id']),
new Index('messages_jid_timestamp_index', ['jid', 'messageTimestamp']),
new Index('timestamp_index', ['messageTimestamp']),
],
),
];
@@ -0,0 +1,23 @@
import { Chat } from '@adiwajshing/baileys';
import { IChatRepository } from '../IChatRepository';
import { Sqlite3KVRepository } from './Sqlite3KVRepository';
export class Sqlite3ChatRepository
extends Sqlite3KVRepository<Chat>
implements IChatRepository
{
async getAllWithMessages(limit?: number, offset?: number): Promise<Chat[]> {
// Get chats with conversationTimestamp is not Null
let query = this.select()
.whereNotNull('conversationTimestamp')
.orderBy('conversationTimestamp', 'desc');
if (limit != null) {
query = query.limit(limit);
}
if (offset != null) {
query = query.offset(offset);
}
return await this.all(query);
}
}
@@ -0,0 +1,8 @@
import { Contact } from '@adiwajshing/baileys';
import { IContactRepository } from '../IContactRepository';
import { Sqlite3KVRepository } from './Sqlite3KVRepository';
export class Sqlite3ContactRepository
extends Sqlite3KVRepository<Contact>
implements IContactRepository {}
@@ -0,0 +1,155 @@
import { BufferJSON } from '@adiwajshing/baileys/lib/Utils';
import {
convertProtobufToPlainObject,
replaceLongsWithNumber,
} from '@waha/core/engines/noweb/utils';
import { Database } from 'better-sqlite3';
import Knex from 'knex';
import { Field, Schema } from '../Schema';
/**
* Key value repository with extra metadata
*/
export class Sqlite3KVRepository<Entity> {
private UPSERT_BATCH_SIZE = 100;
protected db: Database;
private readonly metadata: Map<string, (entity: Entity) => any>;
protected readonly table: string;
private readonly columns: Field[];
private knex: Knex.Knex;
constructor(
db: Database,
schema: Schema,
metadata: Map<string, (entity: Entity) => any> | null = null,
) {
this.db = db;
this.columns = schema.columns;
this.table = schema.name;
this.metadata = metadata || new Map();
// sqlite does not support inserting default values. Set the `useNullAsDefault` flag to hide this warning. (see docs https://knexjs.org/guide/query-builder.html#insert).
this.knex = Knex({ client: 'better-sqlite3', useNullAsDefault: true });
}
getAll() {
return this.all(this.select());
}
protected async getBy(filters: any) {
const query = this.select().where(filters).limit(1);
return this.get(query);
}
private dump(entity: Entity) {
const data = {};
const raw = convertProtobufToPlainObject(entity);
replaceLongsWithNumber(raw);
for (const field of this.columns) {
const fn = this.metadata.get(field.fieldName);
if (fn) {
data[field.fieldName] = fn(raw);
} else if (field.fieldName == 'data') {
data['data'] = JSON.stringify(raw, BufferJSON.replacer);
} else {
data[field.fieldName] = raw[field.fieldName];
}
}
return data;
}
save(entity: Entity) {
return this.upsertOne(entity);
}
async getById(id: string): Promise<Entity | null> {
return this.getBy({ id: id });
}
async upsertOne(entity: Entity): Promise<void> {
await this.upsertMany([entity]);
}
async upsertMany(entities: Entity[]): Promise<void> {
if (entities.length === 0) {
return;
}
const batchSize = this.UPSERT_BATCH_SIZE;
for (let i = 0; i < entities.length; i += batchSize) {
const batch = entities.slice(i, i + batchSize);
await this.upsertBatch(batch);
}
}
private async upsertBatch(entities: Entity[]): Promise<void> {
const data = entities.map((entity) => this.dump(entity));
const keys = this.columns.map((c) => c.fieldName);
const values = data.map((d) => Object.values(d)).flat();
try {
this.db
.prepare(
`INSERT INTO ${this.table} (${keys.join(', ')})
VALUES ${data
.map(() => `(${keys.map(() => '?').join(', ')})`)
.join(', ')}
ON CONFLICT(id) DO UPDATE
SET ${keys.map((key) => `${key} = excluded.${key}`).join(', ')}`,
)
.run(values);
} catch (err) {
console.error(`Error upserting data: ${err}, values: ${values}`);
throw err;
}
}
protected async deleteBy(filters: any) {
const query = this.delete().where(filters);
await this.run(query);
}
async deleteAll() {
const query = this.delete();
await this.run(query);
}
async deleteById(id: string) {
await this.deleteBy({ id: id });
}
/**
* SQL helpers
*/
protected select() {
return this.knex.select().from(this.table);
}
protected delete() {
return this.knex.delete().from(this.table);
}
protected async all(query: any) {
const sql = query.toSQL().sql;
const bind = query.toSQL().bindings;
const rows: any[] = this.db.prepare(sql).all(bind);
return rows.map((row) => JSON.parse(row.data, BufferJSON.reviver));
}
protected async get(query: any) {
const sql = query.toSQL().sql;
const bind = query.toSQL().bindings;
const row: any = this.db.prepare(sql).get(bind);
if (!row) {
return null;
}
return JSON.parse(row.data, BufferJSON.reviver);
}
protected async run(query: any) {
const sql = query.toSQL().sql;
const bind = query.toSQL().bindings;
return this.db.prepare(sql).run(bind);
}
}
@@ -0,0 +1,48 @@
import { IMessagesRepository } from '../IMessagesRepository';
import { Sqlite3KVRepository } from './Sqlite3KVRepository';
export class Sqlite3MessagesRepository
extends Sqlite3KVRepository<any>
implements IMessagesRepository
{
upsert(messages: any[]): Promise<void> {
return this.upsertMany(messages);
}
getAllByJid(jid: string, limit: number): Promise<any[]> {
const query = this.select()
.where({ jid: jid })
.limit(limit)
.orderBy('messageTimestamp', 'DESC');
return this.all(query);
}
async getByJidById(jid: string, id: string): Promise<any> {
return this.getBy({ jid: jid, id: id });
}
async updateByJidAndId(
jid: string,
id: string,
update: any,
): Promise<boolean> {
const entity = await this.getByJidById(jid, id);
if (!entity) {
return false;
}
Object.assign(entity, update);
await this.upsertOne(entity);
}
async deleteByJidByIds(jid: string, ids: string[]): Promise<void> {
const query = `DELETE
FROM ${this.table}
WHERE jid = ?
AND id IN (${ids.map(() => '?').join(', ')})`;
this.db.prepare(query).run([jid, ...ids]);
}
deleteAllByJid(jid: string): Promise<void> {
return this.deleteBy({ jid: jid });
}
}
@@ -0,0 +1,50 @@
import { Schema } from '../Schema';
// eslint-disable-next-line @typescript-eslint/no-var-requires
const Database = require('better-sqlite3');
export class Sqlite3SchemaValidation {
constructor(
private table: Schema,
private db,
) {}
validate() {
const table = this.table;
// Check table has the columns
const columns = this.db.prepare(`PRAGMA table_info(${table.name})`).all();
// Check exact number of columns
if (columns.length !== table.columns.length) {
throw new Error(
`Table '${table.name}' does not have expected number of columns. Expected ${table.columns.length}, got ${columns.length}`,
);
}
// Check column + type
for (const column of table.columns) {
const columnInfo = columns.find((c) => c.name === column.fieldName);
if (!columnInfo) {
throw new Error(
`Table '${table.name}' does not have column '${column.fieldName}'`,
);
}
if (columnInfo.type !== column.type) {
throw new Error(
`Table '${table.name}' column '${column.fieldName}' has type '${columnInfo.type}' but expected '${column.type}'`,
);
}
}
// Check table has expected indexes
const indexes = this.db.prepare(`PRAGMA index_list(${table.name})`).all();
const indexNames = indexes.map((index) => index.name);
for (const index of table.indexes) {
if (!indexNames.includes(index.name)) {
throw new Error(
`Table '${table.name}' does not have index '${index.name}'`,
);
}
}
}
}
@@ -0,0 +1,107 @@
import { WAMessage } from '@adiwajshing/baileys';
import { INowebStorage } from '../INowebStorage';
import { Field, Index, NOWEB_STORE_SCHEMA, Schema } from '../Schema';
import { Sqlite3ChatRepository } from './Sqlite3ChatRepository';
import { Sqlite3ContactRepository } from './Sqlite3ContactRepository';
import { Sqlite3MessagesRepository } from './Sqlite3MessagesRepository';
import { Sqlite3SchemaValidation } from './Sqlite3SchemaValidation';
// eslint-disable-next-line @typescript-eslint/no-var-requires
const Database = require('better-sqlite3');
export class Sqlite3Storage implements INowebStorage {
private readonly db: any;
private readonly tables: Schema[];
constructor(filePath: string) {
this.db = new Database(filePath);
this.tables = NOWEB_STORE_SCHEMA;
}
async init() {
this.db.pragma('journal_mode = WAL;');
this.migrate();
this.validateSchema();
}
private migrate() {
this.migration0001init();
}
private validateSchema() {
for (const table of this.tables) {
new Sqlite3SchemaValidation(table, this.db).validate();
}
}
private migration0001init() {
// Contacts
this.db.exec(
'CREATE TABLE IF NOT EXISTS contacts (id TEXT PRIMARY KEY, data TEXT)',
);
this.db.exec(
'CREATE UNIQUE INDEX IF NOT EXISTS contacts_id_index ON contacts (id)',
);
// Chats
this.db.exec(
'CREATE TABLE IF NOT EXISTS chats (id TEXT PRIMARY KEY, conversationTimestamp INTEGER, data TEXT)',
);
this.db.exec(
'CREATE UNIQUE INDEX IF NOT EXISTS chats_id_index ON chats (id)',
);
this.db.exec(
'CREATE INDEX IF NOT EXISTS chats_conversationTimestamp_index ON chats (conversationTimestamp)',
);
// Messages
this.db.exec(
'CREATE TABLE IF NOT EXISTS messages (jid TEXT, id TEXT, messageTimestamp INTEGER, data TEXT)',
);
this.db.exec(
'CREATE UNIQUE INDEX IF NOT EXISTS messages_id_index ON messages (id)',
);
this.db.exec(
'CREATE INDEX IF NOT EXISTS messages_jid_id_index ON messages (jid, id)',
);
this.db.exec(
'CREATE INDEX IF NOT EXISTS messages_jid_timestamp_index ON messages (jid, messageTimestamp)',
);
this.db.exec(
'CREATE INDEX IF NOT EXISTS timestamp_index ON messages (messageTimestamp)',
);
}
async close() {
this.db.close();
}
getContactsRepository() {
return new Sqlite3ContactRepository(this.db, this.getSchema('contacts'));
}
getChatRepository() {
return new Sqlite3ChatRepository(this.db, this.getSchema('chats'));
}
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);
return new Sqlite3MessagesRepository(
this.db,
this.getSchema('messages'),
metadata,
);
}
getSchema(name: string) {
const schema = this.tables.find((table) => table.name === name);
if (!schema) {
throw new Error(`Schema not found: ${name}`);
}
return schema;
}
}
@@ -0,0 +1,115 @@
import {
AuthenticationCreds,
AuthenticationState,
proto,
} from '@adiwajshing/baileys';
import { BufferJSON, initAuthCreds } from '@adiwajshing/baileys/lib/Utils';
import { mkdir, readFile, stat, unlink, writeFile } from 'fs/promises';
import { join } from 'path';
// eslint-disable-next-line @typescript-eslint/no-var-requires
const AsyncLock = require('async-lock');
// We need to lock files due to the fact that we are using async functions to read and write files
// https://github.com/WhiskeySockets/Baileys/issues/794
// https://github.com/nodejs/node/issues/26338
// Default pending is 1000, set it to infinity
// https://github.com/rogierschouten/async-lock/issues/63
const fileLock = new AsyncLock({ maxPending: Infinity });
/**
* stores the full authentication state in a single folder.
* Far more efficient than singlefileauthstate
*
* Again, I wouldn't endorse this for any production level use other than perhaps a bot.
* Would recommend writing an auth state for use with a proper SQL or No-SQL DB
* */
export const useMultiFileAuthState = async (
folder: string,
): Promise<{
state: AuthenticationState;
saveCreds: () => Promise<void>;
}> => {
const writeData = (data: any, file: string) => {
const filePath = join(folder, fixFileName(file));
return fileLock.acquire(filePath, () =>
writeFile(join(filePath), JSON.stringify(data, BufferJSON.replacer)),
);
};
const readData = async (file: string) => {
try {
const filePath = join(folder, fixFileName(file));
const data = await fileLock.acquire(filePath, () =>
readFile(filePath, { encoding: 'utf-8' }),
);
return JSON.parse(data, BufferJSON.reviver);
} catch (error) {
return null;
}
};
const removeData = async (file: string) => {
try {
const filePath = join(folder, fixFileName(file));
await fileLock.acquire(filePath, () => unlink(filePath));
} catch {}
};
const folderInfo = await stat(folder).catch(() => {
return null;
});
if (folderInfo) {
if (!folderInfo.isDirectory()) {
throw new Error(
`found something that is not a directory at ${folder}, either delete it or specify a different location`,
);
}
} else {
await mkdir(folder, { recursive: true });
}
const fixFileName = (file?: string) =>
file?.replace(/\//g, '__')?.replace(/:/g, '-') || '';
const creds: AuthenticationCreds =
(await readData('creds.json')) || initAuthCreds();
return {
state: {
creds,
keys: {
get: async (type, ids) => {
const data = {};
await Promise.all(
ids.map(async (id) => {
let value = await readData(`${type}-${id}.json`);
if (type === 'app-state-sync-key' && value) {
value = proto.Message.AppStateSyncKeyData.fromObject(value);
}
data[id] = value;
}),
);
return data;
},
set: async (data) => {
const tasks: Promise<void>[] = [];
for (const category in data) {
for (const id in data[category]) {
const value = data[category][id];
const file = `${category}-${id}.json`;
tasks.push(value ? writeData(value, file) : removeData(file));
}
}
await Promise.all(tasks);
},
},
},
saveCreds: () => {
return writeData(creds, 'creds.json');
},
};
};
+71
View File
@@ -12,3 +12,74 @@ export function extractMediaContent(
content?.stickerMessage;
return mediaContent;
}
interface Long {
low: number;
high: number;
unsigned: boolean;
toNumber?(): number;
}
type AnyObject = { [key: string]: any };
export const replaceLongsWithNumber = (obj: AnyObject): void => {
for (const key in obj) {
if (obj.hasOwnProperty(key)) {
if (isObjectALong(obj[key])) {
obj[key] = toNumber(obj[key]);
} else if (typeof obj[key] === 'object' && obj[key] !== null) {
replaceLongsWithNumber(obj[key]);
}
}
}
};
export function convertProtobufToPlainObject(obj: any): any {
if (typeof obj !== 'object' || obj === null) {
return obj;
}
// Ignore Buffer
if (
Buffer.isBuffer(obj) ||
obj?.type == 'Buffer' ||
obj instanceof Uint8Array
) {
return obj;
}
// Remove empty array
if (Array.isArray(obj) && obj.length === 0) {
return undefined;
}
if (Array.isArray(obj)) {
return obj.map((item) => convertProtobufToPlainObject(item));
}
const plainObject: any = {};
Object.keys(obj).forEach((key) => {
const value = obj[key];
plainObject[key] = convertProtobufToPlainObject(value);
});
return { ...plainObject };
}
const isObjectALong = (value: any): value is Long => {
return (
value &&
typeof value === 'object' &&
'low' in value &&
'high' in value &&
'unsigned' in value
);
};
const toNumber = (longValue: Long): number => {
const { low, high, unsigned } = longValue;
const result = unsigned ? low >>> 0 : low + high * 0x100000000;
return result;
};
+2 -1
View File
@@ -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) {
+15
View File
@@ -0,0 +1,15 @@
exports.LoadUtils = () => {
window.WAHA = {};
window.WAHA.getChats = async (limit, offset) => {
let chats = window.Store.Chat.getModelsArray();
if (limit || offset) {
offset = offset || 0;
limit = limit || Infinity;
chats = chats.slice(offset, offset + limit);
}
const chatPromises = chats.map((chat) => window.WWebJS.getChatModel(chat));
return await Promise.all(chatPromises);
};
};
+35
View File
@@ -0,0 +1,35 @@
import { Client } from 'whatsapp-web.js';
// eslint-disable-next-line @typescript-eslint/no-var-requires
const { LoadUtils } = require('./WahaInjected');
// eslint-disable-next-line @typescript-eslint/no-var-requires
const ChatFactory = require('whatsapp-web.js/src/factories/ChatFactory');
export class WebjsClient extends Client {
async initialize() {
await super.initialize();
//Load util functions (serializers, helper functions)
await this.pupPage.evaluate(LoadUtils);
}
async getChats(limit?: number, offset?: number) {
if (limit == null && offset == null) {
return await super.getChats();
}
return await this.getChats2(limit, offset);
}
private async getChats2(limit?: number, offset?: number) {
const chats = await this.pupPage.evaluate(
async (limit, offset) => {
// @ts-ignore
return await window.WAHA.getChats(limit, offset);
},
limit,
offset,
);
return chats.map((chat) => ChatFactory.create(this, chat));
}
}
+93 -43
View File
@@ -1,17 +1,14 @@
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 { WebjsClient } from '@waha/core/engines/webjs/WebjsClient';
import {
Chat,
Client,
ClientOptions,
Contact,
Events,
GroupChat,
Location,
Message,
Reaction,
} from 'whatsapp-web.js';
import { Message as MessageInstance } from 'whatsapp-web.js/src/structures';
AvailableInPlusVersion,
NotImplementedByEngineError,
} from '@waha/core/exceptions';
import { QR } from '@waha/core/QR';
import { parseBool } from '@waha/helpers';
import { GetChatsQuery } from '@waha/structures/chats.dto';
import {
ChatRequest,
CheckNumberStatusQuery,
@@ -27,55 +24,60 @@ import {
MessageVoiceRequest,
SendSeenRequest,
WANumberExistResult,
} from '../../../structures/chatting.dto';
import { ContactQuery, ContactRequest } from '../../../structures/contacts.dto';
} from '@waha/structures/chatting.dto';
import { ContactQuery, ContactRequest } from '@waha/structures/contacts.dto';
import {
ACK_UNKNOWN,
SECOND,
WAHAEngine,
WAHAEvents,
WAHAPresenceStatus,
WAHASessionStatus,
WAMessageAck,
} from '../../../structures/enums.dto';
} from '@waha/structures/enums.dto';
import {
CreateGroupRequest,
ParticipantsRequest,
SettingsSecurityChangeInfo,
} from '../../../structures/groups.dto';
} from '@waha/structures/groups.dto';
import { WAMessage, WAMessageReaction } from '@waha/structures/responses.dto';
import { MeInfo } from '@waha/structures/sessions.dto';
import { WAMessageRevokedBody } from '@waha/structures/webhooks.dto';
import {
WAMessage,
WAMessageReaction,
} from '../../../structures/responses.dto';
import { MeInfo } from '../../../structures/sessions.dto';
import { WAMessageRevokedBody } from '../../../structures/webhooks.dto';
import { IEngineMediaProcessor } from '../../abc/media.abc';
import { WAHAInternalEvent, WhatsappSession } from '../../abc/session.abc';
import {
AvailableInPlusVersion,
NotImplementedByEngineError,
} from '../../exceptions';
import { QR } from '../../QR';
Chat,
ClientOptions,
Contact,
Events,
GroupChat,
Location,
Message,
Reaction,
} from 'whatsapp-web.js';
import { Message as MessageInstance } from 'whatsapp-web.js/src/structures';
// eslint-disable-next-line @typescript-eslint/no-var-requires
const QRCode = require('qrcode');
// eslint-disable-next-line @typescript-eslint/no-var-requires
const qrcode = require('qrcode-terminal');
export interface WebJSConfig {
webVersion?: string;
}
export class WhatsappSessionWebJSCore extends WhatsappSession {
private START_ATTEMPT_DELAY_SECONDS = 2;
engine = WAHAEngine.WEBJS;
protected engineConfig?: WebJSConfig;
whatsapp: Client;
private startTimeoutId: null | ReturnType<typeof setTimeout> = null;
private shouldRestart: boolean;
whatsapp: WebjsClient;
protected qr: QR;
public constructor(config) {
super(config);
this.qr = new QR();
this.shouldRestart = true;
}
/**
@@ -94,6 +96,7 @@ export class WhatsappSessionWebJSCore extends WhatsappSession {
headless: true,
executablePath: this.getBrowserExecutablePath(),
args: this.getBrowserArgsForPuppeteer(),
dumpio: this.isDebugEnabled(),
},
webVersion: webVersion,
webVersionCache: {
@@ -107,7 +110,28 @@ export class WhatsappSessionWebJSCore extends WhatsappSession {
protected async buildClient() {
const clientOptions = this.getClientOptions();
this.addProxyConfig(clientOptions);
return new Client(clientOptions);
return new WebjsClient(clientOptions);
}
private restartClient() {
if (!this.shouldRestart) {
this.log.debug("Shouldn't 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);
}
protected addProxyConfig(clientOptions: ClientOptions) {
@@ -127,8 +151,9 @@ export class WhatsappSessionWebJSCore extends WhatsappSession {
}
}
async start() {
this.status = WAHASessionStatus.STARTING;
protected async init() {
await this.end();
this.shouldRestart = true;
this.whatsapp = await this.buildClient();
this.whatsapp
.initialize()
@@ -137,12 +162,16 @@ export class WhatsappSessionWebJSCore extends WhatsappSession {
this.whatsapp.pupBrowser.on('disconnected', () => {
this.status = WAHASessionStatus.FAILED;
this.log.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.restartClient();
});
// Listen for page error event
if (this.isDebugEnabled()) {
this.log.debug("Logging 'console' event for web page");
this.whatsapp.pupPage.on('console', (msg) =>
@@ -156,6 +185,7 @@ export class WhatsappSessionWebJSCore extends WhatsappSession {
.catch((error) => {
this.status = WAHASessionStatus.FAILED;
this.log.error(error);
this.restartClient();
return;
});
if (this.isDebugEnabled()) {
@@ -163,25 +193,43 @@ export class WhatsappSessionWebJSCore extends WhatsappSession {
}
this.listenConnectionEvents();
this.events.emit(WAHAInternalEvent.ENGINE_START);
}
async start() {
this.status = WAHASessionStatus.STARTING;
await this.init();
return this;
}
async stop() {
await this.whatsapp.destroy();
this.shouldRestart = false;
this.status = WAHASessionStatus.STOPPED;
this.events.removeAllListeners();
await this.end();
}
async getSessionMeInfo(): Promise<MeInfo | null> {
private async end() {
try {
this.whatsapp?.removeAllListeners();
clearInterval(this.startTimeoutId);
this.whatsapp?.destroy().catch((error) => {
this.log.debug('Failed to destroy the client', error);
});
} catch (error) {
this.log.error(error);
}
}
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() {
@@ -363,11 +411,12 @@ export class WhatsappSessionWebJSCore extends WhatsappSession {
/**
* Chats methods
*/
getChats() {
return this.whatsapp.getChats();
getChats(query: GetChatsQuery) {
return this.whatsapp.getChats(query.limit, query.offset);
}
async getChatMessages(chatId: string, limit: number, downloadMedia: boolean) {
downloadMedia = parseBool(downloadMedia);
const chat: Chat = await this.whatsapp.getChatById(
this.ensureSuffix(chatId),
);
@@ -691,6 +740,7 @@ export class WhatsappSessionWebJSCore extends WhatsappSession {
}
public async getEngineInfo() {
// Add 1 seconds timeout
return {
WWebVersion: await this.whatsapp?.getWWebVersion(),
state: await this.whatsapp?.getState(),
+27 -6
View File
@@ -5,10 +5,16 @@ import {
NotFoundException,
UnprocessableEntityException,
} from '@nestjs/common';
import { promiseTimeout } from '@waha/utils/promiseTimeout';
import { EventEmitter } from 'events';
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,
@@ -59,10 +65,10 @@ export class SessionManagerCore extends SessionManager {
private engineConfigService: EngineConfigService,
) {
super();
this.events = new EventEmitter();
this.log.setContext('SessionManager');
this.session = undefined;
const engineName = this.config.getDefaultEngineName();
const engineName = this.engineConfigService.getDefaultEngineName();
this.EngineClass = this.getEngine(engineName);
this.store = new LocalStoreCore(engineName.toLowerCase());
this.sessionAuthRepository = new LocalSessionAuthRepository(this.store);
@@ -95,7 +101,7 @@ export class SessionManagerCore extends SessionManager {
}
}
async onApplicationShutdown(signal?: string) {
async beforeApplicationShutdown(signal?: string) {
if (!this.session) {
return;
}
@@ -142,6 +148,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 {
@@ -234,10 +246,19 @@ 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('Error while getting engine info', e);
}
}
const engine = {
engine: this.session?.engine,
...(await this.session?.getEngineInfo().catch((err) => ({}))),
...engineInfo,
};
return [
{
@@ -52,8 +52,7 @@ export class LocalSessionConfigRepository extends ISessionConfigRepository {
}
private getFilePath(sessionName): string {
const folder = this.store.getSessionDirectory(sessionName);
return path.join(folder, this.FILENAME);
return this.store.getFilePath(sessionName, this.FILENAME);
}
async delete(sessionName: string): Promise<void> {
+5
View File
@@ -17,4 +17,9 @@ export abstract class LocalStore extends DataStore {
* Get the directory where the session data is stored
*/
abstract getSessionDirectory(name: string): string;
/**
* Get the file path for a session
*/
abstract getFilePath(session: string, file: string): string;
}
+4
View File
@@ -45,6 +45,10 @@ export class LocalStoreCore extends LocalStore {
return this.getDirectoryPath(name);
}
getFilePath(session: string, file: string): string {
return path.join(this.getSessionDirectory(session), file);
}
protected getDirectoryPath(name: string): string {
const suffix = crypto.createHash('md5').update(name).digest('hex');
return path.join(this.getEngineDirectory(), `${name}-${suffix}`);
+1 -1
View File
@@ -127,7 +127,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,
+234
View File
@@ -0,0 +1,234 @@
<!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/DRtWvKfJ.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/CmNMiwz3.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cm7Dkme4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CwRw2352.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bl_ZW1Xh.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B5fdn047.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BMCLKWyE.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DpeyYdwe.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BPIn4_kN.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CELf783E.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CFcFeTBy.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BnGLU8uI.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CSbfZNF6.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DLCKhL4y.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CTyYxNkn.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/r743PZK3.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/G8FENBP4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/GnhOacnB.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Gj9DruUc.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BKuF8g-Y.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D6mOJ75X.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/33ou32AX.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B14_1DDx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D2eV2xTx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B7nXBdam.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D_qICk5i.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/dbkXk2FM.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/gHxUMB3b.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dvzs3FMW.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cls9geQy.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DSMppbuD.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BMYrlhrg.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Hku5IA12.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/zU1BOWrX.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ChcErU2V.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CkTkVLD1.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/RfUbfTV3.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CzY8CgE7.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/37NENiMc.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DOsY_IVn.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cw-7pq-7.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/mwds7uJx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DtAtnC1U.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dgmq9a1E.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CGlsgAZL.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CfFFY47l.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ca3-bi3b.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CJA3DD2a.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/LqjL8cgW.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BJSv0A8B.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/HF1fbsar.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/POGdjepN.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DF_jK3OP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CLLMBAGk.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/b2TVTf9x.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B8gNdiY1.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CpFoAXuV.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CP0-jfu8.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/7JVgPXr5.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B7DyUdc_.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/1T5oFhIQ.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bkz4NsfY.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CVFSkoIM.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CS5BvUDo.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BL7cLbn_.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CLYZtMaI.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DVu_lr_n.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cvjjzn6F.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/e47XCw9e.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/fseMLFIf.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DAA892mm.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BQr05V_N.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C1t5Tk14.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D2IhmS2j.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ce0F-GHP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/uQ-y24Vd.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B-OEjvS-.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dh-jSmv_.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BHHly3AA.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BEGul3PF.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/gkxWwNn4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B3LkAbCI.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CVNB3I9A.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cys77vfo.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DQ31lhkw.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D8bzSal1.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B1c-crdP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/rlYL6_u-.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/jC3uBuQA.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DMsZhJAp.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BjAXeOBb.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dg_46Ljg.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ZYKRgrtt.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Db4mELQW.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Djls7KqP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/eMP3SzX4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CDQwIvYz.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/qKtqUDpn.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/p4OZ13Rt.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/0XIOL7f-.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/nMqNs1WI.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/WUTkRygV.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D-MZziVS.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/16cy-3pL.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CmQzOt0X.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BzR4Bpo5.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cbk6LDlc.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DMpQ2VjP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/KMkrkpbk.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CTNwIyJm.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ccp8DHy1.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D2OvdbTk.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BUWX4M_G.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/lgpgYudh.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BYI5e787.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CyrprVen.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/_99QGe7X.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/3aQOlzix.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C6c3wBd4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CHvp0DM_.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BfPKB-F8.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/e2o5KJyy.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CZfe2Sfn.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BVlqpfGd.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CaXCK0Oi.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/yXaOlmbx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CVYvFl41.js">
<link rel="prefetch" as="style" href="/dashboard/_nuxt/useServerStore.DWEvhDiM.css">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BidU6Jgh.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/VJFiI_rq.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/lXe9j5XU.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B_5QcCB8.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B-WZqzsx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/XrWOLLJc.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BbcatXLp.js">
<link rel="prefetch" as="style" href="/dashboard/_nuxt/error-404.JekaaCis.css">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/cRLLwgqB.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D0FGFGTv.js">
<link rel="prefetch" as="style" href="/dashboard/_nuxt/error-500.CNP9nqm1.css">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C4Twg9_6.js">
<script type="module" src="/dashboard/_nuxt/DRtWvKfJ.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
+234
View File
@@ -0,0 +1,234 @@
<!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/DRtWvKfJ.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/CmNMiwz3.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cm7Dkme4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CwRw2352.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bl_ZW1Xh.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B5fdn047.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BMCLKWyE.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DpeyYdwe.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BPIn4_kN.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CELf783E.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CFcFeTBy.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BnGLU8uI.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CSbfZNF6.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DLCKhL4y.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CTyYxNkn.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/r743PZK3.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/G8FENBP4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/GnhOacnB.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Gj9DruUc.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BKuF8g-Y.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D6mOJ75X.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/33ou32AX.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B14_1DDx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D2eV2xTx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B7nXBdam.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D_qICk5i.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/dbkXk2FM.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/gHxUMB3b.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dvzs3FMW.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cls9geQy.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DSMppbuD.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BMYrlhrg.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Hku5IA12.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/zU1BOWrX.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ChcErU2V.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CkTkVLD1.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/RfUbfTV3.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CzY8CgE7.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/37NENiMc.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DOsY_IVn.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cw-7pq-7.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/mwds7uJx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DtAtnC1U.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dgmq9a1E.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CGlsgAZL.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CfFFY47l.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ca3-bi3b.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CJA3DD2a.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/LqjL8cgW.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BJSv0A8B.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/HF1fbsar.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/POGdjepN.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DF_jK3OP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CLLMBAGk.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/b2TVTf9x.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B8gNdiY1.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CpFoAXuV.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CP0-jfu8.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/7JVgPXr5.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B7DyUdc_.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/1T5oFhIQ.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bkz4NsfY.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CVFSkoIM.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CS5BvUDo.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BL7cLbn_.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CLYZtMaI.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DVu_lr_n.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cvjjzn6F.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/e47XCw9e.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/fseMLFIf.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DAA892mm.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BQr05V_N.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C1t5Tk14.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D2IhmS2j.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ce0F-GHP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/uQ-y24Vd.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B-OEjvS-.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dh-jSmv_.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BHHly3AA.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BEGul3PF.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/gkxWwNn4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B3LkAbCI.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CVNB3I9A.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cys77vfo.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DQ31lhkw.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D8bzSal1.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B1c-crdP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/rlYL6_u-.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/jC3uBuQA.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DMsZhJAp.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BjAXeOBb.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dg_46Ljg.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ZYKRgrtt.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Db4mELQW.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Djls7KqP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/eMP3SzX4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CDQwIvYz.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/qKtqUDpn.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/p4OZ13Rt.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/0XIOL7f-.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/nMqNs1WI.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/WUTkRygV.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D-MZziVS.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/16cy-3pL.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CmQzOt0X.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BzR4Bpo5.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cbk6LDlc.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DMpQ2VjP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/KMkrkpbk.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CTNwIyJm.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ccp8DHy1.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D2OvdbTk.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BUWX4M_G.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/lgpgYudh.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BYI5e787.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CyrprVen.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/_99QGe7X.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/3aQOlzix.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C6c3wBd4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CHvp0DM_.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BfPKB-F8.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/e2o5KJyy.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CZfe2Sfn.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BVlqpfGd.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CaXCK0Oi.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/yXaOlmbx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CVYvFl41.js">
<link rel="prefetch" as="style" href="/dashboard/_nuxt/useServerStore.DWEvhDiM.css">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BidU6Jgh.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/VJFiI_rq.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/lXe9j5XU.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B_5QcCB8.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B-WZqzsx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/XrWOLLJc.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BbcatXLp.js">
<link rel="prefetch" as="style" href="/dashboard/_nuxt/error-404.JekaaCis.css">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/cRLLwgqB.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D0FGFGTv.js">
<link rel="prefetch" as="style" href="/dashboard/_nuxt/error-500.CNP9nqm1.css">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C4Twg9_6.js">
<script type="module" src="/dashboard/_nuxt/DRtWvKfJ.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
+234
View File
@@ -0,0 +1,234 @@
<!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/DRtWvKfJ.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/CmNMiwz3.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cm7Dkme4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CwRw2352.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bl_ZW1Xh.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B5fdn047.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BMCLKWyE.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DpeyYdwe.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BPIn4_kN.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CELf783E.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CFcFeTBy.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BnGLU8uI.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CSbfZNF6.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DLCKhL4y.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CTyYxNkn.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/r743PZK3.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/G8FENBP4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/GnhOacnB.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Gj9DruUc.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BKuF8g-Y.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D6mOJ75X.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/33ou32AX.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B14_1DDx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D2eV2xTx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B7nXBdam.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D_qICk5i.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/dbkXk2FM.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/gHxUMB3b.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dvzs3FMW.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cls9geQy.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DSMppbuD.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BMYrlhrg.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Hku5IA12.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/zU1BOWrX.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ChcErU2V.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CkTkVLD1.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/RfUbfTV3.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CzY8CgE7.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/37NENiMc.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DOsY_IVn.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cw-7pq-7.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/mwds7uJx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DtAtnC1U.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dgmq9a1E.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CGlsgAZL.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CfFFY47l.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ca3-bi3b.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CJA3DD2a.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/LqjL8cgW.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BJSv0A8B.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/HF1fbsar.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/POGdjepN.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DF_jK3OP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CLLMBAGk.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/b2TVTf9x.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B8gNdiY1.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CpFoAXuV.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CP0-jfu8.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/7JVgPXr5.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B7DyUdc_.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/1T5oFhIQ.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bkz4NsfY.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CVFSkoIM.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CS5BvUDo.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BL7cLbn_.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CLYZtMaI.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DVu_lr_n.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cvjjzn6F.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/e47XCw9e.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/fseMLFIf.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DAA892mm.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BQr05V_N.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C1t5Tk14.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D2IhmS2j.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ce0F-GHP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/uQ-y24Vd.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B-OEjvS-.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dh-jSmv_.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BHHly3AA.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BEGul3PF.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/gkxWwNn4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B3LkAbCI.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CVNB3I9A.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cys77vfo.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DQ31lhkw.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D8bzSal1.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B1c-crdP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/rlYL6_u-.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/jC3uBuQA.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DMsZhJAp.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BjAXeOBb.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dg_46Ljg.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ZYKRgrtt.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Db4mELQW.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Djls7KqP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/eMP3SzX4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CDQwIvYz.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/qKtqUDpn.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/p4OZ13Rt.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/0XIOL7f-.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/nMqNs1WI.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/WUTkRygV.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D-MZziVS.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/16cy-3pL.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CmQzOt0X.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BzR4Bpo5.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cbk6LDlc.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DMpQ2VjP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/KMkrkpbk.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CTNwIyJm.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ccp8DHy1.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D2OvdbTk.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BUWX4M_G.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/lgpgYudh.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BYI5e787.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CyrprVen.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/_99QGe7X.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/3aQOlzix.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C6c3wBd4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CHvp0DM_.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BfPKB-F8.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/e2o5KJyy.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CZfe2Sfn.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BVlqpfGd.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CaXCK0Oi.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/yXaOlmbx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CVYvFl41.js">
<link rel="prefetch" as="style" href="/dashboard/_nuxt/useServerStore.DWEvhDiM.css">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BidU6Jgh.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/VJFiI_rq.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/lXe9j5XU.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B_5QcCB8.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B-WZqzsx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/XrWOLLJc.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BbcatXLp.js">
<link rel="prefetch" as="style" href="/dashboard/_nuxt/error-404.JekaaCis.css">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/cRLLwgqB.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D0FGFGTv.js">
<link rel="prefetch" as="style" href="/dashboard/_nuxt/error-500.CNP9nqm1.css">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C4Twg9_6.js">
<script type="module" src="/dashboard/_nuxt/DRtWvKfJ.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
+234
View File
@@ -0,0 +1,234 @@
<!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/DRtWvKfJ.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/CmNMiwz3.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cm7Dkme4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CwRw2352.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bl_ZW1Xh.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B5fdn047.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BMCLKWyE.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DpeyYdwe.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BPIn4_kN.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CELf783E.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CFcFeTBy.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BnGLU8uI.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CSbfZNF6.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DLCKhL4y.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CTyYxNkn.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/r743PZK3.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/G8FENBP4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/GnhOacnB.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Gj9DruUc.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BKuF8g-Y.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D6mOJ75X.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/33ou32AX.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B14_1DDx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D2eV2xTx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B7nXBdam.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D_qICk5i.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/dbkXk2FM.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/gHxUMB3b.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dvzs3FMW.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cls9geQy.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DSMppbuD.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BMYrlhrg.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Hku5IA12.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/zU1BOWrX.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ChcErU2V.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CkTkVLD1.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/RfUbfTV3.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CzY8CgE7.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/37NENiMc.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DOsY_IVn.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cw-7pq-7.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/mwds7uJx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DtAtnC1U.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dgmq9a1E.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CGlsgAZL.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CfFFY47l.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ca3-bi3b.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CJA3DD2a.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/LqjL8cgW.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BJSv0A8B.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/HF1fbsar.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/POGdjepN.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DF_jK3OP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CLLMBAGk.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/b2TVTf9x.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B8gNdiY1.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CpFoAXuV.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CP0-jfu8.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/7JVgPXr5.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B7DyUdc_.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/1T5oFhIQ.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bkz4NsfY.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CVFSkoIM.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CS5BvUDo.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BL7cLbn_.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CLYZtMaI.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DVu_lr_n.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cvjjzn6F.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/e47XCw9e.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/fseMLFIf.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DAA892mm.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BQr05V_N.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C1t5Tk14.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D2IhmS2j.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ce0F-GHP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/uQ-y24Vd.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B-OEjvS-.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dh-jSmv_.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BHHly3AA.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BEGul3PF.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/gkxWwNn4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B3LkAbCI.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CVNB3I9A.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cys77vfo.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DQ31lhkw.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D8bzSal1.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B1c-crdP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/rlYL6_u-.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/jC3uBuQA.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DMsZhJAp.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BjAXeOBb.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dg_46Ljg.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ZYKRgrtt.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Db4mELQW.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Djls7KqP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/eMP3SzX4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CDQwIvYz.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/qKtqUDpn.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/p4OZ13Rt.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/0XIOL7f-.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/nMqNs1WI.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/WUTkRygV.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D-MZziVS.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/16cy-3pL.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CmQzOt0X.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BzR4Bpo5.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cbk6LDlc.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DMpQ2VjP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/KMkrkpbk.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CTNwIyJm.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ccp8DHy1.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D2OvdbTk.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BUWX4M_G.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/lgpgYudh.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BYI5e787.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CyrprVen.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/_99QGe7X.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/3aQOlzix.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C6c3wBd4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CHvp0DM_.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BfPKB-F8.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/e2o5KJyy.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CZfe2Sfn.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BVlqpfGd.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CaXCK0Oi.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/yXaOlmbx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CVYvFl41.js">
<link rel="prefetch" as="style" href="/dashboard/_nuxt/useServerStore.DWEvhDiM.css">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BidU6Jgh.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/VJFiI_rq.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/lXe9j5XU.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B_5QcCB8.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B-WZqzsx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/XrWOLLJc.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BbcatXLp.js">
<link rel="prefetch" as="style" href="/dashboard/_nuxt/error-404.JekaaCis.css">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/cRLLwgqB.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D0FGFGTv.js">
<link rel="prefetch" as="style" href="/dashboard/_nuxt/error-500.CNP9nqm1.css">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C4Twg9_6.js">
<script type="module" src="/dashboard/_nuxt/DRtWvKfJ.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
+234
View File
@@ -0,0 +1,234 @@
<!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/DRtWvKfJ.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/CmNMiwz3.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cm7Dkme4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CwRw2352.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bl_ZW1Xh.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B5fdn047.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BMCLKWyE.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DpeyYdwe.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BPIn4_kN.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CELf783E.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CFcFeTBy.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BnGLU8uI.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CSbfZNF6.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DLCKhL4y.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CTyYxNkn.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/r743PZK3.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/G8FENBP4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/GnhOacnB.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Gj9DruUc.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BKuF8g-Y.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D6mOJ75X.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/33ou32AX.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B14_1DDx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D2eV2xTx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B7nXBdam.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D_qICk5i.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/dbkXk2FM.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/gHxUMB3b.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dvzs3FMW.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cls9geQy.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DSMppbuD.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BMYrlhrg.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Hku5IA12.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/zU1BOWrX.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ChcErU2V.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CkTkVLD1.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/RfUbfTV3.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CzY8CgE7.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/37NENiMc.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DOsY_IVn.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cw-7pq-7.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/mwds7uJx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DtAtnC1U.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dgmq9a1E.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CGlsgAZL.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CfFFY47l.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ca3-bi3b.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CJA3DD2a.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/LqjL8cgW.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BJSv0A8B.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/HF1fbsar.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/POGdjepN.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DF_jK3OP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CLLMBAGk.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/b2TVTf9x.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B8gNdiY1.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CpFoAXuV.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CP0-jfu8.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/7JVgPXr5.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B7DyUdc_.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/1T5oFhIQ.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Bkz4NsfY.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CVFSkoIM.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CS5BvUDo.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BL7cLbn_.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CLYZtMaI.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DVu_lr_n.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cvjjzn6F.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/e47XCw9e.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/fseMLFIf.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DAA892mm.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BQr05V_N.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C1t5Tk14.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D2IhmS2j.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ce0F-GHP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/uQ-y24Vd.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B-OEjvS-.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dh-jSmv_.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BHHly3AA.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BEGul3PF.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/gkxWwNn4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B3LkAbCI.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CVNB3I9A.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cys77vfo.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DQ31lhkw.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D8bzSal1.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B1c-crdP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/rlYL6_u-.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/jC3uBuQA.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DMsZhJAp.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BjAXeOBb.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Dg_46Ljg.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/ZYKRgrtt.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Db4mELQW.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Djls7KqP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/eMP3SzX4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CDQwIvYz.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/qKtqUDpn.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/p4OZ13Rt.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/0XIOL7f-.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/nMqNs1WI.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/WUTkRygV.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D-MZziVS.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/16cy-3pL.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CmQzOt0X.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BzR4Bpo5.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Cbk6LDlc.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/DMpQ2VjP.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/KMkrkpbk.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CTNwIyJm.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/Ccp8DHy1.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D2OvdbTk.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BUWX4M_G.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/lgpgYudh.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BYI5e787.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CyrprVen.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/_99QGe7X.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/3aQOlzix.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C6c3wBd4.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CHvp0DM_.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BfPKB-F8.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/e2o5KJyy.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CZfe2Sfn.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BVlqpfGd.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CaXCK0Oi.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/yXaOlmbx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/CVYvFl41.js">
<link rel="prefetch" as="style" href="/dashboard/_nuxt/useServerStore.DWEvhDiM.css">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BidU6Jgh.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/VJFiI_rq.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/lXe9j5XU.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B_5QcCB8.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/B-WZqzsx.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/XrWOLLJc.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/BbcatXLp.js">
<link rel="prefetch" as="style" href="/dashboard/_nuxt/error-404.JekaaCis.css">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/cRLLwgqB.js">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/D0FGFGTv.js">
<link rel="prefetch" as="style" href="/dashboard/_nuxt/error-500.CNP9nqm1.css">
<link rel="prefetch" as="script" crossorigin href="/dashboard/_nuxt/C4Twg9_6.js">
<script type="module" src="/dashboard/_nuxt/DRtWvKfJ.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
View File
@@ -0,0 +1 @@
import{s as S}from"./CFcFeTBy.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"./DRtWvKfJ.js";import{s as w}from"./Bl_ZW1Xh.js";import{s as N}from"./GnhOacnB.js";import"./BMCLKWyE.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
View File
@@ -0,0 +1 @@
import{s as V}from"./CS5BvUDo.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"./DRtWvKfJ.js";import{s as F}from"./Bl_ZW1Xh.js";import{s as U}from"./Hku5IA12.js";import{s as H}from"./GnhOacnB.js";import"./BMCLKWyE.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
+48
View File
@@ -0,0 +1,48 @@
import{t as s,v as m,aa as f,x as O,a3 as ft,aw as W,a4 as b,a7 as p,a2 as ue,ah as be,V as Ce,a5 as de,i as R,P as w,A as E,ab as C,W as S,O as v,a9 as pt,Z as Ue,y as H,N as P,$ as Z,B as qe,aj as Ze,Q as L,a6 as fe,a8 as mt,av as ht,ae as se,af as pe,z as A,ac as gt,ag as me,Y as k,a1 as Re}from"./DRtWvKfJ.js";import{s as U}from"./BMCLKWyE.js";import{s as yt}from"./B5fdn047.js";import wt from"./Bkz4NsfY.js";import vt from"./BnGLU8uI.js";import{s as F}from"./Bl_ZW1Xh.js";import{s as Xe}from"./DpeyYdwe.js";import{s as Je}from"./CTyYxNkn.js";import{s as bt}from"./CS5BvUDo.js";import{s as ge}from"./BKuF8g-Y.js";import{s as Ct}from"./B7nXBdam.js";import{O as K}from"./CELf783E.js";import Ye from"./Gj9DruUc.js";import Rt from"./DtAtnC1U.js";import St from"./Cm7Dkme4.js";import Pt from"./B14_1DDx.js";import{s as Mt}from"./b2TVTf9x.js";import{s as Et}from"./CFcFeTBy.js";import{s as Se,a as Pe,b as Me}from"./BL7cLbn_.js";import"./CVFSkoIM.js";import"./BMYrlhrg.js";import"./Hku5IA12.js";import"./zU1BOWrX.js";import"./ChcErU2V.js";import"./GnhOacnB.js";import"./CwRw2352.js";import"./D2eV2xTx.js";var Qe={name:"ArrowDownIcon",extends:U},kt=O("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M6.99994 14C6.91097 14.0004 6.82281 13.983 6.74064 13.9489C6.65843 13.9148 6.58387 13.8646 6.52133 13.8013L1.10198 8.38193C0.982318 8.25351 0.917175 8.08367 0.920272 7.90817C0.923368 7.73267 0.994462 7.56523 1.11858 7.44111C1.24269 7.317 1.41014 7.2459 1.58563 7.2428C1.76113 7.23971 1.93098 7.30485 2.0594 7.42451L6.32263 11.6877V0.677419C6.32263 0.497756 6.394 0.325452 6.52104 0.198411C6.64808 0.0713706 6.82039 0 7.00005 0C7.17971 0 7.35202 0.0713706 7.47906 0.198411C7.6061 0.325452 7.67747 0.497756 7.67747 0.677419V11.6877L11.9407 7.42451C12.0691 7.30485 12.2389 7.23971 12.4144 7.2428C12.5899 7.2459 12.7574 7.317 12.8815 7.44111C13.0056 7.56523 13.0767 7.73267 13.0798 7.90817C13.0829 8.08367 13.0178 8.25351 12.8981 8.38193L7.47875 13.8013C7.41621 13.8646 7.34164 13.9148 7.25944 13.9489C7.17727 13.983 7.08912 14.0004 7.00015 14C7.00012 14 7.00009 14 7.00005 14C7.00001 14 6.99998 14 6.99994 14Z",fill:"currentColor"},null,-1),Ot=[kt];function Dt(n,e,t,o,i,r){return s(),m("svg",f({width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},n.pti()),Ot,16)}Qe.render=Dt;var $e={name:"ArrowUpIcon",extends:U},It=O("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M6.51551 13.799C6.64205 13.9255 6.813 13.9977 6.99193 14C7.17087 13.9977 7.34182 13.9255 7.46835 13.799C7.59489 13.6725 7.66701 13.5015 7.66935 13.3226V2.31233L11.9326 6.57554C11.9951 6.63887 12.0697 6.68907 12.1519 6.72319C12.2341 6.75731 12.3223 6.77467 12.4113 6.77425C12.5003 6.77467 12.5885 6.75731 12.6707 6.72319C12.7529 6.68907 12.8274 6.63887 12.89 6.57554C13.0168 6.44853 13.0881 6.27635 13.0881 6.09683C13.0881 5.91732 13.0168 5.74514 12.89 5.61812L7.48846 0.216594C7.48274 0.210436 7.4769 0.204374 7.47094 0.198411C7.3439 0.0713707 7.1716 0 6.99193 0C6.81227 0 6.63997 0.0713707 6.51293 0.198411C6.50704 0.204296 6.50128 0.210278 6.49563 0.216354L1.09386 5.61812C0.974201 5.74654 0.909057 5.91639 0.912154 6.09189C0.91525 6.26738 0.986345 6.43483 1.11046 6.55894C1.23457 6.68306 1.40202 6.75415 1.57752 6.75725C1.75302 6.76035 1.92286 6.6952 2.05128 6.57554L6.31451 2.31231V13.3226C6.31685 13.5015 6.38898 13.6725 6.51551 13.799Z",fill:"currentColor"},null,-1),Tt=[It];function xt(n,e,t,o,i,r){return s(),m("svg",f({width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},n.pti()),Tt,16)}$e.render=xt;var Ft={root:function(e){var t=e.instance,o=e.props;return["p-datatable p-component",{"p-datatable-hoverable-rows":o.rowHover||o.selectionMode,"p-datatable-resizable":o.resizableColumns,"p-datatable-resizable-fit":o.resizableColumns&&o.columnResizeMode==="fit","p-datatable-scrollable":o.scrollable,"p-datatable-flex-scrollable":o.scrollable&&o.scrollHeight==="flex","p-datatable-responsive-stack":o.responsiveLayout==="stack","p-datatable-responsive-scroll":o.responsiveLayout==="scroll","p-datatable-striped":o.stripedRows,"p-datatable-gridlines":o.showGridlines,"p-datatable-grouped-header":t.headerColumnGroup!=null,"p-datatable-grouped-footer":t.footerColumnGroup!=null,"p-datatable-sm":o.size==="small","p-datatable-lg":o.size==="large"}]},loadingOverlay:"p-datatable-loading-overlay p-component-overlay",loadingIcon:"p-datatable-loading-icon",header:"p-datatable-header",paginator:function(e){var t=e.instance;return t.paginatorTop?"p-paginator-top":t.paginatorBottom?"p-paginator-bottom":""},wrapper:"p-datatable-wrapper",table:function(e){var t=e.props;return["p-datatable-table",{"p-datatable-scrollable-table":t.scrollable,"p-datatable-resizable-table":t.resizableColumns,"p-datatable-resizable-table-fit":t.resizableColumns&&t.columnResizeMode==="fit"}]},thead:"p-datatable-thead",headerCell:function(e){var t=e.instance,o=e.props,i=e.column;return i&&!t.columnProp(i,"hidden")&&(o.rowGroupMode!=="subheader"||o.groupRowsBy!Line truncated
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var r=!0,a=!1,u;return{s:function(){t=t.call(n)},n:function(){var l=t.next();return r=l.done,l},e:function(l){a=!0,u=l},f:function(){try{!r&&t.return!=null&&t.return()}finally{if(a)throw u}}}}function sn(n,e){if(n){if(typeof n=="string")return ke(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 ke(n,e)}}function ke(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,o=new Array(e);t<e;t++)o[t]=n[t];return o}function Oe(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(n);e&&(o=o.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,o)}return t}function De(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Oe(Object(t),!0).forEach(function(o){un(n,o,t[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Oe(Object(t)).forEach(function(o){Object.defineProperty(n,o,Object.getOwnPropertyDescriptor(t,o))})}return n}function un(n,e,t){return e=dn(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function dn(n){var e=cn(n,"string");return J(e)=="symbol"?e:String(e)}function cn(n,e){if(J(n)!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var o=t.call(n,e||"default");if(J(o)!="object")return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}var lt={name:"BodyRow",hostName:"DataTable",extends:F,emits:["rowgroup-toggle","row-click","row-dblclick","row-rightclick","row-touchend","row-keydown","row-mousedown","row-dragstart","row-dragover","row-dragleave","row-dragend","row-drop","row-toggle","radio-change","checkbox-change","cell-edit-init","cell-edit-complete","cell-edit-cancel","row-edit-init","row-edit-save","row-edit-cancel","editing-meta-change"],props:{rowData:{type:Object,default:null},index:{type:Number,default:0},value:{type:Array,default:null},columns:{type:null,default:null},frozenRow:{type:Boolean,default:!1},empty:{type:Boolean,default:!1},rowGroupMode:{type:String,default:null},groupRowsBy:{type:[Array,String,Function],default:null},expandableRowGroups:{type:Boolean,default:!1},expandedRowGroups:{type:Array,default:null},first:{type:Number,default:0},dataKey:{type:[String,Function],default:null},expandedRowIcon:{type:String,default:null},collapsedRowIcon:{type:String,default:null},expandedRows:{type:[Array,Object],default:null},selection:{type:[Array,Object],default:null},selectionKeys:{type:null,default:null},selectionMode:{type:String,default:null},contextMenu:{type:Boolean,default:!1},contextMenuSelection:{type:Object,default:null},rowClass:{type:null,default:null},rowStyle:{type:null,default:null},rowGroupHeaderStyle:{type:null,default:null},editMode:{type:String,default:null},compareSelectionBy:{type:String,default:"deepEquals"},editingRows:{type:Array,default:null},editingRowKeys:{type:null,default:null},editingMeta:{type:Object,default:null},templates:{type:null,default:null},scrollable:{type:Boolean,default:!1},responsiveLayout:{type:String,default:"stack"},virtualScrollerContentProps:{type:Object,default:null},isVirtualScrollerDisabled:{type:Boolean,default:!1},expandedRowId:{type:String,default:null},nameAttributeSelector:{type:String,default:null}},data:function(){return{d_rowExpanded:!1}},watch:{expandedRows:{immediate:!0,handler:function(e){var t=this;this.d_rowExpanded=this.dataKey?(e==null?void 0:e[b.resolveFieldData(this.rowData,this.dataKey)])!==void 0:e==null?void 0:e.some(function(o){return t.equals(t.rowData,o)})}}},methods:{columnProp:function(e,t){return b.getVNodeProp(e,t)},getColumnPT:function(e){var t={parent:{instance:this,props:this.$props,state:this.$data}};return f(this.ptm("column.".concat(e),{column:t}),this.ptm("column.".concat(e),t),this.ptmo(this.columnProp({},"pt"),e,t))},getBodyRowPTOptions:function(e){var t,o=(t=this.$parentInstance)===null||t===void 0?void 0:t.$parentInstance;return this.ptm(e,{context:{index:this.rowIndex,selectable:(o==null?void 0:o.rowHover)||(o==null?void 0:o.selectionMode),selected:this.isSelected,stripedRows:(o==null?void 0:o.stripedRows)||!1}})},shouldRenderBodyCell:function(e){var t=this.columnProp(e,"hidden");if(this.rowGroupMode&&!t){var o=this.columnProp(e,"field");if(this.rowGroupMode==="subheader")return this.groupRowsBy!==o;if(this.rowGroupMode==="rowspan")if(this.isGrouped(e)){var i=this.value[this.rowIndex-1];if(i){var r=b.resolveFieldData(this.value[this.rowIndex],o),a=b.resolveFieldData(i,o);return r!==a}else return!0}else return!0}else return!t},calculateRowGroupSize:function(e){if(this.isGrouped(e)){for(var t=this.rowIndex,o=this.columnProp(e,"field"),i=b.resolveFieldData(this.value[t] Line truncated
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var r=!0,a=!1,u;return{s:function(){t=t.call(n)},n:function(){var l=t.next();return r=l.done,l},e:function(l){a=!0,u=l},f:function(){try{!r&&t.return!=null&&t.return()}finally{if(a)throw u}}}}function Dn(n,e){if(n){if(typeof n=="string")return Fe(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 Fe(n,e)}}function Fe(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,o=new Array(e);t<e;t++)o[t]=n[t];return o}var ut={name:"TableFooter",hostName:"DataTable",extends:F,props:{columnGroup:{type:null,default:null},columns:{type:Object,default:null}},provide:function(){return{$rows:this.d_footerRows,$columns:this.d_footerColumns}},data:function(){return{d_footerRows:new W({type:"Row"}),d_footerColumns:new W({type:"Column"})}},beforeUnmount:function(){this.d_footerRows.clear(),this.d_footerColumns.clear()},methods:{columnProp:function(e,t){return b.getVNodeProp(e,t)},getColumnGroupPT:function(e){var t={props:this.getColumnGroupProps(),parent:{instance:this,props:this.$props,state:this.$data},context:{type:"footer",scrollable:this.ptmTFootOptions.context.scrollable}};return f(this.ptm("columnGroup.".concat(e),{columnGroup:t}),this.ptm("columnGroup.".concat(e),t),this.ptmo(this.getColumnGroupProps(),e,t))},getColumnGroupProps:function(){return this.columnGroup&&this.columnGroup.props&&this.columnGroup.props.pt?this.columnGroup.props.pt:void 0},getRowPT:function(e,t,o){var i={props:e.props,parent:{instance:this,props:this.$props,state:this.$data},context:{index:o}};return f(this.ptm("row.".concat(t),{row:i}),this.ptm("row.".concat(t),i),this.ptmo(this.getRowProp(e),t,i))},getRowProp:function(e){return e.props&&e.props.pt?e.props.pt:void 0},getFooterRows:function(){var e;return(e=this.d_footerRows)===null||e===void 0?void 0:e.get(this.columnGroup,this.columnGroup.children)},getFooterColumns:function(e){var t;return(t=this.d_footerColumns)===null||t===void 0?void 0:t.get(e,e.children)}},computed:{hasFooter:function(){var e=!1;if(this.columnGroup)e=!0;else if(this.columns){var t=On(this.columns),o;try{for(t.s();!(o=t.n()).done;){var i=o.value;if(this.columnProp(i,"footer")||i.children&&i.children.footer){e=!0;break}}}catch(r){t.e(r)}finally{t.f()}}return e},ptmTFootOptions:function(){var e;return{context:{scrollable:(e=this.$parentInstance)===null||e===void 0||(e=e.$parentInstance)===null||e===void 0?void 0:e.scrollable}}}},components:{DTFooterCell:st}};function $(n){"@babel/helpers - typeof";return $=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},$(n)}function Be(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(n);e&&(o=o.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,o)}return t}function ae(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Be(Object(t),!0).forEach(function(o){In(n,o,t[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Be(Object(t)).forEach(function(o){Object.defineProperty(n,o,Object.getOwnPropertyDescriptor(t,o))})}return n}function In(n,e,t){return e=Tn(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function Tn(n){var e=xn(n,"string");return $(e)=="symbol"?e:String(e)}function xn(n,e){if($(n)!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var o=t.call(n,e||"default");if($(o)!="object")return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function Fn(n,e,t,o,i,r){var a=R("DTFooterCell");return r.hasFooter?(s(),m("tfoot",f({key:0,class:n.cx("tfoot"),style:n.sx("tfoot"),role:"rowgroup"},t.columnGroup?ae(ae({},n.ptm("tfoot",r.ptmTFootOptions)),r.getColumnGroupPT("root")):n.ptm("tfoot",r.ptmTFootOptions),{"data-pc-section":"tfoot"}),[t.columnGroup?(s(!0),m(P,{key:1},L(r.getFooterRows(),function(u,d){return s(),m("tr",f({key:d,role:"row"},ae(ae({},n.ptm("footerRow")),r.getRowPT(u,"root",d))),[(s(!0),m(P,null,L(r.getFooterColumns(u),function(l,g){return s(),m(P,{key:r.columnProp(l,"columnKey")||r.columnProp(l,"field")||g},[r.columnProp(l,"hidden")?v("",!0):(s(),w(a,{key:0,column:l,index:d,pt:n.pt},null,8,["column","index","pt"]))],64)}),128))],16)}),128)):(s(),m("tr",f({key:0,role:"row"},n.ptm("footerRow")),[(s(!0),m(P,null,L(t.columns,function(u,d){return s(),m(P,{key:r.columnProp(u,"columnKey")||r.columnProp(u,"field")||d},[r.columnProp(u,"hidden")?v("",!0):(s(),w(a,{key:0,column:u,pt:n.pt},null,8,["column","pt"]))],64)}),128))],16))],16)):v("",!0)}ut.render=Fn;function _(n){"@babel/helper Line truncated
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ar(n,e){var t=n==null?null:typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(t!=null){var o,i,r,a,u=[],d=!0,l=!1;try{if(r=(t=t.call(n)).next,e===0){if(Object(t)!==t)return;d=!1}else for(;!(d=(o=r.call(t)).done)&&(u.push(o.value),u.length!==e);d=!0);}catch(g){l=!0,i=g}finally{try{if(!d&&t.return!=null&&(a=t.return(),Object(a)!==a))return}finally{if(l)throw i}}return u}}function sr(n){if(Array.isArray(n))return n}function q(n,e){var t=typeof Symbol<"u"&&n[Symbol.iterator]||n["@@iterator"];if(!t){if(Array.isArray(n)||(t=ve(n))||e&&n&&typeof n.length=="number"){t&&(n=t);var o=0,i=function(){};return{s:i,n:function(){return o>=n.length?{done:!0}:{done:!1,value:n[o++]}},e:function(l){throw l},f:i}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var r=!0,a=!1,u;return{s:function(){t=t.call(n)},n:function(){var l=t.next();return r=l.done,l},e:function(l){a=!0,u=l},f:function(){try{!r&&t.return!=null&&t.return()}finally{if(a)throw u}}}}function M(n){return cr(n)||dr(n)||ve(n)||ur()}function ur(){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 ve(n,e){if(n){if(typeof n=="string")return he(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 he(n,e)}}function dr(n){if(typeof Symbol<"u"&&n[Symbol.iterator]!=null||n["@@iterator"]!=null)return Array.from(n)}function cr(n){if(Array.isArray(n))return he(n)}function he(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,o=new Array(e);t<e;t++)o[t]=n[t];return o}var fr={name:"DataTable",extends:Xt,inheritAttrs:!1,emits:["value-change","update:first","update:rows","page","update:sortField","update:sortOrder","update:multiSortMeta","sort","filter","row-click","row-dblclick","update:selection","row-select","row-unselect","update:contextMenuSelection","row-contextmenu","row-unselect-all","row-select-all","select-all-change","column-resize-end","column-reorder","row-reorder","update:expandedRows","row-collapse","row-expand","update:expandedRowGroups","rowgroup-collapse","rowgroup-expand","update:filters","state-restore","state-save","cell-edit-init","cell-edit-complete","cell-edit-cancel","update:editingRows","row-edit-init","row-edit-save","row-edit-cancel"],provide:function(){return{$columns:this.d_columns,$columnGroups:this.d_columnGroups}},data:function(){return{d_first:this.first,d_rows:this.rows,d_sortField:this.sortField,d_sortOrder:this.sortOrder,d_nullSortOrder:this.nullSortOrder,d_multiSortMeta:this.multiSortMeta?M(this.multiSortMeta):[],d_groupRowsSortMeta:null,d_selectionKeys:null,d_columnOrder:null,d_editingRowKeys:null,d_editingMeta:{},d_filters:this.cloneFilters(this.filters),d_columns:new W({type:"Column"}),d_columnGroups:new W({type:"ColumnGroup"})}},rowTouched:!1,anchorRowIndex:null,rangeRowIndex:null,documentColumnResizeListener:null,documentColumnResizeEndListener:null,lastResizeHelperX:null,resizeColumnElement:null,columnResizing:!1,colReorderIconWidth:null,colReorderIconHeight:null,draggedColumn:null,draggedColumnElement:null,draggedRowIndex:null,droppedRowIndex:null,rowDragging:null,columnWidthsState:null,tableWidthState:null,columnWidthsRestored:!1,watch:{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},nullSortOrder:function(e){this.d_nullSortOrder=e},multiSortMeta:function(e){this.d_multiSortMeta=e},selection:{immediate:!0,handler:function(e){this.dataKey&&this.updateSelectionKeys(e)}},editingRows:{immediate:!0,handler:function(e){this.dataKey&&this.updateEditingRowKeys(e)}},filters:{deep:!0,handler:function(e){this.d_filters=this.cloneFilters(e)}}},mounted:function(){this.$el.setAttribute(this.attributeSelector,""),this.responsiveLayout==="stack"&&!this.scrollable&&!this.unstyled&&this.createResponsiveStyle(),this.isStateful()&&(this.restoreState(),this.resizableColumns&&this.restoreColumnWidths()),this.editMode==="row"&&this.dataKey&&!this.d_editingRowKeys&&this.updateEditingRowKeys(this.editingRows)},beforeUnmount:function(){this.unbindColumnResizeEvents(),this.destroyStyleElement(),this.destroyResponsiveStyle(),this.d_columns.clear(),this.d_columnGroups.clear()},updated:function(){this.isStateful()&&this.saveState(),this.editMode==="row"&&this.dataKey&&!this.d_editingRowKeys&&this.updateEditingRowKeys(this.editingRows)},methods:{columnProp:function(e,t){return b.getVNodeProp(e,t)},onPage:function(e){var t=this;this.clearEditingMetaData(),this.d_first=e.first,this.d_rows=e.rows;var o=this.createLazyLoadEvent(e);o.pageCount=e.pageCount,o.page=e.page,this.$emit("update:first",this.d_first),this.$emit("update:rows",this.d_rows),this.$emit("page",o),this.$nextTick(function(){t.$emit("value-change",t.processedData)})},onColumnHeaderClick:function(e){var t=this,o=e.originalEvent,i=e.column;if(this.columnProp(i,"sortable")){var r=o.target,a=this.columnProp(i,"sortField")||this.columnProp(i,"field");if(p.getAttribute(r,"data-p-sortable-column")===!0||p.getAttribute(r,"data-pc-section")==="headertitle"||p.getAttribute(r,"data-pc-section")==="headercontent"||p.getAttribute(r,"data-pc-section")==="sorticon"||p.getAttribute(r.parentElement,"data-pc-section")==="sorticon"||p.getAttribute(r.parentElement.parentElement,"data-pc-section")==="sorticon"||r.closest('[data-p-sortable-column="true"]')&&!r.closest('[data-pc-section="filtermenubutton"]')&&!p.isClickable(o.target)){if(p.clearSelection(),this.sortMode==="single")this.d_sortField===a?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_sortField=a),this.$emit("update:sortField",this.d_sortField),this.$emit("update:sortOrder",this.d_sortOrder),this.resetPage();else if(this.sortMode==="multiple"){var u=o.metaKey||o.ctrlKey;u||(this.d_ Line truncated
`;for(var y=!1,c=0;c<o.columns.length;c++){var T=o.columns[c];if(o.columnProp(T,"exportable")!==!1&&o.columnProp(T,"field")){y?i+=o.csvSeparator:y=!0;var x=b.resolveFieldData(h,o.columnProp(T,"field"));x!=null?o.exportFunction?x=o.exportFunction({data:x,field:o.columnProp(T,"field")}):x=String(x).replace(/"/g,'""'):x="",i+='"'+x+'"'}}});for(var d=!1,l=0;l<this.columns.length;l++){var g=this.columns[l];l===0&&(i+=`
`),this.columnProp(g,"exportable")!==!1&&this.columnProp(g,"exportFooter")&&(d?i+=this.csvSeparator:d=!0,i+='"'+(this.columnProp(g,"exportFooter")||this.columnProp(g,"footer")||this.columnProp(g,"field"))+'"')}p.exportCSV(i,this.exportFilename)},resetPage:function(){this.d_first=0,this.$emit("update:first",this.d_first)},onColumnResizeStart:function(e){var t=p.getOffset(this.$el).left;this.resizeColumnElement=e.target.parentElement,this.columnResizing=!0,this.lastResizeHelperX=e.pageX-t+this.$el.scrollLeft,this.bindColumnResizeEvents()},onColumnResize:function(e){var t=p.getOffset(this.$el).left;this.$el.setAttribute("data-p-unselectable-text","true"),!this.isUnstyled&&p.addClass(this.$el,"p-unselectable-text"),this.$refs.resizeHelper.style.height=this.$el.offsetHeight+"px",this.$refs.resizeHelper.style.top="0px",this.$refs.resizeHelper.style.left=e.pageX-t+this.$el.scrollLeft+"px",this.$refs.resizeHelper.style.display="block"},onColumnResizeEnd:function(){var e=this.$refs.resizeHelper.offsetLeft-this.lastResizeHelperX,t=this.resizeColumnElement.offsetWidth,o=t+e,i=this.resizeColumnElement.style.minWidth||15;if(t+e>parseInt(i,10)){if(this.columnResizeMode==="fit"){var r=this.resizeColumnElement.nextElementSibling,a=r.offsetWidth-e;o>15&&a>15&&this.resizeTableCells(o,a)}else if(this.columnResizeMode==="expand"){var u=this.$refs.table.offsetWidth+e+"px",d=function(y){y&&(y.style.width=y.style.minWidth=u)};if(this.resizeTableCells(o),d(this.$refs.table),!this.virtualScrollerDisabled){var l=this.$refs.bodyRef&&this.$refs.bodyRef.$el,g=this.$refs.frozenBodyRef&&this.$refs.frozenBodyRef.$el;d(l),d(g)}}this.$emit("column-resize-end",{element:this.resizeColumnElement,delta:e})}this.$refs.resizeHelper.style.display="none",this.resizeColumn=null,this.$el.removeAttribute("data-p-unselectable-text"),!this.isUnstyled&&p.removeClass(this.$el,"p-unselectable-text"),this.unbindColumnResizeEvents(),this.isStateful()&&this.saveState()},resizeTableCells:function(e,t){var o=p.index(this.resizeColumnElement),i=[],r=p.find(this.$refs.table,'thead[data-pc-section="thead"] > tr > th');r.forEach(function(d){return i.push(p.getOuterWidth(d))}),this.destroyStyleElement(),this.createStyleElement();var a="",u='[data-pc-name="datatable"]['.concat(this.attributeSelector,'] > [data-pc-section="wrapper"] ').concat(this.virtualScrollerDisabled?"":'> [data-pc-name="virtualscroller"]',' > table[data-pc-section="table"]');i.forEach(function(d,l){var g=l===o?e:t&&l===o+1?t:d,h="width: ".concat(g,"px !important; max-width: ").concat(g,"px !important");a+=`
`.concat(u,' > thead[data-pc-section="thead"] > tr > th:nth-child(').concat(l+1,`),
`).concat(u,' > tbody[data-pc-section="tbody"] > tr > td:nth-child(').concat(l+1,`),
`).concat(u,' > tfoot[data-pc-section="tfoot"] > tr > td:nth-child(').concat(l+1,`) {
`).concat(h,`
}
`)}),this.styleElement.innerHTML=a},bindColumnResizeEvents:function(){var e=this;this.documentColumnResizeListener||(this.documentColumnResizeListener=document.addEventListener("mousemove",function(){e.columnResizing&&e.onColumnResize(event)})),this.documentColumnResizeEndListener||(this.documentColumnResizeEndListener=document.addEventListener("mouseup",function(){e.columnResizing&&(e.columnResizing=!1,e.onColumnResizeEnd())}))},unbindColumnResizeEvents:function(){this.documentColumnResizeListener&&(document.removeEventListener("document",this.documentColumnResizeListener),this.documentColumnResizeListener=null),this.documentColumnResizeEndListener&&(document.removeEventListener("document",this.documentColumnResizeEndListener),this.documentColumnResizeEndListener=null)},onColumnHeaderMouseDown:function(e){var t=e.originalEvent,o=e.column;this.reorderableColumns&&this.columnProp(o,"reorderableColumn")!==!1&&(t.target.nodeName==="INPUT"||t.target.nodeName==="TEXTAREA"||p.getAttribute(t.target,'[data-pc-section="columnresizer"]')?t.currentTarget.draggable=!1:t.currentTarget.draggable=!0)},onColumnHeaderDragStart:function(e){var t=e.originalEvent,o=e.column;if(this.columnResizing){t.preventDefault();return}this.colReorderIconWidth=p.getHiddenElementOuterWidth(this.$refs.reorderIndicatorUp),this.colReorderIconHeight=p.getHiddenElementOuterHeight(this.$refs.reorderIndicatorUp),this.draggedColumn=o,this.draggedColumnElement=this.findParentHeader(t.target),t.dataTransfer.setData("text","b")},onColumnHeaderDragOver:function(e){var t=e.originalEvent,o=e.column,i=this.findParentHeader(t.target);if(this.reorderableColumns&&this.draggedColumnElement&&i&&!this.columnProp(o,"frozen")){t.preventDefault();var r=p.getOffset(this.$el),a=p.getOffset(i);if(this.draggedColumnElement!==i){var u=a.left-r.left,d=a.left+i.offsetWidth/2;this.$refs.reorderIndicatorUp.style.top=a.top-r.top-(this.colReorderIconHeight-1)+"px",this.$refs.reorderIndicatorDown.style.top=a.top-r.top+i.offsetHeight+"px",t.pageX>d?(this.$refs.reorderIndicatorUp.style.left=u+i.offsetWidth-Math.ceil(this.colReorderIconWidth/2)+"px",this.$refs.reorderIndicatorDown.style.left=u+i.offsetWidth-Math.ceil(this.colReorderIconWidth/2)+"px",this.dropPosition=1):(this.$refs.reorderIndicatorUp.style.left=u-Math.ceil(this.colReorderIconWidth/2)+"px",this.$refs.reorderIndicatorDown.style.left=u-Math.ceil(this.colReorderIconWidth/2)+"px",this.dropPosition=-1),this.$refs.reorderIndicatorUp.style.display="block",this.$refs.reorderIndicatorDown.style.display="block"}}},onColumnHeaderDragLeave:function(e){var t=e.originalEvent;this.reorderableColumns&&this.draggedColumnElement&&(t.preventDefault(),this.$refs.reorderIndicatorUp.style.display="none",this.$refs.reorderIndicatorDown.style.display="none")},onColumnHeaderDrop:function(e){var t=this,o=e.originalEvent,i=e.column;if(o.preventDefault(),this.draggedColumnElement){var r=p.index(this.draggedColumnElement),a=p.index(this.findParentHeader(o.target)),u=r!==a;if(u&&(a-r===1&&this.dropPosition===-1||a-r===-1&&this.dropPosition===1)&&(u=!1),u){var d=function(I,B){return t.columnProp(I,"columnKey")||t.columnProp(B,"columnKey")?t.columnProp(I,"columnKey")===t.columnProp(B,"columnKey"):t.columnProp(I,"field")===t.columnProp(B,"field")},l=this.columns.findIndex(function(D){return d(D,t.draggedColumn)}),g=this.columns.findIndex(function(D){return d(D,i)}),h=[],y=p.find(this.$el,'thead[data-pc-section="thead"] > tr > th');y.forEach(function(D){return h.push(p.getOuterWidth(D))});var c=h.find(function(D,I){return I===l}),T=h.filter(function(D,I){return I!==l}),x=[].concat(M(T.slice(0,g)),[c],M(T.slice(g)));this.addColumnWidthStyles(x),g<l&&this.dropPosition===1&&g++,g>l&&this.dropPosition===-1&&g--,b.reorderArray(this.columns,l,g),this.updateReorderableColumns(),this.$emit("column-reorder",{originalEvent:o,dragIndex:l,dropIndex:g})}this.$refs.reorderIndicatorUp.style.display="none",this.$refs.reorderIndicatorDown.style.display="none",this.draggedColumnElement.draggable=!1,this.draggedColumnElement=null,this.draggedColumn=null,this.dropPosition=null}},findParentHeader:function(e){if(e.nodeName==="TH")return e;for(var t=e.parentElement;t.nodeName!=="TH"&&(t=t.parentElement,!!t););return t},findColumnByKey:function(e,t){if(e&&e.length)for(var o=0;o<e.length;o++){var i=e[o];if(this.columnProp(i,"columnKey")===t||this.columnProp(i,"field")===t)return i}return null},onRowMouseDown:function(e){p.getAttribute(e.target,"data-pc-section")==="rowreordericon"||p.getAttribute(e.target.parentElement,"data-pc-section")==="rowreordericon"?e.currentTarget.draggable=!0:e.currentTarget.draggable=!1},onRowDragStart:function(e){var t=e.originalEvent,o=e.index;this.rowDragging=!0,this.draggedRowIndex=o,t.dataTransfer.setData("text","b")},onRowDragOver:function(e){var t=e.originalEvent,o=e.index;if(this.rowDragging&&this.draggedRowIndex!==o){var i=t.currentTarget,r=p.getOffset(i).top+p.getWindowScrollTop(),a=t.pageY,u=r+p.getOuterHeight(i)/2,d Line truncated
`.concat(o,' > thead[data-pc-section="thead"] > tr > th:nth-child(').concat(r+1,`),
`).concat(o,' > tbody[data-pc-section="tbody"] > tr > td:nth-child(').concat(r+1,`),
`).concat(o,' > tfoot[data-pc-section="tfoot"] > tr > td:nth-child(').concat(r+1,`) {
`).concat(a,`
}
`)}),this.styleElement.innerHTML=t},restoreColumnWidths:function(){if(this.columnWidthsState){var e=this.columnWidthsState.split(",");this.columnResizeMode==="expand"&&this.tableWidthState&&(this.$refs.table.style.width=this.tableWidthState,this.$refs.table.style.minWidth=this.tableWidthState),b.isNotEmpty(e)&&this.addColumnWidthStyles(e)}},onCellEditInit:function(e){this.$emit("cell-edit-init",e)},onCellEditComplete:function(e){this.$emit("cell-edit-complete",e)},onCellEditCancel:function(e){this.$emit("cell-edit-cancel",e)},onRowEditInit:function(e){var t=this.editingRows?M(this.editingRows):[];t.push(e.data),this.$emit("update:editingRows",t),this.$emit("row-edit-init",e)},onRowEditSave:function(e){var t=M(this.editingRows);t.splice(this.findIndex(e.data,t),1),this.$emit("update:editingRows",t),this.$emit("row-edit-save",e)},onRowEditCancel:function(e){var t=M(this.editingRows);t.splice(this.findIndex(e.data,t),1),this.$emit("update:editingRows",t),this.$emit("row-edit-cancel",e)},onEditingMetaChange:function(e){var t=e.data,o=e.field,i=e.index,r=e.editing,a=G({},this.d_editingMeta),u=a[i];if(r)!u&&(u=a[i]={data:G({},t),fields:[]}),u.fields.push(o);else if(u){var d=u.fields.filter(function(l){return l!==o});d.length?u.fields=d:delete a[i]}this.d_editingMeta=a},clearEditingMetaData:function(){this.editMode&&(this.d_editingMeta={})},createLazyLoadEvent:function(e){return{originalEvent:e,first:this.d_first,rows:this.d_rows,sortField:this.d_sortField,sortOrder:this.d_sortOrder,multiSortMeta:this.d_multiSortMeta,filters:this.d_filters}},hasGlobalFilter:function(){return this.filters&&Object.prototype.hasOwnProperty.call(this.filters,"global")},onFilterChange:function(e){this.d_filters=e},onFilterApply:function(){this.d_first=0,this.$emit("update:first",this.d_first),this.$emit("update:filters",this.d_filters),this.lazy&&this.$emit("filter",this.createLazyLoadEvent())},cloneFilters:function(){var e={};return this.filters&&Object.entries(this.filters).forEach(function(t){var o=Ve(t,2),i=o[0],r=o[1];e[i]=r.operator?{operator:r.operator,constraints:r.constraints.map(function(a){return G({},a)})}:G({},r)}),e},updateReorderableColumns:function(){var e=this,t=[];this.columns.forEach(function(o){return t.push(e.columnProp(o,"columnKey")||e.columnProp(o,"field"))}),this.d_columnOrder=t},createStyleElement:function(){var e;this.styleElement=document.createElement("style"),this.styleElement.type="text/css",p.setAttribute(this.styleElement,"nonce",(e=this.$primevue)===null||e===void 0||(e=e.config)===null||e===void 0||(e=e.csp)===null||e===void 0?void 0:e.nonce),document.head.appendChild(this.styleElement)},createResponsiveStyle:function(){if(!this.responsiveStyleElement){var e;this.responsiveStyleElement=document.createElement("style"),this.responsiveStyleElement.type="text/css",p.setAttribute(this.responsiveStyleElement,"nonce",(e=this.$primevue)===null||e===void 0||(e=e.config)===null||e===void 0||(e=e.csp)===null||e===void 0?void 0:e.nonce),document.head.appendChild(this.responsiveStyleElement);var t=".p-datatable-wrapper ".concat(this.virtualScrollerDisabled?"":"> .p-virtualscroller"," > .p-datatable-table"),o=".p-datatable[".concat(this.attributeSelector,"] > ").concat(t),i=".p-datatable[".concat(this.attributeSelector,"].p-datatable-gridlines > ").concat(t),r=`
@media screen and (max-width: `.concat(this.breakpoint,`) {
`).concat(o,` > .p-datatable-thead > tr > th,
`).concat(o,` > .p-datatable-tfoot > tr > td {
display: none;
}
`).concat(o,` > .p-datatable-tbody > tr > td {
display: flex;
width: 100%;
align-items: center;
justify-content: space-between;
}
`).concat(o,` > .p-datatable-tbody > tr > td:not(:last-child) {
border: 0 none;
}
`).concat(i,` > .p-datatable-tbody > tr > td:last-child {
border-top: 0;
border-right: 0;
border-left: 0;
}
`).concat(o,` > .p-datatable-tbody > tr > td > .p-column-title {
display: block;
}
}
`);this.responsiveStyleElement.innerHTML=r}},destroyResponsiveStyle:function(){this.responsiveStyleElement&&(document.head.removeChild(this.responsiveStyleElement),this.responsiveStyleElement=null)},destroyStyleElement:function(){this.styleElement&&(document.head.removeChild(this.styleElement),this.styleElement=null)},dataToRender:function(e){var t=e||this.processedData;if(t&&this.paginator){var o=this.lazy?0:this.d_first;return t.slice(o,o+this.d_rows)}return t},getVirtualScrollerRef:function(){return this.$refs.virtualScroller},hasSpacerStyle:function(e){return b.isNotEmpty(e)}},computed:{columns:function(){var e=this.d_columns.get(this);if(this.reorderableColumns&&this.d_columnOrder){var t=[],o=q(this.d_columnOrder),i;try{for(o.s();!(i=o.n()).done;){var r=i.value,a=this.findColumnByKey(e,r);a&&!this.columnProp(a,"hidden")&&t.push(a)}}catch(u){o.e(u)}finally{o.f()}return[].concat(t,M(e.filter(function(u){return t.indexOf(u)<0})))}return e},columnGroups:function(){return this.d_columnGroups.get(this)},headerColumnGroup:function(){var e,t=this;return(e=this.columnGroups)===null||e===void 0?void 0:e.find(function(o){return t.columnProp(o,"type")==="header"})},footerColumnGroup:function(){var e,t=this;return(e=this.columnGroups)===null||e===void 0?void 0:e.find(function(o){return t.columnProp(o,"type")==="footer"})},hasFilters:function(){return this.filters&&Object.keys(this.filters).length>0&&this.filters.constructor===Object},processedData:function(){var e,t=this.value||[];return!this.lazy&&!((e=this.virtualScrollerOptions)!==null&&e!==void 0&&e.lazy)&&t&&t.length&&(this.hasFilters&&(t=this.filter(t)),this.sorted&&(this.sortMode==="single"?t=this.sortSingle(t):this.sortMode==="multiple"&&(t=this.sortMultiple(t)))),t},totalRecordsLength:function(){if(this.lazy)return this.totalRecords;var e=this.processedData;return e?e.length:0},empty:function(){var e=this.processedData;return!e||e.length===0},paginatorTop:function(){return this.paginator&&(this.paginatorPosition!=="bottom"||this.paginatorPosition==="both")},paginatorBottom:function(){return this.paginator&&(this.paginatorPosition!=="top"||this.paginatorPosition==="both")},sorted:function(){return this.d_sortField||this.d_multiSortMeta&&this.d_multiSortMeta.length>0},allRowsSelected:function(){var e=this;if(this.selectAll!==null)return this.selectAll;var t=this.frozenValue?[].concat(M(this.frozenValue),M(this.processedData)):this.processedData;return b.isNotEmpty(t)&&this.selection&&Array.isArray(this.selection)&&t.every(function(o){return e.selection.some(function(i){return e.equals(i,o)})})},attributeSelector:function(){return de()},groupRowSortField:function(){return this.sortMode==="single"?this.sortField:this.d_groupRowsSortMeta?this.d_groupRowsSortMeta.field:null},virtualScrollerDisabled:function(){return b.isEmpty(this.virtualScrollerOptions)||!this.scrollable}},components:{DTPaginator:wt,DTTableHeader:ct,DTTableBody:at,DTTableFooter:ut,DTVirtualScroller:vt,ArrowDownIcon:Qe,ArrowUpIcon:$e,SpinnerIcon:yt}};function oe(n){"@babel/helpers - typeof";return oe=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},oe(n)}function Ne(n,e){var t=Object.keys(n);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(n);e&&(o=o.filter(function(i){return Object.getOwnPropertyDescriptor(n,i).enumerable})),t.push.apply(t,o)}return t}function We(n){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?Ne(Object(t),!0).forEach(function(o){pr(n,o,t[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(t)):Ne(Object(t)).forEach(function(o){Object.defineProperty(n,o,Object.getOwnPropertyDescriptor(t,o))})}return n}function pr(n,e,t){return e=mr(e),e in n?Object.defineProperty(n,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):n[e]=t,n}function mr(n){var e=hr(n,"string");return oe(e)=="symbol"?e:String(e)}function hr(n,e){if(oe(n)!="object"||!n)return n;var t=n[Symbol.toPrimitive];if(t!==void 0){var o=t.call(n,e||"default");if(oe(o)!="object")return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(n)}function gr(n,e,t,o,i,r){var a=R("SpinnerIcon"),u=R("DTPaginator"),d=R("DTTableHeader"),l=R("DTTableBody"),g=R("DTTableFooter"),h=R("DTVirtualScroller");return s(),m("div",f({class:n.cx("root"),"data-scrollselectors":".p-datatable-wrapper"},n.ptmi("root")),[k(n.$slots,"default"),n.loading?(s(),m("div",f({key:0,class:n.cx("loadingOverlay")},n.ptm("loadingOverlay")),[n.$slots.loading?k(n.$slots,"loading",{key:0}):(s(),m(P,{key:1},[n.$slots.loadingicon?(s(),w(C(n.$slots.loadingicon),{key:0,class:S(n.cx("loadingIcon"))},null,8,["class"])):n.loadingIcon?(s(),m("i",f({key:1,class:[n.cx("loadingIcon"),"pi-spin",n.loadingIcon]},n.ptm("loadingIcon")),null,16)):(s(),w(a,f({key:2,spin:"",class:n. Line truncated
+72
View File
@@ -0,0 +1,72 @@
import{O as g}from"./CELf783E.js";import{s as k}from"./CFcFeTBy.js";import{a3 as H,a6 as p,a7 as d,a8 as y,i as L,t as h,v as f,aa as a,O as v,z as m,A as b,ac as M,x as c}from"./DRtWvKfJ.js";import{s as C}from"./Bl_ZW1Xh.js";var S={root:function(e){var t=e.props;return["p-colorpicker p-component",{"p-colorpicker-overlay":!t.inline}]},input:function(e){var t=e.props;return["p-colorpicker-preview p-inputtext",{"p-disabled":t.disabled}]},panel:function(e){var t=e.instance,o=e.props;return["p-colorpicker-panel",{"p-colorpicker-overlay-panel":!o.inline,"p-disabled":o.disabled,"p-ripple-disabled":t.$primevue.config.ripple===!1}]},content:"p-colorpicker-content",selector:"p-colorpicker-color-selector",color:"p-colorpicker-color",colorHandle:"p-colorpicker-color-handle",hue:"p-colorpicker-hue",hueHandle:"p-colorpicker-hue-handle"},B=H.extend({name:"colorpicker",classes:S}),D={name:"BaseColorPicker",extends:C,props:{modelValue:{type:null,default:null},defaultColor:{type:null,default:"ff0000"},inline:{type:Boolean,default:!1},format:{type:String,default:"hex"},disabled:{type:Boolean,default:!1},tabindex:{type:String,default:null},autoZIndex:{type:Boolean,default:!0},baseZIndex:{type:Number,default:0},appendTo:{type:[String,Object],default:"body"},panelClass:null},style:B,provide:function(){return{$parentInstance:this}}},x={name:"ColorPicker",extends:D,inheritAttrs:!1,emits:["update:modelValue","change","show","hide"],data:function(){return{overlayVisible:!1}},hsbValue:null,outsideClickListener:null,documentMouseMoveListener:null,documentMouseUpListener:null,scrollHandler:null,resizeListener:null,hueDragging:null,colorDragging:null,selfUpdate:null,picker:null,colorSelector:null,colorHandle:null,hueView:null,hueHandle:null,watch:{modelValue:{immediate:!0,handler:function(e){this.hsbValue=this.toHSB(e),this.selfUpdate?this.selfUpdate=!1:this.updateUI()}}},beforeUnmount:function(){this.unbindOutsideClickListener(),this.unbindDragListeners(),this.unbindResizeListener(),this.scrollHandler&&(this.scrollHandler.destroy(),this.scrollHandler=null),this.picker&&this.autoZIndex&&p.clear(this.picker),this.clearRefs()},mounted:function(){this.updateUI()},methods:{pickColor:function(e){var t=this.colorSelector.getBoundingClientRect(),o=t.top+(window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0),r=t.left+document.body.scrollLeft,i=Math.floor(100*Math.max(0,Math.min(150,(e.pageX||e.changedTouches[0].pageX)-r))/150),l=Math.floor(100*(150-Math.max(0,Math.min(150,(e.pageY||e.changedTouches[0].pageY)-o)))/150);this.hsbValue=this.validateHSB({h:this.hsbValue.h,s:i,b:l}),this.selfUpdate=!0,this.updateColorHandle(),this.updateInput(),this.updateModel(e)},pickHue:function(e){var t=this.hueView.getBoundingClientRect().top+(window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0);this.hsbValue=this.validateHSB({h:Math.floor(360*(150-Math.max(0,Math.min(150,(e.pageY||e.changedTouches[0].pageY)-t)))/150),s:100,b:100}),this.selfUpdate=!0,this.updateColorSelector(),this.updateHue(),this.updateModel(e),this.updateInput()},updateModel:function(e){var t=this.modelValue;switch(this.format){case"hex":t=this.HSBtoHEX(this.hsbValue);break;case"rgb":t=this.HSBtoRGB(this.hsbValue);break;case"hsb":t=this.hsbValue;break}this.$emit("update:modelValue",t),this.$emit("change",{event:e,value:t})},updateColorSelector:function(){if(this.colorSelector){var e=this.validateHSB({h:this.hsbValue.h,s:100,b:100});this.colorSelector.style.backgroundColor="#"+this.HSBtoHEX(e)}},updateColorHandle:function(){this.colorHandle&&(this.colorHandle.style.left=Math.floor(150*this.hsbValue.s/100)+"px",this.colorHandle.style.top=Math.floor(150*(100-this.hsbValue.b)/100)+"px")},updateHue:function(){this.hueHandle&&(this.hueHandle.style.top=Math.floor(150-150*this.hsbValue.h/360)+"px")},updateInput:function(){this.$refs.input&&(this.$refs.input.style.backgroundColor="#"+this.HSBtoHEX(this.hsbValue))},updateUI:function(){this.updateHue(),this.updateColorHandle(),this.updateInput(),this.updateColorSelector()},validateHSB:function(e){return{h:Math.min(360,Math.max(0,e.h)),s:Math.min(100,Math.max(0,e.s)),b:Math.min(100,Math.max(0,e.b))}},validateRGB:function(e){return{r:Math.min(255,Math.max(0,e.r)),g:Math.min(255,Math.max(0,e.g)),b:Math.min(255,Math.max(0,e.b))}},validateHEX:function(e){var t=6-e.length;if(t>0){for(var o=[],r=0;r<t;r++)o.push("0");o.push(e),e=o.join("")}return e},HEXtoRGB:function(e){var t=parseInt(e.indexOf("#")>-1?e.substring(1):e,16);return{r:t>>16,g:(t&65280)>>8,b:t&255}},HEXtoHSB:function(e){return this.RGBtoHSB(this.HEXtoRGB(e))},RGBtoHSB:function(e){var t={h:0,s:0,b:0},o=Math.min(e.r,e.g,e.b),r=Math.max(e.r,e.g,e.b),i=r-o;return t.b=r,t.s=r!==0?255*i/r:0,t.s!==0?e.r===r?t.h=(e.g-e.b)/i:e.g===r?t.h=2+(e.b-e.r)/i:t.h=4+(e.r-e.g)/i:t.h=-1,t.h*=60,t.h<0&&(t.h+=360),t.s*=100/255,t.b*=100/255,t},HSBtoRGB:function(e){var t={r:null,g:null,b:null},o=Math.round(e.h),r=Math.round(e.s*255/100),i=Math.round(e.b*255/10Line truncated
.p-colorpicker {
display: inline-block;
}
.p-colorpicker-dragging {
cursor: pointer;
}
.p-colorpicker-overlay {
position: relative;
}
.p-colorpicker-panel {
position: relative;
width: 193px;
height: 166px;
}
.p-colorpicker-overlay-panel {
position: absolute;
top: 0;
left: 0;
}
.p-colorpicker-preview {
cursor: pointer;
}
.p-colorpicker-panel .p-colorpicker-content {
position: relative;
}
.p-colorpicker-panel .p-colorpicker-color-selector {
width: 150px;
height: 150px;
top: 8px;
left: 8px;
position: absolute;
}
.p-colorpicker-panel .p-colorpicker-color {
width: 150px;
height: 150px;
}
.p-colorpicker-panel .p-colorpicker-color-handle {
position: absolute;
top: 0px;
left: 150px;
border-radius: 100%;
width: 10px;
height: 10px;
border-width: 1px;
border-style: solid;
margin: -5px 0 0 -5px;
cursor: pointer;
opacity: 0.85;
}
.p-colorpicker-panel .p-colorpicker-hue {
width: 17px;
height: 150px;
top: 8px;
left: 167px;
position: absolute;
opacity: 0.85;
}
.p-colorpicker-panel .p-colorpicker-hue-handle {
position: absolute;
top: 150px;
left: 0px;
width: 21px;
margin-left: -2px;
margin-top: -5px;
height: 10px;
border-width: 2px;
border-style: solid;
opacity: 0.85;
cursor: pointer;
}
`;E(V);x.render=R;export{x as default};
+2
View File
@@ -0,0 +1,2 @@
import{a3 as C,a5 as H,a4 as l,a7 as b,ah as G,a9 as B,i as N,Z as U,t as h,v as O,x as m,aa as a,Y as g,$ as L,ai as j,P as q,ab as z,W,y,O as V,z as Q,a1 as Y,A as D,N as T,Q as Z,B as F}from"./DRtWvKfJ.js";import{s as J}from"./D2eV2xTx.js";import X from"./BnGLU8uI.js";import{s as $}from"./Bl_ZW1Xh.js";import"./BMCLKWyE.js";import"./B5fdn047.js";var _={root:function(e){e.instance;var i=e.props;return["p-listbox p-component",{"p-disabled":i.disabled,"p-invalid":i.invalid}]},header:"p-listbox-header",filterContainer:"p-listbox-filter-container",filterInput:"p-listbox-filter p-inputtext p-component",filterIcon:"p-listbox-filter-icon",wrapper:"p-listbox-list-wrapper",list:"p-listbox-list",itemGroup:"p-listbox-item-group",item:function(e){var i=e.instance,s=e.option,o=e.index,n=e.getItemOptions;return["p-listbox-item",{"p-highlight":i.isSelected(s),"p-focus":i.focusedOptionIndex===i.getOptionIndex(o,n),"p-disabled":i.isOptionDisabled(s)}]},emptyMessage:"p-listbox-empty-message"},ee=C.extend({name:"listbox",classes:_}),te={name:"BaseListbox",extends:$,props:{modelValue:null,options:Array,optionLabel:null,optionValue:null,optionDisabled:null,optionGroupLabel:null,optionGroupChildren:null,listStyle:null,invalid:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},dataKey:null,multiple:{type:Boolean,default:!1},metaKeySelection:{type:Boolean,default:!1},filter:Boolean,filterPlaceholder:String,filterLocale:String,filterMatchMode:{type:String,default:"contains"},filterFields:{type:Array,default:null},filterInputProps:null,virtualScrollerOptions:{type:Object,default:null},autoOptionFocus:{type:Boolean,default:!0},selectOnFocus:{type:Boolean,default:!1},focusOnHover:{type:Boolean,default:!0},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},filterIcon:{type:String,default:void 0},tabindex:{type:Number,default:0},ariaLabel:{type:String,default:null},ariaLabelledby:{type:String,default:null}},style:ee,provide:function(){return{$parentInstance:this}}};function E(t){return oe(t)||se(t)||ne(t)||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 ne(t,e){if(t){if(typeof t=="string")return w(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 w(t,e)}}function se(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function oe(t){if(Array.isArray(t))return w(t)}function w(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 re={name:"Listbox",extends:te,inheritAttrs:!1,emits:["update:modelValue","change","focus","blur","filter"],list:null,virtualScroller:null,optionTouched:!1,startRangeIndex:-1,searchTimeout:null,searchValue:"",data:function(){return{id:this.$attrs.id,filterValue:null,focused:!1,focusedOptionIndex:-1}},watch:{"$attrs.id":{immediate:!0,handler:function(e){this.id=e||H()}},options:function(){this.autoUpdateModel()}},mounted:function(){this.autoUpdateModel()},methods:{getOptionIndex:function(e,i){return this.virtualScrollerDisabled?e:i&&i(e).index},getOptionLabel:function(e){return this.optionLabel?l.resolveFieldData(e,this.optionLabel):e},getOptionValue:function(e){return this.optionValue?l.resolveFieldData(e,this.optionValue):e},getOptionRenderKey:function(e,i){return(this.dataKey?l.resolveFieldData(e,this.dataKey):this.getOptionLabel(e))+"_"+i},getPTOptions:function(e,i,s,o){return this.ptm(o,{context:{selected:this.isSelected(e),focused:this.focusedOptionIndex===this.getOptionIndex(s,i),disabled:this.isOptionDisabled(e)}})},isOptionDisabled:function(e){return this.optionDisabled?l.resolveFieldData(e,this.optionDisabled):!1},isOptionGroup:function(e){return this.optionGroupLabel&&e.optionGroup&&e.group},getOptionGroupLabel:function(e){return l.resolveFieldData(e,this.optionGroupLabel)},getOptionGroupChildren:function(e){return l.resolveFieldData(e,this.optionGroupChildren)},getAriaPosInset:function(e){var i=this;return(this.optionGroupLabel?e-this.visibleOptions.slice(0,e).filter(function(s){return i.isOptionGroup(s)}).length:e)+1},onFirstHiddenFocus:function(){b.focus(this.list);var e=b.getFirstFocusableElement(this.$el,':not([data-p-hidden-focusable="true"])');this.$refs.lastHiddenFocusableElement.tabIndex=b.isElement(e)?void 0:-1,this.$refs.firstHiddenFocusableElement.tabIndex=-1},onLastHiddenFocus:function(e){var i=e.relatedTarget;if(i===this.list){var s=b.getFirstFocusableElement(this.$el,':not([data-p-hidden-focusable="true"])');b.focus(s),this.$refs.firstHiddenFocusableElement.tabIndex=void 0}else b.focus(this.$refs.firstHiddenFocusableElement);this.$refs.lastHiddenFocusableElement.tabIndex=-1},onFocusout:function(e){!this.$el.contains(e.relatedTarget)&&this.$refs.lastHiddenFocusableElement&&this.$refs.firstHiddenFocusableElement&&(this.$refs.lastHiddenFocusableElement.tabIndex=this.$refs.firstHiddenFocusableElement.tabIndex=void 0)},onListFocus:function(e){this.focused=!0,this.focusedOptionIndex=this.focusedOptionIndex!==-1?this.focusedOptionIndex:this.autoOptionFocus?this.findFirstFocusedOptionIndex():this.findSelectedOptionIndex(),this.autoUpdateModel(),this.$emit("focus",e)},onListBlur:function(e){this.focused=!1,this.focusedOptionIndex=this.startRangeIndex=-1,this.searchValue="",this.$emit("blur",e)},onListKeyDown:function(e){var i=this,s=e.metaKey||e.ctrlKey;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"PageDown":this.onPageDownKey(e);break;case"PageUp":this.onPageUpKey(e);break;case"Enter":case"NumpadEnter":case"Space":this.onSpaceKey(e);break;case"Tab":break;case"ShiftLeft":case"ShiftRight":this.onShiftKey(e);break;default:if(this.multiple&&e.code==="KeyA"&&s){var o=this.visibleOptions.filter(function(n){return i.isValidOption(n)}).map(function(n){return i.getOptionValue(n)});this.updateModel(e,o),e.preventDefault();break}!s&&l.isPrintableCharacter(e.key)&&(this.searchOptions(e,e.key),e.preventDefault());break}},onOptionSelect:function(e,i){var s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:-1;this.disabled||this.isOptionDisabled(i)||(this.multiple?this.onOptionSelectMultiple(e,i):this.onOptionSelectSingle(e,i),this.optionTouched=!1,s!==-1&&(this.focusedOptionIndex=s))},onOptionMouseDown:function(e,i){this.changeFocusedOptionIndex(e,i)},onOptionMouseMove:function(e,i){this.focusOnHover&&this.focused&&this.changeFocusedOptionIndex(e,i)},onOptionTouchEnd:function(){this.disabled||(this.optionTouched=!0)},onOptionSelectSingle:function(e,i){var s=this.isSelected(i),o=!1,n=null,u=this.optionTouched?!1:this.metaKeySelection;if(u){var f=e&&(e.metaKey||e.ctrlKey);s?f&&(n=null,o=!0):(n=this.getOptionValue(i),o=!0)}else n=s?null:this.getOptionValue(i),o=!0;o&&this.updateModel(e,n)},onOptionSelectMultiple:function(e,i){var s=this.isSelected Line truncated
+1
View File
@@ -0,0 +1 @@
import v from"./Cm7Dkme4.js";import{a3 as b,av as h,i as P,Z as g,$ as O,t as i,v as c,aa as a,ag as w,Y as p,P as u,A as B,ab as S,O as j}from"./DRtWvKfJ.js";import{s as I}from"./B7nXBdam.js";import{s as $}from"./Bl_ZW1Xh.js";import"./CwRw2352.js";import"./B5fdn047.js";import"./BMCLKWyE.js";var C={root:function(t){var r=t.props;return["p-inplace p-component",{"p-inplace-closable":r.closable}]},display:function(t){var r=t.props;return["p-inplace-display",{"p-disabled":r.disabled}]},content:"p-inplace-content"},D=b.extend({name:"inplace",classes:C}),k={name:"BaseInplace",extends:$,props:{closable:{type:Boolean,default:!1},active:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},closeIcon:{type:String,default:void 0},displayProps:{type:null,default:null},closeButtonProps:{type:null,default:null}},style:D,provide:function(){return{$parentInstance:this}}},A={name:"Inplace",extends:k,inheritAttrs:!1,emits:["open","close","update:active"],data:function(){return{d_active:this.active}},watch:{active:function(t){this.d_active=t}},methods:{open:function(t){this.disabled||(this.$emit("open",t),this.d_active=!0,this.$emit("update:active",!0))},close:function(t){var r=this;this.$emit("close",t),this.d_active=!1,this.$emit("update:active",!1),setTimeout(function(){r.$refs.display.focus()},0)}},computed:{closeAriaLabel:function(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.close:void 0}},components:{IPButton:v,TimesIcon:I},directives:{focustrap:h}};function s(e){"@babel/helpers - typeof";return s=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},s(e)}function f(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),r.push.apply(r,n)}return r}function d(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?f(Object(r),!0).forEach(function(n){T(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):f(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function T(e,t,r){return t=E(t),t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function E(e){var t=K(e,"string");return s(t)=="symbol"?t:String(t)}function K(e,t){if(s(e)!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t||"default");if(s(n)!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var L=["tabindex"];function N(e,t,r,n,l,o){var m=P("IPButton"),y=g("focustrap");return O((i(),c("div",a({class:e.cx("root"),"aria-live":"polite"},e.ptmi("root")),[l.d_active?(i(),c("div",a({key:1,class:e.cx("content")},e.ptm("content")),[p(e.$slots,"content"),e.closable?(i(),u(m,a({key:0,"aria-label":o.closeAriaLabel,onClick:o.close,unstyled:e.unstyled,pt:e.ptm("closeButton")},e.closeButtonProps),{icon:B(function(){return[p(e.$slots,"closeicon",{},function(){return[(i(),u(S(e.closeIcon?"span":"TimesIcon"),a({class:e.closeIcon},e.ptm("closeButton").icon,{"data-pc-section":"closebuttonicon"}),null,16,["class"]))]})]}),_:3},16,["aria-label","onClick","unstyled","pt"])):j("",!0)],16)):(i(),c("div",a({key:0,ref:"display",class:e.cx("display"),tabindex:e.$attrs.tabindex||"0",role:"button",onClick:t[0]||(t[0]=function(){return o.open&&o.open.apply(o,arguments)}),onKeydown:t[1]||(t[1]=w(function(){return o.open&&o.open.apply(o,arguments)},["enter"]))},d(d({},e.displayProps),e.ptm("display"))),[p(e.$slots,"display")],16,L))],16)),[[y]])}A.render=N;export{A as default};
+1
View File
@@ -0,0 +1 @@
import{s as r}from"./Bl_ZW1Xh.js";import"./DRtWvKfJ.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};
+5
View File
@@ -0,0 +1,5 @@
import{u as F,a as me,_ as ve,l as ce}from"./lXe9j5XU.js";import W from"./Cm7Dkme4.js";import Ie from"./Cls9geQy.js";import te from"./ChcErU2V.js";import Ne from"./dbkXk2FM.js";import Re from"./_99QGe7X.js";import{c as C,M as g,t as c,P as T,O as D,v as $,N as q,z as o,y as I,r as x,A as u,x as e,X as le,R as j,U as fe,B as R,Y as Me,W as Le,_ as qe,o as _e,Z as be,$ as se,C as Oe,D as Ee,a0 as he,Q as ge,G as Ae,i as Pe,a1 as je,S as Fe,L as We,V as ne,a2 as He}from"./DRtWvKfJ.js";import ze from"./CP0-jfu8.js";import Ge from"./qKtqUDpn.js";import Je from"./BfPKB-F8.js";import Ke from"./ZYKRgrtt.js";import{a as ye,_ as Se,u as $e}from"./DV2bnluu.js";import ue from"./B14_1DDx.js";import Qe from"./1T5oFhIQ.js";import Ye from"./BjAXeOBb.js";import Xe from"./Ca3-bi3b.js";import Ze from"./Dh-jSmv_.js";import we from"./DMsZhJAp.js";import es from"./KMkrkpbk.js";import ss from"./CZfe2Sfn.js";import os from"./CJA3DD2a.js";import xe from"./Ce0F-GHP.js";import ke from"./D2IhmS2j.js";import ns from"./DOsY_IVn.js";import ts from"./BMYrlhrg.js";import ls from"./Cw-7pq-7.js";const Ce={__name:"SessionChip",props:{session:Object,image:String},setup(t){const l=t,s=C(()=>{if(l.session.me)return`${l.session.me.pushName} (${l.session.me.id})`});return(a,d)=>{const i=Re;return g(s)?(c(),T(i,{key:0,label:g(s),image:t.image},null,8,["label","image"])):D("",!0)}}},Ve={__name:"RefreshButton",props:["refreshing"],setup(t){const l=t,s=C(()=>l.refreshing?"pi pi-refresh pi-spin":"pi pi-refresh");return(a,d)=>{const i=W;return c(),T(i,{icon:g(s),rounded:"",text:"",disabled:t.refreshing},null,8,["icon","disabled"])}}},is=["src"],as={__name:"Base64Img",props:{data:String,mimetype:String},setup(t){const l=t,s=C(()=>`data:${l.mimetype};base64, ${l.data}`);return(a,d)=>(c(),$("img",{src:s.value,style:{"max-width":"100%"}},null,8,is))}};function rs(t){return new Promise(l=>setTimeout(l,t))}const ds={key:2,style:{"background-color":"#f8f9fa",padding:"1rem",color:"red","white-space":"pre-wrap"}},De={__name:"SessionScreenshot",props:{session:Object},setup(t,{expose:l}){const s=F(),a=t,{data:d,pending:i,error:m,refresh:r}=me(`session-screenshot-${a.session.server.id}-${a.session.name}`,async()=>(await rs(1e3),await s.getScreenshot(a.session.server.id,a.session.name)));return l({refresh:r}),(_,v)=>{const y=Ge,k=Je,b=as;return c(),$(q,null,[g(i)?(c(),$(q,{key:0},[o(y,{mode:"indeterminate",style:{height:"3px"}}),!g(d)&&!g(m)?(c(),T(k,{key:0,width:"100%",height:"20rem"})):D("",!0)],64)):D("",!0),g(d)?(c(),T(b,{key:1,data:g(d).data,mimetype:g(d).mimetype},null,8,["data","mimetype"])):D("",!0),g(m)?(c(),$("pre",ds,""+I(g(m).cause.response.data.message||g(m).cause.response.data||g(m))+`
`,1)):D("",!0)],64)}}},cs={class:"",style:{"min-width":"20rem"}},us={class:"flex justify-content-center align-items-center"},ps=e("h5",{class:"m-0"},"Screenshot",-1),ms={class:"m-auto w-full"},vs={__name:"ScreenshotButton",props:["disabled","session"],setup(t){const l=x(null),s=x(null),a=i=>{l.value.toggle(i)},d=()=>{s.value.refresh()};return(i,m)=>{const r=W,_=Ve,v=De,y=Ke;return c(),$(q,null,[o(r,{disabled:t.disabled,type:"button",icon:"pi pi-camera",onClick:a,rounded:"",outlined:""},null,8,["disabled"]),o(y,{ref_key:"op",ref:l,appendTo:"body",showCloseIcon:!0},{default:u(()=>[e("div",cs,[e("div",us,[ps,o(_,{onClick:d})]),e("div",ms,[o(v,{ref_key:"screenshot",ref:s,session:t.session},null,8,["session"])])])]),_:1},512)],64)}}},fs={class:"ml-1"},_s={key:1},bs={class:"ml-1"},Te={__name:"ServerDropdown",props:le({showClear:Boolean,placeholder:String,required:Boolean,invalid:Boolean,disabled:Boolean},{server:{},serverModifiers:{}}),emits:["update:server"],setup(t){const l=j(t,"server"),s=F();return(a,d)=>{const i=ye,m=ue;return c(),T(m,{optionValue:"id",modelValue:l.value,"onUpdate:modelValue":d[0]||(d[0]=r=>l.value=r),options:g(s).servers,onChange:d[1]||(d[1]=r=>a.$emit("change",l.value)),placeholder:t.placeholder,class:"p-column-filter",showClear:t.showClear,required:t.required,invalid:t.invalid,disabled:t.disabled},{value:u(r=>[r.value?(c(),$(q,{key:0},[o(i,{connected:g(s).getServer(r.value).connected},null,8,["connected"]),e("span",fs,I(g(s).getServer(r.value).name),1)],64)):(c(),$("span",_s,I(r.placeholder),1))]),option:u(r=>[o(i,{connected:r.option.connected},null,8,["connected"]),e("span",bs,I(r.option.name)+" ("+I(r.option.connection.url)+") ",1)]),_:1},8,["modelValue","options","placeholder","showClear","required","invalid","disabled"])}}},hs={class:"p-dialog-title flex gap-2 align-items-center"},gs=e("span",null,"(",-1),ys={class:"ml-1"},Ss=e("span",null,")",-1),$s=["disabled"],ws=e("i",{class:"pi pi-refresh"},null,-1),xs=[ws],Ue={__name:"SessionHeader",props:{session:Object,refresh:Boolean},setup(t){const l=t,s=F(),{refreshing:a}=fe(s),d=C(()=>l.session.server.id?l.session.server:s.getServer(l.session.server));async function i(){await s.refresh()}return(m,r)=>{var k;const _=Se,v=ye,y=ve;return c(),$("div",hs,[e("span",null,I((k=t.session)==null?void 0:k.name),1),o(_,{status:t.session.status},null,8,["status"]),e("div",null,[gs,o(v,{connected:d.value.connected},null,8,["connected"]),e("span",ys,I(d.value.name),1),Ss]),t.refresh?(c(),$("button",{key:0,onClick:r[0]||(r[0]=b=>i()),class:"p-link layout-topbar-button",disabled:g(a)},xs,8,$s)):D("",!0),o(y,{refreshing:g(a)},null,8,["refreshing"])])}}},ks={class:"-mt-4 p-0 line-height-3 block",style:{"font-family":"monaco, Consolas, 'Lucida Console', monospace"}},Cs={__name:"CodeHighlight",props:["invalid"],setup(t){const l=t,s=C(()=>l.invalid?"p-invalid p-component p-inputtext":"");return(a,d)=>(c(),$("pre",{class:Le(["border-round surface-ground text-900 p-5 overflow-auto",s.value])},[R(" "),e("code",ks,[Me(a.$slots,"default")])],2))}},pe=t=>(Oe("data-v-ca11cfb1"),t=t(),Ee(),t),Vs={class:"h-full flex flex-column"},Ds={class:"flex justify-content-center align-items-center"},Ts=pe(()=>e("h5",{class:"m-0"},"Request",-1)),Us={class:"flex flex-column justify-content-between h-full"},Bs={class:"flex flex-column gap-2"},Is={class:"flex gap-2"},Ns={class:"text-center"},Rs=pe(()=>e("div",{class:"mb-2"},"Body",-1)),Ms={class:"text-center mt-2"},Ls={class:"flex flex-column h-full"},qs={class:"flex justify-content-center align-items-center"},Os=pe(()=>e("h5",{class:"m-0"},"Response",-1)),Es={__name:"SessionRequestResponse",props:["session"],setup(t){const l=F(),s=t,a=x(null),d=x("POST"),i=x("/api/sendText"),m=x(""),r=x(!1),_=x(!1);function v(w){return JSON.stringify(w,null,2)}function y(w){try{return JSON.parse(w)}catch{return w}}const k=C(()=>({method:d.value,uri:i.value,params:void 0,body:y(m.value)})),b=["GET","POST","PUT","DELETE","PATCH"];async function U(w){await navigator.clipboard.writeText(a.value),w.preventDefault()}async function B(w){await navigator.clipboard.writeText(v(k.value)),w.preventDefault()}async function O(){try{_.value=!1,r.value=!0;const w=await l.callServerAPI(s.session.server.id,k.value);a.value=v(w)}catch(w){_.value=!0,w.response?a.value=v(w.response.data):a.value=v(w)}finally{r.value=!1}}return _e(()=>{const w={chatId:"11111111111@c.us",text:"Hi there!",session:s.session.name};m.value=v(w),a.value="..."}),(w,V)=>{const E=W,H=ue,z=te,Y=Xe,G=Ze,A=Cs,S=be("tooltip");return c(),$(q,null,[e("div",null,[e("div",Vs,[e("div",Ds,[Ts,se(o(E,{rounded:"",text:"",tabindex:0,icon:"pi pi-copy",onClick:V[0]||(V[0]=n=>B(n))},null,512),[[S,{value:"Copied to clipboard"},void 0,{focus:!0,bottom:!0}]])]),e("div",Us,[e("div",Bs,[e("div",Is,[o(H,{modelValue:d.value,"onUpdate:modelValue":V[1]||(V[1]=n=>d.value=n),options:b},null,8,["modelValue"]),o(z,{type:"text",class:"w-full",modelValue:i.value,"onUpdate:modelValue":V[2]||(V[2]=n=>i.value=n),placehol Line truncated
Otherwise the store can miss some information.`]])])])]),_:1})]),_:1})])):D("",!0),e("div",Lo,[o(oe,{ref:"webhooks",webhooks:s.value.config.webhooks,"onUpdate:webhooks":n[4]||(n[4]=h=>s.value.config.webhooks=h),disabled:r.value},null,8,["webhooks","disabled"])]),e("div",null,[e("div",qo,[Oo,o(K,{modelValue:U.value,"onUpdate:modelValue":n[5]||(n[5]=h=>U.value=h),onLabel:"Proxy On",offLabel:"Proxy Off",disabled:r.value},{icon:u(()=>[o(J,{icon:"fa-solid fa-server",class:"mr-2"})]),_:1},8,["modelValue","disabled"])]),U.value?(c(),$("div",Eo,[e("div",Ao,[Po,o(X,{id:"proxy-server",modelValue:s.value.config.proxy.server,"onUpdate:modelValue":n[6]||(n[6]=h=>s.value.config.proxy.server=h),modelModifiers:{trim:!0},required:"true",invalid:B.value&&!s.value.config.proxy.server,disabled:i.value,placeholder:"host:port"},null,8,["modelValue","invalid","disabled"]),B.value&&!s.value.config.proxy.server?(c(),$("small",jo,"Server is required.")):D("",!0)]),e("div",Fo,[e("div",Wo,[Ho,o(X,{id:"proxy-username",modelValue:s.value.config.proxy.username,"onUpdate:modelValue":n[7]||(n[7]=h=>s.value.config.proxy.username=h),modelModifiers:{trim:!0},disabled:i.value},null,8,["modelValue","disabled"])]),e("div",zo,[Go,o(re,{id:"proxy-password",modelValue:s.value.config.proxy.password,"onUpdate:modelValue":n[8]||(n[8]=h=>s.value.config.proxy.password=h),modelModifiers:{trim:!0},disabled:i.value,feedback:!1,toggleMask:""},null,8,["modelValue","disabled"])])])])):D("",!0)]),e("div",Jo,[Ko,o(K,{modelValue:s.value.config.debug,"onUpdate:modelValue":n[9]||(n[9]=h=>s.value.config.debug=h),onLabel:"Debug Enabled",offLabel:"Debug Disabled",onIcon:"fa fa-bug",disabled:r.value},{icon:u(()=>[o(J,{icon:"fa-solid fa-bug",class:"mr-2"})]),_:1},8,["modelValue","disabled"])])]),_:2},[d.value?void 0:{name:"header",fn:u(()=>[o(f,{session:s.value},null,8,["session"])]),key:"0"}]),1032,["visible"])}}},Zo=["WORKING","FAILED","STARTING","SCAN_QR_CODE","STOPPED"],en={class:"flex justify-content-between"},sn={class:"flex align-items-center gap-1"},on=e("i",{class:"pi pi-whatsapp"},null,-1),nn=e("span",{class:"mr-1"}," Sessions ",-1),tn=["disabled"],ln=e("i",{class:"pi pi-refresh"},null,-1),an=[ln],rn={class:"flex justify-content-between flex-column sm:flex-row gap-2 sm:gap-0"},dn={class:"flex gap-2 align-items-center"},cn={class:"flex gap-2"},un={class:"my-auto"},pn={class:"flex flex-row gap-2 justify-content-end"},En={__name:"SessionTable",setup(t){const l=he(),s=Fe(),a=F(),{allSessions:d,refreshing:i,servers:m}=fe(a),r=d,_=$e(),v=x({config:{webhooks:[]}}),y=x(!1),k=x(void 0),b=x(!1);x(null);const U=x({}),B=x(null);We(()=>{O()});const O=()=>{U.value={global:{value:null,matchMode:ne.CONTAINS},status:{value:null,matchMode:ne.EQUALS},"server.id":{value:null,matchMode:ne.EQUALS},name:{operator:He.AND,constraints:[{value:null,matchMode:ne.STARTS_WITH}]}}};function w(){const n=m.value.find(f=>f.connected);if(!n){l.add({severity:"error",summary:"No connected server",detail:"Please connect to a server first",life:3e3});return}v.value={server:n.id,name:"session_"+Math.random().toString(36).substring(7),config:{webhooks:[{url:"https://httpbin.org/post",events:["session.status","message","message.reaction"],hmac:{key:null},retries:{delaySeconds:2,attempts:15}}],noweb:{store:{enabled:!0,fullSync:!1}},proxy:{}}},k.value="new",y.value=!0}function V(n){v.value=ce.cloneDeep({name:n.name,status:n.status,server:n.server.id,config:n.config}),k.value="view",y.value=!0}function E(n){v.value=ce.cloneDeep({name:n.name,status:n.status,server:n.server.id,config:n.config}),k.value="start",y.value=!0}function H(n,f){s.require({target:n.target,message:`Stop '${f.name}' session?
`,icon:"pi pi-exclamation-triangle",rejectClass:"p-button-secondary p-button-outlined p-button-sm",acceptClass:"p-button-warning p-button-sm",rejectLabel:"No",acceptLabel:"Yes, Stop",accept:async()=>{await _(a.stopSession(f.server.id,f.name,!1),"Stopped","Failed to stop session")},reject:()=>{}})}function z(n,f){s.require({target:n.target,message:`Logout '${f.name}' session?
`,icon:"pi pi-exclamation-triangle",rejectClass:"p-button-secondary p-button-outlined p-button-sm",acceptClass:"p-button-danger p-button-sm",rejectLabel:"No",acceptLabel:"Yes, Logout",accept:async()=>{await _(a.logoutSession(f.server.id,f.name),"Logged out","Failed to logout session")},reject:()=>{}})}function Y(){me("store",async()=>await a.refresh())}function G(n){A(n.data)}function A(n){b.value=!0,v.value=n}const S=["name","me.id"];return(n,f)=>{const P=ve,M=W,X=Ie,ie=te,J=Ne,K=Ce,Q=ze,ae=vs,oe=Se,re=ue,Z=Te,de=Qe,ee=Ye,h=eo,Be=Xo;return c(),$(q,null,[e("div",en,[e("div",null,[e("h5",sn,[on,nn,o(P,{refreshing:g(i)},null,8,["refreshing"])])]),e("div",null,[e("button",{onClick:Y,class:"p-link layout-topbar-button",disabled:g(i)},an,8,tn)])]),o(de,{value:g(r).length>0?g(r):[],paginator:!0,rows:20,dataKey:p=>`${p.name}-${p.server.id}-${p.status}`,rowHover:!0,filters:U.value,"onUpdate:filters":f[1]||(f[1]=p=>U.value=p),filterDisplay:"row",loading:B.value,globalFilterFields:S,onRowClick:G,showGridlines:"",class:"p-datatable--clickable",style:{"white-space":"nowrap"}},{header:u(()=>[e("div",rn,[o(M,{label:"Start New",icon:"pi pi-play",severity:"success",onClick:w}),o(J,{iconPosition:"left"},{default:u(()=>[o(X,{class:"pi pi-search"}),o(ie,{modelValue:U.value.global.value,"onUpdate:modelValue":f[0]||(f[0]=p=>U.value.global.value=p),placeholder:"Search by name or phone number",style:{width:"100%"}},null,8,["modelValue"])]),_:1})])]),empty:u(()=>[R(" No sessions found")]),loading:u(()=>[R(" Loading sessions...")]),default:u(()=>[o(Q,{field:"name",header:"Name",sortable:""},{body:u(({data:p})=>[e("div",dn,[o(M,{icon:"pi pi-info",rounded:"",outlined:"",onClick:N=>A(p)},null,8,["onClick"]),e("span",null,I(p.name),1),o(K,{session:p},null,8,["session"])])]),_:1}),o(Q,{field:"status",header:"Status",showFilterMenu:!1,style:{width:"9rem"}},{body:u(({data:p})=>[e("div",cn,[e("div",null,[o(ae,{session:p},null,8,["session"])]),e("div",un,[o(oe,{status:p.status},null,8,["status"])])])]),filter:u(({filterModel:p,filterCallback:N})=>[o(re,{modelValue:p.value,"onUpdate:modelValue":L=>p.value=L,options:g(Zo),onChange:L=>N(),placeholder:"Any",class:"p-column-filter",showClear:!0},{option:u(({option:L})=>[o(oe,{status:L,value:L},null,8,["status","value"])]),_:2},1032,["modelValue","onUpdate:modelValue","options","onChange"])]),_:1}),o(Q,{field:"server.name",filterField:"server.id",header:"Server",showFilterMenu:!1},{filter:u(({filterModel:p,filterCallback:N})=>[o(Z,{placeholder:"Any",onChange:L=>N(),modelValue:p.value,"onUpdate:modelValue":L=>p.value=L,showClear:!0,required:!1},null,8,["onChange","modelValue","onUpdate:modelValue"])]),_:1}),o(Q,null,{body:u(({data:p})=>[e("div",pn,[o(M,{icon:"pi pi-cog",severity:"secondary",rounded:"",outlined:"",onClick:N=>V(p)},null,8,["onClick"]),o(M,{icon:"pi pi-play",severity:"success",rounded:"",outlined:"",onClick:N=>E(p)},null,8,["onClick"]),o(M,{icon:"pi pi-stop",severity:"warning",rounded:"",outlined:"",onClick:N=>H(N,p)},null,8,["onClick"]),o(M,{icon:"pi pi-trash",severity:"danger",rounded:"",outlined:"",onClick:N=>z(N,p)},null,8,["onClick"])])]),_:1})]),_:1},8,["value","dataKey","filters","loading"]),o(ee),o(h,{visible:b.value,"onUpdate:visible":f[2]||(f[2]=p=>b.value=p),session:v.value,"onUpdate:session":f[3]||(f[3]=p=>v.value=p)},null,8,["visible","session"]),o(Be,{visible:y.value,"onUpdate:visible":f[4]||(f[4]=p=>y.value=p),session:v.value,"onUpdate:session":f[5]||(f[5]=p=>v.value=p),mode:k.value},null,8,["visible","session","mode"])],64)}}};export{En as _};
+1
View File
@@ -0,0 +1 @@
import{s as i}from"./Bl_ZW1Xh.js";import{t as s,v as l,Y as d,O as a,aa as c}from"./DRtWvKfJ.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
View File
@@ -0,0 +1 @@
import i from"./XrWOLLJc.js";import{r as l,v as r,N as a,Q as p,t as e,P as c,O as o}from"./DRtWvKfJ.js";import"./yXaOlmbx.js";const m={class:"layout-menu"},u={key:1,class:"menu-separator"},v={__name:"AppMenu",setup(_){const t=l([{label:"Home",items:[{label:"Dashboard",icon:"pi pi-fw pi-home",to:"/"},{label:"Servers",icon:"pi pi-fw pi-server",to:"/servers"},{label:"Sessions",icon:"pi pi-fw pi-whatsapp",to:"/sessions"}]}]);return(d,f)=>(e(),r("ul",m,[(e(!0),r(a,null,p(t.value,(s,n)=>(e(),r(a,{key:s},[s.separator?o("",!0):(e(),c(i,{key:0,item:s,index:n},null,8,["item","index"])),s.separator?(e(),r("li",u)):o("",!0)],64))),128))]))}};export{v as default};
+2
View File
@@ -0,0 +1,2 @@
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"./DRtWvKfJ.js";import{s as le}from"./BMCLKWyE.js";import{s as oe}from"./BKuF8g-Y.js";import{s as ae}from"./DpeyYdwe.js";import{s as ue}from"./D2eV2xTx.js";import{s as de}from"./B5fdn047.js";import{s as ce}from"./B7nXBdam.js";import{O as pe}from"./CELf783E.js";import{s as fe}from"./CFcFeTBy.js";import he from"./BnGLU8uI.js";import{s as ye}from"./Bl_ZW1Xh.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
View File
@@ -0,0 +1 @@
import{s as l}from"./Bl_ZW1Xh.js";import{Y as n}from"./DRtWvKfJ.js";var a={},r={name:"BaseTabPanel",extends:l,props:{header:null,headerStyle:null,headerClass:null,headerProps:null,headerActionProps:null,contentStyle:null,contentClass:null,contentProps:null,disabled:Boolean},style:a},t={name:"TabPanel",extends:r};function s(e,o,d,p,u,c){return n(e.$slots,"default")}t.render=s;export{t as default};
+2
View File
@@ -0,0 +1,2 @@
import{a3 as z,a7 as o,a4 as f,t as p,v as c,N as g,Q as S,P as y,ab as E,aa as d,x as P,O as L}from"./DRtWvKfJ.js";import{s as b}from"./Bl_ZW1Xh.js";var T={root:function(e){var n=e.props;return["p-splitter p-component","p-splitter-"+n.layout]},gutter:"p-splitter-gutter",gutterHandler:"p-splitter-gutter-handle"},x={root:function(e){var n=e.props;return[{display:"flex","flex-wrap":"nowrap"},n.layout==="vertical"?{"flex-direction":"column"}:""]}},M=z.extend({name:"splitter",classes:T,inlineStyles:x}),w={name:"BaseSplitter",extends:b,props:{layout:{type:String,default:"horizontal"},gutterSize:{type:Number,default:4},stateKey:{type:String,default:null},stateStorage:{type:String,default:"session"},step:{type:Number,default:5}},style:M,provide:function(){return{$parentInstance:this}}};function v(t){return G(t)||R(t)||I(t)||A()}function A(){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 I(t,e){if(t){if(typeof t=="string")return m(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 m(t,e)}}function R(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function G(t){if(Array.isArray(t))return m(t)}function m(t,e){(e==null||e>t.length)&&(e=t.length);for(var n=0,s=new Array(e);n<e;n++)s[n]=t[n];return s}var O={name:"Splitter",extends:w,inheritAttrs:!1,emits:["resizestart","resizeend","resize"],dragging:!1,mouseMoveListener:null,mouseUpListener:null,touchMoveListener:null,touchEndListener:null,size:null,gutterElement:null,startPos:null,prevPanelElement:null,nextPanelElement:null,nextPanelSize:null,prevPanelSize:null,panelSizes:null,prevPanelIndex:null,timer:null,data:function(){return{prevSize:null}},mounted:function(){var e=this;if(this.panels&&this.panels.length){var n=!1;if(this.isStateful()&&(n=this.restoreState()),!n){var s=v(this.$el.children).filter(function(i){return i.getAttribute("data-pc-name")==="splitterpanel"}),r=[];this.panels.map(function(i,a){var u=i.props&&i.props.size?i.props.size:null,h=u||100/e.panels.length;r[a]=h,s[a].style.flexBasis="calc("+h+"% - "+(e.panels.length-1)*e.gutterSize+"px)"}),this.panelSizes=r,this.prevSize=parseFloat(r[0]).toFixed(4)}}},beforeUnmount:function(){this.clear(),this.unbindMouseListeners()},methods:{isSplitterPanel:function(e){return e.type.name==="SplitterPanel"},onResizeStart:function(e,n,s){this.gutterElement=e.currentTarget||e.target.parentElement,this.size=this.horizontal?o.getWidth(this.$el):o.getHeight(this.$el),s||(this.dragging=!0,this.startPos=this.layout==="horizontal"?e.pageX||e.changedTouches[0].pageX:e.pageY||e.changedTouches[0].pageY),this.prevPanelElement=this.gutterElement.previousElementSibling,this.nextPanelElement=this.gutterElement.nextElementSibling,s?(this.prevPanelSize=this.horizontal?o.getOuterWidth(this.prevPanelElement,!0):o.getOuterHeight(this.prevPanelElement,!0),this.nextPanelSize=this.horizontal?o.getOuterWidth(this.nextPanelElement,!0):o.getOuterHeight(this.nextPanelElement,!0)):(this.prevPanelSize=100*(this.horizontal?o.getOuterWidth(this.prevPanelElement,!0):o.getOuterHeight(this.prevPanelElement,!0))/this.size,this.nextPanelSize=100*(this.horizontal?o.getOuterWidth(this.nextPanelElement,!0):o.getOuterHeight(this.nextPanelElement,!0))/this.size),this.prevPanelIndex=n,this.$emit("resizestart",{originalEvent:e,sizes:this.panelSizes}),this.$refs.gutter[n].setAttribute("data-p-gutter-resizing",!0),this.$el.setAttribute("data-p-resizing",!0)},onResize:function(e,n,s){var r,i,a;s?this.horizontal?(i=100*(this.prevPanelSize+n)/this.size,a=100*(this.nextPanelSize-n)/this.size):(i=100*(this.prevPanelSize-n)/this.size,a=100*(this.nextPanelSize+n)/this.size):(this.horizontal?r=e.pageX*100/this.size-this.startPos*100/this.size:r=e.pageY*100/this.size-this.startPos*100/this.size,i=this.prevPanelSize+r,a=this.nextPanelSize-r),this.validateResize(i,a)&&(this.prevPanelElement.style.flexBasis="calc("+i+"% - "+(this.panels.length-1)*this.gutterSize+"px)",this.nextPanelElement.style.flexBasis="calc("+a+"% - "+(this.panels.length-1)*this.gutterSize+"px)",this.panelSizes[this.prevPanelIndex]=i,this.panelSizes[this.prevPanelIndex+1]=a,this.prevSize=parseFloat(i).toFixed(4)),this.$emit("resize",{originalEvent:e,sizes:this.panelSizes})},onResizeEnd:function(e){this.isStateful()&&this.saveState(),this.$emit("resizeend",{originalEvent:e,sizes:this.panelSizes}),this.$refs.gutter.forEach(function(n){return n.setAttribute("data-p-gutter-resizing",!1)}),this.$el.setAttribute("data-p-resizing",!1),this.clear()},repeat:function(e,n,s){this.onResizeStart(e,n,!0),this.onResize(e,s,!0)},setTimer:function(e,n,s){var r=this;this.timer||(this.timer=setInterval(function(){r.repeat(e,n,s)},40))},clearTimer:function(){this.timer&&(clearInterval(this.timer),this.timer=null)},onGutterKeyUp:function(){this.clearTimer(),this.onResizeEnd()},onGutterKeyDown:function(e,n){switch(e.code){case"ArrowLeft":{this.layout==="horizontal"&&this.setTimer(e,n,this.step*-1),e.preventDefault();break}case"ArrowRight":{this.layout==="horizontal"&&this.setTimer(e,n,this.step),e.preventDefault();break}case"ArrowDown":{this.layout==="vertical"&&this.setTimer(e,n,this.step*-1),e.preventDefault();break}case"ArrowUp":{this.layout==="vertical"&&this.setTimer(e,n,this.step),e.preventDefault();break}}},onGutterMouseDown:function(e,n){this.onResizeStart(e,n),this.bindMouseListeners()},onGutterTouchStart:function(e,n){this.onResizeStart(e,n),this.bindTouchListeners(),e.preventDefault()},onGutterTouchMove:function(e){this.onResize(e),e.preventDefault()},onGutterTouchEnd:function(e){this.onResizeEnd(e),this.unbindTouchListeners(),e.preventDefault()},bindMouseListeners:functio Line truncated
+1
View File
@@ -0,0 +1 @@
import{s as C}from"./BMCLKWyE.js";import{t as r,v as t,aa as o,x as s}from"./DRtWvKfJ.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
View File
@@ -0,0 +1 @@
import{s as r}from"./Bl_ZW1Xh.js";import"./DRtWvKfJ.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
View File
@@ -0,0 +1 @@
import{s as r}from"./BMCLKWyE.js";import{t,v as o,aa as s,x as C}from"./DRtWvKfJ.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
View File
@@ -0,0 +1 @@
import b from"./Cm7Dkme4.js";import{s as B}from"./DpeyYdwe.js";import h from"./CpFoAXuV.js";import{a3 as v,a5 as $,i as m,t as f,v as C,z as r,a1 as c,A as a,Y as s,W as d,x as S,aa as l,P as w,ab as k}from"./DRtWvKfJ.js";import{s as D}from"./Bl_ZW1Xh.js";import"./CwRw2352.js";import"./B5fdn047.js";import"./BMCLKWyE.js";import"./CELf783E.js";import"./CFcFeTBy.js";import"./GnhOacnB.js";var I={root:function(t){var o=t.props;return["p-splitbutton p-component",{"p-button-raised":o.raised,"p-button-rounded":o.rounded,"p-button-text":o.text,"p-button-outlined":o.outlined,"p-button-sm":o.size==="small","p-button-lg":o.size==="large"}]},button:"p-splitbutton-defaultbutton",menuButton:"p-splitbutton-menubutton"},g=v.extend({name:"splitbutton",classes:I}),z={name:"BaseSplitButton",extends:D,props:{label:{type:String,default:null},icon:{type:String,default:null},model:{type:Array,default:null},autoZIndex:{type:Boolean,default:!0},baseZIndex:{type:Number,default:0},appendTo:{type:[String,Object],default:"body"},disabled:{type:Boolean,default:!1},class:{type:null,default:null},style:{type:null,default:null},buttonProps:{type:null,default:null},menuButtonProps:{type:null,default:null},menuButtonIcon:{type:String,default:void 0},severity:{type:String,default:null},raised:{type:Boolean,default:!1},rounded:{type:Boolean,default:!1},text:{type:Boolean,default:!1},outlined:{type:Boolean,default:!1},size:{type:String,default:null},plain:{type:Boolean,default:!1}},style:g,provide:function(){return{$parentInstance:this}}},V={name:"SplitButton",extends:z,inheritAttrs:!1,emits:["click"],data:function(){return{id:this.$attrs.id,isExpanded:!1}},watch:{"$attrs.id":{immediate:!0,handler:function(t){this.id=t||$()}}},mounted:function(){var t=this;this.$watch("$refs.menu.visible",function(o){t.isExpanded=o})},methods:{onDropdownButtonClick:function(t){t&&t.preventDefault(),this.$refs.menu.toggle({currentTarget:this.$el,relatedTarget:this.$refs.button.$el}),this.isExpanded=this.$refs.menu.visible},onDropdownKeydown:function(t){(t.code==="ArrowDown"||t.code==="ArrowUp")&&(this.onDropdownButtonClick(),t.preventDefault())},onDefaultButtonClick:function(t){this.isExpanded&&this.$refs.menu.hide(t),this.$emit("click",t)}},computed:{containerClass:function(){return[this.cx("root"),this.class]}},components:{PVSButton:b,PVSMenu:h,ChevronDownIcon:B}},Z=["data-p-severity"];function E(e,t,o,P,u,i){var p=m("PVSButton"),y=m("PVSMenu");return f(),C("div",l({class:i.containerClass,style:e.style},e.ptmi("root"),{"data-p-severity":e.severity}),[r(p,l({type:"button",class:e.cx("button"),label:e.label,disabled:e.disabled,severity:e.severity,text:e.text,outlined:e.outlined,size:e.size,"aria-label":e.label,onClick:i.onDefaultButtonClick},e.buttonProps,{pt:e.ptm("button"),unstyled:e.unstyled}),c({default:a(function(){return[s(e.$slots,"default")]}),_:2},[e.$slots.icon?{name:"icon",fn:a(function(n){return[s(e.$slots,"icon",{class:d(n.class)},function(){return[S("span",l({class:[e.icon,n.class]},e.ptm("button").icon,{"data-pc-section":"buttonicon"}),null,16)]})]}),key:"0"}:void 0]),1040,["class","label","disabled","severity","text","outlined","size","aria-label","onClick","pt","unstyled"]),r(p,l({ref:"button",type:"button",class:e.cx("menuButton"),disabled:e.disabled,"aria-haspopup":"true","aria-expanded":u.isExpanded,"aria-controls":u.id+"_overlay",onClick:i.onDropdownButtonClick,onKeydown:i.onDropdownKeydown,severity:e.severity,text:e.text,outlined:e.outlined,size:e.size},e.menuButtonProps,{pt:e.ptm("menuButton"),unstyled:e.unstyled}),{icon:a(function(n){return[s(e.$slots,"menubuttonicon",{class:d(n.class)},function(){return[(f(),w(k(e.menuButtonIcon?"span":"ChevronDownIcon"),l({class:[e.menuButtonIcon,n.class]},e.ptm("menuButton").icon,{"data-pc-section":"menubuttonicon"}),null,16,["class"]))]})]}),_:3},16,["class","disabled","aria-expanded","aria-controls","onClick","onKeydown","severity","text","outlined","size","pt","unstyled"]),r(y,{ref:"menu",id:u.id+"_overlay",model:e.model,popup:!0,autoZIndex:e.autoZIndex,baseZIndex:e.baseZIndex,appendTo:e.appendTo,unstyled:e.unstyled,pt:e.ptm("menu")},c({_:2},[e.$slots.menuitemicon?{name:"itemicon",fn:a(function(n){return[s(e.$slots,"menuitemicon",{item:n.item,class:d(n.class)})]}),key:"0"}:void 0,e.$slots.item?{name:"item",fn:a(function(n){return[s(e.$slots,"item",{item:n.item,hasSubmenu:n.hasSubmenu,label:n.label,props:n.props})]}),key:"1"}:void 0]),1032,["id","model","autoZIndex","baseZIndex","appendTo","unstyled","pt"])],16,Z)}V.render=E;export{V as default};
+1
View File
@@ -0,0 +1 @@
import{s as y}from"./HF1fbsar.js";import{s as h}from"./b2TVTf9x.js";import{a3 as v,a5 as P,a9 as w,Z as O,t as i,v as c,x as d,Y as s,aa as a,y as S,O as u,W as B,$ as g,P as D,ae as j,af as E,ab as K,z as C,A as I,ad as k,ac as A}from"./DRtWvKfJ.js";import{s as L}from"./Bl_ZW1Xh.js";import"./BMCLKWyE.js";var N={root:function(t){var o=t.props;return["p-panel p-component",{"p-panel-toggleable":o.toggleable}]},header:"p-panel-header",title:"p-panel-title",icons:"p-panel-icons",toggler:"p-panel-header-icon p-panel-toggler p-link",toggleablecontent:"p-toggleable-content",content:"p-panel-content",footer:"p-panel-footer"},z=v.extend({name:"panel",classes:N}),V={name:"BasePanel",extends:L,props:{header:String,toggleable:Boolean,collapsed:Boolean,toggleButtonProps:{type:null,default:null}},style:z,provide:function(){return{$parentInstance:this}}},$={name:"Panel",extends:V,inheritAttrs:!1,emits:["update:collapsed","toggle"],data:function(){return{id:this.$attrs.id,d_collapsed:this.collapsed}},watch:{"$attrs.id":{immediate:!0,handler:function(t){this.id=t||P()}},collapsed:function(t){this.d_collapsed=t}},methods:{toggle:function(t){this.d_collapsed=!this.d_collapsed,this.$emit("update:collapsed",this.d_collapsed),this.$emit("toggle",{originalEvent:t,value:this.d_collapsed})},onKeyDown:function(t){(t.code==="Enter"||t.code==="NumpadEnter"||t.code==="Space")&&(this.toggle(t),t.preventDefault())}},computed:{buttonAriaLabel:function(){return this.toggleButtonProps&&this.toggleButtonProps.ariaLabel?this.toggleButtonProps.ariaLabel:this.header}},components:{PlusIcon:h,MinusIcon:y},directives:{ripple:w}};function p(e){"@babel/helpers - typeof";return p=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},p(e)}function f(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable})),o.push.apply(o,r)}return o}function m(e){for(var t=1;t<arguments.length;t++){var o=arguments[t]!=null?arguments[t]:{};t%2?f(Object(o),!0).forEach(function(r){M(e,r,o[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):f(Object(o)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(o,r))})}return e}function M(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=T(e,"string");return p(t)=="symbol"?t:String(t)}function T(e,t){if(p(e)!="object"||!e)return e;var o=e[Symbol.toPrimitive];if(o!==void 0){var r=o.call(e,t||"default");if(p(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var q=["id"],U=["id","aria-label","aria-controls","aria-expanded"],W=["id","aria-labelledby"];function Y(e,t,o,r,n,l){var b=O("ripple");return i(),c("div",a({class:e.cx("root")},e.ptmi("root")),[d("div",a({class:e.cx("header")},e.ptm("header")),[s(e.$slots,"header",{id:n.id+"_header",class:B(e.cx("title"))},function(){return[e.header?(i(),c("span",a({key:0,id:n.id+"_header",class:e.cx("title")},e.ptm("title")),S(e.header),17,q)):u("",!0)]}),d("div",a({class:e.cx("icons")},e.ptm("icons")),[s(e.$slots,"icons"),e.toggleable?g((i(),c("button",a({key:0,id:n.id+"_header",type:"button",role:"button",class:e.cx("toggler"),"aria-label":l.buttonAriaLabel,"aria-controls":n.id+"_content","aria-expanded":!n.d_collapsed,onClick:t[0]||(t[0]=function(){return l.toggle&&l.toggle.apply(l,arguments)}),onKeydown:t[1]||(t[1]=function(){return l.onKeyDown&&l.onKeyDown.apply(l,arguments)})},m(m({},e.toggleButtonProps),e.ptm("toggler"))),[s(e.$slots,"togglericon",{collapsed:n.d_collapsed},function(){return[(i(),D(K(n.d_collapsed?"PlusIcon":"MinusIcon"),j(E(e.ptm("togglericon"))),null,16))]})],16,U)),[[b]]):u("",!0)],16)],16),C(A,a({name:"p-toggleable-content"},e.ptm("transition")),{default:I(function(){return[g(d("div",a({id:n.id+"_content",class:e.cx("toggleablecontent"),role:"region","aria-labelledby":n.id+"_header"},e.ptm("toggleablecontent")),[d("div",a({class:e.cx("content")},e.ptm("content")),[s(e.$slots,"default")],16),e.$slots.footer?(i(),c("div",a({key:0,class:e.cx("footer")},e.ptm("footer")),[s(e.$slots,"footer")],16)):u("",!0)],16,W),[[k,!n.d_collapsed]])]}),_:3},16)],16)}$.render=Y;export{$ as default};
+1
View File
@@ -0,0 +1 @@
import{s as h}from"./HF1fbsar.js";import{s as v}from"./b2TVTf9x.js";import{a3 as P,a5 as w,a9 as O,Z as S,t as d,v as c,x as a,Y as p,aa as l,y as u,O as g,$ as f,P as B,ab as D,z as j,A as E,ad as K,ac as I}from"./DRtWvKfJ.js";import{s as A}from"./Bl_ZW1Xh.js";import"./BMCLKWyE.js";var C={root:function(t){var o=t.props;return["p-fieldset p-component",{"p-fieldset-toggleable":o.toggleable}]},legend:"p-fieldset-legend",legendtitle:"p-fieldset-legend-text",togglericon:"p-fieldset-toggler",toggleablecontent:"p-toggleable-content",content:"p-fieldset-content"},L=P.extend({name:"fieldset",classes:C}),N={name:"BaseFieldset",extends:A,props:{legend:String,toggleable:Boolean,collapsed:Boolean,toggleButtonProps:{type:null,default:null}},style:L,provide:function(){return{$parentInstance:this}}},k={name:"Fieldset",extends:N,inheritAttrs:!1,emits:["update:collapsed","toggle"],data:function(){return{id:this.$attrs.id,d_collapsed:this.collapsed}},watch:{"$attrs.id":{immediate:!0,handler:function(t){this.id=t||w()}},collapsed:function(t){this.d_collapsed=t}},methods:{toggle:function(t){this.d_collapsed=!this.d_collapsed,this.$emit("update:collapsed",this.d_collapsed),this.$emit("toggle",{originalEvent:t,value:this.d_collapsed})},onKeyDown:function(t){(t.code==="Enter"||t.code==="NumpadEnter"||t.code==="Space")&&(this.toggle(t),t.preventDefault())}},computed:{buttonAriaLabel:function(){return this.toggleButtonProps&&this.toggleButtonProps.ariaLabel?this.toggleButtonProps.ariaLabel:this.legend}},directives:{ripple:O},components:{PlusIcon:v,MinusIcon:h}};function s(e){"@babel/helpers - typeof";return s=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},s(e)}function m(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),o.push.apply(o,n)}return o}function b(e){for(var t=1;t<arguments.length;t++){var o=arguments[t]!=null?arguments[t]:{};t%2?m(Object(o),!0).forEach(function(n){F(e,n,o[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):m(Object(o)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(o,n))})}return e}function F(e,t,o){return t=V(t),t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function V(e){var t=M(e,"string");return s(t)=="symbol"?t:String(t)}function M(e,t){if(s(e)!="object"||!e)return e;var o=e[Symbol.toPrimitive];if(o!==void 0){var n=o.call(e,t||"default");if(s(n)!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var T=["id"],_=["id","aria-controls","aria-expanded","aria-label"],$=["id","aria-labelledby"];function q(e,t,o,n,r,i){var y=S("ripple");return d(),c("fieldset",l({class:e.cx("root")},e.ptmi("root")),[a("legend",l({class:e.cx("legend")},e.ptm("legend")),[e.toggleable?g("",!0):p(e.$slots,"legend",{key:0},function(){return[a("span",l({id:r.id+"_header",class:e.cx("legendtitle")},e.ptm("legendtitle")),u(e.legend),17,T)]}),e.toggleable?f((d(),c("a",l({key:1,id:r.id+"_header",tabindex:"0",role:"button","aria-controls":r.id+"_content","aria-expanded":!r.d_collapsed,"aria-label":i.buttonAriaLabel,onClick:t[0]||(t[0]=function(){return i.toggle&&i.toggle.apply(i,arguments)}),onKeydown:t[1]||(t[1]=function(){return i.onKeyDown&&i.onKeyDown.apply(i,arguments)})},b(b({},e.toggleButtonProps),e.ptm("toggler"))),[p(e.$slots,"togglericon",{collapsed:r.d_collapsed},function(){return[(d(),B(D(r.d_collapsed?"PlusIcon":"MinusIcon"),l({class:e.cx("togglericon")},e.ptm("togglericon")),null,16,["class"]))]}),p(e.$slots,"legend",{},function(){return[a("span",l({class:e.cx("legendtitle")},e.ptm("legendtitle")),u(e.legend),17)]})],16,_)),[[y]]):g("",!0)],16),j(I,l({name:"p-toggleable-content"},e.ptm("transition")),{default:E(function(){return[f(a("div",l({id:r.id+"_content",class:e.cx("toggleablecontent"),role:"region","aria-labelledby":r.id+"_header"},e.ptm("toggleablecontent")),[a("div",l({class:e.cx("content")},e.ptm("content")),[p(e.$slots,"default")],16)],16,$),[[K,!r.d_collapsed]])]}),_:3},16)],16)}k.render=q;export{k as default};
+5
View File
@@ -0,0 +1,5 @@
import{s as H}from"./D2eV2xTx.js";import{s as D}from"./B5fdn047.js";import{a3 as W,a4 as z,a7 as p,a9 as Q,i as k,Z as Y,t as c,v as h,x as C,$ as j,aa as u,N as S,P as f,W as m,ab as g,A as Z,O as w,aj as q,B as G,y as J,Q as F,Y as M,ai as X,z as _}from"./DRtWvKfJ.js";import{s as L}from"./Bl_ZW1Xh.js";import $ from"./Gj9DruUc.js";import{s as ee}from"./BKuF8g-Y.js";import{s as te}from"./DpeyYdwe.js";import{s as ne}from"./CTyYxNkn.js";import{s as re}from"./HF1fbsar.js";import"./BMCLKWyE.js";var ie={root:function(t){var n=t.props;return["p-tree p-component",{"p-tree-selectable":n.selectionMode!=null,"p-tree-loading":n.loading,"p-tree-flex-scrollable":n.scrollHeight==="flex"}]},loadingOverlay:"p-tree-loading-overlay p-component-overlay",loadingIcon:"p-tree-loading-icon",filterContainer:"p-tree-filter-container",input:"p-tree-filter p-inputtext p-component",searchIcon:"p-tree-filter-icon",wrapper:"p-tree-wrapper",container:"p-tree-container",node:function(t){var n=t.instance;return["p-treenode",{"p-treenode-leaf":n.leaf}]},content:function(t){var n=t.instance;return["p-treenode-content",n.node.styleClass,{"p-treenode-selectable":n.selectable,"p-highlight":n.checkboxMode&&n.$parentInstance.highlightOnSelect?n.checked:n.selected}]},toggler:"p-tree-toggler p-link",togglerIcon:"p-tree-toggler-icon",nodeTogglerIcon:"p-tree-node-toggler-icon",nodeCheckbox:function(t){var n=t.instance;return[{"p-indeterminate":n.partialChecked}]},nodeIcon:"p-treenode-icon",label:"p-treenode-label",subgroup:"p-treenode-children"},le=W.extend({name:"tree",classes:ie}),oe={name:"BaseTree",extends:L,props:{value:{type:null,default:null},expandedKeys:{type:null,default:null},selectionKeys:{type:null,default:null},selectionMode:{type:String,default:null},metaKeySelection:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},loadingIcon:{type:String,default:void 0},loadingMode:{type:String,default:"mask"},filter:{type:Boolean,default:!1},filterBy:{type:String,default:"label"},filterMode:{type:String,default:"lenient"},filterPlaceholder:{type:String,default:null},filterLocale:{type:String,default:void 0},highlightOnSelect:{type:Boolean,default:!1},scrollHeight:{type:String,default:null},level:{type:Number,default:0},ariaLabelledby:{type:String,default:null},ariaLabel:{type:String,default:null}},style:le,provide:function(){return{$parentInstance:this}}};function x(e){"@babel/helpers - typeof";return x=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},x(e)}function O(e,t){var n=typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=V(e))||t&&e&&typeof e.length=="number"){n&&(e=n);var r=0,l=function(){};return{s:l,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(s){throw s},f:l}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,o=!1,d;return{s:function(){n=n.call(e)},n:function(){var s=n.next();return i=s.done,s},e:function(s){o=!0,d=s},f:function(){try{!i&&n.return!=null&&n.return()}finally{if(o)throw d}}}}function A(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function E(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?A(Object(n),!0).forEach(function(r){ae(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):A(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function ae(e,t,n){return t=se(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function se(e){var t=ce(e,"string");return x(t)=="symbol"?t:String(t)}function ce(e,t){if(x(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||"default");if(x(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function v(e){return fe(e)||ue(e)||V(e)||de()}function de(){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,t){if(e){if(typeof e=="string")return I(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 I(e,t)}}function ue(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function fe(e){if(Array.isArray(e))return I(e)}function I(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 R={name:"TreeNode",hostName:"Tree",extends:L,emits:["node-toggle","node-click","checkbox-change"],props:{node:{type:null,default:null},expandedKeys:{type:null,default:null},loadingMode:{type:String,default:"mask"},selectionKeys:{type:null,default:null},selectionMode:{type:String,default:null},templates:{type:null,default:null},level:{type:Number,default:null},index:null},nodeTouched:!1,toggleClicked:!1,mounted:function(){this.setAllNodesTabIndexes()},methods:{toggle:function(){this.$emit("node-toggle",this.node),this.toggleClicked=!0},label:function(t){return typeof t.label=="function"?t.label():t.label},onChildNodeToggle:function(t){this.$emit("node-toggle",t)},getPTOptions:function(t){return this.ptm(t,{context:{index:this.index,expanded:this.expanded,selected:this.selected,checked:this.checked,leaf:this.leaf}})},onClick:function(t){if(this.toggleClicked||p.getAttribute(t.target,'[data-pc-section="toggler"]')||p.getAttribute(t.target.parentElement,'[data-pc-section="toggler"]')){this.toggleClicked=!1;return}this.isCheckboxSelectionMode()?this.toggleCheckbox():this.$emit("node-click",{originalEvent:t,nodeTouched:this.nodeTouched,node:this.node}),this.nodeTouched=!1},onChildNodeClick:function(t){this.$emit("node-click",t)},onTouchEnd:function(){this.nodeTouched=!0},onKeyDown:function(t){if(this.isSameNode(t))switch(t.code){case"Tab":this.onTabKey(t);break;case"ArrowDown":this.onArrowDown(t);break;case"ArrowUp":this.onArrowUp(t);break;case"ArrowRight":this.onArrowRight(t);break;case"ArrowLeft":this.onArrowLeft(t);break;case"Enter":case"NumpadEnter":case"Space":this.onEnterKey(t);break}},onArrowDown:function(t){var n=t.target.getAttribute("data-pc-section")==="toggler"?t.target.closest('[role="treeitem"]'):t.target,r=n.children[1];if(r)this.focusRowChange(n,r.children[0]);else if(n.nextElementSibling)this.focusRowChange(n,n.nextElementSibling);else{var l=this.findNextSiblingOfAncestor(n);l&&this.focusRowChange(n,l)}t.preventDefault()},onArrowUp:function(t){var n=t.target;if(n.previousElementSibling)this.focusRowChange(n,n.previousElementSibling,this.findLastVisibleDescendant(n.previousElementSibling));else{var r=this.getParentNodeElement(n);r&&this.focusRowChange(n,r)}t.preventDefault()},onArrowRight:function(t){var n=this;this.leaf||this.expanded||(t.currentTarget.tabIndex=-1,this.$emit("node-toggle",this.node),this.$nextTick(function(){n.onArrowDown(t)}))},onArrowLeft:function(t){var n=p.findSingle(t.currentTarget,'[data-pc-section="toggler"]');if(this.level===0&&!this.expanded)return!1;if(this.expanded&&!this.leaf)return n.click(),!1;var r=this.findBeforeClickableNode(t.currentTarget);r&&this.focusRowChange(t.currentTarget,r)},onEnterKey:function(t){this.setTabIndexForSelectionMode(t,this.nodeTouched),this.onClick(t),t.preventDefault()},onTabKey:function(){this.setAllNodesTabIndexes()},setAllNodesTabIndexes:function(){var t=p.find(this.$refs.currentNode.closest('[data-pc-section="container"]'),'[role="treeitem"]'),n=v(t).some(function(l){return l.getAttribute("aria-selected")==="true"||l.getAttribute("aria-checked")==="true"});if(v(t).forEach(function(l){l.tabIndex=-1}),n){var r=v(t).filter(function(l){return l.getAttribute("aria-selected")==="true"||l.getAttribute("aria-checked")==="true"});r[0].tabIndex=0;return}v(t)[0].tabIndex=0},setTabIndexForSelectionMode:function(t,n){if(this.selectionMode!==null){var r=v(p.find(this.$refs.currentNode.parentElement,'[role="treeitem"]'));t.currentTarget.tabIndex=n===!1?-1:0,r.every(function(l){return l.tabIndex===-1})&&(r[0].tabIndex=0)}},focusRowChange:function(t,n,r){t.tabIndex="-1",n.tabIndex="0",this.focusNode(r||n)},findBeforeClickableNode:function(t){var n=t.closest("ul").closest("li");if(n){var r=p.findSingle(n,"button");return r&&r.style.visibility!=="hidden"?n:this.findBeforeClickableNode(t.previousElementSibling)}return null},toggleCheckbox:function(){var t=this.selectionKeys?E({},this.selectionKeys):{},n=!this.checked;this.propagateDown(this.node,n,t),this.$emit("checkbox-change",{node:this.node,check:n,selectionKeys:t})},propagateDown:function(t,n,r){if(n?r[t.key]={checked:!0,partialChecked:!1}:delete r[t.key],t.children&&t.children.length){var l=O(t.children),i;try{for(l.s();!(i=l.n()).done;){var o=i.value;this.propagateDown(o,n,r)}}catch(d){l.e(d)}finally{l.f()}}},propagateUp:function(t){var n=t.check,r=E({},t.selectionKeys Line truncated
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var i=!0,o=!1,d;return{s:function(){n=n.call(e)},n:function(){var s=n.next();return i=s.done,s},e:function(s){o=!0,d=s},f:function(){try{!i&&n.return!=null&&n.return()}finally{if(o)throw d}}}}function pe(e){return ke(e)||me(e)||B(e)||be()}function be(){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 B(e,t){if(e){if(typeof e=="string")return N(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 N(e,t)}}function me(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function ke(e){if(Array.isArray(e))return N(e)}function N(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}function P(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(l){return Object.getOwnPropertyDescriptor(e,l).enumerable})),n.push.apply(n,r)}return n}function b(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?P(Object(n),!0).forEach(function(r){ve(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):P(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function ve(e,t,n){return t=Se(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Se(e){var t=Ce(e,"string");return K(t)=="symbol"?t:String(t)}function Ce(e,t){if(K(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||"default");if(K(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var xe={name:"Tree",extends:oe,inheritAttrs:!1,emits:["node-expand","node-collapse","update:expandedKeys","update:selectionKeys","node-select","node-unselect","filter"],data:function(){return{d_expandedKeys:this.expandedKeys||{},filterValue:null}},watch:{expandedKeys:function(t){this.d_expandedKeys=t}},methods:{onNodeToggle:function(t){var n=t.key;this.d_expandedKeys[n]?(delete this.d_expandedKeys[n],this.$emit("node-collapse",t)):(this.d_expandedKeys[n]=!0,this.$emit("node-expand",t)),this.d_expandedKeys=b({},this.d_expandedKeys),this.$emit("update:expandedKeys",this.d_expandedKeys)},onNodeClick:function(t){if(this.selectionMode!=null&&t.node.selectable!==!1){var n=t.nodeTouched?!1:this.metaKeySelection,r=n?this.handleSelectionWithMetaKey(t):this.handleSelectionWithoutMetaKey(t);this.$emit("update:selectionKeys",r)}},onCheckboxChange:function(t){this.$emit("update:selectionKeys",t.selectionKeys),t.check?this.$emit("node-select",t.node):this.$emit("node-unselect",t.node)},handleSelectionWithMetaKey:function(t){var n=t.originalEvent,r=t.node,l=n.metaKey||n.ctrlKey,i=this.isNodeSelected(r),o;return i&&l?(this.isSingleSelectionMode()?o={}:(o=b({},this.selectionKeys),delete o[r.key]),this.$emit("node-unselect",r)):(this.isSingleSelectionMode()?o={}:this.isMultipleSelectionMode()&&(o=l?this.selectionKeys?b({},this.selectionKeys):{}:{}),o[r.key]=!0,this.$emit("node-select",r)),o},handleSelectionWithoutMetaKey:function(t){var n=t.node,r=this.isNodeSelected(n),l;return this.isSingleSelectionMode()?r?(l={},this.$emit("node-unselect",n)):(l={},l[n.key]=!0,this.$emit("node-select",n)):r?(l=b({},this.selectionKeys),delete l[n.key],this.$emit("node-unselect",n)):(l=this.selectionKeys?b({},this.selectionKeys):{},l[n.key]=!0,this.$emit("node-select",n)),l},isSingleSelectionMode:function(){return this.selectionMode==="single"},isMultipleSelectionMode:function(){return this.selectionMode==="multiple"},isNodeSelected:function(t){return this.selectionMode&&this.selectionKeys?this.selectionKeys[t.key]===!0:!1},isChecked:function(t){return this.selectionKeys?this.selectionKeys[t.key]&&this.selectionKeys[t.key].checked:!1},isNodeLeaf:function(t){return t.leaf===!1?!1:!(t.children&&t.children.length)},onFilterKeydown:function(t){(t.code==="Enter"||t.code==="NumpadEnter")&&t.preventDefault(),this.$emit("filter",{originalEvent:t,value:t.target.value})},findFilteredNodes:function(t,n){if(t){var r=!1;if(t.children){var l=pe(t.children);t.children=[];var i=T(l),o;try{for(i.s();!(o=i.n()).done;){var d=o.value,a=b({},d);this.isFilterMatched(a,n)&&(r=!0,t.children.push(a))}}catch(s){i.e(s)}finally{i.f()}}if(r)return!0}},isFilterMatched:function(t,n){var r=n.searchFields,l=n.filterText,i=n.strict,o=!1,d=T(r),a;try{for(d.s();!(a=d.n()).done;){var s=a.value,y=String(z.resolveFieldData(t,s)).toLocaleLowerCase(this.filterLocale);y.indexOf(l)>-1&&(o=!0)}}catch(U){d.e(U)}finally{d.f()}return(!o||i&&!this.isNodeLeaf(t))&&(o=this.findFilteredNodes(t,{searchFields:r,filterText:l,strict:i})||o),o}},computed:{filteredValue:function(){var t=[],n=this.filterBy.split(","),r=this.filterValue.trim().toLocaleLowerCase(this.filterLocale),l=this.filterMode==="strict",i=T(this.value),o;try{for(i.s();!(o=i.n()).done;){var d=o.value,a=b({},d),s={searchFields:n,filterText:r,strict:l};(l&&(this.findFilteredNodes(a,s)||this.isFilterMat Line truncated
+1
View File
@@ -0,0 +1 @@
import{s as r}from"./BMCLKWyE.js";import{t,v as o,aa as s,x as a}from"./DRtWvKfJ.js";var C={name:"CheckIcon",extends:r},n=a("path",{d:"M4.86199 11.5948C4.78717 11.5923 4.71366 11.5745 4.64596 11.5426C4.57826 11.5107 4.51779 11.4652 4.46827 11.4091L0.753985 7.69483C0.683167 7.64891 0.623706 7.58751 0.580092 7.51525C0.536478 7.44299 0.509851 7.36177 0.502221 7.27771C0.49459 7.19366 0.506156 7.10897 0.536046 7.03004C0.565935 6.95111 0.613367 6.88 0.674759 6.82208C0.736151 6.76416 0.8099 6.72095 0.890436 6.69571C0.970973 6.67046 1.05619 6.66385 1.13966 6.67635C1.22313 6.68886 1.30266 6.72017 1.37226 6.76792C1.44186 6.81567 1.4997 6.8786 1.54141 6.95197L4.86199 10.2503L12.6397 2.49483C12.7444 2.42694 12.8689 2.39617 12.9932 2.40745C13.1174 2.41873 13.2343 2.47141 13.3251 2.55705C13.4159 2.64268 13.4753 2.75632 13.4938 2.87973C13.5123 3.00315 13.4888 3.1292 13.4271 3.23768L5.2557 11.4091C5.20618 11.4652 5.14571 11.5107 5.07801 11.5426C5.01031 11.5745 4.9368 11.5923 4.86199 11.5948Z",fill:"currentColor"},null,-1),i=[n];function p(e,c,l,d,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()),i,16)}C.render=p;export{C as s};
+1
View File
@@ -0,0 +1 @@
import{s as r}from"./BMCLKWyE.js";import{t as e,v as o,aa as n,x as C}from"./DRtWvKfJ.js";var d={name:"SortAltIcon",extends:r},h=C("path",{d:"M5.64515 3.61291C5.47353 3.61291 5.30192 3.54968 5.16644 3.4142L3.38708 1.63484L1.60773 3.4142C1.34579 3.67613 0.912244 3.67613 0.650309 3.4142C0.388374 3.15226 0.388374 2.71871 0.650309 2.45678L2.90837 0.198712C3.17031 -0.0632236 3.60386 -0.0632236 3.86579 0.198712L6.12386 2.45678C6.38579 2.71871 6.38579 3.15226 6.12386 3.4142C5.98837 3.54968 5.81676 3.61291 5.64515 3.61291Z",fill:"currentColor"},null,-1),c=C("path",{d:"M3.38714 14C3.01681 14 2.70972 13.6929 2.70972 13.3226V0.677419C2.70972 0.307097 3.01681 0 3.38714 0C3.75746 0 4.06456 0.307097 4.06456 0.677419V13.3226C4.06456 13.6929 3.75746 14 3.38714 14Z",fill:"currentColor"},null,-1),u=C("path",{d:"M10.6129 14C10.4413 14 10.2697 13.9368 10.1342 13.8013L7.87611 11.5432C7.61418 11.2813 7.61418 10.8477 7.87611 10.5858C8.13805 10.3239 8.5716 10.3239 8.83353 10.5858L10.6129 12.3652L12.3922 10.5858C12.6542 10.3239 13.0877 10.3239 13.3497 10.5858C13.6116 10.8477 13.6116 11.2813 13.3497 11.5432L11.0916 13.8013C10.9561 13.9368 10.7845 14 10.6129 14Z",fill:"currentColor"},null,-1),v=C("path",{d:"M10.6129 14C10.2426 14 9.93552 13.6929 9.93552 13.3226V0.677419C9.93552 0.307097 10.2426 0 10.6129 0C10.9833 0 11.2904 0.307097 11.2904 0.677419V13.3226C11.2904 13.6929 10.9832 14 10.6129 14Z",fill:"currentColor"},null,-1),_=[h,c,u,v];function $(t,s,a,l,i,p){return e(),o("svg",n({width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},t.pti()),_,16)}d.render=$;var w={name:"SortAmountDownIcon",extends:r},H=C("path",{d:"M4.93953 10.5858L3.83759 11.6877V0.677419C3.83759 0.307097 3.53049 0 3.16017 0C2.78985 0 2.48275 0.307097 2.48275 0.677419V11.6877L1.38082 10.5858C1.11888 10.3239 0.685331 10.3239 0.423396 10.5858C0.16146 10.8477 0.16146 11.2813 0.423396 11.5432L2.68146 13.8013C2.74469 13.8645 2.81694 13.9097 2.89823 13.9458C2.97952 13.9819 3.06985 14 3.16017 14C3.25049 14 3.33178 13.9819 3.42211 13.9458C3.5034 13.9097 3.57565 13.8645 3.63888 13.8013L5.89694 11.5432C6.15888 11.2813 6.15888 10.8477 5.89694 10.5858C5.63501 10.3239 5.20146 10.3239 4.93953 10.5858ZM13.0957 0H7.22468C6.85436 0 6.54726 0.307097 6.54726 0.677419C6.54726 1.04774 6.85436 1.35484 7.22468 1.35484H13.0957C13.466 1.35484 13.7731 1.04774 13.7731 0.677419C13.7731 0.307097 13.466 0 13.0957 0ZM7.22468 5.41935H9.48275C9.85307 5.41935 10.1602 5.72645 10.1602 6.09677C10.1602 6.4671 9.85307 6.77419 9.48275 6.77419H7.22468C6.85436 6.77419 6.54726 6.4671 6.54726 6.09677C6.54726 5.72645 6.85436 5.41935 7.22468 5.41935ZM7.6763 8.12903H7.22468C6.85436 8.12903 6.54726 8.43613 6.54726 8.80645C6.54726 9.17677 6.85436 9.48387 7.22468 9.48387H7.6763C8.04662 9.48387 8.35372 9.17677 8.35372 8.80645C8.35372 8.43613 8.04662 8.12903 7.6763 8.12903ZM7.22468 2.70968H11.2892C11.6595 2.70968 11.9666 3.01677 11.9666 3.3871C11.9666 3.75742 11.6595 4.06452 11.2892 4.06452H7.22468C6.85436 4.06452 6.54726 3.75742 6.54726 3.3871C6.54726 3.01677 6.85436 2.70968 7.22468 2.70968Z",fill:"currentColor"},null,-1),L=[H];function f(t,s,a,l,i,p){return e(),o("svg",n({width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},t.pti()),L,16)}w.render=f;var m={name:"SortAmountUpAltIcon",extends:r},M=C("path",{d:"M3.63435 0.19871C3.57113 0.135484 3.49887 0.0903226 3.41758 0.0541935C3.255 -0.0180645 3.06532 -0.0180645 2.90274 0.0541935C2.82145 0.0903226 2.74919 0.135484 2.68597 0.19871L0.427901 2.45677C0.165965 2.71871 0.165965 3.15226 0.427901 3.41419C0.689836 3.67613 1.12338 3.67613 1.38532 3.41419L2.48726 2.31226V13.3226C2.48726 13.6929 2.79435 14 3.16467 14C3.535 14 3.84209 13.6929 3.84209 13.3226V2.31226L4.94403 3.41419C5.07951 3.54968 5.25113 3.6129 5.42274 3.6129C5.59435 3.6129 5.76597 3.54968 5.90145 3.41419C6.16338 3.15226 6.16338 2.71871 5.90145 2.45677L3.64338 0.19871H3.63435ZM13.7685 13.3226C13.7685 12.9523 13.4615 12.6452 13.0911 12.6452H7.22016C6.84984 12.6452 6.54274 12.9523 6.54274 13.3226C6.54274 13.6929 6.84984 14 7.22016 14H13.0911C13.4615 14 13.7685 13.6929 13.7685 13.3226ZM7.22016 8.58064C6.84984 8.58064 6.54274 8.27355 6.54274 7.90323C6.54274 7.5329 6.84984 7.22581 7.22016 7.22581H9.47823C9.84855 7.22581 10.1556 7.5329 10.1556 7.90323C10.1556 8.27355 9.84855 8.58064 9.47823 8.58064H7.22016ZM7.22016 5.87097H7.67177C8.0421 5.87097 8.34919 5.56387 8.34919 5.19355C8.34919 4.82323 8.0421 4.51613 7.67177 4.51613H7.22016C6.84984 4.51613 6.54274 4.82323 6.54274 5.19355C6.54274 5.56387 6.84984 5.87097 7.22016 5.87097ZM11.2847 11.2903H7.22016C6.84984 11.2903 6.54274 10.9832 6.54274 10.6129C6.54274 10.2426 6.84984 9.93548 7.22016 9.93548H11.2847C11.655 9.93548 11.9621 10.2426 11.9621 10.6129C11.9621 10.9832 11.655 11.2903 11.2847 11.2903Z",fill:"currentColor"},null,-1),Z=[M];function g(t,s,a,l,i,p){return e(),o("svg",n({width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},t.pti()),Z,16)}m.rendeLine truncated
+32
View File
@@ -0,0 +1,32 @@
import{s as p}from"./Bl_ZW1Xh.js";import{a3 as c,a4 as f}from"./DRtWvKfJ.js";var l=`
.p-icon {
display: inline-block;
}
.p-icon-spin {
-webkit-animation: p-icon-spin 2s infinite linear;
animation: p-icon-spin 2s infinite linear;
}
@-webkit-keyframes p-icon-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(359deg);
transform: rotate(359deg);
}
}
@keyframes p-icon-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
100% {
-webkit-transform: rotate(359deg);
transform: rotate(359deg);
}
}
`,u=c.extend({name:"baseicon",css:l});function i(t){"@babel/helpers - typeof";return i=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},i(t)}function o(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter(function(s){return Object.getOwnPropertyDescriptor(t,s).enumerable})),n.push.apply(n,r)}return n}function a(t){for(var e=1;e<arguments.length;e++){var n=arguments[e]!=null?arguments[e]:{};e%2?o(Object(n),!0).forEach(function(r){b(t,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):o(Object(n)).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(n,r))})}return t}function b(t,e,n){return e=m(e),e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function m(t){var e=y(t,"string");return i(e)=="symbol"?e:String(e)}function y(t,e){if(i(t)!="object"||!t)return t;var n=t[Symbol.toPrimitive];if(n!==void 0){var r=n.call(t,e||"default");if(i(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(t)}var O={name:"BaseIcon",extends:p,props:{label:{type:String,default:void 0},spin:{type:Boolean,default:!1}},style:u,methods:{pti:function(){var e=f.isEmpty(this.label);return a(a({},!this.isUnstyled&&{class:["p-icon",{"p-icon-spin":this.spin}]}),{},{role:e?void 0:"img","aria-label":e?void 0:this.label,"aria-hidden":e})}}};export{O as s};
+2
View File
@@ -0,0 +1,2 @@
import W from"./Cm7Dkme4.js";import{s as _}from"./Hku5IA12.js";import{s as z}from"./zU1BOWrX.js";import H from"./ChcErU2V.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"./DRtWvKfJ.js";import{s as q}from"./Bl_ZW1Xh.js";import"./CwRw2352.js";import"./B5fdn047.js";import"./BMCLKWyE.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
View File
@@ -0,0 +1 @@
import{s as e}from"./BMCLKWyE.js";import{t as r,v as o,aa as t,x as s}from"./DRtWvKfJ.js";var a={name:"TimesCircleIcon",extends:e},i=s("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M7 14C5.61553 14 4.26215 13.5895 3.11101 12.8203C1.95987 12.0511 1.06266 10.9579 0.532846 9.67879C0.00303296 8.3997 -0.13559 6.99224 0.134506 5.63437C0.404603 4.2765 1.07129 3.02922 2.05026 2.05026C3.02922 1.07129 4.2765 0.404603 5.63437 0.134506C6.99224 -0.13559 8.3997 0.00303296 9.67879 0.532846C10.9579 1.06266 12.0511 1.95987 12.8203 3.11101C13.5895 4.26215 14 5.61553 14 7C14 8.85652 13.2625 10.637 11.9497 11.9497C10.637 13.2625 8.85652 14 7 14ZM7 1.16667C5.84628 1.16667 4.71846 1.50879 3.75918 2.14976C2.79989 2.79074 2.05222 3.70178 1.61071 4.76768C1.16919 5.83358 1.05367 7.00647 1.27876 8.13803C1.50384 9.26958 2.05941 10.309 2.87521 11.1248C3.69102 11.9406 4.73042 12.4962 5.86198 12.7212C6.99353 12.9463 8.16642 12.8308 9.23232 12.3893C10.2982 11.9478 11.2093 11.2001 11.8502 10.2408C12.4912 9.28154 12.8333 8.15373 12.8333 7C12.8333 5.45291 12.2188 3.96918 11.1248 2.87521C10.0308 1.78125 8.5471 1.16667 7 1.16667ZM4.66662 9.91668C4.58998 9.91704 4.51404 9.90209 4.44325 9.87271C4.37246 9.84333 4.30826 9.8001 4.2544 9.74557C4.14516 9.6362 4.0838 9.48793 4.0838 9.33335C4.0838 9.17876 4.14516 9.0305 4.2544 8.92113L6.17553 7L4.25443 5.07891C4.15139 4.96832 4.09529 4.82207 4.09796 4.67094C4.10063 4.51982 4.16185 4.37563 4.26872 4.26876C4.3756 4.16188 4.51979 4.10066 4.67091 4.09799C4.82204 4.09532 4.96829 4.15142 5.07887 4.25446L6.99997 6.17556L8.92106 4.25446C9.03164 4.15142 9.1779 4.09532 9.32903 4.09799C9.48015 4.10066 9.62434 4.16188 9.73121 4.26876C9.83809 4.37563 9.89931 4.51982 9.90198 4.67094C9.90464 4.82207 9.84855 4.96832 9.74551 5.07891L7.82441 7L9.74554 8.92113C9.85478 9.0305 9.91614 9.17876 9.91614 9.33335C9.91614 9.48793 9.85478 9.6362 9.74554 9.74557C9.69168 9.8001 9.62748 9.84333 9.55669 9.87271C9.4859 9.90209 9.40996 9.91704 9.33332 9.91668C9.25668 9.91704 9.18073 9.90209 9.10995 9.87271C9.03916 9.84333 8.97495 9.8001 8.9211 9.74557L6.99997 7.82444L5.07884 9.74557C5.02499 9.8001 4.96078 9.84333 4.88999 9.87271C4.81921 9.90209 4.74326 9.91704 4.66662 9.91668Z",fill:"currentColor"},null,-1),n=[i];function l(C,p,c,d,m,v){return r(),o("svg",t({width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},C.pti()),n,16)}a.render=l;export{a as s};
+5
View File
@@ -0,0 +1,5 @@
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"./DRtWvKfJ.js";import{s as fe}from"./B5fdn047.js";import Ee from"./Bkz4NsfY.js";import{s as L}from"./Bl_ZW1Xh.js";import{s as Z,a as J,b as ee}from"./BL7cLbn_.js";import je from"./Gj9DruUc.js";import{s as Fe}from"./BKuF8g-Y.js";import{s as Ie}from"./DpeyYdwe.js";import{s as xe}from"./CTyYxNkn.js";import{s as De}from"./HF1fbsar.js";import"./BMCLKWyE.js";import"./CVFSkoIM.js";import"./B14_1DDx.js";import"./D2eV2xTx.js";import"./B7nXBdam.js";import"./CELf783E.js";import"./CFcFeTBy.js";import"./BnGLU8uI.js";import"./BMYrlhrg.js";import"./Cm7Dkme4.js";import"./CwRw2352.js";import"./Hku5IA12.js";import"./zU1BOWrX.js";import"./ChcErU2V.js";import"./GnhOacnB.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
View File
@@ -0,0 +1 @@
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"./DRtWvKfJ.js";import{s as N}from"./mwds7uJx.js";import{s as h}from"./BMCLKWyE.js";import{s as q}from"./B7nXBdam.js";import{s as F}from"./CFcFeTBy.js";import{s as W}from"./Bl_ZW1Xh.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
View File
@@ -0,0 +1 @@
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"./DRtWvKfJ.js";import{s as k}from"./Bl_ZW1Xh.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
View File
@@ -0,0 +1 @@
import{a3 as a,t as e,v as t,Y as s,aa as o}from"./DRtWvKfJ.js";import{s as n}from"./Bl_ZW1Xh.js";var p={root:"p-avatar-group p-component"},i=a.extend({name:"avatargroup",classes:p}),c={name:"BaseAvatarGroup",extends:n,style:i,provide:function(){return{$parentInstance:this}}},l={name:"AvatarGroup",extends:c,inheritAttrs:!1};function v(r,d,u,m,$,f){return e(),t("div",o({class:r.cx("root")},r.ptmi("root")),[s(r.$slots,"default")],16)}l.render=v;export{l as default};
+1
View File
@@ -0,0 +1 @@
import{l as L,u as A,a as J,_ as X}from"./lXe9j5XU.js";import j from"./Cm7Dkme4.js";import Z from"./Cls9geQy.js";import W from"./ChcErU2V.js";import ee from"./dbkXk2FM.js";import ne from"./CP0-jfu8.js";import{_ as oe,u as K,a as te}from"./DV2bnluu.js";import se from"./BfPKB-F8.js";import{c as N,t as r,v as $,Q as le,P as h,M as u,N as B,R as q,r as S,A as l,z as t,x as e,B as i,O as y,S as ie,T as re,U as ce,L as ae,V as ue,y as M,W as de}from"./DRtWvKfJ.js";import pe from"./BjAXeOBb.js";import ve from"./1T5oFhIQ.js";import _e from"./KMkrkpbk.js";import me from"./Cw-7pq-7.js";import fe from"./DMsZhJAp.js";const he={__name:"ServerSessionSummary",props:{sessions:{required:!0}},setup(C){const b=C,n=N(()=>L.groupBy(b.sessions||[],"status"));return(w,g)=>{const a=oe;return r(!0),$(B,null,le(u(n),(d,p)=>(r(),h(a,{key:p+d.length,status:p,value:`${p}: ${d.length}`},null,8,["status","value"]))),128)}}},be={class:"mb-4"},ye=e("b",null,"browser's local storage",-1),ge=e("br",null,null,-1),ke={class:"field"},Se=e("label",{for:"name"},"Name",-1),$e={key:0,class:"p-invalid"},Ce={class:"field"},we=e("label",{for:"connection-url"},"API URL",-1),xe={key:0,class:"p-invalid"},Ve={key:1,class:"p-invalid"},Ie=e("b",null,"https://",-1),Me=e("b",null,"http://",-1),Ne=e("br",null,null,-1),Ue=e("a",{href:"https://developer.mozilla.org/en-US/docs/Web/Security/Mixed_content#developer_console",target:"_blank"}," Mixed Content ",-1),De=e("b",null,"http://",-1),Te=e("br",null,null,-1),Fe=e("br",null,null,-1),Be=e("a",{href:"https://waha.devlike.pro/docs/how-to/security/#https",target:"_blank"},"🔒 Security ->",-1),Pe={class:"field"},Re=e("label",{for:"connection-key"},"API Key (optional)",-1),qe={__name:"ServerDialog",props:{visible:{},visibleModifiers:{},server:{},serverModifiers:{}},emits:["update:visible","update:server"],setup(C){const b=q(C,"visible"),n=q(C,"server"),w=A(),g=K(),a=S(!1),d=N(()=>{var s;const v=(s=n.value.connection)==null?void 0:s.url;return v?v.startsWith("http://")||v.startsWith("https://"):!1});async function p(){a.value=!0,!(!n.value.name||!d.value)&&(n.value.id?await g(w.editServer(n.value.id,n.value),"Server updated","Failed to update server"):await g(w.addServer(n.value),"Connected to server","Failed to connect to server"),f(),n.value={connection:{}})}function f(){a.value=!1,b.value=!1}const V=N(()=>{var s;const v=(s=n.value.connection)==null?void 0:s.url;return v?v.startsWith("http://"):!1}),U=N(()=>location.protocol==="https:");return(v,s)=>{const k=_e,I=W,D=me,_=j,c=fe;return r(),h(c,{visible:b.value,"onUpdate:visible":s[3]||(s[3]=m=>b.value=m),header:"Server",modal:!0,class:"p-fluid"},{footer:l(()=>[t(_,{label:"Cancel",icon:"pi pi-times",text:"",onClick:f,severity:"secondary"}),t(_,{label:n.value.id?"Save":"Connect",icon:{"pi pi-check":!!n.value.id,"pi pi-link":!n.value.id},text:"",onClick:p},null,8,["label","icon"])]),default:l(()=>[e("div",be,[t(k,{severity:"info"},{default:l(()=>[i(" Servers data is saved in your "),ye,i(". "),ge,i(" It's safe to put server API and key here. ")]),_:1})]),e("div",ke,[Se,t(I,{id:"name",modelValue:n.value.name,"onUpdate:modelValue":s[0]||(s[0]=m=>n.value.name=m),modelModifiers:{trim:!0},required:"true",autofocus:"",invalid:a.value&&!n.value.name},null,8,["modelValue","invalid"]),a.value&&!n.value.name?(r(),$("small",$e,"Name is required.")):y("",!0)]),e("div",Ce,[we,t(I,{id:"connection-url",modelValue:n.value.connection.url,"onUpdate:modelValue":s[1]||(s[1]=m=>n.value.connection.url=m),modelModifiers:{trim:!0},required:"true",invalid:a.value&&!u(d)},null,8,["modelValue","invalid"]),a.value&&!n.value.connection.url?(r(),$("small",xe,"URL is required.")):y("",!0),a.value&&!u(d)?(r(),$("small",Ve,"URL is not correct.")):y("",!0),u(U)&&u(V)?(r(),h(k,{key:2,severity:"error",class:"mt-2"},{default:l(()=>[i(" You're using "),Ie,i(" connection but server is using "),Me,i(" connection. "),Ne,i(" It's not possible to use it due to "),Ue]),_:1})):y("",!0),u(V)?(r(),h(k,{key:3,severity:"warn",class:"mt-2"},{default:l(()=>[i(" You're using "),De,i(" connection which is not secure. "),Te,i(" Kindly configure HTTPS Connection. "),Fe,i(" Read more about "),Be]),_:1})):y("",!0)]),e("div",Pe,[Re,t(D,{id:"connection-key",modelValue:n.value.connection.key,"onUpdate:modelValue":s[2]||(s[2]=m=>n.value.connection.key=m),modelModifiers:{trim:!0},feedback:!1,toggleMask:""},null,8,["modelValue"])])]),_:1},8,["visible"])}}},Le={class:"flex justify-content-between"},Ae={class:"flex align-items-center gap-1"},je=e("i",{class:"pi pi-server"},null,-1),We=e("span",{class:"mr-1"}," Servers ",-1),Ke=["disabled"],ze=e("i",{class:"pi pi-refresh"},null,-1),Oe=[ze],Ye={class:"flex justify-content-between flex-column sm:flex-row gap-2 sm:gap-0"},He=["href"],Ee=e("code",null," (",-1),Ge=e("code",null,")",-1),Qe={class:"flex gap-1"},Je={class:"flex flex-row gap-2 justify-content-end"},vn={__name:"ServerTable",setup(C){const b=ie();re();const n=A(),w=K(),{servers:g,refreshing:a}=ce(n),d=S({connection:{}}),p=S(Line truncated
+1
View File
@@ -0,0 +1 @@
import r from"./B-WZqzsx.js";import{P as t,t as o}from"./DRtWvKfJ.js";import"./XrWOLLJc.js";import"./yXaOlmbx.js";const i={__name:"AppSidebar",setup(e){return(p,a)=>(o(),t(r))}};export{i as default};
+1
View File
@@ -0,0 +1 @@
import t from"./BidU6Jgh.js";import{P as r,t as o}from"./DRtWvKfJ.js";import"./CTNwIyJm.js";import"./CFcFeTBy.js";import"./Bl_ZW1Xh.js";import"./BKuF8g-Y.js";import"./BMCLKWyE.js";import"./CDQwIvYz.js";import"./B7nXBdam.js";import"./BPIn4_kN.js";import"./VJFiI_rq.js";import"./lXe9j5XU.js";import"./e2o5KJyy.js";import"./yXaOlmbx.js";import"./CVYvFl41.js";import"./B_5QcCB8.js";import"./B-WZqzsx.js";import"./XrWOLLJc.js";import"./CaXCK0Oi.js";import"./Cm7Dkme4.js";import"./CwRw2352.js";import"./B5fdn047.js";import"./RfUbfTV3.js";import"./CGlsgAZL.js";import"./Db4mELQW.js";const C={__name:"default",setup(m){return(p,i)=>(o(),r(t))}};export{C as default};
+1
View File
@@ -0,0 +1 @@
import{s as i}from"./Bl_ZW1Xh.js";import{a3 as s,t as a,v as o,aa as l}from"./DRtWvKfJ.js";var p={root:{position:"relative"}},d={root:function(r){var t=r.props;return["p-skeleton p-component",{"p-skeleton-circle":t.shape==="circle","p-skeleton-none":t.animation==="none"}]}},u=s.extend({name:"skeleton",classes:d,inlineStyles:p}),c={name:"BaseSkeleton",extends:i,props:{shape:{type:String,default:"rectangle"},size:{type:String,default:null},width:{type:String,default:"100%"},height:{type:String,default:"1rem"},borderRadius:{type:String,default:null},animation:{type:String,default:"wave"}},style:u,provide:function(){return{$parentInstance:this}}},h={name:"Skeleton",extends:c,inheritAttrs:!1,computed:{containerStyle:function(){return this.size?{width:this.size,height:this.size,borderRadius:this.borderRadius}:{width:this.width,height:this.height,borderRadius:this.borderRadius}}}};function S(e,r,t,f,m,n){return a(),o("div",l({class:e.cx("root"),style:[e.sx("root"),n.containerStyle],"aria-hidden":"true"},e.ptmi("root")),null,16)}h.render=S;export{h as default};
+1
View File
@@ -0,0 +1 @@
import d from"./CTNwIyJm.js";import _ from"./VJFiI_rq.js";import y from"./CVYvFl41.js";import f from"./B_5QcCB8.js";import k from"./CaXCK0Oi.js";import{useLayout as b}from"./yXaOlmbx.js";import{r as h,G as M,c as g,v as C,x as r,z as i,W as A,N as L,i as S,t as E}from"./DRtWvKfJ.js";import"./CFcFeTBy.js";import"./Bl_ZW1Xh.js";import"./BKuF8g-Y.js";import"./BMCLKWyE.js";import"./CDQwIvYz.js";import"./B7nXBdam.js";import"./BPIn4_kN.js";import"./lXe9j5XU.js";import"./e2o5KJyy.js";import"./B-WZqzsx.js";import"./XrWOLLJc.js";import"./Cm7Dkme4.js";import"./CwRw2352.js";import"./B5fdn047.js";import"./RfUbfTV3.js";import"./CGlsgAZL.js";import"./Db4mELQW.js";const N={class:"layout-sidebar"},w={class:"layout-main-container"},$={class:"layout-main"},x=r("div",{class:"layout-mask"},null,-1),at={__name:"AppLayout",setup(B){const{layoutConfig:e,layoutState:o,isSidebarActive:n}=b(),a=h(null);M(n,t=>{t?u():m()});const c=g(()=>({"layout-theme-light":e.darkTheme.value==="light","layout-theme-dark":e.darkTheme.value==="dark","layout-overlay":e.menuMode.value==="overlay","layout-static":e.menuMode.value==="static","layout-static-inactive":o.staticMenuDesktopInactive.value&&e.menuMode.value==="static","layout-overlay-active":o.overlayMenuActive.value,"layout-mobile-active":o.staticMenuMobileActive.value,"p-ripple-disabled":e.ripple.value===!1})),u=()=>{a.value||(a.value=t=>{p(t)&&(o.overlayMenuActive.value=!1,o.staticMenuMobileActive.value=!1,o.menuHoverActive.value=!1)},document.addEventListener("click",a.value))},m=()=>{a.value&&(document.removeEventListener("click",a),a.value=null)},p=t=>{const l=document.querySelector(".layout-sidebar"),s=document.querySelector(".layout-menu-button");return!(l.isSameNode(t.target)||l.contains(t.target)||s.isSameNode(t.target)||s.contains(t.target))};return(t,l)=>{const s=S("router-view"),v=d;return E(),C(L,null,[r("div",{class:A(["layout-wrapper",c.value])},[i(_),r("div",N,[i(f)]),r("div",w,[r("div",$,[i(s)]),i(y)]),i(k),x],2),i(v,{position:"bottom-right"})],64)}}};export{at as default};
+1
View File
@@ -0,0 +1 @@
import E from"./Cm7Dkme4.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"./DRtWvKfJ.js";import{O as I}from"./CELf783E.js";import{s as P}from"./CFcFeTBy.js";import{s as D}from"./Bl_ZW1Xh.js";import"./CwRw2352.js";import"./B5fdn047.js";import"./BMCLKWyE.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
View File
@@ -0,0 +1 @@
import y from"./BfPKB-F8.js";import{_ as k}from"./BZfffP_l.js";import{_ as S}from"./7Ot06Xx0.js";import{u as w}from"./lXe9j5XU.js";import{c,L as V,v as r,x as t,y as n,M as s,N as l,O as a,P as N,B as h,z as u,t as i}from"./DRtWvKfJ.js";import"./Bl_ZW1Xh.js";import"./Cm7Dkme4.js";import"./CwRw2352.js";import"./B5fdn047.js";import"./BMCLKWyE.js";import"./Cls9geQy.js";import"./ChcErU2V.js";import"./dbkXk2FM.js";import"./CP0-jfu8.js";import"./DV2bnluu.js";import"./CZfe2Sfn.js";import"./BjAXeOBb.js";import"./CELf783E.js";import"./CFcFeTBy.js";import"./1T5oFhIQ.js";import"./Bkz4NsfY.js";import"./CVFSkoIM.js";import"./B14_1DDx.js";import"./BKuF8g-Y.js";import"./DpeyYdwe.js";import"./D2eV2xTx.js";import"./B7nXBdam.js";import"./BnGLU8uI.js";import"./BMYrlhrg.js";import"./Hku5IA12.js";import"./zU1BOWrX.js";import"./GnhOacnB.js";import"./CTyYxNkn.js";import"./CS5BvUDo.js";import"./Gj9DruUc.js";import"./DtAtnC1U.js";import"./b2TVTf9x.js";import"./BL7cLbn_.js";import"./KMkrkpbk.js";import"./CDQwIvYz.js";import"./BPIn4_kN.js";import"./Cw-7pq-7.js";import"./mwds7uJx.js";import"./DMsZhJAp.js";import"./_99QGe7X.js";import"./qKtqUDpn.js";import"./ZYKRgrtt.js";import"./Ca3-bi3b.js";import"./Dh-jSmv_.js";import"./CJA3DD2a.js";import"./Ce0F-GHP.js";import"./D2IhmS2j.js";import"./DOsY_IVn.js";import"./e2o5KJyy.js";const j={class:"grid"},B={class:"col-12 lg:col-6 xl:col-4"},O={class:"card mb-0"},P={class:"flex justify-content-between mb-3"},T=t("span",{class:"block text-900 font-medium mb-3"},"Sessions",-1),q={class:"text-900 font-medium text-xl"},D=t("div",{class:"flex align-items-center justify-content-center bg-green-50 border-round",style:{width:"2.5rem",height:"2.5rem"}},[t("i",{class:"pi pi-whatsapp text-green-500 text-xl"})],-1),E={class:"text-green-500 font-medium"},R=t("span",{class:"text-500"}," working",-1),C=t("span",{class:"text-500"},", ",-1),G={class:"text-orange-400 font-medium"},I=t("span",{class:"text-500"}," requires attention",-1),K=t("span",{class:"text-500"},", ",-1),L={class:"text-gray-400 font-medium"},M=t("span",{class:"text-500"}," stopped",-1),U={class:"col-12 lg:col-6 xl:col-4"},W={class:"card mb-0"},$={class:"flex justify-content-between mb-3"},z=t("span",{class:"block text-900 font-medium mb-3"},"Servers",-1),F={class:"text-900 font-medium text-xl"},A=t("div",{class:"flex align-items-center justify-content-center bg-purple-100 border-round",style:{width:"2.5rem",height:"2.5rem"}},[t("i",{class:"pi pi-server text-purple-500 text-xl"})],-1),H={class:"text-red-500 font-medium"},J=t("span",{class:"text-900"}," not connected",-1),Q=t("span",null," / ",-1),X={class:"text-green-500 font-medium"},Y=t("span",{class:"text-500"}," connected",-1),Z={class:"col-12 lg:col-6 xl:col-4"},tt={class:"card mb-0"},et={class:"flex justify-content-between mb-3"},st=t("span",{class:"block text-900 font-medium mb-3"}," Latest Version ",-1),ot={key:1,class:"text-900 font-medium text-xl"},nt={href:"https://waha.devlike.pro/docs/overview/changelog/",target:"_blank"},it=t("i",{class:"pi pi-external-link"},null,-1),rt=t("div",{class:"flex align-items-center justify-content-center bg-cyan-100 border-round",style:{width:"2.5rem",height:"2.5rem"}},[t("i",{class:"pi pi-cloud-download text-cyan-500 text-xl"})],-1),ct={class:"text-orange-400 font-medium"},lt=t("span",{class:"text-500"}," require updates",-1),at={key:1,class:"text-green-500 font-medium"},dt=t("i",{class:"pi text-green-500 pi-check-circle"},null,-1),mt={class:"col-12"},pt={class:"card"},_t={class:"col-12"},ht={class:"card"},fe={__name:"index",setup(ut){const o=w(),d=c(()=>o.servers.filter(e=>e.connected===!1)),x=c(()=>o.servers.filter(e=>e.connected===!0)),m=c(()=>o.servers.filter(e=>o.latestVersion&&e.version&&e.version.version!==o.latestVersion)),p=c(()=>o.allSessions.filter(e=>e.status!=="WORKING"&&e.status!=="STOPPED")),f=c(()=>o.allSessions.filter(e=>e.status==="WORKING")),_=c(()=>o.allSessions.filter(e=>e.status==="STOPPED"));return V(()=>{o.refresh()}),(e,xt)=>{const g=y,v=k,b=S;return i(),r("div",j,[t("div",B,[t("div",O,[t("div",P,[t("div",null,[T,t("div",q,n(s(o).allSessions.length),1)]),D]),t("span",E,n(s(f).length),1),R,s(p).length>0?(i(),r(l,{key:0},[C,t("span",G,n(s(p).length),1),I],64)):a("",!0),s(_).length>0?(i(),r(l,{key:1},[K,t("span",L,n(s(_).length),1),M],64)):a("",!0)])]),t("div",U,[t("div",W,[t("div",$,[t("div",null,[z,t("span",F,[t("span",null,n(s(o).servers.length),1)])]),A]),t("div",null,[s(d).length>0?(i(),r(l,{key:0},[t("span",H,n(s(d).length),1),J,Q],64)):a("",!0),t("span",X,n(s(x).length),1),Y])])]),t("div",Z,[t("div",tt,[t("div",et,[t("div",null,[st,t("div",null,[s(o).latestVersion?(i(),r("span",ot,[t("a",nt,[h(n(s(o).latestVersion)+" ",1),it])])):(i(),N(g,{key:0,width:"4rem"}))])]),rt]),s(m).length>0?(i(),r(l,{key:0},[t("span",ct,n(s(m).length),1),lt],64)):(i(),r("span",at,[dt,h(" Up to date ")]))])]),t("div",mt,[t("div",pt,[u(v)])]),t("div",_t,[t("div",ht,[u(b)])])])}}};export{fe as default};
+23
View File
@@ -0,0 +1,23 @@
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"./DRtWvKfJ.js";import{s as h}from"./Bl_ZW1Xh.js";import{s as ne,a as re,b as oe}from"./CVFSkoIM.js";import U from"./B14_1DDx.js";import ie from"./BMYrlhrg.js";import{s as se}from"./GnhOacnB.js";import"./BMCLKWyE.js";import"./BKuF8g-Y.js";import"./DpeyYdwe.js";import"./D2eV2xTx.js";import"./B5fdn047.js";import"./B7nXBdam.js";import"./CELf783E.js";import"./CFcFeTBy.js";import"./BnGLU8uI.js";import"./Cm7Dkme4.js";import"./CwRw2352.js";import"./Hku5IA12.js";import"./zU1BOWrX.js";import"./ChcErU2V.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
+2
View File
@@ -0,0 +1,2 @@
import{a3 as V,at as D,a4 as c,aa as $}from"./DRtWvKfJ.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
+64
View File
@@ -0,0 +1,64 @@
import{s as q}from"./B5fdn047.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"./DRtWvKfJ.js";import{s as x}from"./Bl_ZW1Xh.js";import"./BMCLKWyE.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
View File
@@ -0,0 +1 @@
import{a3 as b,a7 as m,aa as l,t as c,v as u,x as d,N as f,Q as I,y as v,P as g,ab as y,O as T}from"./DRtWvKfJ.js";import{s as S}from"./Bl_ZW1Xh.js";var k={root:function(e){var t=e.props;return["p-steps p-component",{"p-readonly":t.readonly}]},menu:"p-steps-list",menuitem:function(e){var t=e.instance,r=e.item,o=e.index;return["p-steps-item",{"p-highlight p-steps-current":t.isActive(o),"p-disabled":t.isItemDisabled(r,o)}]},action:"p-menuitem-link",step:"p-steps-number",label:"p-steps-title"},P=b.extend({name:"steps",classes:k}),D={name:"BaseSteps",extends:S,props:{id:{type:String},model:{type:Array,default:null},readonly:{type:Boolean,default:!0},activeStep:{type:Number,default:0}},style:P,provide:function(){return{$parentInstance:this}}},F={name:"Steps",extends:D,inheritAttrs:!1,emits:["update:activeStep","step-change"],data:function(){return{d_activeStep:this.activeStep}},watch:{activeStep:function(e){this.d_activeStep=e}},mounted:function(){var e=this.findFirstItem();e&&(e.tabIndex="0")},methods:{getPTOptions:function(e,t,r){return this.ptm(e,{context:{item:t,index:r,active:this.isActive(r),disabled:this.isItemDisabled(t,r)}})},onItemClick:function(e,t,r){if(this.disabled(t)||this.readonly){e.preventDefault();return}t.command&&t.command({originalEvent:e,item:t}),r!==this.d_activeStep&&(this.d_activeStep=r,this.$emit("update:activeStep",this.d_activeStep)),this.$emit("step-change",{originalEvent:e,index:r})},onItemKeydown:function(e,t){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"Tab":break;case"Enter":case"NumpadEnter":case"Space":{this.onItemClick(e,t),e.preventDefault();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?t.children[0]:null},findPrevItem:function(e){var t=e.parentElement.previousElementSibling;return t?t.children[0]:null},findFirstItem:function(){var e=m.findSingle(this.$refs.list,'[data-pc-section="menuitem"]');return e?e.children[0]:null},findLastItem:function(){var e=m.find(this.$refs.list,'[data-pc-section="menuitem"]');return e?e[e.length-1].children[0]:null},setFocusToMenuitem:function(e,t){e.tabIndex="-1",t.tabIndex="0",t.focus()},isActive:function(e){return e===this.d_activeStep},isItemDisabled:function(e,t){return this.disabled(e)||this.readonly&&!this.isActive(t)},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},label:function(e){return typeof e.label=="function"?e.label():e.label},getMenuItemProps:function(e,t){var r=this;return{action:l({class:this.cx("action"),onClick:function(i){return r.onItemClick(i,e)},onKeyDown:function(i){return r.onItemKeydown(i,e)}},this.getPTOptions("action",e,t)),step:l({class:this.cx("step")},this.getPTOptions("step",e,t)),label:l({class:this.cx("label")},this.getPTOptions("label",e,t))}}}},w=["id"],C=["aria-current","onClick","onKeydown","data-p-highlight","data-p-disabled"];function A(n,e,t,r,o,i){return c(),u("nav",l({id:n.id,class:n.cx("root")},n.ptmi("root")),[d("ol",l({ref:"list",class:n.cx("menu")},n.ptm("menu")),[(c(!0),u(f,null,I(n.model,function(s,a){return c(),u(f,{key:i.label(s)+"_"+a.toString()},[i.visible(s)?(c(),u("li",l({key:0,class:[n.cx("menuitem",{item:s,index:a}),s.class],style:s.style,"aria-current":i.isActive(a)?"step":void 0,onClick:function(p){return i.onItemClick(p,s,a)},onKeydown:function(p){return i.onItemKeydown(p,s,a)}},i.getPTOptions("menuitem",s,a),{"data-p-highlight":i.isActive(a),"data-p-disabled":i.isItemDisabled(s,a)}),[n.$slots.item?(c(),g(y(n.$slots.item),{key:1,item:s,index:a,active:a===o.d_activeStep,label:i.label(s),props:i.getMenuItemProps(s,a)},null,8,["item","index","active","label","props"])):(c(),u("span",l({key:0,class:n.cx("action")},i.getPTOptions("action",s,a)),[d("span",l({class:n.cx("step")},i.getPTOptions("step",s,a)),v(a+1),17),d("span",l({class:n.cx("label")},i.getPTOptions("label",s,a)),v(i.label(s)),17)],16))],16,C)):T("",!0)],64)}),128))],16)],16,w)}F.render=A;export{F as default};
+1
View File
@@ -0,0 +1 @@
import{a3 as m,a4 as u,t as p,v as c,N as v,Q as d,aa as a,x as i,Y as l,O as g}from"./DRtWvKfJ.js";import{s as f}from"./Bl_ZW1Xh.js";var y={root:function(s){var n=s.props;return["p-timeline p-component","p-timeline-"+n.align,"p-timeline-"+n.layout]},event:"p-timeline-event",opposite:"p-timeline-event-opposite",separator:"p-timeline-event-separator",marker:"p-timeline-event-marker",connector:"p-timeline-event-connector",content:"p-timeline-event-content"},T=m.extend({name:"timeline",classes:y}),h={name:"BaseTimeline",extends:f,props:{value:null,align:{mode:String,default:"left"},layout:{mode:String,default:"vertical"},dataKey:null},style:T,provide:function(){return{$parentInstance:this}}},O={name:"Timeline",extends:h,inheritAttrs:!1,methods:{getKey:function(s,n){return this.dataKey?u.resolveFieldData(s,this.dataKey):n},getPTOptions:function(s,n){return this.ptm(s,{context:{index:n,count:this.value.length}})}}};function k(e,s,n,P,K,r){return p(),c("div",a({class:e.cx("root")},e.ptmi("root")),[(p(!0),c(v,null,d(e.value,function(o,t){return p(),c("div",a({key:r.getKey(o,t),class:e.cx("event")},r.getPTOptions("event",t)),[i("div",a({class:e.cx("opposite",{index:t})},r.getPTOptions("opposite",t)),[l(e.$slots,"opposite",{item:o,index:t})],16),i("div",a({class:e.cx("separator")},r.getPTOptions("separator",t)),[l(e.$slots,"marker",{item:o,index:t},function(){return[i("div",a({class:e.cx("marker")},r.getPTOptions("marker",t)),null,16)]}),t!==e.value.length-1?l(e.$slots,"connector",{key:0,item:o,index:t},function(){return[i("div",a({class:e.cx("connector")},r.getPTOptions("connector",t)),null,16)]}):g("",!0)],16),i("div",a({class:e.cx("content")},r.getPTOptions("content",t)),[l(e.$slots,"content",{item:o,index:t})],16)],16)}),128))],16)}O.render=k;export{O as default};
+1
View File
@@ -0,0 +1 @@
import{u as o}from"./D0FGFGTv.js";import{_ as a,t as s,v as i,x as e,y as r,C as u,D as l}from"./DRtWvKfJ.js";const d=t=>(u("data-v-6fdef64d"),t=t(),l(),t),c={class:"font-sans antialiased bg-white dark:bg-black text-black dark:text-white grid min-h-screen place-content-center overflow-hidden"},p=d(()=>e("div",{class:"fixed -bottom-1/2 left-0 right-0 h-1/2 spotlight"},null,-1)),h={class:"max-w-520px text-center"},f=["textContent"],g=["textContent"],b={__name:"error-500",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},statusCode:{type:Number,default:500},statusMessage:{type:String,default:"Server error"},description:{type:String,default:"This page is temporarily unavailable."}},setup(t){const n=t;return o({title:`${n.statusCode} - ${n.statusMessage} | ${n.appName}`,script:[],style:[{children:'*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:var(--un-default-border-color, #e5e7eb)}:before,:after{--un-content:""}html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}h1{font-size:inherit;font-weight:inherit}h1,p{margin:0}*,:before,:after{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 rgb(0 0 0 / 0);--un-ring-shadow:0 0 rgb(0 0 0 / 0);--un-shadow-inset: ;--un-shadow:0 0 rgb(0 0 0 / 0);--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgb(147 197 253 / .5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }'}]}),(m,x)=>(s(),i("div",c,[p,e("div",h,[e("h1",{class:"text-8xl sm:text-10xl font-medium mb-8",textContent:r(t.statusCode)},null,8,f),e("p",{class:"text-xl px-8 sm:px-0 sm:text-4xl font-light mb-16 leading-tight",textContent:r(t.description)},null,8,g)])]))}},w=a(b,[["__scopeId","data-v-6fdef64d"]]);export{w as default};
+1
View File
@@ -0,0 +1 @@
import{s as v}from"./Bl_ZW1Xh.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"./DRtWvKfJ.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
View File
@@ -0,0 +1 @@
import{s as r}from"./BMCLKWyE.js";import{t,v as o,aa as n,x as C}from"./DRtWvKfJ.js";var p={name:"ExclamationTriangleIcon",extends:r},c=C("path",{d:"M13.4018 13.1893H0.598161C0.49329 13.189 0.390283 13.1615 0.299143 13.1097C0.208003 13.0578 0.131826 12.9832 0.0780112 12.8932C0.0268539 12.8015 0 12.6982 0 12.5931C0 12.4881 0.0268539 12.3848 0.0780112 12.293L6.47985 1.08982C6.53679 1.00399 6.61408 0.933574 6.70484 0.884867C6.7956 0.836159 6.897 0.810669 7 0.810669C7.103 0.810669 7.2044 0.836159 7.29516 0.884867C7.38592 0.933574 7.46321 1.00399 7.52015 1.08982L13.922 12.293C13.9731 12.3848 14 12.4881 14 12.5931C14 12.6982 13.9731 12.8015 13.922 12.8932C13.8682 12.9832 13.792 13.0578 13.7009 13.1097C13.6097 13.1615 13.5067 13.189 13.4018 13.1893ZM1.63046 11.989H12.3695L7 2.59425L1.63046 11.989Z",fill:"currentColor"},null,-1),h=C("path",{d:"M6.99996 8.78801C6.84143 8.78594 6.68997 8.72204 6.57787 8.60993C6.46576 8.49782 6.40186 8.34637 6.39979 8.18784V5.38703C6.39979 5.22786 6.46302 5.0752 6.57557 4.96265C6.68813 4.85009 6.84078 4.78686 6.99996 4.78686C7.15914 4.78686 7.31179 4.85009 7.42435 4.96265C7.5369 5.0752 7.60013 5.22786 7.60013 5.38703V8.18784C7.59806 8.34637 7.53416 8.49782 7.42205 8.60993C7.30995 8.72204 7.15849 8.78594 6.99996 8.78801Z",fill:"currentColor"},null,-1),v=C("path",{d:"M6.99996 11.1887C6.84143 11.1866 6.68997 11.1227 6.57787 11.0106C6.46576 10.8985 6.40186 10.7471 6.39979 10.5885V10.1884C6.39979 10.0292 6.46302 9.87658 6.57557 9.76403C6.68813 9.65147 6.84078 9.58824 6.99996 9.58824C7.15914 9.58824 7.31179 9.65147 7.42435 9.76403C7.5369 9.87658 7.60013 10.0292 7.60013 10.1884V10.5885C7.59806 10.7471 7.53416 10.8985 7.42205 11.0106C7.30995 11.1227 7.15849 11.1866 6.99996 11.1887Z",fill:"currentColor"},null,-1),u=[c,h,v];function _(e,l,a,i,s,d){return t(),o("svg",n({width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e.pti()),u,16)}p.render=_;var $={name:"InfoCircleIcon",extends:r},f=C("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M3.11101 12.8203C4.26215 13.5895 5.61553 14 7 14C8.85652 14 10.637 13.2625 11.9497 11.9497C13.2625 10.637 14 8.85652 14 7C14 5.61553 13.5895 4.26215 12.8203 3.11101C12.0511 1.95987 10.9579 1.06266 9.67879 0.532846C8.3997 0.00303296 6.99224 -0.13559 5.63437 0.134506C4.2765 0.404603 3.02922 1.07129 2.05026 2.05026C1.07129 3.02922 0.404603 4.2765 0.134506 5.63437C-0.13559 6.99224 0.00303296 8.3997 0.532846 9.67879C1.06266 10.9579 1.95987 12.0511 3.11101 12.8203ZM3.75918 2.14976C4.71846 1.50879 5.84628 1.16667 7 1.16667C8.5471 1.16667 10.0308 1.78125 11.1248 2.87521C12.2188 3.96918 12.8333 5.45291 12.8333 7C12.8333 8.15373 12.4912 9.28154 11.8502 10.2408C11.2093 11.2001 10.2982 11.9478 9.23232 12.3893C8.16642 12.8308 6.99353 12.9463 5.86198 12.7212C4.73042 12.4962 3.69102 11.9406 2.87521 11.1248C2.05941 10.309 1.50384 9.26958 1.27876 8.13803C1.05367 7.00647 1.16919 5.83358 1.61071 4.76768C2.05222 3.70178 2.79989 2.79074 3.75918 2.14976ZM7.00002 4.8611C6.84594 4.85908 6.69873 4.79698 6.58977 4.68801C6.48081 4.57905 6.4187 4.43185 6.41669 4.27776V3.88888C6.41669 3.73417 6.47815 3.58579 6.58754 3.4764C6.69694 3.367 6.84531 3.30554 7.00002 3.30554C7.15473 3.30554 7.3031 3.367 7.4125 3.4764C7.52189 3.58579 7.58335 3.73417 7.58335 3.88888V4.27776C7.58134 4.43185 7.51923 4.57905 7.41027 4.68801C7.30131 4.79698 7.1541 4.85908 7.00002 4.8611ZM7.00002 10.6945C6.84594 10.6925 6.69873 10.6304 6.58977 10.5214C6.48081 10.4124 6.4187 10.2652 6.41669 10.1111V6.22225C6.41669 6.06754 6.47815 5.91917 6.58754 5.80977C6.69694 5.70037 6.84531 5.63892 7.00002 5.63892C7.15473 5.63892 7.3031 5.70037 7.4125 5.80977C7.52189 5.91917 7.58335 6.06754 7.58335 6.22225V10.1111C7.58134 10.2652 7.51923 10.4124 7.41027 10.5214C7.30131 10.6304 7.1541 10.6925 7.00002 10.6945Z",fill:"currentColor"},null,-1),w=[f];function m(e,l,a,i,s,d){return t(),o("svg",n({width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e.pti()),w,16)}$.render=m;export{p as a,$ as s};
+1
View File
@@ -0,0 +1 @@
import{ax as r}from"./DRtWvKfJ.js";var e=r();export{e as O};
Loaded 100 of 623 files, more files were not shown because too many files have changed in this diff. Show more