+
+
`
+ },
+ generate_icon: function (item, fcolor = "", styling = "", classes = "") {
+ return `
`;
+ },
+
+
+ import_data: function () {
+ this.journey.data = Object.assign(
+ {},
+ JSON.parse(this.impexp.toDecoded()),
+ );
+ this.journey.data.main.forEach((e) => {
+ if (e.date_range) {
+ e.date_range[0] = new Date(e.date_range[0]);
+ e.date_range[1] = new Date(e.date_range[1]);
+ }
+ });
+ },
+ export_data: function () {
+ this.impexp = JSON.stringify(this.journey.data).toEncoded();
+ },
+ filter_selected: function (list, step) {
+ return list.filter((e) =>
+ step ? e.step == this.journey.sel_day : e.step >= 0,
+ );
+ },
+ filter_unselected: function (list) {
+ return list.filter((e) => e.step == undefined || e.step < 0);
+ },
+ remove_item: function (list, idx) {
+ list[idx].step = -1;
+ list.splice(idx, 1);
+ },
+ log: function (e) {
+ console.log(e);
+ },
+ place_delete: function (f, idx) {
+ switch (f) {
+ case "hotel": return this.journey.leg_get().hotel = null;
+ case "restaurant": return this.journey.leg_get().places.restaurants.splice(idx, 1);
+ case "activities": return this.journey.leg_get().places.activities.splice(idx, 1);
+ case "other": return;
+ case "flight": return this.journey.leg_get().travel.splice(idx, 1);
+ default: return true;
+ }
+ },
+ get_filter: function (f) {
+ switch (f) {
+ case "hotel": return api.is_hotel_type;
+ case "restaurant": return api.is_restauration_type;
+ case "place": return api.is_attraction_type;
+ case "other":
+ default: return () => true;
+ }
+ },
+
+ search_nominatim: function (f) {
+ return (q) => api.query_nominatim(q, this.compute_bb(), this.get_filter(f)).catch((_err) => []).then((r) => {
+ r.forEach((rr) => {
+ rr.latlon = [parseFloat(rr.lat), parseFloat(rr.lon)];
+ rr.sname = rr.display_name.split(",")[0];
+ });
+ r = r.filter(e => {
+ if (this.journey.leg_get().hotel && this.journey.leg_get().hotel.osm_id == e.osm_id) return false;
+ if (this.journey.leg_get().places.restaurants.find(i => i.osm_id == e.osm_id)) return false;
+ if (this.journey.leg_get().places.activities.find(i => i.osm_id == e.osm_id)) return false;
+ return true
+ })
+ this.query.load = false;
+ this.query.res = r;
+ return r
+ });
+ },
+ search_travel: function (f) {
+ return (q) => api.query_flight(q).then((r) => {
+ r.forEach(el => {
+ el.path = getGeoLine(
+ { lat: el.from_geo.lat, lng: el.from_geo.lon },
+ { lat: el.to_geo.lat, lng: el.to_geo.lon }, { dist: 2_500_000 }).map(v => [v.lat, v.lng])
+ el.type = "flight";
+ });
+ r = r.filter(e => {
+ if (this.journey.leg_get().travel.find(i => `${i.from}->${i.to}` == `${e.from}->${e.to}`)) return false;
+ return true
+ })
+ this.query.load = false;
+ this.query.res = r;
+ return r;
+ });
+ },
+
+ drawer_hover_item: function (item) {
+ if (item) {
+ this.map_override.active = true
+ if (item.type == 'flight') {
+ this.map_override.elements = [[item.from_geo.lat, item.from_geo.lon], [item.to_geo.lat, item.to_geo.lon]]
+ } else {
+ this.map_override.elements = [[item.lat, item.lon]]
+ }
+ } else {
+ this.map_override.active = false
+ }
+ },
+
+ drawer_click_item: function (item) {
+ const tpe = this.query.type;
+ this.query.res = [];
+ this.query.note = false;
+ this.query.type = null;
+ this.query.drawer = item ? true : false;
+ setTimeout(() => this.$refs.map.mapObject.invalidateSize(), 500);
+ this.query.sub = false;
+ this.drawer_hover_item()
+ if (item) {
+ item.step = -1;
+ switch (tpe) {
+ case 'hotel': return this.journey.leg_get().hotel = item;
+ case 'restaurant': return this.journey.leg_get().places.restaurants.push(item);
+ case 'place': return this.journey.leg_get().places.activities.push(item);
+ case 'other': return;
+ case 'flight': return this.journey.leg_get().travel.push(item);
+ }
+ }
+ },
+
+ search_active: function (q) {
+ const txt = q.target.value
+ this.query.load = true;
+ switch (this.query.type) {
+ case 'hotel': return this.search_hotel(txt);
+ case 'restaurant': return this.search_restaurant(txt);
+ case 'place': return this.search_place(txt);
+ case 'other': return this.search_other(txt);
+ case 'flight': return this.search_flight(txt);
+ }
+ },
+
+ search_enable: function (f) {
+ this.query.drawer = true;
+ setTimeout(() => this.$refs.map.mapObject.invalidateSize(), 500);
+ if (f == "notes") {
+ this.query.note = true;
+ this.query.type = null;
+ const query_in = document.getElementById('query_note')
+ setTimeout(() => query_in.focus(), 500);
+ return;
+ }
+ this.query.note = false;
+ this.query.type = f;
+ const query_in = document.getElementById('query_input')
+ setTimeout(() => query_in.focus(), 500);
+ this.search_active({ target: query_in })
+ },
+
+
+ sideScroll: function (element, direction, speed, step) {
+ this.leg_nav.scrollDir = direction
+ if (direction == 'none') return;
+ this.leg_nav.scrollInterval = setInterval(() => {
+ element.scrollLeft += (direction == 'left') ? -step : step;
+ }, speed);
+ },
+
+ keyboardEvent(e) {
+ if (e.which === 13) {
+ }
+ },
+ nav_mousemove(e) {
+ const c = document.querySelector('.scroll-content')
+ const left = e.pageX - c.getBoundingClientRect().left;
+ const newDir =
+ left < c.offsetWidth * 0.1 ? 'left' :
+ (left > c.offsetWidth * 0.9 ? 'right' : 'none')
+ if (!this.leg_nav.scrollInterval || this.leg_nav.scrollDir != newDir) {
+ if (this.leg_nav.scrollInterval) clearInterval(this.leg_nav.scrollInterval)
+ this.sideScroll(c, newDir, 25, 10);
+ }
+ },
+ nav_mouseleave(e) {
+ clearInterval(this.leg_nav.scrollInterval);
+ this.leg_nav.scrollDir = 'none'
+ this.leg_nav.scrollInterval = null
+ },
+
+ refreshTextAreaHeight(event) {
+ console.log("AAA", event.target.scrollHeight, event.target)
+ event.target.style['height'] = 'auto';
+ event.target.style['height'] = event.target.scrollHeight + 'px';
+ event.target.style['max-height'] = "100%";
+ },
+ },
+ created: function () {
+ this.search_hotel = api.throttle(this.search_nominatim("hotel"), 1000)
+ this.search_restaurant = api.throttle(this.search_nominatim("restaurant"), 1000)
+ this.search_place = api.throttle(this.search_nominatim("place"), 1000)
+ this.save_data = api.throttle(() => {
+ this.impexp = JSON.stringify(this.journey.data).toEncoded();
+ api.save(this.journey.id, this.journey.data);
+ }, 1000);
+ this.search_flight = api.throttle(this.search_travel("flight"), 2000)
+
+ window.addEventListener("keydown", (e) => {
+ switch (e.key) {
+ case "ArrowLeft":
+ this.journey.day_prev();
+ break;
+ case "ArrowRight":
+ this.journey.day_next();
+ break;
+ default:
+ console.log(e.key);
+ }
+ });
+
+ api.load(this.journey.id).then((r) => {
+ app.journey.data = migrator(r)
+ });
+ },
+ watch: {
+ journey: {
+ handler: function (ndata, odata) {
+ if (this.edit_active)
+ this.save_data();
+ },
+ deep: true,
+ },
+ },
+});
+
+
diff --git a/src/types/ext.ts b/src/client/types/ext.ts
similarity index 69%
rename from src/types/ext.ts
rename to src/client/types/ext.ts
index cddb2b8..0344b70 100644
--- a/src/types/ext.ts
+++ b/src/client/types/ext.ts
@@ -2,8 +2,10 @@
declare global {
interface Date {
toJSONLocal: () => string;
+ toLocal: () => string;
}
}
+
Date.prototype.toJSONLocal = function () {
function addZ(n: number): string {
return n <= 9 ? `0${n}` : `${n}`;
@@ -13,7 +15,27 @@ Date.prototype.toJSONLocal = function () {
addZ(this.getMonth() + 1),
addZ(this.getDate()),
].join("-");
-};
+}
+
+Date.prototype.toLocal = function () {
+ return [["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"][this.getDay()],
+ this.getDate(),
+ [
+ "Jan",
+ "Feb",
+ "Mar",
+ "Apr",
+ "May",
+ "Jun",
+ "Jul",
+ "Aug",
+ "Sep",
+ "Oct",
+ "Nov",
+ "Dec",
+ ][this.getMonth()]].join(" ")
+ ;
+}
// ARRAY EXTENTION
declare global {
@@ -34,27 +56,20 @@ Array.prototype.foldl = function
(f: (x: T, acc: B) => B, acc: B): B {
// STRING EXTENTION
declare global {
interface String {
- btoa: () => String;
toEncoded: () => String;
toDecoded: () => String;
}
}
-String.prototype.btoa = function () {
- return window.btoa(this);
-};
-
String.prototype.toEncoded = function () {
- return window.btoa(
- Array.from(this as string, (c) => c.charCodeAt(0)).foldl(
- (e, v) => v + String.fromCharCode(e),
- "",
- ),
- );
+ return window.btoa(encodeURIComponent(Array.from(this as string, (c) => c.charCodeAt(0)).foldl(
+ (e, v) => v + String.fromCharCode(e),
+ "",
+ )))
};
String.prototype.toDecoded = function () {
- return Array.from(window.atob(this), (c) => c.charCodeAt(0)).foldl(
+ return Array.from(decodeURIComponent(window.atob(this as string)), (c) => c.charCodeAt(0)).foldl(
(e, v) => v + String.fromCharCode(e),
"",
);
@@ -76,4 +91,4 @@ String.gen_id = function (length) {
.join("");
};
-export {};
+export { };
diff --git a/src/client/types/format.ts b/src/client/types/format.ts
new file mode 100644
index 0000000..a0f1ff9
--- /dev/null
+++ b/src/client/types/format.ts
@@ -0,0 +1,59 @@
+
+
+declare global {
+ interface LatLng {
+ lat: number
+ lng: number
+ }
+ interface geoloc {
+ latlon: [number, number]
+ notes: string
+ step: -1
+ }
+
+ interface map {
+ zoom: number
+ center: LatLng
+ }
+
+
+ interface leg {
+ title: string
+ day_title: string[]
+ date_range: [Date, Date] | null
+ map: map
+ travel: unknown[]
+ hotel: geoloc | null
+ places: {
+ restaurants: geoloc[]
+ activities: geoloc[]
+ }
+ notes: string
+ }
+
+ interface journey {
+ fmt_ver: number
+ title: string
+ main: leg[]
+ }
+}
+
+const leg_template: leg = {
+ title: "",
+ day_title: [],
+ map: { zoom: 2, center: { lng: 0, lat: 0 } },
+ travel: [],
+ hotel: null,
+ places: { restaurants: [], activities: [] },
+ notes: "",
+ date_range: null
+}
+const journey_template: journey = {
+ fmt_ver: 1,
+ title: "New Journey",
+ main: [leg_template],
+}
+
+
+export { map, geoloc, leg, journey }
+export { journey_template, leg_template }
\ No newline at end of file
diff --git a/src/client/types/geom.ts b/src/client/types/geom.ts
new file mode 100644
index 0000000..23a864a
--- /dev/null
+++ b/src/client/types/geom.ts
@@ -0,0 +1,165 @@
+const ellipsoid = {
+ a: 6378137,
+ b: 6356752.3142,
+ f: 1 / 298.257223563
+};
+
+function mod(n: number, p: number): number {
+ const r = n % p;
+ return r < 0 ? r + p : r;
+}
+
+function wrap(degrees: number, max = 360) {
+ if (-max <= degrees && degrees <= max) {
+ return degrees;
+ } else {
+ return mod(degrees + max, 2 * max) - max;
+ }
+}
+
+function dist(src: LatLng, dst: LatLng, itr = 100, mit = true): number {
+ const p1 = src,
+ p2 = dst;
+ const φ1 = toRadians(p1.lat),
+ λ1 = toRadians(p1.lng);
+ const φ2 = toRadians(p2.lat),
+ λ2 = toRadians(p2.lng);
+ const π = Math.PI;
+ const ε = Number.EPSILON;
+
+ // allow alternative ellipsoid to be specified
+ const { a, b, f } = ellipsoid;
+
+ const dL = λ2 - λ1; // L = difference in longitude, U = reduced latitude, defined by tan U = (1-f)·tanφ.
+ const tanU1 = (1 - f) * Math.tan(φ1),
+ cosU1 = 1 / Math.sqrt(1 + tanU1 * tanU1),
+ sinU1 = tanU1 * cosU1;
+ const tanU2 = (1 - f) * Math.tan(φ2),
+ cosU2 = 1 / Math.sqrt(1 + tanU2 * tanU2),
+ sinU2 = tanU2 * cosU2;
+
+ const antipodal = Math.abs(dL) > π / 2 || Math.abs(φ2 - φ1) > π / 2;
+
+ let λ = dL,
+ sinλ: number | null = null,
+ cosλ: number | null = null; // λ = difference in longitude on an auxiliary sphere
+ let σ = antipodal ? π : 0,
+ sinσ = 0,
+ cosσ = antipodal ? -1 : 1,
+ sinSqσ: number | null = null; // σ = angular distance P₁ P₂ on the sphere
+ let cos2σₘ = 1; // σₘ = angular distance on the sphere from the equator to the midpoint of the line
+ let sinα: number | null = null,
+ cosSqα = 1; // α = azimuth of the geodesic at the equator
+ let C: number | null = null;
+
+ let λʹ: number | null = null,
+ iterations = 0;
+ do {
+ sinλ = Math.sin(λ);
+ cosλ = Math.cos(λ);
+ sinSqσ =
+ cosU2 * sinλ * (cosU2 * sinλ) +
+ (cosU1 * sinU2 - sinU1 * cosU2 * cosλ) * (cosU1 * sinU2 - sinU1 * cosU2 * cosλ);
+ if (Math.abs(sinSqσ) < ε) {
+ break; // co-incident/antipodal points (falls back on λ/σ = L)
+ }
+ sinσ = Math.sqrt(sinSqσ);
+ cosσ = sinU1 * sinU2 + cosU1 * cosU2 * cosλ;
+ σ = Math.atan2(sinσ, cosσ);
+ sinα = (cosU1 * cosU2 * sinλ) / sinσ;
+ cosSqα = 1 - sinα * sinα;
+ cos2σₘ = cosSqα !== 0 ? cosσ - (2 * sinU1 * sinU2) / cosSqα : 0; // on equatorial line cos²α = 0 (§6)
+ C = (f / 16) * cosSqα * (4 + f * (4 - 3 * cosSqα));
+ λʹ = λ;
+ λ = dL + (1 - C) * f * sinα * (σ + C * sinσ * (cos2σₘ + C * cosσ * (-1 + 2 * cos2σₘ * cos2σₘ)));
+ const iterationCheck = antipodal ? Math.abs(λ) - π : Math.abs(λ);
+ if (iterationCheck > π) {
+ throw new EvalError("λ > π");
+ }
+ } while (Math.abs(λ - λʹ) > 1e-12 && ++iterations < itr);
+
+ if (iterations >= itr) {
+ if (mit) {
+ return dist(
+ src,
+ { lat: dst.lat, lng: dst.lng - 0.01 },
+ itr,
+ mit
+ );
+ } else {
+ throw new EvalError(`Inverse vincenty formula failed to converge after ${itr} iterations
+ (start=${src.lat}/${src.lng}; dest=${dst.lat}/${dst.lng})`);
+ }
+ }
+ const uSq = (cosSqα * (a * a - b * b)) / (b * b);
+ const A = 1 + (uSq / 16384) * (4096 + uSq * (-768 + uSq * (320 - 175 * uSq)));
+ const B = (uSq / 1024) * (256 + uSq * (-128 + uSq * (74 - 47 * uSq)));
+ const Δσ =
+ B *
+ sinσ *
+ (cos2σₘ +
+ (B / 4) *
+ (cosσ * (-1 + 2 * cos2σₘ * cos2σₘ) -
+ (B / 6) * cos2σₘ * (-3 + 4 * sinσ * sinσ) * (-3 + 4 * cos2σₘ * cos2σₘ)));
+
+ const s = b * A * (σ - Δσ); // s = length of the geodesic
+ return s
+
+}
+
+function pointDistance(src: LatLng, dst: LatLng): number {
+ return dist(
+ { lat: src.lat, lng: wrap(src.lng, 180) },
+ { lat: dst.lat, lng: wrap(dst.lng, 180) }
+ );
+}
+
+function toRadians(degree: number): number {
+ return (degree * Math.PI) / 180;
+}
+
+function toDegrees(radians: number): number {
+ return (radians * 180) / Math.PI;
+}
+
+function midpoint(src: LatLng, dst: LatLng): LatLng {
+ // φm = atan2( sinφ1 + sinφ2, √( (cosφ1 + cosφ2⋅cosΔλ)² + cos²φ2⋅sin²Δλ ) )
+ // λm = λ1 + atan2(cosφ2⋅sinΔλ, cosφ1 + cosφ2⋅cosΔλ)
+ // midpoint is sum of vectors to two points: mathforum.org/library/drmath/view/51822.html
+
+ const φ1 = toRadians(src.lat);
+ const λ1 = toRadians(src.lng);
+ const φ2 = toRadians(dst.lat);
+ const Δλ = toRadians(dst.lng - src.lng);
+
+ // get cartesian coordinates for the two points
+ const A = { x: Math.cos(φ1), y: 0, z: Math.sin(φ1) }; // place point A on prime meridian y=0
+ const B = { x: Math.cos(φ2) * Math.cos(Δλ), y: Math.cos(φ2) * Math.sin(Δλ), z: Math.sin(φ2) };
+
+ // vector to midpoint is sum of vectors to two points (no need to normalise)
+ const C = { x: A.x + B.x, y: A.y + B.y, z: A.z + B.z };
+
+ const φm = Math.atan2(C.z, Math.sqrt(C.x * C.x + C.y * C.y));
+ const λm = λ1 + Math.atan2(C.y, C.x);
+
+ return { lat: toDegrees(φm), lng: toDegrees(λm) };
+}
+
+function recursiveMidPoint(src: LatLng, dst: LatLng, opt: { step?: number, dist?: number } = {}, curr = 0): LatLng[] {
+ const geom: LatLng[] = [src, dst];
+ const mp = midpoint(src, dst);
+ const split_step = (opt.step != undefined && (opt.step > 0 || curr == 0))
+ const split_dist = (opt.dist != undefined && (pointDistance(src, dst) > opt.dist || curr == 0))
+ const next_opt = split_step ? { step: (opt.step || 0) - 1 } : { dist: opt.dist };
+ if (split_step || split_dist) {
+ geom.splice(0, 1, ...recursiveMidPoint(src, mp, next_opt, curr + 1));
+ geom.splice(geom.length - 2, 2, ...recursiveMidPoint(mp, dst, next_opt, curr + 1));
+ } else {
+ geom.splice(1, 0, mp);
+ }
+ return geom;
+}
+
+export function getGeoLine(src: LatLng, dst: LatLng, opt: { step?: number, dist?: number }) {
+ return recursiveMidPoint(src, dst, opt, 1)
+}
\ No newline at end of file
diff --git a/src/client/types/migration.ts b/src/client/types/migration.ts
new file mode 100644
index 0000000..2ccf0c0
--- /dev/null
+++ b/src/client/types/migration.ts
@@ -0,0 +1,24 @@
+const FMT_VER_0 = 0
+const FMT_VER_LATEST = FMT_VER_0
+
+function migrate_A_to_0(e: journey): journey {
+ e.title = (e as any).name;
+ e.main.forEach((v) => {
+ v.date_range = v.date_range || (v as any).dateRange;
+ v.day_title = v.day_title || (v as any).step_title;
+ v.places.activities = v.places.activities || (v as any).places.places;
+ v.travel = v.travel || [];
+ })
+ console.log(e)
+ return e;
+}
+
+export const migrator = (e: journey): journey => {
+ if (e.fmt_ver == FMT_VER_LATEST) return e;
+ switch (e.fmt_ver) {
+ case FMT_VER_0: break; // Update when FMT_VER_1 releases
+ default:
+ return migrate_A_to_0(e)
+ }
+ return e;
+}
\ No newline at end of file
diff --git a/src/client/types/wrapper.ts b/src/client/types/wrapper.ts
new file mode 100644
index 0000000..ade7429
--- /dev/null
+++ b/src/client/types/wrapper.ts
@@ -0,0 +1,144 @@
+import { journey_template, leg_template } from "./format"
+
+const date_day_diff = (d0: Date, d1: Date): number =>
+ (d1.getTime() - d0.getTime()) / (1000 * 60 * 60 * 24)
+
+class journey_wrapper {
+ id: String
+ data: journey = journey_template;
+ sel_leg: number = 0;
+ sel_day: number = 0;
+
+ constructor(id: String) {
+ this.id = id;
+ }
+
+ leg_first = () => this.data.main[0]
+ leg_last = () => this.data.main[this.leg_count() - 1]
+ leg_count(): number {
+ return this.data.main.length;
+ }
+ leg_len(idx?: number): number {
+ let d = this.leg_get(idx == undefined ? this.sel_leg : idx).date_range;
+ return d ? date_day_diff(d[0], d[1]) + 1 : 1;
+ }
+ add_leg(): void {
+ if (this.data.main == undefined) this.data.main = [];
+ this.data.main.push(leg_template);
+ }
+ rm_leg(idx: number): void {
+ this.data.main.splice(idx, 1);
+ if (this.sel_leg == idx) this.leg_prev();
+ if (this.sel_leg > this.data.main.length - 1) this.leg_next();
+ }
+ tot_len(): number | "?" {
+ if (this.leg_count() == 0) return 0;
+ let lf = this.leg_first(), ll = this.leg_last();
+ if (lf.date_range && ll.date_range) {
+ let d0 = lf.date_range[0]
+ let d1 = ll.date_range[1]
+ return date_day_diff(d0, d1);
+ }
+ return "?";
+ }
+ leg_sel(idx: number): void {
+ this.sel_leg = idx;
+ this.sel_day = 0;
+ }
+ leg_get(idx?: number): leg {
+ return this.data.main[idx != undefined ? idx : this.sel_leg]
+ }
+ leg_next(): void {
+ this.sel_leg = Math.min(this.sel_leg + 1, this.leg_count() - 1);
+ this.sel_day = 0;
+ }
+ leg_prev(): void {
+ this.sel_leg = Math.max(this.sel_leg - 1, 0);
+ this.sel_day = 0;
+ }
+ day_next() {
+ this.sel_day += 1
+ if (this.sel_day > this.leg_len() - 1) {
+ if (this.sel_leg < this.leg_count() - 1) {
+ this.leg_next()
+ this.sel_day = 0;
+ } else {
+ this.sel_day = this.leg_len() - 1;
+ }
+ }
+ }
+ day_prev() {
+ this.sel_day -= 1
+ if (this.sel_day < 0) {
+ if (this.sel_leg > 0) {
+ this.leg_prev()
+ this.sel_day = this.leg_len() - 1;
+ } else {
+ this.sel_day = 0;
+ }
+ }
+ }
+ date_sel(): string {
+ if (this.sel_day < 0) return "?";
+ let leg = this.leg_get()
+ if (!leg.date_range)
+ return "?";
+ var date = new Date(leg.date_range[0]);
+ date.setDate(date.getDate() + this.sel_day);
+ return date.toLocal();
+ }
+ date_tot() {
+ if (this.leg_count() == 0) return "";
+ let lf = this.leg_first(), ll = this.leg_last();
+ if (lf.date_range && ll.date_range)
+ return `${lf.date_range[0].toLocal()} - ${ll.date_range[1].toLocal()}`;
+ return "?";
+ }
+
+ date_update(idx: number) {
+ let date_range = this.leg_get(idx).date_range;
+ if (!date_range) return;
+ let start_end = [0, 0];
+ let step_len = 0;
+
+ let last_start = date_range[0];
+ for (let i = idx - 1; i >= 0; --i) {
+ step_len = this.leg_len(i) - 1;
+ if (this.leg_get(i).date_range) {
+ start_end = [last_start.getDate() - step_len, last_start.getDate()];
+ } else {
+ this.leg_get(i).date_range = [new Date(), new Date()];
+ start_end = [last_start.getDate() - step_len, last_start.getDate()];
+ }
+ let leg = this.leg_get(i)
+ if (leg.date_range) {
+ leg.date_range[0].setTime(last_start.getTime());
+ leg.date_range[0].setDate(start_end[0]);
+ leg.date_range[1].setTime(last_start.getTime());
+ leg.date_range[1].setDate(start_end[1]);
+ last_start = leg.date_range[0];
+ }
+ }
+
+ let last_end = date_range[1];
+ for (let i = idx + 1; i < this.leg_count(); ++i) {
+ step_len = this.leg_len(i) - 1;
+ if (this.leg_get(i).date_range) {
+ start_end = [last_end.getDate(), last_end.getDate() + step_len];
+ } else {
+ this.leg_get(i).date_range = [new Date(), new Date()];
+ start_end = [last_end.getDate(), last_end.getDate() + step_len];
+ }
+ let leg = this.leg_get(i)
+ if (leg.date_range) {
+ leg.date_range[0].setTime(last_end.getTime());
+ leg.date_range[0].setDate(start_end[0]);
+ leg.date_range[1].setTime(last_end.getTime());
+ leg.date_range[1].setDate(start_end[1]);
+ last_end = leg.date_range[1];
+ }
+ }
+ }
+}
+
+export default journey_wrapper;
\ No newline at end of file
diff --git a/src/old.js b/src/old.js
deleted file mode 100644
index 07049a7..0000000
--- a/src/old.js
+++ /dev/null
@@ -1,344 +0,0 @@
-import * as api from "./api";
-
-Vue.component("l-map", window.Vue2Leaflet.LMap);
-Vue.component("l-tile-layer", window.Vue2Leaflet.LTileLayer);
-Vue.component("l-marker", window.Vue2Leaflet.LMarker);
-Vue.component("l-icon", window.Vue2Leaflet.LIcon);
-Vue.component("l-popup", window.Vue2Leaflet.LPopup);
-Vue.component("l-tooltip", window.Vue2Leaflet.LTooltip);
-Vue.component("l-control-scale", window.Vue2Leaflet.LControlScale);
-Vue.component("multiselect", window.VueMultiselect.default);
-Vue.use(window.VueTextareaAutosize);
-
-const app = new Vue({
- el: "#app",
- data: {
- journey_edit:
- ["view", "short"].indexOf(window.location.pathname.split("/")[1]) == -1,
- journey_id: window.location.pathname.split("/").pop() || String.gen_id(16),
-
- journey_step_data: { day: 1, section: 0 },
- journey_data: {
- name: "New Journey",
- main: [],
- },
-
- query: { hotel: [], flight: [], nominatim: [] },
- querying: { hotel: false, flight: false, place: false, food: false },
- impexp: "",
- lang: {
- format: "ddd D MMM",
- formatLocale: {
- firstDayOfWeek: 1,
- },
- monthBeforeYear: true,
- },
- },
- methods: {
- start_journey: function (event) {
- window.location.href = "/" + this.journey_id;
- },
- add_section: function (event) {
- if (this.journey_data.main == undefined) this.journey_data.main = [];
- this.journey_data.main.push({
- title: "?",
- step_title: [],
- map: { zoom: 2 },
- hotel: { latlon: [0, 0] },
- places: { restaurants: [], places: [] },
- });
- },
- step_len: function (idx) {
- return this.journey_data.main[idx].dateRange
- ? (this.journey_data.main[idx].dateRange[1] -
- this.journey_data.main[idx].dateRange[0]) /
- (1000 * 60 * 60 * 24) +
- 1
- : 1;
- },
- next_step: function () {
- this.journey_step_data.day += 1;
- let s = this.journey_step_data.section;
- let cd = this.step_len(s);
-
- if (this.journey_step_data.day > cd) {
- this.journey_step_data.section += 1;
- if (this.journey_step_data.section >= this.journey_data.main.length) {
- this.journey_step_data.section = this.journey_data.main.length - 1;
- this.journey_step_data.day = cd;
- } else {
- this.journey_step_data.day = 1;
- }
- }
- },
- prev_step: function () {
- this.journey_step_data.day -= 1;
- if (this.journey_step_data.day <= 0) {
- this.journey_step_data.section -= 1;
- if (this.journey_step_data.section < 0) {
- this.first_step();
- } else {
- let s = this.journey_step_data.section;
-
- let cd = this.step_len(s);
- this.journey_step_data.day = cd;
- }
- }
- },
- nextnext_step: function () {
- this.journey_step_data.section += 1;
- this.journey_step_data.day = 1;
- if (this.journey_step_data.section >= this.journey_data.main.length)
- this.first_step();
- },
- prevprev_step: function () {
- this.journey_step_data.section -= 1;
- this.journey_step_data.day = 1;
- if (this.journey_step_data.section < 0) this.first_step();
- },
- first_step: function () {
- this.journey_step_data.section = 0;
- this.journey_step_data.day = 1;
- },
-
- active_date: function () {
- if (this.journey_step_data.day < 0) return "?";
- if (!this.journey_data.main[this.journey_step_data.section].dateRange)
- return "?";
- var date = new Date(
- this.journey_data.main[this.journey_step_data.section].dateRange[0],
- );
- date.setDate(date.getDate() + this.journey_step_data.day - 1);
- return this.format_date(date);
- },
- format_date: function (d) {
- return (
- ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"][d.getDay()] +
- " " +
- d.getDate() +
- " " +
- [
- "Jan",
- "Feb",
- "Mar",
- "Apr",
- "May",
- "Jun",
- "Jul",
- "Aug",
- "Sep",
- "Oct",
- "Nov",
- "Dec",
- ][d.getMonth()]
- );
- },
-
- total_days: function () {
- if (this.journey_data.main.length == 0) return 0;
- try {
- return (
- (this.journey_data.main[this.journey_data.main.length - 1]
- .dateRange[1] -
- this.journey_data.main[0].dateRange[0]) /
- (1000 * 60 * 60 * 24)
- );
- } catch {
- return "?";
- }
- },
- total_date: function () {
- if (this.journey_data.main.length == 0) return "";
- try {
- return `${this.format_date(
- this.journey_data.main[0].dateRange[0],
- )} - ${this.format_date(
- this.journey_data.main[this.journey_data.main.length - 1]
- .dateRange[1],
- )}`;
- } catch {
- return "?";
- }
- },
- update_date: function (idx) {
- let dateRange = this.journey_data.main[idx].dateRange;
- let start_end = [0, 0];
- let step_len = 0;
-
- let last_start = dateRange[0];
- for (let i = idx - 1; i >= 0; --i) {
- step_len = this.step_len(i) - 1;
- if (this.journey_data.main[i].dateRange) {
- start_end = [last_start.getDate() - step_len, last_start.getDate()];
- } else {
- this.journey_data.main[i].dateRange = [new Date(), new Date()];
- start_end = [last_start.getDate() - step_len, last_start.getDate()];
- }
- this.journey_data.main[i].dateRange[0].setTime(last_start.getTime());
- this.journey_data.main[i].dateRange[0].setDate(start_end[0]);
- this.journey_data.main[i].dateRange[1].setTime(last_start.getTime());
- this.journey_data.main[i].dateRange[1].setDate(start_end[1]);
- last_start = this.journey_data.main[i].dateRange[0];
- }
-
- let last_end = dateRange[1];
- for (let i = idx + 1; i < this.journey_data.main.length; ++i) {
- step_len = this.step_len(i) - 1;
- if (this.journey_data.main[i].dateRange) {
- start_end = [last_end.getDate(), last_end.getDate() + step_len];
- } else {
- this.journey_data.main[i].dateRange = [new Date(), new Date()];
- start_end = [last_end.getDate(), last_end.getDate() + step_len];
- }
- this.journey_data.main[i].dateRange[0].setTime(last_end.getTime());
- this.journey_data.main[i].dateRange[0].setDate(start_end[0]);
- this.journey_data.main[i].dateRange[1].setTime(last_end.getTime());
- this.journey_data.main[i].dateRange[1].setDate(start_end[1]);
- last_end = this.journey_data.main[i].dateRange[1];
- }
- },
-
- rm_section: function (idx) {
- this.journey_data.main.splice(idx, 1);
- if (this.journey_step_data.section == idx) {
- this.prevprev_step();
- }
- },
- sel_section: function (idx) {
- this.journey_step_data.section = idx;
- this.journey_step_data.day = 1;
- },
- search_nominatim: function (txt, f) {
- if (txt == "") {
- this.query.nominatim = [];
- return Promise.resolve([]);
- }
- return query_nominatim(txt, f).then((results) => {
- results.forEach((r) => {
- r.latlon = [parseFloat(r.lat), parseFloat(r.lon)];
- r.sname = r.display_name.split(",")[0];
- });
- this.query.nominatim = results;
- });
- },
- search_flight: function (txt) {
- if (txt == "") return;
- this.querying.flight = true;
- query_flight(txt.replace(" ", "")).then((results) => {
- if (results.results == "") {
- this.query.flight = [];
- this.querying.flight = false;
- return;
- }
- this.query.flight = results.results;
- this.querying.flight = false;
- });
- },
- generate_icon: function (item, fcolor) {
- return L.AwesomeMarkers.icon({
- icon: api.icon_type(item) || "star",
- prefix: "fa",
- markerColor: fcolor || item.color || "blue",
- }).createIcon().outerHTML;
- },
-
- save_data: function () {
- this.impexp = JSON.stringify(this.journey_data).toEncoded();
- api.save(this.journey_id, this.journey_data);
- },
- import_data: function () {
- this.journey_data = Object.assign(
- {},
- JSON.parse(this.impexp.toDecoded()),
- );
- this.journey_data.main.forEach((e) => {
- if (e.dateRange) {
- e.dateRange[0] = new Date(e.dateRange[0]);
- e.dateRange[1] = new Date(e.dateRange[1]);
- }
- });
- },
- export_data: function () {
- this.impexp = JSON.stringify(this.journey_data).toEncoded();
- },
- filter_selected: function (list, step) {
- return list.filter((e) =>
- step ? e.step == this.journey_step_data.day : e.step >= 0,
- );
- },
- filter_unselected: function (list) {
- return list.filter((e) => e.step == undefined || e.step < 0);
- },
- remove_item: function (list, idx) {
- list[idx].step = -1;
- list.splice(idx, 1);
- },
- log: function (e) {
- console.log(e);
- },
-
- keyboardEvent(e) {
- if (e.which === 13) {
- }
- },
- },
- created: function () {
- window.addEventListener("keydown", (e) => {
- switch (e.key) {
- case "ArrowLeft":
- this.prev_step();
- break;
- case "ArrowRight":
- this.next_step();
- break;
- default:
- console.log(e.key);
- }
- });
-
- api.load(this.journey_id).then((r) => (app.journey_data = r));
-
- this.debounceSave = _.debounce(this.save_data, 500);
- this.debounceSearch = {
- hotel: _.debounce((q) => {
- this.querying.hotel = true;
- this.search_nominatim(
- q,
- (r) =>
- r.type == "hotel" || r.type == "hostel" || r.type == "guest_house",
- ).then((r) => {
- this.querying.hotel = false;
- });
- }, 500),
- restaurants: _.debounce((q) => {
- this.querying.food = true;
- this.search_nominatim(q, (r) => api.is_restauration_type(r)).then(
- (r) => {
- this.querying.food = false;
- },
- );
- }, 500),
- places: _.debounce((q) => {
- this.querying.place = true;
- this.search_nominatim(q, (r) => api.is_attraction_type(r)).then((r) => {
- this.querying.place = false;
- });
- }, 500),
- other: _.debounce((q) => {
- this.querying.any = true;
- this.search_nominatim(q, (r) => true).then((r) => {
- this.querying.any = false;
- });
- }, 500),
- flight: _.debounce((q) => this.search_flight(q), 500),
- };
- },
- watch: {
- journey_data: {
- handler: function (ndata, odata) {
- this.debounceSave();
- },
- deep: true,
- },
- },
-});
diff --git a/src/server/api.ts b/src/server/api.ts
new file mode 100644
index 0000000..9b8b531
--- /dev/null
+++ b/src/server/api.ts
@@ -0,0 +1,90 @@
+//import { ProxyAgent, setGlobalDispatcher } from 'undici';
+
+import { flight_get_data } from './api_flight'
+import { nominatim_get_data } from './api_nominatim';
+
+//setGlobalDispatcher(new ProxyAgent(process.env.HTTPS_PROXY as string));
+
+
+export default function (server, opts, done) {
+ server.get("/flight/:id", async (req, reply) =>
+ flight_get_data(req.params.id)
+ .then(res => {
+ let wait_for_all: Promise[] = []
+ res.forEach(r => {
+ wait_for_all.push(nominatim_get_data(r.from).then(geo => (r as any).from_geo = geo[0]));
+ wait_for_all.push(nominatim_get_data(r.to).then(geo => (r as any).to_geo = geo[0]));
+ });
+ return Promise.all(wait_for_all).then(_ => res)
+ })
+ .then(res => reply.send(res))
+ );
+
+ server.get("/place/:id", async (req, reply) =>
+ nominatim_get_data(req.params.id, JSON.parse(req.query.bb))
+ .then(res => reply.send(res))
+ );
+
+ server.get("/gpx/:id", async (req, reply) => {
+ if (req.params.id == undefined)
+ return reply.code(400).send({ error: "No ID query parameter" });
+
+ server.level.db.get(req.params.id, (err, val) => {
+ if (err) {
+ console.warn(err);
+ reply.code(500).send();
+ } else {
+ let file = ''
+ const data = JSON.parse(val);
+ const gen_wpt = (name, desc, latlon, icon = "Flag") => `0${name}-${desc}${icon}`
+ const esc_str = (str) => (str || "Undefined").replace('"', """).replace("'", "'").replace("<", "<").replace(">", ">").replace("&", "&").replace("\n", "...")
+ data.main.forEach(a => {
+ file += gen_wpt(esc_str(a.hotel.name), esc_str(a.hotel.notes), a.hotel.latlon, "Hotel");
+ a.places.restaurants.forEach(b => {
+ file += gen_wpt(esc_str(b.name), esc_str(b.notes), b.latlon, "Restaurant");
+ });
+ a.places.activities.forEach(b => {
+ file += gen_wpt(esc_str(b.name), esc_str(b.notes), b.latlon, "Tree");
+ });
+ });
+ file += "";
+ reply.header('Content-Type', 'application/gpx+xml');
+ reply.header('Content-Disposition', `attachment; filename=${req.params.id}.gpx`);
+ reply.send(file);
+ }
+ });
+ return reply;
+ });
+
+ server.get("/:id", async (req, reply) => {
+ if (req.params.id == undefined)
+ return reply.code(400).send({ error: "No ID query parameter" });
+
+ server.level.db.get(req.params.id, (err, val) => {
+ if (err) {
+ console.warn(err);
+ reply.code(500).send();
+ } else {
+ reply.send(JSON.parse(val));
+ }
+ });
+ return reply;
+ });
+
+ server.post("/:id", async (req, reply) => {
+ if (req.params.id == undefined)
+ return reply.code(400).send({ error: "No ID query parameter" });
+
+ server.level.db.put(req.params.id, req.body, (err) => {
+ if (err) {
+ console.warn(err);
+ reply.code(500).send({ error: "Error with DB" });
+ } else {
+ reply.send({ content: "ok" });
+ }
+ });
+ return reply;
+ });
+
+ done();
+};
diff --git a/src/server/api_flight.ts b/src/server/api_flight.ts
new file mode 100644
index 0000000..14f5977
--- /dev/null
+++ b/src/server/api_flight.ts
@@ -0,0 +1,86 @@
+import { JSDOM } from 'jsdom';
+
+interface FlightData {
+ id: string;
+ date: string;
+ from: string;
+ to: string;
+ std: string;
+ atd: string | string[] | null;
+ sta: string;
+ ata: string | string[] | null;
+}
+
+function clean_times(s: string): string | null {
+ if (s == "—" || s == "Scheduled") return null
+ if (s.indexOf("Estimated departure") == 0) return null
+ if (s.indexOf("Landed") == 0) return s.replace("Landed ", "")
+ return s
+}
+
+export function flight_get_data(flightId: string): Promise {
+ const url = new URL(`https://www.flightradar24.com/data/flights/${flightId}`);
+ return fetch(url).then(res => res.text()).then(res => new JSDOM(res)).then(dom => {
+ const rows = dom.window.document.querySelectorAll('table tbody tr');
+ const flightData: FlightData[] = [];
+ rows.forEach(row => {
+ const columns = row.querySelectorAll('td');
+ /*
+ * 2/6 = Date/Duration
+ * 3/4 = From/To
+ * 7/8 = STD/ATD
+ * 9/11 = STA/ATA
+ */
+ const flight: FlightData = {
+ id: flightId,
+ date: columns[2].textContent.trim(),
+ from: columns[3].textContent.trim(),
+ to: columns[4].textContent.trim(),
+ std: columns[7].textContent.trim(),
+ atd: clean_times(columns[8].textContent.trim()),
+ sta: columns[9].textContent.trim(),
+ ata: clean_times(columns[11].textContent.trim())
+ };
+ flightData.push(flight);
+ });
+
+ return groupByPair(flightData).map(v => groupByFrequency(v));
+ })
+}
+
+function groupByPair(flightData: FlightData[]): FlightData[][] {
+ const flightMap: { [key: string]: FlightData[] } = {};
+ flightData.forEach(flight => {
+ const key = `${flight.from}-${flight.to}-${flight.std}`;
+ if (!flightMap[key])
+ flightMap[key] = [];
+ flightMap[key].push(flight);
+ });
+ return Object.values(flightMap);
+}
+
+function groupByFrequency(flightData: FlightData[]): FlightData {
+ let data = 'OOOOOOO'; // Initialize with no flights
+ const atdArray: string[] = [];
+ const ataArray: string[] = [];
+
+ flightData.forEach(flight => {
+ const dayOfWeek = (new Date(flight.date).getDay() + 6) % 7;
+ data = data.substring(0, dayOfWeek) + 'X' + data.substring(dayOfWeek + 1);
+ if (flight.atd)
+ atdArray.push(flight.atd as string);
+ if (flight.ata)
+ ataArray.push(flight.ata as string);
+ });
+
+ return {
+ id: flightData[0].id,
+ date: data,
+ from: flightData[0].from,
+ to: flightData[0].to,
+ std: flightData[0].std,
+ sta: flightData[0].sta,
+ atd: atdArray,
+ ata: ataArray
+ };
+};
diff --git a/src/server/api_nominatim.ts b/src/server/api_nominatim.ts
new file mode 100644
index 0000000..874b77c
--- /dev/null
+++ b/src/server/api_nominatim.ts
@@ -0,0 +1,27 @@
+
+function drop_fields(results) {
+ results.forEach(e => {
+ delete e.licence;
+ delete e.place_rank;
+ delete e.importance;
+ delete e.boundingbox;
+ });
+ return results
+}
+
+export function nominatim_get_data(id: string, bb: string[][] | null = null): Promise {
+ if (!id) return Promise.resolve([])
+
+ const url = new URL("https://nominatim.openstreetmap.org/search");
+ url.searchParams.append('format', 'jsonv2')
+ url.searchParams.append('q', id)
+ url.searchParams.append('limit', '20')
+ if (bb) {
+ url.searchParams.append('viewbox', `${bb[0][0]},${bb[0][1]},${bb[1][0]},${bb[1][1]}`)
+ url.searchParams.append('bounded', `1`)
+ }
+ return fetch(url).then((res) => {
+ if (!res.ok) throw new Error("Nominatim Error")
+ return res.json().then(r => drop_fields(r))
+ })
+}
diff --git a/src/server/main.ts b/src/server/main.ts
new file mode 100644
index 0000000..599b401
--- /dev/null
+++ b/src/server/main.ts
@@ -0,0 +1,36 @@
+import fastify from 'fastify'
+import fastify_static from '@fastify/static'
+import fastify_db from '@fastify/leveldb'
+import fastify_view from '@fastify/view';
+import pug from 'pug'
+import { join as pathJoin } from "path";
+
+import api from "./api"
+
+const server = fastify(); //{ logger: true });
+
+server.register(fastify_static, {
+ root: pathJoin(__dirname, "../public"),
+ prefix: "/public/",
+});
+
+server.register(
+ fastify_db as any,
+ { name: "db" }
+);
+
+server.register(fastify_view, {
+ engine: { pug: pug },
+});
+
+server.register(api, { prefix: "/api" });
+
+server.get("/", (req, reply) => reply.view("/src/template/home.pug"));
+server.get("/:id", (req, reply) => reply.view("/src/template/journey.pug"));
+server.get("/view/:id", (req, reply) => reply.view("/src/template/view.pug"));
+server.get("/short/:id", (req, reply) => reply.view("/src/template/short.pug"));
+
+server.listen({ port: 8080, host: "0.0.0.0" }, (err, address) => {
+ if (err) throw err;
+ console.log("Listening on", address);
+});
diff --git a/src/style/custom.css b/src/style/custom.css
new file mode 100644
index 0000000..e9b5b85
--- /dev/null
+++ b/src/style/custom.css
@@ -0,0 +1,207 @@
+.leaflet-popup-close-button {
+ visibility: hidden;
+}
+
+.p-abs {
+ position: absolute;
+}
+
+.list-group {
+ overflow: auto;
+ white-space: nowrap;
+ scrollbar-width: none;
+ padding: 1rem 0rem;
+}
+
+.list-group-item {
+ border: 1px solid var(--darkdark);
+ display: inline-block;
+ position: relative;
+ cursor: pointer;
+ text-align: center;
+ padding: 0.5rem 0.8rem;
+}
+
+.list-group-item:hover {
+ filter: brightness(85%);
+}
+
+.leaflet-control-attribution {
+ display: none;
+}
+
+.display-none {
+ display: none;
+}
+
+.col-0 {
+ flex: 0 0 0%;
+ max-width: 0%;
+ overflow: hidden;
+}
+
+.map-container,
+.drawer-container {
+ transition: flex 0.5s ease-in-out, max-width 0.5s ease-in-out;
+}
+
+.map-container {
+ min-width: 52px;
+ height: 100%;
+}
+
+.drawer-container {
+ height: 100%;
+ right: 0;
+ top: 0;
+ overflow: scroll;
+}
+
+.travel-path-icon {
+ margin-left: -12px;
+ margin-top: -32px;
+}
+
+
+.ml-auto {
+ margin-left: auto;
+}
+
+.mr-auto {
+ margin-right: auto;
+}
+
+.input .mx-input {
+ height: 40px;
+}
+
+.h-100 {
+ height: 100%;
+}
+
+.map-menu {
+ position: absolute;
+ display: flex;
+ z-index: 1100;
+ right: 0;
+ flex-direction: column;
+ gap: 10px;
+ margin: 5px;
+}
+
+.map-menu-top {
+ top: 0;
+}
+
+.map-menu-bottom {
+ bottom: 0;
+}
+
+.map-menu-center {
+ top: 50%;
+}
+
+.padding-1 {
+ padding: 5px;
+}
+
+.map-menu-item {
+ background-color: var(--darkdark);
+ padding: 5px;
+ border-radius: 50%;
+ cursor: pointer;
+}
+
+.map-menu-item:hover {
+ filter: brightness(150%);
+}
+
+.map-menu-sub {
+ display: flex;
+ flex-direction: row-reverse;
+ gap: 5px;
+}
+
+.map-menu-item,
+.map-menu-sub-item {
+ background-color: var(--darkdark);
+ padding: 5px;
+ border-radius: 50%;
+ cursor: pointer;
+ float: right;
+ width: 42px;
+ height: 42px;
+ align-content: center;
+ text-align: center;
+}
+
+.vue2leaflet-map {
+ border-radius: var(--border-radius);
+}
+
+.leaflet-popup-content {
+ margin: 10px 20px !important;
+ /* display: flex;
+ align-items: center;
+ justify-content: center;
+ width: auto !important;
+ max-width: 100%; */
+}
+
+
+.leaflet-popup>.leaflet-popup-content-wrapper {
+ border-radius: var(--border-radius);
+ width: 350px;
+}
+
+.leaflet-popup-button-group {
+ position: absolute;
+ top: 0;
+ right: 0;
+ display: flex;
+ flex-direction: row;
+ gap: 5px;
+ margin: 2px 6px;
+}
+
+.leaflet-popup-button-group>a {
+ cursor: pointer;
+}
+
+.leaflet-popup-button-group>a:hover {
+ cursor: pointer;
+ filter: brightness(150%);
+}
+
+.leaflet-popup-button-group>a>i {
+ font-size: 1em;
+}
+
+.query-result {
+ display: flex;
+ align-items: center;
+ border-radius: var(--border-radius);
+ cursor: pointer;
+}
+
+.query-result:hover {
+ filter: brightness(85%);
+}
+
+.scroll-content>div:first-child {
+ border-top-left-radius: var(--border-radius);
+ border-bottom-left-radius: var(--border-radius);
+}
+
+.scroll-content>div:nth-last-child(3) {
+ border-top-right-radius: var(--border-radius);
+ border-bottom-right-radius: var(--border-radius);
+}
+
+.scroll-content>div:last-child {
+ border-radius: var(--border-radius);
+}
+
+.mx-datepicker {
+ width: 100% !important;
+}
\ No newline at end of file
diff --git a/src/style/define.css b/src/style/define.css
new file mode 100644
index 0000000..e7bbaed
--- /dev/null
+++ b/src/style/define.css
@@ -0,0 +1,19 @@
+:root {
+ --black: #030B12;
+ --darkdark: #0C1D2E;
+ --dark: #203A53;
+ --lightdark: #425F7C;
+ --light: #93A9BE;
+ --lightlight: #B6C5D5;
+ --white: #F0F3F7;
+ --orange: ##F5B97D;
+ --yellow: #F5F57D;
+ --green: #B9F57D;
+ --turquoise: #7DF5B9;
+ --blue: #7DB9F5;
+ --purple: #B97DF5;
+ --pink: #F57DB9;
+ --red: #F57D7D;
+
+ --border-radius: 3px;
+}
\ No newline at end of file
diff --git a/src/style/index.css b/src/style/index.css
new file mode 100644
index 0000000..018e967
--- /dev/null
+++ b/src/style/index.css
@@ -0,0 +1,13 @@
+@import './define.css';
+
+@import './module/input.css';
+@import './module/load_n_spin.css';
+@import './module/typography.css';
+@import './module/layout.css';
+@import './module/general.css';
+
+@import './custom.css';
+
+[v-cloak] {
+ display: none;
+}
\ No newline at end of file
diff --git a/src/style/module/general.css b/src/style/module/general.css
new file mode 100644
index 0000000..88a2419
--- /dev/null
+++ b/src/style/module/general.css
@@ -0,0 +1,202 @@
+html,
+body,
+body,
+div,
+span,
+object,
+iframe,
+h1,
+h2,
+h3,
+h4,
+h5,
+h6,
+p,
+blockquote,
+pre,
+abbr,
+address,
+cite,
+code,
+del,
+dfn,
+em,
+ins,
+kbd,
+q,
+samp,
+small,
+strong,
+sub,
+sup,
+var,
+b,
+i,
+dl,
+dt,
+dd,
+ol,
+ul,
+li,
+fieldset,
+form,
+label,
+legend,
+table,
+caption,
+tbody,
+tfoot,
+thead,
+tr,
+th,
+td,
+article,
+aside,
+figure,
+footer,
+header,
+hgroup,
+menu,
+nav,
+section,
+time,
+mark,
+audio,
+video {
+ background: transparent;
+ border: 0;
+ font-size: 100%;
+ margin: 0;
+ outline: 0;
+ padding: 0;
+ vertical-align: baseline;
+}
+
+article,
+aside,
+figure,
+footer,
+header,
+main,
+nav,
+section {
+ display: block;
+}
+
+*,
+*:before,
+*:after {
+ box-sizing: border-box;
+}
+
+
+*,
+*::after,
+*::before {
+ box-sizing: border-box;
+ outline: none;
+}
+
+body {
+ background-color: #fff;
+ min-height: 100%;
+ overflow-x: hidden;
+ position: relative;
+}
+
+p {
+ font-weight: normal;
+ margin-bottom: 1.5em;
+}
+
+img {
+ max-width: 100%;
+}
+
+strong {
+ font-weight: 600;
+}
+
+ul {
+ margin-bottom: 1em;
+}
+
+li {
+ list-style: none;
+ margin-bottom: 0.5em;
+}
+
+/**
+ * BACKGROUND
+ */
+.bg-primary {
+ background-color: var(--blue);
+}
+
+.bg-dark {
+ background-color: var(--darkdark);
+}
+
+.bg-secondary {
+ background-color: var(--pink);
+}
+
+.bg-white {
+ background-color: var(--white);
+}
+
+.bg-success {
+ background-color: var(--green);
+}
+
+.bg-info {
+ background-color: var(--yellow);
+}
+
+.bg-warning {
+ background-color: var(--orange);
+}
+
+.bg-error {
+ background-color: var(--red);
+}
+
+.bg-gray {
+ background-color: var(--lightdark);
+}
+
+.bg-gray-light {
+ background-color: var(--lightlight);
+}
+
+
+.align {
+ align-items: center;
+ justify-content: center;
+}
+
+.fleft {
+ float: left;
+}
+
+.fright {
+ float: right;
+}
+
+.clearfix ::after {
+ clear: both;
+ content: "";
+ display: table;
+}
+
+.no-wrap {
+ white-space: nowrap;
+}
+
+.overflow-hidden {
+ overflow: hidden;
+}
+
+.rounded {
+ border-radius: var(--border-radius);
+}
\ No newline at end of file
diff --git a/src/style/module/input.css b/src/style/module/input.css
new file mode 100644
index 0000000..5ebba66
--- /dev/null
+++ b/src/style/module/input.css
@@ -0,0 +1,362 @@
+input,
+textarea {
+ -webkit-appearance: none;
+ -moz-appearance: none;
+ appearance: none;
+ resize: none;
+}
+
+label {
+ display: block;
+ font-weight: normal;
+}
+
+input:-webkit-autofill {
+ box-shadow: 0 0 0 1000px #eceff1 inset;
+}
+
+.textarea,
+.input,
+.select {
+ border: 1px solid var(--white);
+ border-radius: var(--border-radius);
+ box-shadow: none;
+ display: inline-block;
+ font-weight: normal;
+ overflow: hidden;
+}
+
+.textarea :focus,
+.input :focus,
+.select :focus {
+ outline: none;
+}
+
+.textarea.has-error,
+.input.has-error,
+.select.has-error {
+ background: #eceff1;
+ border: 1px solid #e74c3c;
+ margin-bottom: 0;
+}
+
+.select {
+ background-color: #eceff1;
+ display: inline-block;
+ margin-right: 16px;
+ position: relative;
+}
+
+.select:last-child {
+ margin-right: 0;
+}
+
+.select-fullWidth {
+ display: block;
+ margin-left: 0;
+ margin-right: 0;
+ width: 100%;
+}
+
+.select select {
+ -webkit-appearance: none;
+ -moz-appearance: none;
+ appearance: none;
+ background-color: transparent;
+ border: 0;
+ border-radius: 0;
+ color: #272727;
+ display: block;
+ font-size: 16px;
+ line-height: 1.5em;
+ margin: 0;
+ padding: 8px 16px;
+ padding-right: 30px;
+ transition: background-color 0.2s ease-in-out;
+ width: 100%;
+}
+
+.select select:active,
+.select select:focus {
+ background-color: #fbfbfc;
+ border: 0;
+ outline: none;
+}
+
+.select select::-ms-expand {
+ display: none;
+}
+
+.select::after,
+.select::before {
+ background: #03a9f4;
+ content: "";
+ display: block;
+ height: 2px;
+ margin-top: 2px;
+ position: absolute;
+ right: 5px;
+ top: 50%;
+ -webkit-transform-origin: 1px;
+ transform-origin: 1px;
+ width: 10px;
+}
+
+.select::after {
+ -webkit-transform: rotate(-135deg);
+ transform: rotate(-135deg);
+}
+
+.select::before {
+ -webkit-transform: rotate(-45deg);
+ transform: rotate(-45deg);
+}
+
+.textarea {
+ background-color: #eceff1;
+ padding: 0;
+}
+
+.textarea-fullWidth {
+ display: block;
+ margin-left: 0;
+ margin-right: 0;
+ width: 100%;
+}
+
+.textarea textarea {
+ background: transparent;
+ border: 0;
+ color: #272727;
+ display: block;
+ font-family: "Lato", sans-serif;
+ font-size: 16px;
+ line-height: 1.5em;
+ margin: 0;
+ min-height: 120px;
+ padding: 8px 16px;
+ transition: background-color 0.2s ease-in-out;
+ width: 100%;
+}
+
+.textarea textarea::-webkit-input-placeholder {
+ color: #969da6;
+}
+
+.textarea textarea::-ms-input-placeholder {
+ color: #969da6;
+}
+
+.textarea textarea::placeholder {
+ color: #969da6;
+}
+
+.textarea textarea:focus,
+.textarea textarea:active {
+ background-color: #fbfbfc;
+ border: 0;
+ outline: none;
+}
+
+.checkbox {
+ margin-bottom: 8px;
+ position: relative;
+}
+
+.checkbox input[type="checkbox"] {
+ display: none;
+}
+
+.checkbox input[type="checkbox"]:checked+label::after {
+ -webkit-animation: checkboxAndRadioAnimation 0.25s;
+ animation: checkboxAndRadioAnimation 0.25s;
+ content: "";
+ -webkit-transform: scale(1) rotate(45deg);
+ transform: scale(1) rotate(45deg);
+}
+
+.checkbox input[type="checkbox"]+label {
+ display: block;
+ overflow: hidden;
+ padding-left: 30px;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+}
+
+.checkbox input[type="checkbox"]+label::before {
+ background-color: #eceff1;
+ border: 1px solid var(--white);
+ border-radius: var(--border-radius);
+ content: "";
+ display: inline-block;
+ height: 20px;
+ left: 0;
+ margin-top: -10px;
+ position: absolute;
+ top: 50%;
+ width: 20px;
+}
+
+.checkbox input[type="checkbox"]+label::after {
+ border-bottom: 3px solid #03a9f4;
+ border-right: 3px solid #03a9f4;
+ display: block;
+ height: 12px;
+ left: 11px;
+ margin-left: -4px;
+ margin-top: -7px;
+ position: absolute;
+ top: 50%;
+ width: 7px;
+ z-index: 1;
+}
+
+.radio {
+ margin-bottom: 8px;
+ position: relative;
+}
+
+.radio input[type="radio"] {
+ display: none;
+}
+
+.radio input[type="radio"]:checked+label::after {
+ -webkit-animation: checkboxAndRadioAnimation 0.25s;
+ animation: checkboxAndRadioAnimation 0.25s;
+ content: "";
+ -webkit-transform: scale(1) rotate(45deg);
+ transform: scale(1) rotate(45deg);
+}
+
+.radio input[type="radio"]+label {
+ display: block;
+ overflow: hidden;
+ padding-left: 30px;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+}
+
+.radio input[type="radio"]+label::before {
+ background-color: #eceff1;
+ border: 1px solid var(--white);
+ border-radius: 20px;
+ content: "";
+ display: inline-block;
+ height: 20px;
+ left: 0;
+ margin-top: -10px;
+ position: absolute;
+ top: 50%;
+ width: 20px;
+}
+
+.radio input[type="radio"]+label::after {
+ background-color: #03a9f4;
+ border-radius: 20px;
+ display: block;
+ height: 10px;
+ left: 11px;
+ margin-left: -6px;
+ margin-top: -6px;
+ position: absolute;
+ top: 13px;
+ width: 10px;
+ z-index: 1;
+}
+
+@-webkit-keyframes checkboxAndRadioAnimation {
+ 0% {
+ -webkit-transform: scale(0) rotate(45deg);
+ transform: scale(0) rotate(45deg);
+ }
+
+ 50% {
+ -webkit-transform: scale(1.5) rotate(45deg);
+ transform: scale(1.5) rotate(45deg);
+ }
+
+ 100% {
+ -webkit-transform: scale(1) rotate(45deg);
+ transform: scale(1) rotate(45deg);
+ }
+}
+
+@keyframes checkboxAndRadioAnimation {
+ 0% {
+ -webkit-transform: scale(0) rotate(45deg);
+ transform: scale(0) rotate(45deg);
+ }
+
+ 50% {
+ -webkit-transform: scale(1.5) rotate(45deg);
+ transform: scale(1.5) rotate(45deg);
+ }
+
+ 100% {
+ -webkit-transform: scale(1) rotate(45deg);
+ transform: scale(1) rotate(45deg);
+ }
+}
+
+.input-invis {
+ background-color: transparent !important;
+ margin: auto !important;
+ border: 0 !important;
+}
+
+.input {
+ background-color: var(--white);
+ padding: 0;
+ position: relative;
+}
+
+.input :focus,
+.input :active {
+ background-color: var(--white);
+ border-radius: var(--border-radius);
+}
+
+.input input,
+.input textarea {
+ background: transparent;
+ border: 0;
+ box-shadow: none;
+ color: #272727;
+ font-size: 16px;
+ line-height: 1.5em;
+ margin: 0;
+ outline: none;
+ padding: 8px 16px;
+ width: 100%;
+}
+
+.input input::-webkit-input-placeholder {
+ color: #969da6;
+}
+
+.input input::-ms-input-placeholder {
+ color: #969da6;
+}
+
+.input input::placeholder {
+ color: #969da6;
+}
+
+.input input.small {
+ line-height: 1em;
+ padding: 0;
+}
+
+.input-withIcon input {
+ padding-right: 32px;
+}
+
+.input-icon {
+ fill: #969da6;
+ height: 16px;
+ margin-top: -8px;
+ position: absolute;
+ right: 16px;
+ top: 50%;
+ width: 16px;
+}
\ No newline at end of file
diff --git a/src/style/module/layout.css b/src/style/module/layout.css
new file mode 100644
index 0000000..58ec6d9
--- /dev/null
+++ b/src/style/module/layout.css
@@ -0,0 +1,354 @@
+/**
+ * LAYOUT
+ */
+.section {
+ padding-bottom: 36px;
+ padding-top: 36px;
+}
+
+@media (min-width: 768px) {
+ .section {
+ padding-bottom: 72px;
+ padding-top: 72px;
+ }
+}
+
+.section+.section {
+ padding-top: 0;
+}
+
+.container {
+ margin: 0 auto;
+ max-width: 1380px;
+ padding-left: 12px;
+ padding-right: 12px;
+ width: 100%;
+}
+
+@media (min-width: 576px) {
+ .container {
+ max-width: 540px;
+ }
+}
+
+@media (min-width: 992px) {
+ .container {
+ max-width: 960px;
+ }
+}
+
+@media (min-width: 1200px) {
+ .container {
+ max-width: 1140px;
+ }
+}
+
+@media (min-width: 768px) {
+ .container {
+ padding-left: 24px;
+ padding-right: 24px;
+ max-width: 720px;
+ }
+}
+
+.container-medium {
+ margin: 0 auto;
+ max-width: 944px;
+ padding-left: 12px;
+ padding-right: 12px;
+}
+
+@media (min-width: 768px) {
+ .container-medium {
+ padding-left: 24px;
+ padding-right: 24px;
+ }
+}
+
+.container {
+ width: 100%;
+ padding-right: 12px;
+ padding-left: 12px;
+ margin-right: auto;
+ margin-left: auto;
+}
+
+.container-fluid {
+ width: 100%;
+ padding-right: 12px;
+ padding-left: 12px;
+ margin-right: auto;
+ margin-left: auto;
+}
+
+.row {
+ display: flex;
+ flex-wrap: wrap;
+ margin-right: -12px;
+ margin-left: -12px;
+}
+
+.col-1,
+.col-2,
+.col-3,
+.col-4,
+.col-5,
+.col-6,
+.col-7,
+.col-8,
+.col-9,
+.col-10,
+.col-11,
+.col-12,
+.col,
+.col-auto,
+.col-sm-1,
+.col-sm-2,
+.col-sm-3,
+.col-sm-4,
+.col-sm-5,
+.col-sm-6,
+.col-sm-7,
+.col-sm-8,
+.col-sm-9,
+.col-sm-10,
+.col-sm-11,
+.col-sm-12,
+.col-md-1,
+.col-md-2,
+.col-md-3,
+.col-md-4,
+.col-md-5,
+.col-md-6,
+.col-md-7,
+.col-md-8,
+.col-md-9,
+.col-md-10,
+.col-md-11,
+.col-md-12 {
+ position: relative;
+ width: 100%;
+ min-height: 1px;
+ padding-right: 12px;
+ padding-left: 12px;
+}
+
+.col {
+ flex-basis: 0;
+ flex-grow: 1;
+ max-width: 100%;
+}
+
+.col-auto {
+ flex: 0 0 auto;
+ width: auto;
+ max-width: none;
+}
+
+.col-1 {
+ flex: 0 0 8.33333%;
+ max-width: 8.33333%;
+}
+
+.col-2 {
+ flex: 0 0 16.66667%;
+ max-width: 16.66667%;
+}
+
+.col-3 {
+ flex: 0 0 25%;
+ max-width: 25%;
+}
+
+.col-4 {
+ flex: 0 0 33.33333%;
+ max-width: 33.33333%;
+}
+
+.col-5 {
+ flex: 0 0 41.66667%;
+ max-width: 41.66667%;
+}
+
+.col-6 {
+ flex: 0 0 50%;
+ max-width: 50%;
+}
+
+.col-7 {
+ flex: 0 0 58.33333%;
+ max-width: 58.33333%;
+}
+
+.col-8 {
+ flex: 0 0 66.66667%;
+ max-width: 66.66667%;
+}
+
+.col-9 {
+ flex: 0 0 75%;
+ max-width: 75%;
+}
+
+.col-10 {
+ flex: 0 0 83.33333%;
+ max-width: 83.33333%;
+}
+
+.col-11 {
+ flex: 0 0 91.66667%;
+ max-width: 91.66667%;
+}
+
+.col-12 {
+ flex: 0 0 100%;
+ max-width: 100%;
+}
+
+@media (min-width: 576px) {
+ .col-sm {
+ flex-basis: 0;
+ flex-grow: 1;
+ max-width: 100%;
+ }
+
+ .col-sm-auto {
+ flex: 0 0 auto;
+ width: auto;
+ max-width: none;
+ }
+
+ .col-sm-1 {
+ flex: 0 0 8.33333%;
+ max-width: 8.33333%;
+ }
+
+ .col-sm-2 {
+ flex: 0 0 16.66667%;
+ max-width: 16.66667%;
+ }
+
+ .col-sm-3 {
+ flex: 0 0 25%;
+ max-width: 25%;
+ }
+
+ .col-sm-4 {
+ flex: 0 0 33.33333%;
+ max-width: 33.33333%;
+ }
+
+ .col-sm-5 {
+ flex: 0 0 41.66667%;
+ max-width: 41.66667%;
+ }
+
+ .col-sm-6 {
+ flex: 0 0 50%;
+ max-width: 50%;
+ }
+
+ .col-sm-7 {
+ flex: 0 0 58.33333%;
+ max-width: 58.33333%;
+ }
+
+ .col-sm-8 {
+ flex: 0 0 66.66667%;
+ max-width: 66.66667%;
+ }
+
+ .col-sm-9 {
+ flex: 0 0 75%;
+ max-width: 75%;
+ }
+
+ .col-sm-10 {
+ flex: 0 0 83.33333%;
+ max-width: 83.33333%;
+ }
+
+ .col-sm-11 {
+ flex: 0 0 91.66667%;
+ max-width: 91.66667%;
+ }
+
+ .col-sm-12 {
+ flex: 0 0 100%;
+ max-width: 100%;
+ }
+}
+
+@media (min-width: 768px) {
+ .col-md {
+ flex-basis: 0;
+ flex-grow: 1;
+ max-width: 100%;
+ }
+
+ .col-md-auto {
+ flex: 0 0 auto;
+ width: auto;
+ max-width: none;
+ }
+
+ .col-md-1 {
+ flex: 0 0 8.33333%;
+ max-width: 8.33333%;
+ }
+
+ .col-md-2 {
+ flex: 0 0 16.66667%;
+ max-width: 16.66667%;
+ }
+
+ .col-md-3 {
+ flex: 0 0 25%;
+ max-width: 25%;
+ }
+
+ .col-md-4 {
+ flex: 0 0 33.33333%;
+ max-width: 33.33333%;
+ }
+
+ .col-md-5 {
+ flex: 0 0 41.66667%;
+ max-width: 41.66667%;
+ }
+
+ .col-md-6 {
+ flex: 0 0 50%;
+ max-width: 50%;
+ }
+
+ .col-md-7 {
+ flex: 0 0 58.33333%;
+ max-width: 58.33333%;
+ }
+
+ .col-md-8 {
+ flex: 0 0 66.66667%;
+ max-width: 66.66667%;
+ }
+
+ .col-md-9 {
+ flex: 0 0 75%;
+ max-width: 75%;
+ }
+
+ .col-md-10 {
+ flex: 0 0 83.33333%;
+ max-width: 83.33333%;
+ }
+
+ .col-md-11 {
+ flex: 0 0 91.66667%;
+ max-width: 91.66667%;
+ }
+
+ .col-md-12 {
+ flex: 0 0 100%;
+ max-width: 100%;
+ }
+}
\ No newline at end of file
diff --git a/src/style/module/load_n_spin.css b/src/style/module/load_n_spin.css
new file mode 100644
index 0000000..17fe58c
--- /dev/null
+++ b/src/style/module/load_n_spin.css
@@ -0,0 +1,166 @@
+/**
+ * LOADING BAR
+ *
+ * Markup:
+ * ---------
+ *
+ *
+ */
+.loadingBar {
+ height: 6px;
+ left: 0;
+ overflow: hidden;
+ position: fixed;
+ right: 0;
+ top: 0;
+ width: 100%;
+ z-index: 1000;
+}
+
+.loadingBar::before {
+ -webkit-animation: loading 2s linear infinite;
+ animation: loading 2s linear infinite;
+ background-color: #03a9f4;
+ content: "";
+ display: block;
+ height: 6px;
+ left: -300px;
+ position: absolute;
+ width: 300px;
+}
+
+@-webkit-keyframes loading {
+ from {
+ left: -300px;
+ width: 30%;
+ }
+
+ 50% {
+ width: 30%;
+ }
+
+ 70% {
+ width: 70%;
+ }
+
+ 80% {
+ left: 50%;
+ }
+
+ 95% {
+ left: 120%;
+ }
+
+ to {
+ left: 100%;
+ }
+}
+
+@keyframes loading {
+ from {
+ left: -300px;
+ width: 30%;
+ }
+
+ 50% {
+ width: 30%;
+ }
+
+ 70% {
+ width: 70%;
+ }
+
+ 80% {
+ left: 50%;
+ }
+
+ 95% {
+ left: 120%;
+ }
+
+ to {
+ left: 100%;
+ }
+}
+
+.spinner {
+ position: absolute;
+ right: 0;
+ top: 0;
+ width: 40px;
+ height: 40px;
+ display: block
+}
+
+.spinner:after,
+.spinner:before {
+ position: absolute;
+ content: "";
+ top: 50%;
+ left: 50%;
+ margin: -12px 0 0 -12px;
+ width: 24px;
+ height: 24px;
+ border-radius: 100%;
+ border: 3px solid transparent;
+ border-top-color: var(--blue);
+}
+
+.spinner:before {
+ -webkit-animation: spinning 2.4s cubic-bezier(.41, .26, .2, .62);
+ animation: spinning 2.4s cubic-bezier(.41, .26, .2, .62);
+ -webkit-animation-iteration-count: infinite;
+ animation-iteration-count: infinite
+}
+
+.spinner:after {
+ -webkit-animation: spinning 2.4s cubic-bezier(.51, .09, .21, .8);
+ animation: spinning 2.4s cubic-bezier(.51, .09, .21, .8);
+ -webkit-animation-iteration-count: infinite;
+ animation-iteration-count: infinite
+}
+
+@-webkit-keyframes spinning {
+ 0% {
+ -webkit-transform: rotate(0);
+ transform: rotate(0);
+ }
+
+ 25% {
+ -webkit-transform: rotate(90deg);
+ transform: rotate(90deg);
+ }
+
+ 50% {
+ -webkit-transform: rotate(180deg);
+ transform: rotate(180deg);
+ }
+
+ 75% {
+ -webkit-transform: rotate(270deg);
+ transform: rotate(270deg);
+ }
+
+ 100% {
+ -webkit-transform: rotate(360deg);
+ transform: rotate(360deg);
+ }
+}
+
+@keyframes spinning {
+ 0% {
+ -webkit-transform: rotate(0);
+ transform: rotate(0);
+ }
+
+ 50% {
+ -webkit-transform: rotate(180deg);
+ transform: rotate(180deg);
+ }
+
+
+ 100% {
+ -webkit-transform: rotate(360deg);
+ transform: rotate(360deg);
+ }
+}
\ No newline at end of file
diff --git a/src/style/module/typography.css b/src/style/module/typography.css
new file mode 100644
index 0000000..96a1fa2
--- /dev/null
+++ b/src/style/module/typography.css
@@ -0,0 +1,148 @@
+/**
+ * TYPOGRAPHY
+ */
+body {
+ color: #272727;
+ font-family: "Lato", sans-serif;
+ font-size: 16px;
+ font-weight: 400;
+ line-height: 1.5em;
+}
+
+a {
+ color: var(--blue);
+ text-decoration: none;
+}
+
+a:hover {
+ color: color-mix(in srgb, var(--color-primary), #FFF 15%);
+}
+
+a:focus {
+ color: var(--blue);
+}
+
+.text-huge,
+.text-big,
+.text-medium {
+ margin-bottom: 1em;
+}
+
+.text-huge {
+ font-size: 36px;
+ line-height: 1.3em;
+}
+
+.text-big {
+ font-size: 24px;
+ line-height: 1.3em;
+}
+
+.text-medium {
+ font-size: 16px;
+ line-height: 1.5em;
+}
+
+.text-small {
+ font-size: 12px;
+ line-height: 1.3em;
+}
+
+.text-body {
+ font-size: 16px;
+ line-height: 1.5em;
+}
+
+.text-primary {
+ color: #03a9f4;
+}
+
+.text-dark {
+ color: #18232f;
+}
+
+.text-secondary {
+ color: #e91e63;
+}
+
+.text-white {
+ color: #fff;
+}
+
+.text-success {
+ color: #4caf50;
+}
+
+.text-info {
+ color: #5bc0de;
+}
+
+.text-warning {
+ color: #f0ad4e;
+}
+
+.text-error {
+ color: #e74c3c;
+}
+
+.text-gray {
+ color: #969da6;
+}
+
+.text-gray-light {
+ color: #eceff1;
+}
+
+.text-light {
+ font-weight: 300;
+}
+
+.text-normal {
+ font-weight: 400;
+}
+
+.text-lineThrough {
+ text-decoration: line-through;
+}
+
+.text-italic {
+ font-style: italic;
+}
+
+.text-underline {
+ text-decoration: underline;
+}
+
+.text-uppercase {
+ text-transform: uppercase;
+}
+
+.text-withSubtitle {
+ margin-bottom: 0 !important;
+}
+
+.text-withSubtitle+.text-huge,
+.text-withSubtitle+.text-big,
+.text-withSubtitle+.text-medium,
+.text-withSubtitle+.text-small {
+ margin-top: 0.5em;
+}
+
+h1,
+h2,
+h3,
+h4 {
+ font-weight: 300;
+}
+
+.text-center {
+ text-align: center;
+}
+
+.text-right {
+ text-align: right;
+}
+
+.text-left {
+ text-align: left;
+}
\ No newline at end of file
diff --git a/src/template/home.pug b/src/template/home.pug
new file mode 100644
index 0000000..2a3d520
--- /dev/null
+++ b/src/template/home.pug
@@ -0,0 +1,32 @@
+doctype html
+
+include module/head.pug
+main#app
+ .bg-white.section.text-dark
+ .container.mb-big
+ .text-center
+ div
+ h1.text-huge.text-withSubtitle Open Tourism Map
+ h2.text-big.text-gray Collaborative Holiday Planner
+ .spacer
+ .section.bg-dark.text-white
+ .container-medium
+ .row
+ .col-8
+ h2.text-big Your journey
+ p.text-gray
+ | Browse hotels, restaurants and attractions,....
+ br
+ |
+ | Select and plan the varying elements of your journey
+ .col-4
+ .row.align
+ .input
+ input#journey.id(v-model="journey.id", placeholder="ID", type="text")
+ p
+ .row.align
+ button.button.button--primary.button--mobileFull(
+ v-on:click="start_journey"
+ ) Start the journey
+
+include module/foot.pug
diff --git a/src/template/journey.pug b/src/template/journey.pug
new file mode 100644
index 0000000..3b3e81b
--- /dev/null
+++ b/src/template/journey.pug
@@ -0,0 +1,7 @@
+doctype html
+
+include module/head.pug
+
+main#app(v-cloak)
+ include module/journey/main.pug
+include module/foot.pug
diff --git a/src/template/module/foot.pug b/src/template/module/foot.pug
new file mode 100644
index 0000000..6ea8792
--- /dev/null
+++ b/src/template/module/foot.pug
@@ -0,0 +1,13 @@
+script(src="https://unpkg.com/leaflet")
+
+script(src="https://unpkg.com/vue@2")
+script(src="https://unpkg.com/vue2-datepicker")
+script(src="https://unpkg.com/vue2-leaflet")
+script(src="https://unpkg.com/sortablejs")
+script(src="https://unpkg.com/vuedraggable")
+script(src="/public/main.js", type="text/javascript", charset="utf-8")
+footer.bg-dark.section
+ .container.text-center.text-small.text-white
+ | Built with ❤ by Helcel
+ br
+ span.text-small.text-gray v0.0.1
diff --git a/template/module/head.pug b/src/template/module/head.pug
similarity index 67%
rename from template/module/head.pug
rename to src/template/module/head.pug
index 6252ff0..3274cfa 100644
--- a/template/module/head.pug
+++ b/src/template/module/head.pug
@@ -8,18 +8,10 @@ head
href="https://fonts.googleapis.com/css?family=IBM+Plex+Sans:400,700,300",
type="text/css"
)
- link(rel="stylesheet", href="/public/css/index.css")
+ link(rel="stylesheet", href="/public/index.css")
link(rel="stylesheet", href="https://unpkg.com/vue2-datepicker/index.css")
- link(
- rel="stylesheet",
- href="https://unpkg.com/vue-multiselect@2/dist/vue-multiselect.min.css"
- )
link(rel="stylesheet", href="https://unpkg.com/leaflet/dist/leaflet.css")
- link(
- rel="stylesheet",
- href="https://unpkg.com/leaflet.awesome-markers/dist/leaflet.awesome-markers.css"
- )
link(
rel="stylesheet",
href="https://unpkg.com/@fortawesome/fontawesome-free/css/all.min.css"
diff --git a/template/module/importexport.pug b/src/template/module/journey/impexp.pug
similarity index 93%
rename from template/module/importexport.pug
rename to src/template/module/journey/impexp.pug
index b66f61e..6e0c3a5 100644
--- a/template/module/importexport.pug
+++ b/src/template/module/journey/impexp.pug
@@ -1,4 +1,4 @@
-div
+.impexp
.container-medium.section
.aligner
.input.col-sm-4
@@ -10,4 +10,4 @@ div
.col-sm-2
button.button.button--primary.button--mobileFull(
v-on:click="export_data"
- ) Export
+ ) Export
\ No newline at end of file
diff --git a/src/template/module/journey/leg/drawer-notes.pug b/src/template/module/journey/leg/drawer-notes.pug
new file mode 100644
index 0000000..0f4a1c7
--- /dev/null
+++ b/src/template/module/journey/leg/drawer-notes.pug
@@ -0,0 +1,8 @@
+.col-12.input.text-dark()
+ textarea.text-small#query_note(
+ v-model="journey.leg_get().notes"
+ @input="refreshTextAreaHeight"
+ @focus="refreshTextAreaHeight"
+ rows="1"
+ placeholder="...",
+ )
\ No newline at end of file
diff --git a/src/template/module/journey/leg/drawer.pug b/src/template/module/journey/leg/drawer.pug
new file mode 100644
index 0000000..cc30f3e
--- /dev/null
+++ b/src/template/module/journey/leg/drawer.pug
@@ -0,0 +1,48 @@
+
+.col-12.input.text-dark
+ input#query_input(
+ type="search"
+ @input="search_active"
+ @focus="search_active"
+ placeholder="Search ... "
+ style="width:85%;"
+ :disabled="query.note"
+ )
+ .spinner(v-if="query.load")
+
+div(v-if="['hotel', 'restaurant', 'place','other', 'travel'].indexOf(query.type)>=0")
+ template(v-for="(item, idx) in query.res" )
+ .query-result.col-12.bg-white.text-dark(
+ :key="'q'+idx"
+ @mouseover="drawer_hover_item(item)"
+ @mouseleave="drawer_hover_item()"
+ @click="drawer_click_item(item)" )
+ div( v-html="generate_icon(item, 'var(--dark)')")
+ .col-10()
+ | {{ item.name }}
+ .bg-dark.divider(
+ :key="'qdiv'+idx" style="height:1px" )
+ .query-result.col-12.bg-white.text-dark(
+ v-if="query.load==false && query.res.length==0" )
+ div( v-html="generate_icon('star', 'var(--dark)')")
+ .col-10()
+ | Add custom
+
+ .col-12.text-white.text-center(
+ ) {{query.load? `Loading ...` : `Found ${query.res.length} results`}}
+div(v-else-if="['flight'].indexOf(query.type)>=0")
+ template(v-for="(item, idx) in query.res" )
+ .query-result.col-12.bg-white.text-dark(
+ :key="'q'+idx"
+ @mouseover="drawer_hover_item(item)"
+ @mouseleave="drawer_hover_item()"
+ @click="drawer_click_item(item)" )
+ div( v-html="generate_icon('plane', 'var(--dark)')")
+ .col-10()
+ | {{ item.from }} => {{item.to}}
+ bg-dark.divider(
+ :key="'qdiv'+idx" style="height:1px" )
+div(v-else)
+ template()
+ .query-result.col-12.bg-white.text-dark()
+ | Unsuppored Query type {{query.type}}
diff --git a/src/template/module/journey/leg/nav.pug b/src/template/module/journey/leg/nav.pug
new file mode 100644
index 0000000..736c95e
--- /dev/null
+++ b/src/template/module/journey/leg/nav.pug
@@ -0,0 +1,34 @@
+.scroll-handler.row(
+ @mouseleave="nav_mouseleave"
+ @mousemove="nav_mousemove")
+
+ .col-3.col-sm-2.col-md-1
+ .list-group.text-dark.h-100
+ .fleft.list-group-item.bg-white.text-small.rounded.h-100(v-on:click.prevent="journey.leg_prev()")
+ i.fas.fa-angle-left
+ .col-6.col-sm-8.col-md-10
+ draggable.scroll-content.list-group.bg-dark(
+ tag="div",
+ :list="journey.data.main",
+ handle=".handle"
+ )
+ .list-group-item.handle.text-dark(
+ v-for="(element, idx) in journey.data.main",
+ :key="idx",
+ @click="journey.leg_sel(idx)",
+ :class="journey.sel_leg == idx ? 'bg-primary' : 'bg-white'"
+ )
+ .text {{ element.title || "Leg "+idx}}
+ i.fa.fa-times.close.fright(
+ style="top: 2px; right: 2px; position: absolute",
+ @click="journey.rm_leg(idx)"
+ )
+ .list-group-item.bg-dark
+ .list-group-item.bg-white.text-dark(@click="journey.add_leg()")
+ div
+ i.fa.fa-plus.add()
+
+ .col-3.col-sm-2.col-md-1
+ .list-group.text-dark.h-100
+ a.fright.list-group-item.bg-white.text-small.rounded.h-100(v-on:click.prevent="journey.leg_next()")
+ i.fas.fa-angle-right
\ No newline at end of file
diff --git a/src/template/module/journey/leg/top.pug b/src/template/module/journey/leg/top.pug
new file mode 100644
index 0000000..bd63bec
--- /dev/null
+++ b/src/template/module/journey/leg/top.pug
@@ -0,0 +1,36 @@
+.row.text-center.align
+ .col-5.col-sm-4.col-md-2
+ .input
+ input(
+ placeholder="Leg"
+ v-model="journey.leg_get().title")
+
+ .col-5.col-sm-4.col-md-2.mr-auto
+ .input
+ input(
+ placeholder="Day"
+ v-model="journey.leg_get().day_title[journey.sel_day]"
+ )
+ .col-8.col-sm-6.col-md-4
+ .input
+ //- label Date Range ({{ journey.leg_len() }})
+ date-picker(
+ :lang="lang",
+ v-model="journey.leg_get().date_range",
+ range="",
+ format="ddd D MMM",
+ placeholder="Date Range",
+ v-on:change="journey.date_update(journey.sel_leg)"
+ )
+ .col-4.col-sm-4.col-md-3.ml-auto
+ .input
+ input(
+ disabled="",
+ :value="journey.date_sel() + ' (' + journey.sel_day + ')'"
+ )
+ //- .col-6.list-group-item.align.center.bg-white(style="padding: 0.5rem 0;")
+ //- i.fas.fa-angle-double-right(v-on:click.prevent="journey.day_next()")
+ .col-sm-1.text-small
+
+ //- a(href="#prev", v-on:click.prevent="journey.day_prev()")
+ i.fas.fa-angle-left
\ No newline at end of file
diff --git a/src/template/module/journey/main.pug b/src/template/module/journey/main.pug
new file mode 100644
index 0000000..fb8d244
--- /dev/null
+++ b/src/template/module/journey/main.pug
@@ -0,0 +1,31 @@
+.row.fleft(style="position:absolute;right:0;")
+ .col-1
+ a(:href="'/short/' + journey.id")
+ i.fas.fa-file-contract
+ .col-1
+ a(:href="'/view/' + journey.id")
+ i.fas.fa-camera
+ .col-1
+ a(href="#", v-on:click.prevent="first_step")
+ i.fas.fa-tools
+
+
+.bg-dark.text-white(v-if="journey && journey.leg_get()")
+ .container
+ .row.align(style="padding-top:45px;")
+ .col-6.col-sm-4.col-md-3.input.text-big
+ input.text-center(v-model="journey.data.name" placeholder="My Journey" type="text")
+ //- input.small(type="text", :placeholder="journey.date_tot() + ' (' + journey.tot_len() + ')'" )
+
+ include leg/nav.pug
+ include leg/top.pug
+ .row(style="aspect-ratio:1.25;")
+ .map-container(:class=" { 'col-2 col-sm-5 col-md-8': query.type, 'col-2 col-sm-5 col-md-6': query.note , 'col-12': (!query.type && !query.note) }" )
+ include map.pug
+ .row.drawer-container(:class="{ 'col-10 col-sm-7 col-md-4': query.type, 'col-10 col-sm-7 col-md-6': query.note, 'col-0': (!query.type && !query.note) }")
+ .drawer-container(:class="{ 'col-12 ': query.type, 'col-0': !query.type }")
+ include leg/drawer.pug
+ .drawer-container(:class="{ 'col-12': query.note, 'col-0': !query.note }")
+ include leg/drawer-notes.pug
+
+//- include impexp.pug
\ No newline at end of file
diff --git a/src/template/module/journey/map.pug b/src/template/module/journey/map.pug
new file mode 100644
index 0000000..5087f8a
--- /dev/null
+++ b/src/template/module/journey/map.pug
@@ -0,0 +1,21 @@
+l-map(
+ :zoom.sync="journey.leg_get().map.zoom",
+ :center.sync="journey.leg_get().map.center",
+ style="height:100%"
+ no-blocking-animations=true
+ ref="map"
+)
+ l-tile-layer(
+ url="https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",
+ attribution="© OpenStreetMap contributors"
+ )
+ l-control-scale(position="bottomleft", :imperial="false", :metric="true")
+ include map/override.pug
+
+ include map/hotel.pug
+ include map/activities.pug
+ include map/restaurants.pug
+
+ include map/travel.pug
+ template(v-if="edit_active")
+ include map/right_menu.pug
\ No newline at end of file
diff --git a/src/template/module/journey/map/activities.pug b/src/template/module/journey/map/activities.pug
new file mode 100644
index 0000000..a7bb1c5
--- /dev/null
+++ b/src/template/module/journey/map/activities.pug
@@ -0,0 +1,6 @@
+include mixin-marker.pug
+div(
+ v-for="(place, index) in journey.leg_get().places.activities",
+ :key="'activities'+index",
+ )
+ +map_marker("activities", "var(--lightdark)", "var(--light)", "var(--lightlight)")
\ No newline at end of file
diff --git a/src/template/module/journey/map/hotel.pug b/src/template/module/journey/map/hotel.pug
new file mode 100644
index 0000000..42947f7
--- /dev/null
+++ b/src/template/module/journey/map/hotel.pug
@@ -0,0 +1,7 @@
+include mixin-marker.pug
+div(
+ v-if="journey.leg_get().hotel",
+ v-for="(place, index) in [journey.leg_get().hotel]",
+ :key="'hotel'+index",
+ )
+ +map_marker("hotel", "var(--darkdark)", "var(--darkdark)", "var(--darkdark)")
\ No newline at end of file
diff --git a/src/template/module/journey/map/mixin-marker.pug b/src/template/module/journey/map/mixin-marker.pug
new file mode 100644
index 0000000..9dc67e4
--- /dev/null
+++ b/src/template/module/journey/map/mixin-marker.pug
@@ -0,0 +1,37 @@
+
+mixin map_marker(place, color_sel_c, color_sel_o, color_else)
+ l-marker(
+ :lat-lng="place.latlon"
+ )
+ l-icon(
+ v-if="(place.step == journey.sel_day)"
+ v-html="generate_marker(place, \""+color_sel_c+"\")"
+ )
+ l-icon(
+ v-else-if="(place.step >=0)"
+ v-html="generate_marker(place, \""+color_sel_o+"\")"
+ )
+ l-icon(
+ v-else
+ v-html="generate_marker(place, \""+color_else+"\")"
+ )
+ l-popup(
+ :options="{maxWidth:400, minWidth:300}")
+ h1.row.text-medium.text-center {{ place.sname }}
+ span.row.text-small.text-gray {{ place.display_name }}
+ span(v-if="edit_active")
+ .row.input()
+ textarea.col-12.col-sm-12.text-small(
+ placeholder="",
+ v-model="place.notes",
+ )
+ .leaflet-popup-button-group(v-if="edit_active")
+ a.text-gray(
+ v-on:click.prevent="place.step = ((place.step==journey.sel_day)?-1:journey.sel_day)"
+ v-html="generate_icon(((place.step==journey.sel_day)?'calendar-xmark':'calendar-plus'), 'NA')"
+ )
+ a.text-gray(
+ v-on:click.prevent="place_delete(\""+place+"\",index)"
+ v-html="generate_icon('trash', 'NA')"
+ )
+ span.row.text-small.text-dark(v-else) {{ place.notes }}
diff --git a/src/template/module/journey/map/override.pug b/src/template/module/journey/map/override.pug
new file mode 100644
index 0000000..5fe6755
--- /dev/null
+++ b/src/template/module/journey/map/override.pug
@@ -0,0 +1,11 @@
+l-marker(
+ v-if="map_override.active",
+ v-for="(el, idx) in map_override.elements"
+ key="'ovr'+idx"
+ :lat-lng="el"
+ )
+ l-icon(v-html="generate_marker('plus', 'darkgreen')")
+l-polyline(
+ v-if="map_override.active && map_override.elements.length>1"
+ :lat-lngs="map_override.elements" :color="'darkgreen'"
+)
\ No newline at end of file
diff --git a/src/template/module/journey/map/restaurants.pug b/src/template/module/journey/map/restaurants.pug
new file mode 100644
index 0000000..1685cd8
--- /dev/null
+++ b/src/template/module/journey/map/restaurants.pug
@@ -0,0 +1,6 @@
+include mixin-marker.pug
+div(
+ v-for="(place, index) in journey.leg_get().places.restaurants",
+ :key="'restaurants'+index",
+ )
+ +map_marker("restaurants", "var(--dark)", "var(--dark)", "var(--dark)")
\ No newline at end of file
diff --git a/src/template/module/journey/map/right_menu.pug b/src/template/module/journey/map/right_menu.pug
new file mode 100644
index 0000000..bd5990a
--- /dev/null
+++ b/src/template/module/journey/map/right_menu.pug
@@ -0,0 +1,21 @@
+.map-menu.map-menu-top
+ div(v-if="query.type" @click="drawer_click_item()" )
+ .map-menu-item(v-html="generate_icon('close')")
+ div(v-if="!query.type" @click="search_enable('hotel')")
+ .map-menu-item( v-html="generate_icon('bed')")
+ div(v-if="!query.type" @click="search_enable('restaurant')")
+ .map-menu-item( v-html="generate_icon('utensils')")
+ div(v-if="!query.type" @click="search_enable('place')")
+ .map-menu-item( v-html="generate_icon('star')")
+ .map-menu-sub(v-if="!query.type" @mouseenter="query.sub=true" @mouseleave="query.sub=false" )
+ .map-menu-item(v-html="generate_icon('route')")
+ .map-menu-item(v-if="query.sub" @click="search_enable('flight')" v-html="generate_icon('plane')")
+ .map-menu-item(v-if="query.sub" @click="search_enable('train')" v-html="generate_icon('train')")
+ .map-menu-item(v-if="query.sub" @click="search_enable('car')" v-html="generate_icon('car')")
+ .map-menu-item(v-if="query.sub" @click="search_enable('other')" v-html="generate_icon('person-biking')")
+
+.map-menu.map-menu-center
+ div(v-if="query.note" @click="drawer_click_item()" )
+ .map-menu-item(v-html="generate_icon('close')")
+ div(v-if="!query.note" @click="search_enable('notes')")
+ .map-menu-item( v-html="generate_icon('pencil')")
\ No newline at end of file
diff --git a/src/template/module/journey/map/travel.pug b/src/template/module/journey/map/travel.pug
new file mode 100644
index 0000000..d7e0799
--- /dev/null
+++ b/src/template/module/journey/map/travel.pug
@@ -0,0 +1,32 @@
+mixin flight_popup()
+ l-popup(
+ :options="{maxWidth:400, minWidth:300}"
+ )
+ h1.row.text-medium.text-center.text-uppercase {{ travel.id }}
+ span.row.text-small.text-gray {{ travel.from }} - {{travel.to}}
+ span(v-if="edit_active")
+ .row.input(style="margin-bottom:0")
+ textarea.col-12.col-sm-12.text-small(
+ placeholder="",
+ v-model="travel.notes",
+ )
+ span.row.text-small.text-dark(v-else) {{ travel.notes }}
+ span(v-if="edit_active")
+ .leaflet-popup-button-group(v-if="edit_active")
+ a.text-gray(
+ v-on:click.prevent="place_delete('flight',idx)"
+ v-html="generate_icon('trash', 'NA')"
+ )
+
+div(v-for= "(travel, idx) in journey.leg_get().travel")
+ l-polyline(:lat-lngs="travel.path" :color="travel.color || 'gray'")
+ +flight_popup()
+
+ l-marker(
+ v-for="(place, index) in travel.path"
+ :key="'plane'+index"
+ :lat-lng="place"
+ )
+ l-icon(v-html="generate_icon('plane', travel.color || 'gray', generate_rotation(index,travel.path), 'travel-path-icon')"
+ )
+ +flight_popup()
diff --git a/src/template/module/view/nav.pug b/src/template/module/view/nav.pug
new file mode 100644
index 0000000..fa9eb3b
--- /dev/null
+++ b/src/template/module/view/nav.pug
@@ -0,0 +1,10 @@
+.row.fleft(style="position:absolute;right:0;")
+ .col-1
+ a(:href="'/short/' + journey.id")
+ i.fas.fa-file-contract
+ .col-1
+ a(:href="'/view/' + journey.id")
+ i.fas.fa-camera
+ //- .col-1
+ //- a(:href="'/' + journey.id" v-on:click.prevent="first_step")
+ //- i.fas.fa-tools
diff --git a/src/template/module/view/short_leg.pug b/src/template/module/view/short_leg.pug
new file mode 100644
index 0000000..756cabb
--- /dev/null
+++ b/src/template/module/view/short_leg.pug
@@ -0,0 +1,39 @@
+.col-11.container.section
+ .row.text-center.align.padding-1
+ .input.col-5.col-sm-2
+ input(disabled="", placeholder="Unnamed" :value="item.title")
+ .col-sm-1
+ .input.col-6.col-sm-4
+ input(
+ disabled="",
+ placeholder="No Dates",
+ :value="item.date_range ? item.date_range[0].toLocal() + ' - ' + item.date_range[1].toLocal() : ''"
+ )
+ .col-1.col-sm-2
+ .input.col-5.col-sm-3.text-dark
+ .text(disabled="" placeholder="No Hotel" :value="item.hotel?item.hotel.sname:''") {{item.hotel?item.hotel.sname:'No Hotel'}}
+ //- .row.text-center
+ .input.col-sm-3(v-if="item.travel")
+ div(v-for="(item, idx) in item.travel")
+ input(disabled="", placeholder="-" :value="item.map((v) => v.id).join(', ')")
+ .row.align.padding-1
+ .input.col-sm-10.text-dark
+ .text-small(
+ placeholder="No Restaurants",
+ :value="item.places.restaurants.map((v) => v.sname + (v.notes ? '(' + v.notes + ')' : '')).join(', ') || 'No Restaurants'",
+ disabled=""
+ ) {{item.places.restaurants.map((v) => v.sname + (v.notes ? '(' + v.notes + ')' : '')).join(', ') || 'No Restaurants'}}
+ .row.align.padding-1
+ .input.col-sm-10.text-dark
+ .text-small(
+ placeholder="No Activities",
+ :value="item.places.activities.map((v) => v.sname + (v.notes ? '(' + v.notes + ')' : '')).join(', ') || 'No Activites'",
+ disabled=""
+ ) {{item.places.activities.map((v) => v.sname + (v.notes ? '(' + v.notes + ')' : '')).join(', ') || 'No Activites'}}
+ .row.align.padding-1
+ .input.col-sm-10.text-dark
+ .text-small(
+ placeholder="No Notes",
+ :value="item.notes || 'No Notes'",
+ disabled=""
+ ) {{item.notes || 'No Notes'}}
diff --git a/src/template/module/view/view_day.pug b/src/template/module/view/view_day.pug
new file mode 100644
index 0000000..a90fcd6
--- /dev/null
+++ b/src/template/module/view/view_day.pug
@@ -0,0 +1,19 @@
+div(v-for="(e, idx) in journey.data.main", :key="idx")
+ .bg-dark.text-white(v-if="journey.sel_leg == idx")
+ .container.section
+ .row
+ .col-3.fleft.text-center.text-white.text-huge
+ a(v-on:click.prevent="journey.day_prev()")
+ i.fas.fa-angle-left
+ .col-6.container.text-center.align
+ span.small {{ journey.data.main[idx].title }} {{ journey.sel_day }}
+ .text-big.text-gray {{ journey.data.main[idx].day_title[journey.sel_day] }}
+ .col-3.fright.text-center.text-white.text-huge
+ a(v-on:click.prevent="journey.day_next()")
+ i.fas.fa-angle-right
+ .row
+ .col-12.col-sm-12(style="aspect-ratio:1.25;")
+ include ../journey/map.pug
+ .row
+ .col-10
+ span.small.text-gray {{journey.data.main[idx].note || '...'}}
diff --git a/src/template/short.pug b/src/template/short.pug
new file mode 100644
index 0000000..61662f6
--- /dev/null
+++ b/src/template/short.pug
@@ -0,0 +1,16 @@
+doctype html
+include module/head.pug
+main#app(v-cloak)
+ include module/view/nav.pug
+
+ .bg-dark.text-white(v-if="journey && journey.leg_get()")
+ .container
+ .row.align(style="padding-top:45px;")
+ .col-7.col-sm-5.col-md-4.input.text-big
+ input.text-center(v-model="journey.data.name" placeholder="My Journey" type="text" disabled)
+ div(
+ v-for="(item, idx) in journey.data.main",
+ :class="idx % 2 === 0 ? 'bg-white text-dark' : 'bg-dark text-white'"
+ )
+ include module/view/short_leg.pug
+include module/foot.pug
diff --git a/src/template/view.pug b/src/template/view.pug
new file mode 100644
index 0000000..ff1fff4
--- /dev/null
+++ b/src/template/view.pug
@@ -0,0 +1,6 @@
+doctype html
+include module/head.pug
+main#app(v-cloak)
+ div(v-if="journey.leg_get()")
+ include module/view/view_day.pug
+include module/foot.pug
diff --git a/template/home.pug b/template/home.pug
deleted file mode 100644
index 41087ea..0000000
--- a/template/home.pug
+++ /dev/null
@@ -1,77 +0,0 @@
-doctype html
-
-include module/head.pug
-main#app
- .container
- section.mb-big
- .text-center
- img.main-logo.mb-medium(
- src="/public/img/helcel.png",
- alt="Helcel logo"
- )
- div
- h1.text-huge.text-withSubtitle Open Tourism Map
- h2.text-big.text-gray Collaborative Holiday Planner
- p#js-header-waypoint.m-none
- a.button.button--primary.button--mobileFull(href="#go") Get started
- .bg-dark
- .container
- .row.text-center
- .col-12.col-sm-3
- .section
- img(
- src="/public/img/lightweight.png",
- alt="Lightweight",
- width="118"
- )
- br
- h2.text-withSubtitle.text-big.text-white
- | Lightweight
- br
- span.text-medium.text-gray
- | Powered By
- br
- | Fastify & Sierra
- .col-12.col-sm-4
- .section
- img(
- src="/public/img/customizable.png",
- alt="Customizable",
- width="118"
- )
- br
- h2.text-withSubtitle.text-big.text-white
- | Customizable
- br
- span.text-medium.text-gray
- | Many Templates
- br
- | to choose from
- .col-12.col-sm-4
- .section
- h2.text-withSubtitle.text-big.text-white
- img(
- src="/public/img/opensource.png",
- alt="Open Source",
- width="118"
- )
- br
- |
- | FOSS
- br
- span.text-medium.text-gray :-)
- #go.container-medium.section
- h2.text-big Your journey
- p
- | Browse hotels, restaurants and attractions,....
- br
- |
- | Select and plan the varying elements of your journey
- .aligner.aligner--contentEnd
- .input
- input#journey_id(v-model="journey_id", placeholder="ID", type="text")
- button.button.button--primary.button--mobileFull(
- v-on:click="start_journey"
- ) Start the journey
-
-include module/foot.pug
diff --git a/template/journey.pug b/template/journey.pug
deleted file mode 100644
index 3d9a79c..0000000
--- a/template/journey.pug
+++ /dev/null
@@ -1,10 +0,0 @@
-doctype html
-
-include module/head.pug
-
-main#app(v-cloak)
- include module/nav.pug
- include module/journey_sec.pug
- include module/journey_step.pug
- include module/importexport.pug
-include module/foot.pug
diff --git a/template/module/foot.pug b/template/module/foot.pug
deleted file mode 100644
index 9c2437c..0000000
--- a/template/module/foot.pug
+++ /dev/null
@@ -1,26 +0,0 @@
-script(src="https://unpkg.com/leaflet")
-script(src="https://unpkg.com/leaflet.awesome-markers")
-//- script(src="https://unpkg.com/axios")
-script(src="https://unpkg.com/lodash")
-script(src="https://unpkg.com/sortablejs")
-
-script(src="https://unpkg.com/vue@2")
-script(src="https://unpkg.com/vue2-datepicker")
-script(src="https://unpkg.com/vue-textarea-autosize")
-script(src="https://unpkg.com/vue-multiselect@2")
-script(src="https://unpkg.com/vue2-leaflet")
-script(src="https://unpkg.com/vuedraggable")
-script(src="/public/main.js", type="text/javascript", charset="utf-8")
-footer.bg-dark
- .container
- .section.text-center.text-small
- p.text-white
- img(src="/public/img/helcel.png", alt="helcel logo", width="100")
- br
- br
- |
- | Built with ❤ by Helcel
- br
- span.text-small.text-gray v0.0.1
- p.text-gray
- a(href="https://git.helcel.net") Helcel Git
diff --git a/template/module/journey_sec.pug b/template/module/journey_sec.pug
deleted file mode 100644
index 4b5640e..0000000
--- a/template/module/journey_sec.pug
+++ /dev/null
@@ -1,20 +0,0 @@
-draggable.list-group.bg-dark(
- tag="div",
- :list="journey_data.main",
- handle=".handle"
-)
- .list-group-item.handle(
- v-for="(element, idx) in journey_data.main",
- :key="idx",
- @click="sel_section(idx)",
- :class="journey_step_data.section == idx ? 'bg-primary' : 'bg-white'"
- )
- .text {{ element.title }}
- i.fa.fa-times.close.fright(
- style="top: 2px; right: 2px; position: absolute",
- @click="rm_section(idx)"
- )
-
- .list-group-item.bg-white(@click="add_section()")
- .text Add Section
- i.fa.fa-plus.add(style="top: 12px; right: 5px; position: absolute")
diff --git a/template/module/journey_step.pug b/template/module/journey_step.pug
deleted file mode 100644
index 10281da..0000000
--- a/template/module/journey_step.pug
+++ /dev/null
@@ -1,102 +0,0 @@
-div(v-for="(e, idx) in journey_data.main", :key="idx")
- .bg-dark.text-white(v-if="journey_step_data.section == idx")
- .container.section
- .row.text-center
- .input.col-sm-2
- input(v-model="journey_data.main[idx].title")
- .input.col-sm-2
- input(
- placeholder="Day title",
- v-model="journey_data.main[idx].step_title[journey_step_data.day]"
- )
- .col-sm-3
- .right.input.col-sm-2
- input(
- disabled="",
- :value="active_date() + ' (' + journey_step_data.day + ')'"
- )
- .row
- .col-9.col-ssm-12
- include map.pug
- .col-3.col-ssm-12
- .row.text-center
- div
- label Date Range ({{ step_len(idx) }})
- .input.text-dark
- date-picker(
- :lang="lang",
- v-model="journey_data.main[idx].dateRange",
- range="",
- format="ddd D MMM",
- placeholder="Date Range",
- v-on:change="update_date(idx)"
- )
- .row.text-center
- div
- label Hotel
- multiselect#ajax(
- v-model="journey_data.main[idx].hotel",
- label="sname",
- track-by="place_id",
- placeholder="Type to search",
- open-direction="bottom",
- :options="query.nominatim",
- :searchable="true",
- :loading="querying.hotel",
- :internal-search="false",
- :clear-on-select="false",
- :options-limit="50",
- :limit="1",
- :max-height="600",
- @search-change="debounceSearch.hotel"
- )
- .row.text-center
- div
- label Restoration
- multiselect#ajax(
- v-model="journey_data.main[idx].places.restaurants",
- label="sname",
- track-by="place_id",
- placeholder="Type to search",
- open-direction="bottom",
- :multiple="true",
- :options="query.nominatim",
- :searchable="true",
- :loading="querying.food",
- :internal-search="false",
- :clear-on-select="false",
- :options-limit="50",
- :limit="10",
- :max-height="600",
- @search-change="debounceSearch.restaurants"
- )
- .row.text-center
- div
- label Activities
- multiselect#ajax(
- v-model="journey_data.main[idx].places.activities",
- label="sname",
- track-by="place_id",
- placeholder="Type to search",
- open-direction="bottom",
- :multiple="true",
- :options="query.nominatim",
- :searchable="true",
- :loading="querying.place",
- :internal-search="false",
- :clear-on-select="false",
- :options-limit="50",
- :limit="10",
- :max-height="600",
- @search-change="debounceSearch.places"
- )
- .row.text-center
- div
- label Notes
- .input.text-dark(style="width: 100%")
- textarea-autosize.text-small(
- v-model="journey_data.main[idx].notes",
- placeholder="Notes",
- :min-height="30",
- :max-height="350"
- )
diff --git a/template/module/map.pug b/template/module/map.pug
deleted file mode 100644
index 34f6e83..0000000
--- a/template/module/map.pug
+++ /dev/null
@@ -1,84 +0,0 @@
-l-map(
- :zoom.sync="journey_data.main[idx].map.zoom",
- :center.sync="journey_data.main[idx].map.center",
- style="padding-top: 100%"
-)
- l-tile-layer(
- url="https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",
- attribution="© OpenStreetMap contributors"
- )
- l-control-scale(position="topright", :imperial="false", :metric="true")
- l-marker(
- v-if="journey_data.main[idx].hotel",
- :lat-lng="journey_data.main[idx].hotel.latlon"
- )
- l-icon
- div(v-html="generate_icon(journey_data.main[idx].hotel, 'darkblue')")
- l-popup
- h1.row.text-medium.text-center {{ journey_data.main[idx].hotel.sname }}
- span.row.text-small.text-gray {{ journey_data.main[idx].hotel.display_name }}
- span(v-if="journey_edit")
- .row.input
- textarea-autosize.col-12.col-sm-12.text-small(
- placeholder="Notes",
- v-model="journey_data.main[idx].hotel.notes",
- :min-height="30",
- :max-height="350"
- )
- span.row.text-small.text-white(v-else) {{ journey_data.main[idx].hotel.notes }}
- l-marker(
- v-for="place in journey_data.main[idx].places.activities",
- :lat-lng="place.latlon"
- )
- l-icon
- div(
- v-if="place.step == journey_step_data.day",
- v-html="generate_icon(place)"
- )
- div(
- v-else-if="place.step == -1 || place.step == undefined",
- v-html="generate_icon(place, 'gray')"
- )
- div(v-else-if="journey_edit", v-html="generate_icon(place, 'lightgray')")
- div(v-else)
- l-popup
- h1.row.text-medium.text-center {{ place.sname }}
- span.row.text-small.text-gray {{ place.display_name }}
- span(v-if="journey_edit")
- .row.input
- textarea-autosize.col-12.col-sm-12.text-small(
- placeholder="Notes",
- v-model="place.notes",
- :min-height="30",
- :max-height="350"
- )
- a.leaflet-popup-close-button.text-gray(
- style="right: 0px; visibility: visible",
- href="#rm",
- v-on:click.prevent="place.step = -1"
- ) -
- a.leaflet-popup-close-button.text-gray(
- style="right: 16px; visibility: visible",
- href="#ad",
- v-on:click.prevent="place.step = journey_step_data.day"
- ) +
- span.row.text-small.text-dark(v-else) {{ place.notes }}
-
- l-marker(
- v-for="place in journey_data.main[idx].places.restaurants",
- :lat-lng.sync="place.latlon"
- )
- l-icon
- div(v-html="generate_icon(place, 'cadetblue')")
- l-popup
- h1.row.text-medium.text-center {{ place.sname }}
- span.row.text-small.text-gray {{ place.display_name }}
- span(v-if="journey_edit")
- .row.input
- textarea-autosize.col-12.col-sm-12.text-small(
- placeholder="Notes",
- v-model="place.notes",
- :min-height="30",
- :max-height="350"
- )
- span.row.text-small.text-dark(v-else) {{ place.notes }}
diff --git a/template/module/nav.pug b/template/module/nav.pug
deleted file mode 100644
index c7173f1..0000000
--- a/template/module/nav.pug
+++ /dev/null
@@ -1,38 +0,0 @@
-header.header
- .header-inner.container
- a.header-logo.text-dark(href="/")
- img.header-logoImage(
- src="/public/img/helcel.png",
- alt="Helcel logo",
- width="40"
- )
- span.hide-small OTM
- .input.input-invis.row
- input.col-6.small(v-model="journey_data.name", type="text")
- input.col-6.small(
- disabled,
- type="text",
- :placeholder="total_date() + ' (' + total_days() + ')'"
- )
- .row.header-nav.text-big(style="margin-bottom: 0")
- .col-sm-2
- a(:href="'/short/' + journey_id")
- i.fas.fa-file-contract
- .col-sm-2
- a(:href="'/view/' + journey_id")
- i.fas.fa-camera
- .col-sm-2
- a(href="#main", v-on:click.prevent="first_step")
- i.fas.fa-tools
- .col-sm-1.text-small
- a(href="#prevprev", v-on:click.prevent="prevprev_step")
- i.fas.fa-angle-double-left
- .col-sm-1
- a(href="#prev", v-on:click.prevent="prev_step")
- i.fas.fa-angle-left
- .col-sm-1
- a(href="#next", v-on:click.prevent="next_step")
- i.fas.fa-angle-right
- .col-sm-1.text-small
- a(href="#nextnext", v-on:click.prevent="nextnext_step")
- i.fas.fa-angle-double-right
diff --git a/template/module/nav_pub.pug b/template/module/nav_pub.pug
deleted file mode 100644
index 49af761..0000000
--- a/template/module/nav_pub.pug
+++ /dev/null
@@ -1,18 +0,0 @@
-header.header
- .header-inner.container
- a.header-logo.text-dark(href="/")
- img.header-logoImage(
- src="/public/img/helcel.png",
- alt="Helcel logo",
- width="40"
- )
- span.hide-small HOTM
- .input.input-invis
- input.small(:value="journey_data.name", type="text", disabled="")
- .row.header-nav.text-big(style="margin-bottom: 0")
- .col-sm-3
- a(:href="'/short/' + journey_id")
- i.fas.fa-file-contract
- .col-sm-3
- a(:href="'/view/' + journey_id")
- i.fas.fa-camera
diff --git a/template/module/short_sec.pug b/template/module/short_sec.pug
deleted file mode 100644
index 3bfe2bf..0000000
--- a/template/module/short_sec.pug
+++ /dev/null
@@ -1,43 +0,0 @@
-.container.section
- .row.text-center
- .input.col-sm-2
- input(disabled="", :value="item.title")
- .input.col-sm-4
- input(
- disabled="",
- placeholder="No Dates",
- :value="item.dateRange ? format_date(item.dateRange[0]) + ' - ' + format_date(item.dateRange[1]) : ''"
- )
- .input.col-sm-2
- input(disabled="", placeholder="No Hotel", :value="item.hotel.sname")
- .row.text-center
- .input.col-sm-3(v-if="item.transit")
- div(v-for="(item, idx) in item.transit")
- input(disabled="", :value="item.map((v) => v.id).join(', ')")
- .row.text-center
- .input.col-sm-8(v-if="item.places && item.places.restaurants")
- textarea-autosize.text-small(
- placeholder="No Restaurants",
- :value="item.places.restaurants.map((v) => v.sname + (v.notes ? '(' + v.notes + ')' : '')).join(', ')",
- :min-height="30",
- :max-height="350",
- disabled=""
- )
- .row.text-center
- .input.col-sm-8(v-if="item.places && item.places.activities")
- textarea-autosize.text-small(
- placeholder="No Activities",
- :value="item.places.activities.map((v) => v.sname + (v.notes ? '(' + v.notes + ')' : '')).join(', ')",
- :min-height="30",
- :max-height="350",
- disabled=""
- )
- .row.text-center
- .input.col-sm-8(v-if="item.notes")
- textarea-autosize.text-small(
- placeholder="No Notes",
- :value="item.notes",
- :min-height="30",
- :max-height="350",
- disabled=""
- )
diff --git a/template/module/view_step.pug b/template/module/view_step.pug
deleted file mode 100644
index 6540d3e..0000000
--- a/template/module/view_step.pug
+++ /dev/null
@@ -1,19 +0,0 @@
-div(v-for="(e, idx) in journey_data.main", :key="idx")
- .bg-dark.text-white(v-if="journey_step_data.section == idx")
- .container.section
- .aligner.text-center.text-white.text-huge(style="margin-bottom: 5px")
- .aligner--itemTop.fleft
- a(href="#prev", v-on:click.prevent="prev_step")
- i.fas.fa-angle-left
- span.container
- span.small {{ journey_data.main[idx].title }} {{ journey_step_data.day }}
- .text-big.text-gray {{ journey_data.main[idx].step_title[journey_step_data.day] }}
- .aligner--itemEnd.fright
- a(href="#next", v-on:click.prevent="next_step")
- i.fas.fa-angle-right
- .row
- .col-12.col-sm-12
- include map.pug
- .row
- .col-12.col-sm-12
- .container
diff --git a/template/short.pug b/template/short.pug
deleted file mode 100644
index e06e6cb..0000000
--- a/template/short.pug
+++ /dev/null
@@ -1,10 +0,0 @@
-doctype html
-include module/head.pug
-main#app(v-cloak)
- include module/nav_pub.pug
- div(
- v-for="(item, idx) in journey_data.main",
- :class="idx % 2 === 0 ? 'bg-dark text-white' : ''"
- )
- include module/short_sec.pug
-include module/foot.pug
diff --git a/template/view.pug b/template/view.pug
deleted file mode 100644
index a80f3a6..0000000
--- a/template/view.pug
+++ /dev/null
@@ -1,6 +0,0 @@
-doctype html
-include module/head.pug
-main#app(v-cloak)
- div(v-if="journey_data.main[journey_step_data.section] != undefined")
- include module/view_step.pug
-include module/foot.pug
diff --git a/tsconfig-client.json b/tsconfig-client.json
new file mode 100644
index 0000000..04b8e7b
--- /dev/null
+++ b/tsconfig-client.json
@@ -0,0 +1,17 @@
+{
+ "compilerOptions": {
+ "target": "esnext",
+ "typeRoots": [
+ "./node_modules/@types",
+ "./types/ext"
+ ],
+ "lib": [
+ "esnext",
+ "DOM"
+ ],
+ "noEmit": true, // Disable emitting output (use esbuild to handle this)
+ "skipLibCheck": true, // Skip type checking of all declaration files (*.d.ts)
+ "strict": false, // Disable strict type checks if needed
+ "moduleResolution": "node",
+ }
+}
\ No newline at end of file
diff --git a/tsconfig.json b/tsconfig.json
deleted file mode 100644
index 6a54986..0000000
--- a/tsconfig.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
-
- "compilerOptions": {
- "target": "esnext",
- "typeRoots": ["./node_modules/@types", "./types/ext"],
- "lib": ["esnext", "DOM"],
- "noEmit": true, // Disable emitting output (use esbuild to handle this)
- "skipLibCheck": true, // Skip type checking of all declaration files (*.d.ts)
- "strict": false, // Disable strict type checks if needed
- "moduleResolution": "node",
- }
-}
diff --git a/yarn.lock b/yarn.lock
index bfa7041..1ef3ec5 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1,1622 +1,3013 @@
-# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
-# yarn lockfile v1
-
-
-"@babel/helper-string-parser@^7.25.9":
- version "7.25.9"
- resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz#1aabb72ee72ed35789b4bbcad3ca2862ce614e8c"
- integrity sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==
-
-"@babel/helper-validator-identifier@^7.25.9":
- version "7.25.9"
- resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz#24b64e2c3ec7cd3b3c547729b8d16871f22cbdc7"
- integrity sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==
-
-"@babel/parser@^7.6.0", "@babel/parser@^7.9.6":
- version "7.26.9"
- resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.26.9.tgz#d9e78bee6dc80f9efd8f2349dcfbbcdace280fd5"
- integrity sha512-81NWa1njQblgZbQHxWHpxxCzNsa3ZwvFqpUg7P+NNUU6f3UU2jBEg4OlF/J6rl8+PQGh1q6/zWScd001YwcA5A==
- dependencies:
- "@babel/types" "^7.26.9"
-
-"@babel/types@^7.26.9", "@babel/types@^7.6.1", "@babel/types@^7.9.6":
- version "7.26.9"
- resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.26.9.tgz#08b43dec79ee8e682c2ac631c010bdcac54a21ce"
- integrity sha512-Y3IR1cRnOxOCDvMmNiym7XpXQ93iGDDPHx+Zj+NM+rg0fBaShfQLkg+hKPaZCEvg5N/LeCo4+Rj/i3FuJsIQaw==
- dependencies:
- "@babel/helper-string-parser" "^7.25.9"
- "@babel/helper-validator-identifier" "^7.25.9"
-
-"@esbuild/aix-ppc64@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.25.0.tgz#499600c5e1757a524990d5d92601f0ac3ce87f64"
- integrity sha512-O7vun9Sf8DFjH2UtqK8Ku3LkquL9SZL8OLY1T5NZkA34+wG3OQF7cl4Ql8vdNzM6fzBbYfLaiRLIOZ+2FOCgBQ==
-
-"@esbuild/android-arm64@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.25.0.tgz#b9b8231561a1dfb94eb31f4ee056b92a985c324f"
- integrity sha512-grvv8WncGjDSyUBjN9yHXNt+cq0snxXbDxy5pJtzMKGmmpPxeAmAhWxXI+01lU5rwZomDgD3kJwulEnhTRUd6g==
-
-"@esbuild/android-arm@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.25.0.tgz#ca6e7888942505f13e88ac9f5f7d2a72f9facd2b"
- integrity sha512-PTyWCYYiU0+1eJKmw21lWtC+d08JDZPQ5g+kFyxP0V+es6VPPSUhM6zk8iImp2jbV6GwjX4pap0JFbUQN65X1g==
-
-"@esbuild/android-x64@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.25.0.tgz#e765ea753bac442dfc9cb53652ce8bd39d33e163"
- integrity sha512-m/ix7SfKG5buCnxasr52+LI78SQ+wgdENi9CqyCXwjVR2X4Jkz+BpC3le3AoBPYTC9NHklwngVXvbJ9/Akhrfg==
-
-"@esbuild/darwin-arm64@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.25.0.tgz#fa394164b0d89d4fdc3a8a21989af70ef579fa2c"
- integrity sha512-mVwdUb5SRkPayVadIOI78K7aAnPamoeFR2bT5nszFUZ9P8UpK4ratOdYbZZXYSqPKMHfS1wdHCJk1P1EZpRdvw==
-
-"@esbuild/darwin-x64@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.25.0.tgz#91979d98d30ba6e7d69b22c617cc82bdad60e47a"
- integrity sha512-DgDaYsPWFTS4S3nWpFcMn/33ZZwAAeAFKNHNa1QN0rI4pUjgqf0f7ONmXf6d22tqTY+H9FNdgeaAa+YIFUn2Rg==
-
-"@esbuild/freebsd-arm64@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.0.tgz#b97e97073310736b430a07b099d837084b85e9ce"
- integrity sha512-VN4ocxy6dxefN1MepBx/iD1dH5K8qNtNe227I0mnTRjry8tj5MRk4zprLEdG8WPyAPb93/e4pSgi1SoHdgOa4w==
-
-"@esbuild/freebsd-x64@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.25.0.tgz#f3b694d0da61d9910ec7deff794d444cfbf3b6e7"
- integrity sha512-mrSgt7lCh07FY+hDD1TxiTyIHyttn6vnjesnPoVDNmDfOmggTLXRv8Id5fNZey1gl/V2dyVK1VXXqVsQIiAk+A==
-
-"@esbuild/linux-arm64@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.25.0.tgz#f921f699f162f332036d5657cad9036f7a993f73"
- integrity sha512-9QAQjTWNDM/Vk2bgBl17yWuZxZNQIF0OUUuPZRKoDtqF2k4EtYbpyiG5/Dk7nqeK6kIJWPYldkOcBqjXjrUlmg==
-
-"@esbuild/linux-arm@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.25.0.tgz#cc49305b3c6da317c900688995a4050e6cc91ca3"
- integrity sha512-vkB3IYj2IDo3g9xX7HqhPYxVkNQe8qTK55fraQyTzTX/fxaDtXiEnavv9geOsonh2Fd2RMB+i5cbhu2zMNWJwg==
-
-"@esbuild/linux-ia32@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.25.0.tgz#3e0736fcfab16cff042dec806247e2c76e109e19"
- integrity sha512-43ET5bHbphBegyeqLb7I1eYn2P/JYGNmzzdidq/w0T8E2SsYL1U6un2NFROFRg1JZLTzdCoRomg8Rvf9M6W6Gg==
-
-"@esbuild/linux-loong64@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.25.0.tgz#ea2bf730883cddb9dfb85124232b5a875b8020c7"
- integrity sha512-fC95c/xyNFueMhClxJmeRIj2yrSMdDfmqJnyOY4ZqsALkDrrKJfIg5NTMSzVBr5YW1jf+l7/cndBfP3MSDpoHw==
-
-"@esbuild/linux-mips64el@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.25.0.tgz#4cababb14eede09248980a2d2d8b966464294ff1"
- integrity sha512-nkAMFju7KDW73T1DdH7glcyIptm95a7Le8irTQNO/qtkoyypZAnjchQgooFUDQhNAy4iu08N79W4T4pMBwhPwQ==
-
-"@esbuild/linux-ppc64@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.25.0.tgz#8860a4609914c065373a77242e985179658e1951"
- integrity sha512-NhyOejdhRGS8Iwv+KKR2zTq2PpysF9XqY+Zk77vQHqNbo/PwZCzB5/h7VGuREZm1fixhs4Q/qWRSi5zmAiO4Fw==
-
-"@esbuild/linux-riscv64@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.25.0.tgz#baf26e20bb2d38cfb86ee282dff840c04f4ed987"
- integrity sha512-5S/rbP5OY+GHLC5qXp1y/Mx//e92L1YDqkiBbO9TQOvuFXM+iDqUNG5XopAnXoRH3FjIUDkeGcY1cgNvnXp/kA==
-
-"@esbuild/linux-s390x@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.25.0.tgz#8323afc0d6cb1b6dc6e9fd21efd9e1542c3640a4"
- integrity sha512-XM2BFsEBz0Fw37V0zU4CXfcfuACMrppsMFKdYY2WuTS3yi8O1nFOhil/xhKTmE1nPmVyvQJjJivgDT+xh8pXJA==
-
-"@esbuild/linux-x64@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.25.0.tgz#08fcf60cb400ed2382e9f8e0f5590bac8810469a"
- integrity sha512-9yl91rHw/cpwMCNytUDxwj2XjFpxML0y9HAOH9pNVQDpQrBxHy01Dx+vaMu0N1CKa/RzBD2hB4u//nfc+Sd3Cw==
-
-"@esbuild/netbsd-arm64@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.0.tgz#935c6c74e20f7224918fbe2e6c6fe865b6c6ea5b"
- integrity sha512-RuG4PSMPFfrkH6UwCAqBzauBWTygTvb1nxWasEJooGSJ/NwRw7b2HOwyRTQIU97Hq37l3npXoZGYMy3b3xYvPw==
-
-"@esbuild/netbsd-x64@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.25.0.tgz#414677cef66d16c5a4d210751eb2881bb9c1b62b"
- integrity sha512-jl+qisSB5jk01N5f7sPCsBENCOlPiS/xptD5yxOx2oqQfyourJwIKLRA2yqWdifj3owQZCL2sn6o08dBzZGQzA==
-
-"@esbuild/openbsd-arm64@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.0.tgz#8fd55a4d08d25cdc572844f13c88d678c84d13f7"
- integrity sha512-21sUNbq2r84YE+SJDfaQRvdgznTD8Xc0oc3p3iW/a1EVWeNj/SdUCbm5U0itZPQYRuRTW20fPMWMpcrciH2EJw==
-
-"@esbuild/openbsd-x64@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.25.0.tgz#0c48ddb1494bbc2d6bcbaa1429a7f465fa1dedde"
- integrity sha512-2gwwriSMPcCFRlPlKx3zLQhfN/2WjJ2NSlg5TKLQOJdV0mSxIcYNTMhk3H3ulL/cak+Xj0lY1Ym9ysDV1igceg==
-
-"@esbuild/sunos-x64@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.25.0.tgz#86ff9075d77962b60dd26203d7352f92684c8c92"
- integrity sha512-bxI7ThgLzPrPz484/S9jLlvUAHYMzy6I0XiU1ZMeAEOBcS0VePBFxh1JjTQt3Xiat5b6Oh4x7UC7IwKQKIJRIg==
-
-"@esbuild/win32-arm64@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.25.0.tgz#849c62327c3229467f5b5cd681bf50588442e96c"
- integrity sha512-ZUAc2YK6JW89xTbXvftxdnYy3m4iHIkDtK3CLce8wg8M2L+YZhIvO1DKpxrd0Yr59AeNNkTiic9YLf6FTtXWMw==
-
-"@esbuild/win32-ia32@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.25.0.tgz#f62eb480cd7cca088cb65bb46a6db25b725dc079"
- integrity sha512-eSNxISBu8XweVEWG31/JzjkIGbGIJN/TrRoiSVZwZ6pkC6VX4Im/WV2cz559/TXLcYbcrDN8JtKgd9DJVIo8GA==
-
-"@esbuild/win32-x64@0.25.0":
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.25.0.tgz#c8e119a30a7c8d60b9d2e22d2073722dde3b710b"
- integrity sha512-ZENoHJBxA20C2zFzh6AI4fT6RraMzjYw4xKWemRTRmRVtN9c5DcH9r/f2ihEkMjOW5eGgrwCslG/+Y/3bL+DHQ==
-
-"@fastify/accept-negotiator@^2.0.0":
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/@fastify/accept-negotiator/-/accept-negotiator-2.0.1.tgz#77afd6254ba77f6c22c6f35c4fb0c1b6d005199b"
- integrity sha512-/c/TW2bO/v9JeEgoD/g1G5GxGeCF1Hafdf79WPmUlgYiBXummY0oX3VVq4yFkKKVBKDNlaDUYoab7g38RpPqCQ==
-
-"@fastify/ajv-compiler@^4.0.0":
- version "4.0.2"
- resolved "https://registry.yarnpkg.com/@fastify/ajv-compiler/-/ajv-compiler-4.0.2.tgz#da05938cf852901bfb953738764f553b5449b80b"
- integrity sha512-Rkiu/8wIjpsf46Rr+Fitd3HRP+VsxUFDDeag0hs9L0ksfnwx2g7SPQQTFL0E8Qv+rfXzQOxBJnjUB9ITUDjfWQ==
- dependencies:
- ajv "^8.12.0"
- ajv-formats "^3.0.1"
- fast-uri "^3.0.0"
-
-"@fastify/error@^4.0.0":
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/@fastify/error/-/error-4.0.0.tgz#7842d6161fbce78953638318be99033a0c2d5070"
- integrity sha512-OO/SA8As24JtT1usTUTKgGH7uLvhfwZPwlptRi2Dp5P4KKmJI3gvsZ8MIHnNwDs4sLf/aai5LzTyl66xr7qMxA==
-
-"@fastify/fast-json-stringify-compiler@^5.0.0":
- version "5.0.2"
- resolved "https://registry.yarnpkg.com/@fastify/fast-json-stringify-compiler/-/fast-json-stringify-compiler-5.0.2.tgz#aedd7729674531ef276a5b680bfaf9c711f3f85e"
- integrity sha512-YdR7gqlLg1xZAQa+SX4sMNzQHY5pC54fu9oC5aYSUqBhyn6fkLkrdtKlpVdCNPlwuUuXA1PjFTEmvMF6ZVXVGw==
- dependencies:
- fast-json-stringify "^6.0.0"
-
-"@fastify/forwarded@^3.0.0":
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/@fastify/forwarded/-/forwarded-3.0.0.tgz#0fc96cdbbb5a38ad453d2d5533a34f09b4949b37"
- integrity sha512-kJExsp4JCms7ipzg7SJ3y8DwmePaELHxKYtg+tZow+k0znUTf3cb+npgyqm8+ATZOdmfgfydIebPDWM172wfyA==
-
-"@fastify/leveldb@^6.0.0":
- version "6.0.2"
- resolved "https://registry.yarnpkg.com/@fastify/leveldb/-/leveldb-6.0.2.tgz#e9be44525bac0ea6e52c44c703ebfe5ff14cc050"
- integrity sha512-vFLkKMMEGDKP7X0F1Sg+hMy38NH1xM3nXqYgyka8YOoF2Ub2ZC9Ac0YiQBj1+bRO3C+wea4+0zPjizQ6ZRpvRQ==
- dependencies:
- encoding-down "^7.0.0"
- fastify-plugin "^5.0.0"
- leveldown "^6.0.0"
- levelup "^5.0.0"
-
-"@fastify/merge-json-schemas@^0.2.0":
- version "0.2.1"
- resolved "https://registry.yarnpkg.com/@fastify/merge-json-schemas/-/merge-json-schemas-0.2.1.tgz#3aa30d2f0c81a8ac5995b6d94ed4eaa2c3055824"
- integrity sha512-OA3KGBCy6KtIvLf8DINC5880o5iBlDX4SxzLQS8HorJAbqluzLRn80UXU0bxZn7UOFhFgpRJDasfwn9nG4FG4A==
- dependencies:
- dequal "^2.0.3"
-
-"@fastify/proxy-addr@^5.0.0":
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/@fastify/proxy-addr/-/proxy-addr-5.0.0.tgz#e9d1c7a49b8380d9f92a879fdc623ac47ee27de3"
- integrity sha512-37qVVA1qZ5sgH7KpHkkC4z9SK6StIsIcOmpjvMPXNb3vx2GQxhZocogVYbr2PbbeLCQxYIPDok307xEvRZOzGA==
- dependencies:
- "@fastify/forwarded" "^3.0.0"
- ipaddr.js "^2.1.0"
-
-"@fastify/send@^3.2.0":
- version "3.3.1"
- resolved "https://registry.yarnpkg.com/@fastify/send/-/send-3.3.1.tgz#cb5759480eb4110b44d9af613d61b3f8b2933d8b"
- integrity sha512-6pofeVwaHN+E/MAofCwDqkWUliE3i++jlD0VH/LOfU8TJlCkMUSgKvA9bawDdVXxjve7XrdYMyDmkiYaoGWEtA==
- dependencies:
- "@lukeed/ms" "^2.0.2"
- escape-html "~1.0.3"
- fast-decode-uri-component "^1.0.1"
- http-errors "^2.0.0"
- mime "^3"
-
-"@fastify/static@^8.0.0":
- version "8.1.1"
- resolved "https://registry.yarnpkg.com/@fastify/static/-/static-8.1.1.tgz#406bfab6b9c5d9ccb0f6b41e66963d6775c11ead"
- integrity sha512-TW9eyVHJLytZNpBlSIqd0bl1giJkEaRaPZG+5AT3L/OBKq9U8D7g/OYmc2NPQZnzPURGhMt3IAWuyVkvd2nOkQ==
- dependencies:
- "@fastify/accept-negotiator" "^2.0.0"
- "@fastify/send" "^3.2.0"
- content-disposition "^0.5.4"
- fastify-plugin "^5.0.0"
- fastq "^1.17.1"
- glob "^11.0.0"
-
-"@fastify/view@^10.0.0":
- version "10.0.2"
- resolved "https://registry.yarnpkg.com/@fastify/view/-/view-10.0.2.tgz#e661057ae927126d4582683732a13b615d64696a"
- integrity sha512-tGjXFyDUMj5a+E8BBrQ2wpsVnpOfMq3cqy4WD8pnjWPE/HGNItBASUPoPUcX/QjPhxfuZZTYv2XdCmKXdcMZPw==
- dependencies:
- fastify-plugin "^5.0.0"
- toad-cache "^3.7.0"
-
-"@isaacs/cliui@^8.0.2":
- version "8.0.2"
- resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550"
- integrity sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==
- dependencies:
- string-width "^5.1.2"
- string-width-cjs "npm:string-width@^4.2.0"
- strip-ansi "^7.0.1"
- strip-ansi-cjs "npm:strip-ansi@^6.0.1"
- wrap-ansi "^8.1.0"
- wrap-ansi-cjs "npm:wrap-ansi@^7.0.0"
-
-"@lukeed/ms@^2.0.2":
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/@lukeed/ms/-/ms-2.0.2.tgz#07f09e59a74c52f4d88c6db5c1054e819538e2a8"
- integrity sha512-9I2Zn6+NJLfaGoz9jN3lpwDgAYvfGeNYdbAIjJOqzs4Tpc+VU3Jqq4IofSUBKajiDS8k9fZIg18/z13mpk1bsA==
-
-"@prettier/plugin-pug@^3.0.0":
- version "3.2.1"
- resolved "https://registry.yarnpkg.com/@prettier/plugin-pug/-/plugin-pug-3.2.1.tgz#4609131c8c468a22883795fe2c11945812600ddd"
- integrity sha512-JvcW+44DtpnVsQFu++vBHl2fGVsuZC8iyxwutEUOt94thksdmXYQp1jFZWzaXckkwqLSgJHSyu19i1qvag5GJQ==
- dependencies:
- pug-lexer "^5.0.1"
-
-"@types/node@^22.13.5":
- version "22.13.5"
- resolved "https://registry.yarnpkg.com/@types/node/-/node-22.13.5.tgz#23add1d71acddab2c6a4d31db89c0f98d330b511"
- integrity sha512-+lTU0PxZXn0Dr1NBtC7Y8cR21AJr87dLLU953CWA6pMxxv/UDc7jYAY90upcrie1nRcD6XNG5HOYEDtgW5TxAg==
- dependencies:
- undici-types "~6.20.0"
-
-abstract-leveldown@^7.2.0:
- version "7.2.0"
- resolved "https://registry.yarnpkg.com/abstract-leveldown/-/abstract-leveldown-7.2.0.tgz#08d19d4e26fb5be426f7a57004851b39e1795a2e"
- integrity sha512-DnhQwcFEaYsvYDnACLZhMmCWd3rkOeEvglpa4q5i/5Jlm3UIsWaxVzuXvDLFCSCWRO3yy2/+V/G7FusFgejnfQ==
- dependencies:
- buffer "^6.0.3"
- catering "^2.0.0"
- is-buffer "^2.0.5"
- level-concat-iterator "^3.0.0"
- level-supports "^2.0.1"
- queue-microtask "^1.2.3"
-
-abstract-logging@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/abstract-logging/-/abstract-logging-2.0.1.tgz#6b0c371df212db7129b57d2e7fcf282b8bf1c839"
- integrity sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==
-
-acorn@^7.1.1:
- version "7.4.1"
- resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa"
- integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==
-
-ajv-formats@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/ajv-formats/-/ajv-formats-3.0.1.tgz#3d5dc762bca17679c3c2ea7e90ad6b7532309578"
- integrity sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==
- dependencies:
- ajv "^8.0.0"
-
-ajv@^8.0.0, ajv@^8.12.0:
- version "8.17.1"
- resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.17.1.tgz#37d9a5c776af6bc92d7f4f9510eba4c0a60d11a6"
- integrity sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==
- dependencies:
- fast-deep-equal "^3.1.3"
- fast-uri "^3.0.1"
- json-schema-traverse "^1.0.0"
- require-from-string "^2.0.2"
-
-ansi-regex@^5.0.1:
- version "5.0.1"
- resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304"
- integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==
-
-ansi-regex@^6.0.1:
- version "6.1.0"
- resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.1.0.tgz#95ec409c69619d6cb1b8b34f14b660ef28ebd654"
- integrity sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==
-
-ansi-styles@^4.0.0:
- version "4.3.0"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937"
- integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
- dependencies:
- color-convert "^2.0.1"
-
-ansi-styles@^6.1.0:
- version "6.2.1"
- resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.1.tgz#0e62320cf99c21afff3b3012192546aacbfb05c5"
- integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==
-
-anymatch@~3.1.2:
- version "3.1.3"
- resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e"
- integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==
- dependencies:
- normalize-path "^3.0.0"
- picomatch "^2.0.4"
-
-asap@~2.0.3:
- version "2.0.6"
- resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46"
- integrity sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==
-
-assert-never@^1.2.1:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/assert-never/-/assert-never-1.4.0.tgz#b0d4988628c87f35eb94716cc54422a63927e175"
- integrity sha512-5oJg84os6NMQNl27T9LnZkvvqzvAnHu03ShCnoj6bsJwS7L8AO4lf+C/XjK/nvzEqQB744moC6V128RucQd1jA==
-
-asynckit@^0.4.0:
- version "0.4.0"
- resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
- integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==
-
-atomic-sleep@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/atomic-sleep/-/atomic-sleep-1.0.0.tgz#eb85b77a601fc932cfe432c5acd364a9e2c9075b"
- integrity sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==
-
-avvio@^9.0.0:
- version "9.1.0"
- resolved "https://registry.yarnpkg.com/avvio/-/avvio-9.1.0.tgz#0ff80ed211682441d8aa39ff21a4b9d022109c44"
- integrity sha512-fYASnYi600CsH/j9EQov7lECAniYiBFiiAtBNuZYLA2leLe9qOvZzqYHFjtIj6gD2VMoMLP14834LFWvr4IfDw==
- dependencies:
- "@fastify/error" "^4.0.0"
- fastq "^1.17.1"
-
-axios@^1.7.9:
- version "1.8.1"
- resolved "https://registry.yarnpkg.com/axios/-/axios-1.8.1.tgz#7c118d2146e9ebac512b7d1128771cdd738d11e3"
- integrity sha512-NN+fvwH/kV01dYUQ3PTOZns4LWtWhOFCAhQ/pHb88WQ1hNe5V/dvFwc4VJcDL11LT9xSX0QtsR8sWUuyOuOq7g==
- dependencies:
- follow-redirects "^1.15.6"
- form-data "^4.0.0"
- proxy-from-env "^1.1.0"
-
-babel-walk@3.0.0-canary-5:
- version "3.0.0-canary-5"
- resolved "https://registry.yarnpkg.com/babel-walk/-/babel-walk-3.0.0-canary-5.tgz#f66ecd7298357aee44955f235a6ef54219104b11"
- integrity sha512-GAwkz0AihzY5bkwIY5QDR+LvsRQgB/B+1foMPvi0FZPMl5fjD7ICiznUiBdLYMH1QYe6vqu4gWYytZOccLouFw==
- dependencies:
- "@babel/types" "^7.9.6"
-
-balanced-match@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"
- integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==
-
-base64-js@^1.3.1:
- version "1.5.1"
- resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a"
- integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==
-
-binary-extensions@^2.0.0:
- version "2.3.0"
- resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.3.0.tgz#f6e14a97858d327252200242d4ccfe522c445522"
- integrity sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==
-
-brace-expansion@^1.1.7:
- version "1.1.11"
- resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
- integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==
- dependencies:
- balanced-match "^1.0.0"
- concat-map "0.0.1"
-
-brace-expansion@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae"
- integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==
- dependencies:
- balanced-match "^1.0.0"
-
-braces@~3.0.2:
- version "3.0.3"
- resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789"
- integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==
- dependencies:
- fill-range "^7.1.1"
-
-buffer@^6.0.3:
- version "6.0.3"
- resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6"
- integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==
- dependencies:
- base64-js "^1.3.1"
- ieee754 "^1.2.1"
-
-call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz#4b5428c222be985d79c3d82657479dbe0b59b2d6"
- integrity sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==
- dependencies:
- es-errors "^1.3.0"
- function-bind "^1.1.2"
-
-call-bound@^1.0.2:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/call-bound/-/call-bound-1.0.3.tgz#41cfd032b593e39176a71533ab4f384aa04fd681"
- integrity sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==
- dependencies:
- call-bind-apply-helpers "^1.0.1"
- get-intrinsic "^1.2.6"
-
-catering@^2.0.0, catering@^2.1.0:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/catering/-/catering-2.1.1.tgz#66acba06ed5ee28d5286133982a927de9a04b510"
- integrity sha512-K7Qy8O9p76sL3/3m7/zLKbRkyOlSZAgzEaLhyj2mXS8PsCud2Eo4hAb8aLtZqHh0QGqLcb9dlJSu6lHRVENm1w==
-
-character-parser@^2.2.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/character-parser/-/character-parser-2.2.0.tgz#c7ce28f36d4bcd9744e5ffc2c5fcde1c73261fc0"
- integrity sha512-+UqJQjFEFaTAs3bNsF2j2kEN1baG/zghZbdqoYEDxGZtJo9LBzl1A+m0D4n3qKx8N2FNv8/Xp6yV9mQmBuptaw==
- dependencies:
- is-regex "^1.0.3"
-
-chokidar@^3.5.2:
- version "3.6.0"
- resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b"
- integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==
- dependencies:
- anymatch "~3.1.2"
- braces "~3.0.2"
- glob-parent "~5.1.2"
- is-binary-path "~2.1.0"
- is-glob "~4.0.1"
- normalize-path "~3.0.0"
- readdirp "~3.6.0"
- optionalDependencies:
- fsevents "~2.3.2"
-
-color-convert@^2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3"
- integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==
- dependencies:
- color-name "~1.1.4"
-
-color-name@~1.1.4:
- version "1.1.4"
- resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2"
- integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
-
-combined-stream@^1.0.8:
- version "1.0.8"
- resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f"
- integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==
- dependencies:
- delayed-stream "~1.0.0"
-
-concat-map@0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
- integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==
-
-constantinople@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/constantinople/-/constantinople-4.0.1.tgz#0def113fa0e4dc8de83331a5cf79c8b325213151"
- integrity sha512-vCrqcSIq4//Gx74TXXCGnHpulY1dskqLTFGDmhrGxzeXL8lF8kvXv6mpNWlJj1uD4DW23D4ljAqbY4RRaaUZIw==
- dependencies:
- "@babel/parser" "^7.6.0"
- "@babel/types" "^7.6.1"
-
-content-disposition@^0.5.4:
- version "0.5.4"
- resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe"
- integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==
- dependencies:
- safe-buffer "5.2.1"
-
-cookie@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/cookie/-/cookie-1.0.2.tgz#27360701532116bd3f1f9416929d176afe1e4610"
- integrity sha512-9Kr/j4O16ISv8zBBhJoi4bXOYNTkFLOqSL3UDB0njXxCXNezjeyVrJyGOWtgfs/q2km1gwBcfH8q1yEGoMYunA==
-
-cross-spawn@^7.0.6:
- version "7.0.6"
- resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f"
- integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==
- dependencies:
- path-key "^3.1.0"
- shebang-command "^2.0.0"
- which "^2.0.1"
-
-debug@^4:
- version "4.4.0"
- resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.0.tgz#2b3f2aea2ffeb776477460267377dc8710faba8a"
- integrity sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==
- dependencies:
- ms "^2.1.3"
-
-deferred-leveldown@^7.0.0:
- version "7.0.0"
- resolved "https://registry.yarnpkg.com/deferred-leveldown/-/deferred-leveldown-7.0.0.tgz#39802715fda6ec06d0159a8b28bd1c7e2b1cf0bf"
- integrity sha512-QKN8NtuS3BC6m0B8vAnBls44tX1WXAFATUsJlruyAYbZpysWV3siH6o/i3g9DCHauzodksO60bdj5NazNbjCmg==
- dependencies:
- abstract-leveldown "^7.2.0"
- inherits "^2.0.3"
-
-delayed-stream@~1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
- integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==
-
-depd@2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df"
- integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==
-
-dequal@^2.0.3:
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be"
- integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==
-
-doctypes@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/doctypes/-/doctypes-1.1.0.tgz#ea80b106a87538774e8a3a4a5afe293de489e0a9"
- integrity sha512-LLBi6pEqS6Do3EKQ3J0NqHWV5hhb78Pi8vvESYwyOy2c31ZEZVdtitdzsQsKb7878PEERhzUk0ftqGhG6Mz+pQ==
-
-dunder-proto@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/dunder-proto/-/dunder-proto-1.0.1.tgz#d7ae667e1dc83482f8b70fd0f6eefc50da30f58a"
- integrity sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==
- dependencies:
- call-bind-apply-helpers "^1.0.1"
- es-errors "^1.3.0"
- gopd "^1.2.0"
-
-eastasianwidth@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb"
- integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==
-
-emoji-regex@^8.0.0:
- version "8.0.0"
- resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37"
- integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==
-
-emoji-regex@^9.2.2:
- version "9.2.2"
- resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72"
- integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==
-
-encoding-down@^7.0.0:
- version "7.1.0"
- resolved "https://registry.yarnpkg.com/encoding-down/-/encoding-down-7.1.0.tgz#8d55b5a20d50eb6f0edaf7233f6aee0ff562386a"
- integrity sha512-ky47X5jP84ryk5EQmvedQzELwVJPjCgXDQZGeb9F6r4PdChByCGHTBrVcF3h8ynKVJ1wVbkxTsDC8zBROPypgQ==
- dependencies:
- abstract-leveldown "^7.2.0"
- inherits "^2.0.3"
- level-codec "^10.0.0"
- level-errors "^3.0.0"
-
-es-define-property@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.1.tgz#983eb2f9a6724e9303f61addf011c72e09e0b0fa"
- integrity sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==
-
-es-errors@^1.3.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f"
- integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==
-
-es-object-atoms@^1.0.0, es-object-atoms@^1.1.1:
- version "1.1.1"
- resolved "https://registry.yarnpkg.com/es-object-atoms/-/es-object-atoms-1.1.1.tgz#1c4f2c4837327597ce69d2ca190a7fdd172338c1"
- integrity sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==
- dependencies:
- es-errors "^1.3.0"
-
-es-set-tostringtag@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz#f31dbbe0c183b00a6d26eb6325c810c0fd18bd4d"
- integrity sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==
- dependencies:
- es-errors "^1.3.0"
- get-intrinsic "^1.2.6"
- has-tostringtag "^1.0.2"
- hasown "^2.0.2"
-
-esbuild@^0.25.0:
- version "0.25.0"
- resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.25.0.tgz#0de1787a77206c5a79eeb634a623d39b5006ce92"
- integrity sha512-BXq5mqc8ltbaN34cDqWuYKyNhX8D/Z0J1xdtdQ8UcIIIyJyz+ZMKUt58tF3SrZ85jcfN/PZYhjR5uDQAYNVbuw==
- optionalDependencies:
- "@esbuild/aix-ppc64" "0.25.0"
- "@esbuild/android-arm" "0.25.0"
- "@esbuild/android-arm64" "0.25.0"
- "@esbuild/android-x64" "0.25.0"
- "@esbuild/darwin-arm64" "0.25.0"
- "@esbuild/darwin-x64" "0.25.0"
- "@esbuild/freebsd-arm64" "0.25.0"
- "@esbuild/freebsd-x64" "0.25.0"
- "@esbuild/linux-arm" "0.25.0"
- "@esbuild/linux-arm64" "0.25.0"
- "@esbuild/linux-ia32" "0.25.0"
- "@esbuild/linux-loong64" "0.25.0"
- "@esbuild/linux-mips64el" "0.25.0"
- "@esbuild/linux-ppc64" "0.25.0"
- "@esbuild/linux-riscv64" "0.25.0"
- "@esbuild/linux-s390x" "0.25.0"
- "@esbuild/linux-x64" "0.25.0"
- "@esbuild/netbsd-arm64" "0.25.0"
- "@esbuild/netbsd-x64" "0.25.0"
- "@esbuild/openbsd-arm64" "0.25.0"
- "@esbuild/openbsd-x64" "0.25.0"
- "@esbuild/sunos-x64" "0.25.0"
- "@esbuild/win32-arm64" "0.25.0"
- "@esbuild/win32-ia32" "0.25.0"
- "@esbuild/win32-x64" "0.25.0"
-
-escape-html@~1.0.3:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988"
- integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==
-
-fast-decode-uri-component@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/fast-decode-uri-component/-/fast-decode-uri-component-1.0.1.tgz#46f8b6c22b30ff7a81357d4f59abfae938202543"
- integrity sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg==
-
-fast-deep-equal@^3.1.3:
- version "3.1.3"
- resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
- integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
-
-fast-json-stringify@^6.0.0:
- version "6.0.1"
- resolved "https://registry.yarnpkg.com/fast-json-stringify/-/fast-json-stringify-6.0.1.tgz#82f1cb45fa96d0ca24b601f1738066976d6e2430"
- integrity sha512-s7SJE83QKBZwg54dIbD5rCtzOBVD43V1ReWXXYqBgwCwHLYAAT0RQc/FmrQglXqWPpz6omtryJQOau5jI4Nrvg==
- dependencies:
- "@fastify/merge-json-schemas" "^0.2.0"
- ajv "^8.12.0"
- ajv-formats "^3.0.1"
- fast-uri "^3.0.0"
- json-schema-ref-resolver "^2.0.0"
- rfdc "^1.2.0"
-
-fast-querystring@^1.0.0:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/fast-querystring/-/fast-querystring-1.1.2.tgz#a6d24937b4fc6f791b4ee31dcb6f53aeafb89f53"
- integrity sha512-g6KuKWmFXc0fID8WWH0jit4g0AGBoJhCkJMb1RmbsSEUNvQ+ZC8D6CUZ+GtF8nMzSPXnhiePyyqqipzNNEnHjg==
- dependencies:
- fast-decode-uri-component "^1.0.1"
-
-fast-redact@^3.1.1:
- version "3.5.0"
- resolved "https://registry.yarnpkg.com/fast-redact/-/fast-redact-3.5.0.tgz#e9ea02f7e57d0cd8438180083e93077e496285e4"
- integrity sha512-dwsoQlS7h9hMeYUq1W++23NDcBLV4KqONnITDV9DjfS3q1SgDGVrBdvvTLUotWtPSD7asWDV9/CmsZPy8Hf70A==
-
-fast-uri@^3.0.0, fast-uri@^3.0.1:
- version "3.0.6"
- resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.0.6.tgz#88f130b77cfaea2378d56bf970dea21257a68748"
- integrity sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==
-
-fastify-plugin@^5.0.0:
- version "5.0.1"
- resolved "https://registry.yarnpkg.com/fastify-plugin/-/fastify-plugin-5.0.1.tgz#82d44e6fe34d1420bb5a4f7bee434d501e41939f"
- integrity sha512-HCxs+YnRaWzCl+cWRYFnHmeRFyR5GVnJTAaCJQiYzQSDwK9MgJdyAsuL3nh0EWRCYMgQ5MeziymvmAhUHYHDUQ==
-
-fastify@^5.0.0:
- version "5.2.1"
- resolved "https://registry.yarnpkg.com/fastify/-/fastify-5.2.1.tgz#38381800eb26b7e27da72d9ee51c544f0c52ff39"
- integrity sha512-rslrNBF67eg8/Gyn7P2URV8/6pz8kSAscFL4EThZJ8JBMaXacVdVE4hmUcnPNKERl5o/xTiBSLfdowBRhVF1WA==
- dependencies:
- "@fastify/ajv-compiler" "^4.0.0"
- "@fastify/error" "^4.0.0"
- "@fastify/fast-json-stringify-compiler" "^5.0.0"
- "@fastify/proxy-addr" "^5.0.0"
- abstract-logging "^2.0.1"
- avvio "^9.0.0"
- fast-json-stringify "^6.0.0"
- find-my-way "^9.0.0"
- light-my-request "^6.0.0"
- pino "^9.0.0"
- process-warning "^4.0.0"
- rfdc "^1.3.1"
- secure-json-parse "^3.0.1"
- semver "^7.6.0"
- toad-cache "^3.7.0"
-
-fastq@^1.17.1:
- version "1.19.0"
- resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.19.0.tgz#a82c6b7c2bb4e44766d865f07997785fecfdcb89"
- integrity sha512-7SFSRCNjBQIZH/xZR3iy5iQYR8aGBE0h3VG6/cwlbrpdciNYBMotQav8c1XI3HjHH+NikUpP53nPdlZSdWmFzA==
- dependencies:
- reusify "^1.0.4"
-
-fill-range@^7.1.1:
- version "7.1.1"
- resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292"
- integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==
- dependencies:
- to-regex-range "^5.0.1"
-
-find-my-way@^9.0.0:
- version "9.2.0"
- resolved "https://registry.yarnpkg.com/find-my-way/-/find-my-way-9.2.0.tgz#6f845aac6227adcb683134f60bd9e8c144af21da"
- integrity sha512-d3uCir8Hmg7W1Ywp8nKf2lJJYU9Nwinvo+1D39Dn09nz65UKXIxUh7j7K8zeWhxqe1WrkS7FJyON/Q/3lPoc6w==
- dependencies:
- fast-deep-equal "^3.1.3"
- fast-querystring "^1.0.0"
- safe-regex2 "^4.0.0"
-
-follow-redirects@^1.15.6:
- version "1.15.9"
- resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.9.tgz#a604fa10e443bf98ca94228d9eebcc2e8a2c8ee1"
- integrity sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==
-
-foreground-child@^3.1.0:
- version "3.3.1"
- resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.3.1.tgz#32e8e9ed1b68a3497befb9ac2b6adf92a638576f"
- integrity sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==
- dependencies:
- cross-spawn "^7.0.6"
- signal-exit "^4.0.1"
-
-form-data@^4.0.0:
- version "4.0.2"
- resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.2.tgz#35cabbdd30c3ce73deb2c42d3c8d3ed9ca51794c"
- integrity sha512-hGfm/slu0ZabnNt4oaRZ6uREyfCj6P4fT/n6A1rGV+Z0VdGXjfOhVUpkn6qVQONHGIFwmveGXyDs75+nr6FM8w==
- dependencies:
- asynckit "^0.4.0"
- combined-stream "^1.0.8"
- es-set-tostringtag "^2.1.0"
- mime-types "^2.1.12"
-
-fsevents@~2.3.2:
- version "2.3.3"
- resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6"
- integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==
-
-function-bind@^1.1.2:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c"
- integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==
-
-get-intrinsic@^1.2.6:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz#743f0e3b6964a93a5491ed1bffaae054d7f98d01"
- integrity sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==
- dependencies:
- call-bind-apply-helpers "^1.0.2"
- es-define-property "^1.0.1"
- es-errors "^1.3.0"
- es-object-atoms "^1.1.1"
- function-bind "^1.1.2"
- get-proto "^1.0.1"
- gopd "^1.2.0"
- has-symbols "^1.1.0"
- hasown "^2.0.2"
- math-intrinsics "^1.1.0"
-
-get-proto@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/get-proto/-/get-proto-1.0.1.tgz#150b3f2743869ef3e851ec0c49d15b1d14d00ee1"
- integrity sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==
- dependencies:
- dunder-proto "^1.0.1"
- es-object-atoms "^1.0.0"
-
-glob-parent@~5.1.2:
- version "5.1.2"
- resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
- integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==
- dependencies:
- is-glob "^4.0.1"
-
-glob@^11.0.0:
- version "11.0.1"
- resolved "https://registry.yarnpkg.com/glob/-/glob-11.0.1.tgz#1c3aef9a59d680e611b53dcd24bb8639cef064d9"
- integrity sha512-zrQDm8XPnYEKawJScsnM0QzobJxlT/kHOOlRTio8IH/GrmxRE5fjllkzdaHclIuNjUQTJYH2xHNIGfdpJkDJUw==
- dependencies:
- foreground-child "^3.1.0"
- jackspeak "^4.0.1"
- minimatch "^10.0.0"
- minipass "^7.1.2"
- package-json-from-dist "^1.0.0"
- path-scurry "^2.0.0"
-
-gopd@^1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1"
- integrity sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==
-
-has-flag@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
- integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==
-
-has-symbols@^1.0.3, has-symbols@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.1.0.tgz#fc9c6a783a084951d0b971fe1018de813707a338"
- integrity sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==
-
-has-tostringtag@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc"
- integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==
- dependencies:
- has-symbols "^1.0.3"
-
-hasown@^2.0.2:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003"
- integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==
- dependencies:
- function-bind "^1.1.2"
-
-http-errors@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3"
- integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==
- dependencies:
- depd "2.0.0"
- inherits "2.0.4"
- setprototypeof "1.2.0"
- statuses "2.0.1"
- toidentifier "1.0.1"
-
-ieee754@^1.2.1:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352"
- integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==
-
-ignore-by-default@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/ignore-by-default/-/ignore-by-default-1.0.1.tgz#48ca6d72f6c6a3af00a9ad4ae6876be3889e2b09"
- integrity sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==
-
-inherits@2.0.4, inherits@^2.0.3, inherits@^2.0.4:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
- integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
-
-ipaddr.js@^2.1.0:
- version "2.2.0"
- resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-2.2.0.tgz#d33fa7bac284f4de7af949638c9d68157c6b92e8"
- integrity sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==
-
-is-binary-path@~2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09"
- integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==
- dependencies:
- binary-extensions "^2.0.0"
-
-is-buffer@^2.0.5:
- version "2.0.5"
- resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191"
- integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==
-
-is-core-module@^2.16.0:
- version "2.16.1"
- resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.16.1.tgz#2a98801a849f43e2add644fbb6bc6229b19a4ef4"
- integrity sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==
- dependencies:
- hasown "^2.0.2"
-
-is-expression@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/is-expression/-/is-expression-4.0.0.tgz#c33155962abf21d0afd2552514d67d2ec16fd2ab"
- integrity sha512-zMIXX63sxzG3XrkHkrAPvm/OVZVSCPNkwMHU8oTX7/U3AL78I0QXCEICXUM13BIa8TYGZ68PiTKfQz3yaTNr4A==
- dependencies:
- acorn "^7.1.1"
- object-assign "^4.1.1"
-
-is-extglob@^2.1.1:
- version "2.1.1"
- resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
- integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==
-
-is-fullwidth-code-point@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d"
- integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==
-
-is-glob@^4.0.1, is-glob@~4.0.1:
- version "4.0.3"
- resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084"
- integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==
- dependencies:
- is-extglob "^2.1.1"
-
-is-number@^7.0.0:
- version "7.0.0"
- resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"
- integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==
-
-is-promise@^2.0.0:
- version "2.2.2"
- resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1"
- integrity sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==
-
-is-regex@^1.0.3:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.2.1.tgz#76d70a3ed10ef9be48eb577887d74205bf0cad22"
- integrity sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==
- dependencies:
- call-bound "^1.0.2"
- gopd "^1.2.0"
- has-tostringtag "^1.0.2"
- hasown "^2.0.2"
-
-isexe@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
- integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==
-
-jackspeak@^4.0.1:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-4.1.0.tgz#c489c079f2b636dc4cbe9b0312a13ff1282e561b"
- integrity sha512-9DDdhb5j6cpeitCbvLO7n7J4IxnbM6hoF6O1g4HQ5TfhvvKN8ywDM7668ZhMHRqVmxqhps/F6syWK2KcPxYlkw==
- dependencies:
- "@isaacs/cliui" "^8.0.2"
-
-js-stringify@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/js-stringify/-/js-stringify-1.0.2.tgz#1736fddfd9724f28a3682adc6230ae7e4e9679db"
- integrity sha512-rtS5ATOo2Q5k1G+DADISilDA6lv79zIiwFd6CcjuIxGKLFm5C+RLImRscVap9k55i+MOZwgliw+NejvkLuGD5g==
-
-json-schema-ref-resolver@^2.0.0:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/json-schema-ref-resolver/-/json-schema-ref-resolver-2.0.1.tgz#c92f16b452df069daac53e1984159e0f9af0598d"
- integrity sha512-HG0SIB9X4J8bwbxCbnd5FfPEbcXAJYTi1pBJeP/QPON+w8ovSME8iRG+ElHNxZNX2Qh6eYn1GdzJFS4cDFfx0Q==
- dependencies:
- dequal "^2.0.3"
-
-json-schema-traverse@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2"
- integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==
-
-jstransformer@1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/jstransformer/-/jstransformer-1.0.0.tgz#ed8bf0921e2f3f1ed4d5c1a44f68709ed24722c3"
- integrity sha512-C9YK3Rf8q6VAPDCCU9fnqo3mAfOH6vUGnMcP4AQAYIEpWtfGLpwOTmZ+igtdK5y+VvI2n3CyYSzy4Qh34eq24A==
- dependencies:
- is-promise "^2.0.0"
- promise "^7.0.1"
-
-level-codec@^10.0.0:
- version "10.0.0"
- resolved "https://registry.yarnpkg.com/level-codec/-/level-codec-10.0.0.tgz#f9e892770532c6cdcc83529546730791b0c62c12"
- integrity sha512-QW3VteVNAp6c/LuV6nDjg7XDXx9XHK4abmQarxZmlRSDyXYk20UdaJTSX6yzVvQ4i0JyWSB7jert0DsyD/kk6g==
- dependencies:
- buffer "^6.0.3"
-
-level-concat-iterator@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/level-concat-iterator/-/level-concat-iterator-3.1.0.tgz#5235b1f744bc34847ed65a50548aa88d22e881cf"
- integrity sha512-BWRCMHBxbIqPxJ8vHOvKUsaO0v1sLYZtjN3K2iZJsRBYtp+ONsY6Jfi6hy9K3+zolgQRryhIn2NRZjZnWJ9NmQ==
- dependencies:
- catering "^2.1.0"
-
-level-errors@^3.0.0, level-errors@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/level-errors/-/level-errors-3.0.1.tgz#4bed48a33108cd83b0e39fdf9bbd84e96fbbef9f"
- integrity sha512-tqTL2DxzPDzpwl0iV5+rBCv65HWbHp6eutluHNcVIftKZlQN//b6GEnZDM2CvGZvzGYMwyPtYppYnydBQd2SMQ==
-
-level-iterator-stream@^5.0.0:
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/level-iterator-stream/-/level-iterator-stream-5.0.0.tgz#85b3438e1b4c54ce5aa8c0eb973cfb628117df9e"
- integrity sha512-wnb1+o+CVFUDdiSMR/ZymE2prPs3cjVLlXuDeSq9Zb8o032XrabGEXcTCsBxprAtseO3qvFeGzh6406z9sOTRA==
- dependencies:
- inherits "^2.0.4"
- readable-stream "^3.4.0"
-
-level-supports@^2.0.1:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/level-supports/-/level-supports-2.1.0.tgz#9af908d853597ecd592293b2fad124375be79c5f"
- integrity sha512-E486g1NCjW5cF78KGPrMDRBYzPuueMZ6VBXHT6gC7A8UYWGiM14fGgp+s/L1oFfDWSPV/+SFkYCmZ0SiESkRKA==
-
-leveldown@^6.0.0:
- version "6.1.1"
- resolved "https://registry.yarnpkg.com/leveldown/-/leveldown-6.1.1.tgz#0f0e480fa88fd807abf94c33cb7e40966ea4b5ce"
- integrity sha512-88c+E+Eizn4CkQOBHwqlCJaTNEjGpaEIikn1S+cINc5E9HEvJ77bqY4JY/HxT5u0caWqsc3P3DcFIKBI1vHt+A==
- dependencies:
- abstract-leveldown "^7.2.0"
- napi-macros "~2.0.0"
- node-gyp-build "^4.3.0"
-
-levelup@^5.0.0:
- version "5.1.1"
- resolved "https://registry.yarnpkg.com/levelup/-/levelup-5.1.1.tgz#9f99699f414ac084a3f8a28fc262a1f49cd7a52c"
- integrity sha512-0mFCcHcEebOwsQuk00WJwjLI6oCjbBuEYdh/RaRqhjnyVlzqf41T1NnDtCedumZ56qyIh8euLFDqV1KfzTAVhg==
- dependencies:
- catering "^2.0.0"
- deferred-leveldown "^7.0.0"
- level-errors "^3.0.1"
- level-iterator-stream "^5.0.0"
- level-supports "^2.0.1"
- queue-microtask "^1.2.3"
-
-light-my-request@^6.0.0:
- version "6.6.0"
- resolved "https://registry.yarnpkg.com/light-my-request/-/light-my-request-6.6.0.tgz#c9448772323f65f33720fb5979c7841f14060add"
- integrity sha512-CHYbu8RtboSIoVsHZ6Ye4cj4Aw/yg2oAFimlF7mNvfDV192LR7nDiKtSIfCuLT7KokPSTn/9kfVLm5OGN0A28A==
- dependencies:
- cookie "^1.0.1"
- process-warning "^4.0.0"
- set-cookie-parser "^2.6.0"
-
-lru-cache@^11.0.0:
- version "11.0.2"
- resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-11.0.2.tgz#fbd8e7cf8211f5e7e5d91905c415a3f55755ca39"
- integrity sha512-123qHRfJBmo2jXDbo/a5YOQrJoHF/GNQTLzQ5+IdK5pWpceK17yRc6ozlWd25FxvGKQbIUs91fDFkXmDHTKcyA==
-
-math-intrinsics@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz#a0dd74be81e2aa5c2f27e65ce283605ee4e2b7f9"
- integrity sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==
-
-mime-db@1.52.0:
- version "1.52.0"
- resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70"
- integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==
-
-mime-types@^2.1.12:
- version "2.1.35"
- resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a"
- integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==
- dependencies:
- mime-db "1.52.0"
-
-mime@^3:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/mime/-/mime-3.0.0.tgz#b374550dca3a0c18443b0c950a6a58f1931cf7a7"
- integrity sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==
-
-minimatch@^10.0.0:
- version "10.0.1"
- resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-10.0.1.tgz#ce0521856b453c86e25f2c4c0d03e6ff7ddc440b"
- integrity sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==
- dependencies:
- brace-expansion "^2.0.1"
-
-minimatch@^3.1.2:
- version "3.1.2"
- resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b"
- integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==
- dependencies:
- brace-expansion "^1.1.7"
-
-minipass@^7.1.2:
- version "7.1.2"
- resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707"
- integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==
-
-ms@^2.1.3:
- version "2.1.3"
- resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2"
- integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==
-
-napi-macros@~2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/napi-macros/-/napi-macros-2.0.0.tgz#2b6bae421e7b96eb687aa6c77a7858640670001b"
- integrity sha512-A0xLykHtARfueITVDernsAWdtIMbOJgKgcluwENp3AlsKN/PloyO10HtmoqnFAQAcxPkgZN7wdfPfEd0zNGxbg==
-
-node-gyp-build@^4.3.0:
- version "4.8.4"
- resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.8.4.tgz#8a70ee85464ae52327772a90d66c6077a900cfc8"
- integrity sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==
-
-nodemon@^3.0.1:
- version "3.1.9"
- resolved "https://registry.yarnpkg.com/nodemon/-/nodemon-3.1.9.tgz#df502cdc3b120e1c3c0c6e4152349019efa7387b"
- integrity sha512-hdr1oIb2p6ZSxu3PB2JWWYS7ZQ0qvaZsc3hK8DR8f02kRzc8rjYmxAIvdz+aYC+8F2IjNaB7HMcSDg8nQpJxyg==
- dependencies:
- chokidar "^3.5.2"
- debug "^4"
- ignore-by-default "^1.0.1"
- minimatch "^3.1.2"
- pstree.remy "^1.1.8"
- semver "^7.5.3"
- simple-update-notifier "^2.0.0"
- supports-color "^5.5.0"
- touch "^3.1.0"
- undefsafe "^2.0.5"
-
-normalize-path@^3.0.0, normalize-path@~3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
- integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
-
-object-assign@^4.1.1:
- version "4.1.1"
- resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
- integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==
-
-on-exit-leak-free@^2.1.0:
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/on-exit-leak-free/-/on-exit-leak-free-2.1.2.tgz#fed195c9ebddb7d9e4c3842f93f281ac8dadd3b8"
- integrity sha512-0eJJY6hXLGf1udHwfNftBqH+g73EU4B504nZeKpz1sYRKafAghwxEJunB2O7rDZkL4PGfsMVnTXZ2EjibbqcsA==
-
-package-json-from-dist@^1.0.0:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz#4f1471a010827a86f94cfd9b0727e36d267de505"
- integrity sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==
-
-path-key@^3.1.0:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375"
- integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==
-
-path-parse@^1.0.7:
- version "1.0.7"
- resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
- integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
-
-path-scurry@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-2.0.0.tgz#9f052289f23ad8bf9397a2a0425e7b8615c58580"
- integrity sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==
- dependencies:
- lru-cache "^11.0.0"
- minipass "^7.1.2"
-
-picomatch@^2.0.4, picomatch@^2.2.1:
- version "2.3.1"
- resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42"
- integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==
-
-pino-abstract-transport@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/pino-abstract-transport/-/pino-abstract-transport-2.0.0.tgz#de241578406ac7b8a33ce0d77ae6e8a0b3b68a60"
- integrity sha512-F63x5tizV6WCh4R6RHyi2Ml+M70DNRXt/+HANowMflpgGFMAym/VKm6G7ZOQRjqN7XbGxK1Lg9t6ZrtzOaivMw==
- dependencies:
- split2 "^4.0.0"
-
-pino-std-serializers@^7.0.0:
- version "7.0.0"
- resolved "https://registry.yarnpkg.com/pino-std-serializers/-/pino-std-serializers-7.0.0.tgz#7c625038b13718dbbd84ab446bd673dc52259e3b"
- integrity sha512-e906FRY0+tV27iq4juKzSYPbUj2do2X2JX4EzSca1631EB2QJQUqGbDuERal7LCtOpxl6x3+nvo9NPZcmjkiFA==
-
-pino@^9.0.0:
- version "9.6.0"
- resolved "https://registry.yarnpkg.com/pino/-/pino-9.6.0.tgz#6bc628159ba0cc81806d286718903b7fc6b13169"
- integrity sha512-i85pKRCt4qMjZ1+L7sy2Ag4t1atFcdbEt76+7iRJn1g2BvsnRMGu9p8pivl9fs63M2kF/A0OacFZhTub+m/qMg==
- dependencies:
- atomic-sleep "^1.0.0"
- fast-redact "^3.1.1"
- on-exit-leak-free "^2.1.0"
- pino-abstract-transport "^2.0.0"
- pino-std-serializers "^7.0.0"
- process-warning "^4.0.0"
- quick-format-unescaped "^4.0.3"
- real-require "^0.2.0"
- safe-stable-stringify "^2.3.1"
- sonic-boom "^4.0.1"
- thread-stream "^3.0.0"
-
-pretier@^0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/pretier/-/pretier-0.0.1.tgz#7bfbb70fd340de3f7ad2dfdf84269922d24f3d5c"
- integrity sha512-sx6A34i/SbtIbiNrwwPJ9gpGKXfezVFFsv5/7v+qwu5vcwp6RJftQ60LvRbV4LQngUnJVRyU23AsUG3t+zNHEA==
-
-prettier@^3.5.2:
- version "3.5.2"
- resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.5.2.tgz#d066c6053200da0234bf8fa1ef45168abed8b914"
- integrity sha512-lc6npv5PH7hVqozBR7lkBNOGXV9vMwROAPlumdBkX0wTbbzPu/U1hk5yL8p2pt4Xoc+2mkT8t/sow2YrV/M5qg==
-
-process-warning@^4.0.0:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/process-warning/-/process-warning-4.0.1.tgz#5c1db66007c67c756e4e09eb170cdece15da32fb"
- integrity sha512-3c2LzQ3rY9d0hc1emcsHhfT9Jwz0cChib/QN89oME2R451w5fy3f0afAhERFZAwrbDU43wk12d0ORBpDVME50Q==
-
-promise@^7.0.1:
- version "7.3.1"
- resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf"
- integrity sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==
- dependencies:
- asap "~2.0.3"
-
-proxy-from-env@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2"
- integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==
-
-pstree.remy@^1.1.8:
- version "1.1.8"
- resolved "https://registry.yarnpkg.com/pstree.remy/-/pstree.remy-1.1.8.tgz#c242224f4a67c21f686839bbdb4ac282b8373d3a"
- integrity sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==
-
-pug-attrs@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/pug-attrs/-/pug-attrs-3.0.0.tgz#b10451e0348165e31fad1cc23ebddd9dc7347c41"
- integrity sha512-azINV9dUtzPMFQktvTXciNAfAuVh/L/JCl0vtPCwvOA21uZrC08K/UnmrL+SXGEVc1FwzjW62+xw5S/uaLj6cA==
- dependencies:
- constantinople "^4.0.1"
- js-stringify "^1.0.2"
- pug-runtime "^3.0.0"
-
-pug-code-gen@^3.0.3:
- version "3.0.3"
- resolved "https://registry.yarnpkg.com/pug-code-gen/-/pug-code-gen-3.0.3.tgz#58133178cb423fe1716aece1c1da392a75251520"
- integrity sha512-cYQg0JW0w32Ux+XTeZnBEeuWrAY7/HNE6TWnhiHGnnRYlCgyAUPoyh9KzCMa9WhcJlJ1AtQqpEYHc+vbCzA+Aw==
- dependencies:
- constantinople "^4.0.1"
- doctypes "^1.1.0"
- js-stringify "^1.0.2"
- pug-attrs "^3.0.0"
- pug-error "^2.1.0"
- pug-runtime "^3.0.1"
- void-elements "^3.1.0"
- with "^7.0.0"
-
-pug-error@^2.0.0, pug-error@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/pug-error/-/pug-error-2.1.0.tgz#17ea37b587b6443d4b8f148374ec27b54b406e55"
- integrity sha512-lv7sU9e5Jk8IeUheHata6/UThZ7RK2jnaaNztxfPYUY+VxZyk/ePVaNZ/vwmH8WqGvDz3LrNYt/+gA55NDg6Pg==
-
-pug-filters@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/pug-filters/-/pug-filters-4.0.0.tgz#d3e49af5ba8472e9b7a66d980e707ce9d2cc9b5e"
- integrity sha512-yeNFtq5Yxmfz0f9z2rMXGw/8/4i1cCFecw/Q7+D0V2DdtII5UvqE12VaZ2AY7ri6o5RNXiweGH79OCq+2RQU4A==
- dependencies:
- constantinople "^4.0.1"
- jstransformer "1.0.0"
- pug-error "^2.0.0"
- pug-walk "^2.0.0"
- resolve "^1.15.1"
-
-pug-lexer@^5.0.1:
- version "5.0.1"
- resolved "https://registry.yarnpkg.com/pug-lexer/-/pug-lexer-5.0.1.tgz#ae44628c5bef9b190b665683b288ca9024b8b0d5"
- integrity sha512-0I6C62+keXlZPZkOJeVam9aBLVP2EnbeDw3An+k0/QlqdwH6rv8284nko14Na7c0TtqtogfWXcRoFE4O4Ff20w==
- dependencies:
- character-parser "^2.2.0"
- is-expression "^4.0.0"
- pug-error "^2.0.0"
-
-pug-linker@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/pug-linker/-/pug-linker-4.0.0.tgz#12cbc0594fc5a3e06b9fc59e6f93c146962a7708"
- integrity sha512-gjD1yzp0yxbQqnzBAdlhbgoJL5qIFJw78juN1NpTLt/mfPJ5VgC4BvkoD3G23qKzJtIIXBbcCt6FioLSFLOHdw==
- dependencies:
- pug-error "^2.0.0"
- pug-walk "^2.0.0"
-
-pug-load@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/pug-load/-/pug-load-3.0.0.tgz#9fd9cda52202b08adb11d25681fb9f34bd41b662"
- integrity sha512-OCjTEnhLWZBvS4zni/WUMjH2YSUosnsmjGBB1An7CsKQarYSWQ0GCVyd4eQPMFJqZ8w9xgs01QdiZXKVjk92EQ==
- dependencies:
- object-assign "^4.1.1"
- pug-walk "^2.0.0"
-
-pug-parser@^6.0.0:
- version "6.0.0"
- resolved "https://registry.yarnpkg.com/pug-parser/-/pug-parser-6.0.0.tgz#a8fdc035863a95b2c1dc5ebf4ecf80b4e76a1260"
- integrity sha512-ukiYM/9cH6Cml+AOl5kETtM9NR3WulyVP2y4HOU45DyMim1IeP/OOiyEWRr6qk5I5klpsBnbuHpwKmTx6WURnw==
- dependencies:
- pug-error "^2.0.0"
- token-stream "1.0.0"
-
-pug-runtime@^3.0.0, pug-runtime@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/pug-runtime/-/pug-runtime-3.0.1.tgz#f636976204723f35a8c5f6fad6acda2a191b83d7"
- integrity sha512-L50zbvrQ35TkpHwv0G6aLSuueDRwc/97XdY8kL3tOT0FmhgG7UypU3VztfV/LATAvmUfYi4wNxSajhSAeNN+Kg==
-
-pug-strip-comments@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/pug-strip-comments/-/pug-strip-comments-2.0.0.tgz#f94b07fd6b495523330f490a7f554b4ff876303e"
- integrity sha512-zo8DsDpH7eTkPHCXFeAk1xZXJbyoTfdPlNR0bK7rpOMuhBYb0f5qUVCO1xlsitYd3w5FQTK7zpNVKb3rZoUrrQ==
- dependencies:
- pug-error "^2.0.0"
-
-pug-walk@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/pug-walk/-/pug-walk-2.0.0.tgz#417aabc29232bb4499b5b5069a2b2d2a24d5f5fe"
- integrity sha512-yYELe9Q5q9IQhuvqsZNwA5hfPkMJ8u92bQLIMcsMxf/VADjNtEYptU+inlufAFYcWdHlwNfZOEnOOQrZrcyJCQ==
-
-pug@^3.0.2:
- version "3.0.3"
- resolved "https://registry.yarnpkg.com/pug/-/pug-3.0.3.tgz#e18324a314cd022883b1e0372b8af3a1a99f7597"
- integrity sha512-uBi6kmc9f3SZ3PXxqcHiUZLmIXgfgWooKWXcwSGwQd2Zi5Rb0bT14+8CJjJgI8AB+nndLaNgHGrcc6bPIB665g==
- dependencies:
- pug-code-gen "^3.0.3"
- pug-filters "^4.0.0"
- pug-lexer "^5.0.1"
- pug-linker "^4.0.0"
- pug-load "^3.0.0"
- pug-parser "^6.0.0"
- pug-runtime "^3.0.1"
- pug-strip-comments "^2.0.0"
-
-queue-microtask@^1.2.3:
- version "1.2.3"
- resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243"
- integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==
-
-quick-format-unescaped@^4.0.3:
- version "4.0.4"
- resolved "https://registry.yarnpkg.com/quick-format-unescaped/-/quick-format-unescaped-4.0.4.tgz#93ef6dd8d3453cbc7970dd614fad4c5954d6b5a7"
- integrity sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg==
-
-readable-stream@^3.4.0:
- version "3.6.2"
- resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967"
- integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==
- dependencies:
- inherits "^2.0.3"
- string_decoder "^1.1.1"
- util-deprecate "^1.0.1"
-
-readdirp@~3.6.0:
- version "3.6.0"
- resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7"
- integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==
- dependencies:
- picomatch "^2.2.1"
-
-real-require@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/real-require/-/real-require-0.2.0.tgz#209632dea1810be2ae063a6ac084fee7e33fba78"
- integrity sha512-57frrGM/OCTLqLOAh0mhVA9VBMHd+9U7Zb2THMGdBUoZVOtGbJzjxsYGDJ3A9AYYCP4hn6y1TVbaOfzWtm5GFg==
-
-require-from-string@^2.0.2:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909"
- integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==
-
-resolve@^1.15.1:
- version "1.22.10"
- resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.10.tgz#b663e83ffb09bbf2386944736baae803029b8b39"
- integrity sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==
- dependencies:
- is-core-module "^2.16.0"
- path-parse "^1.0.7"
- supports-preserve-symlinks-flag "^1.0.0"
-
-ret@~0.5.0:
- version "0.5.0"
- resolved "https://registry.yarnpkg.com/ret/-/ret-0.5.0.tgz#30a4d38a7e704bd96dc5ffcbe7ce2a9274c41c95"
- integrity sha512-I1XxrZSQ+oErkRR4jYbAyEEu2I0avBvvMM5JN+6EBprOGRCs63ENqZ3vjavq8fBw2+62G5LF5XelKwuJpcvcxw==
-
-reusify@^1.0.4:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76"
- integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==
-
-rfdc@^1.2.0, rfdc@^1.3.1:
- version "1.4.1"
- resolved "https://registry.yarnpkg.com/rfdc/-/rfdc-1.4.1.tgz#778f76c4fb731d93414e8f925fbecf64cce7f6ca"
- integrity sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==
-
-safe-buffer@5.2.1, safe-buffer@~5.2.0:
- version "5.2.1"
- resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
- integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
-
-safe-regex2@^4.0.0:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/safe-regex2/-/safe-regex2-4.0.1.tgz#b0a4b0216c1dd0256af987b7aea473e1c91543a8"
- integrity sha512-goqsB+bSlOmVX+CiFX2PFc1OV88j5jvBqIM+DgqrucHnUguAUNtiNOs+aTadq2NqsLQ+TQ3UEVG3gtSFcdlkCg==
- dependencies:
- ret "~0.5.0"
-
-safe-stable-stringify@^2.3.1:
- version "2.5.0"
- resolved "https://registry.yarnpkg.com/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz#4ca2f8e385f2831c432a719b108a3bf7af42a1dd"
- integrity sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==
-
-secure-json-parse@^3.0.1:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/secure-json-parse/-/secure-json-parse-3.0.2.tgz#255b03bb0627ba5805f64f384b0a7691d8cb021b"
- integrity sha512-H6nS2o8bWfpFEV6U38sOSjS7bTbdgbCGU9wEM6W14P5H0QOsz94KCusifV44GpHDTu2nqZbuDNhTzu+mjDSw1w==
-
-semver@^7.5.3, semver@^7.6.0:
- version "7.7.1"
- resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.1.tgz#abd5098d82b18c6c81f6074ff2647fd3e7220c9f"
- integrity sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==
-
-set-cookie-parser@^2.6.0:
- version "2.7.1"
- resolved "https://registry.yarnpkg.com/set-cookie-parser/-/set-cookie-parser-2.7.1.tgz#3016f150072202dfbe90fadee053573cc89d2943"
- integrity sha512-IOc8uWeOZgnb3ptbCURJWNjWUPcO3ZnTTdzsurqERrP6nPyv+paC55vJM0LpOlT2ne+Ix+9+CRG1MNLlyZ4GjQ==
-
-setprototypeof@1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424"
- integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==
-
-shebang-command@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea"
- integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==
- dependencies:
- shebang-regex "^3.0.0"
-
-shebang-regex@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172"
- integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==
-
-signal-exit@^4.0.1:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04"
- integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==
-
-simple-update-notifier@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/simple-update-notifier/-/simple-update-notifier-2.0.0.tgz#d70b92bdab7d6d90dfd73931195a30b6e3d7cebb"
- integrity sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w==
- dependencies:
- semver "^7.5.3"
-
-sonic-boom@^4.0.1:
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/sonic-boom/-/sonic-boom-4.2.0.tgz#e59a525f831210fa4ef1896428338641ac1c124d"
- integrity sha512-INb7TM37/mAcsGmc9hyyI6+QR3rR1zVRu36B0NeGXKnOOLiZOfER5SA+N7X7k3yUYRzLWafduTDvJAfDswwEww==
- dependencies:
- atomic-sleep "^1.0.0"
-
-split2@^4.0.0:
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/split2/-/split2-4.2.0.tgz#c9c5920904d148bab0b9f67145f245a86aadbfa4"
- integrity sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==
-
-statuses@2.0.1:
- version "2.0.1"
- resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63"
- integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==
-
-"string-width-cjs@npm:string-width@^4.2.0":
- version "4.2.3"
- resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
- integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
- dependencies:
- emoji-regex "^8.0.0"
- is-fullwidth-code-point "^3.0.0"
- strip-ansi "^6.0.1"
-
-string-width@^4.1.0:
- version "4.2.3"
- resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
- integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
- dependencies:
- emoji-regex "^8.0.0"
- is-fullwidth-code-point "^3.0.0"
- strip-ansi "^6.0.1"
-
-string-width@^5.0.1, string-width@^5.1.2:
- version "5.1.2"
- resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794"
- integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==
- dependencies:
- eastasianwidth "^0.2.0"
- emoji-regex "^9.2.2"
- strip-ansi "^7.0.1"
-
-string_decoder@^1.1.1:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e"
- integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==
- dependencies:
- safe-buffer "~5.2.0"
-
-"strip-ansi-cjs@npm:strip-ansi@^6.0.1":
- version "6.0.1"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
- integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
- dependencies:
- ansi-regex "^5.0.1"
-
-strip-ansi@^6.0.0, strip-ansi@^6.0.1:
- version "6.0.1"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
- integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
- dependencies:
- ansi-regex "^5.0.1"
-
-strip-ansi@^7.0.1:
- version "7.1.0"
- resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.0.tgz#d5b6568ca689d8561370b0707685d22434faff45"
- integrity sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==
- dependencies:
- ansi-regex "^6.0.1"
-
-supports-color@^5.5.0:
- version "5.5.0"
- resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
- integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==
- dependencies:
- has-flag "^3.0.0"
-
-supports-preserve-symlinks-flag@^1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09"
- integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
-
-thread-stream@^3.0.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/thread-stream/-/thread-stream-3.1.0.tgz#4b2ef252a7c215064507d4ef70c05a5e2d34c4f1"
- integrity sha512-OqyPZ9u96VohAyMfJykzmivOrY2wfMSf3C5TtFJVgN+Hm6aj+voFhlK+kZEIv2FBh1X6Xp3DlnCOfEQ3B2J86A==
- dependencies:
- real-require "^0.2.0"
-
-to-regex-range@^5.0.1:
- version "5.0.1"
- resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4"
- integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==
- dependencies:
- is-number "^7.0.0"
-
-toad-cache@^3.7.0:
- version "3.7.0"
- resolved "https://registry.yarnpkg.com/toad-cache/-/toad-cache-3.7.0.tgz#b9b63304ea7c45ec34d91f1d2fa513517025c441"
- integrity sha512-/m8M+2BJUpoJdgAHoG+baCwBT+tf2VraSfkBgl0Y00qIWt41DJ8R5B8nsEw0I58YwF5IZH6z24/2TobDKnqSWw==
-
-toidentifier@1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35"
- integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==
-
-token-stream@1.0.0:
- version "1.0.0"
- resolved "https://registry.yarnpkg.com/token-stream/-/token-stream-1.0.0.tgz#cc200eab2613f4166d27ff9afc7ca56d49df6eb4"
- integrity sha512-VSsyNPPW74RpHwR8Fc21uubwHY7wMDeJLys2IX5zJNih+OnAnaifKHo+1LHT7DAdloQ7apeaaWg8l7qnf/TnEg==
-
-touch@^3.1.0:
- version "3.1.1"
- resolved "https://registry.yarnpkg.com/touch/-/touch-3.1.1.tgz#097a23d7b161476435e5c1344a95c0f75b4a5694"
- integrity sha512-r0eojU4bI8MnHr8c5bNo7lJDdI2qXlWWJk6a9EAFG7vbhTjElYhBVS3/miuE0uOuoLdb8Mc/rVfsmm6eo5o9GA==
-
-undefsafe@^2.0.5:
- version "2.0.5"
- resolved "https://registry.yarnpkg.com/undefsafe/-/undefsafe-2.0.5.tgz#38733b9327bdcd226db889fb723a6efd162e6e2c"
- integrity sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==
-
-undici-types@~6.20.0:
- version "6.20.0"
- resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.20.0.tgz#8171bf22c1f588d1554d55bf204bc624af388433"
- integrity sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==
-
-util-deprecate@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
- integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==
-
-void-elements@^3.1.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/void-elements/-/void-elements-3.1.0.tgz#614f7fbf8d801f0bb5f0661f5b2f5785750e4f09"
- integrity sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==
-
-which@^2.0.1:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1"
- integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==
- dependencies:
- isexe "^2.0.0"
-
-with@^7.0.0:
- version "7.0.2"
- resolved "https://registry.yarnpkg.com/with/-/with-7.0.2.tgz#ccee3ad542d25538a7a7a80aad212b9828495bac"
- integrity sha512-RNGKj82nUPg3g5ygxkQl0R937xLyho1J24ItRCBTr/m1YnZkzJy1hUiHUJrc/VlsDQzsCnInEGSg3bci0Lmd4w==
- dependencies:
- "@babel/parser" "^7.9.6"
- "@babel/types" "^7.9.6"
- assert-never "^1.2.1"
- babel-walk "3.0.0-canary-5"
+# This file is generated by running "yarn install" inside your project.
+# Manual changes might be lost - proceed with caution!
+
+__metadata:
+ version: 8
+ cacheKey: 10c0
+
+"@asamuzakjp/css-color@npm:^2.8.2":
+ version: 2.8.3
+ resolution: "@asamuzakjp/css-color@npm:2.8.3"
+ dependencies:
+ "@csstools/css-calc": "npm:^2.1.1"
+ "@csstools/css-color-parser": "npm:^3.0.7"
+ "@csstools/css-parser-algorithms": "npm:^3.0.4"
+ "@csstools/css-tokenizer": "npm:^3.0.3"
+ lru-cache: "npm:^10.4.3"
+ checksum: 10c0/e108c92ee5de6d8510c9aaca8375c0aeab730dc9b6d4bd287aea2a0379cfbaa09f0814dcacb3e2ddc5c79d7deedf3f82ec8d1ce0effd4a8fac8415b1fe553798
+ languageName: node
+ linkType: hard
+
+"@babel/helper-string-parser@npm:^7.25.9":
+ version: 7.25.9
+ resolution: "@babel/helper-string-parser@npm:7.25.9"
+ checksum: 10c0/7244b45d8e65f6b4338a6a68a8556f2cb161b782343e97281a5f2b9b93e420cad0d9f5773a59d79f61d0c448913d06f6a2358a87f2e203cf112e3c5b53522ee6
+ languageName: node
+ linkType: hard
+
+"@babel/helper-validator-identifier@npm:^7.25.9":
+ version: 7.25.9
+ resolution: "@babel/helper-validator-identifier@npm:7.25.9"
+ checksum: 10c0/4fc6f830177b7b7e887ad3277ddb3b91d81e6c4a24151540d9d1023e8dc6b1c0505f0f0628ae653601eb4388a8db45c1c14b2c07a9173837aef7e4116456259d
+ languageName: node
+ linkType: hard
+
+"@babel/parser@npm:^7.6.0, @babel/parser@npm:^7.9.6":
+ version: 7.26.9
+ resolution: "@babel/parser@npm:7.26.9"
+ dependencies:
+ "@babel/types": "npm:^7.26.9"
+ bin:
+ parser: ./bin/babel-parser.js
+ checksum: 10c0/4b9ef3c9a0d4c328e5e5544f50fe8932c36f8a2c851e7f14a85401487cd3da75cad72c2e1bcec1eac55599a6bbb2fdc091f274c4fcafa6bdd112d4915ff087fc
+ languageName: node
+ linkType: hard
+
+"@babel/types@npm:^7.26.9, @babel/types@npm:^7.6.1, @babel/types@npm:^7.9.6":
+ version: 7.26.9
+ resolution: "@babel/types@npm:7.26.9"
+ dependencies:
+ "@babel/helper-string-parser": "npm:^7.25.9"
+ "@babel/helper-validator-identifier": "npm:^7.25.9"
+ checksum: 10c0/999c56269ba00e5c57aa711fbe7ff071cd6990bafd1b978341ea7572cc78919986e2aa6ee51dacf4b6a7a6fa63ba4eb3f1a03cf55eee31b896a56d068b895964
+ languageName: node
+ linkType: hard
+
+"@csstools/color-helpers@npm:^5.0.2":
+ version: 5.0.2
+ resolution: "@csstools/color-helpers@npm:5.0.2"
+ checksum: 10c0/bebaddb28b9eb58b0449edd5d0c0318fa88f3cb079602ee27e88c9118070d666dcc4e09a5aa936aba2fde6ba419922ade07b7b506af97dd7051abd08dfb2959b
+ languageName: node
+ linkType: hard
+
+"@csstools/css-calc@npm:^2.1.1, @csstools/css-calc@npm:^2.1.2":
+ version: 2.1.2
+ resolution: "@csstools/css-calc@npm:2.1.2"
+ peerDependencies:
+ "@csstools/css-parser-algorithms": ^3.0.4
+ "@csstools/css-tokenizer": ^3.0.3
+ checksum: 10c0/34ced30553968ef5d5f9e00e3b90b48c47480cf130e282e99d57ec9b09f803aab8bc06325683e72a1518b5e7180a3da8b533f1b462062757c21989a53b482e1a
+ languageName: node
+ linkType: hard
+
+"@csstools/css-color-parser@npm:^3.0.7":
+ version: 3.0.8
+ resolution: "@csstools/css-color-parser@npm:3.0.8"
+ dependencies:
+ "@csstools/color-helpers": "npm:^5.0.2"
+ "@csstools/css-calc": "npm:^2.1.2"
+ peerDependencies:
+ "@csstools/css-parser-algorithms": ^3.0.4
+ "@csstools/css-tokenizer": ^3.0.3
+ checksum: 10c0/90722c5a62ca94e9d578ddf59be604a76400b932bd3d4bd23cb1ae9b7ace8fcf83c06995d2b31f96f4afef24a7cefba79beb11ed7ee4999d7ecfec3869368359
+ languageName: node
+ linkType: hard
+
+"@csstools/css-parser-algorithms@npm:^3.0.4":
+ version: 3.0.4
+ resolution: "@csstools/css-parser-algorithms@npm:3.0.4"
+ peerDependencies:
+ "@csstools/css-tokenizer": ^3.0.3
+ checksum: 10c0/d411f07765e14eede17bccc6bd4f90ff303694df09aabfede3fd104b2dfacfd4fe3697cd25ddad14684c850328f3f9420ebfa9f78380892492974db24ae47dbd
+ languageName: node
+ linkType: hard
+
+"@csstools/css-tokenizer@npm:^3.0.3":
+ version: 3.0.3
+ resolution: "@csstools/css-tokenizer@npm:3.0.3"
+ checksum: 10c0/c31bf410e1244b942e71798e37c54639d040cb59e0121b21712b40015fced2b0fb1ffe588434c5f8923c9cd0017cfc1c1c8f3921abc94c96edf471aac2eba5e5
+ languageName: node
+ linkType: hard
+
+"@esbuild/aix-ppc64@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/aix-ppc64@npm:0.25.0"
+ conditions: os=aix & cpu=ppc64
+ languageName: node
+ linkType: hard
+
+"@esbuild/android-arm64@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/android-arm64@npm:0.25.0"
+ conditions: os=android & cpu=arm64
+ languageName: node
+ linkType: hard
+
+"@esbuild/android-arm@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/android-arm@npm:0.25.0"
+ conditions: os=android & cpu=arm
+ languageName: node
+ linkType: hard
+
+"@esbuild/android-x64@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/android-x64@npm:0.25.0"
+ conditions: os=android & cpu=x64
+ languageName: node
+ linkType: hard
+
+"@esbuild/darwin-arm64@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/darwin-arm64@npm:0.25.0"
+ conditions: os=darwin & cpu=arm64
+ languageName: node
+ linkType: hard
+
+"@esbuild/darwin-x64@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/darwin-x64@npm:0.25.0"
+ conditions: os=darwin & cpu=x64
+ languageName: node
+ linkType: hard
+
+"@esbuild/freebsd-arm64@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/freebsd-arm64@npm:0.25.0"
+ conditions: os=freebsd & cpu=arm64
+ languageName: node
+ linkType: hard
+
+"@esbuild/freebsd-x64@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/freebsd-x64@npm:0.25.0"
+ conditions: os=freebsd & cpu=x64
+ languageName: node
+ linkType: hard
+
+"@esbuild/linux-arm64@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/linux-arm64@npm:0.25.0"
+ conditions: os=linux & cpu=arm64
+ languageName: node
+ linkType: hard
+
+"@esbuild/linux-arm@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/linux-arm@npm:0.25.0"
+ conditions: os=linux & cpu=arm
+ languageName: node
+ linkType: hard
+
+"@esbuild/linux-ia32@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/linux-ia32@npm:0.25.0"
+ conditions: os=linux & cpu=ia32
+ languageName: node
+ linkType: hard
+
+"@esbuild/linux-loong64@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/linux-loong64@npm:0.25.0"
+ conditions: os=linux & cpu=loong64
+ languageName: node
+ linkType: hard
+
+"@esbuild/linux-mips64el@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/linux-mips64el@npm:0.25.0"
+ conditions: os=linux & cpu=mips64el
+ languageName: node
+ linkType: hard
+
+"@esbuild/linux-ppc64@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/linux-ppc64@npm:0.25.0"
+ conditions: os=linux & cpu=ppc64
+ languageName: node
+ linkType: hard
+
+"@esbuild/linux-riscv64@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/linux-riscv64@npm:0.25.0"
+ conditions: os=linux & cpu=riscv64
+ languageName: node
+ linkType: hard
+
+"@esbuild/linux-s390x@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/linux-s390x@npm:0.25.0"
+ conditions: os=linux & cpu=s390x
+ languageName: node
+ linkType: hard
+
+"@esbuild/linux-x64@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/linux-x64@npm:0.25.0"
+ conditions: os=linux & cpu=x64
+ languageName: node
+ linkType: hard
+
+"@esbuild/netbsd-arm64@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/netbsd-arm64@npm:0.25.0"
+ conditions: os=netbsd & cpu=arm64
+ languageName: node
+ linkType: hard
+
+"@esbuild/netbsd-x64@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/netbsd-x64@npm:0.25.0"
+ conditions: os=netbsd & cpu=x64
+ languageName: node
+ linkType: hard
+
+"@esbuild/openbsd-arm64@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/openbsd-arm64@npm:0.25.0"
+ conditions: os=openbsd & cpu=arm64
+ languageName: node
+ linkType: hard
+
+"@esbuild/openbsd-x64@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/openbsd-x64@npm:0.25.0"
+ conditions: os=openbsd & cpu=x64
+ languageName: node
+ linkType: hard
+
+"@esbuild/sunos-x64@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/sunos-x64@npm:0.25.0"
+ conditions: os=sunos & cpu=x64
+ languageName: node
+ linkType: hard
+
+"@esbuild/win32-arm64@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/win32-arm64@npm:0.25.0"
+ conditions: os=win32 & cpu=arm64
+ languageName: node
+ linkType: hard
+
+"@esbuild/win32-ia32@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/win32-ia32@npm:0.25.0"
+ conditions: os=win32 & cpu=ia32
+ languageName: node
+ linkType: hard
+
+"@esbuild/win32-x64@npm:0.25.0":
+ version: 0.25.0
+ resolution: "@esbuild/win32-x64@npm:0.25.0"
+ conditions: os=win32 & cpu=x64
+ languageName: node
+ linkType: hard
+
+"@fastify/accept-negotiator@npm:^2.0.0":
+ version: 2.0.1
+ resolution: "@fastify/accept-negotiator@npm:2.0.1"
+ checksum: 10c0/b68386f8b3b69c73f79a54983bd86afc752c4373897ec1ad798356a325a69224ebd003c1aa47e11fc40b46f23bf2384ebb3907fe44214af806cc8ff6af913f18
+ languageName: node
+ linkType: hard
+
+"@fastify/ajv-compiler@npm:^4.0.0":
+ version: 4.0.2
+ resolution: "@fastify/ajv-compiler@npm:4.0.2"
+ dependencies:
+ ajv: "npm:^8.12.0"
+ ajv-formats: "npm:^3.0.1"
+ fast-uri: "npm:^3.0.0"
+ checksum: 10c0/ca048db219cc958fb1b962f5dfc141f29e067ecb28a8dbe782bbef80ae3c920021468009cad613f0ed68db410890bb09c773ba2f33cb13e055b48c9c338bd8fa
+ languageName: node
+ linkType: hard
+
+"@fastify/error@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "@fastify/error@npm:4.0.0"
+ checksum: 10c0/074b8a6c350c29a8fc8314298d9457fe0c1ba6e7f160e9ae6ba0e18853f1ec7427d768f966700cbf67a4694f3a9a593c6a23e42ce3ed62e40fecdf8026040d9a
+ languageName: node
+ linkType: hard
+
+"@fastify/fast-json-stringify-compiler@npm:^5.0.0":
+ version: 5.0.2
+ resolution: "@fastify/fast-json-stringify-compiler@npm:5.0.2"
+ dependencies:
+ fast-json-stringify: "npm:^6.0.0"
+ checksum: 10c0/835f91cdb4911bbf50884ce60fa6937564e50f81cb134e81e251344ad7ec022ac500a54843e5167819a214828a369c996e68fbd5347965d336908b44904812e3
+ languageName: node
+ linkType: hard
+
+"@fastify/forwarded@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "@fastify/forwarded@npm:3.0.0"
+ checksum: 10c0/bd139ee46c193ed9e04af2539f31fcb9e542b91917820f6cf401d5715c4c8bcccaae4a148e0ca14eeddee077ad8a3ab73e6f0f1ad769aff861fcef5f0a28e0d2
+ languageName: node
+ linkType: hard
+
+"@fastify/leveldb@npm:^6.0.0":
+ version: 6.0.2
+ resolution: "@fastify/leveldb@npm:6.0.2"
+ dependencies:
+ encoding-down: "npm:^7.0.0"
+ fastify-plugin: "npm:^5.0.0"
+ leveldown: "npm:^6.0.0"
+ levelup: "npm:^5.0.0"
+ checksum: 10c0/68bc12a6f89e27e99f1b7beb3728437d874a217ebaf841f0fdaffcb33d92c9f179c9716c7248ab444046867e2cae85dd45941d1bfa7b6c1f90f7287a66092c5d
+ languageName: node
+ linkType: hard
+
+"@fastify/merge-json-schemas@npm:^0.2.0":
+ version: 0.2.1
+ resolution: "@fastify/merge-json-schemas@npm:0.2.1"
+ dependencies:
+ dequal: "npm:^2.0.3"
+ checksum: 10c0/dfa884a8f62d53f71de273fdcd0e501b213367767a7d8c522ae87ba6fb571b3eea85175d6e019036d7c0c5419be60305abe54899b9459f76ed5333358699efcb
+ languageName: node
+ linkType: hard
+
+"@fastify/proxy-addr@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "@fastify/proxy-addr@npm:5.0.0"
+ dependencies:
+ "@fastify/forwarded": "npm:^3.0.0"
+ ipaddr.js: "npm:^2.1.0"
+ checksum: 10c0/5a7d667480c3699015aa9bc12a47b6044106f412725d91a1b90f4a7845390c710486f05d322a895c633fb32a5ba1a17e598cb72e727337862034034443d59bcd
+ languageName: node
+ linkType: hard
+
+"@fastify/send@npm:^3.2.0":
+ version: 3.3.1
+ resolution: "@fastify/send@npm:3.3.1"
+ dependencies:
+ "@lukeed/ms": "npm:^2.0.2"
+ escape-html: "npm:~1.0.3"
+ fast-decode-uri-component: "npm:^1.0.1"
+ http-errors: "npm:^2.0.0"
+ mime: "npm:^3"
+ checksum: 10c0/bd7b9538217ad9e7ec702b9bbad2c3b985370023b03159cfec884184c5b2035ca69b56dc951530727166f85c52e46b76043639e1b320c0803778091342f2174f
+ languageName: node
+ linkType: hard
+
+"@fastify/static@npm:^8.0.0":
+ version: 8.1.1
+ resolution: "@fastify/static@npm:8.1.1"
+ dependencies:
+ "@fastify/accept-negotiator": "npm:^2.0.0"
+ "@fastify/send": "npm:^3.2.0"
+ content-disposition: "npm:^0.5.4"
+ fastify-plugin: "npm:^5.0.0"
+ fastq: "npm:^1.17.1"
+ glob: "npm:^11.0.0"
+ checksum: 10c0/ff6c1f508db308b323813b5bdddab898b0d0b92b481e1ffcc34ae43143e20a6d7c0645043a03c5c7663005277e2a9519f21adb3cf5f73d962379b0d0fb075e3b
+ languageName: node
+ linkType: hard
+
+"@fastify/view@npm:^10.0.0":
+ version: 10.0.2
+ resolution: "@fastify/view@npm:10.0.2"
+ dependencies:
+ fastify-plugin: "npm:^5.0.0"
+ toad-cache: "npm:^3.7.0"
+ checksum: 10c0/6fc1e5c89ca5810057b3bf410eb1edf4439b971ed51feba8861d4372daa2d12792c9f47408f14c7f77b353543e417422d4caf8365a814eaa9b2b4d1cecf1b3c0
+ languageName: node
+ linkType: hard
+
+"@isaacs/cliui@npm:^8.0.2":
+ version: 8.0.2
+ resolution: "@isaacs/cliui@npm:8.0.2"
+ dependencies:
+ string-width: "npm:^5.1.2"
+ string-width-cjs: "npm:string-width@^4.2.0"
+ strip-ansi: "npm:^7.0.1"
+ strip-ansi-cjs: "npm:strip-ansi@^6.0.1"
+ wrap-ansi: "npm:^8.1.0"
+ wrap-ansi-cjs: "npm:wrap-ansi@^7.0.0"
+ checksum: 10c0/b1bf42535d49f11dc137f18d5e4e63a28c5569de438a221c369483731e9dac9fb797af554e8bf02b6192d1e5eba6e6402cf93900c3d0ac86391d00d04876789e
+ languageName: node
+ linkType: hard
+
+"@isaacs/fs-minipass@npm:^4.0.0":
+ version: 4.0.1
+ resolution: "@isaacs/fs-minipass@npm:4.0.1"
+ dependencies:
+ minipass: "npm:^7.0.4"
+ checksum: 10c0/c25b6dc1598790d5b55c0947a9b7d111cfa92594db5296c3b907e2f533c033666f692a3939eadac17b1c7c40d362d0b0635dc874cbfe3e70db7c2b07cc97a5d2
+ languageName: node
+ linkType: hard
+
+"@lukeed/ms@npm:^2.0.2":
+ version: 2.0.2
+ resolution: "@lukeed/ms@npm:2.0.2"
+ checksum: 10c0/843b922717313bcde4943f478145d8bc13115b9b91d83bbaed53739b5644122984412310aed574792f4e6b492f2cbda178175f601856d310f67e14834c3f17a0
+ languageName: node
+ linkType: hard
+
+"@npmcli/agent@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "@npmcli/agent@npm:3.0.0"
+ dependencies:
+ agent-base: "npm:^7.1.0"
+ http-proxy-agent: "npm:^7.0.0"
+ https-proxy-agent: "npm:^7.0.1"
+ lru-cache: "npm:^10.0.1"
+ socks-proxy-agent: "npm:^8.0.3"
+ checksum: 10c0/efe37b982f30740ee77696a80c196912c274ecd2cb243bc6ae7053a50c733ce0f6c09fda085145f33ecf453be19654acca74b69e81eaad4c90f00ccffe2f9271
+ languageName: node
+ linkType: hard
+
+"@npmcli/fs@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "@npmcli/fs@npm:4.0.0"
+ dependencies:
+ semver: "npm:^7.3.5"
+ checksum: 10c0/c90935d5ce670c87b6b14fab04a965a3b8137e585f8b2a6257263bd7f97756dd736cb165bb470e5156a9e718ecd99413dccc54b1138c1a46d6ec7cf325982fe5
+ languageName: node
+ linkType: hard
+
+"@pkgjs/parseargs@npm:^0.11.0":
+ version: 0.11.0
+ resolution: "@pkgjs/parseargs@npm:0.11.0"
+ checksum: 10c0/5bd7576bb1b38a47a7fc7b51ac9f38748e772beebc56200450c4a817d712232b8f1d3ef70532c80840243c657d491cf6a6be1e3a214cff907645819fdc34aadd
+ languageName: node
+ linkType: hard
+
+"@types/node@npm:^22.13.5":
+ version: 22.13.8
+ resolution: "@types/node@npm:22.13.8"
+ dependencies:
+ undici-types: "npm:~6.20.0"
+ checksum: 10c0/bfc92b734a9dce6ac5daee0a52feccdf5dcb3804d895e4bc5384e2f4644612b8801725cd03c8c3c0888fb5eeb16b875877ac44b77641e0196dc1a837b1c2a366
+ languageName: node
+ linkType: hard
+
+"abbrev@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "abbrev@npm:3.0.0"
+ checksum: 10c0/049704186396f571650eb7b22ed3627b77a5aedf98bb83caf2eac81ca2a3e25e795394b0464cfb2d6076df3db6a5312139eac5b6a126ca296ac53c5008069c28
+ languageName: node
+ linkType: hard
+
+"abstract-leveldown@npm:^7.2.0":
+ version: 7.2.0
+ resolution: "abstract-leveldown@npm:7.2.0"
+ dependencies:
+ buffer: "npm:^6.0.3"
+ catering: "npm:^2.0.0"
+ is-buffer: "npm:^2.0.5"
+ level-concat-iterator: "npm:^3.0.0"
+ level-supports: "npm:^2.0.1"
+ queue-microtask: "npm:^1.2.3"
+ checksum: 10c0/c81765642fc2100499fadc3254470a338ba7c0ba2e597b15cd13d91f333a54619b4d5c4137765e0835817142cd23e8eb7bf01b6a217e13c492f4872c164184dc
+ languageName: node
+ linkType: hard
+
+"abstract-logging@npm:^2.0.1":
+ version: 2.0.1
+ resolution: "abstract-logging@npm:2.0.1"
+ checksum: 10c0/304879d9babcf6772260e5ddde632e6428e1f42f7a7a116d4689e97ad813a20e0ec2dd1e0a122f3617557f40091b9ca85735de4b48c17a2041268cb47b3f8ef1
+ languageName: node
+ linkType: hard
+
+"acorn@npm:^7.1.1":
+ version: 7.4.1
+ resolution: "acorn@npm:7.4.1"
+ bin:
+ acorn: bin/acorn
+ checksum: 10c0/bd0b2c2b0f334bbee48828ff897c12bd2eb5898d03bf556dcc8942022cec795ac5bb5b6b585e2de687db6231faf07e096b59a361231dd8c9344d5df5f7f0e526
+ languageName: node
+ linkType: hard
+
+"agent-base@npm:^7.1.0, agent-base@npm:^7.1.2":
+ version: 7.1.3
+ resolution: "agent-base@npm:7.1.3"
+ checksum: 10c0/6192b580c5b1d8fb399b9c62bf8343d76654c2dd62afcb9a52b2cf44a8b6ace1e3b704d3fe3547d91555c857d3df02603341ff2cb961b9cfe2b12f9f3c38ee11
+ languageName: node
+ linkType: hard
+
+"ajv-formats@npm:^3.0.1":
+ version: 3.0.1
+ resolution: "ajv-formats@npm:3.0.1"
+ dependencies:
+ ajv: "npm:^8.0.0"
+ peerDependencies:
+ ajv: ^8.0.0
+ peerDependenciesMeta:
+ ajv:
+ optional: true
+ checksum: 10c0/168d6bca1ea9f163b41c8147bae537e67bd963357a5488a1eaf3abe8baa8eec806d4e45f15b10767e6020679315c7e1e5e6803088dfb84efa2b4e9353b83dd0a
+ languageName: node
+ linkType: hard
+
+"ajv@npm:^8.0.0, ajv@npm:^8.12.0":
+ version: 8.17.1
+ resolution: "ajv@npm:8.17.1"
+ dependencies:
+ fast-deep-equal: "npm:^3.1.3"
+ fast-uri: "npm:^3.0.1"
+ json-schema-traverse: "npm:^1.0.0"
+ require-from-string: "npm:^2.0.2"
+ checksum: 10c0/ec3ba10a573c6b60f94639ffc53526275917a2df6810e4ab5a6b959d87459f9ef3f00d5e7865b82677cb7d21590355b34da14d1d0b9c32d75f95a187e76fff35
+ languageName: node
+ linkType: hard
+
+"ansi-regex@npm:^5.0.1":
+ version: 5.0.1
+ resolution: "ansi-regex@npm:5.0.1"
+ checksum: 10c0/9a64bb8627b434ba9327b60c027742e5d17ac69277960d041898596271d992d4d52ba7267a63ca10232e29f6107fc8a835f6ce8d719b88c5f8493f8254813737
+ languageName: node
+ linkType: hard
+
+"ansi-regex@npm:^6.0.1":
+ version: 6.1.0
+ resolution: "ansi-regex@npm:6.1.0"
+ checksum: 10c0/a91daeddd54746338478eef88af3439a7edf30f8e23196e2d6ed182da9add559c601266dbef01c2efa46a958ad6f1f8b176799657616c702b5b02e799e7fd8dc
+ languageName: node
+ linkType: hard
+
+"ansi-styles@npm:^4.0.0":
+ version: 4.3.0
+ resolution: "ansi-styles@npm:4.3.0"
+ dependencies:
+ color-convert: "npm:^2.0.1"
+ checksum: 10c0/895a23929da416f2bd3de7e9cb4eabd340949328ab85ddd6e484a637d8f6820d485f53933446f5291c3b760cbc488beb8e88573dd0f9c7daf83dccc8fe81b041
+ languageName: node
+ linkType: hard
+
+"ansi-styles@npm:^6.1.0":
+ version: 6.2.1
+ resolution: "ansi-styles@npm:6.2.1"
+ checksum: 10c0/5d1ec38c123984bcedd996eac680d548f31828bd679a66db2bdf11844634dde55fec3efa9c6bb1d89056a5e79c1ac540c4c784d592ea1d25028a92227d2f2d5c
+ languageName: node
+ linkType: hard
+
+"anymatch@npm:~3.1.2":
+ version: 3.1.3
+ resolution: "anymatch@npm:3.1.3"
+ dependencies:
+ normalize-path: "npm:^3.0.0"
+ picomatch: "npm:^2.0.4"
+ checksum: 10c0/57b06ae984bc32a0d22592c87384cd88fe4511b1dd7581497831c56d41939c8a001b28e7b853e1450f2bf61992dfcaa8ae2d0d161a0a90c4fb631ef07098fbac
+ languageName: node
+ linkType: hard
+
+"asap@npm:~2.0.3":
+ version: 2.0.6
+ resolution: "asap@npm:2.0.6"
+ checksum: 10c0/c6d5e39fe1f15e4b87677460bd66b66050cd14c772269cee6688824c1410a08ab20254bb6784f9afb75af9144a9f9a7692d49547f4d19d715aeb7c0318f3136d
+ languageName: node
+ linkType: hard
+
+"assert-never@npm:^1.2.1":
+ version: 1.4.0
+ resolution: "assert-never@npm:1.4.0"
+ checksum: 10c0/494db08b89fb43d6231c9b4c48da22824f1912d88992bf0268e43b3dad0f64bd56d380addbb997d2dea7d859421d5e2904e8bd01243794f2bb5bfbc8d32d1fc6
+ languageName: node
+ linkType: hard
+
+"asynckit@npm:^0.4.0":
+ version: 0.4.0
+ resolution: "asynckit@npm:0.4.0"
+ checksum: 10c0/d73e2ddf20c4eb9337e1b3df1a0f6159481050a5de457c55b14ea2e5cb6d90bb69e004c9af54737a5ee0917fcf2c9e25de67777bbe58261847846066ba75bc9d
+ languageName: node
+ linkType: hard
+
+"atomic-sleep@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "atomic-sleep@npm:1.0.0"
+ checksum: 10c0/e329a6665512736a9bbb073e1761b4ec102f7926cce35037753146a9db9c8104f5044c1662e4a863576ce544fb8be27cd2be6bc8c1a40147d03f31eb1cfb6e8a
+ languageName: node
+ linkType: hard
+
+"avvio@npm:^9.0.0":
+ version: 9.1.0
+ resolution: "avvio@npm:9.1.0"
+ dependencies:
+ "@fastify/error": "npm:^4.0.0"
+ fastq: "npm:^1.17.1"
+ checksum: 10c0/bdc294a7e8f38e1e21f9d338d97d7240025db54f1005fc419cfe0499a35edf2276ab1fe91135739faa3a9437358ec6912d5a56f23361b061880333cb4f1c7884
+ languageName: node
+ linkType: hard
+
+"babel-walk@npm:3.0.0-canary-5":
+ version: 3.0.0-canary-5
+ resolution: "babel-walk@npm:3.0.0-canary-5"
+ dependencies:
+ "@babel/types": "npm:^7.9.6"
+ checksum: 10c0/17b689874d15c37714cedf6797dd9321dcb998d8e0dda9a8fe8c8bbbf128bbdeb8935cf56e8630d6b67eae76d2a0bc1e470751e082c3b0e30b80d58beafb5e64
+ languageName: node
+ linkType: hard
+
+"balanced-match@npm:^1.0.0":
+ version: 1.0.2
+ resolution: "balanced-match@npm:1.0.2"
+ checksum: 10c0/9308baf0a7e4838a82bbfd11e01b1cb0f0cf2893bc1676c27c2a8c0e70cbae1c59120c3268517a8ae7fb6376b4639ef81ca22582611dbee4ed28df945134aaee
+ languageName: node
+ linkType: hard
+
+"base64-js@npm:^1.3.1":
+ version: 1.5.1
+ resolution: "base64-js@npm:1.5.1"
+ checksum: 10c0/f23823513b63173a001030fae4f2dabe283b99a9d324ade3ad3d148e218134676f1ee8568c877cd79ec1c53158dcf2d2ba527a97c606618928ba99dd930102bf
+ languageName: node
+ linkType: hard
+
+"binary-extensions@npm:^2.0.0":
+ version: 2.3.0
+ resolution: "binary-extensions@npm:2.3.0"
+ checksum: 10c0/75a59cafc10fb12a11d510e77110c6c7ae3f4ca22463d52487709ca7f18f69d886aa387557cc9864fbdb10153d0bdb4caacabf11541f55e89ed6e18d12ece2b5
+ languageName: node
+ linkType: hard
+
+"brace-expansion@npm:^1.1.7":
+ version: 1.1.11
+ resolution: "brace-expansion@npm:1.1.11"
+ dependencies:
+ balanced-match: "npm:^1.0.0"
+ concat-map: "npm:0.0.1"
+ checksum: 10c0/695a56cd058096a7cb71fb09d9d6a7070113c7be516699ed361317aca2ec169f618e28b8af352e02ab4233fb54eb0168460a40dc320bab0034b36ab59aaad668
+ languageName: node
+ linkType: hard
+
+"brace-expansion@npm:^2.0.1":
+ version: 2.0.1
+ resolution: "brace-expansion@npm:2.0.1"
+ dependencies:
+ balanced-match: "npm:^1.0.0"
+ checksum: 10c0/b358f2fe060e2d7a87aa015979ecea07f3c37d4018f8d6deb5bd4c229ad3a0384fe6029bb76cd8be63c81e516ee52d1a0673edbe2023d53a5191732ae3c3e49f
+ languageName: node
+ linkType: hard
+
+"braces@npm:~3.0.2":
+ version: 3.0.3
+ resolution: "braces@npm:3.0.3"
+ dependencies:
+ fill-range: "npm:^7.1.1"
+ checksum: 10c0/7c6dfd30c338d2997ba77500539227b9d1f85e388a5f43220865201e407e076783d0881f2d297b9f80951b4c957fcf0b51c1d2d24227631643c3f7c284b0aa04
+ languageName: node
+ linkType: hard
+
+"buffer@npm:^6.0.3":
+ version: 6.0.3
+ resolution: "buffer@npm:6.0.3"
+ dependencies:
+ base64-js: "npm:^1.3.1"
+ ieee754: "npm:^1.2.1"
+ checksum: 10c0/2a905fbbcde73cc5d8bd18d1caa23715d5f83a5935867c2329f0ac06104204ba7947be098fe1317fbd8830e26090ff8e764f08cd14fefc977bb248c3487bcbd0
+ languageName: node
+ linkType: hard
+
+"cacache@npm:^19.0.1":
+ version: 19.0.1
+ resolution: "cacache@npm:19.0.1"
+ dependencies:
+ "@npmcli/fs": "npm:^4.0.0"
+ fs-minipass: "npm:^3.0.0"
+ glob: "npm:^10.2.2"
+ lru-cache: "npm:^10.0.1"
+ minipass: "npm:^7.0.3"
+ minipass-collect: "npm:^2.0.1"
+ minipass-flush: "npm:^1.0.5"
+ minipass-pipeline: "npm:^1.2.4"
+ p-map: "npm:^7.0.2"
+ ssri: "npm:^12.0.0"
+ tar: "npm:^7.4.3"
+ unique-filename: "npm:^4.0.0"
+ checksum: 10c0/01f2134e1bd7d3ab68be851df96c8d63b492b1853b67f2eecb2c37bb682d37cb70bb858a16f2f0554d3c0071be6dfe21456a1ff6fa4b7eed996570d6a25ffe9c
+ languageName: node
+ linkType: hard
+
+"call-bind-apply-helpers@npm:^1.0.1, call-bind-apply-helpers@npm:^1.0.2":
+ version: 1.0.2
+ resolution: "call-bind-apply-helpers@npm:1.0.2"
+ dependencies:
+ es-errors: "npm:^1.3.0"
+ function-bind: "npm:^1.1.2"
+ checksum: 10c0/47bd9901d57b857590431243fea704ff18078b16890a6b3e021e12d279bbf211d039155e27d7566b374d49ee1f8189344bac9833dec7a20cdec370506361c938
+ languageName: node
+ linkType: hard
+
+"call-bound@npm:^1.0.2":
+ version: 1.0.3
+ resolution: "call-bound@npm:1.0.3"
+ dependencies:
+ call-bind-apply-helpers: "npm:^1.0.1"
+ get-intrinsic: "npm:^1.2.6"
+ checksum: 10c0/45257b8e7621067304b30dbd638e856cac913d31e8e00a80d6cf172911acd057846572d0b256b45e652d515db6601e2974a1b1a040e91b4fc36fb3dd86fa69cf
+ languageName: node
+ linkType: hard
+
+"catering@npm:^2.0.0, catering@npm:^2.1.0":
+ version: 2.1.1
+ resolution: "catering@npm:2.1.1"
+ checksum: 10c0/a69f946f82cba85509abcb399759ed4c39d2cc9e33ba35674f242130c1b3c56673da3c3e85804db6898dfd966c395aa128ba484b31c7b906cc2faca6a581e133
+ languageName: node
+ linkType: hard
+
+"character-parser@npm:^2.2.0":
+ version: 2.2.0
+ resolution: "character-parser@npm:2.2.0"
+ dependencies:
+ is-regex: "npm:^1.0.3"
+ checksum: 10c0/5a8d3eff2c912a6878c84e2ebf9d42524e858aa7e1a1c7e8bb79ab54da109ad008fe9057a9d2b3230541d7ff858eda98983a2ae15db57ba01af2e989d29e932e
+ languageName: node
+ linkType: hard
+
+"chokidar@npm:^3.5.2":
+ version: 3.6.0
+ resolution: "chokidar@npm:3.6.0"
+ dependencies:
+ anymatch: "npm:~3.1.2"
+ braces: "npm:~3.0.2"
+ fsevents: "npm:~2.3.2"
+ glob-parent: "npm:~5.1.2"
+ is-binary-path: "npm:~2.1.0"
+ is-glob: "npm:~4.0.1"
+ normalize-path: "npm:~3.0.0"
+ readdirp: "npm:~3.6.0"
+ dependenciesMeta:
+ fsevents:
+ optional: true
+ checksum: 10c0/8361dcd013f2ddbe260eacb1f3cb2f2c6f2b0ad118708a343a5ed8158941a39cb8fb1d272e0f389712e74ee90ce8ba864eece9e0e62b9705cb468a2f6d917462
+ languageName: node
+ linkType: hard
+
+"chownr@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "chownr@npm:3.0.0"
+ checksum: 10c0/43925b87700f7e3893296c8e9c56cc58f926411cce3a6e5898136daaf08f08b9a8eb76d37d3267e707d0dcc17aed2e2ebdf5848c0c3ce95cf910a919935c1b10
+ languageName: node
+ linkType: hard
+
+"color-convert@npm:^2.0.1":
+ version: 2.0.1
+ resolution: "color-convert@npm:2.0.1"
+ dependencies:
+ color-name: "npm:~1.1.4"
+ checksum: 10c0/37e1150172f2e311fe1b2df62c6293a342ee7380da7b9cfdba67ea539909afbd74da27033208d01d6d5cfc65ee7868a22e18d7e7648e004425441c0f8a15a7d7
+ languageName: node
+ linkType: hard
+
+"color-name@npm:~1.1.4":
+ version: 1.1.4
+ resolution: "color-name@npm:1.1.4"
+ checksum: 10c0/a1a3f914156960902f46f7f56bc62effc6c94e84b2cae157a526b1c1f74b677a47ec602bf68a61abfa2b42d15b7c5651c6dbe72a43af720bc588dff885b10f95
+ languageName: node
+ linkType: hard
+
+"combined-stream@npm:^1.0.8":
+ version: 1.0.8
+ resolution: "combined-stream@npm:1.0.8"
+ dependencies:
+ delayed-stream: "npm:~1.0.0"
+ checksum: 10c0/0dbb829577e1b1e839fa82b40c07ffaf7de8a09b935cadd355a73652ae70a88b4320db322f6634a4ad93424292fa80973ac6480986247f1734a1137debf271d5
+ languageName: node
+ linkType: hard
+
+"concat-map@npm:0.0.1":
+ version: 0.0.1
+ resolution: "concat-map@npm:0.0.1"
+ checksum: 10c0/c996b1cfdf95b6c90fee4dae37e332c8b6eb7d106430c17d538034c0ad9a1630cb194d2ab37293b1bdd4d779494beee7786d586a50bd9376fd6f7bcc2bd4c98f
+ languageName: node
+ linkType: hard
+
+"constantinople@npm:^4.0.1":
+ version: 4.0.1
+ resolution: "constantinople@npm:4.0.1"
+ dependencies:
+ "@babel/parser": "npm:^7.6.0"
+ "@babel/types": "npm:^7.6.1"
+ checksum: 10c0/15129adef19b1af2c3ade8bd38f97c34781bf461472a30ab414384b28d072be83070c8d2175787c045ef7c222c415101ae609936e7903427796a0c0eca8449fd
+ languageName: node
+ linkType: hard
+
+"content-disposition@npm:^0.5.4":
+ version: 0.5.4
+ resolution: "content-disposition@npm:0.5.4"
+ dependencies:
+ safe-buffer: "npm:5.2.1"
+ checksum: 10c0/bac0316ebfeacb8f381b38285dc691c9939bf0a78b0b7c2d5758acadad242d04783cee5337ba7d12a565a19075af1b3c11c728e1e4946de73c6ff7ce45f3f1bb
+ languageName: node
+ linkType: hard
+
+"cookie@npm:^1.0.1":
+ version: 1.0.2
+ resolution: "cookie@npm:1.0.2"
+ checksum: 10c0/fd25fe79e8fbcfcaf6aa61cd081c55d144eeeba755206c058682257cb38c4bd6795c6620de3f064c740695bb65b7949ebb1db7a95e4636efb8357a335ad3f54b
+ languageName: node
+ linkType: hard
+
+"cross-spawn@npm:^7.0.6":
+ version: 7.0.6
+ resolution: "cross-spawn@npm:7.0.6"
+ dependencies:
+ path-key: "npm:^3.1.0"
+ shebang-command: "npm:^2.0.0"
+ which: "npm:^2.0.1"
+ checksum: 10c0/053ea8b2135caff68a9e81470e845613e374e7309a47731e81639de3eaeb90c3d01af0e0b44d2ab9d50b43467223b88567dfeb3262db942dc063b9976718ffc1
+ languageName: node
+ linkType: hard
+
+"cssstyle@npm:^4.2.1":
+ version: 4.2.1
+ resolution: "cssstyle@npm:4.2.1"
+ dependencies:
+ "@asamuzakjp/css-color": "npm:^2.8.2"
+ rrweb-cssom: "npm:^0.8.0"
+ checksum: 10c0/02ba8c47c0caaab57acadacb3eb6c0f5f009000f55d61f6563670e07d389b26edefeed497e6c1847fcd2e6bbe0b6974c2d4291f97fa0c6ec6add13a7fa926d84
+ languageName: node
+ linkType: hard
+
+"data-urls@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "data-urls@npm:5.0.0"
+ dependencies:
+ whatwg-mimetype: "npm:^4.0.0"
+ whatwg-url: "npm:^14.0.0"
+ checksum: 10c0/1b894d7d41c861f3a4ed2ae9b1c3f0909d4575ada02e36d3d3bc584bdd84278e20709070c79c3b3bff7ac98598cb191eb3e86a89a79ea4ee1ef360e1694f92ad
+ languageName: node
+ linkType: hard
+
+"debug@npm:4, debug@npm:^4, debug@npm:^4.3.4":
+ version: 4.4.0
+ resolution: "debug@npm:4.4.0"
+ dependencies:
+ ms: "npm:^2.1.3"
+ peerDependenciesMeta:
+ supports-color:
+ optional: true
+ checksum: 10c0/db94f1a182bf886f57b4755f85b3a74c39b5114b9377b7ab375dc2cfa3454f09490cc6c30f829df3fc8042bc8b8995f6567ce5cd96f3bc3688bd24027197d9de
+ languageName: node
+ linkType: hard
+
+"decimal.js@npm:^10.4.3":
+ version: 10.5.0
+ resolution: "decimal.js@npm:10.5.0"
+ checksum: 10c0/785c35279df32762143914668df35948920b6c1c259b933e0519a69b7003fc0a5ed2a766b1e1dda02574450c566b21738a45f15e274b47c2ac02072c0d1f3ac3
+ languageName: node
+ linkType: hard
+
+"deferred-leveldown@npm:^7.0.0":
+ version: 7.0.0
+ resolution: "deferred-leveldown@npm:7.0.0"
+ dependencies:
+ abstract-leveldown: "npm:^7.2.0"
+ inherits: "npm:^2.0.3"
+ checksum: 10c0/6c47b8b8728487a7397549b19e4c95bec2635a1ba9749ab683065602aeab83815da154c8f0e5fcf5ff367f57283e06918d013f5e9fa032dcced3f4239a9dc141
+ languageName: node
+ linkType: hard
+
+"delayed-stream@npm:~1.0.0":
+ version: 1.0.0
+ resolution: "delayed-stream@npm:1.0.0"
+ checksum: 10c0/d758899da03392e6712f042bec80aa293bbe9e9ff1b2634baae6a360113e708b91326594c8a486d475c69d6259afb7efacdc3537bfcda1c6c648e390ce601b19
+ languageName: node
+ linkType: hard
+
+"depd@npm:2.0.0":
+ version: 2.0.0
+ resolution: "depd@npm:2.0.0"
+ checksum: 10c0/58bd06ec20e19529b06f7ad07ddab60e504d9e0faca4bd23079fac2d279c3594334d736508dc350e06e510aba5e22e4594483b3a6562ce7c17dd797f4cc4ad2c
+ languageName: node
+ linkType: hard
+
+"dequal@npm:^2.0.3":
+ version: 2.0.3
+ resolution: "dequal@npm:2.0.3"
+ checksum: 10c0/f98860cdf58b64991ae10205137c0e97d384c3a4edc7f807603887b7c4b850af1224a33d88012009f150861cbee4fa2d322c4cc04b9313bee312e47f6ecaa888
+ languageName: node
+ linkType: hard
+
+"doctypes@npm:^1.1.0":
+ version: 1.1.0
+ resolution: "doctypes@npm:1.1.0"
+ checksum: 10c0/b3f9d597ad8b9ac6aeba9d64df61f0098174f7570e3d34f7ee245ebc736c7bee122d9738a18e22010b98983fd9a340d63043d3841f02d8a7742a2d96d2c72610
+ languageName: node
+ linkType: hard
+
+"dunder-proto@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "dunder-proto@npm:1.0.1"
+ dependencies:
+ call-bind-apply-helpers: "npm:^1.0.1"
+ es-errors: "npm:^1.3.0"
+ gopd: "npm:^1.2.0"
+ checksum: 10c0/199f2a0c1c16593ca0a145dbf76a962f8033ce3129f01284d48c45ed4e14fea9bbacd7b3610b6cdc33486cef20385ac054948fefc6272fcce645c09468f93031
+ languageName: node
+ linkType: hard
+
+"eastasianwidth@npm:^0.2.0":
+ version: 0.2.0
+ resolution: "eastasianwidth@npm:0.2.0"
+ checksum: 10c0/26f364ebcdb6395f95124fda411f63137a4bfb5d3a06453f7f23dfe52502905bd84e0488172e0f9ec295fdc45f05c23d5d91baf16bd26f0fe9acd777a188dc39
+ languageName: node
+ linkType: hard
+
+"emoji-regex@npm:^8.0.0":
+ version: 8.0.0
+ resolution: "emoji-regex@npm:8.0.0"
+ checksum: 10c0/b6053ad39951c4cf338f9092d7bfba448cdfd46fe6a2a034700b149ac9ffbc137e361cbd3c442297f86bed2e5f7576c1b54cc0a6bf8ef5106cc62f496af35010
+ languageName: node
+ linkType: hard
+
+"emoji-regex@npm:^9.2.2":
+ version: 9.2.2
+ resolution: "emoji-regex@npm:9.2.2"
+ checksum: 10c0/af014e759a72064cf66e6e694a7fc6b0ed3d8db680427b021a89727689671cefe9d04151b2cad51dbaf85d5ba790d061cd167f1cf32eb7b281f6368b3c181639
+ languageName: node
+ linkType: hard
+
+"encoding-down@npm:^7.0.0":
+ version: 7.1.0
+ resolution: "encoding-down@npm:7.1.0"
+ dependencies:
+ abstract-leveldown: "npm:^7.2.0"
+ inherits: "npm:^2.0.3"
+ level-codec: "npm:^10.0.0"
+ level-errors: "npm:^3.0.0"
+ checksum: 10c0/76288b04ea197765bfe587321699f6fbdb6fec3b5cdc102998d886a2c69b9ef3531b0de5730ae6ec3b8e47cbfd92632c652f913c7b69f43ed7f29f9444f1782a
+ languageName: node
+ linkType: hard
+
+"encoding@npm:^0.1.13":
+ version: 0.1.13
+ resolution: "encoding@npm:0.1.13"
+ dependencies:
+ iconv-lite: "npm:^0.6.2"
+ checksum: 10c0/36d938712ff00fe1f4bac88b43bcffb5930c1efa57bbcdca9d67e1d9d6c57cfb1200fb01efe0f3109b2ce99b231f90779532814a81370a1bd3274a0f58585039
+ languageName: node
+ linkType: hard
+
+"entities@npm:^4.5.0":
+ version: 4.5.0
+ resolution: "entities@npm:4.5.0"
+ checksum: 10c0/5b039739f7621f5d1ad996715e53d964035f75ad3b9a4d38c6b3804bb226e282ffeae2443624d8fdd9c47d8e926ae9ac009c54671243f0c3294c26af7cc85250
+ languageName: node
+ linkType: hard
+
+"env-paths@npm:^2.2.0":
+ version: 2.2.1
+ resolution: "env-paths@npm:2.2.1"
+ checksum: 10c0/285325677bf00e30845e330eec32894f5105529db97496ee3f598478e50f008c5352a41a30e5e72ec9de8a542b5a570b85699cd63bd2bc646dbcb9f311d83bc4
+ languageName: node
+ linkType: hard
+
+"err-code@npm:^2.0.2":
+ version: 2.0.3
+ resolution: "err-code@npm:2.0.3"
+ checksum: 10c0/b642f7b4dd4a376e954947550a3065a9ece6733ab8e51ad80db727aaae0817c2e99b02a97a3d6cecc648a97848305e728289cf312d09af395403a90c9d4d8a66
+ languageName: node
+ linkType: hard
+
+"es-define-property@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "es-define-property@npm:1.0.1"
+ checksum: 10c0/3f54eb49c16c18707949ff25a1456728c883e81259f045003499efba399c08bad00deebf65cccde8c0e07908c1a225c9d472b7107e558f2a48e28d530e34527c
+ languageName: node
+ linkType: hard
+
+"es-errors@npm:^1.3.0":
+ version: 1.3.0
+ resolution: "es-errors@npm:1.3.0"
+ checksum: 10c0/0a61325670072f98d8ae3b914edab3559b6caa980f08054a3b872052640d91da01d38df55df797fcc916389d77fc92b8d5906cf028f4db46d7e3003abecbca85
+ languageName: node
+ linkType: hard
+
+"es-object-atoms@npm:^1.0.0, es-object-atoms@npm:^1.1.1":
+ version: 1.1.1
+ resolution: "es-object-atoms@npm:1.1.1"
+ dependencies:
+ es-errors: "npm:^1.3.0"
+ checksum: 10c0/65364812ca4daf48eb76e2a3b7a89b3f6a2e62a1c420766ce9f692665a29d94fe41fe88b65f24106f449859549711e4b40d9fb8002d862dfd7eb1c512d10be0c
+ languageName: node
+ linkType: hard
+
+"es-set-tostringtag@npm:^2.1.0":
+ version: 2.1.0
+ resolution: "es-set-tostringtag@npm:2.1.0"
+ dependencies:
+ es-errors: "npm:^1.3.0"
+ get-intrinsic: "npm:^1.2.6"
+ has-tostringtag: "npm:^1.0.2"
+ hasown: "npm:^2.0.2"
+ checksum: 10c0/ef2ca9ce49afe3931cb32e35da4dcb6d86ab02592cfc2ce3e49ced199d9d0bb5085fc7e73e06312213765f5efa47cc1df553a6a5154584b21448e9fb8355b1af
+ languageName: node
+ linkType: hard
+
+"esbuild@npm:^0.25.0":
+ version: 0.25.0
+ resolution: "esbuild@npm:0.25.0"
+ dependencies:
+ "@esbuild/aix-ppc64": "npm:0.25.0"
+ "@esbuild/android-arm": "npm:0.25.0"
+ "@esbuild/android-arm64": "npm:0.25.0"
+ "@esbuild/android-x64": "npm:0.25.0"
+ "@esbuild/darwin-arm64": "npm:0.25.0"
+ "@esbuild/darwin-x64": "npm:0.25.0"
+ "@esbuild/freebsd-arm64": "npm:0.25.0"
+ "@esbuild/freebsd-x64": "npm:0.25.0"
+ "@esbuild/linux-arm": "npm:0.25.0"
+ "@esbuild/linux-arm64": "npm:0.25.0"
+ "@esbuild/linux-ia32": "npm:0.25.0"
+ "@esbuild/linux-loong64": "npm:0.25.0"
+ "@esbuild/linux-mips64el": "npm:0.25.0"
+ "@esbuild/linux-ppc64": "npm:0.25.0"
+ "@esbuild/linux-riscv64": "npm:0.25.0"
+ "@esbuild/linux-s390x": "npm:0.25.0"
+ "@esbuild/linux-x64": "npm:0.25.0"
+ "@esbuild/netbsd-arm64": "npm:0.25.0"
+ "@esbuild/netbsd-x64": "npm:0.25.0"
+ "@esbuild/openbsd-arm64": "npm:0.25.0"
+ "@esbuild/openbsd-x64": "npm:0.25.0"
+ "@esbuild/sunos-x64": "npm:0.25.0"
+ "@esbuild/win32-arm64": "npm:0.25.0"
+ "@esbuild/win32-ia32": "npm:0.25.0"
+ "@esbuild/win32-x64": "npm:0.25.0"
+ dependenciesMeta:
+ "@esbuild/aix-ppc64":
+ optional: true
+ "@esbuild/android-arm":
+ optional: true
+ "@esbuild/android-arm64":
+ optional: true
+ "@esbuild/android-x64":
+ optional: true
+ "@esbuild/darwin-arm64":
+ optional: true
+ "@esbuild/darwin-x64":
+ optional: true
+ "@esbuild/freebsd-arm64":
+ optional: true
+ "@esbuild/freebsd-x64":
+ optional: true
+ "@esbuild/linux-arm":
+ optional: true
+ "@esbuild/linux-arm64":
+ optional: true
+ "@esbuild/linux-ia32":
+ optional: true
+ "@esbuild/linux-loong64":
+ optional: true
+ "@esbuild/linux-mips64el":
+ optional: true
+ "@esbuild/linux-ppc64":
+ optional: true
+ "@esbuild/linux-riscv64":
+ optional: true
+ "@esbuild/linux-s390x":
+ optional: true
+ "@esbuild/linux-x64":
+ optional: true
+ "@esbuild/netbsd-arm64":
+ optional: true
+ "@esbuild/netbsd-x64":
+ optional: true
+ "@esbuild/openbsd-arm64":
+ optional: true
+ "@esbuild/openbsd-x64":
+ optional: true
+ "@esbuild/sunos-x64":
+ optional: true
+ "@esbuild/win32-arm64":
+ optional: true
+ "@esbuild/win32-ia32":
+ optional: true
+ "@esbuild/win32-x64":
+ optional: true
+ bin:
+ esbuild: bin/esbuild
+ checksum: 10c0/5767b72da46da3cfec51661647ec850ddbf8a8d0662771139f10ef0692a8831396a0004b2be7966cecdb08264fb16bdc16290dcecd92396fac5f12d722fa013d
+ languageName: node
+ linkType: hard
+
+"escape-html@npm:~1.0.3":
+ version: 1.0.3
+ resolution: "escape-html@npm:1.0.3"
+ checksum: 10c0/524c739d776b36c3d29fa08a22e03e8824e3b2fd57500e5e44ecf3cc4707c34c60f9ca0781c0e33d191f2991161504c295e98f68c78fe7baa6e57081ec6ac0a3
+ languageName: node
+ linkType: hard
+
+"exponential-backoff@npm:^3.1.1":
+ version: 3.1.2
+ resolution: "exponential-backoff@npm:3.1.2"
+ checksum: 10c0/d9d3e1eafa21b78464297df91f1776f7fbaa3d5e3f7f0995648ca5b89c069d17055033817348d9f4a43d1c20b0eab84f75af6991751e839df53e4dfd6f22e844
+ languageName: node
+ linkType: hard
+
+"fast-decode-uri-component@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "fast-decode-uri-component@npm:1.0.1"
+ checksum: 10c0/039d50c2e99d64f999c3f2126c23fbf75a04a4117e218a149ca0b1d2aeb8c834b7b19d643b9d35d4eabce357189a6a94085f78cf48869e6e26cc59b036284bc3
+ languageName: node
+ linkType: hard
+
+"fast-deep-equal@npm:^3.1.3":
+ version: 3.1.3
+ resolution: "fast-deep-equal@npm:3.1.3"
+ checksum: 10c0/40dedc862eb8992c54579c66d914635afbec43350afbbe991235fdcb4e3a8d5af1b23ae7e79bef7d4882d0ecee06c3197488026998fb19f72dc95acff1d1b1d0
+ languageName: node
+ linkType: hard
+
+"fast-json-stringify@npm:^6.0.0":
+ version: 6.0.1
+ resolution: "fast-json-stringify@npm:6.0.1"
+ dependencies:
+ "@fastify/merge-json-schemas": "npm:^0.2.0"
+ ajv: "npm:^8.12.0"
+ ajv-formats: "npm:^3.0.1"
+ fast-uri: "npm:^3.0.0"
+ json-schema-ref-resolver: "npm:^2.0.0"
+ rfdc: "npm:^1.2.0"
+ checksum: 10c0/898aecd164707bced980fef61b0480dd80a47f87674d7643a75a60e5eca346018ba2552de200260030215d89f218d9cd7f342df14eec88ed44d45c81e4aa0eb4
+ languageName: node
+ linkType: hard
+
+"fast-querystring@npm:^1.0.0":
+ version: 1.1.2
+ resolution: "fast-querystring@npm:1.1.2"
+ dependencies:
+ fast-decode-uri-component: "npm:^1.0.1"
+ checksum: 10c0/e8223273a9b199722f760f5a047a77ad049a14bd444b821502cb8218f5925e3a5fffb56b64389bca73ab2ac6f1aa7aebbe4e203e5f6e53ff5978de97c0fde4e3
+ languageName: node
+ linkType: hard
+
+"fast-redact@npm:^3.1.1":
+ version: 3.5.0
+ resolution: "fast-redact@npm:3.5.0"
+ checksum: 10c0/7e2ce4aad6e7535e0775bf12bd3e4f2e53d8051d8b630e0fa9e67f68cb0b0e6070d2f7a94b1d0522ef07e32f7c7cda5755e2b677a6538f1e9070ca053c42343a
+ languageName: node
+ linkType: hard
+
+"fast-uri@npm:^3.0.0, fast-uri@npm:^3.0.1":
+ version: 3.0.6
+ resolution: "fast-uri@npm:3.0.6"
+ checksum: 10c0/74a513c2af0584448aee71ce56005185f81239eab7a2343110e5bad50c39ad4fb19c5a6f99783ead1cac7ccaf3461a6034fda89fffa2b30b6d99b9f21c2f9d29
+ languageName: node
+ linkType: hard
+
+"fastify-plugin@npm:^5.0.0":
+ version: 5.0.1
+ resolution: "fastify-plugin@npm:5.0.1"
+ checksum: 10c0/c5e5932e7b8c5713ff881adeade3e8ee8fc288e8249d79cd193a2a2438eef1ad58ae5814f12835acbf04025dbddf2628787cd845f3e550dee847f494a08f7c5b
+ languageName: node
+ linkType: hard
+
+"fastify@npm:^5.2.1":
+ version: 5.2.1
+ resolution: "fastify@npm:5.2.1"
+ dependencies:
+ "@fastify/ajv-compiler": "npm:^4.0.0"
+ "@fastify/error": "npm:^4.0.0"
+ "@fastify/fast-json-stringify-compiler": "npm:^5.0.0"
+ "@fastify/proxy-addr": "npm:^5.0.0"
+ abstract-logging: "npm:^2.0.1"
+ avvio: "npm:^9.0.0"
+ fast-json-stringify: "npm:^6.0.0"
+ find-my-way: "npm:^9.0.0"
+ light-my-request: "npm:^6.0.0"
+ pino: "npm:^9.0.0"
+ process-warning: "npm:^4.0.0"
+ rfdc: "npm:^1.3.1"
+ secure-json-parse: "npm:^3.0.1"
+ semver: "npm:^7.6.0"
+ toad-cache: "npm:^3.7.0"
+ checksum: 10c0/00163bcac121e5fcb097dec0230d8e7918f0d5aa4be1ddce87f6571a13d31c9691d20def5dbd12df047bc3fc372cb0a72a392feecf3e2c958dc0931e52d262cb
+ languageName: node
+ linkType: hard
+
+"fastq@npm:^1.17.1":
+ version: 1.19.1
+ resolution: "fastq@npm:1.19.1"
+ dependencies:
+ reusify: "npm:^1.0.4"
+ checksum: 10c0/ebc6e50ac7048daaeb8e64522a1ea7a26e92b3cee5cd1c7f2316cdca81ba543aa40a136b53891446ea5c3a67ec215fbaca87ad405f102dd97012f62916905630
+ languageName: node
+ linkType: hard
+
+"fill-range@npm:^7.1.1":
+ version: 7.1.1
+ resolution: "fill-range@npm:7.1.1"
+ dependencies:
+ to-regex-range: "npm:^5.0.1"
+ checksum: 10c0/b75b691bbe065472f38824f694c2f7449d7f5004aa950426a2c28f0306c60db9b880c0b0e4ed819997ffb882d1da02cfcfc819bddc94d71627f5269682edf018
+ languageName: node
+ linkType: hard
+
+"find-my-way@npm:^9.0.0":
+ version: 9.2.0
+ resolution: "find-my-way@npm:9.2.0"
+ dependencies:
+ fast-deep-equal: "npm:^3.1.3"
+ fast-querystring: "npm:^1.0.0"
+ safe-regex2: "npm:^4.0.0"
+ checksum: 10c0/de869f044ea196493d3d8951e592e8155191cfa7ff56b49ae0aa3b7184e25a19e6931386a0b1ac0ba875648f54430b30c33610045bee0e2d0e5875b9b4fd13fb
+ languageName: node
+ linkType: hard
+
+"foreground-child@npm:^3.1.0":
+ version: 3.3.1
+ resolution: "foreground-child@npm:3.3.1"
+ dependencies:
+ cross-spawn: "npm:^7.0.6"
+ signal-exit: "npm:^4.0.1"
+ checksum: 10c0/8986e4af2430896e65bc2788d6679067294d6aee9545daefc84923a0a4b399ad9c7a3ea7bd8c0b2b80fdf4a92de4c69df3f628233ff3224260e9c1541a9e9ed3
+ languageName: node
+ linkType: hard
+
+"form-data@npm:^4.0.1":
+ version: 4.0.2
+ resolution: "form-data@npm:4.0.2"
+ dependencies:
+ asynckit: "npm:^0.4.0"
+ combined-stream: "npm:^1.0.8"
+ es-set-tostringtag: "npm:^2.1.0"
+ mime-types: "npm:^2.1.12"
+ checksum: 10c0/e534b0cf025c831a0929bf4b9bbe1a9a6b03e273a8161f9947286b9b13bf8fb279c6944aae0070c4c311100c6d6dbb815cd955dc217728caf73fad8dc5b8ee9c
+ languageName: node
+ linkType: hard
+
+"fs-minipass@npm:^3.0.0":
+ version: 3.0.3
+ resolution: "fs-minipass@npm:3.0.3"
+ dependencies:
+ minipass: "npm:^7.0.3"
+ checksum: 10c0/63e80da2ff9b621e2cb1596abcb9207f1cf82b968b116ccd7b959e3323144cce7fb141462200971c38bbf2ecca51695069db45265705bed09a7cd93ae5b89f94
+ languageName: node
+ linkType: hard
+
+"fsevents@npm:~2.3.2":
+ version: 2.3.3
+ resolution: "fsevents@npm:2.3.3"
+ dependencies:
+ node-gyp: "npm:latest"
+ checksum: 10c0/a1f0c44595123ed717febbc478aa952e47adfc28e2092be66b8ab1635147254ca6cfe1df792a8997f22716d4cbafc73309899ff7bfac2ac3ad8cf2e4ecc3ec60
+ conditions: os=darwin
+ languageName: node
+ linkType: hard
+
+"fsevents@patch:fsevents@npm%3A~2.3.2#optional!builtin":
+ version: 2.3.3
+ resolution: "fsevents@patch:fsevents@npm%3A2.3.3#optional!builtin::version=2.3.3&hash=df0bf1"
+ dependencies:
+ node-gyp: "npm:latest"
+ conditions: os=darwin
+ languageName: node
+ linkType: hard
+
+"function-bind@npm:^1.1.2":
+ version: 1.1.2
+ resolution: "function-bind@npm:1.1.2"
+ checksum: 10c0/d8680ee1e5fcd4c197e4ac33b2b4dce03c71f4d91717292785703db200f5c21f977c568d28061226f9b5900cbcd2c84463646134fd5337e7925e0942bc3f46d5
+ languageName: node
+ linkType: hard
+
+"get-intrinsic@npm:^1.2.6":
+ version: 1.3.0
+ resolution: "get-intrinsic@npm:1.3.0"
+ dependencies:
+ call-bind-apply-helpers: "npm:^1.0.2"
+ es-define-property: "npm:^1.0.1"
+ es-errors: "npm:^1.3.0"
+ es-object-atoms: "npm:^1.1.1"
+ function-bind: "npm:^1.1.2"
+ get-proto: "npm:^1.0.1"
+ gopd: "npm:^1.2.0"
+ has-symbols: "npm:^1.1.0"
+ hasown: "npm:^2.0.2"
+ math-intrinsics: "npm:^1.1.0"
+ checksum: 10c0/52c81808af9a8130f581e6a6a83e1ba4a9f703359e7a438d1369a5267a25412322f03dcbd7c549edaef0b6214a0630a28511d7df0130c93cfd380f4fa0b5b66a
+ languageName: node
+ linkType: hard
+
+"get-proto@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "get-proto@npm:1.0.1"
+ dependencies:
+ dunder-proto: "npm:^1.0.1"
+ es-object-atoms: "npm:^1.0.0"
+ checksum: 10c0/9224acb44603c5526955e83510b9da41baf6ae73f7398875fba50edc5e944223a89c4a72b070fcd78beb5f7bdda58ecb6294adc28f7acfc0da05f76a2399643c
+ languageName: node
+ linkType: hard
+
+"glob-parent@npm:~5.1.2":
+ version: 5.1.2
+ resolution: "glob-parent@npm:5.1.2"
+ dependencies:
+ is-glob: "npm:^4.0.1"
+ checksum: 10c0/cab87638e2112bee3f839ef5f6e0765057163d39c66be8ec1602f3823da4692297ad4e972de876ea17c44d652978638d2fd583c6713d0eb6591706825020c9ee
+ languageName: node
+ linkType: hard
+
+"glob@npm:^10.2.2, glob@npm:^10.3.10, glob@npm:^10.3.7":
+ version: 10.4.5
+ resolution: "glob@npm:10.4.5"
+ dependencies:
+ foreground-child: "npm:^3.1.0"
+ jackspeak: "npm:^3.1.2"
+ minimatch: "npm:^9.0.4"
+ minipass: "npm:^7.1.2"
+ package-json-from-dist: "npm:^1.0.0"
+ path-scurry: "npm:^1.11.1"
+ bin:
+ glob: dist/esm/bin.mjs
+ checksum: 10c0/19a9759ea77b8e3ca0a43c2f07ecddc2ad46216b786bb8f993c445aee80d345925a21e5280c7b7c6c59e860a0154b84e4b2b60321fea92cd3c56b4a7489f160e
+ languageName: node
+ linkType: hard
+
+"glob@npm:^11.0.0":
+ version: 11.0.1
+ resolution: "glob@npm:11.0.1"
+ dependencies:
+ foreground-child: "npm:^3.1.0"
+ jackspeak: "npm:^4.0.1"
+ minimatch: "npm:^10.0.0"
+ minipass: "npm:^7.1.2"
+ package-json-from-dist: "npm:^1.0.0"
+ path-scurry: "npm:^2.0.0"
+ bin:
+ glob: dist/esm/bin.mjs
+ checksum: 10c0/2b32588be52e9e90f914c7d8dec32f3144b81b84054b0f70e9adfebf37cd7014570489f2a79d21f7801b9a4bd4cca94f426966bfd00fb64a5b705cfe10da3a03
+ languageName: node
+ linkType: hard
+
+"gopd@npm:^1.2.0":
+ version: 1.2.0
+ resolution: "gopd@npm:1.2.0"
+ checksum: 10c0/50fff1e04ba2b7737c097358534eacadad1e68d24cccee3272e04e007bed008e68d2614f3987788428fd192a5ae3889d08fb2331417e4fc4a9ab366b2043cead
+ languageName: node
+ linkType: hard
+
+"graceful-fs@npm:^4.2.6":
+ version: 4.2.11
+ resolution: "graceful-fs@npm:4.2.11"
+ checksum: 10c0/386d011a553e02bc594ac2ca0bd6d9e4c22d7fa8cfbfc448a6d148c59ea881b092db9dbe3547ae4b88e55f1b01f7c4a2ecc53b310c042793e63aa44cf6c257f2
+ languageName: node
+ linkType: hard
+
+"has-flag@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "has-flag@npm:3.0.0"
+ checksum: 10c0/1c6c83b14b8b1b3c25b0727b8ba3e3b647f99e9e6e13eb7322107261de07a4c1be56fc0d45678fc376e09772a3a1642ccdaf8fc69bdf123b6c086598397ce473
+ languageName: node
+ linkType: hard
+
+"has-symbols@npm:^1.0.3, has-symbols@npm:^1.1.0":
+ version: 1.1.0
+ resolution: "has-symbols@npm:1.1.0"
+ checksum: 10c0/dde0a734b17ae51e84b10986e651c664379018d10b91b6b0e9b293eddb32f0f069688c841fb40f19e9611546130153e0a2a48fd7f512891fb000ddfa36f5a20e
+ languageName: node
+ linkType: hard
+
+"has-tostringtag@npm:^1.0.2":
+ version: 1.0.2
+ resolution: "has-tostringtag@npm:1.0.2"
+ dependencies:
+ has-symbols: "npm:^1.0.3"
+ checksum: 10c0/a8b166462192bafe3d9b6e420a1d581d93dd867adb61be223a17a8d6dad147aa77a8be32c961bb2f27b3ef893cae8d36f564ab651f5e9b7938ae86f74027c48c
+ languageName: node
+ linkType: hard
+
+"hasown@npm:^2.0.2":
+ version: 2.0.2
+ resolution: "hasown@npm:2.0.2"
+ dependencies:
+ function-bind: "npm:^1.1.2"
+ checksum: 10c0/3769d434703b8ac66b209a4cca0737519925bbdb61dd887f93a16372b14694c63ff4e797686d87c90f08168e81082248b9b028bad60d4da9e0d1148766f56eb9
+ languageName: node
+ linkType: hard
+
+"html-encoding-sniffer@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "html-encoding-sniffer@npm:4.0.0"
+ dependencies:
+ whatwg-encoding: "npm:^3.1.1"
+ checksum: 10c0/523398055dc61ac9b34718a719cb4aa691e4166f29187e211e1607de63dc25ac7af52ca7c9aead0c4b3c0415ffecb17326396e1202e2e86ff4bca4c0ee4c6140
+ languageName: node
+ linkType: hard
+
+"http-cache-semantics@npm:^4.1.1":
+ version: 4.1.1
+ resolution: "http-cache-semantics@npm:4.1.1"
+ checksum: 10c0/ce1319b8a382eb3cbb4a37c19f6bfe14e5bb5be3d09079e885e8c513ab2d3cd9214902f8a31c9dc4e37022633ceabfc2d697405deeaf1b8f3552bb4ed996fdfc
+ languageName: node
+ linkType: hard
+
+"http-errors@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "http-errors@npm:2.0.0"
+ dependencies:
+ depd: "npm:2.0.0"
+ inherits: "npm:2.0.4"
+ setprototypeof: "npm:1.2.0"
+ statuses: "npm:2.0.1"
+ toidentifier: "npm:1.0.1"
+ checksum: 10c0/fc6f2715fe188d091274b5ffc8b3657bd85c63e969daa68ccb77afb05b071a4b62841acb7a21e417b5539014dff2ebf9550f0b14a9ff126f2734a7c1387f8e19
+ languageName: node
+ linkType: hard
+
+"http-proxy-agent@npm:^7.0.0, http-proxy-agent@npm:^7.0.2":
+ version: 7.0.2
+ resolution: "http-proxy-agent@npm:7.0.2"
+ dependencies:
+ agent-base: "npm:^7.1.0"
+ debug: "npm:^4.3.4"
+ checksum: 10c0/4207b06a4580fb85dd6dff521f0abf6db517489e70863dca1a0291daa7f2d3d2d6015a57bd702af068ea5cf9f1f6ff72314f5f5b4228d299c0904135d2aef921
+ languageName: node
+ linkType: hard
+
+"https-proxy-agent@npm:^7.0.1, https-proxy-agent@npm:^7.0.6":
+ version: 7.0.6
+ resolution: "https-proxy-agent@npm:7.0.6"
+ dependencies:
+ agent-base: "npm:^7.1.2"
+ debug: "npm:4"
+ checksum: 10c0/f729219bc735edb621fa30e6e84e60ee5d00802b8247aac0d7b79b0bd6d4b3294737a337b93b86a0bd9e68099d031858a39260c976dc14cdbba238ba1f8779ac
+ languageName: node
+ linkType: hard
+
+"iconv-lite@npm:0.6.3, iconv-lite@npm:^0.6.2":
+ version: 0.6.3
+ resolution: "iconv-lite@npm:0.6.3"
+ dependencies:
+ safer-buffer: "npm:>= 2.1.2 < 3.0.0"
+ checksum: 10c0/98102bc66b33fcf5ac044099d1257ba0b7ad5e3ccd3221f34dd508ab4070edff183276221684e1e0555b145fce0850c9f7d2b60a9fcac50fbb4ea0d6e845a3b1
+ languageName: node
+ linkType: hard
+
+"ieee754@npm:^1.2.1":
+ version: 1.2.1
+ resolution: "ieee754@npm:1.2.1"
+ checksum: 10c0/b0782ef5e0935b9f12883a2e2aa37baa75da6e66ce6515c168697b42160807d9330de9a32ec1ed73149aea02e0d822e572bca6f1e22bdcbd2149e13b050b17bb
+ languageName: node
+ linkType: hard
+
+"ignore-by-default@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "ignore-by-default@npm:1.0.1"
+ checksum: 10c0/9ab6e70e80f7cc12735def7ecb5527cfa56ab4e1152cd64d294522827f2dcf1f6d85531241537dc3713544e88dd888f65cb3c49c7b2cddb9009087c75274e533
+ languageName: node
+ linkType: hard
+
+"imurmurhash@npm:^0.1.4":
+ version: 0.1.4
+ resolution: "imurmurhash@npm:0.1.4"
+ checksum: 10c0/8b51313850dd33605c6c9d3fd9638b714f4c4c40250cff658209f30d40da60f78992fb2df5dabee4acf589a6a82bbc79ad5486550754bd9ec4e3fc0d4a57d6a6
+ languageName: node
+ linkType: hard
+
+"inherits@npm:2.0.4, inherits@npm:^2.0.3, inherits@npm:^2.0.4":
+ version: 2.0.4
+ resolution: "inherits@npm:2.0.4"
+ checksum: 10c0/4e531f648b29039fb7426fb94075e6545faa1eb9fe83c29f0b6d9e7263aceb4289d2d4557db0d428188eeb449cc7c5e77b0a0b2c4e248ff2a65933a0dee49ef2
+ languageName: node
+ linkType: hard
+
+"ip-address@npm:^9.0.5":
+ version: 9.0.5
+ resolution: "ip-address@npm:9.0.5"
+ dependencies:
+ jsbn: "npm:1.1.0"
+ sprintf-js: "npm:^1.1.3"
+ checksum: 10c0/331cd07fafcb3b24100613e4b53e1a2b4feab11e671e655d46dc09ee233da5011284d09ca40c4ecbdfe1d0004f462958675c224a804259f2f78d2465a87824bc
+ languageName: node
+ linkType: hard
+
+"ipaddr.js@npm:^2.1.0":
+ version: 2.2.0
+ resolution: "ipaddr.js@npm:2.2.0"
+ checksum: 10c0/e4ee875dc1bd92ac9d27e06cfd87cdb63ca786ff9fd7718f1d4f7a8ef27db6e5d516128f52d2c560408cbb75796ac2f83ead669e73507c86282d45f84c5abbb6
+ languageName: node
+ linkType: hard
+
+"is-binary-path@npm:~2.1.0":
+ version: 2.1.0
+ resolution: "is-binary-path@npm:2.1.0"
+ dependencies:
+ binary-extensions: "npm:^2.0.0"
+ checksum: 10c0/a16eaee59ae2b315ba36fad5c5dcaf8e49c3e27318f8ab8fa3cdb8772bf559c8d1ba750a589c2ccb096113bb64497084361a25960899cb6172a6925ab6123d38
+ languageName: node
+ linkType: hard
+
+"is-buffer@npm:^2.0.5":
+ version: 2.0.5
+ resolution: "is-buffer@npm:2.0.5"
+ checksum: 10c0/e603f6fced83cf94c53399cff3bda1a9f08e391b872b64a73793b0928be3e5f047f2bcece230edb7632eaea2acdbfcb56c23b33d8a20c820023b230f1485679a
+ languageName: node
+ linkType: hard
+
+"is-core-module@npm:^2.16.0":
+ version: 2.16.1
+ resolution: "is-core-module@npm:2.16.1"
+ dependencies:
+ hasown: "npm:^2.0.2"
+ checksum: 10c0/898443c14780a577e807618aaae2b6f745c8538eca5c7bc11388a3f2dc6de82b9902bcc7eb74f07be672b11bbe82dd6a6edded44a00cb3d8f933d0459905eedd
+ languageName: node
+ linkType: hard
+
+"is-expression@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "is-expression@npm:4.0.0"
+ dependencies:
+ acorn: "npm:^7.1.1"
+ object-assign: "npm:^4.1.1"
+ checksum: 10c0/541831d39d3e7bfc8cecd966d6b0f3c0e6d9055342f17b634fb23e74f51ce90f1bfc3cf231c722fe003a61e8d4f0b9e07244fdaba57f4fc70a163c74006fd5a0
+ languageName: node
+ linkType: hard
+
+"is-extglob@npm:^2.1.1":
+ version: 2.1.1
+ resolution: "is-extglob@npm:2.1.1"
+ checksum: 10c0/5487da35691fbc339700bbb2730430b07777a3c21b9ebaecb3072512dfd7b4ba78ac2381a87e8d78d20ea08affb3f1971b4af629173a6bf435ff8a4c47747912
+ languageName: node
+ linkType: hard
+
+"is-fullwidth-code-point@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "is-fullwidth-code-point@npm:3.0.0"
+ checksum: 10c0/bb11d825e049f38e04c06373a8d72782eee0205bda9d908cc550ccb3c59b99d750ff9537982e01733c1c94a58e35400661f57042158ff5e8f3e90cf936daf0fc
+ languageName: node
+ linkType: hard
+
+"is-glob@npm:^4.0.1, is-glob@npm:~4.0.1":
+ version: 4.0.3
+ resolution: "is-glob@npm:4.0.3"
+ dependencies:
+ is-extglob: "npm:^2.1.1"
+ checksum: 10c0/17fb4014e22be3bbecea9b2e3a76e9e34ff645466be702f1693e8f1ee1adac84710d0be0bd9f967d6354036fd51ab7c2741d954d6e91dae6bb69714de92c197a
+ languageName: node
+ linkType: hard
+
+"is-number@npm:^7.0.0":
+ version: 7.0.0
+ resolution: "is-number@npm:7.0.0"
+ checksum: 10c0/b4686d0d3053146095ccd45346461bc8e53b80aeb7671cc52a4de02dbbf7dc0d1d2a986e2fe4ae206984b4d34ef37e8b795ebc4f4295c978373e6575e295d811
+ languageName: node
+ linkType: hard
+
+"is-potential-custom-element-name@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "is-potential-custom-element-name@npm:1.0.1"
+ checksum: 10c0/b73e2f22bc863b0939941d369486d308b43d7aef1f9439705e3582bfccaa4516406865e32c968a35f97a99396dac84e2624e67b0a16b0a15086a785e16ce7db9
+ languageName: node
+ linkType: hard
+
+"is-promise@npm:^2.0.0":
+ version: 2.2.2
+ resolution: "is-promise@npm:2.2.2"
+ checksum: 10c0/2dba959812380e45b3df0fb12e7cb4d4528c989c7abb03ececb1d1fd6ab1cbfee956ca9daa587b9db1d8ac3c1e5738cf217bdb3dfd99df8c691be4c00ae09069
+ languageName: node
+ linkType: hard
+
+"is-regex@npm:^1.0.3":
+ version: 1.2.1
+ resolution: "is-regex@npm:1.2.1"
+ dependencies:
+ call-bound: "npm:^1.0.2"
+ gopd: "npm:^1.2.0"
+ has-tostringtag: "npm:^1.0.2"
+ hasown: "npm:^2.0.2"
+ checksum: 10c0/1d3715d2b7889932349241680032e85d0b492cfcb045acb75ffc2c3085e8d561184f1f7e84b6f8321935b4aea39bc9c6ba74ed595b57ce4881a51dfdbc214e04
+ languageName: node
+ linkType: hard
+
+"isexe@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "isexe@npm:2.0.0"
+ checksum: 10c0/228cfa503fadc2c31596ab06ed6aa82c9976eec2bfd83397e7eaf06d0ccf42cd1dfd6743bf9aeb01aebd4156d009994c5f76ea898d2832c1fe342da923ca457d
+ languageName: node
+ linkType: hard
+
+"isexe@npm:^3.1.1":
+ version: 3.1.1
+ resolution: "isexe@npm:3.1.1"
+ checksum: 10c0/9ec257654093443eb0a528a9c8cbba9c0ca7616ccb40abd6dde7202734d96bb86e4ac0d764f0f8cd965856aacbff2f4ce23e730dc19dfb41e3b0d865ca6fdcc7
+ languageName: node
+ linkType: hard
+
+"jackspeak@npm:^3.1.2":
+ version: 3.4.3
+ resolution: "jackspeak@npm:3.4.3"
+ dependencies:
+ "@isaacs/cliui": "npm:^8.0.2"
+ "@pkgjs/parseargs": "npm:^0.11.0"
+ dependenciesMeta:
+ "@pkgjs/parseargs":
+ optional: true
+ checksum: 10c0/6acc10d139eaefdbe04d2f679e6191b3abf073f111edf10b1de5302c97ec93fffeb2fdd8681ed17f16268aa9dd4f8c588ed9d1d3bffbbfa6e8bf897cbb3149b9
+ languageName: node
+ linkType: hard
+
+"jackspeak@npm:^4.0.1":
+ version: 4.1.0
+ resolution: "jackspeak@npm:4.1.0"
+ dependencies:
+ "@isaacs/cliui": "npm:^8.0.2"
+ checksum: 10c0/08a6a24a366c90b83aef3ad6ec41dcaaa65428ffab8d80bc7172add0fbb8b134a34f415ad288b2a6fbd406526e9a62abdb40ed4f399fbe00cb45c44056d4dce0
+ languageName: node
+ linkType: hard
+
+"js-stringify@npm:^1.0.2":
+ version: 1.0.2
+ resolution: "js-stringify@npm:1.0.2"
+ checksum: 10c0/a450c04fde3a7e1c27f1c3c4300433f8d79322f9e3c2e76266843cef8c0b5a69b5f11b5f173212b2f15f2df09e068ef7ddf46ef775e2486f3006a6f4e912578d
+ languageName: node
+ linkType: hard
+
+"jsbn@npm:1.1.0":
+ version: 1.1.0
+ resolution: "jsbn@npm:1.1.0"
+ checksum: 10c0/4f907fb78d7b712e11dea8c165fe0921f81a657d3443dde75359ed52eb2b5d33ce6773d97985a089f09a65edd80b11cb75c767b57ba47391fee4c969f7215c96
+ languageName: node
+ linkType: hard
+
+"jsdom@npm:^26.0.0":
+ version: 26.0.0
+ resolution: "jsdom@npm:26.0.0"
+ dependencies:
+ cssstyle: "npm:^4.2.1"
+ data-urls: "npm:^5.0.0"
+ decimal.js: "npm:^10.4.3"
+ form-data: "npm:^4.0.1"
+ html-encoding-sniffer: "npm:^4.0.0"
+ http-proxy-agent: "npm:^7.0.2"
+ https-proxy-agent: "npm:^7.0.6"
+ is-potential-custom-element-name: "npm:^1.0.1"
+ nwsapi: "npm:^2.2.16"
+ parse5: "npm:^7.2.1"
+ rrweb-cssom: "npm:^0.8.0"
+ saxes: "npm:^6.0.0"
+ symbol-tree: "npm:^3.2.4"
+ tough-cookie: "npm:^5.0.0"
+ w3c-xmlserializer: "npm:^5.0.0"
+ webidl-conversions: "npm:^7.0.0"
+ whatwg-encoding: "npm:^3.1.1"
+ whatwg-mimetype: "npm:^4.0.0"
+ whatwg-url: "npm:^14.1.0"
+ ws: "npm:^8.18.0"
+ xml-name-validator: "npm:^5.0.0"
+ peerDependencies:
+ canvas: ^3.0.0
+ peerDependenciesMeta:
+ canvas:
+ optional: true
+ checksum: 10c0/e48725ba4027edcfc9bca5799eaec72c6561ecffe3675a8ff87fe9c3541ca4ff9f82b4eff5b3d9c527302da0d859b2f60e9364347a5d42b77f5c76c436c569dc
+ languageName: node
+ linkType: hard
+
+"json-schema-ref-resolver@npm:^2.0.0":
+ version: 2.0.1
+ resolution: "json-schema-ref-resolver@npm:2.0.1"
+ dependencies:
+ dequal: "npm:^2.0.3"
+ checksum: 10c0/3ea894d79dd176b4ef31f1a3b7b335447b854780f2bc49af2918de0502d3eabad1889232a7a72c37f1c7ca429acc2eaad940ca5fd25f8ead044d5fecb00e0378
+ languageName: node
+ linkType: hard
+
+"json-schema-traverse@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "json-schema-traverse@npm:1.0.0"
+ checksum: 10c0/71e30015d7f3d6dc1c316d6298047c8ef98a06d31ad064919976583eb61e1018a60a0067338f0f79cabc00d84af3fcc489bd48ce8a46ea165d9541ba17fb30c6
+ languageName: node
+ linkType: hard
+
+"jstransformer@npm:1.0.0":
+ version: 1.0.0
+ resolution: "jstransformer@npm:1.0.0"
+ dependencies:
+ is-promise: "npm:^2.0.0"
+ promise: "npm:^7.0.1"
+ checksum: 10c0/11f9b4f368a55878dd7973154cd83b0adca27f974d21217728652530775b2bec281e92109de66f0c9e37c76af796d5b76b33f3e38363214a83d102d523a7285b
+ languageName: node
+ linkType: hard
+
+"level-codec@npm:^10.0.0":
+ version: 10.0.0
+ resolution: "level-codec@npm:10.0.0"
+ dependencies:
+ buffer: "npm:^6.0.3"
+ checksum: 10c0/fbe1b86d419c4381cd5159025e37e86ff946b9ec39ca6196474eae6ca39e77128cf224fbae61a07293e41df8a4732da5664defe713d8830e0eccd27cfdb51d01
+ languageName: node
+ linkType: hard
+
+"level-concat-iterator@npm:^3.0.0":
+ version: 3.1.0
+ resolution: "level-concat-iterator@npm:3.1.0"
+ dependencies:
+ catering: "npm:^2.1.0"
+ checksum: 10c0/7bb1b8e991a179de2fecfd38d2c34544a139e1228cb730f3024ef11dcbd514cc89be30b02a2a81ef4e16b0c1553f604378f67302ea23868d98f055f9fa241ae4
+ languageName: node
+ linkType: hard
+
+"level-errors@npm:^3.0.0, level-errors@npm:^3.0.1":
+ version: 3.0.1
+ resolution: "level-errors@npm:3.0.1"
+ checksum: 10c0/105d39bacd450c491bf3e414efb63dd31e236aae0fec12d6c66c7b0564ac03e67b190b605f9cd6cb9b56f106a870402723b67cf1e899d20000b9527a2866aab8
+ languageName: node
+ linkType: hard
+
+"level-iterator-stream@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "level-iterator-stream@npm:5.0.0"
+ dependencies:
+ inherits: "npm:^2.0.4"
+ readable-stream: "npm:^3.4.0"
+ checksum: 10c0/0c32c884789d8993b3d33106fd91aa596475b50f20f6333adefcdccfc9107278528e7262550e05ac369e53f7a9017061dc2a1fe20ccffb9e1f3c026acaa2d54a
+ languageName: node
+ linkType: hard
+
+"level-supports@npm:^2.0.1":
+ version: 2.1.0
+ resolution: "level-supports@npm:2.1.0"
+ checksum: 10c0/60481dd403234c64e2c01ed2aafdc75250ddd49d770f75ebef3f92a2a5b2271bf774858bfd8c47cfae3955855f9ff9dd536683d6cffb7c085cd0e57245c4c039
+ languageName: node
+ linkType: hard
+
+"leveldown@npm:^6.0.0":
+ version: 6.1.1
+ resolution: "leveldown@npm:6.1.1"
+ dependencies:
+ abstract-leveldown: "npm:^7.2.0"
+ napi-macros: "npm:~2.0.0"
+ node-gyp: "npm:latest"
+ node-gyp-build: "npm:^4.3.0"
+ checksum: 10c0/a637b19ca20525c9d947e91a1654bd0d3e94568130f1c82d2c0bf395fd8c9278a27050901db2079c285e0784f0ff30b76ee8cd77ca05cbd70dd8a635f8aea803
+ languageName: node
+ linkType: hard
+
+"levelup@npm:^5.0.0":
+ version: 5.1.1
+ resolution: "levelup@npm:5.1.1"
+ dependencies:
+ catering: "npm:^2.0.0"
+ deferred-leveldown: "npm:^7.0.0"
+ level-errors: "npm:^3.0.1"
+ level-iterator-stream: "npm:^5.0.0"
+ level-supports: "npm:^2.0.1"
+ queue-microtask: "npm:^1.2.3"
+ checksum: 10c0/d9c9a13f168b8a0e2d13873915219c63db8cbc0884e169c23d39826c575bf7fe255f9fb77df1b7ac74ea7d330c922331c88f6cb0ba7c75fbd351f73957cf349d
+ languageName: node
+ linkType: hard
+
+"light-my-request@npm:^6.0.0":
+ version: 6.6.0
+ resolution: "light-my-request@npm:6.6.0"
+ dependencies:
+ cookie: "npm:^1.0.1"
+ process-warning: "npm:^4.0.0"
+ set-cookie-parser: "npm:^2.6.0"
+ checksum: 10c0/1440853cd3822ab83fbb1be4456099082dec8e9e3a4ea35c9d8d7d17a7ab98c83ad0a4c39a73a8c2b31b9ca70c57506e5b7a929495c149463ca0daca0d90dc6f
+ languageName: node
+ linkType: hard
+
+"lru-cache@npm:^10.0.1, lru-cache@npm:^10.2.0, lru-cache@npm:^10.4.3":
+ version: 10.4.3
+ resolution: "lru-cache@npm:10.4.3"
+ checksum: 10c0/ebd04fbca961e6c1d6c0af3799adcc966a1babe798f685bb84e6599266599cd95d94630b10262f5424539bc4640107e8a33aa28585374abf561d30d16f4b39fb
+ languageName: node
+ linkType: hard
+
+"lru-cache@npm:^11.0.0":
+ version: 11.0.2
+ resolution: "lru-cache@npm:11.0.2"
+ checksum: 10c0/c993b8e06ead0b24b969c1dbb5b301716aed66e320e9014a80012f5febe280b438f28ff50046b2c55ff404e889351ccb332ff91f8dd175a21f5eae80e3fb155f
+ languageName: node
+ linkType: hard
+
+"make-fetch-happen@npm:^14.0.3":
+ version: 14.0.3
+ resolution: "make-fetch-happen@npm:14.0.3"
+ dependencies:
+ "@npmcli/agent": "npm:^3.0.0"
+ cacache: "npm:^19.0.1"
+ http-cache-semantics: "npm:^4.1.1"
+ minipass: "npm:^7.0.2"
+ minipass-fetch: "npm:^4.0.0"
+ minipass-flush: "npm:^1.0.5"
+ minipass-pipeline: "npm:^1.2.4"
+ negotiator: "npm:^1.0.0"
+ proc-log: "npm:^5.0.0"
+ promise-retry: "npm:^2.0.1"
+ ssri: "npm:^12.0.0"
+ checksum: 10c0/c40efb5e5296e7feb8e37155bde8eb70bc57d731b1f7d90e35a092fde403d7697c56fb49334d92d330d6f1ca29a98142036d6480a12681133a0a1453164cb2f0
+ languageName: node
+ linkType: hard
+
+"math-intrinsics@npm:^1.1.0":
+ version: 1.1.0
+ resolution: "math-intrinsics@npm:1.1.0"
+ checksum: 10c0/7579ff94e899e2f76ab64491d76cf606274c874d8f2af4a442c016bd85688927fcfca157ba6bf74b08e9439dc010b248ce05b96cc7c126a354c3bae7fcb48b7f
+ languageName: node
+ linkType: hard
+
+"mime-db@npm:1.52.0":
+ version: 1.52.0
+ resolution: "mime-db@npm:1.52.0"
+ checksum: 10c0/0557a01deebf45ac5f5777fe7740b2a5c309c6d62d40ceab4e23da9f821899ce7a900b7ac8157d4548ddbb7beffe9abc621250e6d182b0397ec7f10c7b91a5aa
+ languageName: node
+ linkType: hard
+
+"mime-types@npm:^2.1.12":
+ version: 2.1.35
+ resolution: "mime-types@npm:2.1.35"
+ dependencies:
+ mime-db: "npm:1.52.0"
+ checksum: 10c0/82fb07ec56d8ff1fc999a84f2f217aa46cb6ed1033fefaabd5785b9a974ed225c90dc72fff460259e66b95b73648596dbcc50d51ed69cdf464af2d237d3149b2
+ languageName: node
+ linkType: hard
+
+"mime@npm:^3":
+ version: 3.0.0
+ resolution: "mime@npm:3.0.0"
+ bin:
+ mime: cli.js
+ checksum: 10c0/402e792a8df1b2cc41cb77f0dcc46472b7944b7ec29cb5bbcd398624b6b97096728f1239766d3fdeb20551dd8d94738344c195a6ea10c4f906eb0356323b0531
+ languageName: node
+ linkType: hard
+
+"minimatch@npm:^10.0.0":
+ version: 10.0.1
+ resolution: "minimatch@npm:10.0.1"
+ dependencies:
+ brace-expansion: "npm:^2.0.1"
+ checksum: 10c0/e6c29a81fe83e1877ad51348306be2e8aeca18c88fdee7a99df44322314279e15799e41d7cb274e4e8bb0b451a3bc622d6182e157dfa1717d6cda75e9cd8cd5d
+ languageName: node
+ linkType: hard
+
+"minimatch@npm:^3.1.2":
+ version: 3.1.2
+ resolution: "minimatch@npm:3.1.2"
+ dependencies:
+ brace-expansion: "npm:^1.1.7"
+ checksum: 10c0/0262810a8fc2e72cca45d6fd86bd349eee435eb95ac6aa45c9ea2180e7ee875ef44c32b55b5973ceabe95ea12682f6e3725cbb63d7a2d1da3ae1163c8b210311
+ languageName: node
+ linkType: hard
+
+"minimatch@npm:^9.0.4":
+ version: 9.0.5
+ resolution: "minimatch@npm:9.0.5"
+ dependencies:
+ brace-expansion: "npm:^2.0.1"
+ checksum: 10c0/de96cf5e35bdf0eab3e2c853522f98ffbe9a36c37797778d2665231ec1f20a9447a7e567cb640901f89e4daaa95ae5d70c65a9e8aa2bb0019b6facbc3c0575ed
+ languageName: node
+ linkType: hard
+
+"minipass-collect@npm:^2.0.1":
+ version: 2.0.1
+ resolution: "minipass-collect@npm:2.0.1"
+ dependencies:
+ minipass: "npm:^7.0.3"
+ checksum: 10c0/5167e73f62bb74cc5019594709c77e6a742051a647fe9499abf03c71dca75515b7959d67a764bdc4f8b361cf897fbf25e2d9869ee039203ed45240f48b9aa06e
+ languageName: node
+ linkType: hard
+
+"minipass-fetch@npm:^4.0.0":
+ version: 4.0.1
+ resolution: "minipass-fetch@npm:4.0.1"
+ dependencies:
+ encoding: "npm:^0.1.13"
+ minipass: "npm:^7.0.3"
+ minipass-sized: "npm:^1.0.3"
+ minizlib: "npm:^3.0.1"
+ dependenciesMeta:
+ encoding:
+ optional: true
+ checksum: 10c0/a3147b2efe8e078c9bf9d024a0059339c5a09c5b1dded6900a219c218cc8b1b78510b62dae556b507304af226b18c3f1aeb1d48660283602d5b6586c399eed5c
+ languageName: node
+ linkType: hard
+
+"minipass-flush@npm:^1.0.5":
+ version: 1.0.5
+ resolution: "minipass-flush@npm:1.0.5"
+ dependencies:
+ minipass: "npm:^3.0.0"
+ checksum: 10c0/2a51b63feb799d2bb34669205eee7c0eaf9dce01883261a5b77410c9408aa447e478efd191b4de6fc1101e796ff5892f8443ef20d9544385819093dbb32d36bd
+ languageName: node
+ linkType: hard
+
+"minipass-pipeline@npm:^1.2.4":
+ version: 1.2.4
+ resolution: "minipass-pipeline@npm:1.2.4"
+ dependencies:
+ minipass: "npm:^3.0.0"
+ checksum: 10c0/cbda57cea20b140b797505dc2cac71581a70b3247b84480c1fed5ca5ba46c25ecc25f68bfc9e6dcb1a6e9017dab5c7ada5eab73ad4f0a49d84e35093e0c643f2
+ languageName: node
+ linkType: hard
+
+"minipass-sized@npm:^1.0.3":
+ version: 1.0.3
+ resolution: "minipass-sized@npm:1.0.3"
+ dependencies:
+ minipass: "npm:^3.0.0"
+ checksum: 10c0/298f124753efdc745cfe0f2bdfdd81ba25b9f4e753ca4a2066eb17c821f25d48acea607dfc997633ee5bf7b6dfffb4eee4f2051eb168663f0b99fad2fa4829cb
+ languageName: node
+ linkType: hard
+
+"minipass@npm:^3.0.0":
+ version: 3.3.6
+ resolution: "minipass@npm:3.3.6"
+ dependencies:
+ yallist: "npm:^4.0.0"
+ checksum: 10c0/a114746943afa1dbbca8249e706d1d38b85ed1298b530f5808ce51f8e9e941962e2a5ad2e00eae7dd21d8a4aae6586a66d4216d1a259385e9d0358f0c1eba16c
+ languageName: node
+ linkType: hard
+
+"minipass@npm:^5.0.0 || ^6.0.2 || ^7.0.0, minipass@npm:^7.0.2, minipass@npm:^7.0.3, minipass@npm:^7.0.4, minipass@npm:^7.1.2":
+ version: 7.1.2
+ resolution: "minipass@npm:7.1.2"
+ checksum: 10c0/b0fd20bb9fb56e5fa9a8bfac539e8915ae07430a619e4b86ff71f5fc757ef3924b23b2c4230393af1eda647ed3d75739e4e0acb250a6b1eb277cf7f8fe449557
+ languageName: node
+ linkType: hard
+
+"minizlib@npm:^3.0.1":
+ version: 3.0.1
+ resolution: "minizlib@npm:3.0.1"
+ dependencies:
+ minipass: "npm:^7.0.4"
+ rimraf: "npm:^5.0.5"
+ checksum: 10c0/82f8bf70da8af656909a8ee299d7ed3b3372636749d29e105f97f20e88971be31f5ed7642f2e898f00283b68b701cc01307401cdc209b0efc5dd3818220e5093
+ languageName: node
+ linkType: hard
+
+"mkdirp@npm:^3.0.1":
+ version: 3.0.1
+ resolution: "mkdirp@npm:3.0.1"
+ bin:
+ mkdirp: dist/cjs/src/bin.js
+ checksum: 10c0/9f2b975e9246351f5e3a40dcfac99fcd0baa31fbfab615fe059fb11e51f10e4803c63de1f384c54d656e4db31d000e4767e9ef076a22e12a641357602e31d57d
+ languageName: node
+ linkType: hard
+
+"ms@npm:^2.1.3":
+ version: 2.1.3
+ resolution: "ms@npm:2.1.3"
+ checksum: 10c0/d924b57e7312b3b63ad21fc5b3dc0af5e78d61a1fc7cfb5457edaf26326bf62be5307cc87ffb6862ef1c2b33b0233cdb5d4f01c4c958cc0d660948b65a287a48
+ languageName: node
+ linkType: hard
+
+"napi-macros@npm:~2.0.0":
+ version: 2.0.0
+ resolution: "napi-macros@npm:2.0.0"
+ checksum: 10c0/583ef5084b43e49a12488cdcd4c5142f11e114e249b359161579b64f06776ed523c209d96e4ee2689e2e824c92445d0f529d817cc153f7cec549210296ec4be6
+ languageName: node
+ linkType: hard
+
+"negotiator@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "negotiator@npm:1.0.0"
+ checksum: 10c0/4c559dd52669ea48e1914f9d634227c561221dd54734070791f999c52ed0ff36e437b2e07d5c1f6e32909fc625fe46491c16e4a8f0572567d4dd15c3a4fda04b
+ languageName: node
+ linkType: hard
+
+"node-gyp-build@npm:^4.3.0":
+ version: 4.8.4
+ resolution: "node-gyp-build@npm:4.8.4"
+ bin:
+ node-gyp-build: bin.js
+ node-gyp-build-optional: optional.js
+ node-gyp-build-test: build-test.js
+ checksum: 10c0/444e189907ece2081fe60e75368784f7782cfddb554b60123743dfb89509df89f1f29c03bbfa16b3a3e0be3f48799a4783f487da6203245fa5bed239ba7407e1
+ languageName: node
+ linkType: hard
+
+"node-gyp@npm:latest":
+ version: 11.1.0
+ resolution: "node-gyp@npm:11.1.0"
+ dependencies:
+ env-paths: "npm:^2.2.0"
+ exponential-backoff: "npm:^3.1.1"
+ glob: "npm:^10.3.10"
+ graceful-fs: "npm:^4.2.6"
+ make-fetch-happen: "npm:^14.0.3"
+ nopt: "npm:^8.0.0"
+ proc-log: "npm:^5.0.0"
+ semver: "npm:^7.3.5"
+ tar: "npm:^7.4.3"
+ which: "npm:^5.0.0"
+ bin:
+ node-gyp: bin/node-gyp.js
+ checksum: 10c0/c38977ce502f1ea41ba2b8721bd5b49bc3d5b3f813eabfac8414082faf0620ccb5211e15c4daecc23ed9f5e3e9cc4da00e575a0bcfc2a95a069294f2afa1e0cd
+ languageName: node
+ linkType: hard
+
+"nodemon@npm:^3.0.1":
+ version: 3.1.9
+ resolution: "nodemon@npm:3.1.9"
+ dependencies:
+ chokidar: "npm:^3.5.2"
+ debug: "npm:^4"
+ ignore-by-default: "npm:^1.0.1"
+ minimatch: "npm:^3.1.2"
+ pstree.remy: "npm:^1.1.8"
+ semver: "npm:^7.5.3"
+ simple-update-notifier: "npm:^2.0.0"
+ supports-color: "npm:^5.5.0"
+ touch: "npm:^3.1.0"
+ undefsafe: "npm:^2.0.5"
+ bin:
+ nodemon: bin/nodemon.js
+ checksum: 10c0/dbd6fab40e6be18929ac02366bfdc2203c1688f45186d9468f6bdeb192f0666d044500dfb729d825526715196456e6a17509a13de019b058cbce428d72d04eb5
+ languageName: node
+ linkType: hard
+
+"nopt@npm:^8.0.0":
+ version: 8.1.0
+ resolution: "nopt@npm:8.1.0"
+ dependencies:
+ abbrev: "npm:^3.0.0"
+ bin:
+ nopt: bin/nopt.js
+ checksum: 10c0/62e9ea70c7a3eb91d162d2c706b6606c041e4e7b547cbbb48f8b3695af457dd6479904d7ace600856bf923dd8d1ed0696f06195c8c20f02ac87c1da0e1d315ef
+ languageName: node
+ linkType: hard
+
+"normalize-path@npm:^3.0.0, normalize-path@npm:~3.0.0":
+ version: 3.0.0
+ resolution: "normalize-path@npm:3.0.0"
+ checksum: 10c0/e008c8142bcc335b5e38cf0d63cfd39d6cf2d97480af9abdbe9a439221fd4d749763bab492a8ee708ce7a194bb00c9da6d0a115018672310850489137b3da046
+ languageName: node
+ linkType: hard
+
+"nwsapi@npm:^2.2.16":
+ version: 2.2.16
+ resolution: "nwsapi@npm:2.2.16"
+ checksum: 10c0/0aa0637f4d51043d0183d994e08336bae996b03b42984381bf09ebdf3ff4909c018eda6b2a8aba0a08f3ea8303db8a0dad0608b38dc0bff15fd87017286ae21a
+ languageName: node
+ linkType: hard
+
+"object-assign@npm:^4.1.1":
+ version: 4.1.1
+ resolution: "object-assign@npm:4.1.1"
+ checksum: 10c0/1f4df9945120325d041ccf7b86f31e8bcc14e73d29171e37a7903050e96b81323784ec59f93f102ec635bcf6fa8034ba3ea0a8c7e69fa202b87ae3b6cec5a414
+ languageName: node
+ linkType: hard
+
+"on-exit-leak-free@npm:^2.1.0":
+ version: 2.1.2
+ resolution: "on-exit-leak-free@npm:2.1.2"
+ checksum: 10c0/faea2e1c9d696ecee919026c32be8d6a633a7ac1240b3b87e944a380e8a11dc9c95c4a1f8fb0568de7ab8db3823e790f12bda45296b1d111e341aad3922a0570
+ languageName: node
+ linkType: hard
+
+"p-map@npm:^7.0.2":
+ version: 7.0.3
+ resolution: "p-map@npm:7.0.3"
+ checksum: 10c0/46091610da2b38ce47bcd1d8b4835a6fa4e832848a6682cf1652bc93915770f4617afc844c10a77d1b3e56d2472bb2d5622353fa3ead01a7f42b04fc8e744a5c
+ languageName: node
+ linkType: hard
+
+"package-json-from-dist@npm:^1.0.0":
+ version: 1.0.1
+ resolution: "package-json-from-dist@npm:1.0.1"
+ checksum: 10c0/62ba2785eb655fec084a257af34dbe24292ab74516d6aecef97ef72d4897310bc6898f6c85b5cd22770eaa1ce60d55a0230e150fb6a966e3ecd6c511e23d164b
+ languageName: node
+ linkType: hard
+
+"parse5@npm:^7.2.1":
+ version: 7.2.1
+ resolution: "parse5@npm:7.2.1"
+ dependencies:
+ entities: "npm:^4.5.0"
+ checksum: 10c0/829d37a0c709215a887e410a7118d754f8e1afd7edb529db95bc7bbf8045fb0266a7b67801331d8e8d9d073ea75793624ec27ce9ff3b96862c3b9008f4d68e80
+ languageName: node
+ linkType: hard
+
+"path-key@npm:^3.1.0":
+ version: 3.1.1
+ resolution: "path-key@npm:3.1.1"
+ checksum: 10c0/748c43efd5a569c039d7a00a03b58eecd1d75f3999f5a28303d75f521288df4823bc057d8784eb72358b2895a05f29a070bc9f1f17d28226cc4e62494cc58c4c
+ languageName: node
+ linkType: hard
+
+"path-parse@npm:^1.0.7":
+ version: 1.0.7
+ resolution: "path-parse@npm:1.0.7"
+ checksum: 10c0/11ce261f9d294cc7a58d6a574b7f1b935842355ec66fba3c3fd79e0f036462eaf07d0aa95bb74ff432f9afef97ce1926c720988c6a7451d8a584930ae7de86e1
+ languageName: node
+ linkType: hard
+
+"path-scurry@npm:^1.11.1":
+ version: 1.11.1
+ resolution: "path-scurry@npm:1.11.1"
+ dependencies:
+ lru-cache: "npm:^10.2.0"
+ minipass: "npm:^5.0.0 || ^6.0.2 || ^7.0.0"
+ checksum: 10c0/32a13711a2a505616ae1cc1b5076801e453e7aae6ac40ab55b388bb91b9d0547a52f5aaceff710ea400205f18691120d4431e520afbe4266b836fadede15872d
+ languageName: node
+ linkType: hard
+
+"path-scurry@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "path-scurry@npm:2.0.0"
+ dependencies:
+ lru-cache: "npm:^11.0.0"
+ minipass: "npm:^7.1.2"
+ checksum: 10c0/3da4adedaa8e7ef8d6dc4f35a0ff8f05a9b4d8365f2b28047752b62d4c1ad73eec21e37b1579ef2d075920157856a3b52ae8309c480a6f1a8bbe06ff8e52b33c
+ languageName: node
+ linkType: hard
+
+"picomatch@npm:^2.0.4, picomatch@npm:^2.2.1":
+ version: 2.3.1
+ resolution: "picomatch@npm:2.3.1"
+ checksum: 10c0/26c02b8d06f03206fc2ab8d16f19960f2ff9e81a658f831ecb656d8f17d9edc799e8364b1f4a7873e89d9702dff96204be0fa26fe4181f6843f040f819dac4be
+ languageName: node
+ linkType: hard
+
+"pino-abstract-transport@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "pino-abstract-transport@npm:2.0.0"
+ dependencies:
+ split2: "npm:^4.0.0"
+ checksum: 10c0/02c05b8f2ffce0d7c774c8e588f61e8b77de8ccb5f8125afd4a7325c9ea0e6af7fb78168999657712ae843e4462bb70ac550dfd6284f930ee57f17f486f25a9f
+ languageName: node
+ linkType: hard
+
+"pino-std-serializers@npm:^7.0.0":
+ version: 7.0.0
+ resolution: "pino-std-serializers@npm:7.0.0"
+ checksum: 10c0/73e694d542e8de94445a03a98396cf383306de41fd75ecc07085d57ed7a57896198508a0dec6eefad8d701044af21eb27253ccc352586a03cf0d4a0bd25b4133
+ languageName: node
+ linkType: hard
+
+"pino@npm:^9.0.0":
+ version: 9.6.0
+ resolution: "pino@npm:9.6.0"
+ dependencies:
+ atomic-sleep: "npm:^1.0.0"
+ fast-redact: "npm:^3.1.1"
+ on-exit-leak-free: "npm:^2.1.0"
+ pino-abstract-transport: "npm:^2.0.0"
+ pino-std-serializers: "npm:^7.0.0"
+ process-warning: "npm:^4.0.0"
+ quick-format-unescaped: "npm:^4.0.3"
+ real-require: "npm:^0.2.0"
+ safe-stable-stringify: "npm:^2.3.1"
+ sonic-boom: "npm:^4.0.1"
+ thread-stream: "npm:^3.0.0"
+ bin:
+ pino: bin.js
+ checksum: 10c0/bcd1e9d9b301bea13b95689ca9ad7105ae9451928fb6c0b67b3e58c5fe37cea1d40665f3d6641e3da00be0bbc17b89031e67abbc8ea6aac6164f399309fd78e7
+ languageName: node
+ linkType: hard
+
+"prettier@npm:^3.5.2":
+ version: 3.5.2
+ resolution: "prettier@npm:3.5.2"
+ bin:
+ prettier: bin/prettier.cjs
+ checksum: 10c0/d7b597ed33f39c32ace675896ad187f06a3e48dc8a1e80051b5c5f0dae3586d53981704b8fda5ac3b080e6c2e0e197d239131b953702674f044351621ca5e1ac
+ languageName: node
+ linkType: hard
+
+"proc-log@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "proc-log@npm:5.0.0"
+ checksum: 10c0/bbe5edb944b0ad63387a1d5b1911ae93e05ce8d0f60de1035b218cdcceedfe39dbd2c697853355b70f1a090f8f58fe90da487c85216bf9671f9499d1a897e9e3
+ languageName: node
+ linkType: hard
+
+"process-warning@npm:^4.0.0":
+ version: 4.0.1
+ resolution: "process-warning@npm:4.0.1"
+ checksum: 10c0/577a268b9fd5c3d9f6dbb4348220099391d830905642845d591e7ee8b1e45043d98b7b9826a3c1379bdd1686cdfe0f6cf349cb812affc5853b662e6a9896579e
+ languageName: node
+ linkType: hard
+
+"promise-retry@npm:^2.0.1":
+ version: 2.0.1
+ resolution: "promise-retry@npm:2.0.1"
+ dependencies:
+ err-code: "npm:^2.0.2"
+ retry: "npm:^0.12.0"
+ checksum: 10c0/9c7045a1a2928094b5b9b15336dcd2a7b1c052f674550df63cc3f36cd44028e5080448175b6f6ca32b642de81150f5e7b1a98b728f15cb069f2dd60ac2616b96
+ languageName: node
+ linkType: hard
+
+"promise@npm:^7.0.1":
+ version: 7.3.1
+ resolution: "promise@npm:7.3.1"
+ dependencies:
+ asap: "npm:~2.0.3"
+ checksum: 10c0/742e5c0cc646af1f0746963b8776299701ad561ce2c70b49365d62c8db8ea3681b0a1bf0d4e2fe07910bf72f02d39e51e8e73dc8d7503c3501206ac908be107f
+ languageName: node
+ linkType: hard
+
+"pstree.remy@npm:^1.1.8":
+ version: 1.1.8
+ resolution: "pstree.remy@npm:1.1.8"
+ checksum: 10c0/30f78c88ce6393cb3f7834216cb6e282eb83c92ccb227430d4590298ab2811bc4a4745f850a27c5178e79a8f3e316591de0fec87abc19da648c2b3c6eb766d14
+ languageName: node
+ linkType: hard
+
+"pug-attrs@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "pug-attrs@npm:3.0.0"
+ dependencies:
+ constantinople: "npm:^4.0.1"
+ js-stringify: "npm:^1.0.2"
+ pug-runtime: "npm:^3.0.0"
+ checksum: 10c0/28178e91c05e8eb9130861c78dccc61eae3e1610931346065bd32ad0b08b023a8dcf2470c3b2409ba45a5098d6d7ed15687717e91cf77770c6381a18626e5194
+ languageName: node
+ linkType: hard
+
+"pug-code-gen@npm:^3.0.3":
+ version: 3.0.3
+ resolution: "pug-code-gen@npm:3.0.3"
+ dependencies:
+ constantinople: "npm:^4.0.1"
+ doctypes: "npm:^1.1.0"
+ js-stringify: "npm:^1.0.2"
+ pug-attrs: "npm:^3.0.0"
+ pug-error: "npm:^2.1.0"
+ pug-runtime: "npm:^3.0.1"
+ void-elements: "npm:^3.1.0"
+ with: "npm:^7.0.0"
+ checksum: 10c0/517a93930dbc80bc7fa5f60ff324229a07cc5ab70ed9d344ce105e2fe24de68db5121c8457a9ba99cdc8d48dd18779dd34956ebfcab009b3c1c6843a3cade109
+ languageName: node
+ linkType: hard
+
+"pug-error@npm:^2.0.0, pug-error@npm:^2.1.0":
+ version: 2.1.0
+ resolution: "pug-error@npm:2.1.0"
+ checksum: 10c0/bbce339b17fab9890de84975c0cd8723a847bf65f35653d3ebcf77018e8ad91529d56e978ab80f4c64c9f4f07ef9e56e7a9fda3be44249c344a93ba11fccff79
+ languageName: node
+ linkType: hard
+
+"pug-filters@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "pug-filters@npm:4.0.0"
+ dependencies:
+ constantinople: "npm:^4.0.1"
+ jstransformer: "npm:1.0.0"
+ pug-error: "npm:^2.0.0"
+ pug-walk: "npm:^2.0.0"
+ resolve: "npm:^1.15.1"
+ checksum: 10c0/7ddd62f5eb97f5242858bd56d93ffed387fef3742210a53770c980020cf91a34384b84b7fc8f0de185b43dfa77de2c4d0f63f575a4c5b3887fdef4e64b8d559d
+ languageName: node
+ linkType: hard
+
+"pug-lexer@npm:^5.0.1":
+ version: 5.0.1
+ resolution: "pug-lexer@npm:5.0.1"
+ dependencies:
+ character-parser: "npm:^2.2.0"
+ is-expression: "npm:^4.0.0"
+ pug-error: "npm:^2.0.0"
+ checksum: 10c0/24195a5681953ab91c6a3ccd80a643f760dddb65e2f266bf8ccba145018ba0271536efe1572de2c2224163eb00873c2f1df0ad7ea7aa8bcbf79a66b586ca8435
+ languageName: node
+ linkType: hard
+
+"pug-linker@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "pug-linker@npm:4.0.0"
+ dependencies:
+ pug-error: "npm:^2.0.0"
+ pug-walk: "npm:^2.0.0"
+ checksum: 10c0/db754ff34cdd4ba9d9e2d9535cce2a74178f2172e848a5fa6381907cb5bfaa0d39d4cc3eb29893d35fc1c417e83ae3cfd434640ba7d3b635c63199104fae976c
+ languageName: node
+ linkType: hard
+
+"pug-load@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "pug-load@npm:3.0.0"
+ dependencies:
+ object-assign: "npm:^4.1.1"
+ pug-walk: "npm:^2.0.0"
+ checksum: 10c0/2a7659dfaf9872dd25d851f85e4c27fa447d907b1db3540030cd844614159ff181e067d8f2bedf90eb6b5b1ff03747253859ecbbb822e40f4834b15591d4e108
+ languageName: node
+ linkType: hard
+
+"pug-parser@npm:^6.0.0":
+ version: 6.0.0
+ resolution: "pug-parser@npm:6.0.0"
+ dependencies:
+ pug-error: "npm:^2.0.0"
+ token-stream: "npm:1.0.0"
+ checksum: 10c0/faa6cec43afdeb2705eb8c68dfdb2e65836238df8043ae55295ffb72450b8c7a990ea1be60adbde19f58988b9e1d18a84ea42453e2c4f104d0031f78fda737b2
+ languageName: node
+ linkType: hard
+
+"pug-runtime@npm:^3.0.0, pug-runtime@npm:^3.0.1":
+ version: 3.0.1
+ resolution: "pug-runtime@npm:3.0.1"
+ checksum: 10c0/0db8166d2e17695a6941d1de81dcb21c8a52921299b1e03bf6a0a3d2b0036b51cf98101b3937b731c745e8d3e0268cb0b728c02f61a80a25fcfaa15c594fb1be
+ languageName: node
+ linkType: hard
+
+"pug-strip-comments@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "pug-strip-comments@npm:2.0.0"
+ dependencies:
+ pug-error: "npm:^2.0.0"
+ checksum: 10c0/ca498adedaeba51dd836b20129bbd161e2d5a397a2baaa553b1e74e888caa2258dcd7326396fc6f8fed8c7b7f906cfebc4c386ccbee8888a27b2ca0d4d86d206
+ languageName: node
+ linkType: hard
+
+"pug-walk@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "pug-walk@npm:2.0.0"
+ checksum: 10c0/005d63177bcf057f5a618b182f6d4600afb039200b07a381a0d89288a2b3126e763a0a6c40b758eab0731c8e63cad1bbcb46d96803b9ae9cfc879f6ef5a0f8f4
+ languageName: node
+ linkType: hard
+
+"pug@npm:^3.0.2":
+ version: 3.0.3
+ resolution: "pug@npm:3.0.3"
+ dependencies:
+ pug-code-gen: "npm:^3.0.3"
+ pug-filters: "npm:^4.0.0"
+ pug-lexer: "npm:^5.0.1"
+ pug-linker: "npm:^4.0.0"
+ pug-load: "npm:^3.0.0"
+ pug-parser: "npm:^6.0.0"
+ pug-runtime: "npm:^3.0.1"
+ pug-strip-comments: "npm:^2.0.0"
+ checksum: 10c0/bda53d3a6deea1d348cd5ab17427c77f3d74165510ad16f4fd182cc63618ad09388ecda317d17122ee890c8a68f9a54b96221fce7f44a332e463fdbb10a9d1e2
+ languageName: node
+ linkType: hard
+
+"punycode@npm:^2.3.1":
+ version: 2.3.1
+ resolution: "punycode@npm:2.3.1"
+ checksum: 10c0/14f76a8206bc3464f794fb2e3d3cc665ae416c01893ad7a02b23766eb07159144ee612ad67af5e84fa4479ccfe67678c4feb126b0485651b302babf66f04f9e9
+ languageName: node
+ linkType: hard
+
+"queue-microtask@npm:^1.2.3":
+ version: 1.2.3
+ resolution: "queue-microtask@npm:1.2.3"
+ checksum: 10c0/900a93d3cdae3acd7d16f642c29a642aea32c2026446151f0778c62ac089d4b8e6c986811076e1ae180a694cedf077d453a11b58ff0a865629a4f82ab558e102
+ languageName: node
+ linkType: hard
+
+"quick-format-unescaped@npm:^4.0.3":
+ version: 4.0.4
+ resolution: "quick-format-unescaped@npm:4.0.4"
+ checksum: 10c0/fe5acc6f775b172ca5b4373df26f7e4fd347975578199e7d74b2ae4077f0af05baa27d231de1e80e8f72d88275ccc6028568a7a8c9ee5e7368ace0e18eff93a4
+ languageName: node
+ linkType: hard
+
+"readable-stream@npm:^3.4.0":
+ version: 3.6.2
+ resolution: "readable-stream@npm:3.6.2"
+ dependencies:
+ inherits: "npm:^2.0.3"
+ string_decoder: "npm:^1.1.1"
+ util-deprecate: "npm:^1.0.1"
+ checksum: 10c0/e37be5c79c376fdd088a45fa31ea2e423e5d48854be7a22a58869b4e84d25047b193f6acb54f1012331e1bcd667ffb569c01b99d36b0bd59658fb33f513511b7
+ languageName: node
+ linkType: hard
+
+"readdirp@npm:~3.6.0":
+ version: 3.6.0
+ resolution: "readdirp@npm:3.6.0"
+ dependencies:
+ picomatch: "npm:^2.2.1"
+ checksum: 10c0/6fa848cf63d1b82ab4e985f4cf72bd55b7dcfd8e0a376905804e48c3634b7e749170940ba77b32804d5fe93b3cc521aa95a8d7e7d725f830da6d93f3669ce66b
+ languageName: node
+ linkType: hard
+
+"real-require@npm:^0.2.0":
+ version: 0.2.0
+ resolution: "real-require@npm:0.2.0"
+ checksum: 10c0/23eea5623642f0477412ef8b91acd3969015a1501ed34992ada0e3af521d3c865bb2fe4cdbfec5fe4b505f6d1ef6a03e5c3652520837a8c3b53decff7e74b6a0
+ languageName: node
+ linkType: hard
+
+"require-from-string@npm:^2.0.2":
+ version: 2.0.2
+ resolution: "require-from-string@npm:2.0.2"
+ checksum: 10c0/aaa267e0c5b022fc5fd4eef49d8285086b15f2a1c54b28240fdf03599cbd9c26049fee3eab894f2e1f6ca65e513b030a7c264201e3f005601e80c49fb2937ce2
+ languageName: node
+ linkType: hard
+
+"resolve@npm:^1.15.1":
+ version: 1.22.10
+ resolution: "resolve@npm:1.22.10"
+ dependencies:
+ is-core-module: "npm:^2.16.0"
+ path-parse: "npm:^1.0.7"
+ supports-preserve-symlinks-flag: "npm:^1.0.0"
+ bin:
+ resolve: bin/resolve
+ checksum: 10c0/8967e1f4e2cc40f79b7e080b4582b9a8c5ee36ffb46041dccb20e6461161adf69f843b43067b4a375de926a2cd669157e29a29578191def399dd5ef89a1b5203
+ languageName: node
+ linkType: hard
+
+"resolve@patch:resolve@npm%3A^1.15.1#optional!builtin":
+ version: 1.22.10
+ resolution: "resolve@patch:resolve@npm%3A1.22.10#optional!builtin::version=1.22.10&hash=c3c19d"
+ dependencies:
+ is-core-module: "npm:^2.16.0"
+ path-parse: "npm:^1.0.7"
+ supports-preserve-symlinks-flag: "npm:^1.0.0"
+ bin:
+ resolve: bin/resolve
+ checksum: 10c0/52a4e505bbfc7925ac8f4cd91fd8c4e096b6a89728b9f46861d3b405ac9a1ccf4dcbf8befb4e89a2e11370dacd0160918163885cbc669369590f2f31f4c58939
+ languageName: node
+ linkType: hard
+
+"ret@npm:~0.5.0":
+ version: 0.5.0
+ resolution: "ret@npm:0.5.0"
+ checksum: 10c0/220868b194f87bf1998e32e409086eec6b39e860c052bf267f8ad4d0131706a9773d45fd3f91acfb1a7c928fce002b694ab86fdba90bc8d4b8df68fa8645c5cc
+ languageName: node
+ linkType: hard
+
+"retry@npm:^0.12.0":
+ version: 0.12.0
+ resolution: "retry@npm:0.12.0"
+ checksum: 10c0/59933e8501727ba13ad73ef4a04d5280b3717fd650408460c987392efe9d7be2040778ed8ebe933c5cbd63da3dcc37919c141ef8af0a54a6e4fca5a2af177bfe
+ languageName: node
+ linkType: hard
+
+"reusify@npm:^1.0.4":
+ version: 1.1.0
+ resolution: "reusify@npm:1.1.0"
+ checksum: 10c0/4eff0d4a5f9383566c7d7ec437b671cc51b25963bd61bf127c3f3d3f68e44a026d99b8d2f1ad344afff8d278a8fe70a8ea092650a716d22287e8bef7126bb2fa
+ languageName: node
+ linkType: hard
+
+"rfdc@npm:^1.2.0, rfdc@npm:^1.3.1":
+ version: 1.4.1
+ resolution: "rfdc@npm:1.4.1"
+ checksum: 10c0/4614e4292356cafade0b6031527eea9bc90f2372a22c012313be1dcc69a3b90c7338158b414539be863fa95bfcb2ddcd0587be696841af4e6679d85e62c060c7
+ languageName: node
+ linkType: hard
+
+"rimraf@npm:^5.0.5":
+ version: 5.0.10
+ resolution: "rimraf@npm:5.0.10"
+ dependencies:
+ glob: "npm:^10.3.7"
+ bin:
+ rimraf: dist/esm/bin.mjs
+ checksum: 10c0/7da4fd0e15118ee05b918359462cfa1e7fe4b1228c7765195a45b55576e8c15b95db513b8466ec89129666f4af45ad978a3057a02139afba1a63512a2d9644cc
+ languageName: node
+ linkType: hard
+
+"rrweb-cssom@npm:^0.8.0":
+ version: 0.8.0
+ resolution: "rrweb-cssom@npm:0.8.0"
+ checksum: 10c0/56f2bfd56733adb92c0b56e274c43f864b8dd48784d6fe946ef5ff8d438234015e59ad837fc2ad54714b6421384141c1add4eb569e72054e350d1f8a50b8ac7b
+ languageName: node
+ linkType: hard
+
+"safe-buffer@npm:5.2.1, safe-buffer@npm:~5.2.0":
+ version: 5.2.1
+ resolution: "safe-buffer@npm:5.2.1"
+ checksum: 10c0/6501914237c0a86e9675d4e51d89ca3c21ffd6a31642efeba25ad65720bce6921c9e7e974e5be91a786b25aa058b5303285d3c15dbabf983a919f5f630d349f3
+ languageName: node
+ linkType: hard
+
+"safe-regex2@npm:^4.0.0":
+ version: 4.0.1
+ resolution: "safe-regex2@npm:4.0.1"
+ dependencies:
+ ret: "npm:~0.5.0"
+ checksum: 10c0/fe6edc2c0fa9847b572d0f0fc2b1f487c36ae603fec65445ae38cfb40483afa85107d3b6ffe63cbe029fd06e6ccb5c5730415c1595a1011fa00bafa2b866a8f0
+ languageName: node
+ linkType: hard
+
+"safe-stable-stringify@npm:^2.3.1":
+ version: 2.5.0
+ resolution: "safe-stable-stringify@npm:2.5.0"
+ checksum: 10c0/baea14971858cadd65df23894a40588ed791769db21bafb7fd7608397dbdce9c5aac60748abae9995e0fc37e15f2061980501e012cd48859740796bea2987f49
+ languageName: node
+ linkType: hard
+
+"safer-buffer@npm:>= 2.1.2 < 3.0.0":
+ version: 2.1.2
+ resolution: "safer-buffer@npm:2.1.2"
+ checksum: 10c0/7e3c8b2e88a1841c9671094bbaeebd94448111dd90a81a1f606f3f67708a6ec57763b3b47f06da09fc6054193e0e6709e77325415dc8422b04497a8070fa02d4
+ languageName: node
+ linkType: hard
+
+"saxes@npm:^6.0.0":
+ version: 6.0.0
+ resolution: "saxes@npm:6.0.0"
+ dependencies:
+ xmlchars: "npm:^2.2.0"
+ checksum: 10c0/3847b839f060ef3476eb8623d099aa502ad658f5c40fd60c105ebce86d244389b0d76fcae30f4d0c728d7705ceb2f7e9b34bb54717b6a7dbedaf5dad2d9a4b74
+ languageName: node
+ linkType: hard
+
+"secure-json-parse@npm:^3.0.1":
+ version: 3.0.2
+ resolution: "secure-json-parse@npm:3.0.2"
+ checksum: 10c0/4c9c005e7fdd8528df35fcdec41dc4e8e15820ce52de19f8102da808f9400a9ed8c0a28971e3efe24b001ee1e60296af553f12bbaab81a152f702dd00af2092d
+ languageName: node
+ linkType: hard
+
+"semver@npm:^7.3.5, semver@npm:^7.5.3, semver@npm:^7.6.0":
+ version: 7.7.1
+ resolution: "semver@npm:7.7.1"
+ bin:
+ semver: bin/semver.js
+ checksum: 10c0/fd603a6fb9c399c6054015433051bdbe7b99a940a8fb44b85c2b524c4004b023d7928d47cb22154f8d054ea7ee8597f586605e05b52047f048278e4ac56ae958
+ languageName: node
+ linkType: hard
+
+"set-cookie-parser@npm:^2.6.0":
+ version: 2.7.1
+ resolution: "set-cookie-parser@npm:2.7.1"
+ checksum: 10c0/060c198c4c92547ac15988256f445eae523f57f2ceefeccf52d30d75dedf6bff22b9c26f756bd44e8e560d44ff4ab2130b178bd2e52ef5571bf7be3bd7632d9a
+ languageName: node
+ linkType: hard
+
+"setprototypeof@npm:1.2.0":
+ version: 1.2.0
+ resolution: "setprototypeof@npm:1.2.0"
+ checksum: 10c0/68733173026766fa0d9ecaeb07f0483f4c2dc70ca376b3b7c40b7cda909f94b0918f6c5ad5ce27a9160bdfb475efaa9d5e705a11d8eaae18f9835d20976028bc
+ languageName: node
+ linkType: hard
+
+"shebang-command@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "shebang-command@npm:2.0.0"
+ dependencies:
+ shebang-regex: "npm:^3.0.0"
+ checksum: 10c0/a41692e7d89a553ef21d324a5cceb5f686d1f3c040759c50aab69688634688c5c327f26f3ecf7001ebfd78c01f3c7c0a11a7c8bfd0a8bc9f6240d4f40b224e4e
+ languageName: node
+ linkType: hard
+
+"shebang-regex@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "shebang-regex@npm:3.0.0"
+ checksum: 10c0/1dbed0726dd0e1152a92696c76c7f06084eb32a90f0528d11acd764043aacf76994b2fb30aa1291a21bd019d6699164d048286309a278855ee7bec06cf6fb690
+ languageName: node
+ linkType: hard
+
+"signal-exit@npm:^4.0.1":
+ version: 4.1.0
+ resolution: "signal-exit@npm:4.1.0"
+ checksum: 10c0/41602dce540e46d599edba9d9860193398d135f7ff72cab629db5171516cfae628d21e7bfccde1bbfdf11c48726bc2a6d1a8fb8701125852fbfda7cf19c6aa83
+ languageName: node
+ linkType: hard
+
+"simple-update-notifier@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "simple-update-notifier@npm:2.0.0"
+ dependencies:
+ semver: "npm:^7.5.3"
+ checksum: 10c0/2a00bd03bfbcbf8a737c47ab230d7920f8bfb92d1159d421bdd194479f6d01ebc995d13fbe13d45dace23066a78a3dc6642999b4e3b38b847e6664191575b20c
+ languageName: node
+ linkType: hard
+
+"smart-buffer@npm:^4.2.0":
+ version: 4.2.0
+ resolution: "smart-buffer@npm:4.2.0"
+ checksum: 10c0/a16775323e1404dd43fabafe7460be13a471e021637bc7889468eb45ce6a6b207261f454e4e530a19500cc962c4cc5348583520843b363f4193cee5c00e1e539
+ languageName: node
+ linkType: hard
+
+"socks-proxy-agent@npm:^8.0.3":
+ version: 8.0.5
+ resolution: "socks-proxy-agent@npm:8.0.5"
+ dependencies:
+ agent-base: "npm:^7.1.2"
+ debug: "npm:^4.3.4"
+ socks: "npm:^2.8.3"
+ checksum: 10c0/5d2c6cecba6821389aabf18728325730504bf9bb1d9e342e7987a5d13badd7a98838cc9a55b8ed3cb866ad37cc23e1086f09c4d72d93105ce9dfe76330e9d2a6
+ languageName: node
+ linkType: hard
+
+"socks@npm:^2.8.3":
+ version: 2.8.4
+ resolution: "socks@npm:2.8.4"
+ dependencies:
+ ip-address: "npm:^9.0.5"
+ smart-buffer: "npm:^4.2.0"
+ checksum: 10c0/00c3271e233ccf1fb83a3dd2060b94cc37817e0f797a93c560b9a7a86c4a0ec2961fb31263bdd24a3c28945e24868b5f063cd98744171d9e942c513454b50ae5
+ languageName: node
+ linkType: hard
+
+"sonic-boom@npm:^4.0.1":
+ version: 4.2.0
+ resolution: "sonic-boom@npm:4.2.0"
+ dependencies:
+ atomic-sleep: "npm:^1.0.0"
+ checksum: 10c0/ae897e6c2cd6d3cb7cdcf608bc182393b19c61c9413a85ce33ffd25891485589f39bece0db1de24381d0a38fc03d08c9862ded0c60f184f1b852f51f97af9684
+ languageName: node
+ linkType: hard
+
+"split2@npm:^4.0.0":
+ version: 4.2.0
+ resolution: "split2@npm:4.2.0"
+ checksum: 10c0/b292beb8ce9215f8c642bb68be6249c5a4c7f332fc8ecadae7be5cbdf1ea95addc95f0459ef2e7ad9d45fd1064698a097e4eb211c83e772b49bc0ee423e91534
+ languageName: node
+ linkType: hard
+
+"sprintf-js@npm:^1.1.3":
+ version: 1.1.3
+ resolution: "sprintf-js@npm:1.1.3"
+ checksum: 10c0/09270dc4f30d479e666aee820eacd9e464215cdff53848b443964202bf4051490538e5dd1b42e1a65cf7296916ca17640aebf63dae9812749c7542ee5f288dec
+ languageName: node
+ linkType: hard
+
+"ssri@npm:^12.0.0":
+ version: 12.0.0
+ resolution: "ssri@npm:12.0.0"
+ dependencies:
+ minipass: "npm:^7.0.3"
+ checksum: 10c0/caddd5f544b2006e88fa6b0124d8d7b28208b83c72d7672d5ade44d794525d23b540f3396108c4eb9280dcb7c01f0bef50682f5b4b2c34291f7c5e211fd1417d
+ languageName: node
+ linkType: hard
+
+"statuses@npm:2.0.1":
+ version: 2.0.1
+ resolution: "statuses@npm:2.0.1"
+ checksum: 10c0/34378b207a1620a24804ce8b5d230fea0c279f00b18a7209646d5d47e419d1cc23e7cbf33a25a1e51ac38973dc2ac2e1e9c647a8e481ef365f77668d72becfd0
+ languageName: node
+ linkType: hard
+
+"string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^4.1.0":
+ version: 4.2.3
+ resolution: "string-width@npm:4.2.3"
+ dependencies:
+ emoji-regex: "npm:^8.0.0"
+ is-fullwidth-code-point: "npm:^3.0.0"
+ strip-ansi: "npm:^6.0.1"
+ checksum: 10c0/1e525e92e5eae0afd7454086eed9c818ee84374bb80328fc41217ae72ff5f065ef1c9d7f72da41de40c75fa8bb3dee63d92373fd492c84260a552c636392a47b
+ languageName: node
+ linkType: hard
+
+"string-width@npm:^5.0.1, string-width@npm:^5.1.2":
+ version: 5.1.2
+ resolution: "string-width@npm:5.1.2"
+ dependencies:
+ eastasianwidth: "npm:^0.2.0"
+ emoji-regex: "npm:^9.2.2"
+ strip-ansi: "npm:^7.0.1"
+ checksum: 10c0/ab9c4264443d35b8b923cbdd513a089a60de339216d3b0ed3be3ba57d6880e1a192b70ae17225f764d7adbf5994e9bb8df253a944736c15a0240eff553c678ca
+ languageName: node
+ linkType: hard
+
+"string_decoder@npm:^1.1.1":
+ version: 1.3.0
+ resolution: "string_decoder@npm:1.3.0"
+ dependencies:
+ safe-buffer: "npm:~5.2.0"
+ checksum: 10c0/810614ddb030e271cd591935dcd5956b2410dd079d64ff92a1844d6b7588bf992b3e1b69b0f4d34a3e06e0bd73046ac646b5264c1987b20d0601f81ef35d731d
+ languageName: node
+ linkType: hard
+
+"strip-ansi-cjs@npm:strip-ansi@^6.0.1, strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1":
+ version: 6.0.1
+ resolution: "strip-ansi@npm:6.0.1"
+ dependencies:
+ ansi-regex: "npm:^5.0.1"
+ checksum: 10c0/1ae5f212a126fe5b167707f716942490e3933085a5ff6c008ab97ab2f272c8025d3aa218b7bd6ab25729ca20cc81cddb252102f8751e13482a5199e873680952
+ languageName: node
+ linkType: hard
+
+"strip-ansi@npm:^7.0.1":
+ version: 7.1.0
+ resolution: "strip-ansi@npm:7.1.0"
+ dependencies:
+ ansi-regex: "npm:^6.0.1"
+ checksum: 10c0/a198c3762e8832505328cbf9e8c8381de14a4fa50a4f9b2160138158ea88c0f5549fb50cb13c651c3088f47e63a108b34622ec18c0499b6c8c3a5ddf6b305ac4
+ languageName: node
+ linkType: hard
+
+"supports-color@npm:^5.5.0":
+ version: 5.5.0
+ resolution: "supports-color@npm:5.5.0"
+ dependencies:
+ has-flag: "npm:^3.0.0"
+ checksum: 10c0/6ae5ff319bfbb021f8a86da8ea1f8db52fac8bd4d499492e30ec17095b58af11f0c55f8577390a749b1c4dde691b6a0315dab78f5f54c9b3d83f8fb5905c1c05
+ languageName: node
+ linkType: hard
+
+"supports-preserve-symlinks-flag@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "supports-preserve-symlinks-flag@npm:1.0.0"
+ checksum: 10c0/6c4032340701a9950865f7ae8ef38578d8d7053f5e10518076e6554a9381fa91bd9c6850193695c141f32b21f979c985db07265a758867bac95de05f7d8aeb39
+ languageName: node
+ linkType: hard
+
+"symbol-tree@npm:^3.2.4":
+ version: 3.2.4
+ resolution: "symbol-tree@npm:3.2.4"
+ checksum: 10c0/dfbe201ae09ac6053d163578778c53aa860a784147ecf95705de0cd23f42c851e1be7889241495e95c37cabb058edb1052f141387bef68f705afc8f9dd358509
+ languageName: node
+ linkType: hard
+
+"tar@npm:^7.4.3":
+ version: 7.4.3
+ resolution: "tar@npm:7.4.3"
+ dependencies:
+ "@isaacs/fs-minipass": "npm:^4.0.0"
+ chownr: "npm:^3.0.0"
+ minipass: "npm:^7.1.2"
+ minizlib: "npm:^3.0.1"
+ mkdirp: "npm:^3.0.1"
+ yallist: "npm:^5.0.0"
+ checksum: 10c0/d4679609bb2a9b48eeaf84632b6d844128d2412b95b6de07d53d8ee8baf4ca0857c9331dfa510390a0727b550fd543d4d1a10995ad86cdf078423fbb8d99831d
+ languageName: node
+ linkType: hard
+
+"thread-stream@npm:^3.0.0":
+ version: 3.1.0
+ resolution: "thread-stream@npm:3.1.0"
+ dependencies:
+ real-require: "npm:^0.2.0"
+ checksum: 10c0/c36118379940b77a6ef3e6f4d5dd31e97b8210c3f7b9a54eb8fe6358ab173f6d0acfaf69b9c3db024b948c0c5fd2a7df93e2e49151af02076b35ada3205ec9a6
+ languageName: node
+ linkType: hard
+
+"tldts-core@npm:^6.1.82":
+ version: 6.1.82
+ resolution: "tldts-core@npm:6.1.82"
+ checksum: 10c0/bdbefb17837d7d85b79a44824feafad3d12fbbfbe4f0a89d9618765b18e880d4c7ebe9e87258a2a0e85deec23adbcaaa5f4240129d8017f896b0cda0c32ae6e4
+ languageName: node
+ linkType: hard
+
+"tldts@npm:^6.1.32":
+ version: 6.1.82
+ resolution: "tldts@npm:6.1.82"
+ dependencies:
+ tldts-core: "npm:^6.1.82"
+ bin:
+ tldts: bin/cli.js
+ checksum: 10c0/e01dd47de5a1e5ca7ffe33d9e18cfd608e93ef45cf1f80f3fced1cea192d07a840664ded894b590551ebcaaf8a583a68a4b23bc0645b5885508b57010a9316af
+ languageName: node
+ linkType: hard
+
+"to-regex-range@npm:^5.0.1":
+ version: 5.0.1
+ resolution: "to-regex-range@npm:5.0.1"
+ dependencies:
+ is-number: "npm:^7.0.0"
+ checksum: 10c0/487988b0a19c654ff3e1961b87f471702e708fa8a8dd02a298ef16da7206692e8552a0250e8b3e8759270f62e9d8314616f6da274734d3b558b1fc7b7724e892
+ languageName: node
+ linkType: hard
+
+"toad-cache@npm:^3.7.0":
+ version: 3.7.0
+ resolution: "toad-cache@npm:3.7.0"
+ checksum: 10c0/7dae2782ee20b22c9798bb8b71dec7ec6a0091021d2ea9dd6e8afccab6b65b358fdba49a02209fac574499702e2c000660721516c87c2538d1b2c0ba03e8c0c3
+ languageName: node
+ linkType: hard
+
+"toidentifier@npm:1.0.1":
+ version: 1.0.1
+ resolution: "toidentifier@npm:1.0.1"
+ checksum: 10c0/93937279934bd66cc3270016dd8d0afec14fb7c94a05c72dc57321f8bd1fa97e5bea6d1f7c89e728d077ca31ea125b78320a616a6c6cd0e6b9cb94cb864381c1
+ languageName: node
+ linkType: hard
+
+"token-stream@npm:1.0.0":
+ version: 1.0.0
+ resolution: "token-stream@npm:1.0.0"
+ checksum: 10c0/c1924a89686fc035d579cbe856da12306571d5fe7408eeeebe80df7c25c5cc644b8ae102d5cbc0f085d0e105f391d1a48dc0e568520434c5b444ea6c7de2b822
+ languageName: node
+ linkType: hard
+
+"touch@npm:^3.1.0":
+ version: 3.1.1
+ resolution: "touch@npm:3.1.1"
+ bin:
+ nodetouch: bin/nodetouch.js
+ checksum: 10c0/d2e4d269a42c846a22a29065b9af0b263de58effc85a1764bb7a2e8fc4b47700e9e2fcbd7eb1f5bffbb7c73d860f93600cef282b93ddac8f0b62321cb498b36e
+ languageName: node
+ linkType: hard
+
+"tough-cookie@npm:^5.0.0":
+ version: 5.1.2
+ resolution: "tough-cookie@npm:5.1.2"
+ dependencies:
+ tldts: "npm:^6.1.32"
+ checksum: 10c0/5f95023a47de0f30a902bba951664b359725597d8adeabc66a0b93a931c3af801e1e697dae4b8c21a012056c0ea88bd2bf4dfe66b2adcf8e2f42cd9796fe0626
+ languageName: node
+ linkType: hard
+
+"tr46@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "tr46@npm:5.0.0"
+ dependencies:
+ punycode: "npm:^2.3.1"
+ checksum: 10c0/1521b6e7bbc8adc825c4561480f9fe48eb2276c81335eed9fa610aa4c44a48a3221f78b10e5f18b875769eb3413e30efbf209ed556a17a42aa8d690df44b7bee
+ languageName: node
+ linkType: hard
+
+"undefsafe@npm:^2.0.5":
+ version: 2.0.5
+ resolution: "undefsafe@npm:2.0.5"
+ checksum: 10c0/96c0466a5fbf395917974a921d5d4eee67bca4b30d3a31ce7e621e0228c479cf893e783a109af6e14329b52fe2f0cb4108665fad2b87b0018c0df6ac771261d5
+ languageName: node
+ linkType: hard
+
+"undici-types@npm:~6.20.0":
+ version: 6.20.0
+ resolution: "undici-types@npm:6.20.0"
+ checksum: 10c0/68e659a98898d6a836a9a59e6adf14a5d799707f5ea629433e025ac90d239f75e408e2e5ff086afc3cace26f8b26ee52155293564593fbb4a2f666af57fc59bf
+ languageName: node
+ linkType: hard
+
+"undici@npm:^7.3.0":
+ version: 7.4.0
+ resolution: "undici@npm:7.4.0"
+ checksum: 10c0/0d8d8d627c87e72cf58148d257a79d019ce058b6761363ee5752103aa0ab57d132448fce4ef15171671ee138ef156a695ec1daeb72cd09ae408afa74dee070b5
+ languageName: node
+ linkType: hard
+
+"unique-filename@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "unique-filename@npm:4.0.0"
+ dependencies:
+ unique-slug: "npm:^5.0.0"
+ checksum: 10c0/38ae681cceb1408ea0587b6b01e29b00eee3c84baee1e41fd5c16b9ed443b80fba90c40e0ba69627e30855570a34ba8b06702d4a35035d4b5e198bf5a64c9ddc
+ languageName: node
+ linkType: hard
+
+"unique-slug@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "unique-slug@npm:5.0.0"
+ dependencies:
+ imurmurhash: "npm:^0.1.4"
+ checksum: 10c0/d324c5a44887bd7e105ce800fcf7533d43f29c48757ac410afd42975de82cc38ea2035c0483f4de82d186691bf3208ef35c644f73aa2b1b20b8e651be5afd293
+ languageName: node
+ linkType: hard
+
+"util-deprecate@npm:^1.0.1":
+ version: 1.0.2
+ resolution: "util-deprecate@npm:1.0.2"
+ checksum: 10c0/41a5bdd214df2f6c3ecf8622745e4a366c4adced864bc3c833739791aeeeb1838119af7daed4ba36428114b5c67dcda034a79c882e97e43c03e66a4dd7389942
+ languageName: node
+ linkType: hard
+
+"void-elements@npm:^3.1.0":
+ version: 3.1.0
+ resolution: "void-elements@npm:3.1.0"
+ checksum: 10c0/0b8686f9f9aa44012e9bd5eabf287ae0cde409b9a2854c5a2335cb83920c957668ac5876e3f0d158dd424744ac411a7270e64128556b451ed3bec875ef18534d
+ languageName: node
+ linkType: hard
+
+"volp@workspace:.":
+ version: 0.0.0-use.local
+ resolution: "volp@workspace:."
+ dependencies:
+ "@fastify/leveldb": "npm:^6.0.0"
+ "@fastify/static": "npm:^8.0.0"
+ "@fastify/view": "npm:^10.0.0"
+ "@types/node": "npm:^22.13.5"
+ esbuild: "npm:^0.25.0"
+ fastify: "npm:^5.2.1"
+ jsdom: "npm:^26.0.0"
+ nodemon: "npm:^3.0.1"
+ prettier: "npm:^3.5.2"
+ pug: "npm:^3.0.2"
+ undici: "npm:^7.3.0"
+ languageName: unknown
+ linkType: soft
+
+"w3c-xmlserializer@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "w3c-xmlserializer@npm:5.0.0"
+ dependencies:
+ xml-name-validator: "npm:^5.0.0"
+ checksum: 10c0/8712774c1aeb62dec22928bf1cdfd11426c2c9383a1a63f2bcae18db87ca574165a0fbe96b312b73652149167ac6c7f4cf5409f2eb101d9c805efe0e4bae798b
+ languageName: node
+ linkType: hard
+
+"webidl-conversions@npm:^7.0.0":
+ version: 7.0.0
+ resolution: "webidl-conversions@npm:7.0.0"
+ checksum: 10c0/228d8cb6d270c23b0720cb2d95c579202db3aaf8f633b4e9dd94ec2000a04e7e6e43b76a94509cdb30479bd00ae253ab2371a2da9f81446cc313f89a4213a2c4
+ languageName: node
+ linkType: hard
+
+"whatwg-encoding@npm:^3.1.1":
+ version: 3.1.1
+ resolution: "whatwg-encoding@npm:3.1.1"
+ dependencies:
+ iconv-lite: "npm:0.6.3"
+ checksum: 10c0/273b5f441c2f7fda3368a496c3009edbaa5e43b71b09728f90425e7f487e5cef9eb2b846a31bd760dd8077739c26faf6b5ca43a5f24033172b003b72cf61a93e
+ languageName: node
+ linkType: hard
+
+"whatwg-mimetype@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "whatwg-mimetype@npm:4.0.0"
+ checksum: 10c0/a773cdc8126b514d790bdae7052e8bf242970cebd84af62fb2f35a33411e78e981f6c0ab9ed1fe6ec5071b09d5340ac9178e05b52d35a9c4bcf558ba1b1551df
+ languageName: node
+ linkType: hard
+
+"whatwg-url@npm:^14.0.0, whatwg-url@npm:^14.1.0":
+ version: 14.1.1
+ resolution: "whatwg-url@npm:14.1.1"
+ dependencies:
+ tr46: "npm:^5.0.0"
+ webidl-conversions: "npm:^7.0.0"
+ checksum: 10c0/de1e9cc2f04cb000f232c839d4999384ba41b680ef8a89e7c61c9bc40354ba8593c775d068faaf0819f5866e4d6ca3e7b9b386e2123aa475bfd33da02316f476
+ languageName: node
+ linkType: hard
+
+"which@npm:^2.0.1":
+ version: 2.0.2
+ resolution: "which@npm:2.0.2"
+ dependencies:
+ isexe: "npm:^2.0.0"
+ bin:
+ node-which: ./bin/node-which
+ checksum: 10c0/66522872a768b60c2a65a57e8ad184e5372f5b6a9ca6d5f033d4b0dc98aff63995655a7503b9c0a2598936f532120e81dd8cc155e2e92ed662a2b9377cc4374f
+ languageName: node
+ linkType: hard
+
+"which@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "which@npm:5.0.0"
+ dependencies:
+ isexe: "npm:^3.1.1"
+ bin:
+ node-which: bin/which.js
+ checksum: 10c0/e556e4cd8b7dbf5df52408c9a9dd5ac6518c8c5267c8953f5b0564073c66ed5bf9503b14d876d0e9c7844d4db9725fb0dcf45d6e911e17e26ab363dc3965ae7b
+ languageName: node
+ linkType: hard
+
+"with@npm:^7.0.0":
+ version: 7.0.2
+ resolution: "with@npm:7.0.2"
+ dependencies:
+ "@babel/parser": "npm:^7.9.6"
+ "@babel/types": "npm:^7.9.6"
+ assert-never: "npm:^1.2.1"
+ babel-walk: "npm:3.0.0-canary-5"
+ checksum: 10c0/99289e49afc4b1776afae0ef85e84cfa775e8e07464d2b9853a31b0822347031d1cf77f287d25adc8c3f81e4fa68f4ee31526a9c95d4981ba08a1fe24dee111a
+ languageName: node
+ linkType: hard
"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0":
- version "7.0.0"
- resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"
- integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==
+ version: 7.0.0
+ resolution: "wrap-ansi@npm:7.0.0"
dependencies:
- ansi-styles "^4.0.0"
- string-width "^4.1.0"
- strip-ansi "^6.0.0"
+ ansi-styles: "npm:^4.0.0"
+ string-width: "npm:^4.1.0"
+ strip-ansi: "npm:^6.0.0"
+ checksum: 10c0/d15fc12c11e4cbc4044a552129ebc75ee3f57aa9c1958373a4db0292d72282f54373b536103987a4a7594db1ef6a4f10acf92978f79b98c49306a4b58c77d4da
+ languageName: node
+ linkType: hard
-wrap-ansi@^8.1.0:
- version "8.1.0"
- resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214"
- integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==
+"wrap-ansi@npm:^8.1.0":
+ version: 8.1.0
+ resolution: "wrap-ansi@npm:8.1.0"
dependencies:
- ansi-styles "^6.1.0"
- string-width "^5.0.1"
- strip-ansi "^7.0.1"
+ ansi-styles: "npm:^6.1.0"
+ string-width: "npm:^5.0.1"
+ strip-ansi: "npm:^7.0.1"
+ checksum: 10c0/138ff58a41d2f877eae87e3282c0630fc2789012fc1af4d6bd626eeb9a2f9a65ca92005e6e69a75c7b85a68479fe7443c7dbe1eb8fbaa681a4491364b7c55c60
+ languageName: node
+ linkType: hard
+
+"ws@npm:^8.18.0":
+ version: 8.18.1
+ resolution: "ws@npm:8.18.1"
+ peerDependencies:
+ bufferutil: ^4.0.1
+ utf-8-validate: ">=5.0.2"
+ peerDependenciesMeta:
+ bufferutil:
+ optional: true
+ utf-8-validate:
+ optional: true
+ checksum: 10c0/e498965d6938c63058c4310ffb6967f07d4fa06789d3364829028af380d299fe05762961742971c764973dce3d1f6a2633fe8b2d9410c9b52e534b4b882a99fa
+ languageName: node
+ linkType: hard
+
+"xml-name-validator@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "xml-name-validator@npm:5.0.0"
+ checksum: 10c0/3fcf44e7b73fb18be917fdd4ccffff3639373c7cb83f8fc35df6001fecba7942f1dbead29d91ebb8315e2f2ff786b508f0c9dc0215b6353f9983c6b7d62cb1f5
+ languageName: node
+ linkType: hard
+
+"xmlchars@npm:^2.2.0":
+ version: 2.2.0
+ resolution: "xmlchars@npm:2.2.0"
+ checksum: 10c0/b64b535861a6f310c5d9bfa10834cf49127c71922c297da9d4d1b45eeaae40bf9b4363275876088fbe2667e5db028d2cd4f8ee72eed9bede840a67d57dab7593
+ languageName: node
+ linkType: hard
+
+"yallist@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "yallist@npm:4.0.0"
+ checksum: 10c0/2286b5e8dbfe22204ab66e2ef5cc9bbb1e55dfc873bbe0d568aa943eb255d131890dfd5bf243637273d31119b870f49c18fcde2c6ffbb7a7a092b870dc90625a
+ languageName: node
+ linkType: hard
+
+"yallist@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "yallist@npm:5.0.0"
+ checksum: 10c0/a499c81ce6d4a1d260d4ea0f6d49ab4da09681e32c3f0472dee16667ed69d01dae63a3b81745a24bd78476ec4fcf856114cb4896ace738e01da34b2c42235416
+ languageName: node
+ linkType: hard