Browse Source

Update Hashicon & messages provisioning

pull/21/head
Sacha Weatherstone 4 years ago
parent
commit
0245a95fa9
  1. 10
      package.json
  2. 216
      pnpm-lock.yaml
  3. 12
      src/core/slices/meshtasticSlice.ts
  4. 6
      src/pages/Extensions/Info.tsx
  5. 5
      src/pages/Messages/Message.tsx
  6. 5
      src/pages/Messages/index.tsx
  7. 5
      src/pages/Nodes/NodeCard.tsx
  8. 5
      src/pages/Nodes/index.tsx

10
package.json

@ -12,7 +12,7 @@
"lint": "eslint 'src/**/*.{ts,tsx}'"
},
"dependencies": {
"@emeraldpay/hashicon-react": "^0.5.1",
"@emeraldpay/hashicon-react": "^0.5.2",
"@floating-ui/react-dom": "^0.4.3",
"@meshtastic/components": "^1.0.23",
"@meshtastic/meshtasticjs": "^0.6.39",
@ -25,7 +25,7 @@
"react-dom": "^17.0.2",
"react-error-boundary": "^3.1.4",
"react-flow-renderer": "^10.0.0-next.38",
"react-hook-form": "^7.26.0",
"react-hook-form": "^7.26.1",
"react-icons": "^4.3.1",
"react-json-pretty": "^2.2.0",
"react-multi-select-component": "^4.2.1",
@ -45,8 +45,8 @@
"@types/react-dom": "^17.0.11",
"@types/w3c-web-serial": "^1.0.2",
"@types/web-bluetooth": "^0.0.12",
"@typescript-eslint/eslint-plugin": "^5.10.2",
"@typescript-eslint/parser": "^5.10.2",
"@typescript-eslint/eslint-plugin": "^5.11.0",
"@typescript-eslint/parser": "^5.11.0",
"@verypossible/eslint-config": "^1.6.1",
"@vitejs/plugin-react": "^1.1.4",
"autoprefixer": "^10.4.2",
@ -63,7 +63,7 @@
"postcss": "^8.4.6",
"prettier": "^2.5.1",
"prettier-plugin-tailwindcss": "^0.1.5",
"tailwindcss": "^3.0.18",
"tailwindcss": "^3.0.19",
"tar": "^6.1.11",
"typescript": "^4.5.5",
"vite": "^2.7.13",

216
pnpm-lock.yaml

@ -1,7 +1,7 @@
lockfileVersion: 5.3
specifiers:
'@emeraldpay/hashicon-react': ^0.5.1
'@emeraldpay/hashicon-react': ^0.5.2
'@floating-ui/react-dom': ^0.4.3
'@meshtastic/components': ^1.0.23
'@meshtastic/meshtasticjs': ^0.6.39
@ -11,8 +11,8 @@ specifiers:
'@types/react-dom': ^17.0.11
'@types/w3c-web-serial': ^1.0.2
'@types/web-bluetooth': ^0.0.12
'@typescript-eslint/eslint-plugin': ^5.10.2
'@typescript-eslint/parser': ^5.10.2
'@typescript-eslint/eslint-plugin': ^5.11.0
'@typescript-eslint/parser': ^5.11.0
'@verypossible/eslint-config': ^1.6.1
'@vitejs/plugin-react': ^1.1.4
autoprefixer: ^10.4.2
@ -37,7 +37,7 @@ specifiers:
react-dom: ^17.0.2
react-error-boundary: ^3.1.4
react-flow-renderer: ^10.0.0-next.38
react-hook-form: ^7.26.0
react-hook-form: ^7.26.1
react-icons: ^4.3.1
react-json-pretty: ^2.2.0
react-multi-select-component: ^4.2.1
@ -47,7 +47,7 @@ specifiers:
rfc4648: ^1.5.1
rollup-plugin-visualizer: ^5.5.4
swr: ^1.2.1
tailwindcss: ^3.0.18
tailwindcss: ^3.0.19
tar: ^6.1.11
timeago-react: ^3.0.4
type-route: ^0.6.0
@ -59,7 +59,7 @@ specifiers:
workbox-window: ^6.4.2
dependencies:
'@emeraldpay/hashicon-react': 0.5.1
'@emeraldpay/hashicon-react': 0.5.2
'@floating-ui/react-dom': 0.4.3_b8fdba992ce7d797017dc07106486496
'@meshtastic/components': 1.0.23_@[email protected]
'@meshtastic/meshtasticjs': 0.6.39
@ -72,7 +72,7 @@ dependencies:
react-dom: 17.0[email protected]
react-error-boundary: 3.1[email protected]
react-flow-renderer: 10.0.0-[email protected][email protected]
react-hook-form: 7.26.0[email protected]
react-hook-form: 7.26.1[email protected]
react-icons: 4.3[email protected]
react-json-pretty: 2.2[email protected][email protected]
react-multi-select-component: 4.2[email protected][email protected]
@ -92,8 +92,8 @@ devDependencies:
'@types/react-dom': 17.0.11
'@types/w3c-web-serial': 1.0.2
'@types/web-bluetooth': 0.0.12
'@typescript-eslint/eslint-plugin': 5.10.2_2595c2126aec4d4b6e944b931dabb4c2
'@typescript-eslint/parser': 5.10.2[email protected][email protected]
'@typescript-eslint/eslint-plugin': 5.11.0_de5a1ddccd75ca1e499b8b8491d3dcba
'@typescript-eslint/parser': 5.11.0[email protected][email protected]
'@verypossible/eslint-config': 1.6[email protected]
'@vitejs/plugin-react': 1.1.4
autoprefixer: 10.4[email protected]
@ -110,7 +110,7 @@ devDependencies:
postcss: 8.4.6
prettier: 2.5.1
prettier-plugin-tailwindcss: 0.1[email protected]
tailwindcss: 3.0.18_833e1018ad0d7954aa80c53675939269
tailwindcss: 3.0.19_833e1018ad0d7954aa80c53675939269
tar: 6.1.11
typescript: 4.5.5
vite: 2.7.13
@ -120,8 +120,8 @@ devDependencies:
packages:
/@ampproject/remapping/2.0.4:
resolution: {integrity: sha512-zU3pj3pf//YhaoozRTYKaL20KopXrzuZFc/8Ylc49AuV8grYKH23TTq9JJoR70F8zQbil58KjSchZTWeX+jrIQ==}
/@ampproject/remapping/2.1.0:
resolution: {integrity: sha512-d5RysTlJ7hmw5Tw4UxgxcY3lkMe92n8sXCcuLPAyIAHK6j8DefDwtGnVVDgOnv+RnEosulDJ9NPKQL27bDId0g==}
engines: {node: '>=6.0.0'}
dependencies:
'@jridgewell/trace-mapping': 0.3.2
@ -161,7 +161,7 @@ packages:
resolution: {integrity: sha512-x/5Ea+RO5MvF9ize5DeVICJoVrNv0Mi2RnIABrZEKYvPEpldXwauPkgvYA17cKa6WpU3LoYvYbuEMFtSNFsarA==}
engines: {node: '>=6.9.0'}
dependencies:
'@ampproject/remapping': 2.0.4
'@ampproject/remapping': 2.1.0
'@babel/code-frame': 7.16.7
'@babel/generator': 7.17.0
'@babel/helper-compilation-targets': 7.16.7_@[email protected]
@ -1323,21 +1323,20 @@ packages:
to-fast-properties: 2.0.0
dev: true
/@emeraldpay/hashicon-react/0.5.1:
resolution: {integrity: sha512-WoLPBpdwseNexAQHDmr0f9nxc8HfNpQxNI2bw/04yYpoeQg61r52iwk3EHV/QCg5hnAcF6wKdyCnybyU8UBtHQ==}
/@emeraldpay/hashicon-react/0.5.2:
resolution: {integrity: sha512-XCoYKpq8QQOniiSZf5ouzdvXbKfG6q4ICHRqCO/GNofiF0Ra+LR/7+tomHlXVcLPBS9sDAoZQQw/Sr24KRAbJg==}
engines: {node: '>=8'}
dependencies:
'@emeraldpay/hashicon': 0.5.1
'@emeraldpay/hashicon': 0.5.2
react: 16.14.0
dev: false
/@emeraldpay/hashicon/0.5.1:
resolution: {integrity: sha512-pMvnz6CkCqzoB2srA3B/gCKIi6h24O1Chfj919OqyCC08Kc0zCCok6iQoJ2cP5T+P2utGeR/El7jE4Q2JgmP+A==}
/@emeraldpay/hashicon/0.5.2:
resolution: {integrity: sha512-MNsjV+Vik+ofOYmGPcdAQW4CoSSrTE2Iq2xYNS8PxV84QrgOLTsC/pV6EWb1N/dTY9ndMV/RAAzGh6cmrZf4zA==}
engines: {node: '>=8'}
dependencies:
'@stablelib/blake2s': 1.0.1
js-sha3: 0.8.0
text-encoding: 0.7.0
dev: false
/@emotion/cache/11.7.1:
@ -1431,7 +1430,7 @@ packages:
ignore: 4.0.6
import-fresh: 3.3.0
js-yaml: 3.14.1
minimatch: 3.0.4
minimatch: 3.0.5
strip-json-comments: 3.1.1
transitivePeerDependencies:
- supports-color
@ -1448,7 +1447,7 @@ packages:
ignore: 4.0.6
import-fresh: 3.3.0
js-yaml: 4.1.0
minimatch: 3.0.4
minimatch: 3.0.5
strip-json-comments: 3.1.1
transitivePeerDependencies:
- supports-color
@ -1491,7 +1490,7 @@ packages:
dependencies:
'@humanwhocodes/object-schema': 1.2.1
debug: 4.3.3
minimatch: 3.0.4
minimatch: 3.0.5
transitivePeerDependencies:
- supports-color
dev: true
@ -1502,7 +1501,7 @@ packages:
dependencies:
'@humanwhocodes/object-schema': 1.2.1
debug: 4.3.3
minimatch: 3.0.4
minimatch: 3.0.5
transitivePeerDependencies:
- supports-color
dev: true
@ -1643,7 +1642,7 @@ packages:
reselect: 4.1.5
dev: false
/@rollup/plugin-babel/5.3.0_@[email protected][email protected].0:
/@rollup/plugin-babel/5.3.0_@[email protected][email protected].1:
resolution: {integrity: sha512-9uIC8HZOnVLrLHxayq/PTzw+uS25E14KPUBh5ktF+18Mjo5yK0ToMMx6epY0uEgkjwJw0aBW4x2horYXh8juWw==}
engines: {node: '>= 10.0.0'}
peerDependencies:
@ -1656,36 +1655,36 @@ packages:
dependencies:
'@babel/core': 7.17.0
'@babel/helper-module-imports': 7.16.7
'@rollup/pluginutils': 3.1[email protected].0
rollup: 2.67.0
'@rollup/pluginutils': 3.1[email protected].1
rollup: 2.67.1
dev: true
/@rollup/plugin-node-resolve/[email protected].0:
/@rollup/plugin-node-resolve/[email protected].1:
resolution: {integrity: sha512-yc2n43jcqVyGE2sqV5/YCmocy9ArjVAP/BeXyTtADTBBX6V0e5UMqwO8CdQ0kzjb6zu5P1qMzsScCMRvE9OlVg==}
engines: {node: '>= 10.0.0'}
peerDependencies:
rollup: ^1.20.0||^2.0.0
dependencies:
'@rollup/pluginutils': 3.1[email protected].0
'@rollup/pluginutils': 3.1[email protected].1
'@types/resolve': 1.17.1
builtin-modules: 3.2.0
deepmerge: 4.2.2
is-module: 1.0.0
resolve: 1.22.0
rollup: 2.67.0
rollup: 2.67.1
dev: true
/@rollup/plugin-replace/[email protected].0:
/@rollup/plugin-replace/[email protected].1:
resolution: {integrity: sha512-IGcu+cydlUMZ5En85jxHH4qj2hta/11BHq95iHEyb2sbgiN0eCdzvUcHw5gt9pBL5lTi4JDYJ1acCoMGpTvEZg==}
peerDependencies:
rollup: ^1.20.0 || ^2.0.0
dependencies:
'@rollup/pluginutils': 3.1[email protected].0
'@rollup/pluginutils': 3.1[email protected].1
magic-string: 0.25.7
rollup: 2.67.0
rollup: 2.67.1
dev: true
/@rollup/pluginutils/[email protected].0:
/@rollup/pluginutils/[email protected].1:
resolution: {integrity: sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==}
engines: {node: '>= 8.0.0'}
peerDependencies:
@ -1694,7 +1693,7 @@ packages:
'@types/estree': 0.0.39
estree-walker: 1.0.1
picomatch: 2.3.1
rollup: 2.67.0
rollup: 2.67.1
dev: true
/@rollup/pluginutils/4.1.2:
@ -1791,8 +1790,8 @@ packages:
'@types/geojson': 7946.0.8
dev: true
/@types/node/17.0.15:
resolution: {integrity: sha512-zWt4SDDv1S9WRBNxLFxFRHxdD9tvH8f5/kg5/IaLFdnSNXsDY4eL3Q3XXN+VxUnWIhyVFDwcsmAprvwXoM/ClA==}
/@types/node/17.0.16:
resolution: {integrity: sha512-ydLaGVfQOQ6hI1xK2A5nVh8bl0OGoIfYMxPWHqqYe9bTkWCfqiVvZoh2I/QF2sNSkZzZyROBoTefIEI+PB6iIA==}
dev: true
/@types/parse-json/4.0.0:
@ -1833,7 +1832,7 @@ packages:
/@types/resolve/1.17.1:
resolution: {integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==}
dependencies:
'@types/node': 17.0.15
'@types/node': 17.0.16
dev: true
/@types/scheduler/0.16.2:
@ -1877,8 +1876,8 @@ packages:
- supports-color
dev: true
/@typescript-eslint/eslint-plugin/5.10.2_2595c2126aec4d4b6e944b931dabb4c2:
resolution: {integrity: sha512-4W/9lLuE+v27O/oe7hXJKjNtBLnZE8tQAFpapdxwSVHqtmIoPB1gph3+ahNwVuNL37BX7YQHyGF9Xv6XCnIX2Q==}
/@typescript-eslint/eslint-plugin/5.11.0_de5a1ddccd75ca1e499b8b8491d3dcba:
resolution: {integrity: sha512-HJh33bgzXe6jGRocOj4FmefD7hRY4itgjzOrSs3JPrTNXsX7j5+nQPciAUj/1nZtwo2kAc3C75jZO+T23gzSGw==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
'@typescript-eslint/parser': ^5.0.0
@ -1888,10 +1887,10 @@ packages:
typescript:
optional: true
dependencies:
'@typescript-eslint/parser': 5.10.2[email protected][email protected]
'@typescript-eslint/scope-manager': 5.10.2
'@typescript-eslint/type-utils': 5.10.2[email protected][email protected]
'@typescript-eslint/utils': 5.10.2[email protected][email protected]
'@typescript-eslint/parser': 5.11.0[email protected][email protected]
'@typescript-eslint/scope-manager': 5.11.0
'@typescript-eslint/type-utils': 5.11.0[email protected][email protected]
'@typescript-eslint/utils': 5.11.0[email protected][email protected]
debug: 4.3.3
eslint: 8.8.0
functional-red-black-tree: 1.0.1
@ -1942,8 +1941,8 @@ packages:
- supports-color
dev: true
/@typescript-eslint/parser/5.10.2[email protected][email protected]:
resolution: {integrity: sha512-JaNYGkaQVhP6HNF+lkdOr2cAs2wdSZBoalE22uYWq8IEv/OVH0RksSGydk+sW8cLoSeYmC+OHvRyv2i4AQ7Czg==}
/@typescript-eslint/parser/5.11.0[email protected][email protected]:
resolution: {integrity: sha512-x0DCjetHZYBRovJdr3U0zG9OOdNXUaFLJ82ehr1AlkArljJuwEsgnud+Q7umlGDFLFrs8tU8ybQDFocp/eX8mQ==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
@ -1952,9 +1951,9 @@ packages:
typescript:
optional: true
dependencies:
'@typescript-eslint/scope-manager': 5.10.2
'@typescript-eslint/types': 5.10.2
'@typescript-eslint/typescript-estree': 5.10.2[email protected]
'@typescript-eslint/scope-manager': 5.11.0
'@typescript-eslint/types': 5.11.0
'@typescript-eslint/typescript-estree': 5.11.0[email protected]
debug: 4.3.3
eslint: 8.8.0
typescript: 4.5.5
@ -1970,16 +1969,16 @@ packages:
'@typescript-eslint/visitor-keys': 4.33.0
dev: true
/@typescript-eslint/scope-manager/5.10.2:
resolution: {integrity: sha512-39Tm6f4RoZoVUWBYr3ekS75TYgpr5Y+X0xLZxXqcZNDWZdJdYbKd3q2IR4V9y5NxxiPu/jxJ8XP7EgHiEQtFnw==}
/@typescript-eslint/scope-manager/5.11.0:
resolution: {integrity: sha512-z+K4LlahDFVMww20t/0zcA7gq/NgOawaLuxgqGRVKS0PiZlCTIUtX0EJbC0BK1JtR4CelmkPK67zuCgpdlF4EA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dependencies:
'@typescript-eslint/types': 5.10.2
'@typescript-eslint/visitor-keys': 5.10.2
'@typescript-eslint/types': 5.11.0
'@typescript-eslint/visitor-keys': 5.11.0
dev: true
/@typescript-eslint/type-utils/5.10.2[email protected][email protected]:
resolution: {integrity: sha512-uRKSvw/Ccs5FYEoXW04Z5VfzF2iiZcx8Fu7DGIB7RHozuP0VbKNzP1KfZkHBTM75pCpsWxIthEH1B33dmGBKHw==}
/@typescript-eslint/type-utils/5.11.0[email protected][email protected]:
resolution: {integrity: sha512-wDqdsYO6ofLaD4DsGZ0jGwxp4HrzD2YKulpEZXmgN3xo4BHJwf7kq49JTRpV0Gx6bxkSUmc9s0EIK1xPbFFpIA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
eslint: '*'
@ -1988,7 +1987,7 @@ packages:
typescript:
optional: true
dependencies:
'@typescript-eslint/utils': 5.10.2[email protected][email protected]
'@typescript-eslint/utils': 5.11.0[email protected][email protected]
debug: 4.3.3
eslint: 8.8.0
tsutils: 3.21[email protected]
@ -2002,8 +2001,8 @@ packages:
engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1}
dev: true
/@typescript-eslint/types/5.10.2:
resolution: {integrity: sha512-Qfp0qk/5j2Rz3p3/WhWgu4S1JtMcPgFLnmAKAW061uXxKSa7VWKZsDXVaMXh2N60CX9h6YLaBoy9PJAfCOjk3w==}
/@typescript-eslint/types/5.11.0:
resolution: {integrity: sha512-cxgBFGSRCoBEhvSVLkKw39+kMzUKHlJGVwwMbPcTZX3qEhuXhrjwaZXWMxVfxDgyMm+b5Q5b29Llo2yow8Y7xQ==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dev: true
@ -2028,8 +2027,8 @@ packages:
- supports-color
dev: true
/@typescript-eslint/typescript-estree/5.10.2[email protected]:
resolution: {integrity: sha512-WHHw6a9vvZls6JkTgGljwCsMkv8wu8XU8WaYKeYhxhWXH/atZeiMW6uDFPLZOvzNOGmuSMvHtZKd6AuC8PrwKQ==}
/@typescript-eslint/typescript-estree/5.11.0[email protected]:
resolution: {integrity: sha512-yVH9hKIv3ZN3lw8m/Jy5I4oXO4ZBMqijcXCdA4mY8ull6TPTAoQnKKrcZ0HDXg7Bsl0Unwwx7jcXMuNZc0m4lg==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
typescript: '*'
@ -2037,8 +2036,8 @@ packages:
typescript:
optional: true
dependencies:
'@typescript-eslint/types': 5.10.2
'@typescript-eslint/visitor-keys': 5.10.2
'@typescript-eslint/types': 5.11.0
'@typescript-eslint/visitor-keys': 5.11.0
debug: 4.3.3
globby: 11.1.0
is-glob: 4.0.3
@ -2049,16 +2048,16 @@ packages:
- supports-color
dev: true
/@typescript-eslint/utils/5.10.2[email protected][email protected]:
resolution: {integrity: sha512-vuJaBeig1NnBRkf7q9tgMLREiYD7zsMrsN1DA3wcoMDvr3BTFiIpKjGiYZoKPllfEwN7spUjv7ZqD+JhbVjEPg==}
/@typescript-eslint/utils/5.11.0[email protected][email protected]:
resolution: {integrity: sha512-g2I480tFE1iYRDyMhxPAtLQ9HAn0jjBtipgTCZmd9I9s11OV8CTsG+YfFciuNDcHqm4csbAgC2aVZCHzLxMSUw==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
dependencies:
'@types/json-schema': 7.0.9
'@typescript-eslint/scope-manager': 5.10.2
'@typescript-eslint/types': 5.10.2
'@typescript-eslint/typescript-estree': 5.10.2[email protected]
'@typescript-eslint/scope-manager': 5.11.0
'@typescript-eslint/types': 5.11.0
'@typescript-eslint/typescript-estree': 5.11.0[email protected]
eslint: 8.8.0
eslint-scope: 5.1.1
eslint-utils: 3.0[email protected]
@ -2075,11 +2074,11 @@ packages:
eslint-visitor-keys: 2.1.0
dev: true
/@typescript-eslint/visitor-keys/5.10.2:
resolution: {integrity: sha512-zHIhYGGGrFJvvyfwHk5M08C5B5K4bewkm+rrvNTKk1/S15YHR+SA/QUF8ZWscXSfEaB8Nn2puZj+iHcoxVOD/Q==}
/@typescript-eslint/visitor-keys/5.11.0:
resolution: {integrity: sha512-E8w/vJReMGuloGxJDkpPlGwhxocxOpSVgSvjiLO5IxZPmxZF30weOeJYyPSEACwM+X4NziYS9q+WkN/2DHYQwA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dependencies:
'@typescript-eslint/types': 5.10.2
'@typescript-eslint/types': 5.11.0
eslint-visitor-keys: 3.2.0
dev: true
@ -2282,8 +2281,8 @@ packages:
postcss: ^8.1.0
dependencies:
browserslist: 4.19.1
caniuse-lite: 1.0.30001307
fraction.js: 4.1.2
caniuse-lite: 1.0.30001309
fraction.js: 4.1.3
normalize-range: 0.1.2
picocolors: 1.0.0
postcss: 8.4.6
@ -2379,8 +2378,8 @@ packages:
engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
hasBin: true
dependencies:
caniuse-lite: 1.0.30001307
electron-to-chromium: 1.4.65
caniuse-lite: 1.0.30001309
electron-to-chromium: 1.4.66
escalade: 3.1.1
node-releases: 2.0.1
picocolors: 1.0.0
@ -2412,8 +2411,8 @@ packages:
engines: {node: '>= 6'}
dev: true
/caniuse-lite/1.0.30001307:
resolution: {integrity: sha512-+MXEMczJ4FuxJAUp0jvAl6Df0NI/OfW1RWEE61eSmzS7hw6lz4IKutbhbXendwq8BljfFuHtu26VWsg4afQ7Ng==}
/caniuse-lite/1.0.30001309:
resolution: {integrity: sha512-Pl8vfigmBXXq+/yUz1jUwULeq9xhMJznzdc/xwl4WclDAuebcTHVefpz8lE/bMI+UN7TOkSSe7B7RnZd6+dzjA==}
dev: true
/chalk/2.4.2:
@ -2797,8 +2796,8 @@ packages:
jake: 10.8.2
dev: true
/electron-to-chromium/1.4.65:
resolution: {integrity: sha512-0/d8Skk8sW3FxXP0Dd6MnBlrwx7Qo9cqQec3BlIAlvKnrmS3pHsIbaroEi+nd0kZkGpQ6apMEre7xndzjlEnLw==}
/electron-to-chromium/1.4.66:
resolution: {integrity: sha512-f1RXFMsvwufWLwYUxTiP7HmjprKXrqEWHiQkjAYa9DJeVIlZk5v8gBGcaV+FhtXLly6C1OTVzQY+2UQrACiLlg==}
dev: true
/emoji-regex/8.0.0:
@ -3151,7 +3150,7 @@ packages:
has: 1.0.3
is-core-module: 2.8.1
is-glob: 4.0.3
minimatch: 3.0.4
minimatch: 3.0.5
object.values: 1.1.5
resolve: 1.22.0
tsconfig-paths: 3.12.0
@ -3173,7 +3172,7 @@ packages:
has: 1.0.3
is-core-module: 2.8.1
is-glob: 4.0.3
minimatch: 3.0.4
minimatch: 3.0.5
object.values: 1.1.5
resolve: 1.22.0
tsconfig-paths: 3.12.0
@ -3209,7 +3208,7 @@ packages:
eslint: 7.32.0
estraverse: 5.3.0
jsx-ast-utils: 3.2.1
minimatch: 3.0.4
minimatch: 3.0.5
object.entries: 1.1.5
object.fromentries: 2.0.5
object.hasown: 1.1.0
@ -3232,7 +3231,7 @@ packages:
eslint: 8.8.0
estraverse: 5.3.0
jsx-ast-utils: 3.2.1
minimatch: 3.0.4
minimatch: 3.0.5
object.entries: 1.1.5
object.fromentries: 2.0.5
object.hasown: 1.1.0
@ -3335,7 +3334,7 @@ packages:
json-stable-stringify-without-jsonify: 1.0.1
levn: 0.4.1
lodash.merge: 4.6.2
minimatch: 3.0.4
minimatch: 3.0.5
natural-compare: 1.4.0
optionator: 0.9.1
progress: 2.0.3
@ -3382,7 +3381,7 @@ packages:
json-stable-stringify-without-jsonify: 1.0.1
levn: 0.4.1
lodash.merge: 4.6.2
minimatch: 3.0.4
minimatch: 3.0.5
natural-compare: 1.4.0
optionator: 0.9.1
regexpp: 3.2.0
@ -3499,7 +3498,7 @@ packages:
/filelist/1.0.2:
resolution: {integrity: sha512-z7O0IS8Plc39rTCq6i6iHxk43duYOn8uFJiWSewIq0Bww1RNybVHSCjahmcC87ZqAm4OTvFzlzeGu3XAzG1ctQ==}
dependencies:
minimatch: 3.0.4
minimatch: 3.0.5
dev: true
/fill-range/7.0.1:
@ -3556,8 +3555,8 @@ packages:
mime-types: 2.1.34
dev: false
/fraction.js/4.1.2:
resolution: {integrity: sha512-o2RiJQ6DZaR/5+Si0qJUIy637QMRudSi9kU/FFzx9EZazrIdnBgpU+3sEWCxAVhH2RtxW2Oz+T4p2o8uOPVcgA==}
/fraction.js/4.1.3:
resolution: {integrity: sha512-pUHWWt6vHzZZiQJcM6S/0PXfS+g6FM4BF5rj9wZyreivhQPdsh5PpE25VtSNxq80wHS5RfY51Ii+8Z0Zl/pmzg==}
dev: true
/framer-motion/[email protected][email protected]:
@ -3683,7 +3682,7 @@ packages:
fs.realpath: 1.0.0
inflight: 1.0.6
inherits: 2.0.4
minimatch: 3.0.4
minimatch: 3.0.5
once: 1.4.0
path-is-absolute: 1.0.1
dev: true
@ -4059,14 +4058,14 @@ packages:
async: 0.9.2
chalk: 2.4.2
filelist: 1.0.2
minimatch: 3.0.4
minimatch: 3.0.5
dev: true
/jest-worker/26.6.2:
resolution: {integrity: sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==}
engines: {node: '>= 10.13.0'}
dependencies:
'@types/node': 17.0.15
'@types/node': 17.0.16
merge-stream: 2.0.0
supports-color: 7.2.0
dev: true
@ -4307,8 +4306,8 @@ packages:
mime-db: 1.51.0
dev: false
/minimatch/3.0.4:
resolution: {integrity: sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==}
/minimatch/3.0.5:
resolution: {integrity: sha512-tUpxzX0VAzJHjLu0xUfFv1gwVp9ba3IOuRAVH2EGuRW8a5emA2FlACLqiT/lDVtS1W+TGNwqz3sWaNyLgDJWuw==}
dependencies:
brace-expansion: 1.1.11
dev: true
@ -4803,8 +4802,8 @@ packages:
zustand: 3.6[email protected]
dev: false
/react-hook-form/7.26.0[email protected]:
resolution: {integrity: sha512-nSkCyJB5Ey5QUw3AGQp22JP7TNfPdyC4wqfmheH87NNsHhQwCZgGjexXdBfd7SRt4SHoVzbdPvu6kXG5sSs66Q==}
/react-hook-form/7.26.1[email protected]:
resolution: {integrity: sha512-/Qw/7IsCCVfYSGryJAMcouEpIDgWZJPeHR15J0IFSgo1BgofcfnY+AeUDcYD1E3yzzXYpR7NHyJehhkBKvjdMg==}
engines: {node: '>=12.22.0'}
peerDependencies:
react: ^16.8.0 || ^17
@ -5113,14 +5112,14 @@ packages:
magic-string: 0.25.7
dev: true
/rollup-plugin-terser/[email protected].0:
/rollup-plugin-terser/[email protected].1:
resolution: {integrity: sha512-w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ==}
peerDependencies:
rollup: ^2.0.0
dependencies:
'@babel/code-frame': 7.16.7
jest-worker: 26.6.2
rollup: 2.67.0
rollup: 2.67.1
serialize-javascript: 4.0.0
terser: 5.10.0
transitivePeerDependencies:
@ -5140,8 +5139,8 @@ packages:
yargs: 17.3.1
dev: false
/rollup/2.67.0:
resolution: {integrity: sha512-W83AaERwvDiHwHEF/dfAfS3z1Be5wf7n+pO3ZAO5IQadCT2lBTr7WQ2MwZZe+nodbD+n3HtC4OCOAdsOPPcKZQ==}
/rollup/2.67.1:
resolution: {integrity: sha512-1Sbcs4OuW+aD+hhqpIRl+RqooIpF6uQcfzU/QSI7vGkwADY6cM4iLsBGRM2CGLXDTDN5y/yShohFmnKegSPWzg==}
engines: {node: '>=10.0.0'}
hasBin: true
optionalDependencies:
@ -5427,8 +5426,8 @@ packages:
strip-ansi: 6.0.1
dev: true
/tailwindcss/3.0.18_833e1018ad0d7954aa80c53675939269:
resolution: {integrity: sha512-ihPTpEyA5ANgZbwKlgrbfnzOp9R5vDHFWmqxB1PT8NwOGCOFVVMl+Ps1cQQ369acaqqf1BEF77roCwK0lvNmTw==}
/tailwindcss/3.0.19_833e1018ad0d7954aa80c53675939269:
resolution: {integrity: sha512-rjsdfz/qZya5xQ0OVynEMETgWq1CacmftgMYeXXh6bRM5vxsNwRSbMJsCCIjq/w67om9VP/AFMolOwiE+5VKig==}
engines: {node: '>=12.13.0'}
hasBin: true
peerDependencies:
@ -5511,11 +5510,6 @@ packages:
source-map-support: 0.5.21
dev: true
/text-encoding/0.7.0:
resolution: {integrity: sha512-oJQ3f1hrOnbRLOcwKz0Liq2IcrvDeZRHXhd9RgLrsT+DjWY/nty1Hi7v3dtkaEYbPYe0mUoOfzRrMwfXXwgPUA==}
deprecated: no longer maintained
dev: false
/text-table/0.2.0:
resolution: {integrity: sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=}
dev: true
@ -5748,7 +5742,7 @@ packages:
debug: 4.3.3
fast-glob: 3.2.11
pretty-bytes: 5.6.0
rollup: 2.67.0
rollup: 2.67.1
vite: 2.7.13
workbox-build: 6.4.2
workbox-window: 6.4.2
@ -5777,7 +5771,7 @@ packages:
esbuild: 0.13.15
postcss: 8.4.6
resolve: 1.22.0
rollup: 2.67.0
rollup: 2.67.1
optionalDependencies:
fsevents: 2.3.2
dev: true
@ -5878,9 +5872,9 @@ packages:
'@babel/core': 7.17.0
'@babel/preset-env': 7.16.11_@[email protected]
'@babel/runtime': 7.17.0
'@rollup/plugin-babel': 5.3.0_@[email protected][email protected].0
'@rollup/plugin-node-resolve': 11.2[email protected].0
'@rollup/plugin-replace': 2.4[email protected].0
'@rollup/plugin-babel': 5.3.0_@[email protected][email protected].1
'@rollup/plugin-node-resolve': 11.2[email protected].1
'@rollup/plugin-replace': 2.4[email protected].1
'@surma/rollup-plugin-off-main-thread': 2.2.3
ajv: 8.10.0
common-tags: 1.8.2
@ -5889,8 +5883,8 @@ packages:
glob: 7.2.0
lodash: 4.17.21
pretty-bytes: 5.6.0
rollup: 2.67.0
rollup-plugin-terser: 7.0[email protected].0
rollup: 2.67.1
rollup-plugin-terser: 7.0[email protected].1
source-map: 0.8.0-beta.0
source-map-url: 0.4.1
stringify-object: 3.3.0

12
src/core/slices/meshtasticSlice.ts

@ -8,6 +8,11 @@ export interface MessageWithAck {
received: Date;
}
export interface Chat {
id: number; //Channel or user id (for dm's)
messages: MessageWithAck[];
}
export interface ChannelData {
channel: Protobuf.Channel;
lastChatInterraction: Date;
@ -54,6 +59,7 @@ interface MeshtasticState {
radio: Radio;
hostOverrideEnabled: boolean;
hostOverride: string;
chats: Chat[];
}
const initialState: MeshtasticState = {
@ -71,6 +77,7 @@ const initialState: MeshtasticState = {
hostOverrideEnabled:
localStorage.getItem('hostOverrideEnabled') === 'true' ?? false,
hostOverride: localStorage.getItem('hostOverride') ?? '',
chats: [],
};
export const meshtasticSlice = createSlice({
@ -262,6 +269,11 @@ export const meshtasticSlice = createSlice({
// connection.disconnect();
}
},
addChat: (state, action: PayloadAction<Chat>) => {
if (state.chats.findIndex((chat) => chat.id === action.payload.id)) {
state.chats.push(action.payload);
}
},
resetState: (state) => {
state.deviceStatus = Types.DeviceStatusEnum.DEVICE_DISCONNECTED;
state.nodes = [];

6
src/pages/Extensions/Info.tsx

@ -4,11 +4,7 @@ import { m } from 'framer-motion';
import JSONPretty from 'react-json-pretty';
import { useAppSelector } from '@app/hooks/useAppSelector.js';
// eslint-disable-next-line import/no-unresolved
import skypack_hashicon from '@skypack/@emeraldpay/hashicon-react';
const Hashicon = skypack_hashicon.Hashicon;
// import { Hashicon } from '@emeraldpay/hashicon-react';
import { Hashicon } from '@emeraldpay/hashicon-react';
export const Info = (): JSX.Element => {
const hardwareInfo = useAppSelector(

5
src/pages/Messages/Message.tsx

@ -1,11 +1,8 @@
import type React from 'react';
import type { Node } from '@app/core/slices/meshtasticSlice';
import { Hashicon } from '@emeraldpay/hashicon-react';
import { Tooltip } from '@meshtastic/components';
// eslint-disable-next-line import/no-unresolved
import skypack_hashicon from '@skypack/@emeraldpay/hashicon-react';
const Hashicon = skypack_hashicon.Hashicon;
export interface MessageProps {
lastMsgSameUser: boolean;

5
src/pages/Messages/index.tsx

@ -7,17 +7,14 @@ import TimeAgo from 'timeago-react';
import { Layout } from '@app/components/layout';
import { SidebarItem } from '@components/layout/Sidebar/SidebarItem';
import { Hashicon } from '@emeraldpay/hashicon-react';
import { useAppSelector } from '@hooks/useAppSelector';
import { IconButton, Tooltip } from '@meshtastic/components';
import { Protobuf } from '@meshtastic/meshtasticjs';
// eslint-disable-next-line import/no-unresolved
import skypack_hashicon from '@skypack/@emeraldpay/hashicon-react';
import { Message } from './Message';
import { MessageBar } from './MessageBar';
const Hashicon = skypack_hashicon.Hashicon;
export const Messages = (): JSX.Element => {
const nodes = useAppSelector((state) => state.meshtastic.nodes);
const channels = useAppSelector(

5
src/pages/Nodes/NodeCard.tsx

@ -17,12 +17,9 @@ import { SidebarOverlay } from '@app/components/layout/Sidebar/sections/SidebarO
import { SidebarItem } from '@app/components/layout/Sidebar/SidebarItem';
import { CopyButton } from '@app/components/menu/buttons/CopyButton';
import type { Node } from '@core/slices/meshtasticSlice';
import { Hashicon } from '@emeraldpay/hashicon-react';
import { useMapbox } from '@hooks/useMapbox';
import { IconButton } from '@meshtastic/components';
// eslint-disable-next-line import/no-unresolved
import skypack_hashicon from '@skypack/@emeraldpay/hashicon-react';
const Hashicon = skypack_hashicon.Hashicon;
type PositionConfidence = 'high' | 'low' | 'none';

5
src/pages/Nodes/index.tsx

@ -8,11 +8,8 @@ import { RiMindMap } from 'react-icons/ri';
import { Layout } from '@app/components/layout';
import { SidebarItem } from '@app/components/layout/Sidebar/SidebarItem';
import { useAppSelector } from '@app/hooks/useAppSelector';
import { Hashicon } from '@emeraldpay/hashicon-react';
import { IconButton } from '@meshtastic/components';
// eslint-disable-next-line import/no-unresolved
import skypack_hashicon from '@skypack/@emeraldpay/hashicon-react';
const Hashicon = skypack_hashicon.Hashicon;
export const Nodes = (): JSX.Element => {
const [graphNodes, setGraphNodes] = React.useState<Node[]>([]);

Loading…
Cancel
Save