- Export Lista

- Ordinamento
- PDF Risolto Salvataggio ed invio al server direttamente.
This commit is contained in:
Surya Paolo
2025-05-08 23:32:13 +02:00
parent ef36cd5e11
commit f9d73ae836
32 changed files with 1138 additions and 756 deletions

4
.env
View File

@@ -1,6 +1,6 @@
VITE_APP_VERSION="1.2.39" VITE_APP_VERSION="1.2.40"
VITE_LANG_DEFAULT="it" VITE_LANG_DEFAULT="it"
VITE_PAO_APP_ID="KKPPAA5KJK435J3KSS9F9D8S9F8SD98F9SDF" VITE_PAO_APP_ID="KKPPAA5KJK435J3KSS9F9D8S9F8SD98F9SDF"
VITE_SERVICE_WORKER_FILE="sw-1.2.39.js" VITE_SERVICE_WORKER_FILE="sw-1.2.40.js"
VITE_PROJECT_ID_MAIN="5cc0a13fe5c9d156728f400a" VITE_PROJECT_ID_MAIN="5cc0a13fe5c9d156728f400a"
VITE_VUE_ROUTER_MODE="history" VITE_VUE_ROUTER_MODE="history"

View File

@@ -13,5 +13,8 @@
"typescript.tsdk": "node_modules/typescript/lib", "typescript.tsdk": "node_modules/typescript/lib",
"[vue]": { "[vue]": {
"editor.defaultFormatter": "esbenp.prettier-vscode" "editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
} }
} }

View File

@@ -10,7 +10,7 @@
<meta name="description" content="<%= productDescription %>"> <meta name="description" content="<%= productDescription %>">
<meta name="format-detection" content="telephone=no"> <meta name="format-detection" content="telephone=no">
<meta name="msapplication-tap-highlight" content="no"> <meta name="msapplication-tap-highlight" content="no">
<meta name="version" content="1.2.39"> <meta name="version" content="1.2.40">
<meta name="viewport" <meta name="viewport"
content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width<% if (ctx.mode.cordova || ctx.mode.capacitor) { %>, viewport-fit=cover<% } %>"> content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width<% if (ctx.mode.cordova || ctx.mode.capacitor) { %>, viewport-fit=cover<% } %>">

View File

@@ -1,6 +1,6 @@
{ {
"name": "gruppomacro", "name": "gruppomacro",
"version": "1.2.39", "version": "1.2.40",
"description": "Gruppo Macro", "description": "Gruppo Macro",
"productName": "Gruppo Macro", "productName": "Gruppo Macro",
"author": "Surya", "author": "Surya",
@@ -9,20 +9,20 @@
"license": "MIT", "license": "MIT",
"type": "module", "type": "module",
"scripts": { "scripts": {
"dev": "PORT=8089 APP_VERSION='1.2.39' quasar dev", "dev": "PORT=8089 APP_VERSION='1.2.40' quasar dev",
"dev_noCheck": "SKIP_TSC=true quasar dev", "dev_noCheck": "SKIP_TSC=true quasar dev",
"build": "quasar build", "build": "quasar build",
"buildpwa": "NODE_ENV=production APP_VERSION='1.2.39' quasar build -m pwa", "buildpwa": "NODE_ENV=production APP_VERSION='1.2.40' quasar build -m pwa",
"buildpwatest": "NODE_ENV=production APP_VERSION='1.2.39' quasar build -m pwa", "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.40' quasar build -m pwa",
"type-check": "vue-tsc --noEmit", "type-check": "vue-tsc --noEmit",
"type-check:watch": "vue-tsc --noEmit --watch", "type-check:watch": "vue-tsc --noEmit --watch",
"buildspa": "APP_VERSION='1.2.39' quasar build -m spa", "buildspa": "APP_VERSION='1.2.40' quasar build -m spa",
"lint": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\"", "lint": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\"",
"lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt",
"lintfileNoJS": "eslint --ext .ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfileNoJS": "eslint --ext .ts,.vue --ignore-path .gitignore ./ > file.out.txt",
"fix": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\" --ignore-pattern .gitignore ./ --fix > file.out.txt", "fix": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\" --ignore-pattern .gitignore ./ --fix > file.out.txt",
"pwa": "NODE_ENV=development PORT=8099 APP_VERSION='1.2.39' quasar dev -m pwa", "pwa": "NODE_ENV=development PORT=8099 APP_VERSION='1.2.40' quasar dev -m pwa",
"spa": "NODE_ENV=development PORT=8089 APP_VERSION='1.2.39' quasar dev", "spa": "NODE_ENV=development PORT=8089 APP_VERSION='1.2.40' quasar dev",
"debug": "quasar dev --mode debug", "debug": "quasar dev --mode debug",
"test": "echo \"No test specified\" && exit 0", "test": "echo \"No test specified\" && exit 0",
"generate-sw": "workbox generateSW workbox-config.js", "generate-sw": "workbox generateSW workbox-config.js",
@@ -52,13 +52,16 @@
"echarts": "5.6.0", "echarts": "5.6.0",
"eslint-plugin-n": "^17.16.2", "eslint-plugin-n": "^17.16.2",
"eslint-plugin-quasar": "^1.1.0", "eslint-plugin-quasar": "^1.1.0",
"file-saver": "^2.0.5",
"graphql": "^16.10.0", "graphql": "^16.10.0",
"graphql-tag": "^2.12.6", "graphql-tag": "^2.12.6",
"gsap": "^3.12.7", "gsap": "^3.12.7",
"html2canvas": "^1.4.1",
"html2pdf.js": "^0.10.3", "html2pdf.js": "^0.10.3",
"jquery": "^3.7.1", "jquery": "^3.7.1",
"js-cookie": "^3.0.5", "js-cookie": "^3.0.5",
"jsbarcode": "^3.11.6", "jsbarcode": "^3.11.6",
"jspdf": "^3.0.1",
"leaflet": "^1.9.4", "leaflet": "^1.9.4",
"leaflet-routing-machine": "^3.2.12", "leaflet-routing-machine": "^3.2.12",
"leaflet.markercluster": "^1.5.3", "leaflet.markercluster": "^1.5.3",
@@ -66,6 +69,7 @@
"lodash": "^4.17.21", "lodash": "^4.17.21",
"normalize.css": "^8.0.1", "normalize.css": "^8.0.1",
"nprogress": "^0.2.0", "nprogress": "^0.2.0",
"pdf-lib": "^1.17.1",
"pinia": "^3.0.1", "pinia": "^3.0.1",
"qrcode-vue3": "^1.7.1", "qrcode-vue3": "^1.7.1",
"quasar": "^2.18.1", "quasar": "^2.18.1",

View File

@@ -1,6 +1,6 @@
{ {
"name": "cnm", "name": "cnm",
"version": "1.2.39", "version": "1.2.40",
"description": "Comunita Nuovo Mondo", "description": "Comunita Nuovo Mondo",
"productName": "ComunitaNuovoMondo", "productName": "ComunitaNuovoMondo",
"author": "Surya", "author": "Surya",
@@ -9,7 +9,7 @@
"license": "MIT", "license": "MIT",
"type": "module", "type": "module",
"scripts": { "scripts": {
"dev": "PORT=8083 APP_VERSION='1.2.39' quasar dev", "dev": "PORT=8083 APP_VERSION='1.2.40' quasar dev",
"dev_noCheck": "SKIP_TSC=true quasar dev", "dev_noCheck": "SKIP_TSC=true quasar dev",
"build": "quasar build", "build": "quasar build",
"buildpwa": "NODE_ENV=production quasar build -m pwa", "buildpwa": "NODE_ENV=production quasar build -m pwa",
@@ -21,8 +21,8 @@
"lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt",
"lintfileNoJS": "eslint --ext .ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfileNoJS": "eslint --ext .ts,.vue --ignore-path .gitignore ./ > file.out.txt",
"fix": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\" --ignore-pattern .gitignore ./ --fix > file.out.txt", "fix": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\" --ignore-pattern .gitignore ./ --fix > file.out.txt",
"pwa": "NODE_ENV=development PORT=8093 APP_VERSION='1.2.39' quasar dev -m pwa", "pwa": "NODE_ENV=development PORT=8093 APP_VERSION='1.2.40' quasar dev -m pwa",
"spa": "NODE_ENV=development PORT=8083 APP_VERSION='1.2.39' quasar dev", "spa": "NODE_ENV=development PORT=8083 APP_VERSION='1.2.40' quasar dev",
"debug": "quasar dev --mode debug", "debug": "quasar dev --mode debug",
"test": "echo \"No test specified\" && exit 0", "test": "echo \"No test specified\" && exit 0",
"generate-sw": "workbox generateSW workbox-config.js", "generate-sw": "workbox generateSW workbox-config.js",

View File

@@ -1,6 +1,6 @@
{ {
"name": "freeplanet", "name": "freeplanet",
"version": "1.2.39", "version": "1.2.40",
"description": "freeplanet", "description": "freeplanet",
"productName": "freeplanet", "productName": "freeplanet",
"author": "Surya", "author": "Surya",
@@ -9,11 +9,11 @@
"license": "MIT", "license": "MIT",
"type": "module", "type": "module",
"scripts": { "scripts": {
"dev": "PORT=8087 APP_VERSION='1.2.39' quasar dev", "dev": "PORT=8087 APP_VERSION='1.2.40' quasar dev",
"dev_noCheck": "SKIP_TSC=true quasar dev", "dev_noCheck": "SKIP_TSC=true quasar dev",
"build": "quasar build", "build": "quasar build",
"buildpwa": "NODE_ENV=production APP_VERSION='1.2.39' quasar build -m pwa", "buildpwa": "NODE_ENV=production APP_VERSION='1.2.40' quasar build -m pwa",
"buildpwatest": "NODE_ENV=production APP_VERSION='1.2.39' quasar build -m pwa", "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.40' quasar build -m pwa",
"type-check": "vue-tsc --noEmit", "type-check": "vue-tsc --noEmit",
"type-check:watch": "vue-tsc --noEmit --watch", "type-check:watch": "vue-tsc --noEmit --watch",
"buildspa": "quasar build -m spa", "buildspa": "quasar build -m spa",
@@ -21,8 +21,8 @@
"lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt",
"lintfileNoJS": "eslint --ext .ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfileNoJS": "eslint --ext .ts,.vue --ignore-path .gitignore ./ > file.out.txt",
"fix": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\" --ignore-pattern .gitignore ./ --fix > file.out.txt", "fix": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\" --ignore-pattern .gitignore ./ --fix > file.out.txt",
"pwa": "NODE_ENV=development PORT=8097 APP_VERSION='1.2.39' quasar dev -m pwa", "pwa": "NODE_ENV=development PORT=8097 APP_VERSION='1.2.40' quasar dev -m pwa",
"spa": "NODE_ENV=development PORT=8087 APP_VERSION='1.2.39' quasar dev", "spa": "NODE_ENV=development PORT=8087 APP_VERSION='1.2.40' quasar dev",
"debug": "quasar dev --mode debug", "debug": "quasar dev --mode debug",
"test": "echo \"No test specified\" && exit 0", "test": "echo \"No test specified\" && exit 0",
"generate-sw": "workbox generateSW workbox-config.js", "generate-sw": "workbox generateSW workbox-config.js",

View File

@@ -1,6 +1,6 @@
{ {
"name": "gruppomacro", "name": "gruppomacro",
"version": "1.2.39", "version": "1.2.40",
"description": "Gruppo Macro", "description": "Gruppo Macro",
"productName": "Gruppo Macro", "productName": "Gruppo Macro",
"author": "Surya", "author": "Surya",
@@ -9,20 +9,20 @@
"license": "MIT", "license": "MIT",
"type": "module", "type": "module",
"scripts": { "scripts": {
"dev": "PORT=8089 APP_VERSION='1.2.39' quasar dev", "dev": "PORT=8089 APP_VERSION='1.2.40' quasar dev",
"dev_noCheck": "SKIP_TSC=true quasar dev", "dev_noCheck": "SKIP_TSC=true quasar dev",
"build": "quasar build", "build": "quasar build",
"buildpwa": "NODE_ENV=production APP_VERSION='1.2.39' quasar build -m pwa", "buildpwa": "NODE_ENV=production APP_VERSION='1.2.40' quasar build -m pwa",
"buildpwatest": "NODE_ENV=production APP_VERSION='1.2.39' quasar build -m pwa", "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.40' quasar build -m pwa",
"type-check": "vue-tsc --noEmit", "type-check": "vue-tsc --noEmit",
"type-check:watch": "vue-tsc --noEmit --watch", "type-check:watch": "vue-tsc --noEmit --watch",
"buildspa": "APP_VERSION='1.2.39' quasar build -m spa", "buildspa": "APP_VERSION='1.2.40' quasar build -m spa",
"lint": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\"", "lint": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\"",
"lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt",
"lintfileNoJS": "eslint --ext .ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfileNoJS": "eslint --ext .ts,.vue --ignore-path .gitignore ./ > file.out.txt",
"fix": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\" --ignore-pattern .gitignore ./ --fix > file.out.txt", "fix": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\" --ignore-pattern .gitignore ./ --fix > file.out.txt",
"pwa": "NODE_ENV=development PORT=8099 APP_VERSION='1.2.39' quasar dev -m pwa", "pwa": "NODE_ENV=development PORT=8099 APP_VERSION='1.2.40' quasar dev -m pwa",
"spa": "NODE_ENV=development PORT=8089 APP_VERSION='1.2.39' quasar dev", "spa": "NODE_ENV=development PORT=8089 APP_VERSION='1.2.40' quasar dev",
"debug": "quasar dev --mode debug", "debug": "quasar dev --mode debug",
"test": "echo \"No test specified\" && exit 0", "test": "echo \"No test specified\" && exit 0",
"generate-sw": "workbox generateSW workbox-config.js", "generate-sw": "workbox generateSW workbox-config.js",

View File

@@ -1,6 +1,6 @@
{ {
"name": "kolibrilab", "name": "kolibrilab",
"version": "1.2.39", "version": "1.2.40",
"description": "kolibrilab", "description": "kolibrilab",
"productName": "kolibrilab", "productName": "kolibrilab",
"author": "Surya Paolo", "author": "Surya Paolo",
@@ -8,11 +8,11 @@
"keywords": [], "keywords": [],
"license": "MIT", "license": "MIT",
"scripts": { "scripts": {
"dev": "PORT=8083 APP_VERSION='1.2.39' quasar dev", "dev": "PORT=8083 APP_VERSION='1.2.40' quasar dev",
"dev_noCheck": "SKIP_TSC=true quasar dev", "dev_noCheck": "SKIP_TSC=true quasar dev",
"build": "quasar build", "build": "quasar build",
"buildpwa": "NODE_ENV=production APP_VERSION='1.2.39' quasar build -m pwa", "buildpwa": "NODE_ENV=production APP_VERSION='1.2.40' quasar build -m pwa",
"buildpwatest": "NODE_ENV=production APP_VERSION='1.2.39' quasar build -m pwa", "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.40' quasar build -m pwa",
"type-check": "vue-tsc --noEmit", "type-check": "vue-tsc --noEmit",
"type-check:watch": "vue-tsc --noEmit --watch", "type-check:watch": "vue-tsc --noEmit --watch",
"buildspa": "quasar build -m spa", "buildspa": "quasar build -m spa",
@@ -20,8 +20,8 @@
"lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt",
"lintfileNoJS": "eslint --ext .ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfileNoJS": "eslint --ext .ts,.vue --ignore-path .gitignore ./ > file.out.txt",
"fix": "eslint --ext .ts,.vue --ignore-path .gitignore ./ --fix > file.out.txt", "fix": "eslint --ext .ts,.vue --ignore-path .gitignore ./ --fix > file.out.txt",
"pwa": "NODE_ENV=development PORT=8093 APP_VERSION='1.2.39' quasar dev -m pwa", "pwa": "NODE_ENV=development PORT=8093 APP_VERSION='1.2.40' quasar dev -m pwa",
"spa": "NODE_ENV=development PORT=8083 APP_VERSION='1.2.39' quasar dev", "spa": "NODE_ENV=development PORT=8083 APP_VERSION='1.2.40' quasar dev",
"spanorefresh": "NODE_ENV=development NODE_OPTIONS=--max_old_space_size=4096 DEBUG=v8:* quasar dev -m spa", "spanorefresh": "NODE_ENV=development NODE_OPTIONS=--max_old_space_size=4096 DEBUG=v8:* quasar dev -m spa",
"test": "echo \"No test specified\" && exit 0", "test": "echo \"No test specified\" && exit 0",
"generate-sw": "workbox generateSW workbox-config.js" "generate-sw": "workbox generateSW workbox-config.js"

View File

@@ -1,6 +1,6 @@
{ {
"name": "piuchebuono", "name": "piuchebuono",
"version": "1.2.39", "version": "1.2.40",
"description": "PiuCheBuono", "description": "PiuCheBuono",
"productName": "PiuCheBuono", "productName": "PiuCheBuono",
"author": "Surya", "author": "Surya",
@@ -9,11 +9,11 @@
"license": "MIT", "license": "MIT",
"type": "module", "type": "module",
"scripts": { "scripts": {
"dev": "PORT=8085 APP_VERSION='1.2.39' quasar dev", "dev": "PORT=8085 APP_VERSION='1.2.40' quasar dev",
"dev_noCheck": "SKIP_TSC=true quasar dev", "dev_noCheck": "SKIP_TSC=true quasar dev",
"build": "quasar build", "build": "quasar build",
"buildpwa": "NODE_ENV=production APP_VERSION='1.2.39' quasar build -m pwa", "buildpwa": "NODE_ENV=production APP_VERSION='1.2.40' quasar build -m pwa",
"buildpwatest": "NODE_ENV=production APP_VERSION='1.2.39' quasar build -m pwa", "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.40' quasar build -m pwa",
"type-check": "vue-tsc --noEmit", "type-check": "vue-tsc --noEmit",
"type-check:watch": "vue-tsc --noEmit --watch", "type-check:watch": "vue-tsc --noEmit --watch",
"buildspa": "quasar build -m spa", "buildspa": "quasar build -m spa",
@@ -21,8 +21,8 @@
"lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt",
"lintfileNoJS": "eslint --ext .ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfileNoJS": "eslint --ext .ts,.vue --ignore-path .gitignore ./ > file.out.txt",
"fix": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\" --ignore-pattern .gitignore ./ --fix > file.out.txt", "fix": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\" --ignore-pattern .gitignore ./ --fix > file.out.txt",
"pwa": "NODE_ENV=development PORT=8085 APP_VERSION='1.2.39' quasar dev -m pwa", "pwa": "NODE_ENV=development PORT=8085 APP_VERSION='1.2.40' quasar dev -m pwa",
"spa": "NODE_ENV=development PORT=8085 APP_VERSION='1.2.39' quasar dev", "spa": "NODE_ENV=development PORT=8085 APP_VERSION='1.2.40' quasar dev",
"debug": "quasar dev --mode debug", "debug": "quasar dev --mode debug",
"test": "echo \"No test specified\" && exit 0", "test": "echo \"No test specified\" && exit 0",
"generate-sw": "workbox generateSW workbox-config.js", "generate-sw": "workbox generateSW workbox-config.js",

View File

@@ -1,6 +1,6 @@
{ {
"name": "riso", "name": "riso",
"version": "1.2.39", "version": "1.2.40",
"description": "Siamo la Rete Italiana di Scambio Orizzontale, abbiamo creato questa piattaforma per metterla al servizio di chi vuole riscoprire il valore della condivisione e della cooperazione. Valori semplici e profondi che ci aiutano a ritrovare il Senso della Vita, perduto in questa società consumista, e riporti quei Sani Pricìpi Naturali ed Umani di Fratellanza che intere popolazioni antiche conoscevano bene.", "description": "Siamo la Rete Italiana di Scambio Orizzontale, abbiamo creato questa piattaforma per metterla al servizio di chi vuole riscoprire il valore della condivisione e della cooperazione. Valori semplici e profondi che ci aiutano a ritrovare il Senso della Vita, perduto in questa società consumista, e riporti quei Sani Pricìpi Naturali ed Umani di Fratellanza che intere popolazioni antiche conoscevano bene.",
"productName": "Riso", "productName": "Riso",
"author": "Surya", "author": "Surya",
@@ -9,11 +9,11 @@
"license": "MIT", "license": "MIT",
"type": "module", "type": "module",
"scripts": { "scripts": {
"dev": "APP_VERSION='1.2.39' PORT=8084 quasar dev", "dev": "APP_VERSION='1.2.40' PORT=8084 quasar dev",
"dev_noCheck": "SKIP_TSC=true quasar dev", "dev_noCheck": "SKIP_TSC=true quasar dev",
"build": "quasar build", "build": "quasar build",
"buildpwa": "NODE_ENV=production APP_VERSION='1.2.39' quasar build -m pwa", "buildpwa": "NODE_ENV=production APP_VERSION='1.2.40' quasar build -m pwa",
"buildpwatest": "NODE_ENV=production APP_VERSION='1.2.39' quasar build -m pwa", "buildpwatest": "NODE_ENV=production APP_VERSION='1.2.40' quasar build -m pwa",
"type-check": "vue-tsc --noEmit", "type-check": "vue-tsc --noEmit",
"type-check:watch": "vue-tsc --noEmit --watch", "type-check:watch": "vue-tsc --noEmit --watch",
"buildspa": "quasar build -m spa", "buildspa": "quasar build -m spa",
@@ -21,8 +21,8 @@
"lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfile": "eslint --ext .js,.ts,.vue --ignore-path .gitignore ./ > file.out.txt",
"lintfileNoJS": "eslint --ext .ts,.vue --ignore-path .gitignore ./ > file.out.txt", "lintfileNoJS": "eslint --ext .ts,.vue --ignore-path .gitignore ./ > file.out.txt",
"fix": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\" --ignore-pattern .gitignore ./ --fix > file.out.txt", "fix": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\" --ignore-pattern .gitignore ./ --fix > file.out.txt",
"pwa": "NODE_ENV=development PORT=8094 APP_VERSION='1.2.39' quasar dev -m pwa", "pwa": "NODE_ENV=development PORT=8094 APP_VERSION='1.2.40' quasar dev -m pwa",
"spa": "NODE_ENV=development PORT=8084 APP_VERSION='1.2.39' quasar dev", "spa": "NODE_ENV=development PORT=8084 APP_VERSION='1.2.40' quasar dev",
"debug": "quasar dev --mode debug", "debug": "quasar dev --mode debug",
"test": "echo \"No test specified\" && exit 0", "test": "echo \"No test specified\" && exit 0",
"generate-sw": "workbox generateSW workbox-config.js", "generate-sw": "workbox generateSW workbox-config.js",

View File

@@ -3,7 +3,7 @@
/* global workbox */ /* global workbox */
/* global cfgenv */ /* global cfgenv */
const VITE_APP_VERSION = "1.2.39"; const VITE_APP_VERSION = "1.2.40";
// Costanti di configurazione // Costanti di configurazione
const DYNAMIC_CACHE = 'dynamic-cache-v2'; const DYNAMIC_CACHE = 'dynamic-cache-v2';

View File

@@ -21,7 +21,7 @@
:finder="finder" :finder="finder"
labelElemFind="trovati" labelElemFind="trovati"
:choose_visutype="visuType" :choose_visutype="visuType"
:butt_modif_new="tools.isAdmin()" :butt_modif_new="!tools.isUtente()"
:noresultLabel="t('grid.nosearchfound')" :noresultLabel="t('grid.nosearchfound')"
:arrfilters="arrfilterand" :arrfilters="arrfilterand"
:filtercustom="filtercustom" :filtercustom="filtercustom"

View File

@@ -97,9 +97,9 @@
@click="click_opendetail()" @click="click_opendetail()"
/> />
</a> </a>
<div class="q-ma-sm"> <div class="q-ma-sm no-print">
<div <div
class="row absolute-top-left semi-transparent" class="row absolute-top-left semi-transparent "
style="z-index: 10" style="z-index: 10"
> >
<q-btn-dropdown <q-btn-dropdown

View File

@@ -69,6 +69,11 @@ export default defineComponent({
required: false, required: false,
default: 0, default: 0,
}, },
enableExport: {
type: Boolean,
required: false,
default: false,
},
}, },
components: { components: {
CMyFieldDb, CGridTableRec, CTitlePage, CMyFieldDb, CGridTableRec, CTitlePage,

View File

@@ -36,6 +36,7 @@
:heightcarousel="heightcarousel" :heightcarousel="heightcarousel"
@clickButtBar="clickButtBar" @clickButtBar="clickButtBar"
:tablesList="gettablesList()" :tablesList="gettablesList()"
:enableExport="enableExport"
> >
</CGridTableRec> </CGridTableRec>
</div> </div>

View File

@@ -2606,16 +2606,17 @@ export default defineComponent({
// console.log('row', serverData.value) // console.log('row', serverData.value)
// console.log('mycolumns.value', mycolumns.value) // console.log('mycolumns.value', mycolumns.value)
// naive encoding to csv format // naive encoding to csv format
const content = [mycolumns.value.map((col: any) => wrapCsvValue(col.label))].concat( const headers = mycolumns.value.map((col: any) => wrapCsvValue(col.label));
serverData.value.map((row: any) => mycolumns.value.map((col: any) => wrapCsvValue( const rows = serverData.value.map((row: any) =>
typeof col.field === 'function' mycolumns.value.map((col: any) => {
const value = typeof col.field === 'function'
? col.field(row) ? col.field(row)
: tools.getValue(row, col.field, col.subfield), : tools.getValue(row, col.field, col.subfield);
col.format, return wrapCsvValue(value, col.format, row, col);
row, }).join('|')
col );
)).join(','))
).join('\r\n') const content = [headers.join('|'), ...rows].join('\r\n');
const status = exportFile( const status = exportFile(
'export-' + mytable.value + '_' + tools.getstrYYMMDDHHMMDateTime(tools.getDateNow()) + '.csv', 'export-' + mytable.value + '_' + tools.getstrYYMMDDHHMMDateTime(tools.getDateNow()) + '.csv',

View File

@@ -2264,7 +2264,7 @@ export default defineComponent({
col.format, col.format,
row, row,
col col
)).join(',')) )).join('|'))
).join('\r\n') ).join('\r\n')
const status = exportFile( const status = exportFile(

View File

@@ -1595,6 +1595,14 @@
@update:model-value="modifElem" @update:model-value="modifElem"
> >
</q-toggle> </q-toggle>
<q-toggle
v-model="myel.catalogo.showListaCollane"
color="positive"
icon="fas fa-file-pdf"
label="Mostra Lista Collane"
@update:model-value="modifElem"
>
</q-toggle>
<q-toggle <q-toggle
v-model="myel.catalogo.pdf" v-model="myel.catalogo.pdf"

View File

@@ -357,7 +357,7 @@
<q-tab-panel name="lista"> <q-tab-panel name="lista">
<CGridOriz table="catalogs" :tipovisu="costanti.VISUTABLE_TABLELIST" :prop_search="true" :finder="true" <CGridOriz table="catalogs" :tipovisu="costanti.VISUTABLE_TABLELIST" :prop_search="true" :finder="true"
:isCatalogoGenerale="myel.parambool3" :isCatalogoGenerale="myel.parambool3"
:showMap="false" :prop_modif="tools.isAdmin()"></CGridOriz> :showMap="false" :prop_modif="tools.isAdmin()" :enableExport="true"></CGridOriz>
</q-tab-panel> </q-tab-panel>
<q-tab-panel name="griglia"> <q-tab-panel name="griglia">

View File

@@ -2,7 +2,7 @@
<q-card <q-card
v-if="myrec" v-if="myrec"
bordered bordered
class="full-height flex flex-column" class="full-height flex flex-column justify-evenly"
:style="`width: ` + opt.widthcard + `; ` + (opt.heightcard ? `height: ` + opt.heightcard + `;` : '')" :style="`width: ` + opt.widthcard + `; ` + (opt.heightcard ? `height: ` + opt.heightcard + `;` : '')"
> >
<q-img <q-img

View File

@@ -93,35 +93,6 @@ export default defineComponent({
}) })
async function mounted() {
console.log('mounted CProductTable')
loading.value = true
optionscatalogo.value = {
maxlength: props.scheda?.testo_bottom?.maxlength
}
const savedColumns = tools.getCookie("selColCat_2");
if (savedColumns) {
selectedColumns.value = savedColumns;
}
const savedSortAttribute = tools.getCookie("sortAttr");
if (savedSortAttribute) {
if (isColumnVisible(savedSortAttribute)) {
sortAttribute.value = savedSortAttribute;
const savedSortDir = tools.getCookie("sortDir");
if (savedSortDir) {
sortDirection.value = savedSortDir;
}
}
}
loading.value = false
}
// Aggiorna la copia locale quando il prop cambia // Aggiorna la copia locale quando il prop cambia
watch( watch(
() => props.lista_prodotti, () => props.lista_prodotti,
@@ -167,6 +138,36 @@ export default defineComponent({
{ name: "actions", label: "Azioni", field: "", align: "center", visu: costanti.VISUCAMPI.PER_EDITORE, noexp: true, notsortable: true }, { name: "actions", label: "Azioni", field: "", align: "center", visu: costanti.VISUCAMPI.PER_EDITORE, noexp: true, notsortable: true },
]; ];
async function mounted() {
console.log('mounted CProductTable')
loading.value = true
optionscatalogo.value = {
maxlength: props.scheda?.testo_bottom?.maxlength
}
const savedColumns = tools.getCookie("selColCat_2");
if (savedColumns) {
selectedColumns.value = savedColumns;
}
const savedSortAttribute = tools.getCookie("sortAttr");
if (savedSortAttribute && props.optcatalogo.showListaArgomenti) {
if (isColumnVisible(savedSortAttribute)) {
sortAttribute.value = savedSortAttribute;
const savedSortDir = tools.getCookie("sortDir");
if (savedSortDir) {
sortDirection.value = savedSortDir;
}
}
}
loading.value = false
}
function getFieldValue(element: any, field: any): any { function getFieldValue(element: any, field: any): any {
if (!element) if (!element)
return '' return ''

View File

@@ -249,7 +249,7 @@ export default defineComponent({
} }
function collabel(rec: any) { function collabel(rec: any) {
console.log('Record:', rec)
let label = '' let label = ''
if (rec && rec.productInfo) { if (rec && rec.productInfo) {
if (productStore.isNovitaById(rec.productInfo.date_pub)) if (productStore.isNovitaById(rec.productInfo.date_pub))

View File

@@ -2563,4 +2563,8 @@ body.body--dark {
.mybadge { .mybadge {
border-radius: 10px !important; border-radius: 10px !important;
text-shadow: .05rem .05rem .15rem #878787; text-shadow: .05rem .05rem .15rem #878787;
}
.no-print {
display: none !important;
} }

View File

@@ -893,6 +893,7 @@ export interface IOptCatalogo {
indebug?: boolean indebug?: boolean
maxnumlibri?: number maxnumlibri?: number
showListaArgomenti?: boolean showListaArgomenti?: boolean
showListaCollane?: boolean
generazionePDFInCorso?: boolean generazionePDFInCorso?: boolean
first_page?: IDimensioni first_page?: IDimensioni

View File

@@ -256,7 +256,7 @@ export interface ICatPrTotali {
} }
export interface ICollaneTotali { export interface ICollaneTotali {
_id: string, _id: string,
name: string, title: string,
quanti?: number, quanti?: number,
} }

View File

@@ -9,7 +9,7 @@ const msg_it = {
guida_passopasso: 'Guida Passo Passo', guida_passopasso: 'Guida Passo Passo',
}, },
export: { export: {
csv: 'Esporta Movimenti', csv: 'Esporta Lista',
}, },
grid: { grid: {
show_campi_avanzati: 'Visualizza campi aggiuntivi', show_campi_avanzati: 'Visualizza campi aggiuntivi',

View File

@@ -102,6 +102,7 @@ export const tools = {
COOK_MAP_CENTER_LONG: 'MAP_LONG', COOK_MAP_CENTER_LONG: 'MAP_LONG',
COOK_MAP_ZOOM: 'MAP_Z', COOK_MAP_ZOOM: 'MAP_Z',
COOK_CATEGORIA: 'CATEG', COOK_CATEGORIA: 'CATEG',
COOK_COLLANA: 'COLL',
COOK_MAPBOUNDS: 'MAP-B', COOK_MAPBOUNDS: 'MAP-B',
COOK_LAST_PROD_SEARCH: 'LPR', COOK_LAST_PROD_SEARCH: 'LPR',

View File

@@ -129,6 +129,10 @@ export const useProducts = defineStore('Products', {
}, },
getCollane: (state: IProductsState) => (): ICollana[] => {
return state.collane
},
isDisponibile: (state: IProductsState) => (product: IProduct): boolean => { isDisponibile: (state: IProductsState) => (product: IProduct): boolean => {
return product?.arrvariazioni?.[0]?.quantita > 1 return product?.arrvariazioni?.[0]?.quantita > 1
}, },
@@ -365,7 +369,7 @@ export const useProducts = defineStore('Products', {
}, },
getTotaliProdottiByIdCollana: (state: IProductsState) => (idCollana: string): number => { getTotaliProdottiByIdCollana: (state: IProductsState) => (idCollana: string): number => {
const myfirstcat = state.collanetotali!.find((rec: ICollaneTotali) => rec._id === idCollana) const myfirstcat = state.collane.find((rec: ICollaneTotali) => rec._id === idCollana)
if (myfirstcat) { if (myfirstcat) {
return myfirstcat.quanti! return myfirstcat.quanti!
@@ -1759,6 +1763,8 @@ export const useProducts = defineStore('Products', {
let arr: any = [] let arr: any = []
const globalStore = useGlobalStore()
arr.push({ label: '[Nessuna]', value: '' }) arr.push({ label: '[Nessuna]', value: '' })
if (arrschede) { if (arrschede) {
@@ -1766,7 +1772,8 @@ export const useProducts = defineStore('Products', {
let pagename = '' let pagename = ''
if (recscheda.scheda) { if (recscheda.scheda) {
if (recscheda.idPageOrig) { if (recscheda.idPageOrig) {
const page = this.mypage?.find((page) => (`${page._id}`) === recscheda.idPageOrig) const page = globalStore.getPageById(recscheda.idPageOrig)
// const page = this.mypage?.find((page) => (`${page._id}`) === recscheda.idPageOrig)
pagename = page ? page.title! : '' pagename = page ? page.title! : ''
} }
if (pagename) if (pagename)

View File

@@ -2525,7 +2525,7 @@ export const useGlobalStore = defineStore('GlobalStore', {
}) })
}, },
async convertPdf(pdfFile: any, width: string, height: string, compressione: string) { async convertPdf(pdfFile: any, width: string, height: string, compressione: string, dir_out: string, file_out: string) {
try { try {
if (!pdfFile) { if (!pdfFile) {
@@ -2542,6 +2542,9 @@ export const useGlobalStore = defineStore('GlobalStore', {
formData.append('width', width); // Dimensione del PDF in cm formData.append('width', width); // Dimensione del PDF in cm
formData.append('height', height); // Dimensione del PDF in cm formData.append('height', height); // Dimensione del PDF in cm
formData.append('compressione', compressione); formData.append('compressione', compressione);
formData.append('dir_out', dir_out);
formData.append('file_out', file_out);
formData.append('idapp', tools.getEnv('VITE_APP_ID'));
const response = await this.execConvertPDF(formData) const response = await this.execConvertPDF(formData)

File diff suppressed because it is too large Load Diff

View File

@@ -98,11 +98,14 @@
</q-inner-loading> </q-inner-loading>
<q-tab-panel <q-tab-panel
v-if="showListaArgomenti" v-if="showListaFiltrata"
name="categorie" name="categorie"
> >
<div class="row justify-center q-mx-auto bg-blue-1"> <div class="row justify-center q-mx-auto bg-blue-1">
<div class="categories"> <div
class="categories"
v-if="optcatalogo.showListaArgomenti"
>
<div <div
v-for="(reccat, index) in getCatProds()" v-for="(reccat, index) in getCatProds()"
:key="index" :key="index"
@@ -113,6 +116,20 @@
{{ reccat.label }} {{ reccat.label }}
</div> </div>
</div> </div>
<div
class="categories"
v-else-if="optcatalogo.showListaCollane"
>
<div
v-for="(reccollana, index) in getCollane()"
:key="index"
class="category"
:class="{ category_sel: collana === reccollana.value }"
@click="collana = reccollana.value"
>
{{ reccollana.label }}
</div>
</div>
</div> </div>
<div <div
@@ -120,10 +137,10 @@
class="text-center q-py-sm prod_trov" class="text-center q-py-sm prod_trov"
> >
<div <div
v-if="cat === '' && arrProducts.length === 0 && showListaArgomenti" v-if="cat === '' && arrProducts.length === 0 && showListaFiltrata"
class="row justify-center text-h6" class="row justify-center text-h6"
> >
Seleziona un Argomento Seleziona {{ filtroStrApplicato }}
</div> </div>
<span <span
v-else v-else
@@ -151,7 +168,7 @@
</q-inner-loading> </q-inner-loading>
<q-btn <q-btn
v-if="!showListaArgomenti" v-if="!showListaFiltrata"
rounded rounded
icon="fas fa-redo" icon="fas fa-redo"
label="Rigenera Lista" label="Rigenera Lista"
@@ -159,8 +176,8 @@
@click="rigeneraLibri = true" @click="rigeneraLibri = true"
></q-btn> ></q-btn>
<!--<q-btn <!--<q-bcctn
v-if="!showListaArgomenti" v-if="!showListaFiltrata"
rounded rounded
label="Riordina" label="Riordina"
color="primary" color="primary"
@@ -168,7 +185,7 @@
></q-btn>--> ></q-btn>-->
<q-btn <q-btn
v-if="!showListaArgomenti" v-if="!showListaFiltrata"
rounded rounded
label="Aggiungi" label="Aggiungi"
icon="fas fa-plus" icon="fas fa-plus"
@@ -178,7 +195,7 @@
<div <div
class="q-ma-sm row" class="q-ma-sm row"
style="border-radius: 10px; border: 1px solid #ccc" style="border-radius: 10px; border: 1px solid #ccc"
v-if="showListaArgomenti" v-if="showListaFiltrata"
> >
<q-select <q-select
v-model="optrigenera.visibilitaDisp" v-model="optrigenera.visibilitaDisp"
@@ -247,12 +264,12 @@
> >
<div class="container"> <div class="container">
<q-tabs <q-tabs
v-if="showListaArgomenti"
v-model="tabvisu" v-model="tabvisu"
dense dense
class="bg-indigo text-white" class="bg-indigo text-white"
> >
<q-tab <q-tab
v-if="showListaFiltrata"
name="categorie" name="categorie"
icon="fas fa-folder-open" icon="fas fa-folder-open"
label="Categorie" label="Categorie"
@@ -265,7 +282,7 @@
> >
</q-tab> </q-tab>
<q-tab <q-tab
v-if="showListaArgomenti" v-if="showListaFiltrata"
name="autori" name="autori"
icon="fas fa-user" icon="fas fa-user"
label="Autori" label="Autori"
@@ -278,7 +295,7 @@
> >
</q-tab> </q-tab>
<q-tab <q-tab
v-if="showListaArgomenti && false" v-if="showListaFiltrata && false"
name="ricerca" name="ricerca"
icon="fas fa-search" icon="fas fa-search"
label="Cerca" label="Cerca"
@@ -291,7 +308,7 @@
> >
</q-tab> </q-tab>
<q-tab <q-tab
v-if="showListaArgomenti" v-if="!tools.isUtente()"
name="genera" name="genera"
icon="fas fa-book" icon="fas fa-book"
label="Genera" label="Genera"
@@ -305,11 +322,14 @@
keep-alive keep-alive
> >
<q-tab-panel <q-tab-panel
v-if="showListaArgomenti" v-if="showListaFiltrata"
name="categorie" name="categorie"
> >
<div class="row justify-center q-mx-auto bg-blue-1"> <div class="row justify-center q-mx-auto bg-blue-1">
<div class="categories"> <div
class="categories"
v-if="optcatalogo.showListaArgomenti"
>
<div <div
v-for="(reccat, index) in getCatProds()" v-for="(reccat, index) in getCatProds()"
:key="index" :key="index"
@@ -320,6 +340,20 @@
{{ reccat.label }} {{ reccat.label }}
</div> </div>
</div> </div>
<div
class="categories"
v-else-if="optcatalogo.showListaCollane"
>
<div
v-for="(reccollana, index) in getCollane()"
:key="index"
class="category"
:class="{ category_sel: collana === reccollana.value }"
@click="collana = reccollana.value"
>
{{ reccollana.label }}
</div>
</div>
</div> </div>
</q-tab-panel> </q-tab-panel>
<q-tab-panel name="autori"> <q-tab-panel name="autori">
@@ -373,7 +407,8 @@
</q-toolbar> </q-toolbar>
</q-tab-panel> </q-tab-panel>
<q-tab-panel name="genera"> <q-tab-panel name="genera">
<div v-if="tools.isEditor() || tools.isCommerciale()"> <div v-if="!tools.isUtente()" class="row justify-center">
<q-btn <q-btn
v-if="optcatalogo.pdf && !optcatalogo.generazionePDFInCorso" v-if="optcatalogo.pdf && !optcatalogo.generazionePDFInCorso"
:label="`Prepara PDF`" :label="`Prepara PDF`"
@@ -435,7 +470,7 @@
</q-tab-panels> </q-tab-panels>
<div <div
v-if="showListaArgomenti" v-if="showListaFiltrata"
class="row justify-center q-mx-auto" class="row justify-center q-mx-auto"
> >
<q-select <q-select
@@ -464,10 +499,10 @@
<div class="text-center q-py-sm prod_trov"> <div class="text-center q-py-sm prod_trov">
<div <div
v-if="cat === '' && arrProducts.length === 0 && showListaArgomenti" v-if="cat === '' && arrProducts.length === 0 && showListaFiltrata"
class="row justify-center text-h6" class="row justify-center text-h6"
> >
Seleziona un Argomento Seleziona {{ filtroStrApplicato }}
</div> </div>
<span <span
v-else v-else
@@ -579,6 +614,7 @@
<div <div
v-for="(page, pageIndex) in groupedPages(recscheda)" v-for="(page, pageIndex) in groupedPages(recscheda)"
:key="pageIndex" :key="pageIndex"
class="pdf-section"
> >
<div <div
v-if="containsProducts(page)" v-if="containsProducts(page)"

View File

@@ -874,6 +874,11 @@
dependencies: dependencies:
regenerator-runtime "^0.14.0" regenerator-runtime "^0.14.0"
"@babel/runtime@^7.26.7":
version "7.27.1"
resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.27.1.tgz#9fce313d12c9a77507f264de74626e87fd0dc541"
integrity sha512-1x3D2xEk2fRo3PAhwQwu5UubzgiVWSXTBfWpVd2Mx2AzRqJuDJCsgaDVZ7HB5iGzDW1Hl1sWN2mFyKjmR9uAog==
"@babel/template@^7.25.9", "@babel/template@^7.26.9", "@babel/template@^7.3.3": "@babel/template@^7.25.9", "@babel/template@^7.26.9", "@babel/template@^7.3.3":
version "7.26.9" version "7.26.9"
resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.26.9.tgz#4577ad3ddf43d194528cff4e1fa6b232fa609bb2" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.26.9.tgz#4577ad3ddf43d194528cff4e1fa6b232fa609bb2"
@@ -2330,6 +2335,20 @@
"@parcel/utils" "2.14.1" "@parcel/utils" "2.14.1"
nullthrows "^1.1.1" nullthrows "^1.1.1"
"@pdf-lib/standard-fonts@^1.0.0":
version "1.0.0"
resolved "https://registry.yarnpkg.com/@pdf-lib/standard-fonts/-/standard-fonts-1.0.0.tgz#8ba691c4421f71662ed07c9a0294b44528af2d7f"
integrity sha512-hU30BK9IUN/su0Mn9VdlVKsWBS6GyhVfqjwl1FjZN4TxP6cCw0jP2w7V3Hf5uX7M0AZJ16vey9yE0ny7Sa59ZA==
dependencies:
pako "^1.0.6"
"@pdf-lib/upng@^1.0.1":
version "1.0.1"
resolved "https://registry.yarnpkg.com/@pdf-lib/upng/-/upng-1.0.1.tgz#7dc9c636271aca007a9df4deaf2dd7e7960280cb"
integrity sha512-dQK2FUMQtowVP00mtIksrlZhdFXQZPC+taih1q4CvPZ5vqdxR/LKBaFg0oAfzd1GlHZXXSPdQfzQnt+ViGvEIQ==
dependencies:
pako "^1.0.10"
"@pkgjs/parseargs@^0.11.0": "@pkgjs/parseargs@^0.11.0":
version "0.11.0" version "0.11.0"
resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33"
@@ -4604,6 +4623,20 @@ caniuse-lite@^1.0.30001702:
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001703.tgz#977cb4920598c158f491ecf4f4f2cfed9e354718" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001703.tgz#977cb4920598c158f491ecf4f4f2cfed9e354718"
integrity sha512-kRlAGTRWgPsOj7oARC9m1okJEXdL/8fekFVcxA8Hl7GH4r/sN4OJn/i6Flde373T50KS7Y37oFbMwlE8+F42kQ== integrity sha512-kRlAGTRWgPsOj7oARC9m1okJEXdL/8fekFVcxA8Hl7GH4r/sN4OJn/i6Flde373T50KS7Y37oFbMwlE8+F42kQ==
canvg@^3.0.11:
version "3.0.11"
resolved "https://registry.yarnpkg.com/canvg/-/canvg-3.0.11.tgz#4b4290a6c7fa36871fac2b14e432eff33b33cf2b"
integrity sha512-5ON+q7jCTgMp9cjpu4Jo6XbvfYwSB2Ow3kzHKfIyJfaCAOHLbdKPQqGKgfED/R5B+3TFFfe8pegYA+b423SRyA==
dependencies:
"@babel/runtime" "^7.12.5"
"@types/raf" "^3.4.0"
core-js "^3.8.3"
raf "^3.4.1"
regenerator-runtime "^0.13.7"
rgbcolor "^1.0.1"
stackblur-canvas "^2.0.0"
svg-pathdata "^6.0.3"
canvg@^3.0.6: canvg@^3.0.6:
version "3.0.10" version "3.0.10"
resolved "https://registry.yarnpkg.com/canvg/-/canvg-3.0.10.tgz#8e52a2d088b6ffa23ac78970b2a9eebfae0ef4b3" resolved "https://registry.yarnpkg.com/canvg/-/canvg-3.0.10.tgz#8e52a2d088b6ffa23ac78970b2a9eebfae0ef4b3"
@@ -6332,6 +6365,11 @@ file-loader@^6.2.0:
loader-utils "^2.0.0" loader-utils "^2.0.0"
schema-utils "^3.0.0" schema-utils "^3.0.0"
file-saver@^2.0.5:
version "2.0.5"
resolved "https://registry.yarnpkg.com/file-saver/-/file-saver-2.0.5.tgz#d61cfe2ce059f414d899e9dd6d4107ee25670c38"
integrity sha512-P9bmyZ3h/PRG+Nzga+rbdI4OEpNDzAVyy74uVO9ATgzLK6VtAsYybF/+TOCvrc0MO793d6+42lLyZTw7/ArVzA==
filelist@^1.0.4: filelist@^1.0.4:
version "1.0.4" version "1.0.4"
resolved "https://registry.yarnpkg.com/filelist/-/filelist-1.0.4.tgz#f78978a1e944775ff9e62e744424f215e58352b5" resolved "https://registry.yarnpkg.com/filelist/-/filelist-1.0.4.tgz#f78978a1e944775ff9e62e744424f215e58352b5"
@@ -6874,7 +6912,7 @@ html-minifier-terser@^7.2.0:
relateurl "^0.2.7" relateurl "^0.2.7"
terser "^5.15.1" terser "^5.15.1"
html2canvas@^1.0.0, html2canvas@^1.0.0-rc.5: html2canvas@^1.0.0, html2canvas@^1.0.0-rc.5, html2canvas@^1.4.1:
version "1.4.1" version "1.4.1"
resolved "https://registry.yarnpkg.com/html2canvas/-/html2canvas-1.4.1.tgz#7cef1888311b5011d507794a066041b14669a543" resolved "https://registry.yarnpkg.com/html2canvas/-/html2canvas-1.4.1.tgz#7cef1888311b5011d507794a066041b14669a543"
integrity sha512-fPU6BHNpsyIhr8yyMpTLLxAbkaK8ArIBcmZIRiBLiDhjeqvXolaEmDGmELFuX9I4xDcaKKcJl+TKZLqruBbmWA== integrity sha512-fPU6BHNpsyIhr8yyMpTLLxAbkaK8ArIBcmZIRiBLiDhjeqvXolaEmDGmELFuX9I4xDcaKKcJl+TKZLqruBbmWA==
@@ -8040,6 +8078,21 @@ jspdf@^3.0.0:
dompurify "^3.2.4" dompurify "^3.2.4"
html2canvas "^1.0.0-rc.5" html2canvas "^1.0.0-rc.5"
jspdf@^3.0.1:
version "3.0.1"
resolved "https://registry.yarnpkg.com/jspdf/-/jspdf-3.0.1.tgz#d81e1964f354f60412516eb2449ea2cccd4d2a3b"
integrity sha512-qaGIxqxetdoNnFQQXxTKUD9/Z7AloLaw94fFsOiJMxbfYdBbrBuhWmbzI8TVjrw7s3jBY1PFHofBKMV/wZPapg==
dependencies:
"@babel/runtime" "^7.26.7"
atob "^2.1.2"
btoa "^1.2.1"
fflate "^0.8.1"
optionalDependencies:
canvg "^3.0.11"
core-js "^3.6.0"
dompurify "^3.2.4"
html2canvas "^1.0.0-rc.5"
jsqr@^1.4.0: jsqr@^1.4.0:
version "1.4.0" version "1.4.0"
resolved "https://registry.yarnpkg.com/jsqr/-/jsqr-1.4.0.tgz#8efb8d0a7cc6863cb6d95116b9069123ce9eb2d1" resolved "https://registry.yarnpkg.com/jsqr/-/jsqr-1.4.0.tgz#8efb8d0a7cc6863cb6d95116b9069123ce9eb2d1"
@@ -8917,6 +8970,11 @@ package-json-from-dist@^1.0.0:
resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz#4f1471a010827a86f94cfd9b0727e36d267de505" resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz#4f1471a010827a86f94cfd9b0727e36d267de505"
integrity sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw== integrity sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==
pako@^1.0.10, pako@^1.0.11, pako@^1.0.6:
version "1.0.11"
resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf"
integrity sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==
param-case@^3.0.4: param-case@^3.0.4:
version "3.0.4" version "3.0.4"
resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.4.tgz#7d17fe4aa12bde34d4a77d91acfb6219caad01c5" resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.4.tgz#7d17fe4aa12bde34d4a77d91acfb6219caad01c5"
@@ -9057,6 +9115,16 @@ pbkdf2@^3.1.2:
safe-buffer "^5.0.1" safe-buffer "^5.0.1"
sha.js "^2.4.8" sha.js "^2.4.8"
pdf-lib@^1.17.1:
version "1.17.1"
resolved "https://registry.yarnpkg.com/pdf-lib/-/pdf-lib-1.17.1.tgz#9e7dd21261a0c1fb17992580885b39e7d08f451f"
integrity sha512-V/mpyJAoTsN4cnP31vc0wfNA1+p20evqqnap0KLoRUN0Yk/p3wN52DOEsL4oBFcLdb76hlpKPtzJIgo67j/XLw==
dependencies:
"@pdf-lib/standard-fonts" "^1.0.0"
"@pdf-lib/upng" "^1.0.1"
pako "^1.0.11"
tslib "^1.11.1"
pend@~1.2.0: pend@~1.2.0:
version "1.2.0" version "1.2.0"
resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50"
@@ -10998,6 +11066,11 @@ tslib@2.3.0:
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.3.0.tgz#803b8cdab3e12ba581a4ca41c8839bbb0dacb09e" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.3.0.tgz#803b8cdab3e12ba581a4ca41c8839bbb0dacb09e"
integrity sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg== integrity sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==
tslib@^1.11.1:
version "1.14.1"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
tslib@^2.0.3, tslib@^2.1.0, tslib@^2.6.2, tslib@^2.8.0: tslib@^2.0.3, tslib@^2.1.0, tslib@^2.6.2, tslib@^2.8.0:
version "2.8.1" version "2.8.1"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f"