@keload/node-red-dxp 1.4.1 → 1.5.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.
@@ -1,54 +1,3993 @@
1
1
  #!/usr/bin/env node
2
- 'use strict';var perf_hooks=require('perf_hooks'),C=require('process'),commander=require('commander'),kt=require('os'),Oe=require('tty'),at=require('fs'),Ft=require('path'),cosmiconfig=require('cosmiconfig'),glob=require('glob'),radash=require('radash'),be=require('fs/promises'),Su=require('esbuild'),htmlMinifierTerser=require('html-minifier-terser'),Lu=require('@fullhuman/postcss-purgecss'),Gu=require('autoprefixer'),Wu=require('cssnano'),pt=require('postcss'),Ct=require('sass'),Uu=require('tailwindcss'),consola=require('consola'),er=require('prettyjson'),Dr=require('handlebars'),ar=require('browser-sync'),Fr=require('chokidar'),yt=require('nodemon');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}function _interopNamespace(e){if(e&&e.__esModule)return e;var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var C__namespace=/*#__PURE__*/_interopNamespace(C);var kt__default=/*#__PURE__*/_interopDefault(kt);var Oe__default=/*#__PURE__*/_interopDefault(Oe);var at__default=/*#__PURE__*/_interopDefault(at);var Ft__default=/*#__PURE__*/_interopDefault(Ft);var be__default=/*#__PURE__*/_interopDefault(be);var Su__default=/*#__PURE__*/_interopDefault(Su);var Lu__default=/*#__PURE__*/_interopDefault(Lu);var Gu__default=/*#__PURE__*/_interopDefault(Gu);var Wu__default=/*#__PURE__*/_interopDefault(Wu);var pt__default=/*#__PURE__*/_interopDefault(pt);var Ct__namespace=/*#__PURE__*/_interopNamespace(Ct);var Uu__default=/*#__PURE__*/_interopDefault(Uu);var er__default=/*#__PURE__*/_interopDefault(er);var Dr__default=/*#__PURE__*/_interopDefault(Dr);var ar__default=/*#__PURE__*/_interopDefault(ar);var Fr__default=/*#__PURE__*/_interopDefault(Fr);var yt__default=/*#__PURE__*/_interopDefault(yt);var vt=Object.create;var we=Object.defineProperty;var Nt=Object.getOwnPropertyDescriptor;var St=Object.getOwnPropertyNames;var Tt=Object.getPrototypeOf,Pt=Object.prototype.hasOwnProperty;var Ot=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,u)=>(typeof require<"u"?require:t)[u]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var ve=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var It=(e,t,u,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let D of St(t))!Pt.call(e,D)&&D!==u&&we(e,D,{get:()=>t[D],enumerable:!(r=Nt(t,D))||r.enumerable});return e};var Ne=(e,t,u)=>(u=e!=null?vt(Tt(e)):{},It(we(u,"default",{value:e,enumerable:!0}),e));var qe=ve((Hr,ou)=>{ou.exports={dots:{interval:80,frames:["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]},dots2:{interval:80,frames:["\u28FE","\u28FD","\u28FB","\u28BF","\u287F","\u28DF","\u28EF","\u28F7"]},dots3:{interval:80,frames:["\u280B","\u2819","\u281A","\u281E","\u2816","\u2826","\u2834","\u2832","\u2833","\u2813"]},dots4:{interval:80,frames:["\u2804","\u2806","\u2807","\u280B","\u2819","\u2838","\u2830","\u2820","\u2830","\u2838","\u2819","\u280B","\u2807","\u2806"]},dots5:{interval:80,frames:["\u280B","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B"]},dots6:{interval:80,frames:["\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2834","\u2832","\u2812","\u2802","\u2802","\u2812","\u281A","\u2819","\u2809","\u2801"]},dots7:{interval:80,frames:["\u2808","\u2809","\u280B","\u2813","\u2812","\u2810","\u2810","\u2812","\u2816","\u2826","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808"]},dots8:{interval:80,frames:["\u2801","\u2801","\u2809","\u2819","\u281A","\u2812","\u2802","\u2802","\u2812","\u2832","\u2834","\u2824","\u2804","\u2804","\u2824","\u2820","\u2820","\u2824","\u2826","\u2816","\u2812","\u2810","\u2810","\u2812","\u2813","\u280B","\u2809","\u2808","\u2808"]},dots9:{interval:80,frames:["\u28B9","\u28BA","\u28BC","\u28F8","\u28C7","\u2867","\u2857","\u284F"]},dots10:{interval:80,frames:["\u2884","\u2882","\u2881","\u2841","\u2848","\u2850","\u2860"]},dots11:{interval:100,frames:["\u2801","\u2802","\u2804","\u2840","\u2880","\u2820","\u2810","\u2808"]},dots12:{interval:80,frames:["\u2880\u2800","\u2840\u2800","\u2804\u2800","\u2882\u2800","\u2842\u2800","\u2805\u2800","\u2883\u2800","\u2843\u2800","\u280D\u2800","\u288B\u2800","\u284B\u2800","\u280D\u2801","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2888\u2829","\u2840\u2899","\u2804\u2859","\u2882\u2829","\u2842\u2898","\u2805\u2858","\u2883\u2828","\u2843\u2890","\u280D\u2850","\u288B\u2820","\u284B\u2880","\u280D\u2841","\u288B\u2801","\u284B\u2801","\u280D\u2809","\u280B\u2809","\u280B\u2809","\u2809\u2819","\u2809\u2819","\u2809\u2829","\u2808\u2899","\u2808\u2859","\u2808\u2829","\u2800\u2899","\u2800\u2859","\u2800\u2829","\u2800\u2898","\u2800\u2858","\u2800\u2828","\u2800\u2890","\u2800\u2850","\u2800\u2820","\u2800\u2880","\u2800\u2840"]},dots13:{interval:80,frames:["\u28FC","\u28F9","\u28BB","\u283F","\u285F","\u28CF","\u28E7","\u28F6"]},dots8Bit:{interval:80,frames:["\u2800","\u2801","\u2802","\u2803","\u2804","\u2805","\u2806","\u2807","\u2840","\u2841","\u2842","\u2843","\u2844","\u2845","\u2846","\u2847","\u2808","\u2809","\u280A","\u280B","\u280C","\u280D","\u280E","\u280F","\u2848","\u2849","\u284A","\u284B","\u284C","\u284D","\u284E","\u284F","\u2810","\u2811","\u2812","\u2813","\u2814","\u2815","\u2816","\u2817","\u2850","\u2851","\u2852","\u2853","\u2854","\u2855","\u2856","\u2857","\u2818","\u2819","\u281A","\u281B","\u281C","\u281D","\u281E","\u281F","\u2858","\u2859","\u285A","\u285B","\u285C","\u285D","\u285E","\u285F","\u2820","\u2821","\u2822","\u2823","\u2824","\u2825","\u2826","\u2827","\u2860","\u2861","\u2862","\u2863","\u2864","\u2865","\u2866","\u2867","\u2828","\u2829","\u282A","\u282B","\u282C","\u282D","\u282E","\u282F","\u2868","\u2869","\u286A","\u286B","\u286C","\u286D","\u286E","\u286F","\u2830","\u2831","\u2832","\u2833","\u2834","\u2835","\u2836","\u2837","\u2870","\u2871","\u2872","\u2873","\u2874","\u2875","\u2876","\u2877","\u2838","\u2839","\u283A","\u283B","\u283C","\u283D","\u283E","\u283F","\u2878","\u2879","\u287A","\u287B","\u287C","\u287D","\u287E","\u287F","\u2880","\u2881","\u2882","\u2883","\u2884","\u2885","\u2886","\u2887","\u28C0","\u28C1","\u28C2","\u28C3","\u28C4","\u28C5","\u28C6","\u28C7","\u2888","\u2889","\u288A","\u288B","\u288C","\u288D","\u288E","\u288F","\u28C8","\u28C9","\u28CA","\u28CB","\u28CC","\u28CD","\u28CE","\u28CF","\u2890","\u2891","\u2892","\u2893","\u2894","\u2895","\u2896","\u2897","\u28D0","\u28D1","\u28D2","\u28D3","\u28D4","\u28D5","\u28D6","\u28D7","\u2898","\u2899","\u289A","\u289B","\u289C","\u289D","\u289E","\u289F","\u28D8","\u28D9","\u28DA","\u28DB","\u28DC","\u28DD","\u28DE","\u28DF","\u28A0","\u28A1","\u28A2","\u28A3","\u28A4","\u28A5","\u28A6","\u28A7","\u28E0","\u28E1","\u28E2","\u28E3","\u28E4","\u28E5","\u28E6","\u28E7","\u28A8","\u28A9","\u28AA","\u28AB","\u28AC","\u28AD","\u28AE","\u28AF","\u28E8","\u28E9","\u28EA","\u28EB","\u28EC","\u28ED","\u28EE","\u28EF","\u28B0","\u28B1","\u28B2","\u28B3","\u28B4","\u28B5","\u28B6","\u28B7","\u28F0","\u28F1","\u28F2","\u28F3","\u28F4","\u28F5","\u28F6","\u28F7","\u28B8","\u28B9","\u28BA","\u28BB","\u28BC","\u28BD","\u28BE","\u28BF","\u28F8","\u28F9","\u28FA","\u28FB","\u28FC","\u28FD","\u28FE","\u28FF"]},sand:{interval:80,frames:["\u2801","\u2802","\u2804","\u2840","\u2848","\u2850","\u2860","\u28C0","\u28C1","\u28C2","\u28C4","\u28CC","\u28D4","\u28E4","\u28E5","\u28E6","\u28EE","\u28F6","\u28F7","\u28FF","\u287F","\u283F","\u289F","\u281F","\u285B","\u281B","\u282B","\u288B","\u280B","\u280D","\u2849","\u2809","\u2811","\u2821","\u2881"]},line:{interval:130,frames:["-","\\","|","/"]},line2:{interval:100,frames:["\u2802","-","\u2013","\u2014","\u2013","-"]},pipe:{interval:100,frames:["\u2524","\u2518","\u2534","\u2514","\u251C","\u250C","\u252C","\u2510"]},simpleDots:{interval:400,frames:[". ",".. ","..."," "]},simpleDotsScrolling:{interval:200,frames:[". ",".. ","..."," .."," ."," "]},star:{interval:70,frames:["\u2736","\u2738","\u2739","\u273A","\u2739","\u2737"]},star2:{interval:80,frames:["+","x","*"]},flip:{interval:70,frames:["_","_","_","-","`","`","'","\xB4","-","_","_","_"]},hamburger:{interval:100,frames:["\u2631","\u2632","\u2634"]},growVertical:{interval:120,frames:["\u2581","\u2583","\u2584","\u2585","\u2586","\u2587","\u2586","\u2585","\u2584","\u2583"]},growHorizontal:{interval:120,frames:["\u258F","\u258E","\u258D","\u258C","\u258B","\u258A","\u2589","\u258A","\u258B","\u258C","\u258D","\u258E"]},balloon:{interval:140,frames:[" ",".","o","O","@","*"," "]},balloon2:{interval:120,frames:[".","o","O","\xB0","O","o","."]},noise:{interval:100,frames:["\u2593","\u2592","\u2591"]},bounce:{interval:120,frames:["\u2801","\u2802","\u2804","\u2802"]},boxBounce:{interval:120,frames:["\u2596","\u2598","\u259D","\u2597"]},boxBounce2:{interval:100,frames:["\u258C","\u2580","\u2590","\u2584"]},triangle:{interval:50,frames:["\u25E2","\u25E3","\u25E4","\u25E5"]},binary:{interval:80,frames:["010010","001100","100101","111010","111101","010111","101011","111000","110011","110101"]},arc:{interval:100,frames:["\u25DC","\u25E0","\u25DD","\u25DE","\u25E1","\u25DF"]},circle:{interval:120,frames:["\u25E1","\u2299","\u25E0"]},squareCorners:{interval:180,frames:["\u25F0","\u25F3","\u25F2","\u25F1"]},circleQuarters:{interval:120,frames:["\u25F4","\u25F7","\u25F6","\u25F5"]},circleHalves:{interval:50,frames:["\u25D0","\u25D3","\u25D1","\u25D2"]},squish:{interval:100,frames:["\u256B","\u256A"]},toggle:{interval:250,frames:["\u22B6","\u22B7"]},toggle2:{interval:80,frames:["\u25AB","\u25AA"]},toggle3:{interval:120,frames:["\u25A1","\u25A0"]},toggle4:{interval:100,frames:["\u25A0","\u25A1","\u25AA","\u25AB"]},toggle5:{interval:100,frames:["\u25AE","\u25AF"]},toggle6:{interval:300,frames:["\u101D","\u1040"]},toggle7:{interval:80,frames:["\u29BE","\u29BF"]},toggle8:{interval:100,frames:["\u25CD","\u25CC"]},toggle9:{interval:100,frames:["\u25C9","\u25CE"]},toggle10:{interval:100,frames:["\u3282","\u3280","\u3281"]},toggle11:{interval:50,frames:["\u29C7","\u29C6"]},toggle12:{interval:120,frames:["\u2617","\u2616"]},toggle13:{interval:80,frames:["=","*","-"]},arrow:{interval:100,frames:["\u2190","\u2196","\u2191","\u2197","\u2192","\u2198","\u2193","\u2199"]},arrow2:{interval:80,frames:["\u2B06\uFE0F ","\u2197\uFE0F ","\u27A1\uFE0F ","\u2198\uFE0F ","\u2B07\uFE0F ","\u2199\uFE0F ","\u2B05\uFE0F ","\u2196\uFE0F "]},arrow3:{interval:120,frames:["\u25B9\u25B9\u25B9\u25B9\u25B9","\u25B8\u25B9\u25B9\u25B9\u25B9","\u25B9\u25B8\u25B9\u25B9\u25B9","\u25B9\u25B9\u25B8\u25B9\u25B9","\u25B9\u25B9\u25B9\u25B8\u25B9","\u25B9\u25B9\u25B9\u25B9\u25B8"]},bouncingBar:{interval:80,frames:["[ ]","[= ]","[== ]","[=== ]","[====]","[ ===]","[ ==]","[ =]","[ ]","[ =]","[ ==]","[ ===]","[====]","[=== ]","[== ]","[= ]"]},bouncingBall:{interval:80,frames:["( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF)","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","(\u25CF )"]},smiley:{interval:200,frames:["\u{1F604} ","\u{1F61D} "]},monkey:{interval:300,frames:["\u{1F648} ","\u{1F648} ","\u{1F649} ","\u{1F64A} "]},hearts:{interval:100,frames:["\u{1F49B} ","\u{1F499} ","\u{1F49C} ","\u{1F49A} ","\u2764\uFE0F "]},clock:{interval:100,frames:["\u{1F55B} ","\u{1F550} ","\u{1F551} ","\u{1F552} ","\u{1F553} ","\u{1F554} ","\u{1F555} ","\u{1F556} ","\u{1F557} ","\u{1F558} ","\u{1F559} ","\u{1F55A} "]},earth:{interval:180,frames:["\u{1F30D} ","\u{1F30E} ","\u{1F30F} "]},material:{interval:17,frames:["\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581","\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581"]},moon:{interval:80,frames:["\u{1F311} ","\u{1F312} ","\u{1F313} ","\u{1F314} ","\u{1F315} ","\u{1F316} ","\u{1F317} ","\u{1F318} "]},runner:{interval:140,frames:["\u{1F6B6} ","\u{1F3C3} "]},pong:{interval:80,frames:["\u2590\u2802 \u258C","\u2590\u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802\u258C","\u2590 \u2820\u258C","\u2590 \u2840\u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590 \u2820 \u258C","\u2590 \u2802 \u258C","\u2590 \u2808 \u258C","\u2590 \u2802 \u258C","\u2590 \u2820 \u258C","\u2590 \u2840 \u258C","\u2590\u2820 \u258C"]},shark:{interval:120,frames:["\u2590|\\____________\u258C","\u2590_|\\___________\u258C","\u2590__|\\__________\u258C","\u2590___|\\_________\u258C","\u2590____|\\________\u258C","\u2590_____|\\_______\u258C","\u2590______|\\______\u258C","\u2590_______|\\_____\u258C","\u2590________|\\____\u258C","\u2590_________|\\___\u258C","\u2590__________|\\__\u258C","\u2590___________|\\_\u258C","\u2590____________|\\\u258C","\u2590____________/|\u258C","\u2590___________/|_\u258C","\u2590__________/|__\u258C","\u2590_________/|___\u258C","\u2590________/|____\u258C","\u2590_______/|_____\u258C","\u2590______/|______\u258C","\u2590_____/|_______\u258C","\u2590____/|________\u258C","\u2590___/|_________\u258C","\u2590__/|__________\u258C","\u2590_/|___________\u258C","\u2590/|____________\u258C"]},dqpb:{interval:100,frames:["d","q","p","b"]},weather:{interval:100,frames:["\u2600\uFE0F ","\u2600\uFE0F ","\u2600\uFE0F ","\u{1F324} ","\u26C5\uFE0F ","\u{1F325} ","\u2601\uFE0F ","\u{1F327} ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u26C8 ","\u{1F328} ","\u{1F327} ","\u{1F328} ","\u2601\uFE0F ","\u{1F325} ","\u26C5\uFE0F ","\u{1F324} ","\u2600\uFE0F ","\u2600\uFE0F "]},christmas:{interval:400,frames:["\u{1F332}","\u{1F384}"]},grenade:{interval:80,frames:["\u060C ","\u2032 "," \xB4 "," \u203E "," \u2E0C"," \u2E0A"," |"," \u204E"," \u2055"," \u0DF4 "," \u2053"," "," "," "]},point:{interval:125,frames:["\u2219\u2219\u2219","\u25CF\u2219\u2219","\u2219\u25CF\u2219","\u2219\u2219\u25CF","\u2219\u2219\u2219"]},layer:{interval:150,frames:["-","=","\u2261"]},betaWave:{interval:80,frames:["\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2","\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1"]},fingerDance:{interval:160,frames:["\u{1F918} ","\u{1F91F} ","\u{1F596} ","\u270B ","\u{1F91A} ","\u{1F446} "]},fistBump:{interval:80,frames:["\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ","\u3000\u{1F91C}\u3000\u3000\u{1F91B}\u3000 ","\u3000\u3000\u{1F91C}\u{1F91B}\u3000\u3000 ","\u3000\u{1F91C}\u2728\u{1F91B}\u3000\u3000 ","\u{1F91C}\u3000\u2728\u3000\u{1F91B}\u3000 "]},soccerHeader:{interval:80,frames:[" \u{1F9D1}\u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F\u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ","\u{1F9D1} \u26BD\uFE0F \u{1F9D1} "]},mindblown:{interval:160,frames:["\u{1F610} ","\u{1F610} ","\u{1F62E} ","\u{1F62E} ","\u{1F626} ","\u{1F626} ","\u{1F627} ","\u{1F627} ","\u{1F92F} ","\u{1F4A5} ","\u2728 ","\u3000 ","\u3000 ","\u3000 "]},speaker:{interval:160,frames:["\u{1F508} ","\u{1F509} ","\u{1F50A} ","\u{1F509} "]},orangePulse:{interval:100,frames:["\u{1F538} ","\u{1F536} ","\u{1F7E0} ","\u{1F7E0} ","\u{1F536} "]},bluePulse:{interval:100,frames:["\u{1F539} ","\u{1F537} ","\u{1F535} ","\u{1F535} ","\u{1F537} "]},orangeBluePulse:{interval:100,frames:["\u{1F538} ","\u{1F536} ","\u{1F7E0} ","\u{1F7E0} ","\u{1F536} ","\u{1F539} ","\u{1F537} ","\u{1F535} ","\u{1F535} ","\u{1F537} "]},timeTravel:{interval:100,frames:["\u{1F55B} ","\u{1F55A} ","\u{1F559} ","\u{1F558} ","\u{1F557} ","\u{1F556} ","\u{1F555} ","\u{1F554} ","\u{1F553} ","\u{1F552} ","\u{1F551} ","\u{1F550} "]},aesthetic:{interval:80,frames:["\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1","\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0","\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1"]},dwarfFortress:{interval:80,frames:[" \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ","\u263A \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\u2588\xA3\xA3\xA3 "," \u263A \u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2588\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2593\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2592\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A\u2591\u2588\xA3\xA3\xA3 "," \u263A \u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2588\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2592\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A\u2591\xA3\xA3\xA3 "," \u263A \xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\xA3\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2593\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2592\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A\u2591\xA3\xA3 "," \u263A \xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\xA3\xA3 "," \u263A\u2593\xA3 "," \u263A\u2593\xA3 "," \u263A\u2592\xA3 "," \u263A\u2592\xA3 "," \u263A\u2591\xA3 "," \u263A\u2591\xA3 "," \u263A \xA3 "," \u263A\xA3 "," \u263A\xA3 "," \u263A\u2593 "," \u263A\u2593 "," \u263A\u2592 "," \u263A\u2592 "," \u263A\u2591 "," \u263A\u2591 "," \u263A "," \u263A &"," \u263A \u263C&"," \u263A \u263C &"," \u263A\u263C &"," \u263A\u263C & "," \u203C & "," \u263A & "," \u203C & "," \u263A & "," \u203C & "," \u263A & ","\u203C & "," & "," & "," & \u2591 "," & \u2592 "," & \u2593 "," & \xA3 "," & \u2591\xA3 "," & \u2592\xA3 "," & \u2593\xA3 "," & \xA3\xA3 "," & \u2591\xA3\xA3 "," & \u2592\xA3\xA3 ","& \u2593\xA3\xA3 ","& \xA3\xA3\xA3 "," \u2591\xA3\xA3\xA3 "," \u2592\xA3\xA3\xA3 "," \u2593\xA3\xA3\xA3 "," \u2588\xA3\xA3\xA3 "," \u2591\u2588\xA3\xA3\xA3 "," \u2592\u2588\xA3\xA3\xA3 "," \u2593\u2588\xA3\xA3\xA3 "," \u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "," \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "]}};});var me=ve((Ur,Ke)=>{var U=Object.assign({},qe()),Je=Object.keys(U);Object.defineProperty(U,"random",{get(){let e=Math.floor(Math.random()*Je.length),t=Je[e];return U[t]}});Ke.exports=U;});var Se=(e=0)=>t=>`\x1B[${t+e}m`,Te=(e=0)=>t=>`\x1B[${38+e};5;${t}m`,Pe=(e=0)=>(t,u,r)=>`\x1B[${38+e};2;${t};${u};${r}m`,a={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};Object.keys(a.modifier);var $t=Object.keys(a.color),Rt=Object.keys(a.bgColor);[...$t,...Rt];function jt(){let e=new Map;for(let[t,u]of Object.entries(a)){for(let[r,D]of Object.entries(u))a[r]={open:`\x1B[${D[0]}m`,close:`\x1B[${D[1]}m`},u[r]=a[r],e.set(D[0],D[1]);Object.defineProperty(a,t,{value:u,enumerable:!1});}return Object.defineProperty(a,"codes",{value:e,enumerable:!1}),a.color.close="\x1B[39m",a.bgColor.close="\x1B[49m",a.color.ansi=Se(),a.color.ansi256=Te(),a.color.ansi16m=Pe(),a.bgColor.ansi=Se(10),a.bgColor.ansi256=Te(10),a.bgColor.ansi16m=Pe(10),Object.defineProperties(a,{rgbToAnsi256:{value(t,u,r){return t===u&&u===r?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(u/255*5)+Math.round(r/255*5)},enumerable:!1},hexToRgb:{value(t){let u=/[a-f\d]{6}|[a-f\d]{3}/i.exec(t.toString(16));if(!u)return [0,0,0];let[r]=u;r.length===3&&(r=[...r].map(i=>i+i).join(""));let D=Number.parseInt(r,16);return [D>>16&255,D>>8&255,D&255]},enumerable:!1},hexToAnsi256:{value:t=>a.rgbToAnsi256(...a.hexToRgb(t)),enumerable:!1},ansi256ToAnsi:{value(t){if(t<8)return 30+t;if(t<16)return 90+(t-8);let u,r,D;if(t>=232)u=((t-232)*10+8)/255,r=u,D=u;else {t-=16;let n=t%36;u=Math.floor(t/36)/5,r=Math.floor(n/6)/5,D=n%6/5;}let i=Math.max(u,r,D)*2;if(i===0)return 30;let s=30+(Math.round(D)<<2|Math.round(r)<<1|Math.round(u));return i===2&&(s+=60),s},enumerable:!1},rgbToAnsi:{value:(t,u,r)=>a.ansi256ToAnsi(a.rgbToAnsi256(t,u,r)),enumerable:!1},hexToAnsi:{value:t=>a.ansi256ToAnsi(a.hexToAnsi256(t)),enumerable:!1}}),a}var Mt=jt(),d=Mt;function f(e,t=globalThis.Deno?globalThis.Deno.args:C__namespace.default.argv){let u=e.startsWith("-")?"":e.length===1?"-":"--",r=t.indexOf(u+e),D=t.indexOf("--");return r!==-1&&(D===-1||r<D)}var{env:F}=C__namespace.default,j;f("no-color")||f("no-colors")||f("color=false")||f("color=never")?j=0:(f("color")||f("colors")||f("color=true")||f("color=always"))&&(j=1);function Lt(){if("FORCE_COLOR"in F)return F.FORCE_COLOR==="true"?1:F.FORCE_COLOR==="false"?0:F.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(F.FORCE_COLOR,10),3)}function Gt(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function Wt(e,{streamIsTTY:t,sniffFlags:u=!0}={}){let r=Lt();r!==void 0&&(j=r);let D=u?j:r;if(D===0)return 0;if(u){if(f("color=16m")||f("color=full")||f("color=truecolor"))return 3;if(f("color=256"))return 2}if("TF_BUILD"in F&&"AGENT_NAME"in F)return 1;if(e&&!t&&D===void 0)return 0;let i=D||0;if(F.TERM==="dumb")return i;if(C__namespace.default.platform==="win32"){let s=kt__default.default.release().split(".");return Number(s[0])>=10&&Number(s[2])>=10586?Number(s[2])>=14931?3:2:1}if("CI"in F)return "GITHUB_ACTIONS"in F||"GITEA_ACTIONS"in F?3:["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(s=>s in F)||F.CI_NAME==="codeship"?1:i;if("TEAMCITY_VERSION"in F)return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(F.TEAMCITY_VERSION)?1:0;if(F.COLORTERM==="truecolor"||F.TERM==="xterm-kitty")return 3;if("TERM_PROGRAM"in F){let s=Number.parseInt((F.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(F.TERM_PROGRAM){case"iTerm.app":return s>=3?3:2;case"Apple_Terminal":return 2}}return /-256(color)?$/i.test(F.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(F.TERM)||"COLORTERM"in F?1:i}function Ie(e,t={}){let u=Wt(e,{streamIsTTY:e&&e.isTTY,...t});return Gt(u)}var Ht={stdout:Ie({isTTY:Oe__default.default.isatty(1)}),stderr:Ie({isTTY:Oe__default.default.isatty(2)})},$e=Ht;function Re(e,t,u){let r=e.indexOf(t);if(r===-1)return e;let D=t.length,i=0,s="";do s+=e.slice(i,r)+t+u,i=r+D,r=e.indexOf(t,i);while(r!==-1);return s+=e.slice(i),s}function je(e,t,u,r){let D=0,i="";do{let s=e[r-1]==="\r";i+=e.slice(D,s?r-1:r)+t+(s?`\r
3
- `:`
4
- `)+u,D=r+1,r=e.indexOf(`
5
- `,D);}while(r!==-1);return i+=e.slice(D),i}var{stdout:Me,stderr:ke}=$e,ue=Symbol("GENERATOR"),x=Symbol("STYLER"),T=Symbol("IS_EMPTY"),Le=["ansi","ansi","ansi256","ansi16m"],b=Object.create(null),Ut=(e,t={})=>{if(t.level&&!(Number.isInteger(t.level)&&t.level>=0&&t.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let u=Me?Me.level:0;e.level=t.level===void 0?u:t.level;};var Yt=e=>{let t=(...u)=>u.join(" ");return Ut(t,e),Object.setPrototypeOf(t,P.prototype),t};function P(e){return Yt(e)}Object.setPrototypeOf(P.prototype,Function.prototype);for(let[e,t]of Object.entries(d))b[e]={get(){let u=M(this,De(t.open,t.close,this[x]),this[T]);return Object.defineProperty(this,e,{value:u}),u}};b.visible={get(){let e=M(this,this[x],!0);return Object.defineProperty(this,"visible",{value:e}),e}};var re=(e,t,u,...r)=>e==="rgb"?t==="ansi16m"?d[u].ansi16m(...r):t==="ansi256"?d[u].ansi256(d.rgbToAnsi256(...r)):d[u].ansi(d.rgbToAnsi(...r)):e==="hex"?re("rgb",t,u,...d.hexToRgb(...r)):d[u][e](...r),Vt=["rgb","hex","ansi256"];for(let e of Vt){b[e]={get(){let{level:u}=this;return function(...r){let D=De(re(e,Le[u],"color",...r),d.color.close,this[x]);return M(this,D,this[T])}}};let t="bg"+e[0].toUpperCase()+e.slice(1);b[t]={get(){let{level:u}=this;return function(...r){let D=De(re(e,Le[u],"bgColor",...r),d.bgColor.close,this[x]);return M(this,D,this[T])}}};}var qt=Object.defineProperties(()=>{},{...b,level:{enumerable:!0,get(){return this[ue].level},set(e){this[ue].level=e;}}}),De=(e,t,u)=>{let r,D;return u===void 0?(r=e,D=t):(r=u.openAll+e,D=t+u.closeAll),{open:e,close:t,openAll:r,closeAll:D,parent:u}},M=(e,t,u)=>{let r=(...D)=>Jt(r,D.length===1?""+D[0]:D.join(" "));return Object.setPrototypeOf(r,qt),r[ue]=e,r[x]=t,r[T]=u,r},Jt=(e,t)=>{if(e.level<=0||!t)return e[T]?"":t;let u=e[x];if(u===void 0)return t;let{openAll:r,closeAll:D}=u;if(t.includes("\x1B"))for(;u!==void 0;)t=Re(t,u.close,u.open),u=u.parent;let i=t.indexOf(`
6
- `);return i!==-1&&(t=je(t,D,r,i)),r+t+D};Object.defineProperties(P.prototype,b);var Kt=P();P({level:ke?ke.level:0});var p=Kt;var Zt=(e,t,u,r)=>{if(u==="length"||u==="prototype"||u==="arguments"||u==="caller")return;let D=Object.getOwnPropertyDescriptor(e,u),i=Object.getOwnPropertyDescriptor(t,u);!zt(D,i)&&r||Object.defineProperty(e,u,i);},zt=function(e,t){return e===void 0||e.configurable||e.writable===t.writable&&e.enumerable===t.enumerable&&e.configurable===t.configurable&&(e.writable||e.value===t.value)},Xt=(e,t)=>{let u=Object.getPrototypeOf(t);u!==Object.getPrototypeOf(e)&&Object.setPrototypeOf(e,u);},Qt=(e,t)=>`/* Wrapped ${e}*/
7
- ${t}`,eu=Object.getOwnPropertyDescriptor(Function.prototype,"toString"),tu=Object.getOwnPropertyDescriptor(Function.prototype.toString,"name"),uu=(e,t,u)=>{let r=u===""?"":`with ${u.trim()}() `,D=Qt.bind(null,r,t.toString());Object.defineProperty(D,"name",tu);let{writable:i,enumerable:s,configurable:n}=eu;Object.defineProperty(e,"toString",{value:D,writable:i,enumerable:s,configurable:n});};function ie(e,t,{ignoreNonConfigurable:u=!1}={}){let{name:r}=e;for(let D of Reflect.ownKeys(t))Zt(e,t,D,u);return Xt(e,t),uu(e,t,r),e}var k=new WeakMap,Ge=(e,t={})=>{if(typeof e!="function")throw new TypeError("Expected a function");let u,r=0,D=e.displayName||e.name||"<anonymous>",i=function(...s){if(k.set(i,++r),r===1)u=e.apply(this,s),e=void 0;else if(t.throw===!0)throw new Error(`Function \`${D}\` can only be called once`);return u};return ie(i,e),k.set(i,r),i};Ge.callCount=e=>{if(!k.has(e))throw new Error(`The given function \`${e.name}\` is not wrapped by the \`onetime\` package`);return k.get(e)};var We=Ge;var g=[];g.push("SIGHUP","SIGINT","SIGTERM");process.platform!=="win32"&&g.push("SIGALRM","SIGABRT","SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&g.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT");var L=e=>!!e&&typeof e=="object"&&typeof e.removeListener=="function"&&typeof e.emit=="function"&&typeof e.reallyExit=="function"&&typeof e.listeners=="function"&&typeof e.kill=="function"&&typeof e.pid=="number"&&typeof e.on=="function",oe=Symbol.for("signal-exit emitter"),se=globalThis,ru=Object.defineProperty.bind(Object),ne=class{emitted={afterExit:!1,exit:!1};listeners={afterExit:[],exit:[]};count=0;id=Math.random();constructor(){if(se[oe])return se[oe];ru(se,oe,{value:this,writable:!1,enumerable:!1,configurable:!1});}on(t,u){this.listeners[t].push(u);}removeListener(t,u){let r=this.listeners[t],D=r.indexOf(u);D!==-1&&(D===0&&r.length===1?r.length=0:r.splice(D,1));}emit(t,u,r){if(this.emitted[t])return !1;this.emitted[t]=!0;let D=!1;for(let i of this.listeners[t])D=i(u,r)===!0||D;return t==="exit"&&(D=this.emit("afterExit",u,r)||D),D}},G=class{},Du=e=>({onExit(t,u){return e.onExit(t,u)},load(){return e.load()},unload(){return e.unload()}}),ae=class extends G{onExit(){return ()=>{}}load(){}unload(){}},Fe=class extends G{#o=le.platform==="win32"?"SIGINT":"SIGHUP";#u=new ne;#e;#D;#c;#t={};#i=!1;constructor(t){super(),this.#e=t,this.#t={};for(let u of g)this.#t[u]=()=>{let r=this.#e.listeners(u),{count:D}=this.#u,i=t;if(typeof i.__signal_exit_emitter__=="object"&&typeof i.__signal_exit_emitter__.count=="number"&&(D+=i.__signal_exit_emitter__.count),r.length===D){this.unload();let s=this.#u.emit("exit",null,u),n=u==="SIGHUP"?this.#o:u;s||t.kill(t.pid,n);}};this.#c=t.reallyExit,this.#D=t.emit;}onExit(t,u){if(!L(this.#e))return ()=>{};this.#i===!1&&this.load();let r=u!=null&&u.alwaysLast?"afterExit":"exit";return this.#u.on(r,t),()=>{this.#u.removeListener(r,t),this.#u.listeners.exit.length===0&&this.#u.listeners.afterExit.length===0&&this.unload();}}load(){if(!this.#i){this.#i=!0,this.#u.count+=1;for(let t of g)try{let u=this.#t[t];u&&this.#e.on(t,u);}catch{}this.#e.emit=(t,...u)=>this.#m(t,...u),this.#e.reallyExit=t=>this.#r(t);}}unload(){this.#i&&(this.#i=!1,g.forEach(t=>{let u=this.#t[t];if(!u)throw new Error("Listener not defined for signal: "+t);try{this.#e.removeListener(t,u);}catch{}}),this.#e.emit=this.#D,this.#e.reallyExit=this.#c,this.#u.count-=1);}#r(t){return L(this.#e)?(this.#e.exitCode=t||0,this.#u.emit("exit",this.#e.exitCode,null),this.#c.call(this.#e,this.#e.exitCode)):0}#m(t,...u){let r=this.#D;if(t==="exit"&&L(this.#e)){typeof u[0]=="number"&&(this.#e.exitCode=u[0]);let D=r.call(this.#e,t,...u);return this.#u.emit("exit",this.#e.exitCode,null),D}else return r.call(this.#e,t,...u)}},le=globalThis.process,{onExit:He,load:Or,unload:Ir}=Du(L(le)?new Fe(le):new ae);var Ue=C__namespace.default.stderr.isTTY?C__namespace.default.stderr:C__namespace.default.stdout.isTTY?C__namespace.default.stdout:void 0,iu=Ue?We(()=>{He(()=>{Ue.write("\x1B[?25h");},{alwaysLast:!0});}):()=>{},Ye=iu;var H=!1,A={};A.show=(e=C__namespace.default.stderr)=>{e.isTTY&&(H=!1,e.write("\x1B[?25h"));};A.hide=(e=C__namespace.default.stderr)=>{e.isTTY&&(Ye(),H=!0,e.write("\x1B[?25l"));};A.toggle=(e,t)=>{e!==void 0&&(H=e),H?A.show(t):A.hide(t);};var ce=A;var $=Ne(me());function fe(){return C__namespace.default.platform!=="win32"?C__namespace.default.env.TERM!=="linux":!!C__namespace.default.env.CI||!!C__namespace.default.env.WT_SESSION||!!C__namespace.default.env.TERMINUS_SUBLIME||C__namespace.default.env.ConEmuTask==="{cmd::Cmder}"||C__namespace.default.env.TERM_PROGRAM==="Terminus-Sublime"||C__namespace.default.env.TERM_PROGRAM==="vscode"||C__namespace.default.env.TERM==="xterm-256color"||C__namespace.default.env.TERM==="alacritty"||C__namespace.default.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var su={info:p.blue("\u2139"),success:p.green("\u2714"),warning:p.yellow("\u26A0"),error:p.red("\u2716")},nu={info:p.blue("i"),success:p.green("\u221A"),warning:p.yellow("\u203C"),error:p.red("\xD7")},au=fe()?su:nu,O=au;function de({onlyFirst:e=!1}={}){let u=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(u,e?void 0:"g")}var Fu=de();function I(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return e.replace(Fu,"")}function Ze(e){return e===161||e===164||e===167||e===168||e===170||e===173||e===174||e>=176&&e<=180||e>=182&&e<=186||e>=188&&e<=191||e===198||e===208||e===215||e===216||e>=222&&e<=225||e===230||e>=232&&e<=234||e===236||e===237||e===240||e===242||e===243||e>=247&&e<=250||e===252||e===254||e===257||e===273||e===275||e===283||e===294||e===295||e===299||e>=305&&e<=307||e===312||e>=319&&e<=322||e===324||e>=328&&e<=331||e===333||e===338||e===339||e===358||e===359||e===363||e===462||e===464||e===466||e===468||e===470||e===472||e===474||e===476||e===593||e===609||e===708||e===711||e>=713&&e<=715||e===717||e===720||e>=728&&e<=731||e===733||e===735||e>=768&&e<=879||e>=913&&e<=929||e>=931&&e<=937||e>=945&&e<=961||e>=963&&e<=969||e===1025||e>=1040&&e<=1103||e===1105||e===8208||e>=8211&&e<=8214||e===8216||e===8217||e===8220||e===8221||e>=8224&&e<=8226||e>=8228&&e<=8231||e===8240||e===8242||e===8243||e===8245||e===8251||e===8254||e===8308||e===8319||e>=8321&&e<=8324||e===8364||e===8451||e===8453||e===8457||e===8467||e===8470||e===8481||e===8482||e===8486||e===8491||e===8531||e===8532||e>=8539&&e<=8542||e>=8544&&e<=8555||e>=8560&&e<=8569||e===8585||e>=8592&&e<=8601||e===8632||e===8633||e===8658||e===8660||e===8679||e===8704||e===8706||e===8707||e===8711||e===8712||e===8715||e===8719||e===8721||e===8725||e===8730||e>=8733&&e<=8736||e===8739||e===8741||e>=8743&&e<=8748||e===8750||e>=8756&&e<=8759||e===8764||e===8765||e===8776||e===8780||e===8786||e===8800||e===8801||e>=8804&&e<=8807||e===8810||e===8811||e===8814||e===8815||e===8834||e===8835||e===8838||e===8839||e===8853||e===8857||e===8869||e===8895||e===8978||e>=9312&&e<=9449||e>=9451&&e<=9547||e>=9552&&e<=9587||e>=9600&&e<=9615||e>=9618&&e<=9621||e===9632||e===9633||e>=9635&&e<=9641||e===9650||e===9651||e===9654||e===9655||e===9660||e===9661||e===9664||e===9665||e>=9670&&e<=9672||e===9675||e>=9678&&e<=9681||e>=9698&&e<=9701||e===9711||e===9733||e===9734||e===9737||e===9742||e===9743||e===9756||e===9758||e===9792||e===9794||e===9824||e===9825||e>=9827&&e<=9829||e>=9831&&e<=9834||e===9836||e===9837||e===9839||e===9886||e===9887||e===9919||e>=9926&&e<=9933||e>=9935&&e<=9939||e>=9941&&e<=9953||e===9955||e===9960||e===9961||e>=9963&&e<=9969||e===9972||e>=9974&&e<=9977||e===9979||e===9980||e===9982||e===9983||e===10045||e>=10102&&e<=10111||e>=11094&&e<=11097||e>=12872&&e<=12879||e>=57344&&e<=63743||e>=65024&&e<=65039||e===65533||e>=127232&&e<=127242||e>=127248&&e<=127277||e>=127280&&e<=127337||e>=127344&&e<=127373||e===127375||e===127376||e>=127387&&e<=127404||e>=917760&&e<=917999||e>=983040&&e<=1048573||e>=1048576&&e<=1114109}function ze(e){return e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510}function Xe(e){return e>=4352&&e<=4447||e===8986||e===8987||e===9001||e===9002||e>=9193&&e<=9196||e===9200||e===9203||e===9725||e===9726||e===9748||e===9749||e>=9776&&e<=9783||e>=9800&&e<=9811||e===9855||e>=9866&&e<=9871||e===9875||e===9889||e===9898||e===9899||e===9917||e===9918||e===9924||e===9925||e===9934||e===9940||e===9962||e===9970||e===9971||e===9973||e===9978||e===9981||e===9989||e===9994||e===9995||e===10024||e===10060||e===10062||e>=10067&&e<=10069||e===10071||e>=10133&&e<=10135||e===10160||e===10175||e===11035||e===11036||e===11088||e===11093||e>=11904&&e<=11929||e>=11931&&e<=12019||e>=12032&&e<=12245||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12353&&e<=12438||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12773||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=42124||e>=42128&&e<=42182||e>=43360&&e<=43388||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=94176&&e<=94180||e===94192||e===94193||e>=94208&&e<=100343||e>=100352&&e<=101589||e>=101631&&e<=101640||e>=110576&&e<=110579||e>=110581&&e<=110587||e===110589||e===110590||e>=110592&&e<=110882||e===110898||e>=110928&&e<=110930||e===110933||e>=110948&&e<=110951||e>=110960&&e<=111355||e>=119552&&e<=119638||e>=119648&&e<=119670||e===126980||e===127183||e===127374||e>=127377&&e<=127386||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e===127568||e===127569||e>=127584&&e<=127589||e>=127744&&e<=127776||e>=127789&&e<=127797||e>=127799&&e<=127868||e>=127870&&e<=127891||e>=127904&&e<=127946||e>=127951&&e<=127955||e>=127968&&e<=127984||e===127988||e>=127992&&e<=128062||e===128064||e>=128066&&e<=128252||e>=128255&&e<=128317||e>=128331&&e<=128334||e>=128336&&e<=128359||e===128378||e===128405||e===128406||e===128420||e>=128507&&e<=128591||e>=128640&&e<=128709||e===128716||e>=128720&&e<=128722||e>=128725&&e<=128727||e>=128732&&e<=128735||e===128747||e===128748||e>=128756&&e<=128764||e>=128992&&e<=129003||e===129008||e>=129292&&e<=129338||e>=129340&&e<=129349||e>=129351&&e<=129535||e>=129648&&e<=129660||e>=129664&&e<=129673||e>=129679&&e<=129734||e>=129742&&e<=129756||e>=129759&&e<=129769||e>=129776&&e<=129784||e>=131072&&e<=196605||e>=196608&&e<=262141}function lu(e){if(!Number.isSafeInteger(e))throw new TypeError(`Expected a code point, got \`${typeof e}\`.`)}function Qe(e,{ambiguousAsWide:t=!1}={}){return lu(e),ze(e)||Xe(e)||t&&Ze(e)?2:1}var et=()=>/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;var cu=new Intl.Segmenter,mu=new RegExp("^\\p{Default_Ignorable_Code_Point}$","u");function pe(e,t={}){if(typeof e!="string"||e.length===0)return 0;let{ambiguousIsNarrow:u=!0,countAnsiEscapeCodes:r=!1}=t;if(r||(e=I(e)),e.length===0)return 0;let D=0,i={ambiguousAsWide:!u};for(let{segment:s}of cu.segment(e)){let n=s.codePointAt(0);if(!(n<=31||n>=127&&n<=159)&&!(n>=8203&&n<=8207||n===65279)&&!(n>=768&&n<=879||n>=6832&&n<=6911||n>=7616&&n<=7679||n>=8400&&n<=8447||n>=65056&&n<=65071)&&!(n>=55296&&n<=57343)&&!(n>=65024&&n<=65039)&&!mu.test(s)){if(et().test(s)){D+=2;continue}D+=Qe(n,i);}}return D}function Ce({stream:e=process.stdout}={}){return !!(e&&e.isTTY&&process.env.TERM!=="dumb"&&!("CI"in process.env))}function Ee(){let{env:e}=C__namespace.default,{TERM:t,TERM_PROGRAM:u}=e;return C__namespace.default.platform!=="win32"?t!=="linux":!!e.WT_SESSION||!!e.TERMINUS_SUBLIME||e.ConEmuTask==="{cmd::Cmder}"||u==="Terminus-Sublime"||u==="vscode"||t==="xterm-256color"||t==="alacritty"||t==="rxvt-unicode"||t==="rxvt-unicode-256color"||e.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var fu=3,he=class{#o=0;start(){this.#o++,this.#o===1&&this.#u();}stop(){if(this.#o<=0)throw new Error("`stop` called more times than `start`");this.#o--,this.#o===0&&this.#e();}#u(){C__namespace.default.platform==="win32"||!C__namespace.default.stdin.isTTY||(C__namespace.default.stdin.setRawMode(!0),C__namespace.default.stdin.on("data",this.#D),C__namespace.default.stdin.resume());}#e(){C__namespace.default.stdin.isTTY&&(C__namespace.default.stdin.off("data",this.#D),C__namespace.default.stdin.pause(),C__namespace.default.stdin.setRawMode(!1));}#D(t){t[0]===fu&&C__namespace.default.emit("SIGINT");}},du=new he,Be=du;Ne(me());var ge=class{#o=0;#u=!1;#e=0;#D=-1;#c=0;#t;#i;#r;#m;#d;#a;#F;#l;#p;#s;#n;color;constructor(t){typeof t=="string"&&(t={text:t}),this.#t={color:"cyan",stream:C__namespace.default.stderr,discardStdin:!0,hideCursor:!0,...t},this.color=this.#t.color,this.spinner=this.#t.spinner,this.#d=this.#t.interval,this.#r=this.#t.stream,this.#a=typeof this.#t.isEnabled=="boolean"?this.#t.isEnabled:Ce({stream:this.#r}),this.#F=typeof this.#t.isSilent=="boolean"?this.#t.isSilent:!1,this.text=this.#t.text,this.prefixText=this.#t.prefixText,this.suffixText=this.#t.suffixText,this.indent=this.#t.indent,C__namespace.default.env.NODE_ENV==="test"&&(this._stream=this.#r,this._isEnabled=this.#a,Object.defineProperty(this,"_linesToClear",{get(){return this.#o},set(u){this.#o=u;}}),Object.defineProperty(this,"_frameIndex",{get(){return this.#D}}),Object.defineProperty(this,"_lineCount",{get(){return this.#e}}));}get indent(){return this.#l}set indent(t=0){if(!(t>=0&&Number.isInteger(t)))throw new Error("The `indent` option must be an integer from 0 and up");this.#l=t,this.#f();}get interval(){return this.#d??this.#i.interval??100}get spinner(){return this.#i}set spinner(t){if(this.#D=-1,this.#d=void 0,typeof t=="object"){if(t.frames===void 0)throw new Error("The given spinner must have a `frames` property");this.#i=t;}else if(!Ee())this.#i=$.default.line;else if(t===void 0)this.#i=$.default.dots;else if(t!=="default"&&$.default[t])this.#i=$.default[t];else throw new Error(`There is no built-in spinner named '${t}'. See https://github.com/sindresorhus/cli-spinners/blob/main/spinners.json for a full list.`)}get text(){return this.#p}set text(t=""){this.#p=t,this.#f();}get prefixText(){return this.#s}set prefixText(t=""){this.#s=t,this.#f();}get suffixText(){return this.#n}set suffixText(t=""){this.#n=t,this.#f();}get isSpinning(){return this.#m!==void 0}#C(t=this.#s,u=" "){return typeof t=="string"&&t!==""?t+u:typeof t=="function"?t()+u:""}#E(t=this.#n,u=" "){return typeof t=="string"&&t!==""?u+t:typeof t=="function"?u+t():""}#f(){let t=this.#r.columns??80,u=this.#C(this.#s,"-"),r=this.#E(this.#n,"-"),D=" ".repeat(this.#l)+u+"--"+this.#p+"--"+r;this.#e=0;for(let i of I(D).split(`
8
- `))this.#e+=Math.max(1,Math.ceil(pe(i,{countAnsiEscapeCodes:!0})/t));}get isEnabled(){return this.#a&&!this.#F}set isEnabled(t){if(typeof t!="boolean")throw new TypeError("The `isEnabled` option must be a boolean");this.#a=t;}get isSilent(){return this.#F}set isSilent(t){if(typeof t!="boolean")throw new TypeError("The `isSilent` option must be a boolean");this.#F=t;}frame(){let t=Date.now();(this.#D===-1||t-this.#c>=this.interval)&&(this.#D=++this.#D%this.#i.frames.length,this.#c=t);let{frames:u}=this.#i,r=u[this.#D];this.color&&(r=p[this.color](r));let D=typeof this.#s=="string"&&this.#s!==""?this.#s+" ":"",i=typeof this.text=="string"?" "+this.text:"",s=typeof this.#n=="string"&&this.#n!==""?" "+this.#n:"";return D+r+i+s}clear(){if(!this.#a||!this.#r.isTTY)return this;this.#r.cursorTo(0);for(let t=0;t<this.#o;t++)t>0&&this.#r.moveCursor(0,-1),this.#r.clearLine(1);return (this.#l||this.lastIndent!==this.#l)&&this.#r.cursorTo(this.#l),this.lastIndent=this.#l,this.#o=0,this}render(){return this.#F?this:(this.clear(),this.#r.write(this.frame()),this.#o=this.#e,this)}start(t){return t&&(this.text=t),this.#F?this:this.#a?this.isSpinning?this:(this.#t.hideCursor&&ce.hide(this.#r),this.#t.discardStdin&&C__namespace.default.stdin.isTTY&&(this.#u=!0,Be.start()),this.render(),this.#m=setInterval(this.render.bind(this),this.interval),this):(this.text&&this.#r.write(`- ${this.text}
9
- `),this)}stop(){return this.#a?(clearInterval(this.#m),this.#m=void 0,this.#D=0,this.clear(),this.#t.hideCursor&&ce.show(this.#r),this.#t.discardStdin&&C__namespace.default.stdin.isTTY&&this.#u&&(Be.stop(),this.#u=!1),this):this}succeed(t){return this.stopAndPersist({symbol:O.success,text:t})}fail(t){return this.stopAndPersist({symbol:O.error,text:t})}warn(t){return this.stopAndPersist({symbol:O.warning,text:t})}info(t){return this.stopAndPersist({symbol:O.info,text:t})}stopAndPersist(t={}){if(this.#F)return this;let u=t.prefixText??this.#s,r=this.#C(u," "),D=t.symbol??" ",i=t.text??this.text,n=typeof i=="string"?(D?" ":"")+i:"",m=t.suffixText??this.#n,l=this.#E(m," "),c=r+D+n+l+`
10
- `;return this.stop(),this.#r.write(c),this}};function _e(e){return new ge(e)}var ut={name:"@keload/node-red-dxp",version:"1.4.0",description:"",type:"module",scripts:{build:"tsup",watch:"tsup --watch",format:"pnpm biome format",lint:"pnpm biome lint","lint:check":"pnpm biome check",release:"pnpm release-it","release:test":"pnpm release-it --dry-run","docs:dev":"vitepress dev docs","docs:build":"vitepress build docs","docs:preview":"vitepress preview docs"},publishConfig:{access:"public"},bin:{"node-red-dxp":"./dist/cli/index.cjs"},exports:{".":{import:"./dist/index.js",require:"./dist/index.cjs"},"./editor":{import:"./dist/editor/index.js",require:"./dist/editor/index.cjs"},"./package.json":"./package.json"},keywords:[],author:"Cl\xE9ment BERARD <contact@berard.dev>",license:"MIT",repository:{type:"git",url:"https://github.com/clement-berard/node-red-dxp.git"},bugs:{url:"https://github.com/clement-berard/node-red-dxp/issues"},homepage:"https://github.com/clement-berard/node-red-dxp",devDependencies:{"@biomejs/biome":"1.9.4","@release-it/conventional-changelog":"9.0.3","@types/handlebars":"4.1.0","release-it":"17.10.0",tsup:"8.3.5",tsx:"4.19.2",typescript:"5.6.3",vitepress:"1.5.0"},dependencies:{"@fullhuman/postcss-purgecss":"^6.0.0","@types/html-minifier-terser":"7.0.2","@types/jquery":"3.5.32","@types/jqueryui":"1.12.23","@types/node-red":"1.3.5","@types/prettyjson":"0.0.33",autoprefixer:"^10.4.20","browser-sync":"3.0.3",chokidar:"4.0.1",commander:"12.1.0",consola:"3.2.3",cosmiconfig:"9.0.0",cssnano:"^7.0.6",esbuild:"0.24.0",glob:"11.0.0",handlebars:"4.7.8","html-minifier-terser":"7.2.0","merge-anything":"6.0.2",nodemon:"3.1.7",ora:"8.1.1",postcss:"^8.4.49",prettyjson:"1.2.5",radash:"12.1.0",sass:"1.81.0","solid-js":"1.9.3",tailwindcss:"^3.4.15"},files:["dist"]};function V(e){return Object.prototype.toString.call(e).slice(8,-1)}function w(e){if(V(e)!=="Object")return !1;let t=Object.getPrototypeOf(e);return !!t&&t.constructor===Object&&t===Object.prototype}function q(e){return V(e)==="Symbol"}function rt(e,t,u,r){let D={}.propertyIsEnumerable.call(r,t)?"enumerable":"nonenumerable";D==="enumerable"&&(e[t]=u),D==="nonenumerable"&&Object.defineProperty(e,t,{value:u,enumerable:!1,writable:!0,configurable:!0});}function Dt(e,t,u){if(!w(t))return t;let r={};if(w(e)){let n=Object.getOwnPropertyNames(e),m=Object.getOwnPropertySymbols(e);r=[...n,...m].reduce((l,c)=>{let ee=e[c];return (!q(c)&&!Object.getOwnPropertyNames(t).includes(c)||q(c)&&!Object.getOwnPropertySymbols(t).includes(c))&&rt(l,c,ee,e),l},{});}let D=Object.getOwnPropertyNames(t),i=Object.getOwnPropertySymbols(t);return [...D,...i].reduce((n,m)=>{let l=t[m],c=w(e)?e[m]:void 0;c!==void 0&&w(l)&&(l=Dt(c,l));let ee=l;return rt(n,m,ee,t),n},r)}function it(e,...t){return t.reduce((u,r)=>Dt(u,r),e)}var ot={libCacheDir:".node-red-dx",srcDir:"src",nodesDirName:"nodes",nodes:{controllerName:"controller",editor:{dirName:"editor",htmlName:"index",tsName:"index"}},builder:{outputDir:"dist"},watcher:{nodeRed:{enabled:!0,path:"~/.node-red",url:"http://localhost:1880"}}};var yu="node-red-dx",xu=e=>e.replace("@","").replace("/","-");function bu(){let e=cosmiconfig.cosmiconfigSync(yu);try{let t=e.search();return it(ot,t?t.config:{})}catch(t){throw console.error("Error while loading configuration",t),t}}var h=bu(),_=process.cwd(),st=JSON.parse(at.readFileSync(`${_}/package.json`,"utf-8")),xe=`${_}/${h.srcDir}`,Au=`${_}/resources`,J=`${xe}/${h.nodesDirName}`,ye=`${_}/${h.libCacheDir}`,wu=`${Ft__default.default.resolve(__dirname,"..")}`,nt=xu(st.name);function vu(){return glob.globSync(`${J}/*`,{withFileTypes:!0}).map(t=>{let u=t.fullpath(),r=`${u}/${h.nodes.editor.dirName}`,D=u.replace(_,"").slice(1),i=`${D}/${h.nodes.editor.dirName}`,s=glob.globSync(`${r}/**/*.scss`),n=glob.globSync(`${u}/doc.mdx`),m=glob.globSync(`${u}/doc.md`),l=radash.dash(t.name);return {fullEditorPath:r,fullPath:u,name:t.name,pascalName:radash.pascal(t.name),dashName:l,relativeEditorPath:i,relativePath:D,nodeIdentifier:`${nt}-${l}`,fullControllerPath:`${u}/${h.nodes.controllerName}.ts`,editor:{tsPath:`${r}/${h.nodes.editor.tsName}.ts`,htmlPath:`${r}/${h.nodes.editor.htmlName}.html`,scssFiles:s},doc:{mdxFiles:n,mdFiles:m}}})}function Nu(){return {currentDir:_,pathSrcDir:xe,pathSrcNodesDir:J,additionalResourcesDir:Au,pathDist:`${_}/${h.builder.outputDir}`,currentPackagedDistPath:wu,cacheDirFiles:{controllerIndex:`${ye}/controller-index.ts`,editorIndex:`${ye}/editor-index.ts`},pathLibCacheDir:ye,packageName:st.name,packageNameSlug:nt,config:h,resolvedSrcPathsScss:glob.globSync(`${xe}/**/*.scss`,{ignore:`${J}/**/*.scss`}),resolvedNodesPaths:glob.globSync(`${J}/*`),listNodesFull:vu()}}var o=Nu();var lt=`${Ft__default.default.resolve(__dirname,"..")}`;function K(e){at__default.default.existsSync(e)||at__default.default.mkdirSync(e,{recursive:!0});}async function B(e,t){try{await be__default.default.writeFile(e,t);}catch(u){console.error("Error writing controller index:",u);}}async function ct(e){for(let t of e)try{let u=Ft__default.default.resolve(t),r=await be__default.default.stat(u).catch(()=>null);r!=null&&r.isDirectory()&&await be__default.default.rm(u,{recursive:!0,force:!0});}catch(u){console.error(`Error cleaning path (${t}): ${u}`);}}var Z=class{params;constructor(t){this.params={minify:!1,...t};}async getControllerIndexContent(){return `
2
+ 'use strict';
3
+
4
+ var perf_hooks = require('perf_hooks');
5
+ var process6 = require('process');
6
+ var commander = require('commander');
7
+ var os = require('os');
8
+ var tty = require('tty');
9
+ var fs = require('fs');
10
+ var path2 = require('path');
11
+ var cosmiconfig = require('cosmiconfig');
12
+ var glob = require('glob');
13
+ var radash = require('radash');
14
+ var fsPromise = require('fs/promises');
15
+ var esbuild = require('esbuild');
16
+ var htmlMinifierTerser = require('html-minifier-terser');
17
+ var purgeCss = require('@fullhuman/postcss-purgecss');
18
+ var autoprefixer = require('autoprefixer');
19
+ var cssnano = require('cssnano');
20
+ var postcss = require('postcss');
21
+ var sass = require('sass');
22
+ var tailwindcss = require('tailwindcss');
23
+ var consola = require('consola');
24
+ var prettyJson = require('prettyjson');
25
+ var Handlebars = require('handlebars');
26
+ var browserSync = require('browser-sync');
27
+ var chokidar = require('chokidar');
28
+ var nodemon = require('nodemon');
29
+
30
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
31
+
32
+ function _interopNamespace(e) {
33
+ if (e && e.__esModule) return e;
34
+ var n = Object.create(null);
35
+ if (e) {
36
+ Object.keys(e).forEach(function (k) {
37
+ if (k !== 'default') {
38
+ var d = Object.getOwnPropertyDescriptor(e, k);
39
+ Object.defineProperty(n, k, d.get ? d : {
40
+ enumerable: true,
41
+ get: function () { return e[k]; }
42
+ });
43
+ }
44
+ });
45
+ }
46
+ n.default = e;
47
+ return Object.freeze(n);
48
+ }
49
+
50
+ var process6__namespace = /*#__PURE__*/_interopNamespace(process6);
51
+ var os__default = /*#__PURE__*/_interopDefault(os);
52
+ var tty__default = /*#__PURE__*/_interopDefault(tty);
53
+ var fs__default = /*#__PURE__*/_interopDefault(fs);
54
+ var path2__default = /*#__PURE__*/_interopDefault(path2);
55
+ var fsPromise__default = /*#__PURE__*/_interopDefault(fsPromise);
56
+ var esbuild__default = /*#__PURE__*/_interopDefault(esbuild);
57
+ var purgeCss__default = /*#__PURE__*/_interopDefault(purgeCss);
58
+ var autoprefixer__default = /*#__PURE__*/_interopDefault(autoprefixer);
59
+ var cssnano__default = /*#__PURE__*/_interopDefault(cssnano);
60
+ var postcss__default = /*#__PURE__*/_interopDefault(postcss);
61
+ var sass__namespace = /*#__PURE__*/_interopNamespace(sass);
62
+ var tailwindcss__default = /*#__PURE__*/_interopDefault(tailwindcss);
63
+ var prettyJson__default = /*#__PURE__*/_interopDefault(prettyJson);
64
+ var Handlebars__default = /*#__PURE__*/_interopDefault(Handlebars);
65
+ var browserSync__default = /*#__PURE__*/_interopDefault(browserSync);
66
+ var chokidar__default = /*#__PURE__*/_interopDefault(chokidar);
67
+ var nodemon__default = /*#__PURE__*/_interopDefault(nodemon);
68
+
69
+ var __create = Object.create;
70
+ var __defProp = Object.defineProperty;
71
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
72
+ var __getOwnPropNames = Object.getOwnPropertyNames;
73
+ var __getProtoOf = Object.getPrototypeOf;
74
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
75
+ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
76
+ get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
77
+ }) : x)(function(x) {
78
+ if (typeof require !== "undefined") return require.apply(this, arguments);
79
+ throw Error('Dynamic require of "' + x + '" is not supported');
80
+ });
81
+ var __commonJS = (cb, mod) => function __require2() {
82
+ return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
83
+ };
84
+ var __copyProps = (to, from, except, desc) => {
85
+ if (from && typeof from === "object" || typeof from === "function") {
86
+ for (let key of __getOwnPropNames(from))
87
+ if (!__hasOwnProp.call(to, key) && key !== except)
88
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
89
+ }
90
+ return to;
91
+ };
92
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
93
+ // If the importer is in node compatibility mode or this is not an ESM
94
+ // file that has been converted to a CommonJS file using a Babel-
95
+ // compatible transform (i.e. "__esModule" has not been set), then set
96
+ // "default" to the CommonJS "module.exports" for node compatibility.
97
+ __defProp(target, "default", { value: mod, enumerable: true }) ,
98
+ mod
99
+ ));
100
+
101
+ // node_modules/.pnpm/cli-spinners@2.9.2/node_modules/cli-spinners/spinners.json
102
+ var require_spinners = __commonJS({
103
+ "node_modules/.pnpm/cli-spinners@2.9.2/node_modules/cli-spinners/spinners.json"(exports, module) {
104
+ module.exports = {
105
+ dots: {
106
+ interval: 80,
107
+ frames: [
108
+ "\u280B",
109
+ "\u2819",
110
+ "\u2839",
111
+ "\u2838",
112
+ "\u283C",
113
+ "\u2834",
114
+ "\u2826",
115
+ "\u2827",
116
+ "\u2807",
117
+ "\u280F"
118
+ ]
119
+ },
120
+ dots2: {
121
+ interval: 80,
122
+ frames: [
123
+ "\u28FE",
124
+ "\u28FD",
125
+ "\u28FB",
126
+ "\u28BF",
127
+ "\u287F",
128
+ "\u28DF",
129
+ "\u28EF",
130
+ "\u28F7"
131
+ ]
132
+ },
133
+ dots3: {
134
+ interval: 80,
135
+ frames: [
136
+ "\u280B",
137
+ "\u2819",
138
+ "\u281A",
139
+ "\u281E",
140
+ "\u2816",
141
+ "\u2826",
142
+ "\u2834",
143
+ "\u2832",
144
+ "\u2833",
145
+ "\u2813"
146
+ ]
147
+ },
148
+ dots4: {
149
+ interval: 80,
150
+ frames: [
151
+ "\u2804",
152
+ "\u2806",
153
+ "\u2807",
154
+ "\u280B",
155
+ "\u2819",
156
+ "\u2838",
157
+ "\u2830",
158
+ "\u2820",
159
+ "\u2830",
160
+ "\u2838",
161
+ "\u2819",
162
+ "\u280B",
163
+ "\u2807",
164
+ "\u2806"
165
+ ]
166
+ },
167
+ dots5: {
168
+ interval: 80,
169
+ frames: [
170
+ "\u280B",
171
+ "\u2819",
172
+ "\u281A",
173
+ "\u2812",
174
+ "\u2802",
175
+ "\u2802",
176
+ "\u2812",
177
+ "\u2832",
178
+ "\u2834",
179
+ "\u2826",
180
+ "\u2816",
181
+ "\u2812",
182
+ "\u2810",
183
+ "\u2810",
184
+ "\u2812",
185
+ "\u2813",
186
+ "\u280B"
187
+ ]
188
+ },
189
+ dots6: {
190
+ interval: 80,
191
+ frames: [
192
+ "\u2801",
193
+ "\u2809",
194
+ "\u2819",
195
+ "\u281A",
196
+ "\u2812",
197
+ "\u2802",
198
+ "\u2802",
199
+ "\u2812",
200
+ "\u2832",
201
+ "\u2834",
202
+ "\u2824",
203
+ "\u2804",
204
+ "\u2804",
205
+ "\u2824",
206
+ "\u2834",
207
+ "\u2832",
208
+ "\u2812",
209
+ "\u2802",
210
+ "\u2802",
211
+ "\u2812",
212
+ "\u281A",
213
+ "\u2819",
214
+ "\u2809",
215
+ "\u2801"
216
+ ]
217
+ },
218
+ dots7: {
219
+ interval: 80,
220
+ frames: [
221
+ "\u2808",
222
+ "\u2809",
223
+ "\u280B",
224
+ "\u2813",
225
+ "\u2812",
226
+ "\u2810",
227
+ "\u2810",
228
+ "\u2812",
229
+ "\u2816",
230
+ "\u2826",
231
+ "\u2824",
232
+ "\u2820",
233
+ "\u2820",
234
+ "\u2824",
235
+ "\u2826",
236
+ "\u2816",
237
+ "\u2812",
238
+ "\u2810",
239
+ "\u2810",
240
+ "\u2812",
241
+ "\u2813",
242
+ "\u280B",
243
+ "\u2809",
244
+ "\u2808"
245
+ ]
246
+ },
247
+ dots8: {
248
+ interval: 80,
249
+ frames: [
250
+ "\u2801",
251
+ "\u2801",
252
+ "\u2809",
253
+ "\u2819",
254
+ "\u281A",
255
+ "\u2812",
256
+ "\u2802",
257
+ "\u2802",
258
+ "\u2812",
259
+ "\u2832",
260
+ "\u2834",
261
+ "\u2824",
262
+ "\u2804",
263
+ "\u2804",
264
+ "\u2824",
265
+ "\u2820",
266
+ "\u2820",
267
+ "\u2824",
268
+ "\u2826",
269
+ "\u2816",
270
+ "\u2812",
271
+ "\u2810",
272
+ "\u2810",
273
+ "\u2812",
274
+ "\u2813",
275
+ "\u280B",
276
+ "\u2809",
277
+ "\u2808",
278
+ "\u2808"
279
+ ]
280
+ },
281
+ dots9: {
282
+ interval: 80,
283
+ frames: [
284
+ "\u28B9",
285
+ "\u28BA",
286
+ "\u28BC",
287
+ "\u28F8",
288
+ "\u28C7",
289
+ "\u2867",
290
+ "\u2857",
291
+ "\u284F"
292
+ ]
293
+ },
294
+ dots10: {
295
+ interval: 80,
296
+ frames: [
297
+ "\u2884",
298
+ "\u2882",
299
+ "\u2881",
300
+ "\u2841",
301
+ "\u2848",
302
+ "\u2850",
303
+ "\u2860"
304
+ ]
305
+ },
306
+ dots11: {
307
+ interval: 100,
308
+ frames: [
309
+ "\u2801",
310
+ "\u2802",
311
+ "\u2804",
312
+ "\u2840",
313
+ "\u2880",
314
+ "\u2820",
315
+ "\u2810",
316
+ "\u2808"
317
+ ]
318
+ },
319
+ dots12: {
320
+ interval: 80,
321
+ frames: [
322
+ "\u2880\u2800",
323
+ "\u2840\u2800",
324
+ "\u2804\u2800",
325
+ "\u2882\u2800",
326
+ "\u2842\u2800",
327
+ "\u2805\u2800",
328
+ "\u2883\u2800",
329
+ "\u2843\u2800",
330
+ "\u280D\u2800",
331
+ "\u288B\u2800",
332
+ "\u284B\u2800",
333
+ "\u280D\u2801",
334
+ "\u288B\u2801",
335
+ "\u284B\u2801",
336
+ "\u280D\u2809",
337
+ "\u280B\u2809",
338
+ "\u280B\u2809",
339
+ "\u2809\u2819",
340
+ "\u2809\u2819",
341
+ "\u2809\u2829",
342
+ "\u2808\u2899",
343
+ "\u2808\u2859",
344
+ "\u2888\u2829",
345
+ "\u2840\u2899",
346
+ "\u2804\u2859",
347
+ "\u2882\u2829",
348
+ "\u2842\u2898",
349
+ "\u2805\u2858",
350
+ "\u2883\u2828",
351
+ "\u2843\u2890",
352
+ "\u280D\u2850",
353
+ "\u288B\u2820",
354
+ "\u284B\u2880",
355
+ "\u280D\u2841",
356
+ "\u288B\u2801",
357
+ "\u284B\u2801",
358
+ "\u280D\u2809",
359
+ "\u280B\u2809",
360
+ "\u280B\u2809",
361
+ "\u2809\u2819",
362
+ "\u2809\u2819",
363
+ "\u2809\u2829",
364
+ "\u2808\u2899",
365
+ "\u2808\u2859",
366
+ "\u2808\u2829",
367
+ "\u2800\u2899",
368
+ "\u2800\u2859",
369
+ "\u2800\u2829",
370
+ "\u2800\u2898",
371
+ "\u2800\u2858",
372
+ "\u2800\u2828",
373
+ "\u2800\u2890",
374
+ "\u2800\u2850",
375
+ "\u2800\u2820",
376
+ "\u2800\u2880",
377
+ "\u2800\u2840"
378
+ ]
379
+ },
380
+ dots13: {
381
+ interval: 80,
382
+ frames: [
383
+ "\u28FC",
384
+ "\u28F9",
385
+ "\u28BB",
386
+ "\u283F",
387
+ "\u285F",
388
+ "\u28CF",
389
+ "\u28E7",
390
+ "\u28F6"
391
+ ]
392
+ },
393
+ dots8Bit: {
394
+ interval: 80,
395
+ frames: [
396
+ "\u2800",
397
+ "\u2801",
398
+ "\u2802",
399
+ "\u2803",
400
+ "\u2804",
401
+ "\u2805",
402
+ "\u2806",
403
+ "\u2807",
404
+ "\u2840",
405
+ "\u2841",
406
+ "\u2842",
407
+ "\u2843",
408
+ "\u2844",
409
+ "\u2845",
410
+ "\u2846",
411
+ "\u2847",
412
+ "\u2808",
413
+ "\u2809",
414
+ "\u280A",
415
+ "\u280B",
416
+ "\u280C",
417
+ "\u280D",
418
+ "\u280E",
419
+ "\u280F",
420
+ "\u2848",
421
+ "\u2849",
422
+ "\u284A",
423
+ "\u284B",
424
+ "\u284C",
425
+ "\u284D",
426
+ "\u284E",
427
+ "\u284F",
428
+ "\u2810",
429
+ "\u2811",
430
+ "\u2812",
431
+ "\u2813",
432
+ "\u2814",
433
+ "\u2815",
434
+ "\u2816",
435
+ "\u2817",
436
+ "\u2850",
437
+ "\u2851",
438
+ "\u2852",
439
+ "\u2853",
440
+ "\u2854",
441
+ "\u2855",
442
+ "\u2856",
443
+ "\u2857",
444
+ "\u2818",
445
+ "\u2819",
446
+ "\u281A",
447
+ "\u281B",
448
+ "\u281C",
449
+ "\u281D",
450
+ "\u281E",
451
+ "\u281F",
452
+ "\u2858",
453
+ "\u2859",
454
+ "\u285A",
455
+ "\u285B",
456
+ "\u285C",
457
+ "\u285D",
458
+ "\u285E",
459
+ "\u285F",
460
+ "\u2820",
461
+ "\u2821",
462
+ "\u2822",
463
+ "\u2823",
464
+ "\u2824",
465
+ "\u2825",
466
+ "\u2826",
467
+ "\u2827",
468
+ "\u2860",
469
+ "\u2861",
470
+ "\u2862",
471
+ "\u2863",
472
+ "\u2864",
473
+ "\u2865",
474
+ "\u2866",
475
+ "\u2867",
476
+ "\u2828",
477
+ "\u2829",
478
+ "\u282A",
479
+ "\u282B",
480
+ "\u282C",
481
+ "\u282D",
482
+ "\u282E",
483
+ "\u282F",
484
+ "\u2868",
485
+ "\u2869",
486
+ "\u286A",
487
+ "\u286B",
488
+ "\u286C",
489
+ "\u286D",
490
+ "\u286E",
491
+ "\u286F",
492
+ "\u2830",
493
+ "\u2831",
494
+ "\u2832",
495
+ "\u2833",
496
+ "\u2834",
497
+ "\u2835",
498
+ "\u2836",
499
+ "\u2837",
500
+ "\u2870",
501
+ "\u2871",
502
+ "\u2872",
503
+ "\u2873",
504
+ "\u2874",
505
+ "\u2875",
506
+ "\u2876",
507
+ "\u2877",
508
+ "\u2838",
509
+ "\u2839",
510
+ "\u283A",
511
+ "\u283B",
512
+ "\u283C",
513
+ "\u283D",
514
+ "\u283E",
515
+ "\u283F",
516
+ "\u2878",
517
+ "\u2879",
518
+ "\u287A",
519
+ "\u287B",
520
+ "\u287C",
521
+ "\u287D",
522
+ "\u287E",
523
+ "\u287F",
524
+ "\u2880",
525
+ "\u2881",
526
+ "\u2882",
527
+ "\u2883",
528
+ "\u2884",
529
+ "\u2885",
530
+ "\u2886",
531
+ "\u2887",
532
+ "\u28C0",
533
+ "\u28C1",
534
+ "\u28C2",
535
+ "\u28C3",
536
+ "\u28C4",
537
+ "\u28C5",
538
+ "\u28C6",
539
+ "\u28C7",
540
+ "\u2888",
541
+ "\u2889",
542
+ "\u288A",
543
+ "\u288B",
544
+ "\u288C",
545
+ "\u288D",
546
+ "\u288E",
547
+ "\u288F",
548
+ "\u28C8",
549
+ "\u28C9",
550
+ "\u28CA",
551
+ "\u28CB",
552
+ "\u28CC",
553
+ "\u28CD",
554
+ "\u28CE",
555
+ "\u28CF",
556
+ "\u2890",
557
+ "\u2891",
558
+ "\u2892",
559
+ "\u2893",
560
+ "\u2894",
561
+ "\u2895",
562
+ "\u2896",
563
+ "\u2897",
564
+ "\u28D0",
565
+ "\u28D1",
566
+ "\u28D2",
567
+ "\u28D3",
568
+ "\u28D4",
569
+ "\u28D5",
570
+ "\u28D6",
571
+ "\u28D7",
572
+ "\u2898",
573
+ "\u2899",
574
+ "\u289A",
575
+ "\u289B",
576
+ "\u289C",
577
+ "\u289D",
578
+ "\u289E",
579
+ "\u289F",
580
+ "\u28D8",
581
+ "\u28D9",
582
+ "\u28DA",
583
+ "\u28DB",
584
+ "\u28DC",
585
+ "\u28DD",
586
+ "\u28DE",
587
+ "\u28DF",
588
+ "\u28A0",
589
+ "\u28A1",
590
+ "\u28A2",
591
+ "\u28A3",
592
+ "\u28A4",
593
+ "\u28A5",
594
+ "\u28A6",
595
+ "\u28A7",
596
+ "\u28E0",
597
+ "\u28E1",
598
+ "\u28E2",
599
+ "\u28E3",
600
+ "\u28E4",
601
+ "\u28E5",
602
+ "\u28E6",
603
+ "\u28E7",
604
+ "\u28A8",
605
+ "\u28A9",
606
+ "\u28AA",
607
+ "\u28AB",
608
+ "\u28AC",
609
+ "\u28AD",
610
+ "\u28AE",
611
+ "\u28AF",
612
+ "\u28E8",
613
+ "\u28E9",
614
+ "\u28EA",
615
+ "\u28EB",
616
+ "\u28EC",
617
+ "\u28ED",
618
+ "\u28EE",
619
+ "\u28EF",
620
+ "\u28B0",
621
+ "\u28B1",
622
+ "\u28B2",
623
+ "\u28B3",
624
+ "\u28B4",
625
+ "\u28B5",
626
+ "\u28B6",
627
+ "\u28B7",
628
+ "\u28F0",
629
+ "\u28F1",
630
+ "\u28F2",
631
+ "\u28F3",
632
+ "\u28F4",
633
+ "\u28F5",
634
+ "\u28F6",
635
+ "\u28F7",
636
+ "\u28B8",
637
+ "\u28B9",
638
+ "\u28BA",
639
+ "\u28BB",
640
+ "\u28BC",
641
+ "\u28BD",
642
+ "\u28BE",
643
+ "\u28BF",
644
+ "\u28F8",
645
+ "\u28F9",
646
+ "\u28FA",
647
+ "\u28FB",
648
+ "\u28FC",
649
+ "\u28FD",
650
+ "\u28FE",
651
+ "\u28FF"
652
+ ]
653
+ },
654
+ sand: {
655
+ interval: 80,
656
+ frames: [
657
+ "\u2801",
658
+ "\u2802",
659
+ "\u2804",
660
+ "\u2840",
661
+ "\u2848",
662
+ "\u2850",
663
+ "\u2860",
664
+ "\u28C0",
665
+ "\u28C1",
666
+ "\u28C2",
667
+ "\u28C4",
668
+ "\u28CC",
669
+ "\u28D4",
670
+ "\u28E4",
671
+ "\u28E5",
672
+ "\u28E6",
673
+ "\u28EE",
674
+ "\u28F6",
675
+ "\u28F7",
676
+ "\u28FF",
677
+ "\u287F",
678
+ "\u283F",
679
+ "\u289F",
680
+ "\u281F",
681
+ "\u285B",
682
+ "\u281B",
683
+ "\u282B",
684
+ "\u288B",
685
+ "\u280B",
686
+ "\u280D",
687
+ "\u2849",
688
+ "\u2809",
689
+ "\u2811",
690
+ "\u2821",
691
+ "\u2881"
692
+ ]
693
+ },
694
+ line: {
695
+ interval: 130,
696
+ frames: [
697
+ "-",
698
+ "\\",
699
+ "|",
700
+ "/"
701
+ ]
702
+ },
703
+ line2: {
704
+ interval: 100,
705
+ frames: [
706
+ "\u2802",
707
+ "-",
708
+ "\u2013",
709
+ "\u2014",
710
+ "\u2013",
711
+ "-"
712
+ ]
713
+ },
714
+ pipe: {
715
+ interval: 100,
716
+ frames: [
717
+ "\u2524",
718
+ "\u2518",
719
+ "\u2534",
720
+ "\u2514",
721
+ "\u251C",
722
+ "\u250C",
723
+ "\u252C",
724
+ "\u2510"
725
+ ]
726
+ },
727
+ simpleDots: {
728
+ interval: 400,
729
+ frames: [
730
+ ". ",
731
+ ".. ",
732
+ "...",
733
+ " "
734
+ ]
735
+ },
736
+ simpleDotsScrolling: {
737
+ interval: 200,
738
+ frames: [
739
+ ". ",
740
+ ".. ",
741
+ "...",
742
+ " ..",
743
+ " .",
744
+ " "
745
+ ]
746
+ },
747
+ star: {
748
+ interval: 70,
749
+ frames: [
750
+ "\u2736",
751
+ "\u2738",
752
+ "\u2739",
753
+ "\u273A",
754
+ "\u2739",
755
+ "\u2737"
756
+ ]
757
+ },
758
+ star2: {
759
+ interval: 80,
760
+ frames: [
761
+ "+",
762
+ "x",
763
+ "*"
764
+ ]
765
+ },
766
+ flip: {
767
+ interval: 70,
768
+ frames: [
769
+ "_",
770
+ "_",
771
+ "_",
772
+ "-",
773
+ "`",
774
+ "`",
775
+ "'",
776
+ "\xB4",
777
+ "-",
778
+ "_",
779
+ "_",
780
+ "_"
781
+ ]
782
+ },
783
+ hamburger: {
784
+ interval: 100,
785
+ frames: [
786
+ "\u2631",
787
+ "\u2632",
788
+ "\u2634"
789
+ ]
790
+ },
791
+ growVertical: {
792
+ interval: 120,
793
+ frames: [
794
+ "\u2581",
795
+ "\u2583",
796
+ "\u2584",
797
+ "\u2585",
798
+ "\u2586",
799
+ "\u2587",
800
+ "\u2586",
801
+ "\u2585",
802
+ "\u2584",
803
+ "\u2583"
804
+ ]
805
+ },
806
+ growHorizontal: {
807
+ interval: 120,
808
+ frames: [
809
+ "\u258F",
810
+ "\u258E",
811
+ "\u258D",
812
+ "\u258C",
813
+ "\u258B",
814
+ "\u258A",
815
+ "\u2589",
816
+ "\u258A",
817
+ "\u258B",
818
+ "\u258C",
819
+ "\u258D",
820
+ "\u258E"
821
+ ]
822
+ },
823
+ balloon: {
824
+ interval: 140,
825
+ frames: [
826
+ " ",
827
+ ".",
828
+ "o",
829
+ "O",
830
+ "@",
831
+ "*",
832
+ " "
833
+ ]
834
+ },
835
+ balloon2: {
836
+ interval: 120,
837
+ frames: [
838
+ ".",
839
+ "o",
840
+ "O",
841
+ "\xB0",
842
+ "O",
843
+ "o",
844
+ "."
845
+ ]
846
+ },
847
+ noise: {
848
+ interval: 100,
849
+ frames: [
850
+ "\u2593",
851
+ "\u2592",
852
+ "\u2591"
853
+ ]
854
+ },
855
+ bounce: {
856
+ interval: 120,
857
+ frames: [
858
+ "\u2801",
859
+ "\u2802",
860
+ "\u2804",
861
+ "\u2802"
862
+ ]
863
+ },
864
+ boxBounce: {
865
+ interval: 120,
866
+ frames: [
867
+ "\u2596",
868
+ "\u2598",
869
+ "\u259D",
870
+ "\u2597"
871
+ ]
872
+ },
873
+ boxBounce2: {
874
+ interval: 100,
875
+ frames: [
876
+ "\u258C",
877
+ "\u2580",
878
+ "\u2590",
879
+ "\u2584"
880
+ ]
881
+ },
882
+ triangle: {
883
+ interval: 50,
884
+ frames: [
885
+ "\u25E2",
886
+ "\u25E3",
887
+ "\u25E4",
888
+ "\u25E5"
889
+ ]
890
+ },
891
+ binary: {
892
+ interval: 80,
893
+ frames: [
894
+ "010010",
895
+ "001100",
896
+ "100101",
897
+ "111010",
898
+ "111101",
899
+ "010111",
900
+ "101011",
901
+ "111000",
902
+ "110011",
903
+ "110101"
904
+ ]
905
+ },
906
+ arc: {
907
+ interval: 100,
908
+ frames: [
909
+ "\u25DC",
910
+ "\u25E0",
911
+ "\u25DD",
912
+ "\u25DE",
913
+ "\u25E1",
914
+ "\u25DF"
915
+ ]
916
+ },
917
+ circle: {
918
+ interval: 120,
919
+ frames: [
920
+ "\u25E1",
921
+ "\u2299",
922
+ "\u25E0"
923
+ ]
924
+ },
925
+ squareCorners: {
926
+ interval: 180,
927
+ frames: [
928
+ "\u25F0",
929
+ "\u25F3",
930
+ "\u25F2",
931
+ "\u25F1"
932
+ ]
933
+ },
934
+ circleQuarters: {
935
+ interval: 120,
936
+ frames: [
937
+ "\u25F4",
938
+ "\u25F7",
939
+ "\u25F6",
940
+ "\u25F5"
941
+ ]
942
+ },
943
+ circleHalves: {
944
+ interval: 50,
945
+ frames: [
946
+ "\u25D0",
947
+ "\u25D3",
948
+ "\u25D1",
949
+ "\u25D2"
950
+ ]
951
+ },
952
+ squish: {
953
+ interval: 100,
954
+ frames: [
955
+ "\u256B",
956
+ "\u256A"
957
+ ]
958
+ },
959
+ toggle: {
960
+ interval: 250,
961
+ frames: [
962
+ "\u22B6",
963
+ "\u22B7"
964
+ ]
965
+ },
966
+ toggle2: {
967
+ interval: 80,
968
+ frames: [
969
+ "\u25AB",
970
+ "\u25AA"
971
+ ]
972
+ },
973
+ toggle3: {
974
+ interval: 120,
975
+ frames: [
976
+ "\u25A1",
977
+ "\u25A0"
978
+ ]
979
+ },
980
+ toggle4: {
981
+ interval: 100,
982
+ frames: [
983
+ "\u25A0",
984
+ "\u25A1",
985
+ "\u25AA",
986
+ "\u25AB"
987
+ ]
988
+ },
989
+ toggle5: {
990
+ interval: 100,
991
+ frames: [
992
+ "\u25AE",
993
+ "\u25AF"
994
+ ]
995
+ },
996
+ toggle6: {
997
+ interval: 300,
998
+ frames: [
999
+ "\u101D",
1000
+ "\u1040"
1001
+ ]
1002
+ },
1003
+ toggle7: {
1004
+ interval: 80,
1005
+ frames: [
1006
+ "\u29BE",
1007
+ "\u29BF"
1008
+ ]
1009
+ },
1010
+ toggle8: {
1011
+ interval: 100,
1012
+ frames: [
1013
+ "\u25CD",
1014
+ "\u25CC"
1015
+ ]
1016
+ },
1017
+ toggle9: {
1018
+ interval: 100,
1019
+ frames: [
1020
+ "\u25C9",
1021
+ "\u25CE"
1022
+ ]
1023
+ },
1024
+ toggle10: {
1025
+ interval: 100,
1026
+ frames: [
1027
+ "\u3282",
1028
+ "\u3280",
1029
+ "\u3281"
1030
+ ]
1031
+ },
1032
+ toggle11: {
1033
+ interval: 50,
1034
+ frames: [
1035
+ "\u29C7",
1036
+ "\u29C6"
1037
+ ]
1038
+ },
1039
+ toggle12: {
1040
+ interval: 120,
1041
+ frames: [
1042
+ "\u2617",
1043
+ "\u2616"
1044
+ ]
1045
+ },
1046
+ toggle13: {
1047
+ interval: 80,
1048
+ frames: [
1049
+ "=",
1050
+ "*",
1051
+ "-"
1052
+ ]
1053
+ },
1054
+ arrow: {
1055
+ interval: 100,
1056
+ frames: [
1057
+ "\u2190",
1058
+ "\u2196",
1059
+ "\u2191",
1060
+ "\u2197",
1061
+ "\u2192",
1062
+ "\u2198",
1063
+ "\u2193",
1064
+ "\u2199"
1065
+ ]
1066
+ },
1067
+ arrow2: {
1068
+ interval: 80,
1069
+ frames: [
1070
+ "\u2B06\uFE0F ",
1071
+ "\u2197\uFE0F ",
1072
+ "\u27A1\uFE0F ",
1073
+ "\u2198\uFE0F ",
1074
+ "\u2B07\uFE0F ",
1075
+ "\u2199\uFE0F ",
1076
+ "\u2B05\uFE0F ",
1077
+ "\u2196\uFE0F "
1078
+ ]
1079
+ },
1080
+ arrow3: {
1081
+ interval: 120,
1082
+ frames: [
1083
+ "\u25B9\u25B9\u25B9\u25B9\u25B9",
1084
+ "\u25B8\u25B9\u25B9\u25B9\u25B9",
1085
+ "\u25B9\u25B8\u25B9\u25B9\u25B9",
1086
+ "\u25B9\u25B9\u25B8\u25B9\u25B9",
1087
+ "\u25B9\u25B9\u25B9\u25B8\u25B9",
1088
+ "\u25B9\u25B9\u25B9\u25B9\u25B8"
1089
+ ]
1090
+ },
1091
+ bouncingBar: {
1092
+ interval: 80,
1093
+ frames: [
1094
+ "[ ]",
1095
+ "[= ]",
1096
+ "[== ]",
1097
+ "[=== ]",
1098
+ "[====]",
1099
+ "[ ===]",
1100
+ "[ ==]",
1101
+ "[ =]",
1102
+ "[ ]",
1103
+ "[ =]",
1104
+ "[ ==]",
1105
+ "[ ===]",
1106
+ "[====]",
1107
+ "[=== ]",
1108
+ "[== ]",
1109
+ "[= ]"
1110
+ ]
1111
+ },
1112
+ bouncingBall: {
1113
+ interval: 80,
1114
+ frames: [
1115
+ "( \u25CF )",
1116
+ "( \u25CF )",
1117
+ "( \u25CF )",
1118
+ "( \u25CF )",
1119
+ "( \u25CF)",
1120
+ "( \u25CF )",
1121
+ "( \u25CF )",
1122
+ "( \u25CF )",
1123
+ "( \u25CF )",
1124
+ "(\u25CF )"
1125
+ ]
1126
+ },
1127
+ smiley: {
1128
+ interval: 200,
1129
+ frames: [
1130
+ "\u{1F604} ",
1131
+ "\u{1F61D} "
1132
+ ]
1133
+ },
1134
+ monkey: {
1135
+ interval: 300,
1136
+ frames: [
1137
+ "\u{1F648} ",
1138
+ "\u{1F648} ",
1139
+ "\u{1F649} ",
1140
+ "\u{1F64A} "
1141
+ ]
1142
+ },
1143
+ hearts: {
1144
+ interval: 100,
1145
+ frames: [
1146
+ "\u{1F49B} ",
1147
+ "\u{1F499} ",
1148
+ "\u{1F49C} ",
1149
+ "\u{1F49A} ",
1150
+ "\u2764\uFE0F "
1151
+ ]
1152
+ },
1153
+ clock: {
1154
+ interval: 100,
1155
+ frames: [
1156
+ "\u{1F55B} ",
1157
+ "\u{1F550} ",
1158
+ "\u{1F551} ",
1159
+ "\u{1F552} ",
1160
+ "\u{1F553} ",
1161
+ "\u{1F554} ",
1162
+ "\u{1F555} ",
1163
+ "\u{1F556} ",
1164
+ "\u{1F557} ",
1165
+ "\u{1F558} ",
1166
+ "\u{1F559} ",
1167
+ "\u{1F55A} "
1168
+ ]
1169
+ },
1170
+ earth: {
1171
+ interval: 180,
1172
+ frames: [
1173
+ "\u{1F30D} ",
1174
+ "\u{1F30E} ",
1175
+ "\u{1F30F} "
1176
+ ]
1177
+ },
1178
+ material: {
1179
+ interval: 17,
1180
+ frames: [
1181
+ "\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
1182
+ "\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
1183
+ "\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
1184
+ "\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
1185
+ "\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
1186
+ "\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
1187
+ "\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
1188
+ "\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
1189
+ "\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
1190
+ "\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
1191
+ "\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
1192
+ "\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
1193
+ "\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
1194
+ "\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581",
1195
+ "\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581",
1196
+ "\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581",
1197
+ "\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581",
1198
+ "\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581",
1199
+ "\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581",
1200
+ "\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581",
1201
+ "\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581",
1202
+ "\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581",
1203
+ "\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581",
1204
+ "\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581",
1205
+ "\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581",
1206
+ "\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581",
1207
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
1208
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
1209
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
1210
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
1211
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
1212
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
1213
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
1214
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
1215
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
1216
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
1217
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
1218
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
1219
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588",
1220
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588",
1221
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588",
1222
+ "\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588",
1223
+ "\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588",
1224
+ "\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588",
1225
+ "\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588",
1226
+ "\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588",
1227
+ "\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588",
1228
+ "\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588",
1229
+ "\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588",
1230
+ "\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
1231
+ "\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
1232
+ "\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
1233
+ "\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
1234
+ "\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
1235
+ "\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
1236
+ "\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
1237
+ "\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
1238
+ "\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581",
1239
+ "\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581\u2581",
1240
+ "\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581",
1241
+ "\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581\u2581",
1242
+ "\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581\u2581",
1243
+ "\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581",
1244
+ "\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581",
1245
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581",
1246
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581",
1247
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581\u2581",
1248
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581",
1249
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581\u2581",
1250
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581",
1251
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581",
1252
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581",
1253
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581",
1254
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2581",
1255
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
1256
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588\u2588\u2588",
1257
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588\u2588",
1258
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588",
1259
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588",
1260
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588\u2588",
1261
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588",
1262
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588\u2588",
1263
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588",
1264
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588",
1265
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588\u2588",
1266
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588",
1267
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588",
1268
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2588",
1269
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
1270
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
1271
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581",
1272
+ "\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581\u2581"
1273
+ ]
1274
+ },
1275
+ moon: {
1276
+ interval: 80,
1277
+ frames: [
1278
+ "\u{1F311} ",
1279
+ "\u{1F312} ",
1280
+ "\u{1F313} ",
1281
+ "\u{1F314} ",
1282
+ "\u{1F315} ",
1283
+ "\u{1F316} ",
1284
+ "\u{1F317} ",
1285
+ "\u{1F318} "
1286
+ ]
1287
+ },
1288
+ runner: {
1289
+ interval: 140,
1290
+ frames: [
1291
+ "\u{1F6B6} ",
1292
+ "\u{1F3C3} "
1293
+ ]
1294
+ },
1295
+ pong: {
1296
+ interval: 80,
1297
+ frames: [
1298
+ "\u2590\u2802 \u258C",
1299
+ "\u2590\u2808 \u258C",
1300
+ "\u2590 \u2802 \u258C",
1301
+ "\u2590 \u2820 \u258C",
1302
+ "\u2590 \u2840 \u258C",
1303
+ "\u2590 \u2820 \u258C",
1304
+ "\u2590 \u2802 \u258C",
1305
+ "\u2590 \u2808 \u258C",
1306
+ "\u2590 \u2802 \u258C",
1307
+ "\u2590 \u2820 \u258C",
1308
+ "\u2590 \u2840 \u258C",
1309
+ "\u2590 \u2820 \u258C",
1310
+ "\u2590 \u2802 \u258C",
1311
+ "\u2590 \u2808 \u258C",
1312
+ "\u2590 \u2802\u258C",
1313
+ "\u2590 \u2820\u258C",
1314
+ "\u2590 \u2840\u258C",
1315
+ "\u2590 \u2820 \u258C",
1316
+ "\u2590 \u2802 \u258C",
1317
+ "\u2590 \u2808 \u258C",
1318
+ "\u2590 \u2802 \u258C",
1319
+ "\u2590 \u2820 \u258C",
1320
+ "\u2590 \u2840 \u258C",
1321
+ "\u2590 \u2820 \u258C",
1322
+ "\u2590 \u2802 \u258C",
1323
+ "\u2590 \u2808 \u258C",
1324
+ "\u2590 \u2802 \u258C",
1325
+ "\u2590 \u2820 \u258C",
1326
+ "\u2590 \u2840 \u258C",
1327
+ "\u2590\u2820 \u258C"
1328
+ ]
1329
+ },
1330
+ shark: {
1331
+ interval: 120,
1332
+ frames: [
1333
+ "\u2590|\\____________\u258C",
1334
+ "\u2590_|\\___________\u258C",
1335
+ "\u2590__|\\__________\u258C",
1336
+ "\u2590___|\\_________\u258C",
1337
+ "\u2590____|\\________\u258C",
1338
+ "\u2590_____|\\_______\u258C",
1339
+ "\u2590______|\\______\u258C",
1340
+ "\u2590_______|\\_____\u258C",
1341
+ "\u2590________|\\____\u258C",
1342
+ "\u2590_________|\\___\u258C",
1343
+ "\u2590__________|\\__\u258C",
1344
+ "\u2590___________|\\_\u258C",
1345
+ "\u2590____________|\\\u258C",
1346
+ "\u2590____________/|\u258C",
1347
+ "\u2590___________/|_\u258C",
1348
+ "\u2590__________/|__\u258C",
1349
+ "\u2590_________/|___\u258C",
1350
+ "\u2590________/|____\u258C",
1351
+ "\u2590_______/|_____\u258C",
1352
+ "\u2590______/|______\u258C",
1353
+ "\u2590_____/|_______\u258C",
1354
+ "\u2590____/|________\u258C",
1355
+ "\u2590___/|_________\u258C",
1356
+ "\u2590__/|__________\u258C",
1357
+ "\u2590_/|___________\u258C",
1358
+ "\u2590/|____________\u258C"
1359
+ ]
1360
+ },
1361
+ dqpb: {
1362
+ interval: 100,
1363
+ frames: [
1364
+ "d",
1365
+ "q",
1366
+ "p",
1367
+ "b"
1368
+ ]
1369
+ },
1370
+ weather: {
1371
+ interval: 100,
1372
+ frames: [
1373
+ "\u2600\uFE0F ",
1374
+ "\u2600\uFE0F ",
1375
+ "\u2600\uFE0F ",
1376
+ "\u{1F324} ",
1377
+ "\u26C5\uFE0F ",
1378
+ "\u{1F325} ",
1379
+ "\u2601\uFE0F ",
1380
+ "\u{1F327} ",
1381
+ "\u{1F328} ",
1382
+ "\u{1F327} ",
1383
+ "\u{1F328} ",
1384
+ "\u{1F327} ",
1385
+ "\u{1F328} ",
1386
+ "\u26C8 ",
1387
+ "\u{1F328} ",
1388
+ "\u{1F327} ",
1389
+ "\u{1F328} ",
1390
+ "\u2601\uFE0F ",
1391
+ "\u{1F325} ",
1392
+ "\u26C5\uFE0F ",
1393
+ "\u{1F324} ",
1394
+ "\u2600\uFE0F ",
1395
+ "\u2600\uFE0F "
1396
+ ]
1397
+ },
1398
+ christmas: {
1399
+ interval: 400,
1400
+ frames: [
1401
+ "\u{1F332}",
1402
+ "\u{1F384}"
1403
+ ]
1404
+ },
1405
+ grenade: {
1406
+ interval: 80,
1407
+ frames: [
1408
+ "\u060C ",
1409
+ "\u2032 ",
1410
+ " \xB4 ",
1411
+ " \u203E ",
1412
+ " \u2E0C",
1413
+ " \u2E0A",
1414
+ " |",
1415
+ " \u204E",
1416
+ " \u2055",
1417
+ " \u0DF4 ",
1418
+ " \u2053",
1419
+ " ",
1420
+ " ",
1421
+ " "
1422
+ ]
1423
+ },
1424
+ point: {
1425
+ interval: 125,
1426
+ frames: [
1427
+ "\u2219\u2219\u2219",
1428
+ "\u25CF\u2219\u2219",
1429
+ "\u2219\u25CF\u2219",
1430
+ "\u2219\u2219\u25CF",
1431
+ "\u2219\u2219\u2219"
1432
+ ]
1433
+ },
1434
+ layer: {
1435
+ interval: 150,
1436
+ frames: [
1437
+ "-",
1438
+ "=",
1439
+ "\u2261"
1440
+ ]
1441
+ },
1442
+ betaWave: {
1443
+ interval: 80,
1444
+ frames: [
1445
+ "\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2",
1446
+ "\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2\u03B2",
1447
+ "\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2\u03B2",
1448
+ "\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2\u03B2",
1449
+ "\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2\u03B2",
1450
+ "\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1\u03B2",
1451
+ "\u03B2\u03B2\u03B2\u03B2\u03B2\u03B2\u03C1"
1452
+ ]
1453
+ },
1454
+ fingerDance: {
1455
+ interval: 160,
1456
+ frames: [
1457
+ "\u{1F918} ",
1458
+ "\u{1F91F} ",
1459
+ "\u{1F596} ",
1460
+ "\u270B ",
1461
+ "\u{1F91A} ",
1462
+ "\u{1F446} "
1463
+ ]
1464
+ },
1465
+ fistBump: {
1466
+ interval: 80,
1467
+ frames: [
1468
+ "\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ",
1469
+ "\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ",
1470
+ "\u{1F91C}\u3000\u3000\u3000\u3000\u{1F91B} ",
1471
+ "\u3000\u{1F91C}\u3000\u3000\u{1F91B}\u3000 ",
1472
+ "\u3000\u3000\u{1F91C}\u{1F91B}\u3000\u3000 ",
1473
+ "\u3000\u{1F91C}\u2728\u{1F91B}\u3000\u3000 ",
1474
+ "\u{1F91C}\u3000\u2728\u3000\u{1F91B}\u3000 "
1475
+ ]
1476
+ },
1477
+ soccerHeader: {
1478
+ interval: 80,
1479
+ frames: [
1480
+ " \u{1F9D1}\u26BD\uFE0F \u{1F9D1} ",
1481
+ "\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ",
1482
+ "\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ",
1483
+ "\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ",
1484
+ "\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ",
1485
+ "\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ",
1486
+ "\u{1F9D1} \u26BD\uFE0F\u{1F9D1} ",
1487
+ "\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ",
1488
+ "\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ",
1489
+ "\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ",
1490
+ "\u{1F9D1} \u26BD\uFE0F \u{1F9D1} ",
1491
+ "\u{1F9D1} \u26BD\uFE0F \u{1F9D1} "
1492
+ ]
1493
+ },
1494
+ mindblown: {
1495
+ interval: 160,
1496
+ frames: [
1497
+ "\u{1F610} ",
1498
+ "\u{1F610} ",
1499
+ "\u{1F62E} ",
1500
+ "\u{1F62E} ",
1501
+ "\u{1F626} ",
1502
+ "\u{1F626} ",
1503
+ "\u{1F627} ",
1504
+ "\u{1F627} ",
1505
+ "\u{1F92F} ",
1506
+ "\u{1F4A5} ",
1507
+ "\u2728 ",
1508
+ "\u3000 ",
1509
+ "\u3000 ",
1510
+ "\u3000 "
1511
+ ]
1512
+ },
1513
+ speaker: {
1514
+ interval: 160,
1515
+ frames: [
1516
+ "\u{1F508} ",
1517
+ "\u{1F509} ",
1518
+ "\u{1F50A} ",
1519
+ "\u{1F509} "
1520
+ ]
1521
+ },
1522
+ orangePulse: {
1523
+ interval: 100,
1524
+ frames: [
1525
+ "\u{1F538} ",
1526
+ "\u{1F536} ",
1527
+ "\u{1F7E0} ",
1528
+ "\u{1F7E0} ",
1529
+ "\u{1F536} "
1530
+ ]
1531
+ },
1532
+ bluePulse: {
1533
+ interval: 100,
1534
+ frames: [
1535
+ "\u{1F539} ",
1536
+ "\u{1F537} ",
1537
+ "\u{1F535} ",
1538
+ "\u{1F535} ",
1539
+ "\u{1F537} "
1540
+ ]
1541
+ },
1542
+ orangeBluePulse: {
1543
+ interval: 100,
1544
+ frames: [
1545
+ "\u{1F538} ",
1546
+ "\u{1F536} ",
1547
+ "\u{1F7E0} ",
1548
+ "\u{1F7E0} ",
1549
+ "\u{1F536} ",
1550
+ "\u{1F539} ",
1551
+ "\u{1F537} ",
1552
+ "\u{1F535} ",
1553
+ "\u{1F535} ",
1554
+ "\u{1F537} "
1555
+ ]
1556
+ },
1557
+ timeTravel: {
1558
+ interval: 100,
1559
+ frames: [
1560
+ "\u{1F55B} ",
1561
+ "\u{1F55A} ",
1562
+ "\u{1F559} ",
1563
+ "\u{1F558} ",
1564
+ "\u{1F557} ",
1565
+ "\u{1F556} ",
1566
+ "\u{1F555} ",
1567
+ "\u{1F554} ",
1568
+ "\u{1F553} ",
1569
+ "\u{1F552} ",
1570
+ "\u{1F551} ",
1571
+ "\u{1F550} "
1572
+ ]
1573
+ },
1574
+ aesthetic: {
1575
+ interval: 80,
1576
+ frames: [
1577
+ "\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1",
1578
+ "\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1",
1579
+ "\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1\u25B1",
1580
+ "\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1\u25B1",
1581
+ "\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1\u25B1",
1582
+ "\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B1",
1583
+ "\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0\u25B0",
1584
+ "\u25B0\u25B1\u25B1\u25B1\u25B1\u25B1\u25B1"
1585
+ ]
1586
+ },
1587
+ dwarfFortress: {
1588
+ interval: 80,
1589
+ frames: [
1590
+ " \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1591
+ "\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1592
+ "\u263A\u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1593
+ "\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1594
+ "\u263A\u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1595
+ "\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1596
+ "\u263A\u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1597
+ "\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1598
+ "\u263A\u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1599
+ "\u263A \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1600
+ " \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1601
+ " \u263A\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1602
+ " \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1603
+ " \u263A\u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1604
+ " \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1605
+ " \u263A\u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1606
+ " \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1607
+ " \u263A\u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1608
+ " \u263A \u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1609
+ " \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1610
+ " \u263A\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1611
+ " \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 ",
1612
+ " \u263A\u2593\u2588\u2588\u2588\xA3\xA3\xA3 ",
1613
+ " \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 ",
1614
+ " \u263A\u2592\u2588\u2588\u2588\xA3\xA3\xA3 ",
1615
+ " \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 ",
1616
+ " \u263A\u2591\u2588\u2588\u2588\xA3\xA3\xA3 ",
1617
+ " \u263A \u2588\u2588\u2588\xA3\xA3\xA3 ",
1618
+ " \u263A\u2588\u2588\u2588\xA3\xA3\xA3 ",
1619
+ " \u263A\u2588\u2588\u2588\xA3\xA3\xA3 ",
1620
+ " \u263A\u2593\u2588\u2588\xA3\xA3\xA3 ",
1621
+ " \u263A\u2593\u2588\u2588\xA3\xA3\xA3 ",
1622
+ " \u263A\u2592\u2588\u2588\xA3\xA3\xA3 ",
1623
+ " \u263A\u2592\u2588\u2588\xA3\xA3\xA3 ",
1624
+ " \u263A\u2591\u2588\u2588\xA3\xA3\xA3 ",
1625
+ " \u263A\u2591\u2588\u2588\xA3\xA3\xA3 ",
1626
+ " \u263A \u2588\u2588\xA3\xA3\xA3 ",
1627
+ " \u263A\u2588\u2588\xA3\xA3\xA3 ",
1628
+ " \u263A\u2588\u2588\xA3\xA3\xA3 ",
1629
+ " \u263A\u2593\u2588\xA3\xA3\xA3 ",
1630
+ " \u263A\u2593\u2588\xA3\xA3\xA3 ",
1631
+ " \u263A\u2592\u2588\xA3\xA3\xA3 ",
1632
+ " \u263A\u2592\u2588\xA3\xA3\xA3 ",
1633
+ " \u263A\u2591\u2588\xA3\xA3\xA3 ",
1634
+ " \u263A\u2591\u2588\xA3\xA3\xA3 ",
1635
+ " \u263A \u2588\xA3\xA3\xA3 ",
1636
+ " \u263A\u2588\xA3\xA3\xA3 ",
1637
+ " \u263A\u2588\xA3\xA3\xA3 ",
1638
+ " \u263A\u2593\xA3\xA3\xA3 ",
1639
+ " \u263A\u2593\xA3\xA3\xA3 ",
1640
+ " \u263A\u2592\xA3\xA3\xA3 ",
1641
+ " \u263A\u2592\xA3\xA3\xA3 ",
1642
+ " \u263A\u2591\xA3\xA3\xA3 ",
1643
+ " \u263A\u2591\xA3\xA3\xA3 ",
1644
+ " \u263A \xA3\xA3\xA3 ",
1645
+ " \u263A\xA3\xA3\xA3 ",
1646
+ " \u263A\xA3\xA3\xA3 ",
1647
+ " \u263A\u2593\xA3\xA3 ",
1648
+ " \u263A\u2593\xA3\xA3 ",
1649
+ " \u263A\u2592\xA3\xA3 ",
1650
+ " \u263A\u2592\xA3\xA3 ",
1651
+ " \u263A\u2591\xA3\xA3 ",
1652
+ " \u263A\u2591\xA3\xA3 ",
1653
+ " \u263A \xA3\xA3 ",
1654
+ " \u263A\xA3\xA3 ",
1655
+ " \u263A\xA3\xA3 ",
1656
+ " \u263A\u2593\xA3 ",
1657
+ " \u263A\u2593\xA3 ",
1658
+ " \u263A\u2592\xA3 ",
1659
+ " \u263A\u2592\xA3 ",
1660
+ " \u263A\u2591\xA3 ",
1661
+ " \u263A\u2591\xA3 ",
1662
+ " \u263A \xA3 ",
1663
+ " \u263A\xA3 ",
1664
+ " \u263A\xA3 ",
1665
+ " \u263A\u2593 ",
1666
+ " \u263A\u2593 ",
1667
+ " \u263A\u2592 ",
1668
+ " \u263A\u2592 ",
1669
+ " \u263A\u2591 ",
1670
+ " \u263A\u2591 ",
1671
+ " \u263A ",
1672
+ " \u263A &",
1673
+ " \u263A \u263C&",
1674
+ " \u263A \u263C &",
1675
+ " \u263A\u263C &",
1676
+ " \u263A\u263C & ",
1677
+ " \u203C & ",
1678
+ " \u263A & ",
1679
+ " \u203C & ",
1680
+ " \u263A & ",
1681
+ " \u203C & ",
1682
+ " \u263A & ",
1683
+ "\u203C & ",
1684
+ " & ",
1685
+ " & ",
1686
+ " & \u2591 ",
1687
+ " & \u2592 ",
1688
+ " & \u2593 ",
1689
+ " & \xA3 ",
1690
+ " & \u2591\xA3 ",
1691
+ " & \u2592\xA3 ",
1692
+ " & \u2593\xA3 ",
1693
+ " & \xA3\xA3 ",
1694
+ " & \u2591\xA3\xA3 ",
1695
+ " & \u2592\xA3\xA3 ",
1696
+ "& \u2593\xA3\xA3 ",
1697
+ "& \xA3\xA3\xA3 ",
1698
+ " \u2591\xA3\xA3\xA3 ",
1699
+ " \u2592\xA3\xA3\xA3 ",
1700
+ " \u2593\xA3\xA3\xA3 ",
1701
+ " \u2588\xA3\xA3\xA3 ",
1702
+ " \u2591\u2588\xA3\xA3\xA3 ",
1703
+ " \u2592\u2588\xA3\xA3\xA3 ",
1704
+ " \u2593\u2588\xA3\xA3\xA3 ",
1705
+ " \u2588\u2588\xA3\xA3\xA3 ",
1706
+ " \u2591\u2588\u2588\xA3\xA3\xA3 ",
1707
+ " \u2592\u2588\u2588\xA3\xA3\xA3 ",
1708
+ " \u2593\u2588\u2588\xA3\xA3\xA3 ",
1709
+ " \u2588\u2588\u2588\xA3\xA3\xA3 ",
1710
+ " \u2591\u2588\u2588\u2588\xA3\xA3\xA3 ",
1711
+ " \u2592\u2588\u2588\u2588\xA3\xA3\xA3 ",
1712
+ " \u2593\u2588\u2588\u2588\xA3\xA3\xA3 ",
1713
+ " \u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1714
+ " \u2591\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1715
+ " \u2592\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1716
+ " \u2593\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1717
+ " \u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1718
+ " \u2591\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1719
+ " \u2592\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1720
+ " \u2593\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1721
+ " \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 ",
1722
+ " \u2588\u2588\u2588\u2588\u2588\u2588\xA3\xA3\xA3 "
1723
+ ]
1724
+ }
1725
+ };
1726
+ }
1727
+ });
1728
+
1729
+ // node_modules/.pnpm/cli-spinners@2.9.2/node_modules/cli-spinners/index.js
1730
+ var require_cli_spinners = __commonJS({
1731
+ "node_modules/.pnpm/cli-spinners@2.9.2/node_modules/cli-spinners/index.js"(exports, module) {
1732
+ var spinners = Object.assign({}, require_spinners());
1733
+ var spinnersList = Object.keys(spinners);
1734
+ Object.defineProperty(spinners, "random", {
1735
+ get() {
1736
+ const randomIndex = Math.floor(Math.random() * spinnersList.length);
1737
+ const spinnerName = spinnersList[randomIndex];
1738
+ return spinners[spinnerName];
1739
+ }
1740
+ });
1741
+ module.exports = spinners;
1742
+ }
1743
+ });
1744
+
1745
+ // node_modules/.pnpm/chalk@5.3.0/node_modules/chalk/source/vendor/ansi-styles/index.js
1746
+ var ANSI_BACKGROUND_OFFSET = 10;
1747
+ var wrapAnsi16 = (offset = 0) => (code) => `\x1B[${code + offset}m`;
1748
+ var wrapAnsi256 = (offset = 0) => (code) => `\x1B[${38 + offset};5;${code}m`;
1749
+ var wrapAnsi16m = (offset = 0) => (red, green, blue) => `\x1B[${38 + offset};2;${red};${green};${blue}m`;
1750
+ var styles = {
1751
+ modifier: {
1752
+ reset: [0, 0],
1753
+ // 21 isn't widely supported and 22 does the same thing
1754
+ bold: [1, 22],
1755
+ dim: [2, 22],
1756
+ italic: [3, 23],
1757
+ underline: [4, 24],
1758
+ overline: [53, 55],
1759
+ inverse: [7, 27],
1760
+ hidden: [8, 28],
1761
+ strikethrough: [9, 29]
1762
+ },
1763
+ color: {
1764
+ black: [30, 39],
1765
+ red: [31, 39],
1766
+ green: [32, 39],
1767
+ yellow: [33, 39],
1768
+ blue: [34, 39],
1769
+ magenta: [35, 39],
1770
+ cyan: [36, 39],
1771
+ white: [37, 39],
1772
+ // Bright color
1773
+ blackBright: [90, 39],
1774
+ gray: [90, 39],
1775
+ // Alias of `blackBright`
1776
+ grey: [90, 39],
1777
+ // Alias of `blackBright`
1778
+ redBright: [91, 39],
1779
+ greenBright: [92, 39],
1780
+ yellowBright: [93, 39],
1781
+ blueBright: [94, 39],
1782
+ magentaBright: [95, 39],
1783
+ cyanBright: [96, 39],
1784
+ whiteBright: [97, 39]
1785
+ },
1786
+ bgColor: {
1787
+ bgBlack: [40, 49],
1788
+ bgRed: [41, 49],
1789
+ bgGreen: [42, 49],
1790
+ bgYellow: [43, 49],
1791
+ bgBlue: [44, 49],
1792
+ bgMagenta: [45, 49],
1793
+ bgCyan: [46, 49],
1794
+ bgWhite: [47, 49],
1795
+ // Bright color
1796
+ bgBlackBright: [100, 49],
1797
+ bgGray: [100, 49],
1798
+ // Alias of `bgBlackBright`
1799
+ bgGrey: [100, 49],
1800
+ // Alias of `bgBlackBright`
1801
+ bgRedBright: [101, 49],
1802
+ bgGreenBright: [102, 49],
1803
+ bgYellowBright: [103, 49],
1804
+ bgBlueBright: [104, 49],
1805
+ bgMagentaBright: [105, 49],
1806
+ bgCyanBright: [106, 49],
1807
+ bgWhiteBright: [107, 49]
1808
+ }
1809
+ };
1810
+ Object.keys(styles.modifier);
1811
+ var foregroundColorNames = Object.keys(styles.color);
1812
+ var backgroundColorNames = Object.keys(styles.bgColor);
1813
+ [...foregroundColorNames, ...backgroundColorNames];
1814
+ function assembleStyles() {
1815
+ const codes = /* @__PURE__ */ new Map();
1816
+ for (const [groupName, group2] of Object.entries(styles)) {
1817
+ for (const [styleName, style] of Object.entries(group2)) {
1818
+ styles[styleName] = {
1819
+ open: `\x1B[${style[0]}m`,
1820
+ close: `\x1B[${style[1]}m`
1821
+ };
1822
+ group2[styleName] = styles[styleName];
1823
+ codes.set(style[0], style[1]);
1824
+ }
1825
+ Object.defineProperty(styles, groupName, {
1826
+ value: group2,
1827
+ enumerable: false
1828
+ });
1829
+ }
1830
+ Object.defineProperty(styles, "codes", {
1831
+ value: codes,
1832
+ enumerable: false
1833
+ });
1834
+ styles.color.close = "\x1B[39m";
1835
+ styles.bgColor.close = "\x1B[49m";
1836
+ styles.color.ansi = wrapAnsi16();
1837
+ styles.color.ansi256 = wrapAnsi256();
1838
+ styles.color.ansi16m = wrapAnsi16m();
1839
+ styles.bgColor.ansi = wrapAnsi16(ANSI_BACKGROUND_OFFSET);
1840
+ styles.bgColor.ansi256 = wrapAnsi256(ANSI_BACKGROUND_OFFSET);
1841
+ styles.bgColor.ansi16m = wrapAnsi16m(ANSI_BACKGROUND_OFFSET);
1842
+ Object.defineProperties(styles, {
1843
+ rgbToAnsi256: {
1844
+ value(red, green, blue) {
1845
+ if (red === green && green === blue) {
1846
+ if (red < 8) {
1847
+ return 16;
1848
+ }
1849
+ if (red > 248) {
1850
+ return 231;
1851
+ }
1852
+ return Math.round((red - 8) / 247 * 24) + 232;
1853
+ }
1854
+ return 16 + 36 * Math.round(red / 255 * 5) + 6 * Math.round(green / 255 * 5) + Math.round(blue / 255 * 5);
1855
+ },
1856
+ enumerable: false
1857
+ },
1858
+ hexToRgb: {
1859
+ value(hex) {
1860
+ const matches = /[a-f\d]{6}|[a-f\d]{3}/i.exec(hex.toString(16));
1861
+ if (!matches) {
1862
+ return [0, 0, 0];
1863
+ }
1864
+ let [colorString] = matches;
1865
+ if (colorString.length === 3) {
1866
+ colorString = [...colorString].map((character) => character + character).join("");
1867
+ }
1868
+ const integer = Number.parseInt(colorString, 16);
1869
+ return [
1870
+ /* eslint-disable no-bitwise */
1871
+ integer >> 16 & 255,
1872
+ integer >> 8 & 255,
1873
+ integer & 255
1874
+ /* eslint-enable no-bitwise */
1875
+ ];
1876
+ },
1877
+ enumerable: false
1878
+ },
1879
+ hexToAnsi256: {
1880
+ value: (hex) => styles.rgbToAnsi256(...styles.hexToRgb(hex)),
1881
+ enumerable: false
1882
+ },
1883
+ ansi256ToAnsi: {
1884
+ value(code) {
1885
+ if (code < 8) {
1886
+ return 30 + code;
1887
+ }
1888
+ if (code < 16) {
1889
+ return 90 + (code - 8);
1890
+ }
1891
+ let red;
1892
+ let green;
1893
+ let blue;
1894
+ if (code >= 232) {
1895
+ red = ((code - 232) * 10 + 8) / 255;
1896
+ green = red;
1897
+ blue = red;
1898
+ } else {
1899
+ code -= 16;
1900
+ const remainder = code % 36;
1901
+ red = Math.floor(code / 36) / 5;
1902
+ green = Math.floor(remainder / 6) / 5;
1903
+ blue = remainder % 6 / 5;
1904
+ }
1905
+ const value = Math.max(red, green, blue) * 2;
1906
+ if (value === 0) {
1907
+ return 30;
1908
+ }
1909
+ let result = 30 + (Math.round(blue) << 2 | Math.round(green) << 1 | Math.round(red));
1910
+ if (value === 2) {
1911
+ result += 60;
1912
+ }
1913
+ return result;
1914
+ },
1915
+ enumerable: false
1916
+ },
1917
+ rgbToAnsi: {
1918
+ value: (red, green, blue) => styles.ansi256ToAnsi(styles.rgbToAnsi256(red, green, blue)),
1919
+ enumerable: false
1920
+ },
1921
+ hexToAnsi: {
1922
+ value: (hex) => styles.ansi256ToAnsi(styles.hexToAnsi256(hex)),
1923
+ enumerable: false
1924
+ }
1925
+ });
1926
+ return styles;
1927
+ }
1928
+ var ansiStyles = assembleStyles();
1929
+ var ansi_styles_default = ansiStyles;
1930
+ function hasFlag(flag, argv2 = globalThis.Deno ? globalThis.Deno.args : process6__namespace.default.argv) {
1931
+ const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--";
1932
+ const position = argv2.indexOf(prefix + flag);
1933
+ const terminatorPosition = argv2.indexOf("--");
1934
+ return position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);
1935
+ }
1936
+ var { env } = process6__namespace.default;
1937
+ var flagForceColor;
1938
+ if (hasFlag("no-color") || hasFlag("no-colors") || hasFlag("color=false") || hasFlag("color=never")) {
1939
+ flagForceColor = 0;
1940
+ } else if (hasFlag("color") || hasFlag("colors") || hasFlag("color=true") || hasFlag("color=always")) {
1941
+ flagForceColor = 1;
1942
+ }
1943
+ function envForceColor() {
1944
+ if ("FORCE_COLOR" in env) {
1945
+ if (env.FORCE_COLOR === "true") {
1946
+ return 1;
1947
+ }
1948
+ if (env.FORCE_COLOR === "false") {
1949
+ return 0;
1950
+ }
1951
+ return env.FORCE_COLOR.length === 0 ? 1 : Math.min(Number.parseInt(env.FORCE_COLOR, 10), 3);
1952
+ }
1953
+ }
1954
+ function translateLevel(level) {
1955
+ if (level === 0) {
1956
+ return false;
1957
+ }
1958
+ return {
1959
+ level,
1960
+ hasBasic: true,
1961
+ has256: level >= 2,
1962
+ has16m: level >= 3
1963
+ };
1964
+ }
1965
+ function _supportsColor(haveStream, { streamIsTTY, sniffFlags = true } = {}) {
1966
+ const noFlagForceColor = envForceColor();
1967
+ if (noFlagForceColor !== void 0) {
1968
+ flagForceColor = noFlagForceColor;
1969
+ }
1970
+ const forceColor = sniffFlags ? flagForceColor : noFlagForceColor;
1971
+ if (forceColor === 0) {
1972
+ return 0;
1973
+ }
1974
+ if (sniffFlags) {
1975
+ if (hasFlag("color=16m") || hasFlag("color=full") || hasFlag("color=truecolor")) {
1976
+ return 3;
1977
+ }
1978
+ if (hasFlag("color=256")) {
1979
+ return 2;
1980
+ }
1981
+ }
1982
+ if ("TF_BUILD" in env && "AGENT_NAME" in env) {
1983
+ return 1;
1984
+ }
1985
+ if (haveStream && !streamIsTTY && forceColor === void 0) {
1986
+ return 0;
1987
+ }
1988
+ const min = forceColor || 0;
1989
+ if (env.TERM === "dumb") {
1990
+ return min;
1991
+ }
1992
+ if (process6__namespace.default.platform === "win32") {
1993
+ const osRelease = os__default.default.release().split(".");
1994
+ if (Number(osRelease[0]) >= 10 && Number(osRelease[2]) >= 10586) {
1995
+ return Number(osRelease[2]) >= 14931 ? 3 : 2;
1996
+ }
1997
+ return 1;
1998
+ }
1999
+ if ("CI" in env) {
2000
+ if ("GITHUB_ACTIONS" in env || "GITEA_ACTIONS" in env) {
2001
+ return 3;
2002
+ }
2003
+ if (["TRAVIS", "CIRCLECI", "APPVEYOR", "GITLAB_CI", "BUILDKITE", "DRONE"].some((sign) => sign in env) || env.CI_NAME === "codeship") {
2004
+ return 1;
2005
+ }
2006
+ return min;
2007
+ }
2008
+ if ("TEAMCITY_VERSION" in env) {
2009
+ return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;
2010
+ }
2011
+ if (env.COLORTERM === "truecolor") {
2012
+ return 3;
2013
+ }
2014
+ if (env.TERM === "xterm-kitty") {
2015
+ return 3;
2016
+ }
2017
+ if ("TERM_PROGRAM" in env) {
2018
+ const version = Number.parseInt((env.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
2019
+ switch (env.TERM_PROGRAM) {
2020
+ case "iTerm.app": {
2021
+ return version >= 3 ? 3 : 2;
2022
+ }
2023
+ case "Apple_Terminal": {
2024
+ return 2;
2025
+ }
2026
+ }
2027
+ }
2028
+ if (/-256(color)?$/i.test(env.TERM)) {
2029
+ return 2;
2030
+ }
2031
+ if (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) {
2032
+ return 1;
2033
+ }
2034
+ if ("COLORTERM" in env) {
2035
+ return 1;
2036
+ }
2037
+ return min;
2038
+ }
2039
+ function createSupportsColor(stream, options = {}) {
2040
+ const level = _supportsColor(stream, {
2041
+ streamIsTTY: stream && stream.isTTY,
2042
+ ...options
2043
+ });
2044
+ return translateLevel(level);
2045
+ }
2046
+ var supportsColor = {
2047
+ stdout: createSupportsColor({ isTTY: tty__default.default.isatty(1) }),
2048
+ stderr: createSupportsColor({ isTTY: tty__default.default.isatty(2) })
2049
+ };
2050
+ var supports_color_default = supportsColor;
2051
+
2052
+ // node_modules/.pnpm/chalk@5.3.0/node_modules/chalk/source/utilities.js
2053
+ function stringReplaceAll(string, substring, replacer) {
2054
+ let index = string.indexOf(substring);
2055
+ if (index === -1) {
2056
+ return string;
2057
+ }
2058
+ const substringLength = substring.length;
2059
+ let endIndex = 0;
2060
+ let returnValue = "";
2061
+ do {
2062
+ returnValue += string.slice(endIndex, index) + substring + replacer;
2063
+ endIndex = index + substringLength;
2064
+ index = string.indexOf(substring, endIndex);
2065
+ } while (index !== -1);
2066
+ returnValue += string.slice(endIndex);
2067
+ return returnValue;
2068
+ }
2069
+ function stringEncaseCRLFWithFirstIndex(string, prefix, postfix, index) {
2070
+ let endIndex = 0;
2071
+ let returnValue = "";
2072
+ do {
2073
+ const gotCR = string[index - 1] === "\r";
2074
+ returnValue += string.slice(endIndex, gotCR ? index - 1 : index) + prefix + (gotCR ? "\r\n" : "\n") + postfix;
2075
+ endIndex = index + 1;
2076
+ index = string.indexOf("\n", endIndex);
2077
+ } while (index !== -1);
2078
+ returnValue += string.slice(endIndex);
2079
+ return returnValue;
2080
+ }
2081
+
2082
+ // node_modules/.pnpm/chalk@5.3.0/node_modules/chalk/source/index.js
2083
+ var { stdout: stdoutColor, stderr: stderrColor } = supports_color_default;
2084
+ var GENERATOR = Symbol("GENERATOR");
2085
+ var STYLER = Symbol("STYLER");
2086
+ var IS_EMPTY = Symbol("IS_EMPTY");
2087
+ var levelMapping = [
2088
+ "ansi",
2089
+ "ansi",
2090
+ "ansi256",
2091
+ "ansi16m"
2092
+ ];
2093
+ var styles2 = /* @__PURE__ */ Object.create(null);
2094
+ var applyOptions = (object, options = {}) => {
2095
+ if (options.level && !(Number.isInteger(options.level) && options.level >= 0 && options.level <= 3)) {
2096
+ throw new Error("The `level` option should be an integer from 0 to 3");
2097
+ }
2098
+ const colorLevel = stdoutColor ? stdoutColor.level : 0;
2099
+ object.level = options.level === void 0 ? colorLevel : options.level;
2100
+ };
2101
+ var chalkFactory = (options) => {
2102
+ const chalk2 = (...strings) => strings.join(" ");
2103
+ applyOptions(chalk2, options);
2104
+ Object.setPrototypeOf(chalk2, createChalk.prototype);
2105
+ return chalk2;
2106
+ };
2107
+ function createChalk(options) {
2108
+ return chalkFactory(options);
2109
+ }
2110
+ Object.setPrototypeOf(createChalk.prototype, Function.prototype);
2111
+ for (const [styleName, style] of Object.entries(ansi_styles_default)) {
2112
+ styles2[styleName] = {
2113
+ get() {
2114
+ const builder = createBuilder(this, createStyler(style.open, style.close, this[STYLER]), this[IS_EMPTY]);
2115
+ Object.defineProperty(this, styleName, { value: builder });
2116
+ return builder;
2117
+ }
2118
+ };
2119
+ }
2120
+ styles2.visible = {
2121
+ get() {
2122
+ const builder = createBuilder(this, this[STYLER], true);
2123
+ Object.defineProperty(this, "visible", { value: builder });
2124
+ return builder;
2125
+ }
2126
+ };
2127
+ var getModelAnsi = (model, level, type, ...arguments_) => {
2128
+ if (model === "rgb") {
2129
+ if (level === "ansi16m") {
2130
+ return ansi_styles_default[type].ansi16m(...arguments_);
2131
+ }
2132
+ if (level === "ansi256") {
2133
+ return ansi_styles_default[type].ansi256(ansi_styles_default.rgbToAnsi256(...arguments_));
2134
+ }
2135
+ return ansi_styles_default[type].ansi(ansi_styles_default.rgbToAnsi(...arguments_));
2136
+ }
2137
+ if (model === "hex") {
2138
+ return getModelAnsi("rgb", level, type, ...ansi_styles_default.hexToRgb(...arguments_));
2139
+ }
2140
+ return ansi_styles_default[type][model](...arguments_);
2141
+ };
2142
+ var usedModels = ["rgb", "hex", "ansi256"];
2143
+ for (const model of usedModels) {
2144
+ styles2[model] = {
2145
+ get() {
2146
+ const { level } = this;
2147
+ return function(...arguments_) {
2148
+ const styler = createStyler(getModelAnsi(model, levelMapping[level], "color", ...arguments_), ansi_styles_default.color.close, this[STYLER]);
2149
+ return createBuilder(this, styler, this[IS_EMPTY]);
2150
+ };
2151
+ }
2152
+ };
2153
+ const bgModel = "bg" + model[0].toUpperCase() + model.slice(1);
2154
+ styles2[bgModel] = {
2155
+ get() {
2156
+ const { level } = this;
2157
+ return function(...arguments_) {
2158
+ const styler = createStyler(getModelAnsi(model, levelMapping[level], "bgColor", ...arguments_), ansi_styles_default.bgColor.close, this[STYLER]);
2159
+ return createBuilder(this, styler, this[IS_EMPTY]);
2160
+ };
2161
+ }
2162
+ };
2163
+ }
2164
+ var proto = Object.defineProperties(() => {
2165
+ }, {
2166
+ ...styles2,
2167
+ level: {
2168
+ enumerable: true,
2169
+ get() {
2170
+ return this[GENERATOR].level;
2171
+ },
2172
+ set(level) {
2173
+ this[GENERATOR].level = level;
2174
+ }
2175
+ }
2176
+ });
2177
+ var createStyler = (open, close, parent) => {
2178
+ let openAll;
2179
+ let closeAll;
2180
+ if (parent === void 0) {
2181
+ openAll = open;
2182
+ closeAll = close;
2183
+ } else {
2184
+ openAll = parent.openAll + open;
2185
+ closeAll = close + parent.closeAll;
2186
+ }
2187
+ return {
2188
+ open,
2189
+ close,
2190
+ openAll,
2191
+ closeAll,
2192
+ parent
2193
+ };
2194
+ };
2195
+ var createBuilder = (self, _styler, _isEmpty) => {
2196
+ const builder = (...arguments_) => applyStyle(builder, arguments_.length === 1 ? "" + arguments_[0] : arguments_.join(" "));
2197
+ Object.setPrototypeOf(builder, proto);
2198
+ builder[GENERATOR] = self;
2199
+ builder[STYLER] = _styler;
2200
+ builder[IS_EMPTY] = _isEmpty;
2201
+ return builder;
2202
+ };
2203
+ var applyStyle = (self, string) => {
2204
+ if (self.level <= 0 || !string) {
2205
+ return self[IS_EMPTY] ? "" : string;
2206
+ }
2207
+ let styler = self[STYLER];
2208
+ if (styler === void 0) {
2209
+ return string;
2210
+ }
2211
+ const { openAll, closeAll } = styler;
2212
+ if (string.includes("\x1B")) {
2213
+ while (styler !== void 0) {
2214
+ string = stringReplaceAll(string, styler.close, styler.open);
2215
+ styler = styler.parent;
2216
+ }
2217
+ }
2218
+ const lfIndex = string.indexOf("\n");
2219
+ if (lfIndex !== -1) {
2220
+ string = stringEncaseCRLFWithFirstIndex(string, closeAll, openAll, lfIndex);
2221
+ }
2222
+ return openAll + string + closeAll;
2223
+ };
2224
+ Object.defineProperties(createChalk.prototype, styles2);
2225
+ var chalk = createChalk();
2226
+ createChalk({ level: stderrColor ? stderrColor.level : 0 });
2227
+ var source_default = chalk;
2228
+
2229
+ // node_modules/.pnpm/mimic-function@5.0.1/node_modules/mimic-function/index.js
2230
+ var copyProperty = (to, from, property, ignoreNonConfigurable) => {
2231
+ if (property === "length" || property === "prototype") {
2232
+ return;
2233
+ }
2234
+ if (property === "arguments" || property === "caller") {
2235
+ return;
2236
+ }
2237
+ const toDescriptor = Object.getOwnPropertyDescriptor(to, property);
2238
+ const fromDescriptor = Object.getOwnPropertyDescriptor(from, property);
2239
+ if (!canCopyProperty(toDescriptor, fromDescriptor) && ignoreNonConfigurable) {
2240
+ return;
2241
+ }
2242
+ Object.defineProperty(to, property, fromDescriptor);
2243
+ };
2244
+ var canCopyProperty = function(toDescriptor, fromDescriptor) {
2245
+ return toDescriptor === void 0 || toDescriptor.configurable || toDescriptor.writable === fromDescriptor.writable && toDescriptor.enumerable === fromDescriptor.enumerable && toDescriptor.configurable === fromDescriptor.configurable && (toDescriptor.writable || toDescriptor.value === fromDescriptor.value);
2246
+ };
2247
+ var changePrototype = (to, from) => {
2248
+ const fromPrototype = Object.getPrototypeOf(from);
2249
+ if (fromPrototype === Object.getPrototypeOf(to)) {
2250
+ return;
2251
+ }
2252
+ Object.setPrototypeOf(to, fromPrototype);
2253
+ };
2254
+ var wrappedToString = (withName, fromBody) => `/* Wrapped ${withName}*/
2255
+ ${fromBody}`;
2256
+ var toStringDescriptor = Object.getOwnPropertyDescriptor(Function.prototype, "toString");
2257
+ var toStringName = Object.getOwnPropertyDescriptor(Function.prototype.toString, "name");
2258
+ var changeToString = (to, from, name) => {
2259
+ const withName = name === "" ? "" : `with ${name.trim()}() `;
2260
+ const newToString = wrappedToString.bind(null, withName, from.toString());
2261
+ Object.defineProperty(newToString, "name", toStringName);
2262
+ const { writable, enumerable, configurable } = toStringDescriptor;
2263
+ Object.defineProperty(to, "toString", { value: newToString, writable, enumerable, configurable });
2264
+ };
2265
+ function mimicFunction(to, from, { ignoreNonConfigurable = false } = {}) {
2266
+ const { name } = to;
2267
+ for (const property of Reflect.ownKeys(from)) {
2268
+ copyProperty(to, from, property, ignoreNonConfigurable);
2269
+ }
2270
+ changePrototype(to, from);
2271
+ changeToString(to, from, name);
2272
+ return to;
2273
+ }
2274
+
2275
+ // node_modules/.pnpm/onetime@7.0.0/node_modules/onetime/index.js
2276
+ var calledFunctions = /* @__PURE__ */ new WeakMap();
2277
+ var onetime = (function_, options = {}) => {
2278
+ if (typeof function_ !== "function") {
2279
+ throw new TypeError("Expected a function");
2280
+ }
2281
+ let returnValue;
2282
+ let callCount = 0;
2283
+ const functionName = function_.displayName || function_.name || "<anonymous>";
2284
+ const onetime2 = function(...arguments_) {
2285
+ calledFunctions.set(onetime2, ++callCount);
2286
+ if (callCount === 1) {
2287
+ returnValue = function_.apply(this, arguments_);
2288
+ function_ = void 0;
2289
+ } else if (options.throw === true) {
2290
+ throw new Error(`Function \`${functionName}\` can only be called once`);
2291
+ }
2292
+ return returnValue;
2293
+ };
2294
+ mimicFunction(onetime2, function_);
2295
+ calledFunctions.set(onetime2, callCount);
2296
+ return onetime2;
2297
+ };
2298
+ onetime.callCount = (function_) => {
2299
+ if (!calledFunctions.has(function_)) {
2300
+ throw new Error(`The given function \`${function_.name}\` is not wrapped by the \`onetime\` package`);
2301
+ }
2302
+ return calledFunctions.get(function_);
2303
+ };
2304
+ var onetime_default = onetime;
2305
+
2306
+ // node_modules/.pnpm/signal-exit@4.1.0/node_modules/signal-exit/dist/mjs/signals.js
2307
+ var signals = [];
2308
+ signals.push("SIGHUP", "SIGINT", "SIGTERM");
2309
+ if (process.platform !== "win32") {
2310
+ signals.push(
2311
+ "SIGALRM",
2312
+ "SIGABRT",
2313
+ "SIGVTALRM",
2314
+ "SIGXCPU",
2315
+ "SIGXFSZ",
2316
+ "SIGUSR2",
2317
+ "SIGTRAP",
2318
+ "SIGSYS",
2319
+ "SIGQUIT",
2320
+ "SIGIOT"
2321
+ // should detect profiler and enable/disable accordingly.
2322
+ // see #21
2323
+ // 'SIGPROF'
2324
+ );
2325
+ }
2326
+ if (process.platform === "linux") {
2327
+ signals.push("SIGIO", "SIGPOLL", "SIGPWR", "SIGSTKFLT");
2328
+ }
2329
+
2330
+ // node_modules/.pnpm/signal-exit@4.1.0/node_modules/signal-exit/dist/mjs/index.js
2331
+ var processOk = (process11) => !!process11 && typeof process11 === "object" && typeof process11.removeListener === "function" && typeof process11.emit === "function" && typeof process11.reallyExit === "function" && typeof process11.listeners === "function" && typeof process11.kill === "function" && typeof process11.pid === "number" && typeof process11.on === "function";
2332
+ var kExitEmitter = Symbol.for("signal-exit emitter");
2333
+ var global = globalThis;
2334
+ var ObjectDefineProperty = Object.defineProperty.bind(Object);
2335
+ var Emitter = class {
2336
+ emitted = {
2337
+ afterExit: false,
2338
+ exit: false
2339
+ };
2340
+ listeners = {
2341
+ afterExit: [],
2342
+ exit: []
2343
+ };
2344
+ count = 0;
2345
+ id = Math.random();
2346
+ constructor() {
2347
+ if (global[kExitEmitter]) {
2348
+ return global[kExitEmitter];
2349
+ }
2350
+ ObjectDefineProperty(global, kExitEmitter, {
2351
+ value: this,
2352
+ writable: false,
2353
+ enumerable: false,
2354
+ configurable: false
2355
+ });
2356
+ }
2357
+ on(ev, fn) {
2358
+ this.listeners[ev].push(fn);
2359
+ }
2360
+ removeListener(ev, fn) {
2361
+ const list = this.listeners[ev];
2362
+ const i = list.indexOf(fn);
2363
+ if (i === -1) {
2364
+ return;
2365
+ }
2366
+ if (i === 0 && list.length === 1) {
2367
+ list.length = 0;
2368
+ } else {
2369
+ list.splice(i, 1);
2370
+ }
2371
+ }
2372
+ emit(ev, code, signal) {
2373
+ if (this.emitted[ev]) {
2374
+ return false;
2375
+ }
2376
+ this.emitted[ev] = true;
2377
+ let ret = false;
2378
+ for (const fn of this.listeners[ev]) {
2379
+ ret = fn(code, signal) === true || ret;
2380
+ }
2381
+ if (ev === "exit") {
2382
+ ret = this.emit("afterExit", code, signal) || ret;
2383
+ }
2384
+ return ret;
2385
+ }
2386
+ };
2387
+ var SignalExitBase = class {
2388
+ };
2389
+ var signalExitWrap = (handler) => {
2390
+ return {
2391
+ onExit(cb, opts) {
2392
+ return handler.onExit(cb, opts);
2393
+ },
2394
+ load() {
2395
+ return handler.load();
2396
+ },
2397
+ unload() {
2398
+ return handler.unload();
2399
+ }
2400
+ };
2401
+ };
2402
+ var SignalExitFallback = class extends SignalExitBase {
2403
+ onExit() {
2404
+ return () => {
2405
+ };
2406
+ }
2407
+ load() {
2408
+ }
2409
+ unload() {
2410
+ }
2411
+ };
2412
+ var SignalExit = class extends SignalExitBase {
2413
+ // "SIGHUP" throws an `ENOSYS` error on Windows,
2414
+ // so use a supported signal instead
2415
+ /* c8 ignore start */
2416
+ #hupSig = process3.platform === "win32" ? "SIGINT" : "SIGHUP";
2417
+ /* c8 ignore stop */
2418
+ #emitter = new Emitter();
2419
+ #process;
2420
+ #originalProcessEmit;
2421
+ #originalProcessReallyExit;
2422
+ #sigListeners = {};
2423
+ #loaded = false;
2424
+ constructor(process11) {
2425
+ super();
2426
+ this.#process = process11;
2427
+ this.#sigListeners = {};
2428
+ for (const sig of signals) {
2429
+ this.#sigListeners[sig] = () => {
2430
+ const listeners = this.#process.listeners(sig);
2431
+ let { count } = this.#emitter;
2432
+ const p = process11;
2433
+ if (typeof p.__signal_exit_emitter__ === "object" && typeof p.__signal_exit_emitter__.count === "number") {
2434
+ count += p.__signal_exit_emitter__.count;
2435
+ }
2436
+ if (listeners.length === count) {
2437
+ this.unload();
2438
+ const ret = this.#emitter.emit("exit", null, sig);
2439
+ const s = sig === "SIGHUP" ? this.#hupSig : sig;
2440
+ if (!ret)
2441
+ process11.kill(process11.pid, s);
2442
+ }
2443
+ };
2444
+ }
2445
+ this.#originalProcessReallyExit = process11.reallyExit;
2446
+ this.#originalProcessEmit = process11.emit;
2447
+ }
2448
+ onExit(cb, opts) {
2449
+ if (!processOk(this.#process)) {
2450
+ return () => {
2451
+ };
2452
+ }
2453
+ if (this.#loaded === false) {
2454
+ this.load();
2455
+ }
2456
+ const ev = (opts == null ? void 0 : opts.alwaysLast) ? "afterExit" : "exit";
2457
+ this.#emitter.on(ev, cb);
2458
+ return () => {
2459
+ this.#emitter.removeListener(ev, cb);
2460
+ if (this.#emitter.listeners["exit"].length === 0 && this.#emitter.listeners["afterExit"].length === 0) {
2461
+ this.unload();
2462
+ }
2463
+ };
2464
+ }
2465
+ load() {
2466
+ if (this.#loaded) {
2467
+ return;
2468
+ }
2469
+ this.#loaded = true;
2470
+ this.#emitter.count += 1;
2471
+ for (const sig of signals) {
2472
+ try {
2473
+ const fn = this.#sigListeners[sig];
2474
+ if (fn)
2475
+ this.#process.on(sig, fn);
2476
+ } catch (_) {
2477
+ }
2478
+ }
2479
+ this.#process.emit = (ev, ...a) => {
2480
+ return this.#processEmit(ev, ...a);
2481
+ };
2482
+ this.#process.reallyExit = (code) => {
2483
+ return this.#processReallyExit(code);
2484
+ };
2485
+ }
2486
+ unload() {
2487
+ if (!this.#loaded) {
2488
+ return;
2489
+ }
2490
+ this.#loaded = false;
2491
+ signals.forEach((sig) => {
2492
+ const listener = this.#sigListeners[sig];
2493
+ if (!listener) {
2494
+ throw new Error("Listener not defined for signal: " + sig);
2495
+ }
2496
+ try {
2497
+ this.#process.removeListener(sig, listener);
2498
+ } catch (_) {
2499
+ }
2500
+ });
2501
+ this.#process.emit = this.#originalProcessEmit;
2502
+ this.#process.reallyExit = this.#originalProcessReallyExit;
2503
+ this.#emitter.count -= 1;
2504
+ }
2505
+ #processReallyExit(code) {
2506
+ if (!processOk(this.#process)) {
2507
+ return 0;
2508
+ }
2509
+ this.#process.exitCode = code || 0;
2510
+ this.#emitter.emit("exit", this.#process.exitCode, null);
2511
+ return this.#originalProcessReallyExit.call(this.#process, this.#process.exitCode);
2512
+ }
2513
+ #processEmit(ev, ...args) {
2514
+ const og = this.#originalProcessEmit;
2515
+ if (ev === "exit" && processOk(this.#process)) {
2516
+ if (typeof args[0] === "number") {
2517
+ this.#process.exitCode = args[0];
2518
+ }
2519
+ const ret = og.call(this.#process, ev, ...args);
2520
+ this.#emitter.emit("exit", this.#process.exitCode, null);
2521
+ return ret;
2522
+ } else {
2523
+ return og.call(this.#process, ev, ...args);
2524
+ }
2525
+ }
2526
+ };
2527
+ var process3 = globalThis.process;
2528
+ var {
2529
+ /**
2530
+ * Called when the process is exiting, whether via signal, explicit
2531
+ * exit, or running out of stuff to do.
2532
+ *
2533
+ * If the global process object is not suitable for instrumentation,
2534
+ * then this will be a no-op.
2535
+ *
2536
+ * Returns a function that may be used to unload signal-exit.
2537
+ */
2538
+ onExit,
2539
+ /**
2540
+ * Load the listeners. Likely you never need to call this, unless
2541
+ * doing a rather deep integration with signal-exit functionality.
2542
+ * Mostly exposed for the benefit of testing.
2543
+ *
2544
+ * @internal
2545
+ */
2546
+ load,
2547
+ /**
2548
+ * Unload the listeners. Likely you never need to call this, unless
2549
+ * doing a rather deep integration with signal-exit functionality.
2550
+ * Mostly exposed for the benefit of testing.
2551
+ *
2552
+ * @internal
2553
+ */
2554
+ unload
2555
+ } = signalExitWrap(processOk(process3) ? new SignalExit(process3) : new SignalExitFallback());
2556
+
2557
+ // node_modules/.pnpm/restore-cursor@5.1.0/node_modules/restore-cursor/index.js
2558
+ var terminal = process6__namespace.default.stderr.isTTY ? process6__namespace.default.stderr : process6__namespace.default.stdout.isTTY ? process6__namespace.default.stdout : void 0;
2559
+ var restoreCursor = terminal ? onetime_default(() => {
2560
+ onExit(() => {
2561
+ terminal.write("\x1B[?25h");
2562
+ }, { alwaysLast: true });
2563
+ }) : () => {
2564
+ };
2565
+ var restore_cursor_default = restoreCursor;
2566
+
2567
+ // node_modules/.pnpm/cli-cursor@5.0.0/node_modules/cli-cursor/index.js
2568
+ var isHidden = false;
2569
+ var cliCursor = {};
2570
+ cliCursor.show = (writableStream = process6__namespace.default.stderr) => {
2571
+ if (!writableStream.isTTY) {
2572
+ return;
2573
+ }
2574
+ isHidden = false;
2575
+ writableStream.write("\x1B[?25h");
2576
+ };
2577
+ cliCursor.hide = (writableStream = process6__namespace.default.stderr) => {
2578
+ if (!writableStream.isTTY) {
2579
+ return;
2580
+ }
2581
+ restore_cursor_default();
2582
+ isHidden = true;
2583
+ writableStream.write("\x1B[?25l");
2584
+ };
2585
+ cliCursor.toggle = (force, writableStream) => {
2586
+ if (force !== void 0) {
2587
+ isHidden = force;
2588
+ }
2589
+ if (isHidden) {
2590
+ cliCursor.show(writableStream);
2591
+ } else {
2592
+ cliCursor.hide(writableStream);
2593
+ }
2594
+ };
2595
+ var cli_cursor_default = cliCursor;
2596
+
2597
+ // node_modules/.pnpm/ora@8.1.1/node_modules/ora/index.js
2598
+ var import_cli_spinners = __toESM(require_cli_spinners());
2599
+ function isUnicodeSupported() {
2600
+ if (process6__namespace.default.platform !== "win32") {
2601
+ return process6__namespace.default.env.TERM !== "linux";
2602
+ }
2603
+ return Boolean(process6__namespace.default.env.CI) || Boolean(process6__namespace.default.env.WT_SESSION) || Boolean(process6__namespace.default.env.TERMINUS_SUBLIME) || process6__namespace.default.env.ConEmuTask === "{cmd::Cmder}" || process6__namespace.default.env.TERM_PROGRAM === "Terminus-Sublime" || process6__namespace.default.env.TERM_PROGRAM === "vscode" || process6__namespace.default.env.TERM === "xterm-256color" || process6__namespace.default.env.TERM === "alacritty" || process6__namespace.default.env.TERMINAL_EMULATOR === "JetBrains-JediTerm";
2604
+ }
2605
+
2606
+ // node_modules/.pnpm/log-symbols@6.0.0/node_modules/log-symbols/index.js
2607
+ var main = {
2608
+ info: source_default.blue("\u2139"),
2609
+ success: source_default.green("\u2714"),
2610
+ warning: source_default.yellow("\u26A0"),
2611
+ error: source_default.red("\u2716")
2612
+ };
2613
+ var fallback = {
2614
+ info: source_default.blue("i"),
2615
+ success: source_default.green("\u221A"),
2616
+ warning: source_default.yellow("\u203C"),
2617
+ error: source_default.red("\xD7")
2618
+ };
2619
+ var logSymbols = isUnicodeSupported() ? main : fallback;
2620
+ var log_symbols_default = logSymbols;
2621
+
2622
+ // node_modules/.pnpm/ansi-regex@6.1.0/node_modules/ansi-regex/index.js
2623
+ function ansiRegex({ onlyFirst = false } = {}) {
2624
+ const ST = "(?:\\u0007|\\u001B\\u005C|\\u009C)";
2625
+ const pattern = [
2626
+ `[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?${ST})`,
2627
+ "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"
2628
+ ].join("|");
2629
+ return new RegExp(pattern, onlyFirst ? void 0 : "g");
2630
+ }
2631
+
2632
+ // node_modules/.pnpm/strip-ansi@7.1.0/node_modules/strip-ansi/index.js
2633
+ var regex = ansiRegex();
2634
+ function stripAnsi(string) {
2635
+ if (typeof string !== "string") {
2636
+ throw new TypeError(`Expected a \`string\`, got \`${typeof string}\``);
2637
+ }
2638
+ return string.replace(regex, "");
2639
+ }
2640
+
2641
+ // node_modules/.pnpm/get-east-asian-width@1.3.0/node_modules/get-east-asian-width/lookup.js
2642
+ function isAmbiguous(x) {
2643
+ return x === 161 || x === 164 || x === 167 || x === 168 || x === 170 || x === 173 || x === 174 || x >= 176 && x <= 180 || x >= 182 && x <= 186 || x >= 188 && x <= 191 || x === 198 || x === 208 || x === 215 || x === 216 || x >= 222 && x <= 225 || x === 230 || x >= 232 && x <= 234 || x === 236 || x === 237 || x === 240 || x === 242 || x === 243 || x >= 247 && x <= 250 || x === 252 || x === 254 || x === 257 || x === 273 || x === 275 || x === 283 || x === 294 || x === 295 || x === 299 || x >= 305 && x <= 307 || x === 312 || x >= 319 && x <= 322 || x === 324 || x >= 328 && x <= 331 || x === 333 || x === 338 || x === 339 || x === 358 || x === 359 || x === 363 || x === 462 || x === 464 || x === 466 || x === 468 || x === 470 || x === 472 || x === 474 || x === 476 || x === 593 || x === 609 || x === 708 || x === 711 || x >= 713 && x <= 715 || x === 717 || x === 720 || x >= 728 && x <= 731 || x === 733 || x === 735 || x >= 768 && x <= 879 || x >= 913 && x <= 929 || x >= 931 && x <= 937 || x >= 945 && x <= 961 || x >= 963 && x <= 969 || x === 1025 || x >= 1040 && x <= 1103 || x === 1105 || x === 8208 || x >= 8211 && x <= 8214 || x === 8216 || x === 8217 || x === 8220 || x === 8221 || x >= 8224 && x <= 8226 || x >= 8228 && x <= 8231 || x === 8240 || x === 8242 || x === 8243 || x === 8245 || x === 8251 || x === 8254 || x === 8308 || x === 8319 || x >= 8321 && x <= 8324 || x === 8364 || x === 8451 || x === 8453 || x === 8457 || x === 8467 || x === 8470 || x === 8481 || x === 8482 || x === 8486 || x === 8491 || x === 8531 || x === 8532 || x >= 8539 && x <= 8542 || x >= 8544 && x <= 8555 || x >= 8560 && x <= 8569 || x === 8585 || x >= 8592 && x <= 8601 || x === 8632 || x === 8633 || x === 8658 || x === 8660 || x === 8679 || x === 8704 || x === 8706 || x === 8707 || x === 8711 || x === 8712 || x === 8715 || x === 8719 || x === 8721 || x === 8725 || x === 8730 || x >= 8733 && x <= 8736 || x === 8739 || x === 8741 || x >= 8743 && x <= 8748 || x === 8750 || x >= 8756 && x <= 8759 || x === 8764 || x === 8765 || x === 8776 || x === 8780 || x === 8786 || x === 8800 || x === 8801 || x >= 8804 && x <= 8807 || x === 8810 || x === 8811 || x === 8814 || x === 8815 || x === 8834 || x === 8835 || x === 8838 || x === 8839 || x === 8853 || x === 8857 || x === 8869 || x === 8895 || x === 8978 || x >= 9312 && x <= 9449 || x >= 9451 && x <= 9547 || x >= 9552 && x <= 9587 || x >= 9600 && x <= 9615 || x >= 9618 && x <= 9621 || x === 9632 || x === 9633 || x >= 9635 && x <= 9641 || x === 9650 || x === 9651 || x === 9654 || x === 9655 || x === 9660 || x === 9661 || x === 9664 || x === 9665 || x >= 9670 && x <= 9672 || x === 9675 || x >= 9678 && x <= 9681 || x >= 9698 && x <= 9701 || x === 9711 || x === 9733 || x === 9734 || x === 9737 || x === 9742 || x === 9743 || x === 9756 || x === 9758 || x === 9792 || x === 9794 || x === 9824 || x === 9825 || x >= 9827 && x <= 9829 || x >= 9831 && x <= 9834 || x === 9836 || x === 9837 || x === 9839 || x === 9886 || x === 9887 || x === 9919 || x >= 9926 && x <= 9933 || x >= 9935 && x <= 9939 || x >= 9941 && x <= 9953 || x === 9955 || x === 9960 || x === 9961 || x >= 9963 && x <= 9969 || x === 9972 || x >= 9974 && x <= 9977 || x === 9979 || x === 9980 || x === 9982 || x === 9983 || x === 10045 || x >= 10102 && x <= 10111 || x >= 11094 && x <= 11097 || x >= 12872 && x <= 12879 || x >= 57344 && x <= 63743 || x >= 65024 && x <= 65039 || x === 65533 || x >= 127232 && x <= 127242 || x >= 127248 && x <= 127277 || x >= 127280 && x <= 127337 || x >= 127344 && x <= 127373 || x === 127375 || x === 127376 || x >= 127387 && x <= 127404 || x >= 917760 && x <= 917999 || x >= 983040 && x <= 1048573 || x >= 1048576 && x <= 1114109;
2644
+ }
2645
+ function isFullWidth(x) {
2646
+ return x === 12288 || x >= 65281 && x <= 65376 || x >= 65504 && x <= 65510;
2647
+ }
2648
+ function isWide(x) {
2649
+ return x >= 4352 && x <= 4447 || x === 8986 || x === 8987 || x === 9001 || x === 9002 || x >= 9193 && x <= 9196 || x === 9200 || x === 9203 || x === 9725 || x === 9726 || x === 9748 || x === 9749 || x >= 9776 && x <= 9783 || x >= 9800 && x <= 9811 || x === 9855 || x >= 9866 && x <= 9871 || x === 9875 || x === 9889 || x === 9898 || x === 9899 || x === 9917 || x === 9918 || x === 9924 || x === 9925 || x === 9934 || x === 9940 || x === 9962 || x === 9970 || x === 9971 || x === 9973 || x === 9978 || x === 9981 || x === 9989 || x === 9994 || x === 9995 || x === 10024 || x === 10060 || x === 10062 || x >= 10067 && x <= 10069 || x === 10071 || x >= 10133 && x <= 10135 || x === 10160 || x === 10175 || x === 11035 || x === 11036 || x === 11088 || x === 11093 || x >= 11904 && x <= 11929 || x >= 11931 && x <= 12019 || x >= 12032 && x <= 12245 || x >= 12272 && x <= 12287 || x >= 12289 && x <= 12350 || x >= 12353 && x <= 12438 || x >= 12441 && x <= 12543 || x >= 12549 && x <= 12591 || x >= 12593 && x <= 12686 || x >= 12688 && x <= 12773 || x >= 12783 && x <= 12830 || x >= 12832 && x <= 12871 || x >= 12880 && x <= 42124 || x >= 42128 && x <= 42182 || x >= 43360 && x <= 43388 || x >= 44032 && x <= 55203 || x >= 63744 && x <= 64255 || x >= 65040 && x <= 65049 || x >= 65072 && x <= 65106 || x >= 65108 && x <= 65126 || x >= 65128 && x <= 65131 || x >= 94176 && x <= 94180 || x === 94192 || x === 94193 || x >= 94208 && x <= 100343 || x >= 100352 && x <= 101589 || x >= 101631 && x <= 101640 || x >= 110576 && x <= 110579 || x >= 110581 && x <= 110587 || x === 110589 || x === 110590 || x >= 110592 && x <= 110882 || x === 110898 || x >= 110928 && x <= 110930 || x === 110933 || x >= 110948 && x <= 110951 || x >= 110960 && x <= 111355 || x >= 119552 && x <= 119638 || x >= 119648 && x <= 119670 || x === 126980 || x === 127183 || x === 127374 || x >= 127377 && x <= 127386 || x >= 127488 && x <= 127490 || x >= 127504 && x <= 127547 || x >= 127552 && x <= 127560 || x === 127568 || x === 127569 || x >= 127584 && x <= 127589 || x >= 127744 && x <= 127776 || x >= 127789 && x <= 127797 || x >= 127799 && x <= 127868 || x >= 127870 && x <= 127891 || x >= 127904 && x <= 127946 || x >= 127951 && x <= 127955 || x >= 127968 && x <= 127984 || x === 127988 || x >= 127992 && x <= 128062 || x === 128064 || x >= 128066 && x <= 128252 || x >= 128255 && x <= 128317 || x >= 128331 && x <= 128334 || x >= 128336 && x <= 128359 || x === 128378 || x === 128405 || x === 128406 || x === 128420 || x >= 128507 && x <= 128591 || x >= 128640 && x <= 128709 || x === 128716 || x >= 128720 && x <= 128722 || x >= 128725 && x <= 128727 || x >= 128732 && x <= 128735 || x === 128747 || x === 128748 || x >= 128756 && x <= 128764 || x >= 128992 && x <= 129003 || x === 129008 || x >= 129292 && x <= 129338 || x >= 129340 && x <= 129349 || x >= 129351 && x <= 129535 || x >= 129648 && x <= 129660 || x >= 129664 && x <= 129673 || x >= 129679 && x <= 129734 || x >= 129742 && x <= 129756 || x >= 129759 && x <= 129769 || x >= 129776 && x <= 129784 || x >= 131072 && x <= 196605 || x >= 196608 && x <= 262141;
2650
+ }
2651
+
2652
+ // node_modules/.pnpm/get-east-asian-width@1.3.0/node_modules/get-east-asian-width/index.js
2653
+ function validate(codePoint) {
2654
+ if (!Number.isSafeInteger(codePoint)) {
2655
+ throw new TypeError(`Expected a code point, got \`${typeof codePoint}\`.`);
2656
+ }
2657
+ }
2658
+ function eastAsianWidth(codePoint, { ambiguousAsWide = false } = {}) {
2659
+ validate(codePoint);
2660
+ if (isFullWidth(codePoint) || isWide(codePoint) || ambiguousAsWide && isAmbiguous(codePoint)) {
2661
+ return 2;
2662
+ }
2663
+ return 1;
2664
+ }
2665
+
2666
+ // node_modules/.pnpm/emoji-regex@10.4.0/node_modules/emoji-regex/index.mjs
2667
+ var emoji_regex_default = () => {
2668
+ return /[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;
2669
+ };
2670
+
2671
+ // node_modules/.pnpm/string-width@7.2.0/node_modules/string-width/index.js
2672
+ var segmenter = new Intl.Segmenter();
2673
+ var defaultIgnorableCodePointRegex = new RegExp("^\\p{Default_Ignorable_Code_Point}$", "u");
2674
+ function stringWidth(string, options = {}) {
2675
+ if (typeof string !== "string" || string.length === 0) {
2676
+ return 0;
2677
+ }
2678
+ const {
2679
+ ambiguousIsNarrow = true,
2680
+ countAnsiEscapeCodes = false
2681
+ } = options;
2682
+ if (!countAnsiEscapeCodes) {
2683
+ string = stripAnsi(string);
2684
+ }
2685
+ if (string.length === 0) {
2686
+ return 0;
2687
+ }
2688
+ let width = 0;
2689
+ const eastAsianWidthOptions = { ambiguousAsWide: !ambiguousIsNarrow };
2690
+ for (const { segment: character } of segmenter.segment(string)) {
2691
+ const codePoint = character.codePointAt(0);
2692
+ if (codePoint <= 31 || codePoint >= 127 && codePoint <= 159) {
2693
+ continue;
2694
+ }
2695
+ if (codePoint >= 8203 && codePoint <= 8207 || codePoint === 65279) {
2696
+ continue;
2697
+ }
2698
+ if (codePoint >= 768 && codePoint <= 879 || codePoint >= 6832 && codePoint <= 6911 || codePoint >= 7616 && codePoint <= 7679 || codePoint >= 8400 && codePoint <= 8447 || codePoint >= 65056 && codePoint <= 65071) {
2699
+ continue;
2700
+ }
2701
+ if (codePoint >= 55296 && codePoint <= 57343) {
2702
+ continue;
2703
+ }
2704
+ if (codePoint >= 65024 && codePoint <= 65039) {
2705
+ continue;
2706
+ }
2707
+ if (defaultIgnorableCodePointRegex.test(character)) {
2708
+ continue;
2709
+ }
2710
+ if (emoji_regex_default().test(character)) {
2711
+ width += 2;
2712
+ continue;
2713
+ }
2714
+ width += eastAsianWidth(codePoint, eastAsianWidthOptions);
2715
+ }
2716
+ return width;
2717
+ }
2718
+
2719
+ // node_modules/.pnpm/is-interactive@2.0.0/node_modules/is-interactive/index.js
2720
+ function isInteractive({ stream = process.stdout } = {}) {
2721
+ return Boolean(
2722
+ stream && stream.isTTY && process.env.TERM !== "dumb" && !("CI" in process.env)
2723
+ );
2724
+ }
2725
+ function isUnicodeSupported2() {
2726
+ const { env: env2 } = process6__namespace.default;
2727
+ const { TERM, TERM_PROGRAM } = env2;
2728
+ if (process6__namespace.default.platform !== "win32") {
2729
+ return TERM !== "linux";
2730
+ }
2731
+ return Boolean(env2.WT_SESSION) || Boolean(env2.TERMINUS_SUBLIME) || env2.ConEmuTask === "{cmd::Cmder}" || TERM_PROGRAM === "Terminus-Sublime" || TERM_PROGRAM === "vscode" || TERM === "xterm-256color" || TERM === "alacritty" || TERM === "rxvt-unicode" || TERM === "rxvt-unicode-256color" || env2.TERMINAL_EMULATOR === "JetBrains-JediTerm";
2732
+ }
2733
+ var ASCII_ETX_CODE = 3;
2734
+ var StdinDiscarder = class {
2735
+ #activeCount = 0;
2736
+ start() {
2737
+ this.#activeCount++;
2738
+ if (this.#activeCount === 1) {
2739
+ this.#realStart();
2740
+ }
2741
+ }
2742
+ stop() {
2743
+ if (this.#activeCount <= 0) {
2744
+ throw new Error("`stop` called more times than `start`");
2745
+ }
2746
+ this.#activeCount--;
2747
+ if (this.#activeCount === 0) {
2748
+ this.#realStop();
2749
+ }
2750
+ }
2751
+ #realStart() {
2752
+ if (process6__namespace.default.platform === "win32" || !process6__namespace.default.stdin.isTTY) {
2753
+ return;
2754
+ }
2755
+ process6__namespace.default.stdin.setRawMode(true);
2756
+ process6__namespace.default.stdin.on("data", this.#handleInput);
2757
+ process6__namespace.default.stdin.resume();
2758
+ }
2759
+ #realStop() {
2760
+ if (!process6__namespace.default.stdin.isTTY) {
2761
+ return;
2762
+ }
2763
+ process6__namespace.default.stdin.off("data", this.#handleInput);
2764
+ process6__namespace.default.stdin.pause();
2765
+ process6__namespace.default.stdin.setRawMode(false);
2766
+ }
2767
+ #handleInput(chunk) {
2768
+ if (chunk[0] === ASCII_ETX_CODE) {
2769
+ process6__namespace.default.emit("SIGINT");
2770
+ }
2771
+ }
2772
+ };
2773
+ var stdinDiscarder = new StdinDiscarder();
2774
+ var stdin_discarder_default = stdinDiscarder;
2775
+
2776
+ // node_modules/.pnpm/ora@8.1.1/node_modules/ora/index.js
2777
+ __toESM(require_cli_spinners());
2778
+ var Ora = class {
2779
+ #linesToClear = 0;
2780
+ #isDiscardingStdin = false;
2781
+ #lineCount = 0;
2782
+ #frameIndex = -1;
2783
+ #lastSpinnerFrameTime = 0;
2784
+ #options;
2785
+ #spinner;
2786
+ #stream;
2787
+ #id;
2788
+ #initialInterval;
2789
+ #isEnabled;
2790
+ #isSilent;
2791
+ #indent;
2792
+ #text;
2793
+ #prefixText;
2794
+ #suffixText;
2795
+ color;
2796
+ constructor(options) {
2797
+ if (typeof options === "string") {
2798
+ options = {
2799
+ text: options
2800
+ };
2801
+ }
2802
+ this.#options = {
2803
+ color: "cyan",
2804
+ stream: process6__namespace.default.stderr,
2805
+ discardStdin: true,
2806
+ hideCursor: true,
2807
+ ...options
2808
+ };
2809
+ this.color = this.#options.color;
2810
+ this.spinner = this.#options.spinner;
2811
+ this.#initialInterval = this.#options.interval;
2812
+ this.#stream = this.#options.stream;
2813
+ this.#isEnabled = typeof this.#options.isEnabled === "boolean" ? this.#options.isEnabled : isInteractive({ stream: this.#stream });
2814
+ this.#isSilent = typeof this.#options.isSilent === "boolean" ? this.#options.isSilent : false;
2815
+ this.text = this.#options.text;
2816
+ this.prefixText = this.#options.prefixText;
2817
+ this.suffixText = this.#options.suffixText;
2818
+ this.indent = this.#options.indent;
2819
+ if (process6__namespace.default.env.NODE_ENV === "test") {
2820
+ this._stream = this.#stream;
2821
+ this._isEnabled = this.#isEnabled;
2822
+ Object.defineProperty(this, "_linesToClear", {
2823
+ get() {
2824
+ return this.#linesToClear;
2825
+ },
2826
+ set(newValue) {
2827
+ this.#linesToClear = newValue;
2828
+ }
2829
+ });
2830
+ Object.defineProperty(this, "_frameIndex", {
2831
+ get() {
2832
+ return this.#frameIndex;
2833
+ }
2834
+ });
2835
+ Object.defineProperty(this, "_lineCount", {
2836
+ get() {
2837
+ return this.#lineCount;
2838
+ }
2839
+ });
2840
+ }
2841
+ }
2842
+ get indent() {
2843
+ return this.#indent;
2844
+ }
2845
+ set indent(indent = 0) {
2846
+ if (!(indent >= 0 && Number.isInteger(indent))) {
2847
+ throw new Error("The `indent` option must be an integer from 0 and up");
2848
+ }
2849
+ this.#indent = indent;
2850
+ this.#updateLineCount();
2851
+ }
2852
+ get interval() {
2853
+ return this.#initialInterval ?? this.#spinner.interval ?? 100;
2854
+ }
2855
+ get spinner() {
2856
+ return this.#spinner;
2857
+ }
2858
+ set spinner(spinner) {
2859
+ this.#frameIndex = -1;
2860
+ this.#initialInterval = void 0;
2861
+ if (typeof spinner === "object") {
2862
+ if (spinner.frames === void 0) {
2863
+ throw new Error("The given spinner must have a `frames` property");
2864
+ }
2865
+ this.#spinner = spinner;
2866
+ } else if (!isUnicodeSupported2()) {
2867
+ this.#spinner = import_cli_spinners.default.line;
2868
+ } else if (spinner === void 0) {
2869
+ this.#spinner = import_cli_spinners.default.dots;
2870
+ } else if (spinner !== "default" && import_cli_spinners.default[spinner]) {
2871
+ this.#spinner = import_cli_spinners.default[spinner];
2872
+ } else {
2873
+ throw new Error(`There is no built-in spinner named '${spinner}'. See https://github.com/sindresorhus/cli-spinners/blob/main/spinners.json for a full list.`);
2874
+ }
2875
+ }
2876
+ get text() {
2877
+ return this.#text;
2878
+ }
2879
+ set text(value = "") {
2880
+ this.#text = value;
2881
+ this.#updateLineCount();
2882
+ }
2883
+ get prefixText() {
2884
+ return this.#prefixText;
2885
+ }
2886
+ set prefixText(value = "") {
2887
+ this.#prefixText = value;
2888
+ this.#updateLineCount();
2889
+ }
2890
+ get suffixText() {
2891
+ return this.#suffixText;
2892
+ }
2893
+ set suffixText(value = "") {
2894
+ this.#suffixText = value;
2895
+ this.#updateLineCount();
2896
+ }
2897
+ get isSpinning() {
2898
+ return this.#id !== void 0;
2899
+ }
2900
+ #getFullPrefixText(prefixText = this.#prefixText, postfix = " ") {
2901
+ if (typeof prefixText === "string" && prefixText !== "") {
2902
+ return prefixText + postfix;
2903
+ }
2904
+ if (typeof prefixText === "function") {
2905
+ return prefixText() + postfix;
2906
+ }
2907
+ return "";
2908
+ }
2909
+ #getFullSuffixText(suffixText = this.#suffixText, prefix = " ") {
2910
+ if (typeof suffixText === "string" && suffixText !== "") {
2911
+ return prefix + suffixText;
2912
+ }
2913
+ if (typeof suffixText === "function") {
2914
+ return prefix + suffixText();
2915
+ }
2916
+ return "";
2917
+ }
2918
+ #updateLineCount() {
2919
+ const columns = this.#stream.columns ?? 80;
2920
+ const fullPrefixText = this.#getFullPrefixText(this.#prefixText, "-");
2921
+ const fullSuffixText = this.#getFullSuffixText(this.#suffixText, "-");
2922
+ const fullText = " ".repeat(this.#indent) + fullPrefixText + "--" + this.#text + "--" + fullSuffixText;
2923
+ this.#lineCount = 0;
2924
+ for (const line of stripAnsi(fullText).split("\n")) {
2925
+ this.#lineCount += Math.max(1, Math.ceil(stringWidth(line, { countAnsiEscapeCodes: true }) / columns));
2926
+ }
2927
+ }
2928
+ get isEnabled() {
2929
+ return this.#isEnabled && !this.#isSilent;
2930
+ }
2931
+ set isEnabled(value) {
2932
+ if (typeof value !== "boolean") {
2933
+ throw new TypeError("The `isEnabled` option must be a boolean");
2934
+ }
2935
+ this.#isEnabled = value;
2936
+ }
2937
+ get isSilent() {
2938
+ return this.#isSilent;
2939
+ }
2940
+ set isSilent(value) {
2941
+ if (typeof value !== "boolean") {
2942
+ throw new TypeError("The `isSilent` option must be a boolean");
2943
+ }
2944
+ this.#isSilent = value;
2945
+ }
2946
+ frame() {
2947
+ const now = Date.now();
2948
+ if (this.#frameIndex === -1 || now - this.#lastSpinnerFrameTime >= this.interval) {
2949
+ this.#frameIndex = ++this.#frameIndex % this.#spinner.frames.length;
2950
+ this.#lastSpinnerFrameTime = now;
2951
+ }
2952
+ const { frames } = this.#spinner;
2953
+ let frame = frames[this.#frameIndex];
2954
+ if (this.color) {
2955
+ frame = source_default[this.color](frame);
2956
+ }
2957
+ const fullPrefixText = typeof this.#prefixText === "string" && this.#prefixText !== "" ? this.#prefixText + " " : "";
2958
+ const fullText = typeof this.text === "string" ? " " + this.text : "";
2959
+ const fullSuffixText = typeof this.#suffixText === "string" && this.#suffixText !== "" ? " " + this.#suffixText : "";
2960
+ return fullPrefixText + frame + fullText + fullSuffixText;
2961
+ }
2962
+ clear() {
2963
+ if (!this.#isEnabled || !this.#stream.isTTY) {
2964
+ return this;
2965
+ }
2966
+ this.#stream.cursorTo(0);
2967
+ for (let index = 0; index < this.#linesToClear; index++) {
2968
+ if (index > 0) {
2969
+ this.#stream.moveCursor(0, -1);
2970
+ }
2971
+ this.#stream.clearLine(1);
2972
+ }
2973
+ if (this.#indent || this.lastIndent !== this.#indent) {
2974
+ this.#stream.cursorTo(this.#indent);
2975
+ }
2976
+ this.lastIndent = this.#indent;
2977
+ this.#linesToClear = 0;
2978
+ return this;
2979
+ }
2980
+ render() {
2981
+ if (this.#isSilent) {
2982
+ return this;
2983
+ }
2984
+ this.clear();
2985
+ this.#stream.write(this.frame());
2986
+ this.#linesToClear = this.#lineCount;
2987
+ return this;
2988
+ }
2989
+ start(text) {
2990
+ if (text) {
2991
+ this.text = text;
2992
+ }
2993
+ if (this.#isSilent) {
2994
+ return this;
2995
+ }
2996
+ if (!this.#isEnabled) {
2997
+ if (this.text) {
2998
+ this.#stream.write(`- ${this.text}
2999
+ `);
3000
+ }
3001
+ return this;
3002
+ }
3003
+ if (this.isSpinning) {
3004
+ return this;
3005
+ }
3006
+ if (this.#options.hideCursor) {
3007
+ cli_cursor_default.hide(this.#stream);
3008
+ }
3009
+ if (this.#options.discardStdin && process6__namespace.default.stdin.isTTY) {
3010
+ this.#isDiscardingStdin = true;
3011
+ stdin_discarder_default.start();
3012
+ }
3013
+ this.render();
3014
+ this.#id = setInterval(this.render.bind(this), this.interval);
3015
+ return this;
3016
+ }
3017
+ stop() {
3018
+ if (!this.#isEnabled) {
3019
+ return this;
3020
+ }
3021
+ clearInterval(this.#id);
3022
+ this.#id = void 0;
3023
+ this.#frameIndex = 0;
3024
+ this.clear();
3025
+ if (this.#options.hideCursor) {
3026
+ cli_cursor_default.show(this.#stream);
3027
+ }
3028
+ if (this.#options.discardStdin && process6__namespace.default.stdin.isTTY && this.#isDiscardingStdin) {
3029
+ stdin_discarder_default.stop();
3030
+ this.#isDiscardingStdin = false;
3031
+ }
3032
+ return this;
3033
+ }
3034
+ succeed(text) {
3035
+ return this.stopAndPersist({ symbol: log_symbols_default.success, text });
3036
+ }
3037
+ fail(text) {
3038
+ return this.stopAndPersist({ symbol: log_symbols_default.error, text });
3039
+ }
3040
+ warn(text) {
3041
+ return this.stopAndPersist({ symbol: log_symbols_default.warning, text });
3042
+ }
3043
+ info(text) {
3044
+ return this.stopAndPersist({ symbol: log_symbols_default.info, text });
3045
+ }
3046
+ stopAndPersist(options = {}) {
3047
+ if (this.#isSilent) {
3048
+ return this;
3049
+ }
3050
+ const prefixText = options.prefixText ?? this.#prefixText;
3051
+ const fullPrefixText = this.#getFullPrefixText(prefixText, " ");
3052
+ const symbolText = options.symbol ?? " ";
3053
+ const text = options.text ?? this.text;
3054
+ const separatorText = symbolText ? " " : "";
3055
+ const fullText = typeof text === "string" ? separatorText + text : "";
3056
+ const suffixText = options.suffixText ?? this.#suffixText;
3057
+ const fullSuffixText = this.#getFullSuffixText(suffixText, " ");
3058
+ const textToWrite = fullPrefixText + symbolText + fullText + fullSuffixText + "\n";
3059
+ this.stop();
3060
+ this.#stream.write(textToWrite);
3061
+ return this;
3062
+ }
3063
+ };
3064
+ function ora(options) {
3065
+ return new Ora(options);
3066
+ }
3067
+
3068
+ // package.json
3069
+ var package_default = {
3070
+ name: "@keload/node-red-dxp",
3071
+ version: "1.4.1",
3072
+ description: "",
3073
+ type: "module",
3074
+ scripts: {
3075
+ build: "tsup",
3076
+ watch: "tsup --watch",
3077
+ format: "pnpm biome format",
3078
+ lint: "pnpm biome lint",
3079
+ "lint:check": "pnpm biome check",
3080
+ release: "pnpm release-it",
3081
+ "release:test": "pnpm release-it --dry-run",
3082
+ "docs:dev": "vitepress dev docs",
3083
+ "docs:build": "vitepress build docs",
3084
+ "docs:preview": "vitepress preview docs",
3085
+ "test:unit": "vitest"
3086
+ },
3087
+ publishConfig: {
3088
+ access: "public"
3089
+ },
3090
+ bin: {
3091
+ "node-red-dxp": "./dist/cli/index.cjs"
3092
+ },
3093
+ exports: {
3094
+ ".": {
3095
+ import: "./dist/index.js",
3096
+ require: "./dist/index.cjs"
3097
+ },
3098
+ "./editor": {
3099
+ import: "./dist/editor/index.js",
3100
+ require: "./dist/editor/index.cjs"
3101
+ },
3102
+ "./package.json": "./package.json"
3103
+ },
3104
+ keywords: [],
3105
+ author: "Cl\xE9ment BERARD <contact@berard.dev>",
3106
+ license: "MIT",
3107
+ repository: {
3108
+ type: "git",
3109
+ url: "https://github.com/clement-berard/node-red-dxp.git"
3110
+ },
3111
+ bugs: {
3112
+ url: "https://github.com/clement-berard/node-red-dxp/issues"
3113
+ },
3114
+ homepage: "https://github.com/clement-berard/node-red-dxp",
3115
+ devDependencies: {
3116
+ "@biomejs/biome": "1.9.4",
3117
+ "@release-it/conventional-changelog": "9.0.3",
3118
+ "@types/handlebars": "4.1.0",
3119
+ "release-it": "17.10.0",
3120
+ tsup: "8.3.5",
3121
+ tsx: "4.19.2",
3122
+ typescript: "5.6.3",
3123
+ vitepress: "1.5.0",
3124
+ vitest: "2.1.5"
3125
+ },
3126
+ dependencies: {
3127
+ "@fullhuman/postcss-purgecss": "^6.0.0",
3128
+ "@types/html-minifier-terser": "7.0.2",
3129
+ "@types/jquery": "3.5.32",
3130
+ "@types/jqueryui": "1.12.23",
3131
+ "@types/node-red": "1.3.5",
3132
+ "@types/prettyjson": "0.0.33",
3133
+ autoprefixer: "^10.4.20",
3134
+ "browser-sync": "3.0.3",
3135
+ chokidar: "4.0.1",
3136
+ commander: "12.1.0",
3137
+ consola: "3.2.3",
3138
+ cosmiconfig: "9.0.0",
3139
+ cssnano: "^7.0.6",
3140
+ esbuild: "0.24.0",
3141
+ glob: "11.0.0",
3142
+ handlebars: "4.7.8",
3143
+ "html-minifier-terser": "7.2.0",
3144
+ "merge-anything": "6.0.2",
3145
+ nodemon: "3.1.7",
3146
+ ora: "8.1.1",
3147
+ postcss: "^8.4.49",
3148
+ prettyjson: "1.2.5",
3149
+ radash: "12.1.0",
3150
+ sass: "1.81.0",
3151
+ "solid-js": "1.9.3",
3152
+ tailwindcss: "^3.4.15"
3153
+ },
3154
+ files: [
3155
+ "dist"
3156
+ ]
3157
+ };
3158
+
3159
+ // node_modules/.pnpm/is-what@5.0.2/node_modules/is-what/dist/getType.js
3160
+ function getType(payload) {
3161
+ return Object.prototype.toString.call(payload).slice(8, -1);
3162
+ }
3163
+
3164
+ // node_modules/.pnpm/is-what@5.0.2/node_modules/is-what/dist/isPlainObject.js
3165
+ function isPlainObject(payload) {
3166
+ if (getType(payload) !== "Object")
3167
+ return false;
3168
+ const prototype = Object.getPrototypeOf(payload);
3169
+ return !!prototype && prototype.constructor === Object && prototype === Object.prototype;
3170
+ }
3171
+
3172
+ // node_modules/.pnpm/is-what@5.0.2/node_modules/is-what/dist/isSymbol.js
3173
+ function isSymbol(payload) {
3174
+ return getType(payload) === "Symbol";
3175
+ }
3176
+
3177
+ // node_modules/.pnpm/merge-anything@6.0.2/node_modules/merge-anything/dist/merge.js
3178
+ function assignProp(carry, key, newVal, originalObject) {
3179
+ const propType = {}.propertyIsEnumerable.call(originalObject, key) ? "enumerable" : "nonenumerable";
3180
+ if (propType === "enumerable")
3181
+ carry[key] = newVal;
3182
+ if (propType === "nonenumerable") {
3183
+ Object.defineProperty(carry, key, {
3184
+ value: newVal,
3185
+ enumerable: false,
3186
+ writable: true,
3187
+ configurable: true
3188
+ });
3189
+ }
3190
+ }
3191
+ function mergeRecursively(origin, newComer, compareFn) {
3192
+ if (!isPlainObject(newComer))
3193
+ return newComer;
3194
+ let newObject = {};
3195
+ if (isPlainObject(origin)) {
3196
+ const props2 = Object.getOwnPropertyNames(origin);
3197
+ const symbols2 = Object.getOwnPropertySymbols(origin);
3198
+ newObject = [...props2, ...symbols2].reduce((carry, key) => {
3199
+ const targetVal = origin[key];
3200
+ if (!isSymbol(key) && !Object.getOwnPropertyNames(newComer).includes(key) || isSymbol(key) && !Object.getOwnPropertySymbols(newComer).includes(key)) {
3201
+ assignProp(carry, key, targetVal, origin);
3202
+ }
3203
+ return carry;
3204
+ }, {});
3205
+ }
3206
+ const props = Object.getOwnPropertyNames(newComer);
3207
+ const symbols = Object.getOwnPropertySymbols(newComer);
3208
+ const result = [...props, ...symbols].reduce((carry, key) => {
3209
+ let newVal = newComer[key];
3210
+ const targetVal = isPlainObject(origin) ? origin[key] : void 0;
3211
+ if (targetVal !== void 0 && isPlainObject(newVal)) {
3212
+ newVal = mergeRecursively(targetVal, newVal);
3213
+ }
3214
+ const propToAssign = newVal;
3215
+ assignProp(carry, key, propToAssign, newComer);
3216
+ return carry;
3217
+ }, newObject);
3218
+ return result;
3219
+ }
3220
+ function merge(object, ...otherObjects) {
3221
+ return otherObjects.reduce((result, newComer) => {
3222
+ return mergeRecursively(result, newComer);
3223
+ }, object);
3224
+ }
3225
+
3226
+ // src/default-config.ts
3227
+ var defaultConfig = {
3228
+ libCacheDir: ".node-red-dx",
3229
+ srcDir: "src",
3230
+ nodesDirName: "nodes",
3231
+ nodes: {
3232
+ controllerName: "controller",
3233
+ localesDirName: "locales",
3234
+ editor: {
3235
+ dirName: "editor",
3236
+ htmlName: "index",
3237
+ tsName: "index"
3238
+ }
3239
+ },
3240
+ builder: {
3241
+ outputDir: "dist"
3242
+ },
3243
+ watcher: {
3244
+ nodeRed: {
3245
+ enabled: true,
3246
+ path: "~/.node-red",
3247
+ url: "http://localhost:1880"
3248
+ }
3249
+ }
3250
+ };
3251
+
3252
+ // src/current-context.ts
3253
+ var CONFIG_FILE_NAME = "node-red-dx";
3254
+ var cleanPkgName = (pkgName) => pkgName.replace("@", "").replace("/", "-");
3255
+ function getConfig() {
3256
+ const explorerSync = cosmiconfig.cosmiconfigSync(CONFIG_FILE_NAME);
3257
+ try {
3258
+ const result = explorerSync.search();
3259
+ return merge(defaultConfig, result ? result.config : {});
3260
+ } catch (error) {
3261
+ console.error("Error while loading configuration", error);
3262
+ throw error;
3263
+ }
3264
+ }
3265
+ var currentConfig = getConfig();
3266
+ var currentDir = process.cwd();
3267
+ var jsonPackage = JSON.parse(fs.readFileSync(`${currentDir}/package.json`, "utf-8"));
3268
+ var pathSrcDir = `${currentDir}/${currentConfig.srcDir}`;
3269
+ var additionalResourcesDir = `${currentDir}/resources`;
3270
+ var pathSrcNodesDir = `${pathSrcDir}/${currentConfig.nodesDirName}`;
3271
+ var pathLibCacheDir = `${currentDir}/${currentConfig.libCacheDir}`;
3272
+ var currentPackagedDistPath = `${path2__default.default.resolve(__dirname, "..")}`;
3273
+ var packageNameSlug = cleanPkgName(jsonPackage.name);
3274
+ function listNodeFolders() {
3275
+ const rawNodes = glob.globSync(`${pathSrcNodesDir}/*`, { withFileTypes: true });
3276
+ return rawNodes.map((entry) => {
3277
+ const fullPath = entry.fullpath();
3278
+ const fullEditorPath = `${fullPath}/${currentConfig.nodes.editor.dirName}`;
3279
+ const relativePath = fullPath.replace(currentDir, "").slice(1);
3280
+ const relativeEditorPath = `${relativePath}/${currentConfig.nodes.editor.dirName}`;
3281
+ const scssFiles = glob.globSync(`${fullEditorPath}/**/*.scss`);
3282
+ const mdxFiles = glob.globSync(`${fullPath}/doc.mdx`);
3283
+ const mdFiles = glob.globSync(`${fullPath}/doc.md`);
3284
+ const dashName = radash.dash(entry.name);
3285
+ return {
3286
+ fullEditorPath,
3287
+ fullPath,
3288
+ name: entry.name,
3289
+ pascalName: radash.pascal(entry.name),
3290
+ dashName,
3291
+ relativeEditorPath,
3292
+ relativePath,
3293
+ resolvedLocalesPaths: glob.globSync(`${fullPath}/${currentConfig.nodes.localesDirName}/*.json`),
3294
+ nodeIdentifier: `${packageNameSlug}-${dashName}`,
3295
+ fullControllerPath: `${fullPath}/${currentConfig.nodes.controllerName}.ts`,
3296
+ editor: {
3297
+ tsPath: `${fullEditorPath}/${currentConfig.nodes.editor.tsName}.ts`,
3298
+ htmlPath: `${fullEditorPath}/${currentConfig.nodes.editor.htmlName}.html`,
3299
+ scssFiles
3300
+ },
3301
+ doc: {
3302
+ mdxFiles,
3303
+ mdFiles
3304
+ }
3305
+ };
3306
+ });
3307
+ }
3308
+ function getCurrentContext() {
3309
+ const listNodesFull = listNodeFolders();
3310
+ const listNodesFullNames = listNodesFull.map((node) => node.name);
3311
+ return {
3312
+ currentDir,
3313
+ pathSrcDir,
3314
+ pathSrcNodesDir,
3315
+ additionalResourcesDir,
3316
+ pathDist: `${currentDir}/${currentConfig.builder.outputDir}`,
3317
+ currentPackagedDistPath,
3318
+ cacheDirFiles: {
3319
+ controllerIndex: `${pathLibCacheDir}/controller-index.ts`,
3320
+ editorIndex: `${pathLibCacheDir}/editor-index.ts`
3321
+ },
3322
+ pathLibCacheDir,
3323
+ packageName: jsonPackage.name,
3324
+ packageNameSlug,
3325
+ config: currentConfig,
3326
+ resolvedSrcPathsScss: glob.globSync(`${pathSrcDir}/**/*.scss`, { ignore: `${pathSrcNodesDir}/**/*.scss` }),
3327
+ resolvedNodesPaths: glob.globSync(`${pathSrcNodesDir}/*`),
3328
+ resolvedSrcLocalesPaths: glob.globSync(`${pathSrcDir}/locales/*.json`),
3329
+ listNodesFull,
3330
+ listNodesFullNames
3331
+ };
3332
+ }
3333
+ var currentContext = getCurrentContext();
3334
+ var distributionPackagePath = `${path2__default.default.resolve(__dirname, "..")}`;
3335
+ function createFolderIfNotExists(folderPath) {
3336
+ if (!fs__default.default.existsSync(folderPath)) {
3337
+ fs__default.default.mkdirSync(folderPath, { recursive: true });
3338
+ }
3339
+ }
3340
+ async function writeFile(path4, content) {
3341
+ try {
3342
+ await fsPromise__default.default.writeFile(path4, content);
3343
+ } catch (error) {
3344
+ console.error("Error writing controller index:", error);
3345
+ }
3346
+ }
3347
+ async function cleanPaths(paths) {
3348
+ for (const dirPath of paths) {
3349
+ try {
3350
+ const resolvedPath = path2__default.default.resolve(dirPath);
3351
+ const stats = await fsPromise__default.default.stat(resolvedPath).catch(() => null);
3352
+ if (stats == null ? void 0 : stats.isDirectory()) {
3353
+ await fsPromise__default.default.rm(resolvedPath, { recursive: true, force: true });
3354
+ }
3355
+ } catch (error) {
3356
+ console.error(`Error cleaning path (${dirPath}): ${error}`);
3357
+ }
3358
+ }
3359
+ }
3360
+ var BuilderController = class {
3361
+ params;
3362
+ constructor(params) {
3363
+ this.params = { minify: false, ...params };
3364
+ }
3365
+ async getControllerIndexContent() {
3366
+ return `
11
3367
  import type { NodeAPI } from 'node-red';
12
- ${o.listNodesFull.map(t=>`import ${t.pascalName} from '${t.fullControllerPath}';`).join(`
13
- `)}
3368
+ ${currentContext.listNodesFull.map((node) => `import ${node.pascalName} from '${node.fullControllerPath}';`).join("\n")}
14
3369
 
15
3370
 
16
3371
  export default async (RED: NodeAPI): Promise<void> => {
17
3372
  global.RED = RED;
18
3373
 
19
- ${o.listNodesFull.map(t=>`// @ts-ignore
20
- global.RED.nodes.registerType('${t.name}', ${t.pascalName});`).join(`
21
- `)}
3374
+ ${currentContext.listNodesFull.map((node) => `// @ts-ignore
3375
+ global.RED.nodes.registerType('${node.name}', ${node.pascalName});`).join("\n")}
3376
+ };
3377
+ `.trim();
3378
+ }
3379
+ buildScript() {
3380
+ return esbuild__default.default.build({
3381
+ entryPoints: [currentContext.cacheDirFiles.controllerIndex],
3382
+ outfile: `${currentContext.pathDist}/index.js`,
3383
+ bundle: true,
3384
+ minify: this.params.minify,
3385
+ minifyWhitespace: this.params.minify,
3386
+ minifyIdentifiers: this.params.minify,
3387
+ minifySyntax: this.params.minify,
3388
+ platform: "node",
3389
+ format: "cjs",
3390
+ target: "es2018",
3391
+ loader: { ".ts": "ts" },
3392
+ packages: "external"
3393
+ });
3394
+ }
3395
+ async getControllerTask() {
3396
+ return this.getControllerIndexContent().then((content) => {
3397
+ writeFile(`${currentContext.cacheDirFiles.controllerIndex}`, content).then(() => {
3398
+ this.buildScript();
3399
+ });
3400
+ });
3401
+ }
22
3402
  };
23
- `.trim()}buildScript(){return Su__default.default.build({entryPoints:[o.cacheDirFiles.controllerIndex],outfile:`${o.pathDist}/index.js`,bundle:!0,minify:this.params.minify,minifyWhitespace:this.params.minify,minifyIdentifiers:this.params.minify,minifySyntax:this.params.minify,platform:"node",format:"cjs",target:"es2018",loader:{".ts":"ts"},packages:"external"})}async getControllerTask(){return this.getControllerIndexContent().then(t=>{B(`${o.cacheDirFiles.controllerIndex}`,t).then(()=>{this.buildScript();});})}};var z=class{getAllDocContent(){let t=[];for(let u of o.listNodesFull)if(u.doc.mdFiles[0]){let D=at__default.default.readFileSync(u.doc.mdFiles[0],"utf-8"),i=`
24
- <script type="text/markdown" data-help-name="${u.name}">
25
- ${D}
3403
+ var BuildDoc = class {
3404
+ // TODO need to refactor
3405
+ getAllDocContent() {
3406
+ const result = [];
3407
+ for (const node of currentContext.listNodesFull) {
3408
+ const fileMd = node.doc.mdFiles[0];
3409
+ if (fileMd) {
3410
+ const htmlMd = fs__default.default.readFileSync(node.doc.mdFiles[0], "utf-8");
3411
+ const inner = `
3412
+ <script type="text/markdown" data-help-name="${node.name}">
3413
+ ${htmlMd}
26
3414
  </script>
27
- `;t.push(i);}return t.length?t.join(`
28
- `):""}};function mt(e){return e.trim().replace(/\n\s+/g,"")}function ft(e=""){return {name:e,dashName:radash.dash(e),pascalName:radash.pascal(e)}}async function Ru(e){return htmlMinifierTerser.minify(e,{collapseWhitespace:!0,removeComments:!0,removeRedundantAttributes:!1,useShortDoctype:!0,removeEmptyAttributes:!1,minifyCSS:!1,minifyJS:!1})}function ju(e,t){return `
29
- <script type="text/html" data-template-name="${e}">
30
- ${t}
3415
+ `;
3416
+ result.push(inner);
3417
+ }
3418
+ }
3419
+ return result.length ? result.join("\n") : "";
3420
+ }
3421
+ };
3422
+ function cleanSpaces(str) {
3423
+ return str.trim().replace(/\n\s+/g, "");
3424
+ }
3425
+ function computeNodeName(inName = "") {
3426
+ return {
3427
+ name: inName,
3428
+ dashName: radash.dash(inName),
3429
+ pascalName: radash.pascal(inName)
3430
+ };
3431
+ }
3432
+
3433
+ // src/builder/editor/i18n.ts
3434
+ function updateI18nAttributes(nodeName = "", htmlContent = "") {
3435
+ if (!nodeName || !htmlContent) {
3436
+ return htmlContent;
3437
+ }
3438
+ return htmlContent.replace(/data-i18n="([^"]+)"/g, (match, i18nValue) => {
3439
+ const updatedValue = i18nValue.replace(/(\[.*?\])?(node-red:[^;]+|[^;]+)/g, (_, prefix, key) => {
3440
+ let res = key;
3441
+ if (!key.startsWith("node-red:")) {
3442
+ res = `${nodeName}.${key}`;
3443
+ }
3444
+ return (prefix || "") + res;
3445
+ });
3446
+ return `data-i18n="${updatedValue}"`;
3447
+ });
3448
+ }
3449
+
3450
+ // src/builder/editor/html.ts
3451
+ async function minifyHtml(content) {
3452
+ return htmlMinifierTerser.minify(content, {
3453
+ collapseWhitespace: true,
3454
+ removeComments: true,
3455
+ removeRedundantAttributes: false,
3456
+ useShortDoctype: true,
3457
+ removeEmptyAttributes: false,
3458
+ minifyCSS: false,
3459
+ minifyJS: false
3460
+ });
3461
+ }
3462
+ function wrapHtml(nodeName, html) {
3463
+ return `
3464
+ <script type="text/html" data-template-name="${nodeName}">
3465
+ ${html}
31
3466
  </script>
32
- `}async function Mu(e,t,u=!1){let r=at.readFileSync(e.editor.htmlPath,"utf8"),D=`
33
- <div class="${t}">
34
- <div class="${e.nodeIdentifier}">${r}</div>
3467
+ `;
3468
+ }
3469
+ async function processNodeHtml(node, packageNameSlug2, minify2 = false) {
3470
+ const htmlContent = fs.readFileSync(node.editor.htmlPath, "utf8");
3471
+ const htmlContentWithAdditionalDiv = `
3472
+ <div class="${packageNameSlug2}">
3473
+ <div class="${node.nodeIdentifier}">${htmlContent}</div>
35
3474
  </div>
36
- `,i=u?await Ru(D):D,s=ju(e.name,i);return {nodeName:e.name,nodeIdentifier:e.nodeIdentifier,html:i,wrappedHtml:s}}async function dt(e){let{nodes:t,minify:u=!1}=e,r=await Promise.all(t.map(i=>Mu(i,e.packageNameSlug,u)));return {html:r.map(i=>i.html).join("").trim(),allWrappedHtml:r.map(i=>u?mt(i.wrappedHtml):i.wrappedHtml).join("").trim()}}async function Yu(e,t){return (await pt__default.default([Lu__default.default({content:[{raw:t,extension:"html"}]}),Gu__default.default,Wu__default.default({preset:"default"})]).process(e,{from:void 0})).css}function Vu(e){return Ct__namespace.compile(e,{style:"expanded"}).css}function Et(e){let t={};for(let u=0;u<e.length;u++){let r=e[u];t[r]=Vu(r);}return t}function qu(e){return e.some(u=>u.editor.scssFiles.length)?e.filter(u=>u.editor.scssFiles.length).map(u=>{let r=Et(u.editor.scssFiles),D=Object.values(r).join("");return {name:u.name,mergedCompiledStyles:D,scssFinal:`
37
- #${u.nodeIdentifier}{
38
- ${D}
39
- }`}}):[]}async function Ju(e,t={}){let r={...{content:[{raw:e}],theme:{}},...t},D=glob.globSync(`${lt}/${o.config.nodes.editor.dirName}/assets/tailwind.scss`)[0],i=D.length?at__default.default.readFileSync(D,"utf8"):"";return (await pt__default.default([Uu__default.default(r),Ot("autoprefixer")]).process(i,{from:void 0})).css}function Ku(){let e=o.resolvedSrcPathsScss,t=Et([...e]);return Object.values(t).join("")}async function ht(e){let{rawHtml:t,minify:u=!1,nodes:r}=e||{},D=Ku(),i=qu(r),s=await Ju(t),n=c=>`.${o.packageNameSlug}{${c}}`,m=i.map(c=>c.scssFinal).join(`
40
- `),l=n(`${s}${D}${m}`);return u?Yu(l,t):l}var X=class{params;constructor(t){this.params={minify:!1,...t};}async getEditorIndexContent(){return `
3475
+ `;
3476
+ let html = minify2 ? await minifyHtml(htmlContentWithAdditionalDiv) : htmlContentWithAdditionalDiv;
3477
+ html = updateI18nAttributes(node.name, html);
3478
+ const wrappedHtml = wrapHtml(node.name, html);
3479
+ return {
3480
+ nodeName: node.name,
3481
+ nodeIdentifier: node.nodeIdentifier,
3482
+ html,
3483
+ wrappedHtml
3484
+ };
3485
+ }
3486
+ async function getNodesHtml(params) {
3487
+ const { nodes, minify: minify2 = false } = params;
3488
+ const res = await Promise.all(nodes.map((node) => processNodeHtml(node, params.packageNameSlug, minify2)));
3489
+ const allHtml = res.map((node) => node.html).join("").trim();
3490
+ return {
3491
+ html: allHtml,
3492
+ allWrappedHtml: res.map((node) => minify2 ? cleanSpaces(node.wrappedHtml) : node.wrappedHtml).join("").trim()
3493
+ };
3494
+ }
3495
+ async function processCSS(cssString, htmlString) {
3496
+ const result = await postcss__default.default([
3497
+ purgeCss__default.default({
3498
+ content: [{ raw: htmlString, extension: "html" }]
3499
+ // Analyse directe du HTML
3500
+ }),
3501
+ autoprefixer__default.default,
3502
+ cssnano__default.default({ preset: "default" })
3503
+ ]).process(cssString, { from: void 0 });
3504
+ return result.css;
3505
+ }
3506
+ function compileScss(filePath) {
3507
+ const result = sass__namespace.compile(filePath, { style: "expanded" });
3508
+ return result.css;
3509
+ }
3510
+ function buildStyles(files) {
3511
+ const styles3 = {};
3512
+ for (let i = 0; i < files.length; i++) {
3513
+ const filePath = files[i];
3514
+ styles3[filePath] = compileScss(filePath);
3515
+ }
3516
+ return styles3;
3517
+ }
3518
+ function getNodesStyles(nodes) {
3519
+ const hasStyles = nodes.some((node) => node.editor.scssFiles.length);
3520
+ if (!hasStyles) {
3521
+ return [];
3522
+ }
3523
+ return nodes.filter((node) => node.editor.scssFiles.length).map((node) => {
3524
+ const nodeStyles = buildStyles(node.editor.scssFiles);
3525
+ const mergedCompiledStyles = Object.values(nodeStyles).join("");
3526
+ return {
3527
+ name: node.name,
3528
+ mergedCompiledStyles,
3529
+ scssFinal: `
3530
+ #${node.nodeIdentifier}{
3531
+ ${mergedCompiledStyles}
3532
+ }`
3533
+ };
3534
+ });
3535
+ }
3536
+ async function generateCSSFromHTMLWithTailwind(htmlString, tailwindConfig = {}) {
3537
+ const defaultConfig2 = {
3538
+ content: [{ raw: htmlString }],
3539
+ theme: {}
3540
+ };
3541
+ const finalConfig = { ...defaultConfig2, ...tailwindConfig };
3542
+ const tailwindScssFilePath = glob.globSync(
3543
+ `${distributionPackagePath}/${currentContext.config.nodes.editor.dirName}/assets/tailwind.scss`
3544
+ )[0];
3545
+ const scssString = tailwindScssFilePath.length ? fs__default.default.readFileSync(tailwindScssFilePath, "utf8") : "";
3546
+ const result = await postcss__default.default([tailwindcss__default.default(finalConfig), __require("autoprefixer")]).process(scssString, {
3547
+ from: void 0
3548
+ });
3549
+ return result.css;
3550
+ }
3551
+ function getSrcStyles() {
3552
+ const srcStyles = currentContext.resolvedSrcPathsScss;
3553
+ const srcStylesCompiled = buildStyles([...srcStyles]);
3554
+ return Object.values(srcStylesCompiled).join("");
3555
+ }
3556
+ async function getAllCompiledStyles(params) {
3557
+ const { rawHtml, minify: minify2 = false, nodes } = params || {};
3558
+ const srcStyles = getSrcStyles();
3559
+ const nodesStyles = getNodesStyles(nodes);
3560
+ const twCss = await generateCSSFromHTMLWithTailwind(rawHtml);
3561
+ const getSrcWrapper = (content) => `.${currentContext.packageNameSlug}{${content}}`;
3562
+ const allNodesStyles = nodesStyles.map((node) => node.scssFinal).join("\n");
3563
+ const result = getSrcWrapper(`${twCss}${srcStyles}${allNodesStyles}`);
3564
+ return minify2 ? processCSS(result, rawHtml) : result;
3565
+ }
3566
+
3567
+ // src/builder/editor/BuilderEditor.class.ts
3568
+ var BuilderEditor = class {
3569
+ params;
3570
+ constructor(params) {
3571
+ this.params = { minify: false, ...params };
3572
+ }
3573
+ async getEditorIndexContent() {
3574
+ return `
41
3575
  import type { NodeAPI } from 'node-red';
42
- ${o.listNodesFull.map(t=>`import ${t.pascalName} from '${t.editor.tsPath}';`).join(`
43
- `)}
3576
+ ${currentContext.listNodesFull.map((node) => `import ${node.pascalName} from '${node.editor.tsPath}';`).join("\n")}
44
3577
 
45
3578
  declare const RED: NodeAPI;
46
3579
 
47
- ${o.listNodesFull.map(t=>`// @ts-ignore
48
- window.RED.nodes.registerType('${t.name}', ${t.pascalName});`).join(`
49
- `)}
50
- `.trim()}async getBuiltScript(){let t=await Su__default.default.build({entryPoints:[o.cacheDirFiles.editorIndex],bundle:!0,platform:"browser",format:"iife",target:"es6",sourcemap:!1,minify:this.params.minify,minifyWhitespace:this.params.minify,minifySyntax:this.params.minify,minifyIdentifiers:this.params.minify,legalComments:"none",inject:[`${o.currentPackagedDistPath}/editor/global-solid.ts`],write:!1,loader:{".ts":"ts"}});return t.outputFiles&&t.outputFiles.length>0?t.outputFiles[0].text:""}async prepareEditorIndex(){let t=await this.getBuiltScript(),u=await dt({minify:this.params.minify,nodes:o.listNodesFull,packageNameSlug:o.packageNameSlug}),r=await ht({rawHtml:u.html,minify:this.params.minify,nodes:o.listNodesFull}),i=new z().getAllDocContent(),s=`<script type="application/javascript">${t.trim()}</script>`,n=`<style>${r}</style>`;return `
51
- ${u.allWrappedHtml}
52
- ${n}
53
- ${s}
54
- ${i}`.trim()}async getEditorTask(){return this.getEditorIndexContent().then(t=>{B(`${o.cacheDirFiles.editorIndex}`,t).then(()=>{this.prepareEditorIndex().then(async u=>{await B(`${o.pathDist}/${o.config.nodes.editor.htmlName}.html`,u);});});})}};var N=class{params;builderController;builderEditor;constructor(t){this.params={minify:!1,...t},this.builderController=new Z({minify:this.params.minify}),this.builderEditor=new X({minify:this.params.minify});}prepare(){K(o.pathLibCacheDir);let t=[ct([o.pathDist]),B(`${o.pathLibCacheDir}/config.json`,JSON.stringify(o.config,null,2))];return Promise.all(t)}async buildAll(){return await this.prepare(),Promise.all([this.builderController.getControllerTask(),this.builderEditor.getEditorTask()])}};function Bt(e){let t=new commander.Command("checks").description("[WIP] Commands to check the some stuff");t.command("nodes-structure").description("[WIP] Verify the structure of the nodes").action(()=>{console.log("In construction");}),e.addCommand(t);}function gt(e){let t=new commander.Command("info").description("Command to get information").description("Get information about the package").action(()=>{consola.consola.log(er__default.default.render(o));});e.addCommand(t);}async function ir(e){try{let t=Ft__default.default.resolve(e);return await be__default.default.readFile(t,"utf-8")}catch(t){throw new Error(`Failed to load file: ${t.message}`)}}async function or(e,t){try{let u=await ir(e);return Dr__default.default.compile(u)(t)}catch(u){throw new Error(`Failed to render template: ${u.message}`)}}var Q=class{nodePascalName;nodeDashName;newNodeDistPath;newNodeEditorDistPath;scaffoldedDistHbs;constructor(t){let{pascalName:u,dashName:r}=ft(t);this.nodePascalName=u,this.nodeDashName=r,this.newNodeDistPath=`${o.pathSrcNodesDir}/${r}`,this.newNodeEditorDistPath=`${this.newNodeDistPath}/${o.config.nodes.editor.dirName}`,this.scaffoldedDistHbs=`${o.currentPackagedDistPath}/scaffolding/create-node/hbs`;}distFolderExist(){return at__default.default.existsSync(this.newNodeDistPath)}prepareStructure(){return [{finalPath:`${this.newNodeDistPath}/${o.config.nodes.controllerName}.ts`,templatePath:`${this.scaffoldedDistHbs}/controller.ts.hbs`,templateData:{nodePascalName:this.nodePascalName,nodeName:this.nodeDashName}},{finalPath:`${this.newNodeDistPath}/types.ts`,templatePath:`${this.scaffoldedDistHbs}/types.ts.hbs`,templateData:{nodePascalName:this.nodePascalName,nodeName:this.nodeDashName}},{finalPath:`${this.newNodeDistPath}/doc.md`,templatePath:`${this.scaffoldedDistHbs}/doc.md.hbs`,templateData:{}},{finalPath:`${this.newNodeEditorDistPath}/${o.config.nodes.editor.tsName}.ts`,templatePath:`${this.scaffoldedDistHbs}/editor/index.ts.hbs`,templateData:{nodePascalName:this.nodePascalName,nodeName:this.nodeDashName}},{finalPath:`${this.newNodeEditorDistPath}/styles.scss`,templatePath:`${this.scaffoldedDistHbs}/editor/styles.scss.hbs`,templateData:{nodeName:this.nodeDashName}},{finalPath:`${this.newNodeEditorDistPath}/${o.config.nodes.editor.htmlName}.html`,templatePath:`${this.scaffoldedDistHbs}/editor/index.html.hbs`,templateData:{}}]}async renderFilesTemplates(){let t=this.prepareStructure().map(async u=>or(u.templatePath,u.templateData).then(r=>({finalPath:u.finalPath,content:r})));return await Promise.all(t)}async writeNewNode(){let t=await this.renderFilesTemplates();await Promise.all(t.map(u=>B(u.finalPath,u.content)));}};function _t(e){let t=new commander.Command("create-node").description("Create new node").action(async()=>{let u=await consola.consola.prompt("Enter node name:",{type:"text"}),r=radash.dash(u);if(!await consola.consola.prompt(`This name is OK for you '${r}'?`,{type:"confirm"})){consola.consola.info("\u{1F44C} OK. Exiting...");return}let i=new Q(r);if(i.distFolderExist()){consola.consola.error(`Node ${i.nodeDashName} already exists`),consola.consola.info(`In ${i.newNodeDistPath}`);return}K(i.newNodeEditorDistPath),await i.writeNewNode();});e.addCommand(t);}var xt,Ae;function lr(){xt=yt__default.default({exec:`node-red -u ${o.config.watcher.nodeRed.path}`,ignore:["**/*"],ext:"js,html",verbose:!0}),yt__default.default.once("start",()=>{Ae=ar__default.default.create(),Ae.init({ui:!1,proxy:{target:o.config.watcher.nodeRed.url,ws:!0},ghostMode:!1,open:!1,reloadDelay:4e3});}).on("quit",()=>{consola.consola.info("Nodemon has quit"),process.exit(0);});}function cr(){xt.restart(),Ae.reload();}function bt(e){let t=o.config.watcher.nodeRed.enabled&&o.config.watcher.nodeRed.path,u=Fr__default.default.watch(o.pathSrcDir,{}),r=new N({minify:(e==null?void 0:e.minify)??!1});u.on("ready",async()=>{consola.consola.info("Initial scan complete. Ready for changes"),await r.buildAll(),consola.consola.success("Initial Build completed"),t?lr():consola.consola.warn("Node-Red watcher is disabled. Please enable it in the config file");}).on("change",async D=>{consola.consola.info(`File ${D.replace(o.currentDir,"")} has been changed`),await r.buildAll(),consola.consola.success("Build completed"),t&&cr();});}var y=new commander.Command;y.name("node-red-dxp").description("node-red-dxp CLI").version(ut.version);y.command("build").description("Build project").action(async e=>{let t=o.listNodesFull.length,u=perf_hooks.performance.now(),r=_e(`Building ${t} node(s)...`).start();await new N({minify:!0}).buildAll();let s=perf_hooks.performance.now()-u,n=s>1e3?`${(s/1e3).toFixed(2)}s`:`${s.toFixed(2)}ms`;r.succeed(`Build completed in ${n} for ${t} nodes(s)`);});y.command("watch").description("watch project").option("--minify","Minify the output",!1).action(e=>{bt({minify:e.minify});});Bt(y);gt(y);_t(y);y.parse(C__namespace.argv);
3580
+ ${currentContext.listNodesFull.map((node) => `// @ts-ignore
3581
+ window.RED.nodes.registerType('${node.name}', ${node.pascalName});`).join("\n")}
3582
+ `.trim();
3583
+ }
3584
+ async getBuiltScript() {
3585
+ const result = await esbuild__default.default.build({
3586
+ entryPoints: [currentContext.cacheDirFiles.editorIndex],
3587
+ bundle: true,
3588
+ platform: "browser",
3589
+ format: "iife",
3590
+ target: "es6",
3591
+ sourcemap: false,
3592
+ minify: this.params.minify,
3593
+ minifyWhitespace: this.params.minify,
3594
+ minifySyntax: this.params.minify,
3595
+ minifyIdentifiers: this.params.minify,
3596
+ legalComments: "none",
3597
+ inject: [`${currentContext.currentPackagedDistPath}/editor/global-solid.ts`],
3598
+ write: false,
3599
+ loader: { ".ts": "ts" }
3600
+ });
3601
+ if (result.outputFiles && result.outputFiles.length > 0) {
3602
+ return result.outputFiles[0].text;
3603
+ }
3604
+ return "";
3605
+ }
3606
+ async prepareEditorIndex() {
3607
+ const js = await this.getBuiltScript();
3608
+ const html = await getNodesHtml({
3609
+ minify: this.params.minify,
3610
+ nodes: currentContext.listNodesFull,
3611
+ packageNameSlug: currentContext.packageNameSlug
3612
+ });
3613
+ const css = await getAllCompiledStyles({
3614
+ rawHtml: html.html,
3615
+ minify: this.params.minify,
3616
+ nodes: currentContext.listNodesFull
3617
+ });
3618
+ const builderDoc = new BuildDoc();
3619
+ const docs = builderDoc.getAllDocContent();
3620
+ const wrappedJs = `<script type="application/javascript">${js.trim()}</script>`;
3621
+ const wrappedCss = `<style>${css}</style>`;
3622
+ return `
3623
+ ${html.allWrappedHtml}
3624
+ ${wrappedCss}
3625
+ ${wrappedJs}
3626
+ ${docs}`.trim();
3627
+ }
3628
+ async getEditorTask() {
3629
+ return this.getEditorIndexContent().then((content) => {
3630
+ writeFile(`${currentContext.cacheDirFiles.editorIndex}`, content).then(() => {
3631
+ this.prepareEditorIndex().then(async (contentFinalIndexHtml) => {
3632
+ await writeFile(
3633
+ `${currentContext.pathDist}/${currentContext.config.nodes.editor.htmlName}.html`,
3634
+ contentFinalIndexHtml
3635
+ );
3636
+ });
3637
+ });
3638
+ });
3639
+ }
3640
+ };
3641
+ function resolveLangCode(path4) {
3642
+ var _a;
3643
+ return (_a = path4.split("/").pop()) == null ? void 0 : _a.split(".").shift();
3644
+ }
3645
+ async function readJsonFile(path4) {
3646
+ return fsPromise__default.default.readFile(path4, "utf8");
3647
+ }
3648
+ var LocalesBuilder = class {
3649
+ async parseJsonFile(path4) {
3650
+ const fileContent = await readJsonFile(path4);
3651
+ return { fileContent, fileContentParsed: JSON.parse(fileContent) };
3652
+ }
3653
+ async resolveGlobalLocalesPath(path4) {
3654
+ const { fileContent, fileContentParsed } = await this.parseJsonFile(path4);
3655
+ return {
3656
+ folderName: resolveLangCode(path4),
3657
+ fileContent,
3658
+ fileContentParsed,
3659
+ filePath: path4,
3660
+ isGlobal: true,
3661
+ nodeName: null
3662
+ };
3663
+ }
3664
+ async loadNodesLocales(listNodesFull) {
3665
+ const allTasks = listNodesFull.flatMap(
3666
+ (node) => node.resolvedLocalesPaths.map(async (path4) => {
3667
+ const { fileContent, fileContentParsed } = await this.parseJsonFile(path4);
3668
+ return {
3669
+ folderName: resolveLangCode(path4),
3670
+ filePath: path4,
3671
+ fileContent,
3672
+ fileContentParsed,
3673
+ nodeName: node.name,
3674
+ isGlobal: false
3675
+ };
3676
+ })
3677
+ );
3678
+ return Promise.all(allTasks);
3679
+ }
3680
+ async getAll() {
3681
+ const [srcLocales, nodesLocales] = await Promise.all([
3682
+ Promise.all(currentContext.resolvedSrcLocalesPaths.map((path4) => this.resolveGlobalLocalesPath(path4))),
3683
+ this.loadNodesLocales(currentContext.listNodesFull)
3684
+ ]);
3685
+ const totalLocales = [...srcLocales, ...nodesLocales];
3686
+ const uniqueCodes = Array.from(new Set(totalLocales.map((locale) => locale.folderName)));
3687
+ for (const code of uniqueCodes) {
3688
+ for (const nodeName of currentContext.listNodesFullNames) {
3689
+ if (!nodesLocales.some((locale) => locale.folderName === code && locale.nodeName === nodeName)) {
3690
+ totalLocales.push({
3691
+ folderName: code,
3692
+ filePath: null,
3693
+ fileContent: "",
3694
+ fileContentParsed: null,
3695
+ isGlobal: false,
3696
+ nodeName
3697
+ });
3698
+ }
3699
+ }
3700
+ }
3701
+ const fishBySource = radash.group(totalLocales, (f) => f.folderName);
3702
+ const updatedLocales = [];
3703
+ for (const [folderName, items] of Object.entries(fishBySource)) {
3704
+ const globalItem = items.find((item) => item.isGlobal);
3705
+ const globalContent = (globalItem == null ? void 0 : globalItem.fileContentParsed) ?? {};
3706
+ for (const item of items) {
3707
+ if (item.isGlobal) continue;
3708
+ if (radash.isEmpty(globalContent) && radash.isEmpty(item.fileContentParsed)) {
3709
+ continue;
3710
+ }
3711
+ const combinedContent = {
3712
+ ...globalContent,
3713
+ ...item.fileContentParsed
3714
+ };
3715
+ const wrappedContent = {
3716
+ [item.nodeName]: combinedContent || {}
3717
+ };
3718
+ updatedLocales.push({
3719
+ folderName,
3720
+ fileNodeContent: wrappedContent
3721
+ });
3722
+ }
3723
+ }
3724
+ const fishBySource2 = radash.group(updatedLocales, (f) => f.folderName);
3725
+ const result = [];
3726
+ for (const [folderName, items] of Object.entries(fishBySource2)) {
3727
+ const allContent = items.map((item) => {
3728
+ return JSON.stringify(item.fileNodeContent).trim().slice(1, -1);
3729
+ });
3730
+ const allContentString = `{${allContent.join(",")}}`;
3731
+ const res = {
3732
+ folderPath: `${currentContext.pathDist}/locales/${folderName}`,
3733
+ finalPath: `${currentContext.pathDist}/locales/${folderName}/index.json`,
3734
+ allContent: allContentString
3735
+ };
3736
+ result.push(res);
3737
+ }
3738
+ return result;
3739
+ }
3740
+ async exportAll() {
3741
+ const locales = await this.getAll();
3742
+ await Promise.all(locales.map((locale) => createFolderIfNotExists(locale.folderPath)));
3743
+ return Promise.all(locales.map((locale) => writeFile(locale.finalPath, locale.allContent)));
3744
+ }
3745
+ };
3746
+
3747
+ // src/builder/Builder.class.ts
3748
+ var Builder = class {
3749
+ params;
3750
+ builderController;
3751
+ builderEditor;
3752
+ localesBuilder;
3753
+ constructor(params) {
3754
+ this.params = { minify: false, ...params };
3755
+ this.builderController = new BuilderController({
3756
+ minify: this.params.minify
3757
+ });
3758
+ this.builderEditor = new BuilderEditor({
3759
+ minify: this.params.minify
3760
+ });
3761
+ this.localesBuilder = new LocalesBuilder();
3762
+ }
3763
+ prepare() {
3764
+ createFolderIfNotExists(currentContext.pathLibCacheDir);
3765
+ const runs = [
3766
+ cleanPaths([currentContext.pathDist]),
3767
+ writeFile(`${currentContext.pathLibCacheDir}/config.json`, JSON.stringify(currentContext.config, null, 2))
3768
+ ];
3769
+ return Promise.all(runs);
3770
+ }
3771
+ async buildAll() {
3772
+ await this.prepare();
3773
+ return Promise.all([
3774
+ this.builderController.getControllerTask(),
3775
+ this.builderEditor.getEditorTask(),
3776
+ this.localesBuilder.exportAll()
3777
+ ]);
3778
+ }
3779
+ };
3780
+ function registerChecksCommands(parentCommand) {
3781
+ const checks = new commander.Command("checks").description("[WIP] Commands to check the some stuff");
3782
+ checks.command("nodes-structure").description("[WIP] Verify the structure of the nodes").action(() => {
3783
+ console.log("In construction");
3784
+ });
3785
+ parentCommand.addCommand(checks);
3786
+ }
3787
+ function registerInfoCommands(parentCommand) {
3788
+ const info = new commander.Command("info").description("Command to get information").description("Get information about the package").action(() => {
3789
+ consola.consola.log(prettyJson__default.default.render(currentContext));
3790
+ });
3791
+ parentCommand.addCommand(info);
3792
+ }
3793
+ async function loadTemplate(filePath) {
3794
+ try {
3795
+ const absolutePath = path2__default.default.resolve(filePath);
3796
+ return await fsPromise__default.default.readFile(absolutePath, "utf-8");
3797
+ } catch (error) {
3798
+ throw new Error(`Failed to load file: ${error.message}`);
3799
+ }
3800
+ }
3801
+ async function renderTemplate(templateFilePath, data) {
3802
+ try {
3803
+ const templateSource = await loadTemplate(templateFilePath);
3804
+ const template = Handlebars__default.default.compile(templateSource);
3805
+ return template(data);
3806
+ } catch (error) {
3807
+ throw new Error(`Failed to render template: ${error.message}`);
3808
+ }
3809
+ }
3810
+ var CreateNodeScaffolding = class {
3811
+ nodePascalName;
3812
+ nodeDashName;
3813
+ newNodeDistPath;
3814
+ newNodeEditorDistPath;
3815
+ scaffoldedDistHbs;
3816
+ constructor(innerNodeName) {
3817
+ const { pascalName, dashName } = computeNodeName(innerNodeName);
3818
+ this.nodePascalName = pascalName;
3819
+ this.nodeDashName = dashName;
3820
+ this.newNodeDistPath = `${currentContext.pathSrcNodesDir}/${dashName}`;
3821
+ this.newNodeEditorDistPath = `${this.newNodeDistPath}/${currentContext.config.nodes.editor.dirName}`;
3822
+ this.scaffoldedDistHbs = `${currentContext.currentPackagedDistPath}/scaffolding/create-node/hbs`;
3823
+ }
3824
+ distFolderExist() {
3825
+ return fs__default.default.existsSync(this.newNodeDistPath);
3826
+ }
3827
+ prepareStructure() {
3828
+ return [
3829
+ {
3830
+ finalPath: `${this.newNodeDistPath}/${currentContext.config.nodes.controllerName}.ts`,
3831
+ templatePath: `${this.scaffoldedDistHbs}/controller.ts.hbs`,
3832
+ templateData: {
3833
+ nodePascalName: this.nodePascalName,
3834
+ nodeName: this.nodeDashName
3835
+ }
3836
+ },
3837
+ {
3838
+ finalPath: `${this.newNodeDistPath}/types.ts`,
3839
+ templatePath: `${this.scaffoldedDistHbs}/types.ts.hbs`,
3840
+ templateData: {
3841
+ nodePascalName: this.nodePascalName,
3842
+ nodeName: this.nodeDashName
3843
+ }
3844
+ },
3845
+ {
3846
+ finalPath: `${this.newNodeDistPath}/doc.md`,
3847
+ templatePath: `${this.scaffoldedDistHbs}/doc.md.hbs`,
3848
+ templateData: {}
3849
+ },
3850
+ {
3851
+ finalPath: `${this.newNodeEditorDistPath}/${currentContext.config.nodes.editor.tsName}.ts`,
3852
+ templatePath: `${this.scaffoldedDistHbs}/editor/index.ts.hbs`,
3853
+ templateData: {
3854
+ nodePascalName: this.nodePascalName,
3855
+ nodeName: this.nodeDashName
3856
+ }
3857
+ },
3858
+ {
3859
+ finalPath: `${this.newNodeEditorDistPath}/styles.scss`,
3860
+ templatePath: `${this.scaffoldedDistHbs}/editor/styles.scss.hbs`,
3861
+ templateData: {
3862
+ nodeName: this.nodeDashName
3863
+ }
3864
+ },
3865
+ {
3866
+ finalPath: `${this.newNodeEditorDistPath}/${currentContext.config.nodes.editor.htmlName}.html`,
3867
+ templatePath: `${this.scaffoldedDistHbs}/editor/index.html.hbs`,
3868
+ templateData: {}
3869
+ }
3870
+ ];
3871
+ }
3872
+ async renderFilesTemplates() {
3873
+ const prepared = this.prepareStructure().map(async (item) => {
3874
+ return renderTemplate(item.templatePath, item.templateData).then((content) => {
3875
+ return {
3876
+ finalPath: item.finalPath,
3877
+ content
3878
+ };
3879
+ });
3880
+ });
3881
+ return await Promise.all(prepared);
3882
+ }
3883
+ async writeNewNode() {
3884
+ const files = await this.renderFilesTemplates();
3885
+ await Promise.all(files.map((file) => writeFile(file.finalPath, file.content)));
3886
+ }
3887
+ };
3888
+
3889
+ // src/cli/commands/scaffolding/index.ts
3890
+ function registerScaffoldingCommands(parentCommand) {
3891
+ const scaffolding = new commander.Command("create-node").description("Create new node").action(async () => {
3892
+ const userChoice = await consola.consola.prompt("Enter node name:", {
3893
+ type: "text"
3894
+ });
3895
+ const nodeName = radash.dash(userChoice);
3896
+ const userIsOk = await consola.consola.prompt(`This name is OK for you '${nodeName}'?`, {
3897
+ type: "confirm"
3898
+ });
3899
+ if (!userIsOk) {
3900
+ consola.consola.info("\u{1F44C} OK. Exiting...");
3901
+ return;
3902
+ }
3903
+ const createNewNodeInstance = new CreateNodeScaffolding(nodeName);
3904
+ if (createNewNodeInstance.distFolderExist()) {
3905
+ consola.consola.error(`Node ${createNewNodeInstance.nodeDashName} already exists`);
3906
+ consola.consola.info(`In ${createNewNodeInstance.newNodeDistPath}`);
3907
+ return;
3908
+ }
3909
+ createFolderIfNotExists(createNewNodeInstance.newNodeEditorDistPath);
3910
+ await createNewNodeInstance.writeNewNode();
3911
+ });
3912
+ parentCommand.addCommand(scaffolding);
3913
+ }
3914
+ var nodemonInstance;
3915
+ var browserSyncInstance;
3916
+ function runNodemonAndBrowserSync() {
3917
+ nodemonInstance = nodemon__default.default({
3918
+ exec: `node-red -u ${currentContext.config.watcher.nodeRed.path}`,
3919
+ ignore: ["**/*"],
3920
+ ext: "js,html",
3921
+ verbose: true
3922
+ });
3923
+ nodemon__default.default.once("start", () => {
3924
+ browserSyncInstance = browserSync__default.default.create();
3925
+ browserSyncInstance.init({
3926
+ ui: false,
3927
+ proxy: {
3928
+ target: currentContext.config.watcher.nodeRed.url,
3929
+ ws: true
3930
+ },
3931
+ ghostMode: false,
3932
+ open: false,
3933
+ reloadDelay: 4e3
3934
+ });
3935
+ }).on("quit", () => {
3936
+ consola.consola.info("Nodemon has quit");
3937
+ process.exit(0);
3938
+ });
3939
+ }
3940
+ function restartNodemonAndBrowserSync() {
3941
+ nodemonInstance.restart();
3942
+ browserSyncInstance.reload();
3943
+ }
3944
+ function runWatcher(params) {
3945
+ const hasNodeRedWatcher = currentContext.config.watcher.nodeRed.enabled && currentContext.config.watcher.nodeRed.path;
3946
+ const watcher = chokidar__default.default.watch(currentContext.pathSrcDir, {});
3947
+ const builder = new Builder({ minify: (params == null ? void 0 : params.minify) ?? false });
3948
+ watcher.on("ready", async () => {
3949
+ consola.consola.info("Initial scan complete. Ready for changes");
3950
+ await builder.buildAll();
3951
+ consola.consola.success("Initial Build completed");
3952
+ if (hasNodeRedWatcher) {
3953
+ runNodemonAndBrowserSync();
3954
+ } else {
3955
+ consola.consola.warn("Node-Red watcher is disabled. Please enable it in the config file");
3956
+ }
3957
+ }).on("change", async (path4) => {
3958
+ consola.consola.info(`File ${path4.replace(currentContext.currentDir, "")} has been changed`);
3959
+ await builder.buildAll();
3960
+ consola.consola.success("Build completed");
3961
+ if (hasNodeRedWatcher) {
3962
+ restartNodemonAndBrowserSync();
3963
+ }
3964
+ });
3965
+ }
3966
+
3967
+ // src/cli/index.ts
3968
+ var program = new commander.Command();
3969
+ program.name("node-red-dxp").description("node-red-dxp CLI").version(package_default.version);
3970
+ program.command("build").description("Build project").action(async (options) => {
3971
+ const nodesCount = currentContext.listNodesFull.length;
3972
+ const start = perf_hooks.performance.now();
3973
+ const spinner = ora(`Building ${nodesCount} node(s)...`).start();
3974
+ const builder = new Builder({
3975
+ minify: true
3976
+ });
3977
+ await builder.buildAll();
3978
+ const end = perf_hooks.performance.now();
3979
+ const elapsed = end - start;
3980
+ const elapsedSeconds = elapsed > 1e3 ? `${(elapsed / 1e3).toFixed(2)}s` : `${elapsed.toFixed(2)}ms`;
3981
+ spinner.succeed(`Build completed in ${elapsedSeconds} for ${nodesCount} nodes(s)`);
3982
+ });
3983
+ program.command("watch").description("watch project").option("--minify", "Minify the output", false).action((options) => {
3984
+ runWatcher({
3985
+ minify: options.minify
3986
+ });
3987
+ });
3988
+ registerChecksCommands(program);
3989
+ registerInfoCommands(program);
3990
+ registerScaffoldingCommands(program);
3991
+ program.parse(process6__namespace.argv);
3992
+ //# sourceMappingURL=index.cjs.map
3993
+ //# sourceMappingURL=index.cjs.map