mirror of
https://github.com/zvx-echo6/meshai.git
synced 2026-08-26 17:31:34 +00:00
* feat(region-routing): P1 tagging + region_routes primitive + read/write API + preview launcher - config.py: add Coverage.region_tagging (bool=False); add RegionRouteMatrix dataclass (enabled, cells) above NotificationsConfig; add region_routes field to NotificationsConfig; add explicit hydration branch for region_routes in _dict_to_dataclass mirroring destinations pattern. - coverage_area.py: add MonitoringArea.name (str|None=None, frozen); update areas_from_config to preserve name; refactor inline geom extraction from classify_event_areas into shared _event_geom_json helper; add matching_area_names(geom_json, areas)->list[str] (additive, all named matches, config-order, deduped; gate unchanged); add event_region_names convenience wrapper. - coverage_filter.py: add region_tagging ctor kwarg; stamp event.region/ regions before the gate when region_tagging=True and areas non-empty and not event.regions (never clobbers satpass preset). - pipeline/__init__.py: wire region_tagging into CoverageFilter construction. - notification_routes.py: add GET /notifications/regions (named coverage area names, config-order, deduped); GET /notifications/region-routing (matrix as JSON); POST /notifications/region-routing (explicit RMW — only region_routes changes, toggles/rules/destinations survive). - scripts/preview_dashboard.py: mesh-free launcher — dashboard API only, no mesh connector, no broadcast loop; vite runs separately. All 87 coverage tests pass; 300 total pass; 6 pre-existing failures unchanged (adapter config count mismatch + MeshCore EventType.NEW_CONTACT). * feat(region-routing): manual region x family matrix editor page Adds RegionRoutingMatrix.tsx — a plain editor over the region_routes config primitive. Rows = families (via useFamilies()), cols = regions (from GET /api/notifications/regions). Each cell exposes MT channel (ChannelPicker single + includeDisabled), MC channel name (text input), min_severity select (routine/priority/critical/immediate), and an enabled checkbox. Only cells where MT or MC is set are included in the sparse POST payload. Master enable toggle maps to top-level enabled. MT budget guard warns when more than 7 distinct MT indices are in use. Sticky family column; horizontal scroll for wide region sets. Registers route /region-routing in App.tsx and adds "Region Routing" nav entry (Map icon) under the Meshtastic section in Layout.tsx, immediately after Routing. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(region-routing): regions endpoint reads saved (disk) coverage so routing columns are dynamic without a bot restart; preview reloads config after writes * feat(routing): unify MT/MC routing into per-family cards; region routing as an in-card expand; remove rules/destinations UI + standalone page * refactor(routing): move Meshtastic Routing from /notifications to /meshtastic/routing (mirror /meshcore/routing); redirect legacy path * feat(region-routing): dispatcher honors region_routes matrix (authoritative-on-match, per-region cooldown, per-channel dedup); non-matrix path unchanged Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * fix(region-routing): matrix dedup key must match boot-restore 2-tuple form (prevents restart re-broadcast flood); regression test --------- Co-authored-by: Matt Johnson <mj@k7zvx.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
244 lines
11 KiB
JSON
244 lines
11 KiB
JSON
{
|
|
"name": "echarts",
|
|
"version": "6.1.0",
|
|
"description": "Apache ECharts is a powerful, interactive charting and data visualization library for browser",
|
|
"license": "Apache-2.0",
|
|
"keywords": [
|
|
"echarts",
|
|
"data-visualization",
|
|
"charts",
|
|
"charting-library",
|
|
"visualization",
|
|
"apache",
|
|
"data-viz",
|
|
"canvas",
|
|
"svg"
|
|
],
|
|
"main": "dist/echarts.js",
|
|
"module": "index.js",
|
|
"unpkg": "dist/echarts.min.js",
|
|
"jsdelivr": "dist/echarts.min.js",
|
|
"types": "types/dist/echarts.d.cts",
|
|
"homepage": "https://echarts.apache.org",
|
|
"bugs": {
|
|
"url": "https://github.com/apache/echarts/issues",
|
|
"email": "dev@echarts.apache.org"
|
|
},
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "git+https://github.com/apache/echarts.git"
|
|
},
|
|
"sideEffects": [
|
|
"index.js",
|
|
"index.blank.js",
|
|
"index.common.js",
|
|
"index.simple.js",
|
|
"lib/echarts.js",
|
|
"lib/chart/*.js",
|
|
"lib/component/*.js",
|
|
"extension/**/*.js",
|
|
"theme/*.js",
|
|
"i18n/*.js"
|
|
],
|
|
"scripts": {
|
|
"build": "node build/build.js --type all,common,simple --min",
|
|
"build:esm": "node build/build.js --type all --min --format esm",
|
|
"build:i18n": "node build/build-i18n.js",
|
|
"build:lib": "node build/build-lib.js",
|
|
"build:extension": "node build/build.js --type extension --min",
|
|
"build:ssr": "node build/build.js --type ssr",
|
|
"dev:fast": "node build/build-i18n.js && node build/dev-fast.js",
|
|
"dev": "npx -y concurrently -n build,server \"npm run dev:fast\" \"npx -y http-server -c-1 -s -o test\"",
|
|
"prepare": "npm run build:lib && husky install",
|
|
"release": "npm run build:lib && npm run build:i18n && npm run build && npm run build:esm && npm run build:extension && npm run build:ssr",
|
|
"help": "node build/build.js --help",
|
|
"test:visual": "node test/runTest/server.js",
|
|
"test:visual:copy:examples": "node test/runTest/visual-test-copy-from-examples.js",
|
|
"test": "npx jest --config test/ut/jest.config.cjs",
|
|
"test:single": "npx jest --config test/ut/jest.config.cjs --coverage=false -t",
|
|
"test:single:debug": "npx --node-arg=--inspect-brk jest --runInBand --config test/ut/jest.config.cjs --coverage=false -t",
|
|
"test:dts": "npm install --prefix ./test/types && node build/testDts.js",
|
|
"test:dts:fast": "node build/testDts.js",
|
|
"mktest": "node test/build/mktest.js",
|
|
"mktest2": "node test/build/mktest.js --with-inputs-common",
|
|
"mktest3": "node test/build/mktest.js --with-inputs-all",
|
|
"mktest:canvas:debug": "node test/build/mktest.js --with-canvas-debug",
|
|
"mktest:help": "node test/build/mktest.js -h",
|
|
"checktype": "npx tsc --noEmit && npx tsc -p ./extension-src/bmap/tsconfig.json --noEmit",
|
|
"checkheader": "node build/checkHeader.js",
|
|
"lint": "npx eslint --cache --cache-location node_modules/.cache/eslint \"src/**/*.ts\" \"ssr/client/src/**/*.ts\" \"extension-src/**/*.ts\"",
|
|
"lint:nocache": "npx eslint \"src/**/*.ts\" \"ssr/client/src/**/*.ts\" \"extension-src/**/*.ts\"",
|
|
"lint:nocache:list": "npm run lint:nocache -- --debug 2>&1 | grep \"filePath\"",
|
|
"lint:fix": "npx eslint --fix \"src/**/*.ts\" \"ssr/client/src/**/*.ts\" \"extension-src/**/*.ts\"",
|
|
"lint:dist": "echo 'It might take a while. Please wait ...' && npx jshint --config .jshintrc-dist dist/echarts.js"
|
|
},
|
|
"dependencies": {
|
|
"tslib": "2.3.0",
|
|
"zrender": "6.1.0"
|
|
},
|
|
"devDependencies": {
|
|
"@babel/code-frame": "7.10.4",
|
|
"@babel/core": "7.3.4",
|
|
"@babel/types": "7.10.5",
|
|
"@definitelytyped/typescript-versions": "^0.1.9",
|
|
"@definitelytyped/utils": "0.0.188",
|
|
"@echarts-x/eslint-plugin-ec": "^1.0.0",
|
|
"@lang/rollup-plugin-dts": "2.0.3",
|
|
"@microsoft/api-extractor": "7.31.2",
|
|
"@rollup/plugin-commonjs": "^17.0.0",
|
|
"@rollup/plugin-node-resolve": "^11.0.0",
|
|
"@rollup/plugin-replace": "^2.3.4",
|
|
"@rollup/plugin-terser": "0.4.2",
|
|
"@types/jest": "^26.0.14",
|
|
"@typescript-eslint/eslint-plugin": "^4.33.0",
|
|
"@typescript-eslint/parser": "^4.33.0",
|
|
"chalk": "^3.0.0",
|
|
"commander": "2.11.0",
|
|
"dtslint": "^4.0.5",
|
|
"esbuild": "^0.8.39",
|
|
"eslint": "^7.15.0",
|
|
"fs-extra": "^10.0.0",
|
|
"globby": "11.0.0",
|
|
"husky": "^8.0.3",
|
|
"jest": "^26.6.1",
|
|
"jest-canvas-mock": "^2.5.0",
|
|
"jshint": "2.13.5",
|
|
"magic-string": "^0.25.7",
|
|
"open": "6.4.0",
|
|
"rollup": "2.34.2",
|
|
"seedrandom": "3.0.3",
|
|
"semver": "6.3.0",
|
|
"terser": "^5.16.1",
|
|
"ts-jest": "^26.4.3",
|
|
"typescript": "4.4.3"
|
|
},
|
|
"type": "module",
|
|
"exports": {
|
|
".": {
|
|
"types": {
|
|
"import": "./types/dist/all.d.ts",
|
|
"require": "./types/dist/echarts.d.cts",
|
|
"default": "./types/dist/all.d.ts"
|
|
},
|
|
"import": "./index.js",
|
|
"require": "./dist/echarts.js",
|
|
"default": "./index.js"
|
|
},
|
|
"./core": "./core.js",
|
|
"./core.js": "./core.js",
|
|
"./charts": "./charts.js",
|
|
"./charts.js": "./charts.js",
|
|
"./components": "./components.js",
|
|
"./components.js": "./components.js",
|
|
"./features": "./features.js",
|
|
"./features.js": "./features.js",
|
|
"./renderers": "./renderers.js",
|
|
"./renderers.js": "./renderers.js",
|
|
"./index.blank": "./index.blank.js",
|
|
"./index.blank.js": "./index.blank.js",
|
|
"./index.common": "./index.common.js",
|
|
"./index.common.js": "./index.common.js",
|
|
"./index.simple": "./index.simple.js",
|
|
"./index.simple.js": "./index.simple.js",
|
|
"./index": "./index.js",
|
|
"./index.js": "./index.js",
|
|
"./theme/*": "./theme/*",
|
|
"./i18n/*": "./i18n/*",
|
|
"./types/dist/all": "./types/dist/all.d.ts",
|
|
"./types/dist/charts": "./types/dist/charts.d.ts",
|
|
"./types/dist/components": "./types/dist/components.d.ts",
|
|
"./types/dist/core": "./types/dist/core.d.ts",
|
|
"./types/dist/echarts": "./types/dist/echarts.d.ts",
|
|
"./types/dist/features": "./types/dist/features.d.ts",
|
|
"./types/dist/option": "./types/dist/option.d.ts",
|
|
"./types/dist/renderers": "./types/dist/renderers.d.ts",
|
|
"./types/dist/shared": "./types/dist/shared.d.ts",
|
|
"./ssr/client/index": {
|
|
"types": "./ssr/client/index.d.ts",
|
|
"import": "./ssr/client/index.js",
|
|
"require": "./ssr/client/dist/index.js"
|
|
},
|
|
"./extension/dataTool": "./extension/dataTool/index.js",
|
|
"./extension/dataTool/index": "./extension/dataTool/index.js",
|
|
"./extension/dataTool/index.js": "./extension/dataTool/index.js",
|
|
"./extension/dataTool/gexf": "./extension/dataTool/gexf.js",
|
|
"./extension/dataTool/gexf.js": "./extension/dataTool/gexf.js",
|
|
"./extension/dataTool/prepareBoxplotData": "./extension/dataTool/prepareBoxplotData.js",
|
|
"./extension/dataTool/prepareBoxplotData.js": "./extension/dataTool/prepareBoxplotData.js",
|
|
"./extension/bmap/bmap": "./extension/bmap/bmap.js",
|
|
"./extension/bmap/bmap.js": "./extension/bmap/bmap.js",
|
|
"./lib/echarts": "./lib/echarts.js",
|
|
"./lib/echarts.js": "./lib/echarts.js",
|
|
"./lib/extension": "./lib/extension.js",
|
|
"./lib/extension.js": "./lib/extension.js",
|
|
"./lib/chart/bar": "./lib/chart/bar.js",
|
|
"./lib/chart/boxplot": "./lib/chart/boxplot.js",
|
|
"./lib/chart/candlestick": "./lib/chart/candlestick.js",
|
|
"./lib/chart/chord": "./lib/chart/chord.js",
|
|
"./lib/chart/custom": "./lib/chart/custom.js",
|
|
"./lib/chart/effectScatter": "./lib/chart/effectScatter.js",
|
|
"./lib/chart/funnel": "./lib/chart/funnel.js",
|
|
"./lib/chart/gauge": "./lib/chart/gauge.js",
|
|
"./lib/chart/graph": "./lib/chart/graph.js",
|
|
"./lib/chart/heatmap": "./lib/chart/heatmap.js",
|
|
"./lib/chart/line": "./lib/chart/line.js",
|
|
"./lib/chart/lines": "./lib/chart/lines.js",
|
|
"./lib/chart/map": "./lib/chart/map.js",
|
|
"./lib/chart/parallel": "./lib/chart/parallel.js",
|
|
"./lib/chart/pictorialBar": "./lib/chart/pictorialBar.js",
|
|
"./lib/chart/pie": "./lib/chart/pie.js",
|
|
"./lib/chart/radar": "./lib/chart/radar.js",
|
|
"./lib/chart/sankey": "./lib/chart/sankey.js",
|
|
"./lib/chart/scatter": "./lib/chart/scatter.js",
|
|
"./lib/chart/sunburst": "./lib/chart/sunburst.js",
|
|
"./lib/chart/themeRiver": "./lib/chart/themeRiver.js",
|
|
"./lib/chart/tree": "./lib/chart/tree.js",
|
|
"./lib/chart/treemap": "./lib/chart/treemap.js",
|
|
"./lib/component/aria": "./lib/component/aria.js",
|
|
"./lib/component/axisPointer": "./lib/component/axisPointer.js",
|
|
"./lib/component/brush": "./lib/component/brush.js",
|
|
"./lib/component/calendar": "./lib/component/calendar.js",
|
|
"./lib/component/matrix": "./lib/component/matrix.js",
|
|
"./lib/component/thumbnail": "./lib/component/thumbnail.js",
|
|
"./lib/component/dataZoom": "./lib/component/dataZoom.js",
|
|
"./lib/component/dataZoomInside": "./lib/component/dataZoomInside.js",
|
|
"./lib/component/dataZoomSelect": "./lib/component/dataZoomSelect.js",
|
|
"./lib/component/dataZoomSlider": "./lib/component/dataZoomSlider.js",
|
|
"./lib/component/dataset": "./lib/component/dataset.js",
|
|
"./lib/component/geo": "./lib/component/geo.js",
|
|
"./lib/component/graphic": "./lib/component/graphic.js",
|
|
"./lib/component/grid": "./lib/component/grid.js",
|
|
"./lib/component/gridSimple": "./lib/component/gridSimple.js",
|
|
"./lib/component/legend": "./lib/component/legend.js",
|
|
"./lib/component/legendPlain": "./lib/component/legendPlain.js",
|
|
"./lib/component/legendScroll": "./lib/component/legendScroll.js",
|
|
"./lib/component/markArea": "./lib/component/markArea.js",
|
|
"./lib/component/markLine": "./lib/component/markLine.js",
|
|
"./lib/component/markPoint": "./lib/component/markPoint.js",
|
|
"./lib/component/parallel": "./lib/component/parallel.js",
|
|
"./lib/component/polar": "./lib/component/polar.js",
|
|
"./lib/component/radar": "./lib/component/radar.js",
|
|
"./lib/component/singleAxis": "./lib/component/singleAxis.js",
|
|
"./lib/component/timeline": "./lib/component/timeline.js",
|
|
"./lib/component/title": "./lib/component/title.js",
|
|
"./lib/component/toolbox": "./lib/component/toolbox.js",
|
|
"./lib/component/tooltip": "./lib/component/tooltip.js",
|
|
"./lib/component/transform": "./lib/component/transform.js",
|
|
"./lib/component/visualMap": "./lib/component/visualMap.js",
|
|
"./lib/component/visualMapContinuous": "./lib/component/visualMapContinuous.js",
|
|
"./lib/component/visualMapPiecewise": "./lib/component/visualMapPiecewise.js",
|
|
"./dist/echarts.common": "./dist/echarts.common.js",
|
|
"./dist/echarts.common.min": "./dist/echarts.common.min.js",
|
|
"./dist/echarts.esm": "./dist/echarts.esm.mjs",
|
|
"./dist/echarts.esm.min": "./dist/echarts.esm.min.mjs",
|
|
"./dist/echarts": "./dist/echarts.js",
|
|
"./dist/echarts.min": "./dist/echarts.min.js",
|
|
"./dist/echarts.simple": "./dist/echarts.simple.js",
|
|
"./dist/echarts.simple.min": "./dist/echarts.simple.min.js",
|
|
"./dist/extension/bmap": "./dist/extension/bmap.js",
|
|
"./dist/extension/bmap.min": "./dist/extension/bmap.min.js",
|
|
"./dist/extension/dataTool": "./dist/extension/dataTool.js",
|
|
"./dist/extension/dataTool.min": "./dist/extension/dataTool.min.js",
|
|
"./*": "./*"
|
|
}
|
|
}
|