mirror of
https://github.com/emsesp/EMS-ESP32.git
synced 2026-05-02 04:05:14 +00:00
Compare commits
10 Commits
4600d886b5
...
40f371d23b
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
40f371d23b | ||
|
|
817b791e59 | ||
|
|
25a7aac360 | ||
|
|
37115a174d | ||
|
|
1397f81fd0 | ||
|
|
56365cb403 | ||
|
|
dfd245ee7b | ||
|
|
9c81e4b34d | ||
|
|
67676df131 | ||
|
|
a73b129596 |
@@ -63,9 +63,8 @@
|
|||||||
"rollup-plugin-visualizer": "^7.0.1",
|
"rollup-plugin-visualizer": "^7.0.1",
|
||||||
"terser": "^5.46.1",
|
"terser": "^5.46.1",
|
||||||
"typescript-eslint": "^8.57.1",
|
"typescript-eslint": "^8.57.1",
|
||||||
"vite": "^7.3.1",
|
"vite": "^8.0.0",
|
||||||
"vite-plugin-imagemin": "^0.6.1",
|
"vite-plugin-imagemin": "^0.6.1"
|
||||||
"vite-tsconfig-paths": "^6.1.1"
|
|
||||||
},
|
},
|
||||||
"packageManager": "pnpm@10.29.3+sha512.498e1fb4cca5aa06c1dcf2611e6fafc50972ffe7189998c409e90de74566444298ffe43e6cd2acdc775ba1aa7cc5e092a8b7054c811ba8c5770f84693d33d2dc"
|
"packageManager": "pnpm@10.32.1+sha512.a706938f0e89ac1456b6563eab4edf1d1faf3368d1191fc5c59790e96dc918e4456ab2e67d613de1043d2e8c81f87303e6b40d4ffeca9df15ef1ad567348f2be"
|
||||||
}
|
}
|
||||||
|
|||||||
115
interface/pnpm-lock.yaml
generated
115
interface/pnpm-lock.yaml
generated
@@ -83,7 +83,7 @@ importers:
|
|||||||
version: 10.0.1(eslint@10.0.3)
|
version: 10.0.1(eslint@10.0.3)
|
||||||
'@preact/preset-vite':
|
'@preact/preset-vite':
|
||||||
specifier: ^2.10.4
|
specifier: ^2.10.4
|
||||||
version: 2.10.4(@babel/core@7.29.0)(preact@10.29.0)(rollup@4.59.0)(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.32.0)(terser@5.46.1))
|
version: 2.10.4(@babel/core@7.29.0)(preact@10.29.0)(rollup@4.59.0)(vite@8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(terser@5.46.1))
|
||||||
'@trivago/prettier-plugin-sort-imports':
|
'@trivago/prettier-plugin-sort-imports':
|
||||||
specifier: ^6.0.2
|
specifier: ^6.0.2
|
||||||
version: 6.0.2(prettier@3.8.1)
|
version: 6.0.2(prettier@3.8.1)
|
||||||
@@ -121,14 +121,11 @@ importers:
|
|||||||
specifier: ^8.57.1
|
specifier: ^8.57.1
|
||||||
version: 8.57.1(eslint@10.0.3)(typescript@5.9.3)
|
version: 8.57.1(eslint@10.0.3)(typescript@5.9.3)
|
||||||
vite:
|
vite:
|
||||||
specifier: ^7.3.1
|
specifier: ^8.0.0
|
||||||
version: 7.3.1(@types/node@25.5.0)(lightningcss@1.32.0)(terser@5.46.1)
|
version: 8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(terser@5.46.1)
|
||||||
vite-plugin-imagemin:
|
vite-plugin-imagemin:
|
||||||
specifier: ^0.6.1
|
specifier: ^0.6.1
|
||||||
version: 0.6.1(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.32.0)(terser@5.46.1))
|
version: 0.6.1(vite@8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(terser@5.46.1))
|
||||||
vite-tsconfig-paths:
|
|
||||||
specifier: ^6.1.1
|
|
||||||
version: 6.1.1(typescript@5.9.3)(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.32.0)(terser@5.46.1))
|
|
||||||
|
|
||||||
packages:
|
packages:
|
||||||
|
|
||||||
@@ -646,6 +643,10 @@ packages:
|
|||||||
resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
|
resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
|
||||||
engines: {node: '>= 8'}
|
engines: {node: '>= 8'}
|
||||||
|
|
||||||
|
'@oxc-project/runtime@0.115.0':
|
||||||
|
resolution: {integrity: sha512-Rg8Wlt5dCbXhQnsXPrkOjL1DTSvXLgb2R/KYfnf1/K+R0k6UMLEmbQXPM+kwrWqSmWA2t0B1EtHy2/3zikQpvQ==}
|
||||||
|
engines: {node: ^20.19.0 || >=22.12.0}
|
||||||
|
|
||||||
'@oxc-project/types@0.115.0':
|
'@oxc-project/types@0.115.0':
|
||||||
resolution: {integrity: sha512-4n91DKnebUS4yjUHl2g3/b2T+IUdCfmoZGhmwsovZCDaJSs+QkVAM+0AqqTxHSsHfeiMuueT75cZaZcT/m0pSw==}
|
resolution: {integrity: sha512-4n91DKnebUS4yjUHl2g3/b2T+IUdCfmoZGhmwsovZCDaJSs+QkVAM+0AqqTxHSsHfeiMuueT75cZaZcT/m0pSw==}
|
||||||
|
|
||||||
@@ -1878,8 +1879,8 @@ packages:
|
|||||||
resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==}
|
resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==}
|
||||||
engines: {node: '>=16'}
|
engines: {node: '>=16'}
|
||||||
|
|
||||||
flatted@3.4.1:
|
flatted@3.4.2:
|
||||||
resolution: {integrity: sha512-IxfVbRFVlV8V/yRaGzk0UVIcsKKHMSfYw66T/u4nTwlWteQePsxe//LjudR1AMX4tZW3WFCh3Zqa/sjlqpbURQ==}
|
resolution: {integrity: sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA==}
|
||||||
|
|
||||||
for-each@0.3.5:
|
for-each@0.3.5:
|
||||||
resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==}
|
resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==}
|
||||||
@@ -1979,9 +1980,6 @@ packages:
|
|||||||
resolution: {integrity: sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==}
|
resolution: {integrity: sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==}
|
||||||
engines: {node: '>=8'}
|
engines: {node: '>=8'}
|
||||||
|
|
||||||
globrex@0.1.2:
|
|
||||||
resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==}
|
|
||||||
|
|
||||||
gopd@1.2.0:
|
gopd@1.2.0:
|
||||||
resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==}
|
resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==}
|
||||||
engines: {node: '>= 0.4'}
|
engines: {node: '>= 0.4'}
|
||||||
@@ -3169,16 +3167,6 @@ packages:
|
|||||||
peerDependencies:
|
peerDependencies:
|
||||||
typescript: '>=4.8.4'
|
typescript: '>=4.8.4'
|
||||||
|
|
||||||
tsconfck@3.1.6:
|
|
||||||
resolution: {integrity: sha512-ks6Vjr/jEw0P1gmOVwutM3B7fWxoWBL2KRDb1JfqGVawBmO5UsvmWOQFGHBPl5yxYz4eERr19E6L7NMv+Fej4w==}
|
|
||||||
engines: {node: ^18 || >=20}
|
|
||||||
hasBin: true
|
|
||||||
peerDependencies:
|
|
||||||
typescript: ^5.0.0
|
|
||||||
peerDependenciesMeta:
|
|
||||||
typescript:
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
tslib@2.8.1:
|
tslib@2.8.1:
|
||||||
resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}
|
resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}
|
||||||
|
|
||||||
@@ -3267,20 +3255,16 @@ packages:
|
|||||||
peerDependencies:
|
peerDependencies:
|
||||||
vite: 5.x || 6.x || 7.x || 8.x
|
vite: 5.x || 6.x || 7.x || 8.x
|
||||||
|
|
||||||
vite-tsconfig-paths@6.1.1:
|
vite@8.0.0:
|
||||||
resolution: {integrity: sha512-2cihq7zliibCCZ8P9cKJrQBkfgdvcFkOOc3Y02o3GWUDLgqjWsZudaoiuOwO/gzTzy17cS5F7ZPo4bsnS4DGkg==}
|
resolution: {integrity: sha512-fPGaRNj9Zytaf8LEiBhY7Z6ijnFKdzU/+mL8EFBaKr7Vw1/FWcTBAMW0wLPJAGMPX38ZPVCVgLceWiEqeoqL2Q==}
|
||||||
peerDependencies:
|
|
||||||
vite: '*'
|
|
||||||
|
|
||||||
vite@7.3.1:
|
|
||||||
resolution: {integrity: sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA==}
|
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
engines: {node: ^20.19.0 || >=22.12.0}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
'@types/node': ^20.19.0 || >=22.12.0
|
'@types/node': ^20.19.0 || >=22.12.0
|
||||||
|
'@vitejs/devtools': ^0.0.0-alpha.31
|
||||||
|
esbuild: ^0.27.0
|
||||||
jiti: '>=1.21.0'
|
jiti: '>=1.21.0'
|
||||||
less: ^4.0.0
|
less: ^4.0.0
|
||||||
lightningcss: ^1.21.0
|
|
||||||
sass: ^1.70.0
|
sass: ^1.70.0
|
||||||
sass-embedded: ^1.70.0
|
sass-embedded: ^1.70.0
|
||||||
stylus: '>=0.54.8'
|
stylus: '>=0.54.8'
|
||||||
@@ -3291,12 +3275,14 @@ packages:
|
|||||||
peerDependenciesMeta:
|
peerDependenciesMeta:
|
||||||
'@types/node':
|
'@types/node':
|
||||||
optional: true
|
optional: true
|
||||||
|
'@vitejs/devtools':
|
||||||
|
optional: true
|
||||||
|
esbuild:
|
||||||
|
optional: true
|
||||||
jiti:
|
jiti:
|
||||||
optional: true
|
optional: true
|
||||||
less:
|
less:
|
||||||
optional: true
|
optional: true
|
||||||
lightningcss:
|
|
||||||
optional: true
|
|
||||||
sass:
|
sass:
|
||||||
optional: true
|
optional: true
|
||||||
sass-embedded:
|
sass-embedded:
|
||||||
@@ -3885,8 +3871,9 @@ snapshots:
|
|||||||
'@nodelib/fs.scandir': 2.1.5
|
'@nodelib/fs.scandir': 2.1.5
|
||||||
fastq: 1.20.1
|
fastq: 1.20.1
|
||||||
|
|
||||||
'@oxc-project/types@0.115.0':
|
'@oxc-project/runtime@0.115.0': {}
|
||||||
optional: true
|
|
||||||
|
'@oxc-project/types@0.115.0': {}
|
||||||
|
|
||||||
'@paralleldrive/cuid2@2.3.1':
|
'@paralleldrive/cuid2@2.3.1':
|
||||||
dependencies:
|
dependencies:
|
||||||
@@ -3898,19 +3885,19 @@ snapshots:
|
|||||||
dependencies:
|
dependencies:
|
||||||
preact: 10.29.0
|
preact: 10.29.0
|
||||||
|
|
||||||
'@preact/preset-vite@2.10.4(@babel/core@7.29.0)(preact@10.29.0)(rollup@4.59.0)(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.32.0)(terser@5.46.1))':
|
'@preact/preset-vite@2.10.4(@babel/core@7.29.0)(preact@10.29.0)(rollup@4.59.0)(vite@8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(terser@5.46.1))':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@babel/core': 7.29.0
|
'@babel/core': 7.29.0
|
||||||
'@babel/plugin-transform-react-jsx': 7.28.6(@babel/core@7.29.0)
|
'@babel/plugin-transform-react-jsx': 7.28.6(@babel/core@7.29.0)
|
||||||
'@babel/plugin-transform-react-jsx-development': 7.27.1(@babel/core@7.29.0)
|
'@babel/plugin-transform-react-jsx-development': 7.27.1(@babel/core@7.29.0)
|
||||||
'@prefresh/vite': 2.4.12(preact@10.29.0)(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.32.0)(terser@5.46.1))
|
'@prefresh/vite': 2.4.12(preact@10.29.0)(vite@8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(terser@5.46.1))
|
||||||
'@rollup/pluginutils': 5.3.0(rollup@4.59.0)
|
'@rollup/pluginutils': 5.3.0(rollup@4.59.0)
|
||||||
babel-plugin-transform-hook-names: 1.0.2(@babel/core@7.29.0)
|
babel-plugin-transform-hook-names: 1.0.2(@babel/core@7.29.0)
|
||||||
debug: 4.4.3
|
debug: 4.4.3
|
||||||
magic-string: 0.30.21
|
magic-string: 0.30.21
|
||||||
picocolors: 1.1.1
|
picocolors: 1.1.1
|
||||||
vite: 7.3.1(@types/node@25.5.0)(lightningcss@1.32.0)(terser@5.46.1)
|
vite: 8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(terser@5.46.1)
|
||||||
vite-prerender-plugin: 0.5.13(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.32.0)(terser@5.46.1))
|
vite-prerender-plugin: 0.5.13(vite@8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(terser@5.46.1))
|
||||||
zimmerframe: 1.1.4
|
zimmerframe: 1.1.4
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- preact
|
- preact
|
||||||
@@ -3925,7 +3912,7 @@ snapshots:
|
|||||||
|
|
||||||
'@prefresh/utils@1.2.1': {}
|
'@prefresh/utils@1.2.1': {}
|
||||||
|
|
||||||
'@prefresh/vite@2.4.12(preact@10.29.0)(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.32.0)(terser@5.46.1))':
|
'@prefresh/vite@2.4.12(preact@10.29.0)(vite@8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(terser@5.46.1))':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@babel/core': 7.29.0
|
'@babel/core': 7.29.0
|
||||||
'@prefresh/babel-plugin': 0.5.3
|
'@prefresh/babel-plugin': 0.5.3
|
||||||
@@ -3933,7 +3920,7 @@ snapshots:
|
|||||||
'@prefresh/utils': 1.2.1
|
'@prefresh/utils': 1.2.1
|
||||||
'@rollup/pluginutils': 4.2.1
|
'@rollup/pluginutils': 4.2.1
|
||||||
preact: 10.29.0
|
preact: 10.29.0
|
||||||
vite: 7.3.1(@types/node@25.5.0)(lightningcss@1.32.0)(terser@5.46.1)
|
vite: 8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(terser@5.46.1)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
@@ -3984,8 +3971,7 @@ snapshots:
|
|||||||
'@rolldown/binding-win32-x64-msvc@1.0.0-rc.9':
|
'@rolldown/binding-win32-x64-msvc@1.0.0-rc.9':
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
'@rolldown/pluginutils@1.0.0-rc.9':
|
'@rolldown/pluginutils@1.0.0-rc.9': {}
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@rollup/pluginutils@4.2.1':
|
'@rollup/pluginutils@4.2.1':
|
||||||
dependencies:
|
dependencies:
|
||||||
@@ -4680,8 +4666,7 @@ snapshots:
|
|||||||
|
|
||||||
define-lazy-prop@3.0.0: {}
|
define-lazy-prop@3.0.0: {}
|
||||||
|
|
||||||
detect-libc@2.1.2:
|
detect-libc@2.1.2: {}
|
||||||
optional: true
|
|
||||||
|
|
||||||
dezalgo@1.0.4:
|
dezalgo@1.0.4:
|
||||||
dependencies:
|
dependencies:
|
||||||
@@ -4906,6 +4891,7 @@ snapshots:
|
|||||||
'@esbuild/win32-arm64': 0.27.4
|
'@esbuild/win32-arm64': 0.27.4
|
||||||
'@esbuild/win32-ia32': 0.27.4
|
'@esbuild/win32-ia32': 0.27.4
|
||||||
'@esbuild/win32-x64': 0.27.4
|
'@esbuild/win32-x64': 0.27.4
|
||||||
|
optional: true
|
||||||
|
|
||||||
escalade@3.2.0: {}
|
escalade@3.2.0: {}
|
||||||
|
|
||||||
@@ -5133,10 +5119,10 @@ snapshots:
|
|||||||
|
|
||||||
flat-cache@4.0.1:
|
flat-cache@4.0.1:
|
||||||
dependencies:
|
dependencies:
|
||||||
flatted: 3.4.1
|
flatted: 3.4.2
|
||||||
keyv: 4.5.4
|
keyv: 4.5.4
|
||||||
|
|
||||||
flatted@3.4.1: {}
|
flatted@3.4.2: {}
|
||||||
|
|
||||||
for-each@0.3.5:
|
for-each@0.3.5:
|
||||||
dependencies:
|
dependencies:
|
||||||
@@ -5250,8 +5236,6 @@ snapshots:
|
|||||||
merge2: 1.4.1
|
merge2: 1.4.1
|
||||||
slash: 3.0.0
|
slash: 3.0.0
|
||||||
|
|
||||||
globrex@0.1.2: {}
|
|
||||||
|
|
||||||
gopd@1.2.0: {}
|
gopd@1.2.0: {}
|
||||||
|
|
||||||
got@7.1.0:
|
got@7.1.0:
|
||||||
@@ -5602,7 +5586,6 @@ snapshots:
|
|||||||
lightningcss-linux-x64-musl: 1.32.0
|
lightningcss-linux-x64-musl: 1.32.0
|
||||||
lightningcss-win32-arm64-msvc: 1.32.0
|
lightningcss-win32-arm64-msvc: 1.32.0
|
||||||
lightningcss-win32-x64-msvc: 1.32.0
|
lightningcss-win32-x64-msvc: 1.32.0
|
||||||
optional: true
|
|
||||||
|
|
||||||
lines-and-columns@1.2.4: {}
|
lines-and-columns@1.2.4: {}
|
||||||
|
|
||||||
@@ -6095,7 +6078,6 @@ snapshots:
|
|||||||
'@rolldown/binding-wasm32-wasi': 1.0.0-rc.9
|
'@rolldown/binding-wasm32-wasi': 1.0.0-rc.9
|
||||||
'@rolldown/binding-win32-arm64-msvc': 1.0.0-rc.9
|
'@rolldown/binding-win32-arm64-msvc': 1.0.0-rc.9
|
||||||
'@rolldown/binding-win32-x64-msvc': 1.0.0-rc.9
|
'@rolldown/binding-win32-x64-msvc': 1.0.0-rc.9
|
||||||
optional: true
|
|
||||||
|
|
||||||
rollup-plugin-visualizer@7.0.1(rolldown@1.0.0-rc.9)(rollup@4.59.0):
|
rollup-plugin-visualizer@7.0.1(rolldown@1.0.0-rc.9)(rollup@4.59.0):
|
||||||
dependencies:
|
dependencies:
|
||||||
@@ -6137,6 +6119,7 @@ snapshots:
|
|||||||
'@rollup/rollup-win32-x64-gnu': 4.59.0
|
'@rollup/rollup-win32-x64-gnu': 4.59.0
|
||||||
'@rollup/rollup-win32-x64-msvc': 4.59.0
|
'@rollup/rollup-win32-x64-msvc': 4.59.0
|
||||||
fsevents: 2.3.3
|
fsevents: 2.3.3
|
||||||
|
optional: true
|
||||||
|
|
||||||
run-applescript@7.1.0: {}
|
run-applescript@7.1.0: {}
|
||||||
|
|
||||||
@@ -6385,10 +6368,6 @@ snapshots:
|
|||||||
dependencies:
|
dependencies:
|
||||||
typescript: 5.9.3
|
typescript: 5.9.3
|
||||||
|
|
||||||
tsconfck@3.1.6(typescript@5.9.3):
|
|
||||||
optionalDependencies:
|
|
||||||
typescript: 5.9.3
|
|
||||||
|
|
||||||
tslib@2.8.1: {}
|
tslib@2.8.1: {}
|
||||||
|
|
||||||
tunnel-agent@0.6.0:
|
tunnel-agent@0.6.0:
|
||||||
@@ -6462,7 +6441,7 @@ snapshots:
|
|||||||
spdx-correct: 3.2.0
|
spdx-correct: 3.2.0
|
||||||
spdx-expression-parse: 3.0.1
|
spdx-expression-parse: 3.0.1
|
||||||
|
|
||||||
vite-plugin-imagemin@0.6.1(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.32.0)(terser@5.46.1)):
|
vite-plugin-imagemin@0.6.1(vite@8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(terser@5.46.1)):
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/imagemin': 7.0.1
|
'@types/imagemin': 7.0.1
|
||||||
'@types/imagemin-gifsicle': 7.0.4
|
'@types/imagemin-gifsicle': 7.0.4
|
||||||
@@ -6487,11 +6466,11 @@ snapshots:
|
|||||||
imagemin-webp: 6.1.0
|
imagemin-webp: 6.1.0
|
||||||
jpegtran-bin: 6.0.1
|
jpegtran-bin: 6.0.1
|
||||||
pathe: 0.2.0
|
pathe: 0.2.0
|
||||||
vite: 7.3.1(@types/node@25.5.0)(lightningcss@1.32.0)(terser@5.46.1)
|
vite: 8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(terser@5.46.1)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
|
|
||||||
vite-prerender-plugin@0.5.13(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.32.0)(terser@5.46.1)):
|
vite-prerender-plugin@0.5.13(vite@8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(terser@5.46.1)):
|
||||||
dependencies:
|
dependencies:
|
||||||
kolorist: 1.8.0
|
kolorist: 1.8.0
|
||||||
magic-string: 0.30.21
|
magic-string: 0.30.21
|
||||||
@@ -6499,30 +6478,20 @@ snapshots:
|
|||||||
simple-code-frame: 1.3.0
|
simple-code-frame: 1.3.0
|
||||||
source-map: 0.7.6
|
source-map: 0.7.6
|
||||||
stack-trace: 1.0.0-pre2
|
stack-trace: 1.0.0-pre2
|
||||||
vite: 7.3.1(@types/node@25.5.0)(lightningcss@1.32.0)(terser@5.46.1)
|
vite: 8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(terser@5.46.1)
|
||||||
|
|
||||||
vite-tsconfig-paths@6.1.1(typescript@5.9.3)(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.32.0)(terser@5.46.1)):
|
vite@8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(terser@5.46.1):
|
||||||
dependencies:
|
dependencies:
|
||||||
debug: 4.4.3
|
'@oxc-project/runtime': 0.115.0
|
||||||
globrex: 0.1.2
|
lightningcss: 1.32.0
|
||||||
tsconfck: 3.1.6(typescript@5.9.3)
|
|
||||||
vite: 7.3.1(@types/node@25.5.0)(lightningcss@1.32.0)(terser@5.46.1)
|
|
||||||
transitivePeerDependencies:
|
|
||||||
- supports-color
|
|
||||||
- typescript
|
|
||||||
|
|
||||||
vite@7.3.1(@types/node@25.5.0)(lightningcss@1.32.0)(terser@5.46.1):
|
|
||||||
dependencies:
|
|
||||||
esbuild: 0.27.4
|
|
||||||
fdir: 6.5.0(picomatch@4.0.3)
|
|
||||||
picomatch: 4.0.3
|
picomatch: 4.0.3
|
||||||
postcss: 8.5.8
|
postcss: 8.5.8
|
||||||
rollup: 4.59.0
|
rolldown: 1.0.0-rc.9
|
||||||
tinyglobby: 0.2.15
|
tinyglobby: 0.2.15
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@types/node': 25.5.0
|
'@types/node': 25.5.0
|
||||||
|
esbuild: 0.27.4
|
||||||
fsevents: 2.3.3
|
fsevents: 2.3.3
|
||||||
lightningcss: 1.32.0
|
|
||||||
terser: 5.46.1
|
terser: 5.46.1
|
||||||
|
|
||||||
which-typed-array@1.1.20:
|
which-typed-array@1.1.20:
|
||||||
|
|||||||
@@ -274,7 +274,6 @@ const InstallDialog = memo(
|
|||||||
fetchDevVersion,
|
fetchDevVersion,
|
||||||
latestVersion,
|
latestVersion,
|
||||||
latestDevVersion,
|
latestDevVersion,
|
||||||
downloadOnly,
|
|
||||||
platform,
|
platform,
|
||||||
LL,
|
LL,
|
||||||
onClose,
|
onClose,
|
||||||
@@ -284,7 +283,6 @@ const InstallDialog = memo(
|
|||||||
fetchDevVersion: boolean;
|
fetchDevVersion: boolean;
|
||||||
latestVersion?: VersionInfo;
|
latestVersion?: VersionInfo;
|
||||||
latestDevVersion?: VersionInfo;
|
latestDevVersion?: VersionInfo;
|
||||||
downloadOnly: boolean;
|
|
||||||
platform: string;
|
platform: string;
|
||||||
LL: TranslationFunctions;
|
LL: TranslationFunctions;
|
||||||
onClose: () => void;
|
onClose: () => void;
|
||||||
@@ -309,7 +307,7 @@ const InstallDialog = memo(
|
|||||||
<DialogContent dividers>
|
<DialogContent dividers>
|
||||||
<Typography mb={2}>
|
<Typography mb={2}>
|
||||||
{LL.INSTALL_VERSION(
|
{LL.INSTALL_VERSION(
|
||||||
downloadOnly ? LL.DOWNLOAD(1) : LL.INSTALL(),
|
LL.INSTALL(),
|
||||||
fetchDevVersion ? latestDevVersion?.name : latestVersion?.name
|
fetchDevVersion ? latestDevVersion?.name : latestVersion?.name
|
||||||
)}
|
)}
|
||||||
</Typography>
|
</Typography>
|
||||||
@@ -333,7 +331,6 @@ const InstallDialog = memo(
|
|||||||
{LL.DOWNLOAD(0)}
|
{LL.DOWNLOAD(0)}
|
||||||
</Link>
|
</Link>
|
||||||
</Button>
|
</Button>
|
||||||
{!downloadOnly && (
|
|
||||||
<Button
|
<Button
|
||||||
startIcon={<WarningIcon color="warning" />}
|
startIcon={<WarningIcon color="warning" />}
|
||||||
variant="outlined"
|
variant="outlined"
|
||||||
@@ -342,7 +339,6 @@ const InstallDialog = memo(
|
|||||||
>
|
>
|
||||||
{LL.INSTALL()}
|
{LL.INSTALL()}
|
||||||
</Button>
|
</Button>
|
||||||
)}
|
|
||||||
</DialogActions>
|
</DialogActions>
|
||||||
</Dialog>
|
</Dialog>
|
||||||
);
|
);
|
||||||
@@ -423,7 +419,6 @@ const Version = () => {
|
|||||||
const [stableUpgradeAvailable, setStableUpgradeAvailable] =
|
const [stableUpgradeAvailable, setStableUpgradeAvailable] =
|
||||||
useState<boolean>(false);
|
useState<boolean>(false);
|
||||||
const [internetLive, setInternetLive] = useState<boolean>(false);
|
const [internetLive, setInternetLive] = useState<boolean>(false);
|
||||||
const [downloadOnly, setDownloadOnly] = useState<boolean>(false);
|
|
||||||
const [showVersionInfo, setShowVersionInfo] = useState<number>(0); // 1 = stable, 2 = dev, 3 = partition
|
const [showVersionInfo, setShowVersionInfo] = useState<number>(0); // 1 = stable, 2 = dev, 3 = partition
|
||||||
const [firmwareSize, setFirmwareSize] = useState<number>(0);
|
const [firmwareSize, setFirmwareSize] = useState<number>(0);
|
||||||
|
|
||||||
@@ -449,9 +444,6 @@ const Version = () => {
|
|||||||
error
|
error
|
||||||
} = useRequest(SystemApi.readSystemStatus).onSuccess((event) => {
|
} = useRequest(SystemApi.readSystemStatus).onSuccess((event) => {
|
||||||
const systemData = event.data as VersionData;
|
const systemData = event.data as VersionData;
|
||||||
if (systemData.arduino_version.startsWith('Tasmota')) {
|
|
||||||
setDownloadOnly(true);
|
|
||||||
}
|
|
||||||
setUsingDevVersion(systemData.emsesp_version.includes('dev'));
|
setUsingDevVersion(systemData.emsesp_version.includes('dev'));
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -815,7 +807,6 @@ const Version = () => {
|
|||||||
fetchDevVersion={fetchDevVersion}
|
fetchDevVersion={fetchDevVersion}
|
||||||
latestVersion={latestVersion}
|
latestVersion={latestVersion}
|
||||||
latestDevVersion={latestDevVersion}
|
latestDevVersion={latestDevVersion}
|
||||||
downloadOnly={downloadOnly}
|
|
||||||
platform={platform}
|
platform={platform}
|
||||||
LL={LL}
|
LL={LL}
|
||||||
onClose={closeInstallDialog}
|
onClose={closeInstallDialog}
|
||||||
@@ -851,7 +842,6 @@ const Version = () => {
|
|||||||
locale,
|
locale,
|
||||||
openInstallDialog,
|
openInstallDialog,
|
||||||
fetchDevVersion,
|
fetchDevVersion,
|
||||||
downloadOnly,
|
|
||||||
me.admin,
|
me.admin,
|
||||||
showButtons,
|
showButtons,
|
||||||
handleVersionInfoClose,
|
handleVersionInfoClose,
|
||||||
|
|||||||
@@ -23,6 +23,8 @@ export const saveFile = (
|
|||||||
}, 100);
|
}, 100);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error('Failed to save file:', error);
|
console.error('Failed to save file:', error);
|
||||||
throw new Error(`Unable to save file: ${filename}${extension}`, { cause: error });
|
throw new Error(`Unable to save file: ${filename}${extension}`, {
|
||||||
|
cause: error
|
||||||
|
});
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -2,9 +2,8 @@ import preact from '@preact/preset-vite';
|
|||||||
import fs from 'fs';
|
import fs from 'fs';
|
||||||
import path from 'path';
|
import path from 'path';
|
||||||
import { visualizer } from 'rollup-plugin-visualizer';
|
import { visualizer } from 'rollup-plugin-visualizer';
|
||||||
import { Plugin, defineConfig } from 'vite';
|
import { Plugin, PluginOption, defineConfig } from 'vite';
|
||||||
import viteImagemin from 'vite-plugin-imagemin';
|
import viteImagemin from 'vite-plugin-imagemin';
|
||||||
import viteTsconfigPaths from 'vite-tsconfig-paths';
|
|
||||||
import zlib from 'zlib';
|
import zlib from 'zlib';
|
||||||
|
|
||||||
// @ts-expect-error - mock server doesn't have type declarations
|
// @ts-expect-error - mock server doesn't have type declarations
|
||||||
@@ -99,16 +98,31 @@ const createPreactPlugin = (devToolsEnabled: boolean) =>
|
|||||||
prefreshEnabled: false
|
prefreshEnabled: false
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// Patch preact/compat to export stub React 19 APIs (use, useOptimistic) so that
|
||||||
|
// react-router v7 doesn't trigger IMPORT_IS_UNDEFINED warnings from Rolldown.
|
||||||
|
const preactCompatPatchPlugin = (): Plugin => ({
|
||||||
|
name: 'preact-compat-react19-patch',
|
||||||
|
transform(code, id) {
|
||||||
|
if (id.includes('preact') && id.includes('compat.module.js')) {
|
||||||
|
return {
|
||||||
|
code:
|
||||||
|
code +
|
||||||
|
'\nexport var use = undefined;\nexport var useOptimistic = undefined;\n',
|
||||||
|
map: null
|
||||||
|
};
|
||||||
|
}
|
||||||
|
return undefined;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
// Common base plugins
|
// Common base plugins
|
||||||
const createBasePlugins = (
|
const createBasePlugins = (
|
||||||
devToolsEnabled: boolean,
|
devToolsEnabled: boolean,
|
||||||
includeBundleReporter = true
|
includeBundleReporter = true
|
||||||
) => {
|
): PluginOption[] => {
|
||||||
const plugins = [
|
const plugins: PluginOption[] = [
|
||||||
createPreactPlugin(devToolsEnabled),
|
createPreactPlugin(devToolsEnabled),
|
||||||
viteTsconfigPaths({
|
preactCompatPatchPlugin()
|
||||||
projects: ['./tsconfig.json']
|
|
||||||
})
|
|
||||||
];
|
];
|
||||||
if (includeBundleReporter) {
|
if (includeBundleReporter) {
|
||||||
plugins.push(bundleSizeReporter());
|
plugins.push(bundleSizeReporter());
|
||||||
@@ -234,7 +248,8 @@ export default defineConfig(
|
|||||||
plugins: [...createBasePlugins(true, true), mockServer()],
|
plugins: [...createBasePlugins(true, true), mockServer()],
|
||||||
resolve: {
|
resolve: {
|
||||||
alias: RESOLVE_ALIASES,
|
alias: RESOLVE_ALIASES,
|
||||||
extensions: RESOLVE_EXTENSIONS
|
extensions: RESOLVE_EXTENSIONS,
|
||||||
|
tsconfigPaths: true
|
||||||
},
|
},
|
||||||
server: {
|
server: {
|
||||||
open: true,
|
open: true,
|
||||||
@@ -263,7 +278,8 @@ export default defineConfig(
|
|||||||
plugins: createBasePlugins(false, true),
|
plugins: createBasePlugins(false, true),
|
||||||
resolve: {
|
resolve: {
|
||||||
alias: RESOLVE_ALIASES,
|
alias: RESOLVE_ALIASES,
|
||||||
extensions: RESOLVE_EXTENSIONS
|
extensions: RESOLVE_EXTENSIONS,
|
||||||
|
tsconfigPaths: true
|
||||||
},
|
},
|
||||||
build: {
|
build: {
|
||||||
...createBaseBuildConfig(),
|
...createBaseBuildConfig(),
|
||||||
@@ -297,7 +313,8 @@ export default defineConfig(
|
|||||||
],
|
],
|
||||||
resolve: {
|
resolve: {
|
||||||
alias: RESOLVE_ALIASES,
|
alias: RESOLVE_ALIASES,
|
||||||
extensions: RESOLVE_EXTENSIONS
|
extensions: RESOLVE_EXTENSIONS,
|
||||||
|
tsconfigPaths: true
|
||||||
},
|
},
|
||||||
build: {
|
build: {
|
||||||
...createBaseBuildConfig(),
|
...createBaseBuildConfig(),
|
||||||
@@ -306,8 +323,7 @@ export default defineConfig(
|
|||||||
rollupOptions: {
|
rollupOptions: {
|
||||||
treeshake: {
|
treeshake: {
|
||||||
moduleSideEffects: false,
|
moduleSideEffects: false,
|
||||||
propertyReadSideEffects: false,
|
propertyReadSideEffects: false as const,
|
||||||
tryCatchDeoptimization: false,
|
|
||||||
unknownGlobalSideEffects: false
|
unknownGlobalSideEffects: false
|
||||||
},
|
},
|
||||||
output: {
|
output: {
|
||||||
|
|||||||
@@ -12,8 +12,8 @@
|
|||||||
"@msgpack/msgpack": "^3.1.3",
|
"@msgpack/msgpack": "^3.1.3",
|
||||||
"@trivago/prettier-plugin-sort-imports": "^6.0.2",
|
"@trivago/prettier-plugin-sort-imports": "^6.0.2",
|
||||||
"formidable": "^3.5.4",
|
"formidable": "^3.5.4",
|
||||||
"itty-router": "^5.0.22",
|
"itty-router": "^5.0.23",
|
||||||
"prettier": "^3.8.1"
|
"prettier": "^3.8.1"
|
||||||
},
|
},
|
||||||
"packageManager": "pnpm@10.29.3+sha512.498e1fb4cca5aa06c1dcf2611e6fafc50972ffe7189998c409e90de74566444298ffe43e6cd2acdc775ba1aa7cc5e092a8b7054c811ba8c5770f84693d33d2dc"
|
"packageManager": "pnpm@10.32.1+sha512.a706938f0e89ac1456b6563eab4edf1d1faf3368d1191fc5c59790e96dc918e4456ab2e67d613de1043d2e8c81f87303e6b40d4ffeca9df15ef1ad567348f2be"
|
||||||
}
|
}
|
||||||
|
|||||||
32
mock-api/pnpm-lock.yaml
generated
32
mock-api/pnpm-lock.yaml
generated
@@ -18,8 +18,8 @@ importers:
|
|||||||
specifier: ^3.5.4
|
specifier: ^3.5.4
|
||||||
version: 3.5.4
|
version: 3.5.4
|
||||||
itty-router:
|
itty-router:
|
||||||
specifier: ^5.0.22
|
specifier: ^5.0.23
|
||||||
version: 5.0.22
|
version: 5.0.23
|
||||||
prettier:
|
prettier:
|
||||||
specifier: ^3.8.1
|
specifier: ^3.8.1
|
||||||
version: 3.8.1
|
version: 3.8.1
|
||||||
@@ -46,8 +46,8 @@ packages:
|
|||||||
resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==}
|
resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==}
|
||||||
engines: {node: '>=6.9.0'}
|
engines: {node: '>=6.9.0'}
|
||||||
|
|
||||||
'@babel/parser@7.29.0':
|
'@babel/parser@7.29.2':
|
||||||
resolution: {integrity: sha512-IyDgFV5GeDUVX4YdF/3CPULtVGSXXMLh1xVIgdCgxApktqnQV0r7/8Nqthg+8YLGaAtdyIlo2qIdZrbCv4+7ww==}
|
resolution: {integrity: sha512-4GgRzy/+fsBa72/RZVJmGKPmZu9Byn8o4MoLpmNe1m8ZfYnz5emHLQz3U4gLud6Zwl0RZIcgiLD7Uq7ySFuDLA==}
|
||||||
engines: {node: '>=6.0.0'}
|
engines: {node: '>=6.0.0'}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
|
|
||||||
@@ -131,8 +131,8 @@ packages:
|
|||||||
resolution: {integrity: sha512-YikH+7CUTOtP44ZTnUhR7Ic2UASBPOqmaRkRKxRbywPTe5VxF7RRCck4af9wutiZ/QKM5nME9Bie2fFaPz5Gug==}
|
resolution: {integrity: sha512-YikH+7CUTOtP44ZTnUhR7Ic2UASBPOqmaRkRKxRbywPTe5VxF7RRCck4af9wutiZ/QKM5nME9Bie2fFaPz5Gug==}
|
||||||
engines: {node: '>=14.0.0'}
|
engines: {node: '>=14.0.0'}
|
||||||
|
|
||||||
itty-router@5.0.22:
|
itty-router@5.0.23:
|
||||||
resolution: {integrity: sha512-9hmdGErWdYDOurGYxSbqLhy4EFReIwk71hMZTJ5b+zfa2zjMNV1ftFno2b8VjAQvX615gNB8Qxbl9JMRqHnIVA==}
|
resolution: {integrity: sha512-i49WU+SNPrwOZA4Z61En1RYd5h2Lcqa+5IvCpMrNi4dxymzJK15ozUUnRrWIUAv95Zamd4eJPAot2UvHRrQg7w==}
|
||||||
|
|
||||||
javascript-natural-sort@0.7.1:
|
javascript-natural-sort@0.7.1:
|
||||||
resolution: {integrity: sha512-nO6jcEfZWQXDhOiBtG2KvKyEptz7RVbpGP4vTD2hLBdmNQSsCiicO2Ioinv6UI4y9ukqnBpy+XZ9H6uLNgJTlw==}
|
resolution: {integrity: sha512-nO6jcEfZWQXDhOiBtG2KvKyEptz7RVbpGP4vTD2hLBdmNQSsCiicO2Ioinv6UI4y9ukqnBpy+XZ9H6uLNgJTlw==}
|
||||||
@@ -148,8 +148,8 @@ packages:
|
|||||||
lodash-es@4.17.23:
|
lodash-es@4.17.23:
|
||||||
resolution: {integrity: sha512-kVI48u3PZr38HdYz98UmfPnXl2DXrpdctLrFLCd3kOx1xUkOmpFPx7gCWWM5MPkL/fD8zb+Ph0QzjGFs4+hHWg==}
|
resolution: {integrity: sha512-kVI48u3PZr38HdYz98UmfPnXl2DXrpdctLrFLCd3kOx1xUkOmpFPx7gCWWM5MPkL/fD8zb+Ph0QzjGFs4+hHWg==}
|
||||||
|
|
||||||
minimatch@9.0.5:
|
minimatch@9.0.9:
|
||||||
resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==}
|
resolution: {integrity: sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==}
|
||||||
engines: {node: '>=16 || 14 >=14.17'}
|
engines: {node: '>=16 || 14 >=14.17'}
|
||||||
|
|
||||||
ms@2.1.3:
|
ms@2.1.3:
|
||||||
@@ -185,7 +185,7 @@ snapshots:
|
|||||||
|
|
||||||
'@babel/generator@7.29.1':
|
'@babel/generator@7.29.1':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@babel/parser': 7.29.0
|
'@babel/parser': 7.29.2
|
||||||
'@babel/types': 7.29.0
|
'@babel/types': 7.29.0
|
||||||
'@jridgewell/gen-mapping': 0.3.13
|
'@jridgewell/gen-mapping': 0.3.13
|
||||||
'@jridgewell/trace-mapping': 0.3.31
|
'@jridgewell/trace-mapping': 0.3.31
|
||||||
@@ -197,14 +197,14 @@ snapshots:
|
|||||||
|
|
||||||
'@babel/helper-validator-identifier@7.28.5': {}
|
'@babel/helper-validator-identifier@7.28.5': {}
|
||||||
|
|
||||||
'@babel/parser@7.29.0':
|
'@babel/parser@7.29.2':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@babel/types': 7.29.0
|
'@babel/types': 7.29.0
|
||||||
|
|
||||||
'@babel/template@7.28.6':
|
'@babel/template@7.28.6':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@babel/code-frame': 7.29.0
|
'@babel/code-frame': 7.29.0
|
||||||
'@babel/parser': 7.29.0
|
'@babel/parser': 7.29.2
|
||||||
'@babel/types': 7.29.0
|
'@babel/types': 7.29.0
|
||||||
|
|
||||||
'@babel/traverse@7.29.0':
|
'@babel/traverse@7.29.0':
|
||||||
@@ -212,7 +212,7 @@ snapshots:
|
|||||||
'@babel/code-frame': 7.29.0
|
'@babel/code-frame': 7.29.0
|
||||||
'@babel/generator': 7.29.1
|
'@babel/generator': 7.29.1
|
||||||
'@babel/helper-globals': 7.28.0
|
'@babel/helper-globals': 7.28.0
|
||||||
'@babel/parser': 7.29.0
|
'@babel/parser': 7.29.2
|
||||||
'@babel/template': 7.28.6
|
'@babel/template': 7.28.6
|
||||||
'@babel/types': 7.29.0
|
'@babel/types': 7.29.0
|
||||||
debug: 4.4.3
|
debug: 4.4.3
|
||||||
@@ -249,12 +249,12 @@ snapshots:
|
|||||||
'@trivago/prettier-plugin-sort-imports@6.0.2(prettier@3.8.1)':
|
'@trivago/prettier-plugin-sort-imports@6.0.2(prettier@3.8.1)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@babel/generator': 7.29.1
|
'@babel/generator': 7.29.1
|
||||||
'@babel/parser': 7.29.0
|
'@babel/parser': 7.29.2
|
||||||
'@babel/traverse': 7.29.0
|
'@babel/traverse': 7.29.0
|
||||||
'@babel/types': 7.29.0
|
'@babel/types': 7.29.0
|
||||||
javascript-natural-sort: 0.7.1
|
javascript-natural-sort: 0.7.1
|
||||||
lodash-es: 4.17.23
|
lodash-es: 4.17.23
|
||||||
minimatch: 9.0.5
|
minimatch: 9.0.9
|
||||||
parse-imports-exports: 0.2.4
|
parse-imports-exports: 0.2.4
|
||||||
prettier: 3.8.1
|
prettier: 3.8.1
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
@@ -283,7 +283,7 @@ snapshots:
|
|||||||
dezalgo: 1.0.4
|
dezalgo: 1.0.4
|
||||||
once: 1.4.0
|
once: 1.4.0
|
||||||
|
|
||||||
itty-router@5.0.22: {}
|
itty-router@5.0.23: {}
|
||||||
|
|
||||||
javascript-natural-sort@0.7.1: {}
|
javascript-natural-sort@0.7.1: {}
|
||||||
|
|
||||||
@@ -293,7 +293,7 @@ snapshots:
|
|||||||
|
|
||||||
lodash-es@4.17.23: {}
|
lodash-es@4.17.23: {}
|
||||||
|
|
||||||
minimatch@9.0.5:
|
minimatch@9.0.9:
|
||||||
dependencies:
|
dependencies:
|
||||||
brace-expansion: 2.0.2
|
brace-expansion: 2.0.2
|
||||||
|
|
||||||
|
|||||||
@@ -21,8 +21,8 @@ extra_configs =
|
|||||||
pio_local.ini
|
pio_local.ini
|
||||||
|
|
||||||
[common]
|
[common]
|
||||||
core_build_flags = -std=c++17 -std=gnu++17 -O3 -flto=auto -Wno-type-limits -Wall -Wextra -Wno-unused-parameter -Wno-unused-variable -Wno-format -Wno-missing-field-initializers
|
core_build_flags = -std=c++17 -std=gnu++17 -O3 -Wno-type-limits -Wall -Wextra -Wno-unused-parameter -Wno-unused-variable -Wno-format -Wno-missing-field-initializers
|
||||||
core_unbuild_flags = -std=gnu++11 -fno-lto
|
core_unbuild_flags = -std=gnu++11
|
||||||
|
|
||||||
my_build_flags =
|
my_build_flags =
|
||||||
|
|
||||||
@@ -59,7 +59,7 @@ framework = arduino
|
|||||||
board_build.partitions = partitions/esp32_partition_4M.csv
|
board_build.partitions = partitions/esp32_partition_4M.csv
|
||||||
board_upload.flash_size = 4MB
|
board_upload.flash_size = 4MB
|
||||||
board_build.app_partition_name = app0
|
board_build.app_partition_name = app0
|
||||||
platform = https://github.com/tasmota/platform-espressif32/releases/download/2026.03.30/platform-espressif32.zip ; Tasmota Arduino Core 3.1.10 based on IDF 5.3.4.20260127
|
platform = https://github.com/tasmota/platform-espressif32/releases/download/2026.03.30/platform-espressif32.zip ; Tasmota Arduino Core 3.1.11 based on IDF 5.3.4.20260127
|
||||||
|
|
||||||
; 16MB Flash variants
|
; 16MB Flash variants
|
||||||
[espressif32_base_16M]
|
[espressif32_base_16M]
|
||||||
@@ -67,7 +67,7 @@ framework = arduino
|
|||||||
board_build.partitions = partitions/esp32_partition_16M.csv
|
board_build.partitions = partitions/esp32_partition_16M.csv
|
||||||
board_upload.flash_size = 16MB
|
board_upload.flash_size = 16MB
|
||||||
board_build.app_partition_name = app0
|
board_build.app_partition_name = app0
|
||||||
platform = https://github.com/tasmota/platform-espressif32/releases/download/2026.03.30/platform-espressif32.zip ; Tasmota Arduino Core 3.1.10 based on IDF 5.3.4.20260127
|
platform = https://github.com/tasmota/platform-espressif32/releases/download/2026.03.30/platform-espressif32.zip ; Tasmota Arduino Core 3.1.11 based on IDF 5.3.4.20260127
|
||||||
|
|
||||||
; 32MB Flash variants
|
; 32MB Flash variants
|
||||||
[espressif32_base_32M]
|
[espressif32_base_32M]
|
||||||
@@ -75,7 +75,7 @@ framework = arduino
|
|||||||
board_build.partitions = partitions/esp32_partition_32M.csv
|
board_build.partitions = partitions/esp32_partition_32M.csv
|
||||||
board_upload.flash_size = 32MB
|
board_upload.flash_size = 32MB
|
||||||
board_build.app_partition_name = app0
|
board_build.app_partition_name = app0
|
||||||
platform = https://github.com/tasmota/platform-espressif32/releases/download/2026.03.30/platform-espressif32.zip ; Tasmota Arduino Core 3.1.10 based on IDF 5.3.4.20260127
|
platform = https://github.com/tasmota/platform-espressif32/releases/download/2026.03.30/platform-espressif32.zip ; Tasmota Arduino Core 3.1.11 based on IDF 5.3.4.20260127
|
||||||
|
|
||||||
[env]
|
[env]
|
||||||
build_flags =
|
build_flags =
|
||||||
|
|||||||
@@ -1325,3 +1325,7 @@ ACAO
|
|||||||
ACAH
|
ACAH
|
||||||
ACAC
|
ACAC
|
||||||
coolingtype
|
coolingtype
|
||||||
|
starttls
|
||||||
|
recp
|
||||||
|
READYCLIENT
|
||||||
|
readymail
|
||||||
|
|||||||
@@ -70,9 +70,9 @@ class APSettings {
|
|||||||
IPAddress subnetMask;
|
IPAddress subnetMask;
|
||||||
|
|
||||||
bool operator==(const APSettings & settings) const {
|
bool operator==(const APSettings & settings) const {
|
||||||
return provisionMode == settings.provisionMode && channel == settings.channel && ssidHidden == settings.ssidHidden
|
return provisionMode == settings.provisionMode && channel == settings.channel && ssidHidden == settings.ssidHidden && maxClients == settings.maxClients
|
||||||
&& maxClients == settings.maxClients && localIP == settings.localIP && gatewayIP == settings.gatewayIP
|
&& localIP == settings.localIP && gatewayIP == settings.gatewayIP && subnetMask == settings.subnetMask && ssid == settings.ssid
|
||||||
&& subnetMask == settings.subnetMask && ssid == settings.ssid && password == settings.password;
|
&& password == settings.password;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void read(const APSettings & settings, JsonObject root);
|
static void read(const APSettings & settings, JsonObject root);
|
||||||
|
|||||||
@@ -886,9 +886,9 @@ std::string AnalogSensor::get_metrics_prometheus() {
|
|||||||
result += (std::string) "\n# TYPE emsesp_" + sensor.name() + " gauge\n";
|
result += (std::string) "\n# TYPE emsesp_" + sensor.name() + " gauge\n";
|
||||||
result += (std::string) "emsesp_" + sensor.name() + " ";
|
result += (std::string) "emsesp_" + sensor.name() + " ";
|
||||||
if (sensor.type() != AnalogType::DIGITAL_OUT && sensor.type() != AnalogType::DIGITAL_IN) {
|
if (sensor.type() != AnalogType::DIGITAL_OUT && sensor.type() != AnalogType::DIGITAL_IN) {
|
||||||
result += (std::string) Helpers::render_value(val, sensor.value(), 2) + "\n";
|
result += (std::string)Helpers::render_value(val, sensor.value(), 2) + "\n";
|
||||||
} else {
|
} else {
|
||||||
result += (std::string) (sensor.value() == 0 ? "0\n" : "1\n");
|
result += (std::string)(sensor.value() == 0 ? "0\n" : "1\n");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
|
|||||||
@@ -20,7 +20,7 @@
|
|||||||
#define EMSESP_HELPERS_H
|
#define EMSESP_HELPERS_H
|
||||||
|
|
||||||
#include "telegram.h" // for EMS_VALUE_* settings
|
#include "telegram.h" // for EMS_VALUE_* settings
|
||||||
#include "common.h"
|
#include "emsesp_common.h"
|
||||||
|
|
||||||
namespace emsesp {
|
namespace emsesp {
|
||||||
|
|
||||||
|
|||||||
@@ -20,6 +20,7 @@
|
|||||||
#include "emsesp.h" // for send_raw_telegram() command
|
#include "emsesp.h" // for send_raw_telegram() command
|
||||||
|
|
||||||
#ifndef EMSESP_STANDALONE
|
#ifndef EMSESP_STANDALONE
|
||||||
|
#include "esp_image_format.h"
|
||||||
#include "esp_ota_ops.h"
|
#include "esp_ota_ops.h"
|
||||||
#include "esp_partition.h"
|
#include "esp_partition.h"
|
||||||
#endif
|
#endif
|
||||||
@@ -183,7 +184,7 @@ bool System::command_sendmail(const char * value, const int8_t id) {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// LOG_INFO("autenticate %s:%s", login.c_str(), pass.c_str());
|
// LOG_INFO("authenticate %s:%s", login.c_str(), pass.c_str());
|
||||||
smtp->authenticate(login, pass, readymail_auth_password);
|
smtp->authenticate(login, pass, readymail_auth_password);
|
||||||
if (!smtp->isAuthenticated()) {
|
if (!smtp->isAuthenticated()) {
|
||||||
LOG_ERROR("Sendmail authenticate error");
|
LOG_ERROR("Sendmail authenticate error");
|
||||||
@@ -210,7 +211,7 @@ bool System::command_sendmail(const char * value, const int8_t id) {
|
|||||||
msg.headers.add(rfc822_from, sender);
|
msg.headers.add(rfc822_from, sender);
|
||||||
msg.headers.add(rfc822_to, recp);
|
msg.headers.add(rfc822_to, recp);
|
||||||
|
|
||||||
// Use addCustom to add custom header e.g. Imprtance and Priority.
|
// Use addCustom to add custom header e.g. Importance and Priority.
|
||||||
// msg.headers.addCustom("Importance", PRIORITY);
|
// msg.headers.addCustom("Importance", PRIORITY);
|
||||||
// msg.headers.addCustom("X-MSMail-Priority", PRIORITY);
|
// msg.headers.addCustom("X-MSMail-Priority", PRIORITY);
|
||||||
// msg.headers.addCustom("X-Priority", PRIORITY_NUM);
|
// msg.headers.addCustom("X-Priority", PRIORITY_NUM);
|
||||||
@@ -469,7 +470,13 @@ void System::get_partition_info() {
|
|||||||
strftime(time_string, sizeof(time_string), "%FT%T", localtime(&d));
|
strftime(time_string, sizeof(time_string), "%FT%T", localtime(&d));
|
||||||
p_info.install_date = d > 1500000000L ? time_string : "";
|
p_info.install_date = d > 1500000000L ? time_string : "";
|
||||||
|
|
||||||
p_info.size = part->size / 1024; // set size in KB
|
esp_image_metadata_t meta = {};
|
||||||
|
esp_partition_pos_t part_pos = {.offset = part->address, .size = part->size};
|
||||||
|
if (esp_image_verify(ESP_IMAGE_VERIFY_SILENT, &part_pos, &meta) == ESP_OK) {
|
||||||
|
p_info.size = meta.image_len / 1024; // actual firmware size in KB
|
||||||
|
} else {
|
||||||
|
p_info.size = 0;
|
||||||
|
}
|
||||||
|
|
||||||
partition_info_[part->label] = p_info;
|
partition_info_[part->label] = p_info;
|
||||||
}
|
}
|
||||||
@@ -493,7 +500,7 @@ void System::set_partition_install_date() {
|
|||||||
snprintf(c, sizeof(c), "d_%s", current_partition);
|
snprintf(c, sizeof(c), "d_%s", current_partition);
|
||||||
time_t d = EMSESP::nvs_.getULong(c, 0);
|
time_t d = EMSESP::nvs_.getULong(c, 0);
|
||||||
if (d < 1500000000L) {
|
if (d < 1500000000L) {
|
||||||
LOG_INFO("Firmware is fresh, setting the new install date in partition %s", current_partition);
|
LOG_DEBUG("Setting the install date in partition %s", current_partition);
|
||||||
auto t = time(nullptr) - uuid::get_uptime_sec();
|
auto t = time(nullptr) - uuid::get_uptime_sec();
|
||||||
EMSESP::nvs_.putULong(c, t);
|
EMSESP::nvs_.putULong(c, t);
|
||||||
}
|
}
|
||||||
@@ -1336,7 +1343,7 @@ void System::show_system(uuid::console::Shell & shell) {
|
|||||||
partition.first.c_str(),
|
partition.first.c_str(),
|
||||||
partition.second.version.c_str(),
|
partition.second.version.c_str(),
|
||||||
partition.second.size,
|
partition.second.size,
|
||||||
partition.second.install_date.empty() ? "" : (std::string(", installed ") + partition.second.install_date).c_str(),
|
partition.second.install_date.empty() ? "" : (std::string(", installed on ") + partition.second.install_date).c_str(),
|
||||||
(strcmp(esp_ota_get_running_partition()->label, partition.first.c_str()) == 0) ? "** active **" : "");
|
(strcmp(esp_ota_get_running_partition()->label, partition.first.c_str()) == 0) ? "** active **" : "");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
#define EMSESP_APP_VERSION "3.8.2-dev.10"
|
#define EMSESP_APP_VERSION "3.8.2-dev.C10"
|
||||||
|
|||||||
Reference in New Issue
Block a user