liftie 3.56.4 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Makefile +2 -2
- package/app.js +33 -25
- package/lib/checker.js +1 -1
- package/lib/cli/curl.js +8 -8
- package/lib/cli/dirs.js +8 -6
- package/lib/cli/fetch.js +9 -9
- package/lib/cli/for-each-resort.js +3 -4
- package/lib/cli/generate.js +10 -10
- package/lib/cli/noaa.js +7 -12
- package/lib/client/about/index.js +2 -6
- package/lib/client/boot/height.js +2 -6
- package/lib/client/boot/index.js +8 -11
- package/lib/client/boot/service-worker.js +1 -5
- package/lib/client/minimax/index.js +1 -3
- package/lib/client/resort/dom.js +2 -7
- package/lib/client/resort/index.js +7 -10
- package/lib/client/resort/lifts.js +4 -5
- package/lib/client/resort/snow.js +3 -4
- package/lib/client/resort/weather.js +3 -4
- package/lib/client/resort/webcams.js +5 -8
- package/lib/client/state/index.js +4 -7
- package/lib/client/stats/index.js +1 -5
- package/lib/client/tag/index.js +1 -3
- package/lib/embed/index.js +0 -2
- package/lib/lifts/index.js +12 -12
- package/lib/lifts/parse.js +5 -5
- package/lib/lifts/parser.js +6 -10
- package/lib/lifts/pipe.js +3 -3
- package/lib/lifts/request.js +1 -3
- package/lib/lifts/rest.js +2 -4
- package/lib/lifts/stats.js +2 -5
- package/lib/loader.js +9 -12
- package/lib/loaders.js +7 -8
- package/lib/opening.js +6 -5
- package/lib/plugins.js +3 -8
- package/lib/resorts/3cime/index.js +1 -1
- package/lib/resorts/3cime/resort.json +1 -1
- package/lib/resorts/49-degrees-north/index.js +1 -1
- package/lib/resorts/abasin/index.js +13 -6
- package/lib/resorts/abasin/resort.json +1 -1
- package/lib/resorts/alpe-lusia-san-pellegrino/index.js +1 -1
- package/lib/resorts/alpe-lusia-san-pellegrino/resort.json +1 -1
- package/lib/resorts/alpine/index.js +1 -1
- package/lib/resorts/alta/index.js +6 -7
- package/lib/resorts/alta-badia/index.js +1 -1
- package/lib/resorts/alta-badia/resort.json +1 -1
- package/lib/resorts/alyeska/index.js +1 -1
- package/lib/resorts/angel-fire/index.js +1 -1
- package/lib/resorts/arabba/index.js +1 -1
- package/lib/resorts/arabba/resort.json +1 -1
- package/lib/resorts/aspen-highlands/index.js +1 -1
- package/lib/resorts/aspen-mountain/index.js +1 -1
- package/lib/resorts/attitash/index.js +1 -1
- package/lib/resorts/beavercreek/index.js +1 -1
- package/lib/resorts/berkshire-east/index.js +1 -1
- package/lib/resorts/big-sky/index.js +1 -1
- package/lib/resorts/big-white/index.js +1 -1
- package/lib/resorts/big-white/resort.json +1 -1
- package/lib/resorts/blue-mountain-pa/index.js +1 -1
- package/lib/resorts/bluemountain/index.js +1 -1
- package/lib/resorts/bogusbasin/index.js +5 -4
- package/lib/resorts/bolton-valley/index.js +2 -3
- package/lib/resorts/boreal/index.js +1 -1
- package/lib/resorts/breck/index.js +1 -1
- package/lib/resorts/brettonwoods/index.js +7 -5
- package/lib/resorts/brianhead/index.js +1 -1
- package/lib/resorts/bridger-bowl/index.js +4 -3
- package/lib/resorts/brighton/index.js +1 -1
- package/lib/resorts/bromley-mountain/index.js +1 -1
- package/lib/resorts/burke-mountain/index.js +1 -1
- package/lib/resorts/buttermilk/index.js +1 -1
- package/lib/resorts/caberfae-peaks/index.js +1 -1
- package/lib/resorts/camelback/index.js +1 -1
- package/lib/resorts/campo-felice/index.js +1 -1
- package/lib/resorts/campo-felice/resort.json +1 -1
- package/lib/resorts/canada-olympic-park/index.js +1 -1
- package/lib/resorts/cannon/index.js +1 -1
- package/lib/resorts/cataloochee/index.js +1 -1
- package/lib/resorts/catedral/index.js +1 -1
- package/lib/resorts/cervino/index.js +2 -2
- package/lib/resorts/chamonix/index.js +2 -2
- package/lib/resorts/chamonix/resort.json +1 -1
- package/lib/resorts/chinapeak/index.js +1 -1
- package/lib/resorts/civetta/index.js +1 -1
- package/lib/resorts/civetta/resort.json +1 -1
- package/lib/resorts/claviere/index.js +1 -1
- package/lib/resorts/copper/index.js +1 -1
- package/lib/resorts/coronetpeak/index.js +1 -1
- package/lib/resorts/coronetpeak/resort.json +1 -1
- package/lib/resorts/cortina-d-ampezzo/index.js +1 -1
- package/lib/resorts/cortina-d-ampezzo/resort.json +1 -1
- package/lib/resorts/courchevel/index.js +1 -1
- package/lib/resorts/courchevel/resort.json +2 -1
- package/lib/resorts/cranmore-mountain/index.js +1 -1
- package/lib/resorts/cransmontana/index.js +2 -2
- package/lib/resorts/crested-butte/index.js +1 -1
- package/lib/resorts/crystal-mountain/index.js +1 -1
- package/lib/resorts/cypress-mountain/index.js +1 -1
- package/lib/resorts/deer-valley/index.js +1 -1
- package/lib/resorts/devils-head/index.js +1 -1
- package/lib/resorts/diamondpeak/index.js +1 -1
- package/lib/resorts/falls-creek/index.js +5 -3
- package/lib/resorts/falls-creek/resort.json +1 -1
- package/lib/resorts/flims-laax-falera/index.js +1 -1
- package/lib/resorts/flims-laax-falera/resort.json +1 -1
- package/lib/resorts/folgaria/index.js +1 -1
- package/lib/resorts/folgaria/resort.json +1 -1
- package/lib/resorts/folgarida-marilleva/index.js +2 -1
- package/lib/resorts/forni/index.js +1 -1
- package/lib/resorts/forni/resort.json +1 -1
- package/lib/resorts/gore-mountain/index.js +1 -1
- package/lib/resorts/grand-targhee/index.js +1 -1
- package/lib/resorts/grouse/index.js +1 -1
- package/lib/resorts/gunstock/index.js +1 -1
- package/lib/resorts/heavenly/index.js +1 -1
- package/lib/resorts/hochfuegen/index.js +2 -2
- package/lib/resorts/homewood/index.js +1 -1
- package/lib/resorts/hoodoo/index.js +1 -1
- package/lib/resorts/hunter/index.js +1 -1
- package/lib/resorts/ischgl-silvretta-arena/index.js +1 -1
- package/lib/resorts/jackson-hole/index.js +5 -3
- package/lib/resorts/jay-peak/index.js +1 -1
- package/lib/resorts/jiminypeak/index.js +1 -1
- package/lib/resorts/june-mountain/index.js +1 -1
- package/lib/resorts/keystone/index.js +1 -1
- package/lib/resorts/killington/index.js +1 -1
- package/lib/resorts/king-pine/index.js +5 -3
- package/lib/resorts/kirkwood/index.js +1 -1
- package/lib/resorts/kitzbuehel/index.js +1 -1
- package/lib/resorts/lamolina/index.js +1 -1
- package/lib/resorts/lamolina/resort.json +1 -1
- package/lib/resorts/laplagne/index.js +1 -1
- package/lib/resorts/laplagne/resort.json +2 -1
- package/lib/resorts/larosiere/index.js +1 -1
- package/lib/resorts/lavarone/index.js +1 -1
- package/lib/resorts/lavarone/resort.json +1 -1
- package/lib/resorts/lesarcs/index.js +1 -1
- package/lib/resorts/lesmenuires/index.js +1 -1
- package/lib/resorts/lesmenuires/resort.json +2 -1
- package/lib/resorts/loon/index.js +1 -1
- package/lib/resorts/loveland/index.js +5 -5
- package/lib/resorts/mad-river-glen/index.js +2 -2
- package/lib/resorts/madonna-di-campiglio/index.js +2 -1
- package/lib/resorts/mammoth-lakes/index.js +1 -1
- package/lib/resorts/manning-park/index.js +1 -1
- package/lib/resorts/manning-park/resort.json +1 -1
- package/lib/resorts/megeve/index.js +1 -1
- package/lib/resorts/megeve/resort.json +2 -1
- package/lib/resorts/meribel/index.js +1 -1
- package/lib/resorts/meribel/resort.json +2 -1
- package/lib/resorts/monarch/index.js +17 -4
- package/lib/resorts/monarch/resort.json +1 -5
- package/lib/resorts/monte-amiata/index.js +1 -1
- package/lib/resorts/monte-amiata/resort.json +1 -1
- package/lib/resorts/monte-bondone/index.js +1 -1
- package/lib/resorts/montegenevre/index.js +1 -1
- package/lib/resorts/monterosa/index.js +1 -1
- package/lib/resorts/morzine/index.js +1 -1
- package/lib/resorts/morzine/resort.json +6 -2
- package/lib/resorts/mount-sunapee/index.js +1 -1
- package/lib/resorts/mountsnow/index.js +1 -1
- package/lib/resorts/mt-buller/index.js +1 -1
- package/lib/resorts/mt-hotham/index.js +5 -3
- package/lib/resorts/mt-seymour/index.js +1 -1
- package/lib/resorts/mt-spokane/index.js +1 -1
- package/lib/resorts/mtbachelor/index.js +1 -1
- package/lib/resorts/mtbrighton/index.js +1 -1
- package/lib/resorts/mthigh/index.js +1 -1
- package/lib/resorts/mthood/index.js +1 -1
- package/lib/resorts/mtpeter/index.js +1 -1
- package/lib/resorts/mtpeter/resort.json +1 -1
- package/lib/resorts/mtrose/index.js +1 -1
- package/lib/resorts/niseko/index.js +1 -1
- package/lib/resorts/niseko/resort.json +1 -1
- package/lib/resorts/northstar/index.js +1 -1
- package/lib/resorts/okemo/index.js +1 -1
- package/lib/resorts/ovindoli/index.js +1 -1
- package/lib/resorts/ovindoli/resort.json +1 -1
- package/lib/resorts/owlshead/index.js +1 -1
- package/lib/resorts/paganella/index.js +1 -1
- package/lib/resorts/paganella/resort.json +1 -1
- package/lib/resorts/palisades/index.js +1 -1
- package/lib/resorts/parkcity/index.js +1 -1
- package/lib/resorts/pats-peak/index.js +4 -2
- package/lib/resorts/peio/index.js +2 -2
- package/lib/resorts/perisher/index.js +1 -1
- package/lib/resorts/perisher/resort.json +1 -1
- package/lib/resorts/piancavallo/index.js +1 -1
- package/lib/resorts/piancavallo/resort.json +1 -1
- package/lib/resorts/pico/index.js +1 -1
- package/lib/resorts/pinzolo/index.js +2 -1
- package/lib/resorts/plan-de-corones/index.js +1 -1
- package/lib/resorts/plan-de-corones/resort.json +1 -1
- package/lib/resorts/pleasant-mountain/index.js +1 -1
- package/lib/resorts/pontedilegno-tonale/index.js +1 -1
- package/lib/resorts/ragged-mountain/index.js +1 -1
- package/lib/resorts/ravascletto-zoncolan/index.js +1 -1
- package/lib/resorts/ravascletto-zoncolan/resort.json +1 -1
- package/lib/resorts/red-lodge-mountain/index.js +1 -1
- package/lib/resorts/red-mountain/index.js +2 -3
- package/lib/resorts/rio-pusteria-bressanone/index.js +1 -1
- package/lib/resorts/rio-pusteria-bressanone/resort.json +1 -1
- package/lib/resorts/roccaraso/index.js +1 -1
- package/lib/resorts/roccaraso/resort.json +1 -1
- package/lib/resorts/saddleback/index.js +1 -1
- package/lib/resorts/san-martino-di-castrozza-passo-rolle/index.js +1 -1
- package/lib/resorts/san-martino-di-castrozza-passo-rolle/resort.json +1 -1
- package/lib/resorts/sansicario/index.js +1 -1
- package/lib/resorts/sappada/index.js +1 -1
- package/lib/resorts/sappada/resort.json +1 -1
- package/lib/resorts/sasquatch-mountain/index.js +1 -1
- package/lib/resorts/sauris/index.js +1 -1
- package/lib/resorts/sauris/resort.json +1 -1
- package/lib/resorts/sauze/index.js +1 -1
- package/lib/resorts/schweitzer/index.js +1 -1
- package/lib/resorts/sella/index.js +1 -1
- package/lib/resorts/sella/resort.json +1 -1
- package/lib/resorts/serfaus-fiss-ladis/index.js +1 -1
- package/lib/resorts/sestriere/index.js +1 -1
- package/lib/resorts/sestriere/resort.json +1 -1
- package/lib/resorts/shawnee-mountain/index.js +4 -2
- package/lib/resorts/sierra/index.js +1 -1
- package/lib/resorts/silver-star/index.js +2 -2
- package/lib/resorts/skiwelt/index.js +1 -1
- package/lib/resorts/smuggs/index.js +1 -1
- package/lib/resorts/snow-valley/index.js +2 -2
- package/lib/resorts/snowbasin/index.js +1 -1
- package/lib/resorts/snowbird/index.js +2 -3
- package/lib/resorts/snowmass/index.js +1 -1
- package/lib/resorts/snowshoe/index.js +1 -1
- package/lib/resorts/soelden/index.js +1 -1
- package/lib/resorts/solitude/index.js +1 -1
- package/lib/resorts/st-anton-am-arlberg/index.js +1 -1
- package/lib/resorts/steamboat/index.js +1 -1
- package/lib/resorts/stevens/index.js +1 -1
- package/lib/resorts/stowe/index.js +1 -1
- package/lib/resorts/stratton/index.js +1 -1
- package/lib/resorts/sugarbowl/index.js +1 -1
- package/lib/resorts/sugarbush/index.js +1 -1
- package/lib/resorts/sugarloaf/index.js +1 -1
- package/lib/resorts/sun-peaks/index.js +1 -1
- package/lib/resorts/sun-peaks/resort.json +1 -1
- package/lib/resorts/sunday-river/index.js +1 -1
- package/lib/resorts/sunshine-village/index.js +6 -3
- package/lib/resorts/sunvalley/index.js +1 -1
- package/lib/resorts/tahoe-donner/index.js +1 -1
- package/lib/resorts/taos/index.js +1 -1
- package/lib/resorts/tarvisio/index.js +1 -1
- package/lib/resorts/tarvisio/resort.json +1 -1
- package/lib/resorts/telluride/index.js +1 -1
- package/lib/resorts/thredbo/index.js +1 -1
- package/lib/resorts/tignes/index.js +1 -1
- package/lib/resorts/tignes/resort.json +1 -1
- package/lib/resorts/timberline-lodge/index.js +1 -1
- package/lib/resorts/tremblant/index.js +1 -1
- package/lib/resorts/vail/index.js +1 -1
- package/lib/resorts/val-di-fassa/index.js +1 -1
- package/lib/resorts/val-di-fassa/resort.json +1 -1
- package/lib/resorts/val-di-fiemme/index.js +1 -1
- package/lib/resorts/val-di-fiemme/resort.json +1 -1
- package/lib/resorts/val-gardena/index.js +1 -1
- package/lib/resorts/val-gardena/resort.json +1 -1
- package/lib/resorts/valdisere/index.js +1 -1
- package/lib/resorts/valdisere/resort.json +1 -1
- package/lib/resorts/verbier/index.js +1 -1
- package/lib/resorts/waterville/index.js +1 -1
- package/lib/resorts/whistler-blackcomb/index.js +2 -2
- package/lib/resorts/whistler-blackcomb/resort.json +1 -1
- package/lib/resorts/whiteface/index.js +1 -1
- package/lib/resorts/whitefish/index.js +1 -1
- package/lib/resorts/wildcat/index.js +1 -1
- package/lib/resorts/windham/index.js +1 -1
- package/lib/resorts/winter-park/index.js +1 -1
- package/lib/resorts/winterplace/index.js +1 -1
- package/lib/routes/cache.js +4 -4
- package/lib/routes/canonical.js +1 -3
- package/lib/routes/data.js +10 -12
- package/lib/routes/database.js +6 -7
- package/lib/routes/headers.js +2 -2
- package/lib/routes/index.js +9 -11
- package/lib/routes/plan.js +2 -4
- package/lib/routes/service-worker.js +6 -7
- package/lib/routes/sorter.js +2 -4
- package/lib/routes/tags.js +2 -4
- package/lib/select.js +3 -5
- package/lib/tools/aspen.js +4 -4
- package/lib/tools/boyne.js +4 -4
- package/lib/tools/campiglio-dolomiti.js +1 -1
- package/lib/tools/coerce.js +4 -4
- package/lib/tools/dolomitisuperski.js +1 -1
- package/lib/tools/domutil.js +11 -18
- package/lib/tools/infosnow.js +6 -6
- package/lib/tools/intrawest.js +3 -3
- package/lib/tools/limiter.js +2 -4
- package/lib/tools/lumiplan.js +2 -2
- package/lib/tools/millis.js +4 -11
- package/lib/tools/powdr.js +4 -4
- package/lib/tools/prism.js +5 -5
- package/lib/tools/skiplan.js +1 -1
- package/lib/tools/turismofvg.js +2 -2
- package/lib/tools/vail.js +8 -10
- package/lib/tools/vialattea.js +1 -1
- package/lib/weather/icons.js +3 -8
- package/lib/weather/index.js +5 -6
- package/lib/weather/noaa.js +5 -3
- package/lib/weather/openweather.js +6 -7
- package/lib/webcams.js +6 -6
- package/package.json +3 -2
- package/public/scripts/liftie-embed.js.map +2 -2
- package/public/scripts/liftie.js +615 -695
- package/public/scripts/liftie.js.map +4 -4
|
@@ -1,14 +1,13 @@
|
|
|
1
|
-
|
|
1
|
+
import Debug from 'debug';
|
|
2
|
+
import limiter from '../tools/limiter.js';
|
|
3
|
+
import * as millis from '../tools/millis.js';
|
|
4
|
+
import { iconsFrom } from './icons.js';
|
|
2
5
|
|
|
3
|
-
const
|
|
4
|
-
const limiter = require('../tools/limiter');
|
|
5
|
-
const { iconsFrom } = require('./icons');
|
|
6
|
+
const debug = Debug('liftie:weather');
|
|
6
7
|
|
|
7
8
|
// not more than 30 a minute (60 per documentation)
|
|
8
9
|
const limit = limiter(30, millis.minute);
|
|
9
10
|
|
|
10
|
-
module.exports = fetchForecast;
|
|
11
|
-
|
|
12
11
|
function tempInF(kelvins) {
|
|
13
12
|
return Math.round((kelvins - 273.15) * 1.8) + 32;
|
|
14
13
|
}
|
|
@@ -73,7 +72,7 @@ function sanitize({ city, list }) {
|
|
|
73
72
|
};
|
|
74
73
|
}
|
|
75
74
|
|
|
76
|
-
function fetchForecast(resort, appid, fn) {
|
|
75
|
+
export default function fetchForecast(resort, appid, fn) {
|
|
77
76
|
limit(err => {
|
|
78
77
|
if (err) {
|
|
79
78
|
debug('Weather API limit %s', resort.id);
|
package/lib/webcams.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
|
|
1
|
+
import Debug from 'debug';
|
|
2
|
+
import limiter from './tools/limiter.js';
|
|
3
|
+
import { minute } from './tools/millis.js';
|
|
2
4
|
|
|
3
|
-
const
|
|
4
|
-
const limiter = require('./tools/limiter');
|
|
5
|
+
const debug = Debug('liftie:webcams');
|
|
5
6
|
|
|
6
7
|
const userAgent = 'Mozilla/5.0 (compatible; Liftie/1.0; +https://liftie.info)';
|
|
7
8
|
|
|
8
|
-
|
|
9
|
-
module.exports.interval = {
|
|
9
|
+
fetchWebcams.interval = {
|
|
10
10
|
active: 8.5 * minute, // v3 API images are only valid for 10 minutes
|
|
11
11
|
inactive: Number.POSITIVE_INFINITY
|
|
12
12
|
};
|
|
@@ -33,7 +33,7 @@ function getStatic({ webcams }) {
|
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
-
function fetchWebcams(resort, fn) {
|
|
36
|
+
export default function fetchWebcams(resort, fn) {
|
|
37
37
|
debug('Fetching webcams for %s', resort.id);
|
|
38
38
|
const { WEBCAMS_API_KEY } = process.env;
|
|
39
39
|
if (!resort.ll || !WEBCAMS_API_KEY) {
|
package/package.json
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "liftie",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "4.0.0",
|
|
4
4
|
"description": "Clean, simple, easy to read, fast ski resort lift status",
|
|
5
|
+
"type": "module",
|
|
5
6
|
"keywords": [
|
|
6
7
|
"ski",
|
|
7
8
|
"snowboard"
|
|
@@ -57,7 +58,7 @@
|
|
|
57
58
|
"to-title-case": "^1.0.0"
|
|
58
59
|
},
|
|
59
60
|
"devDependencies": {
|
|
60
|
-
"@biomejs/biome": "
|
|
61
|
+
"@biomejs/biome": "2.2.6",
|
|
61
62
|
"@pirxpilot/stylus": "^1.2.0",
|
|
62
63
|
"commander": "~13",
|
|
63
64
|
"postcss": "~8",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../lib/embed/index.js"],
|
|
4
|
-
"sourcesContent": ["
|
|
5
|
-
"mappings": ";;
|
|
4
|
+
"sourcesContent": ["function el(attrs) {\n const attrStr = Object.keys(attrs)\n .map(attr => `${attr}=\"${attrs[attr]}\"`)\n .join(' ');\n\n return ['<iframe ', attrStr, '></iframe>'].join('');\n}\n\nfunction addWidget(parent, resort, style) {\n const query = style ? `?style=${encodeURIComponent(style)}` : '';\n let html = el({\n class: `lift-status ${resort}`,\n src: `https://liftie.info/widget/resort/${resort}${query}`,\n scrolling: 'no'\n });\n html += '<p class=\"liftie-link\">Lift status by <a href=\"https://liftie.info\" target=\"_blank\">Liftie</a></p>';\n parent.insertAdjacentHTML('afterBegin', html);\n}\n\nfunction receiveMessage(event) {\n // from liftie?\n if (!/^https?:\\/\\/liftie.info$/.test(event.origin)) {\n return;\n }\n // anything interesting?\n if (!event.data.height) {\n return;\n }\n const iframe = document.querySelector(`.liftie-widget[data-resort=\"${event.data.resort}\"] iframe`);\n if (iframe) {\n iframe.style.height = `${event.data.height}px`;\n }\n}\n\nfunction embed() {\n let i;\n const els = document.querySelectorAll('.liftie-widget[data-resort]');\n if (els.length) {\n window.addEventListener('message', receiveMessage, false);\n }\n for (i = 0; i < els.length; i++) {\n addWidget(els[i], els[i].getAttribute('data-resort'), els[i].getAttribute('data-style'));\n }\n}\n\nembed();\n"],
|
|
5
|
+
"mappings": ";;AAAA,WAAS,GAAG,OAAO;AACjB,UAAM,UAAU,OAAO,KAAK,KAAK,EAC9B,IAAI,UAAQ,GAAG,IAAI,KAAK,MAAM,IAAI,CAAC,GAAG,EACtC,KAAK,GAAG;AAEX,WAAO,CAAC,YAAY,SAAS,YAAY,EAAE,KAAK,EAAE;AAAA,EACpD;AAEA,WAAS,UAAU,QAAQ,QAAQ,OAAO;AACxC,UAAM,QAAQ,QAAQ,UAAU,mBAAmB,KAAK,CAAC,KAAK;AAC9D,QAAI,OAAO,GAAG;AAAA,MACZ,OAAO,eAAe,MAAM;AAAA,MAC5B,KAAK,qCAAqC,MAAM,GAAG,KAAK;AAAA,MACxD,WAAW;AAAA,IACb,CAAC;AACD,YAAQ;AACR,WAAO,mBAAmB,cAAc,IAAI;AAAA,EAC9C;AAEA,WAAS,eAAe,OAAO;AAE7B,QAAI,CAAC,2BAA2B,KAAK,MAAM,MAAM,GAAG;AAClD;AAAA,IACF;AAEA,QAAI,CAAC,MAAM,KAAK,QAAQ;AACtB;AAAA,IACF;AACA,UAAM,SAAS,SAAS,cAAc,+BAA+B,MAAM,KAAK,MAAM,WAAW;AACjG,QAAI,QAAQ;AACV,aAAO,MAAM,SAAS,GAAG,MAAM,KAAK,MAAM;AAAA,IAC5C;AAAA,EACF;AAEA,WAAS,QAAQ;AACf,QAAI;AACJ,UAAM,MAAM,SAAS,iBAAiB,6BAA6B;AACnE,QAAI,IAAI,QAAQ;AACd,aAAO,iBAAiB,WAAW,gBAAgB,KAAK;AAAA,IAC1D;AACA,SAAK,IAAI,GAAG,IAAI,IAAI,QAAQ,KAAK;AAC/B,gBAAU,IAAI,CAAC,GAAG,IAAI,CAAC,EAAE,aAAa,aAAa,GAAG,IAAI,CAAC,EAAE,aAAa,YAAY,CAAC;AAAA,IACzF;AAAA,EACF;AAEA,QAAM;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|