@webda/debug 4.0.0-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/LICENSE +166 -0
  2. package/README.md +95 -0
  3. package/lib/bodycapture.d.ts +66 -0
  4. package/lib/bodycapture.js +162 -0
  5. package/lib/bodycapture.js.map +1 -0
  6. package/lib/debugservice.service.d.ts +166 -0
  7. package/lib/debugservice.service.js +609 -0
  8. package/lib/debugservice.service.js.map +1 -0
  9. package/lib/index.d.ts +7 -0
  10. package/lib/index.js +7 -0
  11. package/lib/index.js.map +1 -0
  12. package/lib/introspection.d.ts +115 -0
  13. package/lib/introspection.js +260 -0
  14. package/lib/introspection.js.map +1 -0
  15. package/lib/logbuffer.d.ts +75 -0
  16. package/lib/logbuffer.js +98 -0
  17. package/lib/logbuffer.js.map +1 -0
  18. package/lib/requestlog.d.ts +181 -0
  19. package/lib/requestlog.js +153 -0
  20. package/lib/requestlog.js.map +1 -0
  21. package/lib/tui/client.d.ts +165 -0
  22. package/lib/tui/client.js +220 -0
  23. package/lib/tui/client.js.map +1 -0
  24. package/lib/tui/panels/config.d.ts +79 -0
  25. package/lib/tui/panels/config.js +291 -0
  26. package/lib/tui/panels/config.js.map +1 -0
  27. package/lib/tui/panels/logs.d.ts +106 -0
  28. package/lib/tui/panels/logs.js +342 -0
  29. package/lib/tui/panels/logs.js.map +1 -0
  30. package/lib/tui/panels/models.d.ts +47 -0
  31. package/lib/tui/panels/models.js +193 -0
  32. package/lib/tui/panels/models.js.map +1 -0
  33. package/lib/tui/panels/operations.d.ts +55 -0
  34. package/lib/tui/panels/operations.js +241 -0
  35. package/lib/tui/panels/operations.js.map +1 -0
  36. package/lib/tui/panels/panel.d.ts +55 -0
  37. package/lib/tui/panels/panel.js +31 -0
  38. package/lib/tui/panels/panel.js.map +1 -0
  39. package/lib/tui/panels/requests.d.ts +156 -0
  40. package/lib/tui/panels/requests.js +512 -0
  41. package/lib/tui/panels/requests.js.map +1 -0
  42. package/lib/tui/panels/routes.d.ts +45 -0
  43. package/lib/tui/panels/routes.js +154 -0
  44. package/lib/tui/panels/routes.js.map +1 -0
  45. package/lib/tui/panels/services.d.ts +49 -0
  46. package/lib/tui/panels/services.js +266 -0
  47. package/lib/tui/panels/services.js.map +1 -0
  48. package/lib/tui/tui.d.ts +58 -0
  49. package/lib/tui/tui.js +236 -0
  50. package/lib/tui/tui.js.map +1 -0
  51. package/package.json +60 -0
  52. package/webui/app.js +177 -0
  53. package/webui/components/logs.js +128 -0
  54. package/webui/components/model-graph.js +292 -0
  55. package/webui/components/models.js +213 -0
  56. package/webui/components/operations.js +315 -0
  57. package/webui/components/requests.js +264 -0
  58. package/webui/components/schema-form.js +268 -0
  59. package/webui/components/services.js +248 -0
  60. package/webui/index.html +22 -0
  61. package/webui/logo.svg +1 -0
  62. package/webui/styles.css +685 -0
  63. package/webui/vendor/htm.js +1 -0
  64. package/webui/vendor/preact-hooks.js +2 -0
  65. package/webui/vendor/preact.js +2 -0
  66. package/webui/webda.png +0 -0
@@ -0,0 +1,685 @@
1
+ :root {
2
+ --bg: #1a1a2e;
3
+ --bg-secondary: #16213e;
4
+ --bg-tertiary: #0f3460;
5
+ --text: #e0e0e0;
6
+ --text-muted: #8892a4;
7
+ --accent: #f7992c;
8
+ --accent-secondary: #4557a4;
9
+ --border: #2a2a4a;
10
+ --green: #81bf6b;
11
+ --yellow: #f7992c;
12
+ --red: #ef4444;
13
+ --blue: #4557a4;
14
+ --purple: #a855f7;
15
+ --orange: #f7992c;
16
+ }
17
+
18
+ * {
19
+ margin: 0;
20
+ padding: 0;
21
+ box-sizing: border-box;
22
+ }
23
+
24
+ body {
25
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
26
+ background: var(--bg);
27
+ color: var(--text);
28
+ min-height: 100vh;
29
+ }
30
+
31
+ code, pre, .mono {
32
+ font-family: "SF Mono", "Fira Code", "JetBrains Mono", Consolas, monospace;
33
+ }
34
+
35
+ #app {
36
+ display: flex;
37
+ flex-direction: column;
38
+ min-height: 100vh;
39
+ }
40
+
41
+ /* Header / Nav */
42
+ .header {
43
+ background: var(--bg-secondary);
44
+ border-bottom: 2px solid var(--border);
45
+ padding: 0 1.5rem;
46
+ display: flex;
47
+ align-items: center;
48
+ height: 48px;
49
+ flex-shrink: 0;
50
+ transition: border-color 0.3s, filter 0.3s;
51
+ }
52
+
53
+ .header.disconnected {
54
+ border-bottom-color: var(--red);
55
+ }
56
+
57
+ .header.disconnected .header-logo,
58
+ .header.disconnected .nav-tabs {
59
+ filter: grayscale(1);
60
+ opacity: 0.5;
61
+ }
62
+
63
+ .header.disconnected .nav-tab.active {
64
+ color: var(--text-muted) !important;
65
+ border-bottom-color: var(--text-muted) !important;
66
+ }
67
+
68
+ .header-logo {
69
+ display: flex;
70
+ align-items: center;
71
+ gap: 0.5rem;
72
+ margin-right: 2rem;
73
+ white-space: nowrap;
74
+ text-decoration: none;
75
+ }
76
+
77
+ .header-logo img {
78
+ width: 28px;
79
+ height: 28px;
80
+ }
81
+
82
+ .header-title {
83
+ font-size: 1rem;
84
+ font-weight: 600;
85
+ color: var(--text);
86
+ }
87
+
88
+ .header-title span {
89
+ color: var(--focus-color);
90
+ }
91
+
92
+ .header-app-info {
93
+ margin-left: 0.75rem;
94
+ padding-left: 0.75rem;
95
+ border-left: 1px solid var(--border);
96
+ line-height: 1.2;
97
+ }
98
+
99
+ .header-app-name {
100
+ font-size: 0.8rem;
101
+ color: var(--text);
102
+ }
103
+
104
+ .header-cwd {
105
+ font-size: 0.65rem;
106
+ color: var(--text-muted);
107
+ opacity: 0.6;
108
+ font-family: "SF Mono", "Fira Code", Consolas, monospace;
109
+ }
110
+
111
+ .header {
112
+ animation: focus-rotate 9s ease-in-out infinite;
113
+ }
114
+
115
+ .nav-tabs {
116
+ display: flex;
117
+ gap: 0;
118
+ height: 100%;
119
+ overflow-x: auto;
120
+ flex: 1;
121
+ min-width: 0;
122
+ }
123
+
124
+ .nav-tab {
125
+ padding: 0 1rem;
126
+ height: 100%;
127
+ display: flex;
128
+ align-items: center;
129
+ cursor: pointer;
130
+ color: var(--text-muted);
131
+ border-bottom: 2px solid transparent;
132
+ font-size: 0.875rem;
133
+ white-space: nowrap;
134
+ transition: color 0.15s, border-color 0.15s;
135
+ background: none;
136
+ border-top: none;
137
+ border-left: none;
138
+ border-right: none;
139
+ font-family: inherit;
140
+ position: relative;
141
+ z-index: 1;
142
+ }
143
+
144
+ .nav-tab:hover {
145
+ color: var(--text);
146
+ }
147
+
148
+ .nav-tab.active {
149
+ border-bottom-width: 2px;
150
+ border-bottom-style: solid;
151
+ }
152
+
153
+ @keyframes focus-rotate {
154
+ 0%, 100% { --focus-color: #f7992c; }
155
+ 25% { --focus-color: #81bf6b; }
156
+ 50% { --focus-color: #6b8fd4; }
157
+ 75% { --focus-color: #f4f4f4; }
158
+ }
159
+
160
+ @property --focus-color {
161
+ syntax: "<color>";
162
+ inherits: true;
163
+ initial-value: #f7992c;
164
+ }
165
+
166
+ .ws-indicator {
167
+ margin-left: 1rem;
168
+ flex-shrink: 0;
169
+ font-size: 0.75rem;
170
+ display: flex;
171
+ align-items: center;
172
+ gap: 0.4rem;
173
+ }
174
+
175
+ .ws-dot {
176
+ width: 8px;
177
+ height: 8px;
178
+ border-radius: 50%;
179
+ background: var(--green);
180
+ }
181
+
182
+ .ws-dot.disconnected {
183
+ background: var(--red);
184
+ animation: pulse 1.5s infinite;
185
+ }
186
+
187
+ @keyframes pulse {
188
+ 0%, 100% { opacity: 1; }
189
+ 50% { opacity: 0.3; }
190
+ }
191
+
192
+ /* Main content */
193
+ .content {
194
+ flex: 1;
195
+ padding: 1.5rem;
196
+ overflow: auto;
197
+ }
198
+
199
+ /* Tables */
200
+ .table-container {
201
+ overflow-x: auto;
202
+ }
203
+
204
+ table {
205
+ width: 100%;
206
+ border-collapse: collapse;
207
+ font-size: 0.875rem;
208
+ }
209
+
210
+ th {
211
+ text-align: left;
212
+ padding: 0.5rem 0.75rem;
213
+ border-bottom: 1px solid var(--border);
214
+ color: var(--text-muted);
215
+ font-weight: 500;
216
+ white-space: nowrap;
217
+ }
218
+
219
+ td {
220
+ padding: 0.5rem 0.75rem;
221
+ border-bottom: 1px solid var(--border);
222
+ vertical-align: top;
223
+ }
224
+
225
+ tr:hover td {
226
+ background: rgba(255,255,255,0.02);
227
+ }
228
+
229
+ /* Badges */
230
+ .badge {
231
+ display: inline-block;
232
+ padding: 0.125rem 0.5rem;
233
+ border-radius: 3px;
234
+ font-size: 0.75rem;
235
+ font-weight: 500;
236
+ font-family: "SF Mono", "Fira Code", Consolas, monospace;
237
+ }
238
+
239
+ .badge-green { background: rgba(34,197,94,0.15); color: var(--green); }
240
+ .badge-yellow { background: rgba(234,179,8,0.15); color: var(--yellow); }
241
+ .badge-red { background: rgba(239,68,68,0.15); color: var(--red); }
242
+ .badge-blue { background: rgba(59,130,246,0.15); color: var(--blue); }
243
+ .badge-purple { background: rgba(168,85,247,0.15); color: var(--purple); }
244
+ .badge-orange { background: rgba(249,115,22,0.15); color: var(--orange); }
245
+ .badge-muted { background: rgba(136,146,164,0.15); color: var(--text-muted); }
246
+
247
+ /* Method badges */
248
+ .method-get { background: rgba(34,197,94,0.15); color: var(--green); }
249
+ .method-post { background: rgba(59,130,246,0.15); color: var(--blue); }
250
+ .method-put { background: rgba(234,179,8,0.15); color: var(--yellow); }
251
+ .method-patch { background: rgba(249,115,22,0.15); color: var(--orange); }
252
+ .method-delete { background: rgba(239,68,68,0.15); color: var(--red); }
253
+
254
+ /* Split panel (models) */
255
+ .split-panel {
256
+ display: flex;
257
+ gap: 1.5rem;
258
+ height: calc(100vh - 48px - 3rem);
259
+ }
260
+
261
+ .split-left {
262
+ width: 280px;
263
+ flex-shrink: 0;
264
+ overflow-y: auto;
265
+ border-right: 1px solid var(--border);
266
+ padding-right: 1rem;
267
+ }
268
+
269
+ .split-right {
270
+ flex: 1;
271
+ overflow-y: auto;
272
+ }
273
+
274
+ .list-item {
275
+ padding: 0.5rem 0.75rem;
276
+ cursor: pointer;
277
+ border-radius: 4px;
278
+ font-size: 0.875rem;
279
+ color: var(--text-muted);
280
+ transition: background 0.1s, color 0.1s;
281
+ }
282
+
283
+ .list-item:hover {
284
+ background: rgba(255,255,255,0.05);
285
+ color: var(--text);
286
+ }
287
+
288
+ .list-item.active {
289
+ background: var(--bg-tertiary);
290
+ color: var(--focus-color);
291
+ }
292
+
293
+ /* JSON tree */
294
+ .json-tree {
295
+ font-family: "SF Mono", "Fira Code", Consolas, monospace;
296
+ font-size: 0.8125rem;
297
+ line-height: 1.6;
298
+ }
299
+
300
+ .json-key {
301
+ color: var(--accent);
302
+ }
303
+
304
+ .json-string {
305
+ color: var(--green);
306
+ }
307
+
308
+ .json-number {
309
+ color: var(--orange);
310
+ }
311
+
312
+ .json-boolean {
313
+ color: var(--purple);
314
+ }
315
+
316
+ .json-null {
317
+ color: var(--text-muted);
318
+ }
319
+
320
+ .json-toggle {
321
+ cursor: pointer;
322
+ user-select: none;
323
+ color: var(--text-muted);
324
+ }
325
+
326
+ .json-toggle:hover {
327
+ color: var(--text);
328
+ }
329
+
330
+ .json-collapsed {
331
+ display: none;
332
+ }
333
+
334
+ .json-indent {
335
+ padding-left: 1.25rem;
336
+ }
337
+
338
+ /* Detail sections */
339
+ .detail-section {
340
+ margin-bottom: 1.5rem;
341
+ }
342
+
343
+ .detail-section h3 {
344
+ font-size: 0.875rem;
345
+ color: var(--text-muted);
346
+ margin-bottom: 0.5rem;
347
+ text-transform: uppercase;
348
+ letter-spacing: 0.05em;
349
+ }
350
+
351
+ /* Search / filter */
352
+ .search-input {
353
+ width: 100%;
354
+ padding: 0.5rem 0.75rem;
355
+ background: var(--bg);
356
+ border: 1px solid var(--border);
357
+ border-radius: 4px;
358
+ color: var(--text);
359
+ font-size: 0.875rem;
360
+ margin-bottom: 0.75rem;
361
+ outline: none;
362
+ }
363
+
364
+ .search-input:focus {
365
+ border-color: var(--focus-color);
366
+ }
367
+
368
+ /* Swagger UI overrides */
369
+ .swagger-container {
370
+ height: calc(100vh - 48px - 3rem);
371
+ }
372
+
373
+ .swagger-container iframe {
374
+ width: 100%;
375
+ height: 100%;
376
+ border: none;
377
+ border-radius: 4px;
378
+ }
379
+
380
+ /* Status code coloring */
381
+ .status-2xx { color: var(--green); }
382
+ .status-3xx { color: var(--yellow); }
383
+ .status-4xx { color: var(--orange); }
384
+ .status-5xx { color: var(--red); }
385
+ .status-pending { color: var(--text-muted); }
386
+
387
+ /* Scrollbar */
388
+ ::-webkit-scrollbar {
389
+ width: 6px;
390
+ height: 6px;
391
+ }
392
+
393
+ ::-webkit-scrollbar-track {
394
+ background: transparent;
395
+ }
396
+
397
+ ::-webkit-scrollbar-thumb {
398
+ background: var(--border);
399
+ border-radius: 3px;
400
+ }
401
+
402
+ ::-webkit-scrollbar-thumb:hover {
403
+ background: var(--text-muted);
404
+ }
405
+
406
+ /* Code block */
407
+ .code-block {
408
+ margin: 0;
409
+ background: var(--bg-secondary);
410
+ padding: 1rem;
411
+ border-radius: 4px;
412
+ overflow: auto;
413
+ max-height: 500px;
414
+ font-size: 0.8125rem;
415
+ line-height: 1.6;
416
+ tab-size: 2;
417
+ }
418
+
419
+ .code-block code {
420
+ font-family: "SF Mono", "Fira Code", "JetBrains Mono", Consolas, monospace;
421
+ }
422
+
423
+ .hl-keyword { color: #ff7b72; }
424
+ .hl-string { color: #a5d6ff; }
425
+ .hl-number { color: #79c0ff; }
426
+ .hl-comment { color: #8b949e; font-style: italic; }
427
+
428
+ /* Schema Form */
429
+ .sf-root {
430
+ font-size: 0.875rem;
431
+ }
432
+
433
+ .sf-title {
434
+ font-size: 1rem;
435
+ font-weight: 600;
436
+ color: var(--accent);
437
+ margin-bottom: 0.25rem;
438
+ }
439
+
440
+ .sf-schema-desc {
441
+ color: var(--text-muted);
442
+ font-size: 0.8125rem;
443
+ margin-bottom: 1rem;
444
+ line-height: 1.4;
445
+ }
446
+
447
+ .sf-empty {
448
+ color: var(--text-muted);
449
+ padding: 1rem 0;
450
+ }
451
+
452
+ .sf-fields {
453
+ display: flex;
454
+ flex-direction: column;
455
+ gap: 0.75rem;
456
+ }
457
+
458
+ .sf-field {
459
+ padding: 0.5rem 0.625rem;
460
+ border-radius: 4px;
461
+ border: 1px solid transparent;
462
+ transition: border-color 0.15s;
463
+ }
464
+
465
+ .sf-field:hover {
466
+ border-color: var(--border);
467
+ }
468
+
469
+ .sf-field.sf-has-value {
470
+ border-left: 2px solid var(--accent);
471
+ }
472
+
473
+ .sf-label-row {
474
+ display: flex;
475
+ justify-content: space-between;
476
+ align-items: baseline;
477
+ margin-bottom: 0.125rem;
478
+ }
479
+
480
+ .sf-label {
481
+ font-weight: 500;
482
+ color: var(--text);
483
+ font-size: 0.8125rem;
484
+ }
485
+
486
+ .sf-required {
487
+ color: var(--red);
488
+ margin-left: 0.125rem;
489
+ }
490
+
491
+ .sf-type {
492
+ font-family: "SF Mono", "Fira Code", Consolas, monospace;
493
+ font-size: 0.6875rem;
494
+ color: var(--text-muted);
495
+ background: var(--bg-secondary);
496
+ padding: 0.0625rem 0.375rem;
497
+ border-radius: 3px;
498
+ }
499
+
500
+ .sf-description {
501
+ color: var(--text-muted);
502
+ font-size: 0.75rem;
503
+ margin-bottom: 0.375rem;
504
+ line-height: 1.4;
505
+ }
506
+
507
+ .sf-default {
508
+ font-size: 0.6875rem;
509
+ color: var(--text-muted);
510
+ margin-top: 0.25rem;
511
+ }
512
+
513
+ .sf-default code {
514
+ color: var(--accent);
515
+ background: var(--bg-secondary);
516
+ padding: 0 0.25rem;
517
+ border-radius: 2px;
518
+ font-size: 0.6875rem;
519
+ }
520
+
521
+ .sf-input {
522
+ width: 100%;
523
+ padding: 0.375rem 0.5rem;
524
+ background: var(--bg);
525
+ border: 1px solid var(--border);
526
+ border-radius: 4px;
527
+ color: var(--text);
528
+ font-size: 0.8125rem;
529
+ font-family: inherit;
530
+ outline: none;
531
+ transition: border-color 0.15s;
532
+ }
533
+
534
+ .sf-input:focus {
535
+ border-color: var(--accent);
536
+ }
537
+
538
+ .sf-input:read-only,
539
+ .sf-input:disabled {
540
+ opacity: 0.6;
541
+ cursor: not-allowed;
542
+ }
543
+
544
+ .sf-input::placeholder {
545
+ color: var(--text-muted);
546
+ opacity: 0.5;
547
+ }
548
+
549
+ select.sf-input {
550
+ cursor: pointer;
551
+ appearance: none;
552
+ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%238892a4'/%3E%3C/svg%3E");
553
+ background-repeat: no-repeat;
554
+ background-position: right 0.5rem center;
555
+ padding-right: 1.5rem;
556
+ }
557
+
558
+ .sf-textarea {
559
+ font-family: "SF Mono", "Fira Code", Consolas, monospace;
560
+ font-size: 0.75rem;
561
+ resize: vertical;
562
+ min-height: 2.5rem;
563
+ }
564
+
565
+ /* Collapsible sections */
566
+ .sf-collapsible {
567
+ border: 1px solid var(--border);
568
+ border-radius: 4px;
569
+ overflow: hidden;
570
+ }
571
+
572
+ .sf-collapsible-header {
573
+ display: flex;
574
+ align-items: center;
575
+ gap: 0.375rem;
576
+ padding: 0.375rem 0.5rem;
577
+ background: var(--bg-secondary);
578
+ cursor: pointer;
579
+ user-select: none;
580
+ font-size: 0.8125rem;
581
+ }
582
+
583
+ .sf-collapsible-header:hover {
584
+ background: var(--bg-tertiary);
585
+ }
586
+
587
+ .sf-chevron {
588
+ font-size: 0.5rem;
589
+ color: var(--text-muted);
590
+ transition: transform 0.15s;
591
+ }
592
+
593
+ .sf-chevron.sf-open {
594
+ transform: rotate(90deg);
595
+ }
596
+
597
+ .sf-collapsible-title {
598
+ font-weight: 500;
599
+ color: var(--text);
600
+ }
601
+
602
+ .sf-badge {
603
+ font-family: "SF Mono", "Fira Code", Consolas, monospace;
604
+ font-size: 0.625rem;
605
+ color: var(--text-muted);
606
+ background: var(--bg);
607
+ padding: 0.0625rem 0.3rem;
608
+ border-radius: 3px;
609
+ margin-left: auto;
610
+ }
611
+
612
+ .sf-collapsible-body {
613
+ padding: 0.5rem;
614
+ border-top: 1px solid var(--border);
615
+ }
616
+
617
+ /* Array fields */
618
+ .sf-array {
619
+ display: flex;
620
+ flex-direction: column;
621
+ gap: 0.375rem;
622
+ }
623
+
624
+ .sf-array-item {
625
+ display: flex;
626
+ gap: 0.375rem;
627
+ align-items: flex-start;
628
+ }
629
+
630
+ .sf-array-item-content {
631
+ flex: 1;
632
+ min-width: 0;
633
+ }
634
+
635
+ .sf-btn {
636
+ font-size: 0.75rem;
637
+ padding: 0.25rem 0.5rem;
638
+ border: 1px solid var(--border);
639
+ border-radius: 3px;
640
+ background: var(--bg-secondary);
641
+ color: var(--text-muted);
642
+ cursor: pointer;
643
+ font-family: inherit;
644
+ transition: background 0.1s, color 0.1s;
645
+ }
646
+
647
+ .sf-btn:hover {
648
+ background: var(--bg-tertiary);
649
+ color: var(--text);
650
+ }
651
+
652
+ .sf-btn-remove {
653
+ color: var(--red);
654
+ font-size: 0.875rem;
655
+ padding: 0.25rem 0.5rem;
656
+ line-height: 1;
657
+ flex-shrink: 0;
658
+ }
659
+
660
+ .sf-btn-remove:hover {
661
+ background: rgba(239,68,68,0.15);
662
+ color: var(--red);
663
+ }
664
+
665
+ .sf-btn-add {
666
+ align-self: flex-start;
667
+ margin-top: 0.125rem;
668
+ }
669
+
670
+ /* Responsive */
671
+ @media (max-width: 768px) {
672
+ .split-panel {
673
+ flex-direction: column;
674
+ height: auto;
675
+ }
676
+
677
+ .split-left {
678
+ width: 100%;
679
+ border-right: none;
680
+ border-bottom: 1px solid var(--border);
681
+ padding-right: 0;
682
+ padding-bottom: 1rem;
683
+ max-height: 200px;
684
+ }
685
+ }
@@ -0,0 +1 @@
1
+ var n=function(t,s,r,e){var u;s[0]=0;for(var h=1;h<s.length;h++){var p=s[h++],a=s[h]?(s[0]|=p?1:2,r[s[h++]]):s[++h];3===p?e[0]=a:4===p?e[1]=Object.assign(e[1]||{},a):5===p?(e[1]=e[1]||{})[s[++h]]=a:6===p?e[1][s[++h]]+=a+"":p?(u=t.apply(a,n(t,a,r,["",null])),e.push(u),a[0]?s[0]|=2:(s[h-2]=0,s[h]=u)):e.push(a)}return e},t=new Map;export default function(s){var r=t.get(this);return r||(r=new Map,t.set(this,r)),(r=n(this,r.get(s)||(r.set(s,r=function(n){for(var t,s,r=1,e="",u="",h=[0],p=function(n){1===r&&(n||(e=e.replace(/^\s*\n\s*|\s*\n\s*$/g,"")))?h.push(0,n,e):3===r&&(n||e)?(h.push(3,n,e),r=2):2===r&&"..."===e&&n?h.push(4,n,0):2===r&&e&&!n?h.push(5,0,!0,e):r>=5&&((e||!n&&5===r)&&(h.push(r,0,e,s),r=6),n&&(h.push(r,n,0,s),r=6)),e=""},a=0;a<n.length;a++){a&&(1===r&&p(),p(a));for(var l=0;l<n[a].length;l++)t=n[a][l],1===r?"<"===t?(p(),h=[h],r=3):e+=t:4===r?"--"===e&&">"===t?(r=1,e=""):e=t+e[0]:u?t===u?u="":e+=t:'"'===t||"'"===t?u=t:">"===t?(p(),r=1):r&&("="===t?(r=5,s=e,e=""):"/"===t&&(r<5||">"===n[a][l+1])?(p(),3===r&&(h=h[0]),r=h,(h=h[0]).push(2,0,r),r=0):" "===t||"\t"===t||"\n"===t||"\r"===t?(p(),r=2):e+=t),3===r&&"!--"===e&&(r=4,h=h[0])}return p(),h}(s)),r),arguments,[])).length>1?r:r[0]}
@@ -0,0 +1,2 @@
1
+ import{options as n}from"preact";var t,r,u,i,o=0,f=[],c=n,e=c.__b,a=c.__r,v=c.diffed,l=c.__c,m=c.unmount,s=c.__;function d(n,t){c.__h&&c.__h(r,n,o||t),o=0;var u=r.__H||(r.__H={__:[],__h:[]});return n>=u.__.length&&u.__.push({}),u.__[n]}function h(n){return o=1,p(D,n)}function p(n,u,i){var o=d(t++,2);if(o.t=n,!o.__c&&(o.__=[i?i(u):D(void 0,u),function(n){var t=o.__N?o.__N[0]:o.__[0],r=o.t(t,n);t!==r&&(o.__N=[r,o.__[1]],o.__c.setState({}))}],o.__c=r,!r.u)){var f=function(n,t,r){if(!o.__c.__H)return!0;var u=o.__c.__H.__.filter(function(n){return!!n.__c});if(u.every(function(n){return!n.__N}))return!c||c.call(this,n,t,r);var i=o.__c.props!==n;return u.forEach(function(n){if(n.__N){var t=n.__[0];n.__=n.__N,n.__N=void 0,t!==n.__[0]&&(i=!0)}}),c&&c.call(this,n,t,r)||i};r.u=!0;var c=r.shouldComponentUpdate,e=r.componentWillUpdate;r.componentWillUpdate=function(n,t,r){if(this.__e){var u=c;c=void 0,f(n,t,r),c=u}e&&e.call(this,n,t,r)},r.shouldComponentUpdate=f}return o.__N||o.__}function y(n,u){var i=d(t++,3);!c.__s&&C(i.__H,u)&&(i.__=n,i.i=u,r.__H.__h.push(i))}function _(n,u){var i=d(t++,4);!c.__s&&C(i.__H,u)&&(i.__=n,i.i=u,r.__h.push(i))}function A(n){return o=5,T(function(){return{current:n}},[])}function F(n,t,r){o=6,_(function(){return"function"==typeof n?(n(t()),function(){return n(null)}):n?(n.current=t(),function(){return n.current=null}):void 0},null==r?r:r.concat(n))}function T(n,r){var u=d(t++,7);return C(u.__H,r)&&(u.__=n(),u.__H=r,u.__h=n),u.__}function q(n,t){return o=8,T(function(){return n},t)}function x(n){var u=r.context[n.__c],i=d(t++,9);return i.c=n,u?(null==i.__&&(i.__=!0,u.sub(r)),u.props.value):n.__}function P(n,t){c.useDebugValue&&c.useDebugValue(t?t(n):n)}function b(n){var u=d(t++,10),i=h();return u.__=n,r.componentDidCatch||(r.componentDidCatch=function(n,t){u.__&&u.__(n,t),i[1](n)}),[i[0],function(){i[1](void 0)}]}function g(){var n=d(t++,11);if(!n.__){for(var u=r.__v;null!==u&&!u.__m&&null!==u.__;)u=u.__;var i=u.__m||(u.__m=[0,0]);n.__="P"+i[0]+"-"+i[1]++}return n.__}function j(){for(var n;n=f.shift();)if(n.__P&&n.__H)try{n.__H.__h.forEach(z),n.__H.__h.forEach(B),n.__H.__h=[]}catch(t){n.__H.__h=[],c.__e(t,n.__v)}}c.__b=function(n){r=null,e&&e(n)},c.__=function(n,t){n&&t.__k&&t.__k.__m&&(n.__m=t.__k.__m),s&&s(n,t)},c.__r=function(n){a&&a(n),t=0;var i=(r=n.__c).__H;i&&(u===r?(i.__h=[],r.__h=[],i.__.forEach(function(n){n.__N&&(n.__=n.__N),n.i=n.__N=void 0})):(i.__h.forEach(z),i.__h.forEach(B),i.__h=[],t=0)),u=r},c.diffed=function(n){v&&v(n);var t=n.__c;t&&t.__H&&(t.__H.__h.length&&(1!==f.push(t)&&i===c.requestAnimationFrame||((i=c.requestAnimationFrame)||w)(j)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.i=void 0})),u=r=null},c.__c=function(n,t){t.some(function(n){try{n.__h.forEach(z),n.__h=n.__h.filter(function(n){return!n.__||B(n)})}catch(r){t.some(function(n){n.__h&&(n.__h=[])}),t=[],c.__e(r,n.__v)}}),l&&l(n,t)},c.unmount=function(n){m&&m(n);var t,r=n.__c;r&&r.__H&&(r.__H.__.forEach(function(n){try{z(n)}catch(n){t=n}}),r.__H=void 0,t&&c.__e(t,r.__v))};var k="function"==typeof requestAnimationFrame;function w(n){var t,r=function(){clearTimeout(u),k&&cancelAnimationFrame(t),setTimeout(n)},u=setTimeout(r,100);k&&(t=requestAnimationFrame(r))}function z(n){var t=r,u=n.__c;"function"==typeof u&&(n.__c=void 0,u()),r=t}function B(n){var t=r;n.__c=n.__(),r=t}function C(n,t){return!n||n.length!==t.length||t.some(function(t,r){return t!==n[r]})}function D(n,t){return"function"==typeof t?t(n):t}export{q as useCallback,x as useContext,P as useDebugValue,y as useEffect,b as useErrorBoundary,g as useId,F as useImperativeHandle,_ as useLayoutEffect,T as useMemo,p as useReducer,A as useRef,h as useState};
2
+ //# sourceMappingURL=hooks.module.js.map