@wrnrlr/prelude 0.0.1 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/publish.yml +46 -5
- package/deno.json +18 -9
- package/package.json +4 -6
- package/readme.md +163 -41
- package/src/constants.ts +2 -1
- package/src/{controlflow.js → controlflow.ts} +63 -50
- package/src/hyperscript.ts +7 -6
- package/src/mod.ts +19 -17
- package/src/reactive.ts +42 -14
- package/src/resource.js +184 -0
- package/src/router.js +65 -0
- package/src/runtime.ts +9 -8
- package/test/hyperscript.js +2 -2
- package/test/reactive.js +12 -4
- package/www/assets/css/presets.css +504 -0
- package/www/assets/css/style.css +90 -0
- package/www/demo.html +15 -0
- package/www/index.html +211 -0
- package/www/playground.html +183 -0
- package/www/public/example/admin.html +88 -0
- package/{example → www/public/example}/counter.html +1 -1
- package/{example → www/public/example}/greeting.html +1 -1
- package/{example → www/public/example}/show.html +1 -1
- package/{example → www/public/example}/todo.html +1 -1
- package/www/public/fonts/fab.ttf +0 -0
- package/www/public/fonts/fab.woff2 +0 -0
- package/www/public/fonts/far.ttf +0 -0
- package/www/public/fonts/far.woff2 +0 -0
- package/www/public/fonts/fas.ttf +0 -0
- package/www/public/fonts/fas.woff2 +0 -0
- package/www/public/logo.svg +16 -0
- package/www/typedoc.json +13 -0
- package/www/vite.config.js +106 -0
- package/example/paint.html +0 -22
- package/index.html +0 -230
- package/presets.css +0 -284
- package/public/logo.svg +0 -5
- package/test/runtime.js +0 -7
- package/typedoc.jsonc +0 -31
- /package/{public → www/public}/banner.svg +0 -0
| @@ -0,0 +1,504 @@ | |
| 1 | 
            +
            *, ::before, ::after {box-sizing: border-box; margin: 0; min-width: 0}
         | 
| 2 | 
            +
            html {
         | 
| 3 | 
            +
              height: 100%;
         | 
| 4 | 
            +
              hanging-punctuation: first last;
         | 
| 5 | 
            +
              font-family:system-ui,'Segoe UI',Roboto,Helvetica,Arial,sans-serif,'Apple Color Emoji','Segoe UI Emoji';
         | 
| 6 | 
            +
              line-height: 1.15; -webkit-text-size-adjust: 100%;
         | 
| 7 | 
            +
              -moz-tab-size: 4; tab-size: 4;
         | 
| 8 | 
            +
              font-size: 18px;
         | 
| 9 | 
            +
              color: black;
         | 
| 10 | 
            +
              background-color: white;
         | 
| 11 | 
            +
            }
         | 
| 12 | 
            +
            /* body {height: 100%} */
         | 
| 13 | 
            +
            hr {height: 0;color: inherit;}
         | 
| 14 | 
            +
            abbr[title] {text-decoration: underline dotted}
         | 
| 15 | 
            +
            b,strong,i,em {font-weight: normal; text-decoration: none; font-style: normal;}
         | 
| 16 | 
            +
            code,kbd,samp,pre {font-family:ui-monospace,SFMono-Regular,Consolas,'Liberation Mono',Menlo,monospace;font-size: 1em;}
         | 
| 17 | 
            +
            small {font-size: 80%;}
         | 
| 18 | 
            +
            sub,sup {font-size: 75%;line-height: 0;position: relative;vertical-align: baseline;}
         | 
| 19 | 
            +
            sub {bottom: -0.25em}
         | 
| 20 | 
            +
            sup {top: -0.5em}
         | 
| 21 | 
            +
            table {border-collapse: collapse; text-indent: 0; border-color: inherit;}
         | 
| 22 | 
            +
            button,input,optgroup,select,textarea {font-family:inherit;font-size:100%;line-height:1.15;}
         | 
| 23 | 
            +
            button, select {text-transform: none}
         | 
| 24 | 
            +
            button, [type='button'], [type='reset'], [type='submit'] {-webkit-appearance: button}
         | 
| 25 | 
            +
            ::-moz-focus-inner {border-style: none;padding: 0;}
         | 
| 26 | 
            +
            :-moz-focusring {outline: 1px dotted ButtonText;}
         | 
| 27 | 
            +
            :-moz-ui-invalid {box-shadow: none;}
         | 
| 28 | 
            +
            legend {padding: 0}
         | 
| 29 | 
            +
            progress {vertical-align: baseline}
         | 
| 30 | 
            +
            ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {height: auto;margin: 0}
         | 
| 31 | 
            +
            [type='search'] {-webkit-appearance: textfield; outline-offset: -2px;}
         | 
| 32 | 
            +
            ::-webkit-search-decoration {-webkit-appearance: none;}
         | 
| 33 | 
            +
            ::-webkit-file-upload-button {-webkit-appearance: button;font: inherit;}
         | 
| 34 | 
            +
             | 
| 35 | 
            +
            h1,h2,h3,h4,h5,h6 {text-wrap:balance; margin: 0; font-size: 1rem; line-height: 1.5rem; font-weight: normal;}
         | 
| 36 | 
            +
            p {max-width:62ch;text-wrap:pretty}
         | 
| 37 | 
            +
            dialog {padding:0;border-width:0}
         | 
| 38 | 
            +
            button,input {padding:0;border-width:0;background-color:transparent}
         | 
| 39 | 
            +
            input:focus,button:focus {outline:none}
         | 
| 40 | 
            +
            summary {display: list-item;}
         | 
| 41 | 
            +
            a {text-decoration: none; color: inherit;}
         | 
| 42 | 
            +
            /* a:visited{color;} */
         | 
| 43 | 
            +
            ul {padding:0; list-style:none; text-indent:0; list-style-type:none}
         | 
| 44 | 
            +
            iframe {border: none}
         | 
| 45 | 
            +
             | 
| 46 | 
            +
            :root {
         | 
| 47 | 
            +
              --slate-50: #f8fafc;
         | 
| 48 | 
            +
              --slate-100: #f1f5f9;
         | 
| 49 | 
            +
              --slate-200: #e2e8f0;
         | 
| 50 | 
            +
              --slate-300: #cbd5e1;
         | 
| 51 | 
            +
              --slate-400: #94a3b8;
         | 
| 52 | 
            +
              --slate-500: #64748b;
         | 
| 53 | 
            +
              --slate-600: #475569;
         | 
| 54 | 
            +
              --slate-700: #334155;
         | 
| 55 | 
            +
              --slate-800: #1e293b;
         | 
| 56 | 
            +
              --slate-900: #0f172a;
         | 
| 57 | 
            +
              --slate-950: #020617;
         | 
| 58 | 
            +
             | 
| 59 | 
            +
              --gray-50: #f9fafb;
         | 
| 60 | 
            +
              --gray-100: #f3f4f6;
         | 
| 61 | 
            +
              --gray-200: #e5e7eb;
         | 
| 62 | 
            +
              --gray-300: #d1d5db;
         | 
| 63 | 
            +
              --gray-400: #9ca3af;
         | 
| 64 | 
            +
              --gray-500: #6b7280;
         | 
| 65 | 
            +
              --gray-600: #4b5563;
         | 
| 66 | 
            +
              --gray-700: #374151;
         | 
| 67 | 
            +
              --gray-800: #1f2937;
         | 
| 68 | 
            +
              --gray-900: #111827;
         | 
| 69 | 
            +
              --gray-950: #030712;
         | 
| 70 | 
            +
             | 
| 71 | 
            +
              --zinc-50: #fafafa;
         | 
| 72 | 
            +
              --zinc-100: #f4f4f5;
         | 
| 73 | 
            +
              --zinc-200: #e4e4e7;
         | 
| 74 | 
            +
              --zinc-300: #d4d4d8;
         | 
| 75 | 
            +
              --zinc-400: #a1a1aa;
         | 
| 76 | 
            +
              --zinc-500: #71717a;
         | 
| 77 | 
            +
              --zinc-600: #52525b;
         | 
| 78 | 
            +
              --zinc-700: #3f3f46;
         | 
| 79 | 
            +
              --zinc-800: #27272a;
         | 
| 80 | 
            +
              --zinc-900: #18181b;
         | 
| 81 | 
            +
              --zinc-950: #09090b;
         | 
| 82 | 
            +
             | 
| 83 | 
            +
              --neutral-50: #fafafa;
         | 
| 84 | 
            +
              --neutral-100: #f5f5f5;
         | 
| 85 | 
            +
              --neutral-200: #e5e5e5;
         | 
| 86 | 
            +
              --neutral-300: #d4d4d4;
         | 
| 87 | 
            +
              --neutral-400: #a3a3a3;
         | 
| 88 | 
            +
              --neutral-500: #737373;
         | 
| 89 | 
            +
              --neutral-600: #525252;
         | 
| 90 | 
            +
              --neutral-700: #404040;
         | 
| 91 | 
            +
              --neutral-800: #262626;
         | 
| 92 | 
            +
              --neutral-900: #171717;
         | 
| 93 | 
            +
              --neutral-950: #0a0a0a;
         | 
| 94 | 
            +
             | 
| 95 | 
            +
              --stone-50: #fafaf9;
         | 
| 96 | 
            +
              --stone-100: #f5f5f4;
         | 
| 97 | 
            +
              --stone-200: #e7e5e4;
         | 
| 98 | 
            +
              --stone-300: #d6d3d1;
         | 
| 99 | 
            +
              --stone-400: #a8a29e;
         | 
| 100 | 
            +
              --stone-500: #78716c;
         | 
| 101 | 
            +
              --stone-600: #57534e;
         | 
| 102 | 
            +
              --stone-700: #44403c;
         | 
| 103 | 
            +
              --stone-800: #292524;
         | 
| 104 | 
            +
              --stone-900: #1c1917;
         | 
| 105 | 
            +
              --stone-950: #0c0a09;
         | 
| 106 | 
            +
             | 
| 107 | 
            +
              --red-50: #fef2f2;
         | 
| 108 | 
            +
              --red-100: #fee2e2;
         | 
| 109 | 
            +
              --red-200: #fecaca;
         | 
| 110 | 
            +
              --red-300: #fca5a5;
         | 
| 111 | 
            +
              --red-400: #f87171;
         | 
| 112 | 
            +
              --red-500: #ef4444;
         | 
| 113 | 
            +
              --red-600: #dc2626;
         | 
| 114 | 
            +
              --red-700: #b91c1c;
         | 
| 115 | 
            +
              --red-800: #991b1b;
         | 
| 116 | 
            +
              --red-900: #7f1d1d;
         | 
| 117 | 
            +
              --red-950: #450a0a;
         | 
| 118 | 
            +
             | 
| 119 | 
            +
              --orange-50: #fff7ed;
         | 
| 120 | 
            +
              --orange-100: #ffedd5;
         | 
| 121 | 
            +
              --orange-200: #fed7aa;
         | 
| 122 | 
            +
              --orange-300: #fdba74;
         | 
| 123 | 
            +
              --orange-400: #fb923c;
         | 
| 124 | 
            +
              --orange-500: #f97316;
         | 
| 125 | 
            +
              --orange-600: #ea580c;
         | 
| 126 | 
            +
              --orange-700: #c2410c;
         | 
| 127 | 
            +
              --orange-800: #9a3412;
         | 
| 128 | 
            +
              --orange-900: #7c2d12;
         | 
| 129 | 
            +
              --orange-950: #431407;
         | 
| 130 | 
            +
             | 
| 131 | 
            +
              --yellow-50: #fefce8;
         | 
| 132 | 
            +
              --yellow-100: #fef9c3;
         | 
| 133 | 
            +
              --yellow-200: #fef08a;
         | 
| 134 | 
            +
              --yellow-300: #fde047;
         | 
| 135 | 
            +
              --yellow-400: #facc15;
         | 
| 136 | 
            +
              --yellow-500: #eab308;
         | 
| 137 | 
            +
              --yellow-600: #ca8a04;
         | 
| 138 | 
            +
              --yellow-700: #a16207;
         | 
| 139 | 
            +
              --yellow-800: #854d0e;
         | 
| 140 | 
            +
              --yellow-900: #713f12;
         | 
| 141 | 
            +
              --yellow-950: #422006;
         | 
| 142 | 
            +
             | 
| 143 | 
            +
              --lime-50: #f7fee7;
         | 
| 144 | 
            +
              --lime-100: #ecfccb;
         | 
| 145 | 
            +
              --lime-200: #d9f99d;
         | 
| 146 | 
            +
              --lime-300: #bef264;
         | 
| 147 | 
            +
              --lime-400: #a3e635;
         | 
| 148 | 
            +
              --lime-500: #84cc16;
         | 
| 149 | 
            +
              --lime-600: #65a30d;
         | 
| 150 | 
            +
              --lime-700: #4d7c0f;
         | 
| 151 | 
            +
              --lime-800: #3f6212;
         | 
| 152 | 
            +
              --lime-900: #365314;
         | 
| 153 | 
            +
              --lime-950: #1a2e05;
         | 
| 154 | 
            +
             | 
| 155 | 
            +
              --green-50: #f0fdf4;
         | 
| 156 | 
            +
              --green-100: #dcfce7;
         | 
| 157 | 
            +
              --green-200: #bbf7d0;
         | 
| 158 | 
            +
              --green-300: #86efac;
         | 
| 159 | 
            +
              --green-400: #4ade80;
         | 
| 160 | 
            +
              --green-500: #22c55e;
         | 
| 161 | 
            +
              --green-600: #16a34a;
         | 
| 162 | 
            +
              --green-700: #15803d;
         | 
| 163 | 
            +
              --green-800: #166534;
         | 
| 164 | 
            +
              --green-900: #14532d;
         | 
| 165 | 
            +
              --green-950: #052e16;
         | 
| 166 | 
            +
             | 
| 167 | 
            +
              --emrald-50: #ecfdf5;
         | 
| 168 | 
            +
              --emrald-100: #d1fae5;
         | 
| 169 | 
            +
              --emrald-200: #a7f3d0;
         | 
| 170 | 
            +
              --emrald-300: #6ee7b7;
         | 
| 171 | 
            +
              --emrald-400: #34d399;
         | 
| 172 | 
            +
              --emrald-500: #10b981;
         | 
| 173 | 
            +
              --emrald-600: #059669;
         | 
| 174 | 
            +
              --emrald-700: #047857;
         | 
| 175 | 
            +
              --emrald-800: #065f46;
         | 
| 176 | 
            +
              --emrald-900: #064e3b;
         | 
| 177 | 
            +
              --emrald-950: #022c22;
         | 
| 178 | 
            +
             | 
| 179 | 
            +
              --teal-50: #f0fdfa;
         | 
| 180 | 
            +
              --teal-100: #ccfbf1;
         | 
| 181 | 
            +
              --teal-200: #99f6e4;
         | 
| 182 | 
            +
              --teal-300: #5eead4;
         | 
| 183 | 
            +
              --teal-400: #2dd4bf;
         | 
| 184 | 
            +
              --teal-500: #14b8a6;
         | 
| 185 | 
            +
              --teal-600: #0d9488;
         | 
| 186 | 
            +
              --teal-700: #0f766e;
         | 
| 187 | 
            +
              --teal-800: #115e59;
         | 
| 188 | 
            +
              --teal-900: #134e4a;
         | 
| 189 | 
            +
              --teal-950: #042f2e;
         | 
| 190 | 
            +
             | 
| 191 | 
            +
              --cyan-50: #ecfeff;
         | 
| 192 | 
            +
              --cyan-100: #cffafe;
         | 
| 193 | 
            +
              --cyan-200: #a5f3fc;
         | 
| 194 | 
            +
              --cyan-300: #67e8f9;
         | 
| 195 | 
            +
              --cyan-400: #22d3ee;
         | 
| 196 | 
            +
              --cyan-500: #06b6d4;
         | 
| 197 | 
            +
              --cyan-600: #0891b2;
         | 
| 198 | 
            +
              --cyan-700: #0e7490;
         | 
| 199 | 
            +
              --cyan-800: #155e75;
         | 
| 200 | 
            +
              --cyan-900: #164e63;
         | 
| 201 | 
            +
              --cyan-950: #083344;
         | 
| 202 | 
            +
             | 
| 203 | 
            +
              --sky-50: #f0f9ff;
         | 
| 204 | 
            +
              --sky-100: #e0f2fe;
         | 
| 205 | 
            +
              --sky-200: #bae6fd;
         | 
| 206 | 
            +
              --sky-300: #7dd3fc;
         | 
| 207 | 
            +
              --sky-400: #38bdf8;
         | 
| 208 | 
            +
              --sky-500: #0ea5e9;
         | 
| 209 | 
            +
              --sky-600: #0284c7;
         | 
| 210 | 
            +
              --sky-700: #0369a1;
         | 
| 211 | 
            +
              --sky-800: #075985;
         | 
| 212 | 
            +
              --sky-900: #0c4a6e;
         | 
| 213 | 
            +
              --sky-950: #082f49;
         | 
| 214 | 
            +
             | 
| 215 | 
            +
              --blue-50: #eff6ff;
         | 
| 216 | 
            +
              --blue-100: #dbeafe;
         | 
| 217 | 
            +
              --blue-200: #bfdbfe;
         | 
| 218 | 
            +
              --blue-300: #93c5fd;
         | 
| 219 | 
            +
              --blue-400: #60a5fa;
         | 
| 220 | 
            +
              --blue-500: #3b82f6;
         | 
| 221 | 
            +
              --blue-600: #2563eb;
         | 
| 222 | 
            +
              --blue-700: #1d4ed8;
         | 
| 223 | 
            +
              --blue-800: #1e40af;
         | 
| 224 | 
            +
              --blue-900: #1e3a8a;
         | 
| 225 | 
            +
              --blue-950: #172554;
         | 
| 226 | 
            +
             | 
| 227 | 
            +
              --indigo-50: #eef2ff;
         | 
| 228 | 
            +
              --indigo-100: #e0e7ff;
         | 
| 229 | 
            +
              --indigo-200: #c7d2fe;
         | 
| 230 | 
            +
              --indigo-300: #a5b4fc;
         | 
| 231 | 
            +
              --indigo-400: #818cf8;
         | 
| 232 | 
            +
              --indigo-500: #6366f1;
         | 
| 233 | 
            +
              --indigo-600: #4f46e5;
         | 
| 234 | 
            +
              --indigo-700: #4338ca;
         | 
| 235 | 
            +
              --indigo-800: #3730a3;
         | 
| 236 | 
            +
              --indigo-900: #312e81;
         | 
| 237 | 
            +
              --indigo-950: #1e1b4b;
         | 
| 238 | 
            +
             | 
| 239 | 
            +
              --violet-50: #f5f3ff;
         | 
| 240 | 
            +
              --violet-100: #ede9fe;
         | 
| 241 | 
            +
              --violet-200: #ddd6fe;
         | 
| 242 | 
            +
              --violet-300: #c4b5fd;
         | 
| 243 | 
            +
              --violet-400: #a78bfa;
         | 
| 244 | 
            +
              --violet-500: #8b5cf6;
         | 
| 245 | 
            +
              --violet-600: #7c3aed;
         | 
| 246 | 
            +
              --violet-700: #6d28d9;
         | 
| 247 | 
            +
              --violet-800: #5b21b6;
         | 
| 248 | 
            +
              --violet-900: #4c1d95;
         | 
| 249 | 
            +
              --violet-950: #2e1065;
         | 
| 250 | 
            +
             | 
| 251 | 
            +
              --purple-50: #faf5ff;
         | 
| 252 | 
            +
              --purple-100: #f3e8ff;
         | 
| 253 | 
            +
              --purple-200: #e9d5ff;
         | 
| 254 | 
            +
              --purple-300: #d8b4fe;
         | 
| 255 | 
            +
              --purple-400: #c084fc;
         | 
| 256 | 
            +
              --purple-500: #a855f7;
         | 
| 257 | 
            +
              --purple-600: #9333ea;
         | 
| 258 | 
            +
              --purple-700: #7e22ce;
         | 
| 259 | 
            +
              --purple-800: #6b21a8;
         | 
| 260 | 
            +
              --purple-900: #581c87;
         | 
| 261 | 
            +
              --purple-950: #3b0764;
         | 
| 262 | 
            +
             | 
| 263 | 
            +
              --fuchsia-50: #fdf4ff;
         | 
| 264 | 
            +
              --fuchsia-100: #fae8ff;
         | 
| 265 | 
            +
              --fuchsia-200: #f5d0fe;
         | 
| 266 | 
            +
              --fuchsia-300: #f0abfc;
         | 
| 267 | 
            +
              --fuchsia-400: #e879f9;
         | 
| 268 | 
            +
              --fuchsia-500: #d946ef;
         | 
| 269 | 
            +
              --fuchsia-600: #c026d3;
         | 
| 270 | 
            +
              --fuchsia-700: #a21caf;
         | 
| 271 | 
            +
              --fuchsia-800: #86198f;
         | 
| 272 | 
            +
              --fuchsia-900: #701a75;
         | 
| 273 | 
            +
              --fuchsia-950: #4a044e;
         | 
| 274 | 
            +
             | 
| 275 | 
            +
              --pink-50: #fdf2f8;
         | 
| 276 | 
            +
              --pink-100: #fce7f3;
         | 
| 277 | 
            +
              --pink-200: #fbcfe8;
         | 
| 278 | 
            +
              --pink-300: #f9a8d4;
         | 
| 279 | 
            +
              --pink-400: #f472b6;
         | 
| 280 | 
            +
              --pink-500: #ec4899;
         | 
| 281 | 
            +
              --pink-600: #db2777;
         | 
| 282 | 
            +
              --pink-700: #be185d;
         | 
| 283 | 
            +
              --pink-800: #9d174d;
         | 
| 284 | 
            +
              --pink-900: #831843;
         | 
| 285 | 
            +
              --pink-950: #500724;
         | 
| 286 | 
            +
             | 
| 287 | 
            +
              --rose-50: #fff1f2;
         | 
| 288 | 
            +
              --rose-100: #ffe4e6;
         | 
| 289 | 
            +
              --rose-200: #fecdd3;
         | 
| 290 | 
            +
              --rose-300: #fda4af;
         | 
| 291 | 
            +
              --rose-400: #fb7185;
         | 
| 292 | 
            +
              --rose-500: #f43f5e;
         | 
| 293 | 
            +
              --rose-600: #e11d48;
         | 
| 294 | 
            +
              --rose-700: #be123c;
         | 
| 295 | 
            +
              --rose-800: #9f1239;
         | 
| 296 | 
            +
              --rose-900: #881337;
         | 
| 297 | 
            +
              --rose-950: #4c0519;
         | 
| 298 | 
            +
            }
         | 
| 299 | 
            +
             | 
| 300 | 
            +
            /* Tailwind */
         | 
| 301 | 
            +
             | 
| 302 | 
            +
            .center {text-align: center;}
         | 
| 303 | 
            +
             | 
| 304 | 
            +
            .absolute {position: absolute}
         | 
| 305 | 
            +
             | 
| 306 | 
            +
            .hidden {display: none}
         | 
| 307 | 
            +
             | 
| 308 | 
            +
            .h-full {height:100%}
         | 
| 309 | 
            +
            .w-full {width:100%}
         | 
| 310 | 
            +
            .h-half {height:50%}
         | 
| 311 | 
            +
            .w-half {width:50%}
         | 
| 312 | 
            +
             | 
| 313 | 
            +
            .flex {display: flex}
         | 
| 314 | 
            +
            .block {display: block}
         | 
| 315 | 
            +
            .column {flex-direction: column}
         | 
| 316 | 
            +
            .column-reverse {flex-direction: column-reverse}
         | 
| 317 | 
            +
            .row {flex-direction: row}
         | 
| 318 | 
            +
            .row {flex-direction: row-reverse}
         | 
| 319 | 
            +
            .inline-flex {display: inline-flex}
         | 
| 320 | 
            +
             | 
| 321 | 
            +
            .flex-1 {flex: 1 1 0}
         | 
| 322 | 
            +
            .flex-auto {flex: 1 1 auto}
         | 
| 323 | 
            +
            .flex-initial {flex: 0 1 auto}
         | 
| 324 | 
            +
            .flex-none {flex: none}
         | 
| 325 | 
            +
             | 
| 326 | 
            +
            .flex-wrap {flex-wrap: wrap}
         | 
| 327 | 
            +
            .flex-wrap-reverse {flex-wrap: wrap-reverse}
         | 
| 328 | 
            +
            .flex-nowrap {flex-wrap: nowrap}
         | 
| 329 | 
            +
             | 
| 330 | 
            +
            .justify-start {justify-content: flex-start}
         | 
| 331 | 
            +
            .justify-center {justify-content: center}
         | 
| 332 | 
            +
            .justify-end {justify-content: flex-end}
         | 
| 333 | 
            +
            .justify-between {justify-content: space-between}
         | 
| 334 | 
            +
            .justify-around {justify-content: space-around}
         | 
| 335 | 
            +
            .justify-evenly {justify-content: space-evenly}
         | 
| 336 | 
            +
             | 
| 337 | 
            +
            .content-start {align-content: flex-start}
         | 
| 338 | 
            +
            .content-center {align-content: center}
         | 
| 339 | 
            +
            .content-end {align-content: flex-end}
         | 
| 340 | 
            +
            .content-between {align-content: space-between}
         | 
| 341 | 
            +
            .content-around {align-content: space-around}
         | 
| 342 | 
            +
            .content-evenly {align-content: space-evenly}
         | 
| 343 | 
            +
             | 
| 344 | 
            +
            .items-start {align-items: flex-start}
         | 
| 345 | 
            +
            .items-center {align-items: center}
         | 
| 346 | 
            +
            .items-end {align-items: flex-end}
         | 
| 347 | 
            +
            .items-stretch {align-items: stretch}
         | 
| 348 | 
            +
            .items-baseline {align-items: baseline}
         | 
| 349 | 
            +
             | 
| 350 | 
            +
            .self-auto {align-self:auto}
         | 
| 351 | 
            +
            .self-start {align-self:start}
         | 
| 352 | 
            +
            .self-center {align-self:center}
         | 
| 353 | 
            +
            .self-end {align-self:end}
         | 
| 354 | 
            +
            .self-stretch{align-self:stretch}
         | 
| 355 | 
            +
            .self-baseline {align-self:baseline}
         | 
| 356 | 
            +
             | 
| 357 | 
            +
            .grow {flex-grow: 1}
         | 
| 358 | 
            +
            .grow-0 {flex-grow: 0}
         | 
| 359 | 
            +
            .shrink {flex-shrink: 1}
         | 
| 360 | 
            +
            .shrink-0 {flex-shrink: 0}
         | 
| 361 | 
            +
             | 
| 362 | 
            +
            .w-full {width: 100%}
         | 
| 363 | 
            +
            .h-full {height: 100%}
         | 
| 364 | 
            +
             | 
| 365 | 
            +
            .p-0 {padding: 0}
         | 
| 366 | 
            +
            .p-1 {padding: 0.25rem}
         | 
| 367 | 
            +
            .p-2 {padding: 0.5rem}
         | 
| 368 | 
            +
            .p-3 {padding: 0.75rem}
         | 
| 369 | 
            +
            .p-4 {padding: 1rem}
         | 
| 370 | 
            +
            .p-5 {padding: 1.25rem}
         | 
| 371 | 
            +
            .p-6 {padding: 1.5rem}
         | 
| 372 | 
            +
            .p-7 {padding: 1.75rem}
         | 
| 373 | 
            +
            .p-8 {padding: 2rem}
         | 
| 374 | 
            +
            .p-9 {padding: 2.25rem}
         | 
| 375 | 
            +
            .p-10 {padding: 2.5rem}
         | 
| 376 | 
            +
             | 
| 377 | 
            +
            .px-0 {padding-left: 0;padding-right: 0}
         | 
| 378 | 
            +
            .px-1 {padding-left: 0.25rem;padding-right: 0.25rem}
         | 
| 379 | 
            +
            .px-2 {padding-left: 0.5rem;padding-right: 0.5rem}
         | 
| 380 | 
            +
            .px-3 {padding-left: 0.75rem;padding-right: 0.75rem}
         | 
| 381 | 
            +
            .px-4 {padding-left: 1rem;padding-right: 1rem}
         | 
| 382 | 
            +
            .px-5 {padding-left: 1.25rem;padding-right: 1.25rem}
         | 
| 383 | 
            +
            .px-6 {padding-left: 1.5rem;padding-right: 1.5rem}
         | 
| 384 | 
            +
            .px-7 {padding-left: 1.75rem;padding-right: 1.75rem}
         | 
| 385 | 
            +
            .px-8 {padding-left: 2rem;padding-right: 2rem}
         | 
| 386 | 
            +
             | 
| 387 | 
            +
            .py-0 {padding-top: 0;padding-bottom: 0}
         | 
| 388 | 
            +
            .py-1 {padding-top: 0.25rem;padding-bottom: 0.25rem}
         | 
| 389 | 
            +
            .py-2 {padding-top: 0.5rem;padding-bottom: 0.5rem}
         | 
| 390 | 
            +
            .py-3 {padding-top: 0.75rem;padding-bottom: 0.75rem}
         | 
| 391 | 
            +
            .py-4 {padding-top: 1rem;padding-bottom: 1rem}
         | 
| 392 | 
            +
            .py-5 {padding-top: 1.25rem;padding-bottom: 1.25rem}
         | 
| 393 | 
            +
            .py-6 {padding-top: 1.5rem;padding-bottom: 1.5rem}
         | 
| 394 | 
            +
            .py-7 {padding-top: 1.75rem;padding-bottom: 1.75rem}
         | 
| 395 | 
            +
            .py-8 {padding-top: 2rem;padding-bottom: 2rem}
         | 
| 396 | 
            +
             | 
| 397 | 
            +
            .pl-0 {padding-left: 0}
         | 
| 398 | 
            +
            .pl-1 {padding-left: 0.25rem}
         | 
| 399 | 
            +
            .pl-2 {padding-left: 0.5rem}
         | 
| 400 | 
            +
            .pl-3 {padding-left: 0.75rem}
         | 
| 401 | 
            +
            .pl-4 {padding-left: 1rem}
         | 
| 402 | 
            +
            .pl-5 {padding-left: 1.25rem}
         | 
| 403 | 
            +
            .pl-6 {padding-left: 1.5rem}
         | 
| 404 | 
            +
            .pl-7 {padding-left: 1.75rem}
         | 
| 405 | 
            +
            .pl-8 {padding-left: 2rem}
         | 
| 406 | 
            +
            .pl-9 {padding-left: 2.25rem}
         | 
| 407 | 
            +
            .pl-10 {padding-left: 2.5rem}
         | 
| 408 | 
            +
             | 
| 409 | 
            +
            .pt-0 {padding-top: 0}
         | 
| 410 | 
            +
            .pt-1 {padding-top: 0.25rem}
         | 
| 411 | 
            +
            .pt-2 {padding-top: 0.5rem}
         | 
| 412 | 
            +
            .pt-3 {padding-top: 0.75rem}
         | 
| 413 | 
            +
            .pt-4 {padding-top: 1rem}
         | 
| 414 | 
            +
            .pt-5 {padding-top: 1.25rem}
         | 
| 415 | 
            +
            .pt-6 {padding-top: 1.5rem}
         | 
| 416 | 
            +
            .pt-7 {padding-top: 1.75rem}
         | 
| 417 | 
            +
            .pt-8 {padding-top: 2rem}
         | 
| 418 | 
            +
            .pt-9 {padding-top: 2.25rem}
         | 
| 419 | 
            +
            .pt-10 {padding-top: 2.5rem}
         | 
| 420 | 
            +
             | 
| 421 | 
            +
            .pr-0 {padding-right: 0}
         | 
| 422 | 
            +
            .pr-1 {padding-right: 0.25rem}
         | 
| 423 | 
            +
            .pr-2 {padding-right: 0.5rem}
         | 
| 424 | 
            +
            .pr-3 {padding-right: 0.75rem}
         | 
| 425 | 
            +
            .pr-4 {padding-right: 1rem}
         | 
| 426 | 
            +
            .pr-5 {padding-right: 1.25rem}
         | 
| 427 | 
            +
            .pr-6 {padding-right: 1.5rem}
         | 
| 428 | 
            +
            .pr-7 {padding-right: 1.75rem}
         | 
| 429 | 
            +
            .pr-8 {padding-right: 2rem}
         | 
| 430 | 
            +
            .pr-9 {padding-right: 2.25rem}
         | 
| 431 | 
            +
            .pr-10 {padding-right: 2.5rem}
         | 
| 432 | 
            +
             | 
| 433 | 
            +
            .pb-0 {padding-bottom: 0}
         | 
| 434 | 
            +
            .pb-1 {padding-bottom: 0.25rem}
         | 
| 435 | 
            +
            .pb-2 {padding-bottom: 0.5rem}
         | 
| 436 | 
            +
            .pb-3 {padding-bottom: 0.75rem}
         | 
| 437 | 
            +
            .pb-4 {padding-bottom: 1rem}
         | 
| 438 | 
            +
            .pb-5 {padding-bottom: 1.25rem}
         | 
| 439 | 
            +
            .pb-6 {padding-bottom: 1.5rem}
         | 
| 440 | 
            +
            .pb-7 {padding-bottom: 1.75rem}
         | 
| 441 | 
            +
            .pb-8 {padding-bottom: 2rem}
         | 
| 442 | 
            +
            .pb-9 {padding-bottom: 2.25rem}
         | 
| 443 | 
            +
            .pb-10 {padding-bottom: 2.5rem}
         | 
| 444 | 
            +
             | 
| 445 | 
            +
            .gap-0 {gap: 0}
         | 
| 446 | 
            +
            .gap-1 {gap: 0.25rem}
         | 
| 447 | 
            +
            .gap-2 {gap: 0.5rem}
         | 
| 448 | 
            +
            .gap-3 {gap: 0.75rem}
         | 
| 449 | 
            +
            .gap-4 {gap: 1rem}
         | 
| 450 | 
            +
            .gap-5 {gap: 1.25rem}
         | 
| 451 | 
            +
            .gap-6 {gap: 1.5rem}
         | 
| 452 | 
            +
            .gap-7 {gap: 1.75rem}
         | 
| 453 | 
            +
            .gap-8 {gap: 2rem}
         | 
| 454 | 
            +
            .gap-9 {gap: 2.25rem}
         | 
| 455 | 
            +
            .gap-10 {gap: 2.5rem}
         | 
| 456 | 
            +
            .gap-10 {gap: 2.75rem}
         | 
| 457 | 
            +
            .gap-11 {gap: 3rem}
         | 
| 458 | 
            +
            .gap-12 {gap: 3.25rem}
         | 
| 459 | 
            +
            .gap-13 {gap: 3.5rem}
         | 
| 460 | 
            +
            .gap-14 {gap: 3.75rem}
         | 
| 461 | 
            +
            .gap-15 {gap: 4rem}
         | 
| 462 | 
            +
             | 
| 463 | 
            +
            .text-xs {font-size: 0.75rem; line-height: 1rem}
         | 
| 464 | 
            +
            .text-sm {font-size: 0.875rem; line-height: 1.25rem}
         | 
| 465 | 
            +
            .text-base {font-size: 1.25rem; line-height: 1.5rem}
         | 
| 466 | 
            +
            .text-lg {font-size: 1.5rem; line-height: 1.75rem}
         | 
| 467 | 
            +
            .text-xl {font-size: 1.25rem; line-height: 1.75rem}
         | 
| 468 | 
            +
            .text-2xl {font-size: 1.5rem; line-height: 2rem}
         | 
| 469 | 
            +
            .text-3xl {font-size: 1.875rem; line-height: 2.25rem}
         | 
| 470 | 
            +
            .text-4xl {font-size: 2.25rem; line-height: 2.5rem}
         | 
| 471 | 
            +
            .text-5xl {font-size: 3rem; line-height: 1}
         | 
| 472 | 
            +
            .text-6xl {font-size: 3.75rem; line-height: 1}
         | 
| 473 | 
            +
            .text-7xl {font-size: 4.5rem; line-height: 1}
         | 
| 474 | 
            +
            .text-8xl {font-size: 6rem; line-height: 1}
         | 
| 475 | 
            +
            .text-9xl {font-size: 8rem; line-height: 1}
         | 
| 476 | 
            +
             | 
| 477 | 
            +
            .font-weight-100 {font-weight: 100}
         | 
| 478 | 
            +
            .font-weight-200 {font-weight: 200}
         | 
| 479 | 
            +
            .font-weight-300 {font-weight: 300}
         | 
| 480 | 
            +
            .font-weight-400 {font-weight: 400}
         | 
| 481 | 
            +
            .font-weight-500 {font-weight: 500}
         | 
| 482 | 
            +
            .font-weight-600 {font-weight: 600}
         | 
| 483 | 
            +
            .font-weight-700 {font-weight: 700}
         | 
| 484 | 
            +
            .font-weight-800 {font-weight: 800}
         | 
| 485 | 
            +
            .font-weight-900 {font-weight: 900}
         | 
| 486 | 
            +
             | 
| 487 | 
            +
            .border-radius {border-radius: 1}
         | 
| 488 | 
            +
             | 
| 489 | 
            +
            .cursor-pointer {cursor:pointer}
         | 
| 490 | 
            +
             | 
| 491 | 
            +
            .rounded-none{border-radius: 0}
         | 
| 492 | 
            +
            .rounded-sm {border-radius: 0.125rem}
         | 
| 493 | 
            +
            .rounded {border-radius: 0.25rem}
         | 
| 494 | 
            +
            .rounded-md {border-radius: 0.375rem}
         | 
| 495 | 
            +
            .rounded-lg {border-radius: 0.5rem}
         | 
| 496 | 
            +
            .rounded-xl {border-radius: 0.75rem}
         | 
| 497 | 
            +
            .rounded-2xl {border-radius: 1rem}
         | 
| 498 | 
            +
            .rounded-3xl {border-radius: 1.5rem}
         | 
| 499 | 
            +
            .rounded-full {border-radius: 9999px}
         | 
| 500 | 
            +
             | 
| 501 | 
            +
            .w-min {width: min-content}
         | 
| 502 | 
            +
            .w-max {width: max-content}
         | 
| 503 | 
            +
            .min-w-min {min-width: min-content}
         | 
| 504 | 
            +
            .max-w-max {max-width: max-content}
         | 
| @@ -0,0 +1,90 @@ | |
| 1 | 
            +
            @import url('./presets.css');
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            @font-face {
         | 
| 4 | 
            +
              font-family: 'Icons';
         | 
| 5 | 
            +
              font-style: normal;
         | 
| 6 | 
            +
              font-weight: 400;
         | 
| 7 | 
            +
              font-display: block;
         | 
| 8 | 
            +
              src: url("/fonts/far.woff2") format("woff2"), url("/fonts/far.ttf") format("truetype");
         | 
| 9 | 
            +
            }
         | 
| 10 | 
            +
             | 
| 11 | 
            +
            @font-face {
         | 
| 12 | 
            +
              font-family: 'Solid Icons';
         | 
| 13 | 
            +
              font-style: normal;
         | 
| 14 | 
            +
              font-weight: 900;
         | 
| 15 | 
            +
              font-display: block;
         | 
| 16 | 
            +
              src: url("/fonts/fas.woff2") format("woff2"), url("/fonts/fas.ttf") format("truetype");
         | 
| 17 | 
            +
            };
         | 
| 18 | 
            +
             | 
| 19 | 
            +
            @font-face {
         | 
| 20 | 
            +
              font-family: 'Brands';
         | 
| 21 | 
            +
              font-style: normal;
         | 
| 22 | 
            +
              font-weight: 400;
         | 
| 23 | 
            +
              font-display: block;
         | 
| 24 | 
            +
              src: url("/fonts/fab.woff2") format("woff2"), url("/fonts/fab.ttf") format("truetype");
         | 
| 25 | 
            +
            }
         | 
| 26 | 
            +
             | 
| 27 | 
            +
            .icon {display:flex; display:inline-block}
         | 
| 28 | 
            +
            .icon:before {color:inherit}
         | 
| 29 | 
            +
             | 
| 30 | 
            +
            i.icon:before {font-family: "Solid Icons"; font-weight: 900}
         | 
| 31 | 
            +
            /* b.icon:before {font-family: "Solid Icons"; font-weight: 900} */
         | 
| 32 | 
            +
             | 
| 33 | 
            +
            i.icon.menu:before { content: '\f0c9'; font-family: "Solid Icons" }
         | 
| 34 | 
            +
            i.icon.info:before { content: '\f129'; font-family: "Solid Icons" }
         | 
| 35 | 
            +
            i.icon.xmark:before { content: '\f00d'; font-family: "Solid Icons" }
         | 
| 36 | 
            +
            i.icon.plus:before {content: '\2b'; font-family: "Solid Icons" }
         | 
| 37 | 
            +
            i.icon.clone:before {content: '\f24d'; font-family: "Solid Icons" }
         | 
| 38 | 
            +
             | 
| 39 | 
            +
            i.brand.x:before { font-family: "Brands"; content: "\f392"; }
         | 
| 40 | 
            +
            i.brand.discord:before { font-family: "Brands"; content: "\f392"; }
         | 
| 41 | 
            +
             | 
| 42 | 
            +
            .text-white {color: white}
         | 
| 43 | 
            +
            .text-neutral-50 {color: var(--neutral-50)}
         | 
| 44 | 
            +
            .text-neutral-500 {color: var(--neutral-500)}
         | 
| 45 | 
            +
            .text-neutral-600 {color: var(--neutral-600)}
         | 
| 46 | 
            +
            .text-neutral-700 {color: var(--neutral-700)}
         | 
| 47 | 
            +
            .text-neutral-800 {color: var(--neutral-800)}
         | 
| 48 | 
            +
            .text-neutral-900 {color: var(--neutral-900)}
         | 
| 49 | 
            +
            .text-neutral-950 {color: var(--neutral-950)}
         | 
| 50 | 
            +
             | 
| 51 | 
            +
            .bg-neutral-50 {background-color: var(--neutral-50)}
         | 
| 52 | 
            +
            .bg-neutral-100 {background-color: var(--neutral-100)}
         | 
| 53 | 
            +
            .bg-neutral-200 {background-color: var(--neutral-200)}
         | 
| 54 | 
            +
            .bg-neutral-300 {background-color: var(--neutral-300)}
         | 
| 55 | 
            +
            .bg-neutral-900 {background-color: var(--neutral-300)}
         | 
| 56 | 
            +
            .bg-neutral-950 {background-color: var(--neutral-300)}
         | 
| 57 | 
            +
             | 
| 58 | 
            +
            .bg-slate-50 {background-color: var(--slate-50)}
         | 
| 59 | 
            +
            .bg-slate-100 {background-color: var(--slate-100)}
         | 
| 60 | 
            +
            .bg-slate-200 {background-color: var(--slate-200)}
         | 
| 61 | 
            +
            .bg-slate-300 {background-color: var(--slate-300)}
         | 
| 62 | 
            +
             | 
| 63 | 
            +
            .bg-gray-50 {background-color: var(--gray-50)}
         | 
| 64 | 
            +
            .bg-gray-100 {background-color: var(--gray-100)}
         | 
| 65 | 
            +
            .bg-gray-200 {background-color: var(--gray-200)}
         | 
| 66 | 
            +
            .bg-gray-300 {background-color: var(--gray-300)}
         | 
| 67 | 
            +
             | 
| 68 | 
            +
            .bg-stone-50 {background-color: var(--stone-50)}
         | 
| 69 | 
            +
            .bg-stone-100 {background-color: var(--stone-100)}
         | 
| 70 | 
            +
            .bg-stone-200 {background-color: var(--stone-200)}
         | 
| 71 | 
            +
            .bg-stone-300 {background-color: var(--stone-300)}
         | 
| 72 | 
            +
             | 
| 73 | 
            +
            .bg-gray-300 {background-color: var(--gray-300)}
         | 
| 74 | 
            +
             | 
| 75 | 
            +
            .bg-blue-400 {background-color: var(--blue-400)}
         | 
| 76 | 
            +
            .bg-blue-500 {background-color: var(--blue-500)}
         | 
| 77 | 
            +
            .bg-blue-600 {background-color: var(--blue-600)}
         | 
| 78 | 
            +
            .bg-sky-400 {background-color: var(--sky-400)}
         | 
| 79 | 
            +
            .bg-sky-500 {background-color: var(--sky-500)}
         | 
| 80 | 
            +
            .bg-sky-600 {background-color: var(--sky-600)}
         | 
| 81 | 
            +
            .bg-green-400 {background-color: var(--green-400)}
         | 
| 82 | 
            +
            .bg-green-500 {background-color: var(--green-500)}
         | 
| 83 | 
            +
            .bg-green-600 {background-color: var(--green-600)}
         | 
| 84 | 
            +
             | 
| 85 | 
            +
            .text-shadow-white {text-shadow: 0px 0px 3px white}
         | 
| 86 | 
            +
            .text-shadow-black {text-shadow: 0px 0px 3px black}
         | 
| 87 | 
            +
            .text-shadow-green {text-shadow: 0px 0px 3px var(--green-800)}
         | 
| 88 | 
            +
            .text-shadow-blue {text-shadow: 0px 0px 3px var(--blue-800)}
         | 
| 89 | 
            +
             | 
| 90 | 
            +
            .shadow {box-shadow: rgba(9, 30, 66, 0.25) 0px 1px 1px, rgba(9, 30, 66, 0.13) 0px 0px 1px 1px;}
         | 
    
        package/www/demo.html
    ADDED
    
    | @@ -0,0 +1,15 @@ | |
| 1 | 
            +
            <!DOCTYPE html>
         | 
| 2 | 
            +
            <title>Demo</title>
         | 
| 3 | 
            +
             | 
| 4 | 
            +
            <script type="module">
         | 
| 5 | 
            +
             | 
| 6 | 
            +
            import {h,signal,effect,batch,wrap,render,onMount,List} from '../src/mod.ts'
         | 
| 7 | 
            +
             | 
| 8 | 
            +
            function App() {
         | 
| 9 | 
            +
              const fruits = ['apple', 'banana', 'cherry']
         | 
| 10 | 
            +
              return h(List, {each:fruits}, f => f)
         | 
| 11 | 
            +
            }
         | 
| 12 | 
            +
             | 
| 13 | 
            +
            render(App, document.body)
         | 
| 14 | 
            +
             | 
| 15 | 
            +
            </script>
         |