@sjvair/monitor-map 3.0.1 → 3.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (151) hide show
  1. package/dist/lib/LoadScreen.js +15 -15
  2. package/dist/lib/{src/MapView.js → MainMapView.js} +2 -2
  3. package/dist/lib/MapLegend.js +13 -0
  4. package/dist/lib/MonitorDetailPanel.js +169 -0
  5. package/dist/lib/MonitorMapLayout.js +91 -0
  6. package/dist/lib/_virtual/_rolldown/runtime.js +11 -0
  7. package/dist/lib/assets/logos/airgradient-blue.js +4 -0
  8. package/dist/lib/assets/logos/airnow-compact.js +4 -0
  9. package/dist/lib/assets/logos/carb-compact.js +4 -0
  10. package/dist/lib/assets/logos/purpleair-compact.js +4 -0
  11. package/dist/lib/assets/logos/sjvair.js +4 -0
  12. package/dist/lib/collocation-sites/CollocationTooltip.js +1 -1
  13. package/dist/lib/collocation-sites/collocations-map-integration.svelte.js +20 -20
  14. package/dist/lib/components/DataBox.js +1 -1
  15. package/dist/lib/components/DisplayOption.js +1 -1
  16. package/dist/lib/components/MapLayersDisplayOptions.js +47 -31
  17. package/dist/lib/components/SegmentedControl.js +4 -4
  18. package/dist/lib/components/ToggleSwitch.js +1 -1
  19. package/dist/lib/components/ui/button/button.js +4 -4
  20. package/dist/lib/components/ui/range-calendar/range-calendar-caption.js +57 -54
  21. package/dist/lib/components/ui/range-calendar/range-calendar-cell.js +19 -18
  22. package/dist/lib/components/ui/range-calendar/range-calendar-day.js +19 -18
  23. package/dist/lib/components/ui/range-calendar/range-calendar-grid-body.js +17 -16
  24. package/dist/lib/components/ui/range-calendar/range-calendar-grid-head.js +17 -16
  25. package/dist/lib/components/ui/range-calendar/range-calendar-grid-row.js +19 -18
  26. package/dist/lib/components/ui/range-calendar/range-calendar-grid.js +19 -18
  27. package/dist/lib/components/ui/range-calendar/range-calendar-head-cell.js +19 -18
  28. package/dist/lib/components/ui/range-calendar/range-calendar-header.js +19 -18
  29. package/dist/lib/components/ui/range-calendar/range-calendar-month-select.js +31 -31
  30. package/dist/lib/components/ui/range-calendar/range-calendar-month.js +19 -19
  31. package/dist/lib/components/ui/range-calendar/range-calendar-months.js +19 -19
  32. package/dist/lib/components/ui/range-calendar/range-calendar-nav.js +19 -19
  33. package/dist/lib/components/ui/range-calendar/range-calendar-next-button.js +27 -26
  34. package/dist/lib/components/ui/range-calendar/range-calendar-prev-button.js +27 -26
  35. package/dist/lib/components/ui/range-calendar/range-calendar-year-select.js +29 -29
  36. package/dist/lib/components/ui/range-calendar/range-calendar.js +154 -154
  37. package/dist/lib/data-chart/DataChart.js +76 -76
  38. package/dist/lib/ev-stations/components/EvStationClusterTooltip.js +16 -0
  39. package/dist/lib/ev-stations/components/EvStationTooltip.js +120 -0
  40. package/dist/lib/ev-stations/components/EvStationsDisplayOptions.js +41 -0
  41. package/dist/lib/ev-stations/data-maps.js +4 -0
  42. package/dist/lib/ev-stations/ev-station-icons.js +32 -0
  43. package/dist/lib/ev-stations/ev-stations-cluster-renderer.js +118 -0
  44. package/dist/lib/ev-stations/ev-stations-map-integration.svelte.js +181 -0
  45. package/dist/lib/ev-stations/ev-stations.svelte.js +33 -0
  46. package/dist/lib/ev-stations/zip-codes.js +136 -0
  47. package/dist/lib/hms/components/HMSFireLegend.js +35 -0
  48. package/dist/lib/hms/hms.svelte.js +12 -12
  49. package/dist/lib/index.js +19 -17
  50. package/dist/lib/map/Map.js +1 -1
  51. package/dist/lib/map/MapStyleDisplayOptions.js +16 -16
  52. package/dist/lib/map/Menu.js +23 -24
  53. package/dist/lib/map/integrations/map-display-option.svelte.js +3 -2
  54. package/dist/lib/map/integrations/map-icon-manager.js +4 -1
  55. package/dist/lib/map/utils.js +16 -13
  56. package/dist/lib/monitors/components/MonitorClusterTooltip.js +4 -4
  57. package/dist/lib/monitors/components/MonitorMarkersLegend.js +35 -0
  58. package/dist/lib/monitors/components/MonitorSubscriptionManager.js +1 -1
  59. package/dist/lib/monitors/components/MonitorTooltip.js +1 -1
  60. package/dist/lib/monitors/components/MonitorWidgetModal.js +1 -1
  61. package/dist/lib/monitors/components/MonitorsDisplayOptions.js +48 -39
  62. package/dist/lib/monitors/monitors-icon-manager.svelte.js +24 -17
  63. package/dist/lib/monitors/monitors-map-integration.svelte.js +65 -59
  64. package/dist/lib/monitors/monitors.svelte.js +38 -42
  65. package/dist/lib/router-context.js +13 -0
  66. package/dist/lib/routes.js +10 -0
  67. package/dist/lib/search/Search.js +124 -0
  68. package/dist/lib/search/service.js +90 -0
  69. package/dist/lib/sjvair-air.webp +0 -0
  70. package/dist/lib/sjvair-air2.webp +0 -0
  71. package/dist/lib/sjvair-icon.avif +0 -0
  72. package/dist/lib/sjvair-icon.png +0 -0
  73. package/dist/lib/sjvair-icon2.avif +0 -0
  74. package/dist/lib/sjvair-icon2.png +0 -0
  75. package/dist/lib/sjvair-sjv.avif +0 -0
  76. package/dist/lib/sjvair-sjv.webp +0 -0
  77. package/dist/lib/sjvair-sjv2.avif +0 -0
  78. package/dist/lib/sjvair-sjv2.webp +0 -0
  79. package/dist/lib/utils.js +9 -3
  80. package/package.json +37 -36
  81. package/src/lib/LoadScreen.svelte +5 -5
  82. package/src/lib/MainMapView.svelte +1 -0
  83. package/src/lib/MapLegend.svelte +15 -0
  84. package/src/lib/MonitorDetailPanel.svelte +152 -0
  85. package/src/lib/MonitorMapLayout.svelte +193 -0
  86. package/src/lib/components/MapLayersDisplayOptions.svelte +27 -10
  87. package/src/lib/ev-stations/components/EvStationsDisplayOptions.svelte +14 -2
  88. package/src/lib/ev-stations/ev-stations-map-integration.svelte.ts +4 -4
  89. package/src/lib/hms/components/HMSFireLegend.svelte +21 -0
  90. package/src/lib/index.ts +34 -0
  91. package/src/lib/map/Map.svelte +1 -0
  92. package/src/lib/map/Menu.svelte +4 -7
  93. package/src/lib/map/integrations/map-display-option.svelte.ts +5 -1
  94. package/src/lib/map/integrations/map-icon-manager.ts +7 -3
  95. package/src/lib/monitors/components/MonitorsDisplayOptions.svelte +4 -1
  96. package/src/lib/monitors/monitors-icon-manager.svelte.ts +3 -1
  97. package/src/lib/monitors/monitors-map-integration.svelte.ts +9 -9
  98. package/src/lib/monitors/monitors.svelte.ts +1 -3
  99. package/src/lib/router-context.ts +48 -0
  100. package/src/lib/routes.ts +8 -0
  101. package/src/lib/search/Search.svelte +189 -0
  102. package/src/lib/search/service.ts +101 -0
  103. package/src/lib/utils.ts +11 -0
  104. package/dist/lib/assets/icons/adjustment-horizontal.js +0 -4
  105. package/dist/lib/node_modules/@internationalized/date/dist/private/CalendarDate.js +0 -122
  106. package/dist/lib/node_modules/@internationalized/date/dist/private/DateFormatter.js +0 -84
  107. package/dist/lib/node_modules/@internationalized/date/dist/private/calendars/GregorianCalendar.js +0 -91
  108. package/dist/lib/node_modules/@internationalized/date/dist/private/conversion.js +0 -104
  109. package/dist/lib/node_modules/@internationalized/date/dist/private/manipulation.js +0 -159
  110. package/dist/lib/node_modules/@internationalized/date/dist/private/queries.js +0 -32
  111. package/dist/lib/node_modules/@internationalized/date/dist/private/string.js +0 -37
  112. package/dist/lib/node_modules/@internationalized/date/dist/private/utils.js +0 -6
  113. package/dist/lib/node_modules/clsx/dist/clsx.js +0 -16
  114. package/dist/lib/node_modules/tailwind-merge/dist/bundle-mjs.js +0 -1723
  115. package/dist/lib/node_modules/tailwind-variants/dist/chunk-LQJYWU4O.js +0 -70
  116. package/dist/lib/node_modules/tailwind-variants/dist/chunk-RZF76H2U.js +0 -166
  117. package/dist/lib/node_modules/tailwind-variants/dist/index.js +0 -19
  118. package/dist/lib/node_modules/uplot/dist/uPlot.esm.js +0 -2147
  119. package/dist/lib/src/MonitorDetailPanel.js +0 -169
  120. package/dist/lib/src/router.js +0 -9
  121. package/dist/monitor-map/MonitorDetailPanel.css +0 -1
  122. package/dist/monitor-map/assets/MonitorDetailPanel-DmN3xPui.js +0 -15
  123. package/dist/monitor-map/assets/validate-routes-CgbRa8fT.js +0 -1
  124. package/dist/monitor-map/inter-cyrillic-ext-wght-normal.woff2 +0 -0
  125. package/dist/monitor-map/inter-cyrillic-wght-normal.woff2 +0 -0
  126. package/dist/monitor-map/inter-greek-ext-wght-normal.woff2 +0 -0
  127. package/dist/monitor-map/inter-greek-wght-normal.woff2 +0 -0
  128. package/dist/monitor-map/inter-latin-ext-wght-normal.woff2 +0 -0
  129. package/dist/monitor-map/inter-latin-wght-normal.woff2 +0 -0
  130. package/dist/monitor-map/inter-vietnamese-wght-normal.woff2 +0 -0
  131. package/dist/monitor-map/lungs.svg +0 -99
  132. package/dist/monitor-map/sjvair-air.avif +0 -0
  133. package/dist/monitor-map/sjvair-air.png +0 -0
  134. package/dist/monitor-map/sjvair-air.webp +0 -0
  135. package/dist/monitor-map/sjvair-air2.avif +0 -0
  136. package/dist/monitor-map/sjvair-air2.png +0 -0
  137. package/dist/monitor-map/sjvair-air2.webp +0 -0
  138. package/dist/monitor-map/sjvair-icon.avif +0 -0
  139. package/dist/monitor-map/sjvair-icon.png +0 -0
  140. package/dist/monitor-map/sjvair-icon.webp +0 -0
  141. package/dist/monitor-map/sjvair-icon2.avif +0 -0
  142. package/dist/monitor-map/sjvair-icon2.png +0 -0
  143. package/dist/monitor-map/sjvair-icon2.webp +0 -0
  144. package/dist/monitor-map/sjvair-sjv.avif +0 -0
  145. package/dist/monitor-map/sjvair-sjv.png +0 -0
  146. package/dist/monitor-map/sjvair-sjv.webp +0 -0
  147. package/dist/monitor-map/sjvair-sjv2.avif +0 -0
  148. package/dist/monitor-map/sjvair-sjv2.png +0 -0
  149. package/dist/monitor-map/sjvair-sjv2.webp +0 -0
  150. package/dist/monitor-map/sjvairMonitorMap.css +0 -1
  151. package/dist/monitor-map/sjvairMonitorMap.js +0 -4042
@@ -1,169 +0,0 @@
1
- import { navigate as e, route as t } from "./router.js";
2
- import { monitorsManager as n } from "../monitors/monitors.svelte.js";
3
- import { getCurrentLevel as r } from "../monitors/monitor-utils.js";
4
- import i from "../components/DataBox.js";
5
- import a from "../monitors/components/MonitorWidgetModal.js";
6
- import o from "../monitors/components/MonitorSubscriptionManager.js";
7
- import s from "../data-chart/DataChart.js";
8
- import { fetchTempByCoords as c } from "../weather.js";
9
- import { Colors as l, valueToColor as u } from "../colors.js";
10
- import * as d from "svelte/internal/client";
11
- import "svelte/internal/disclose-version";
12
- //#region src/MonitorDetailPanel.svelte
13
- var f = (e, t = d.noop, n = d.noop, r) => {
14
- let i = d.derived_safe_equal(() => d.fallback(r?.(), () => ({}), !0));
15
- var a = h(), o = d.child(a), s = d.sibling(o, 2), c = (e) => {
16
- var t = p(), r = d.child(t, !0);
17
- d.reset(t), d.template_effect(() => {
18
- d.set_attribute(t, "href", d.get(i).href), d.set_text(r, n());
19
- }), d.append(e, t);
20
- }, l = (e) => {
21
- var t = m(), r = d.child(t, !0);
22
- d.reset(t), d.template_effect(() => {
23
- d.set_class(t, 1, d.clsx(["text-xs whitespace-nowrap", d.get(i).labelColorClass ?? "text-black/70"])), d.set_text(r, n());
24
- }), d.append(e, t);
25
- };
26
- d.if(s, (e) => {
27
- d.get(i).href ? e(c) : e(l, -1);
28
- }), d.reset(a), d.template_effect(() => {
29
- d.set_class(a, 1, `flex items-center justify-center gap-1 rounded-sm border px-1 py-0.5
30
- ${d.get(i).bgClass ?? "bg-neutral-100" ?? ""}`), d.set_class(o, 1, d.clsx([
31
- "svg-icon",
32
- t(),
33
- d.get(i).iconColorClass ?? "bg-black/70"
34
- ]));
35
- }), d.append(e, a);
36
- }, p = d.from_html("<a class=\"text-link text-xs\" target=\"_blank\" translate=\"no\"> </a>"), m = d.from_html("<span translate=\"no\"> </span>"), h = d.from_html("<span><span></span> <!></span>"), g = d.from_html("<h2 class=\"text-center text-3xl font-semibold\"> </h2> <div class=\"flex flex-wrap items-center justify-center gap-4\"><!> <!> <!> <!> <!></div>", 1), _ = d.from_html("<a class=\"text-link\" target=\"_blank\"> </a>"), v = d.from_html("<span> </span>"), y = d.from_html("<li><!></li>"), b = d.from_html("<div class=\"flex w-full justify-around\"><!> <!></div> <!> <!> <div class=\"w-full\"><!></div> <div class=\"w-full\"><h3 class=\"font-semibold\">Data Provided Courtesy Of:</h3> <ul></ul></div>", 1), x = d.from_html("<div class=\"flex h-full w-full flex-col overflow-y-auto bg-white\"><div class=\"flex flex-col items-center justify-center gap-8 border-b border-gray-200 p-4 shadow-lg\"><button class=\"cursor-pointer self-end rounded border border-gray-300 px-2 py-1 text-sm hover:bg-gray-50\">✕ Close</button> <!></div> <div class=\"flex flex-col items-center gap-12 overflow-y-auto p-5 pt-10\"><!></div></div>");
37
- function S(p, m) {
38
- d.push(m, !0);
39
- let h = d.derived(() => n.latest?.get(t.params.id ?? "")), S = d.state(void 0), C = d.derived(() => {
40
- if (!d.get(h) || !n.meta) return;
41
- let e = n.meta.entryType(d.get(h).latest.entry_type), t = r(d.get(h).latest.value, e.asIter.levels), i = n.meta.monitorType(d.get(h).type).expected_interval;
42
- return {
43
- color: t?.color ?? "",
44
- header: e.label,
45
- subheading: `(${i} avg)`,
46
- value: Math.round(parseInt(d.get(h).latest.value, 10)).toString()
47
- };
48
- }), w = [
49
- {
50
- min: -Infinity,
51
- color: l.blue
52
- },
53
- {
54
- min: 65,
55
- color: l.green
56
- },
57
- {
58
- min: 78,
59
- color: l.yellow
60
- },
61
- {
62
- min: 95,
63
- color: l.red
64
- }
65
- ];
66
- d.user_effect(() => {
67
- d.get(h) && d.get(h).position && c(d.get(h).position.coordinates).then((e) => {
68
- d.set(S, {
69
- value: `${e}°F`,
70
- color: u(e, w)
71
- }, !0);
72
- });
73
- });
74
- var T = x(), E = d.child(T), D = d.child(E), O = d.sibling(D, 2), k = (e) => {
75
- var t = g(), n = d.first_child(t), r = d.child(n, !0);
76
- d.reset(n);
77
- var i = d.sibling(n, 2), a = d.child(i), o = (e) => {
78
- f(e, () => "lungs", () => "SJVAir", () => ({
79
- bgClass: "bg-aqua-haze",
80
- iconColorClass: "bg-sky-600",
81
- labelColorClass: "text-sky-600"
82
- }));
83
- };
84
- d.if(a, (e) => {
85
- d.get(h).is_sjvair && e(o);
86
- });
87
- var s = d.sibling(a, 2);
88
- f(s, () => "rss-feed", () => d.get(h).data_source.name, () => ({ href: d.get(h).data_source.url }));
89
- var c = d.sibling(s, 2);
90
- f(c, () => "router", () => d.get(h).device);
91
- var l = d.sibling(c, 2);
92
- f(l, () => "location-on", () => d.get(h).county), f(d.sibling(l, 2), () => "location-searching", () => d.get(h).location), d.reset(i), d.template_effect(() => d.set_text(r, d.get(h).name)), d.append(e, t);
93
- };
94
- d.if(O, (e) => {
95
- d.get(h) && e(k);
96
- }), d.reset(E);
97
- var A = d.sibling(E, 2), j = d.child(A), M = (e) => {
98
- var t = b(), n = d.first_child(t), r = d.child(n), c = (e) => {
99
- i(e, {
100
- get color() {
101
- return d.get(S).color;
102
- },
103
- header: "Temperature",
104
- get value() {
105
- return d.get(S).value;
106
- }
107
- });
108
- };
109
- d.if(r, (e) => {
110
- d.get(S) && e(c);
111
- });
112
- var l = d.sibling(r, 2), u = (e) => {
113
- i(e, {
114
- get color() {
115
- return d.get(C).color;
116
- },
117
- get header() {
118
- return d.get(C).header;
119
- },
120
- get subheading() {
121
- return d.get(C).subheading;
122
- },
123
- get value() {
124
- return d.get(C).value;
125
- }
126
- });
127
- };
128
- d.if(l, (e) => {
129
- d.get(C) && e(u);
130
- }), d.reset(n);
131
- var f = d.sibling(n, 2);
132
- a(f, { get monitorId() {
133
- return d.get(h).id;
134
- } });
135
- var p = d.sibling(f, 2), m = (e) => {
136
- o(e, { get monitorId() {
137
- return d.get(h).id;
138
- } });
139
- };
140
- d.if(p, (e) => {
141
- globalThis.USER?.is_authenticated && e(m);
142
- });
143
- var g = d.sibling(p, 2);
144
- s(d.child(g), { get monitor() {
145
- return d.get(h);
146
- } }), d.reset(g);
147
- var x = d.sibling(g, 2), w = d.sibling(d.child(x), 2);
148
- d.each(w, 21, () => d.get(h).data_providers, d.index, (e, t) => {
149
- var n = y(), r = d.child(n), i = (e) => {
150
- var n = _(), r = d.child(n, !0);
151
- d.reset(n), d.template_effect(() => {
152
- d.set_attribute(n, "href", d.get(t).url), d.set_text(r, d.get(t).name);
153
- }), d.append(e, n);
154
- }, a = (e) => {
155
- var n = v(), r = d.child(n, !0);
156
- d.reset(n), d.template_effect(() => d.set_text(r, d.get(t).name)), d.append(e, n);
157
- };
158
- d.if(r, (e) => {
159
- d.get(t).url ? e(i) : e(a, -1);
160
- }), d.reset(n), d.append(e, n);
161
- }), d.reset(w), d.reset(x), d.append(e, t);
162
- };
163
- d.if(j, (e) => {
164
- d.get(h) && e(M);
165
- }), d.reset(A), d.reset(T), d.delegated("click", D, () => e("/")), d.append(p, T), d.pop();
166
- }
167
- d.delegate(["click"]);
168
- //#endregion
169
- export { S as default };
@@ -1,9 +0,0 @@
1
- import e from "./MapView.js";
2
- import { createRouter as t } from "sv-router";
3
- //#region src/router.ts
4
- var { p: n, navigate: r, isActive: i, route: a } = t({
5
- "/": e,
6
- "/monitor/:id": () => import("./MonitorDetailPanel.js")
7
- });
8
- //#endregion
9
- export { r as navigate, a as route };
@@ -1 +0,0 @@
1
- @keyframes svelte-1j6xa4t-spinner{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@scope (#SJVAirMonitorMap){.backdrop.svelte-1j6xa4t{width:100%}.backdrop.expanded.svelte-1j6xa4t{z-index:9000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.chart-panel.svelte-1j6xa4t{flex-direction:column;gap:1rem;width:100%;padding:.5rem 0 1rem;display:flex;position:relative}.chart-panel.expanded.svelte-1j6xa4t{background:#fff;border-radius:.5rem;width:90%;height:68vh;padding:1rem;box-shadow:0 4px 6px -1px #0000001a}.chart-area.svelte-1j6xa4t{flex-direction:column;height:375px;display:flex}.chart-panel.expanded.svelte-1j6xa4t .chart-area:where(.svelte-1j6xa4t){flex:1;height:auto;min-height:0}.chart-canvas.svelte-1j6xa4t{flex:1;min-height:0}.spin.svelte-1j6xa4t{animation:1s linear infinite svelte-1j6xa4t-spinner;display:inline-block}}