imdhemy-jekyll-theme 1.6.0 → 1.7.1

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e197c5e061c4618d873ce41e27be4cd99bc02739cde544931002224705ca65ff
4
- data.tar.gz: '01580c0b03af4a5baae5eddf89c3ee56c49e46d9a9db24b9f8417e4d6afdb213'
3
+ metadata.gz: 96a8b5ca0409b922853d963a92e25265e8eb75cd60c647681167b4f9db5479bc
4
+ data.tar.gz: c961cb1eb0087a5c130299c27fbf8dfe1924797e3a7cc93bc396f79e49552913
5
5
  SHA512:
6
- metadata.gz: efaab2941f259884f0a1d9bfce30753aef0afdd91c7dc4a25dd52fba4a119c6947e64ae5146ad576a707b632d1c8467f4e505b5bbd561bab5c3ab21719eef607
7
- data.tar.gz: 2fae98563161bb2cb0c43ae31020c8bccee9506694ccb5b861758e134e3fde10342da6c4bb7362d1cfce4d93f8817158ffa517ccc846ba3a1d8347b931ba9a62
6
+ metadata.gz: 3ae0bde31859540b805aa65143e97a954060b9783f9a5145d3f058223ee6fec7e58098d388a7989a7d43e269854fab23ef53ed587e72875a2401f499dbbb642f
7
+ data.tar.gz: 88a2c30e60bba20b181d8ab0e46e77569db3dccb05204e6c4420733acab0a4ab797a4ac860d022fb2d33886a08d40db2a3c35807af70f88ef1f8e86ca16939ab
@@ -1,23 +1,8 @@
1
- {% assign archive_type = page.type | default: page.collection %}
2
- {% assign archive_label = 'archive' %}
3
- {% if archive_type == 'tag' or archive_type == 'tags' %}
4
- {% assign archive_label = 'tag' %}
5
- {% elsif archive_type == 'category' or archive_type == 'categories' %}
6
- {% assign archive_label = 'category' %}
7
- {% endif %}
8
- {% assign archive_description = page.description %}
9
- {% if archive_description == nil or archive_description == empty %}
10
- {% capture archive_description %}Browse all posts filed under {{ archive_label }} {{ page.title }}.{% endcapture %}
11
- {% endif %}
12
1
  <section class="page-header-wrap page-header-wrap--archive">
13
2
  <div class="page-header-wrap__container">
14
3
  <div class="page-header page-header--archive page-header--archive-hub">
15
4
  <div class="page-header__layout page-header__layout--stacked">
16
5
  <h1 class="page-header__title page-header__title--centered">{{ page.title }}</h1>
17
- <p class="page-header__description page-header__description--centered">{{ archive_description }} Check out the <a
18
- class="archive-header__blog-link"
19
- href="{{ site.baseurl }}/blog">blog</a> for all
20
- posts.</p>
21
6
  </div>
22
7
  </div>
23
8
  </div>
@@ -3,7 +3,6 @@
3
3
  <div class="page-header page-header--page page-header--blog">
4
4
  <div class="page-header__layout">
5
5
  <h1 class="page-header__title">{{ page.title }}</h1>
6
- <p class="page-header__description">{{ page.description }} </p>
7
6
  </div>
8
7
  </div>
9
8
  </div>
@@ -1,5 +1,4 @@
1
1
  {% assign reading_minutes = post.content | number_of_words | divided_by: 200 | at_least: 1 %}
2
- {% assign read_article_label = site.theme_text.read_article_label | default: "Read article" %}
3
2
  <article class="post-card{% if post.image %} post-card--with-image{% endif %}">
4
3
  <!-- thumbnail -->
5
4
  {% if post.image %}
@@ -20,13 +19,12 @@
20
19
  href="{{ site.baseurl }}{{ post.url }}">{{
21
20
  post.title }}</a>
22
21
  </h2>
22
+ {% include post-meta.html date=post.date reading_minutes=reading_minutes class_name="post-card__meta post-meta" %}
23
23
  <!-- excerpt -->
24
24
  <div class="post-card__excerpt">
25
25
  {{ post.excerpt | strip_html | truncatewords: 20 }}
26
26
  </div>
27
- {% include post-meta.html date=post.date reading_minutes=reading_minutes class_name="post-card__meta post-meta" %}
28
27
  {% assign tags = post.tags %}
29
28
  {% include post-tags.html %}
30
- <a class="post-card__read-link" href="{{ site.baseurl }}{{ post.url }}" aria-label="{{ read_article_label }}: {{ post.title }}">{{ read_article_label }} &rarr;</a>
31
29
  </div>
32
30
  </article>
@@ -9,7 +9,7 @@
9
9
 
10
10
  <link rel="preconnect" href="https://fonts.googleapis.com">
11
11
  <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
12
- <link href="https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Source+Serif+4:opsz,wght@8..60,400;8..60,500;8..60,700&display=swap"
12
+ <link href="https://fonts.googleapis.com/css2?family=Inter:opsz,wght@14..32,400;14..32,500;14..32,600;14..32,700&display=swap"
13
13
  rel="stylesheet">
14
14
 
15
15
  <link rel="stylesheet" href="{{ '/assets/css/main.css?v=' | append: site.github.build_revision | relative_url }}">
data/_layouts/page.html CHANGED
@@ -10,9 +10,6 @@ layout: default
10
10
  <header class="page-article__header">
11
11
  <div class="page-article__header-layout">
12
12
  <h1 class="page-article__title">{{ page.title }}</h1>
13
- {% if page.description %}
14
- <p class="page-article__description">{{ page.description }}</p>
15
- {% endif %}
16
13
  </div>
17
14
  </header>
18
15
 
data/_layouts/post.html CHANGED
@@ -9,7 +9,7 @@ layout: default
9
9
  {% if site.theme_features.reading_progress != false %}
10
10
  {% include reading-progress.html %}
11
11
  {% endif %}
12
- <article class="post-page">
12
+ <article class="post-page{% if page.image %} post-page--with-image{% endif %}">
13
13
  {% include post-header.html %}
14
14
 
15
15
  {% include content.html %}
@@ -15,7 +15,7 @@ html,
15
15
  line-height: 1.5;
16
16
  -webkit-text-size-adjust: 100%;
17
17
  tab-size: 4;
18
- font-family: "Manrope", "Helvetica Neue", Helvetica, Arial, sans-serif;
18
+ font-family: var(--font-sans);
19
19
  font-feature-settings: normal;
20
20
  font-variation-settings: normal;
21
21
  -webkit-tap-highlight-color: transparent;
@@ -20,5 +20,7 @@ h3,
20
20
  h4,
21
21
  h5,
22
22
  h6 {
23
- font-family: "Source Serif 4", Georgia, Cambria, "Times New Roman", Times, serif;
23
+ font-family: var(--font-sans);
24
+ font-weight: var(--font-weight-medium);
25
+ letter-spacing: var(--font-tracking-normal);
24
26
  }
@@ -114,10 +114,8 @@
114
114
  .site-logo:focus-visible,
115
115
  .post-back-link:focus-visible,
116
116
  .post-card__title-link:focus-visible,
117
- .post-card__read-link:focus-visible,
118
117
  .tag-pill:focus-visible,
119
118
  .pagination-link:focus-visible,
120
- .archive-header__blog-link:focus-visible,
121
119
  .post-series__link:focus-visible,
122
120
  .post-navigation__item:focus-visible,
123
121
  .related-posts__item:focus-visible {
@@ -415,19 +413,19 @@
415
413
 
416
414
  .hero-kicker {
417
415
  margin-bottom: 1rem;
418
- font-size: 0.95rem;
419
- font-weight: 700;
420
- letter-spacing: 0.08em;
416
+ font-size: var(--font-text-sm-size);
417
+ font-weight: var(--font-weight-medium);
418
+ letter-spacing: var(--font-tracking-wide);
421
419
  text-transform: uppercase;
422
420
  color: var(--color-brand);
423
421
  }
424
422
 
425
423
  .hero-title {
426
424
  margin-bottom: 2rem;
427
- font-size: clamp(1.95rem, 4.2vw, 3rem);
428
- font-weight: 700;
429
- line-height: 1.12;
430
- letter-spacing: -0.015em;
425
+ font-size: clamp(var(--font-heading-xl-size), 4.2vw, var(--font-heading-3xl-size));
426
+ font-weight: var(--font-weight-semibold);
427
+ line-height: 1.1;
428
+ letter-spacing: var(--font-tracking-tight);
431
429
  text-wrap: balance;
432
430
  overflow-wrap: break-word;
433
431
  }
@@ -437,8 +435,8 @@
437
435
  }
438
436
 
439
437
  .hero-description {
440
- font-size: 1.125rem;
441
- line-height: 2rem;
438
+ font-size: var(--font-text-lg-size);
439
+ line-height: var(--font-text-lg-line-height);
442
440
  color: var(--color-muted);
443
441
  }
444
442
 
@@ -458,8 +456,8 @@
458
456
  padding: 0.75rem 1.3rem;
459
457
  border-radius: 999px;
460
458
  box-shadow: 0 8px 18px color-mix(in srgb, var(--color-brand) 22%, transparent);
461
- font-size: 1rem;
462
- font-weight: 700;
459
+ font-size: var(--font-text-sm-size);
460
+ font-weight: var(--font-weight-medium);
463
461
  color: #fff;
464
462
  background: var(--color-brand);
465
463
  transition: transform 0.2s ease, background-color 0.2s ease;
@@ -475,8 +473,8 @@
475
473
  padding: 0.75rem 1.3rem;
476
474
  border: 1px solid color-mix(in srgb, var(--color-brand) 35%, #ffffff 65%);
477
475
  border-radius: 999px;
478
- font-size: 1rem;
479
- font-weight: 700;
476
+ font-size: var(--font-text-sm-size);
477
+ font-weight: var(--font-weight-medium);
480
478
  color: var(--color-brand);
481
479
  background: color-mix(in srgb, var(--color-brand) 5%, #ffffff 95%);
482
480
  transition: border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease;
@@ -509,10 +507,10 @@
509
507
  .testimonials__title {
510
508
  margin-bottom: 2rem;
511
509
  text-align: center;
512
- font-size: clamp(1.5rem, 2.8vw, 2rem);
513
- font-weight: 700;
514
- line-height: 1.2;
515
- letter-spacing: -0.01em;
510
+ font-size: clamp(var(--font-heading-lg-size), 2.8vw, var(--font-heading-xl-size));
511
+ font-weight: var(--font-weight-semibold);
512
+ line-height: var(--font-heading-xl-line-height);
513
+ letter-spacing: var(--font-tracking-tight);
516
514
  text-wrap: balance;
517
515
  }
518
516
 
@@ -520,7 +518,8 @@
520
518
  .contributions__subtitle {
521
519
  margin-bottom: 2.25rem;
522
520
  text-align: center;
523
- font-size: 1.5rem;
521
+ font-size: var(--font-text-lg-size);
522
+ line-height: var(--font-text-lg-line-height);
524
523
  color: var(--color-muted);
525
524
  }
526
525
 
@@ -571,13 +570,7 @@
571
570
  border-bottom: 1px solid #e5e7eb;
572
571
  border-radius: 1rem;
573
572
  background: var(--color-surface);
574
- transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
575
- }
576
-
577
- .post-card:hover {
578
- border-color: #c5d0ee;
579
- box-shadow: 0 15px 35px -24px var(--color-shadow);
580
- transform: translateY(-1px);
573
+ transition: border-color 0.2s ease, box-shadow 0.2s ease;
581
574
  }
582
575
 
583
576
  .post-card:focus-within {
@@ -589,7 +582,7 @@
589
582
  position: relative;
590
583
  display: block;
591
584
  width: 100%;
592
- margin-bottom: 1.25rem;
585
+ margin-bottom: 0.5rem;
593
586
  overflow: hidden;
594
587
  border-radius: 0.5rem;
595
588
  aspect-ratio: 1 / 1;
@@ -613,7 +606,7 @@
613
606
  }
614
607
 
615
608
  .post-card__meta {
616
- margin: 0.7rem 0 0.55rem;
609
+ margin: -0.35rem 0 0.75rem;
617
610
  }
618
611
 
619
612
  .post-meta {
@@ -657,8 +650,8 @@
657
650
  padding: 0.25rem 0.6rem;
658
651
  border: 1px solid #d7deef;
659
652
  border-radius: 999px;
660
- font-size: 0.875rem;
661
- font-weight: 600;
653
+ font-size: var(--font-text-sm-size);
654
+ font-weight: var(--font-weight-medium);
662
655
  color: var(--color-muted);
663
656
  background: #f6f8ff;
664
657
  }
@@ -670,12 +663,11 @@
670
663
 
671
664
  .post-card__title {
672
665
  margin-bottom: 0.85rem;
673
- font-family: "Manrope", "Helvetica Neue", Helvetica, Arial, sans-serif;
674
- font-size: 1.875rem;
675
- font-weight: 800;
676
- line-height: 1.2;
677
- letter-spacing: -0.01em;
678
- text-wrap: balance;
666
+ font-family: var(--font-sans);
667
+ font-size: var(--font-heading-lg-size);
668
+ font-weight: var(--font-weight-medium);
669
+ line-height: var(--font-heading-lg-line-height);
670
+ letter-spacing: var(--font-tracking-normal);
679
671
  overflow-wrap: break-word;
680
672
  }
681
673
 
@@ -690,20 +682,20 @@
690
682
 
691
683
  .post-card__excerpt {
692
684
  margin-bottom: 0;
693
- font-size: 1.125rem;
694
- line-height: 1.65;
685
+ font-size: var(--font-text-md-size);
686
+ line-height: var(--font-text-md-line-height);
695
687
  color: var(--color-muted);
696
688
  }
697
689
 
698
690
  .post-card .post-tags {
699
- margin-bottom: 0.95rem;
691
+ margin: 0.9rem 0 0;
700
692
  }
701
693
 
702
- .post-card__read-link {
703
- display: inline-block;
704
- margin-top: 1rem;
705
- font-weight: 700;
706
- color: var(--color-brand);
694
+ .post-card .tag-pill,
695
+ .post-header__tags .tag-pill {
696
+ padding: 0.18rem 0.5rem;
697
+ font-size: 0.78rem;
698
+ line-height: 1.35;
707
699
  }
708
700
 
709
701
  .post-header {
@@ -713,18 +705,17 @@
713
705
  .post-back-link {
714
706
  display: inline-block;
715
707
  margin-bottom: 1rem;
716
- font-size: 0.95rem;
717
- font-weight: 700;
708
+ font-size: var(--font-text-sm-size);
709
+ font-weight: var(--font-weight-medium);
718
710
  color: var(--color-brand);
719
711
  }
720
712
 
721
713
  .post-title {
722
- font-family: "Manrope", "Helvetica Neue", Helvetica, Arial, sans-serif;
723
- font-size: clamp(1.45rem, 3vw, 2.1rem);
724
- font-weight: 900;
725
- line-height: 1.18;
726
- letter-spacing: -0.012em;
727
- text-wrap: balance;
714
+ font-family: var(--font-sans);
715
+ font-size: clamp(var(--font-heading-lg-size), 3vw, var(--font-heading-xl-size));
716
+ font-weight: var(--font-weight-medium);
717
+ line-height: var(--font-heading-xl-line-height);
718
+ letter-spacing: var(--font-tracking-normal);
728
719
  overflow-wrap: break-word;
729
720
  }
730
721
 
@@ -788,9 +779,14 @@
788
779
  }
789
780
 
790
781
  .post-page {
782
+ --post-content-start-space: 1.25rem;
791
783
  padding-top: 1.25rem;
792
784
  }
793
785
 
786
+ .post-page--with-image {
787
+ --post-content-start-space: 0.5rem;
788
+ }
789
+
794
790
  .post-page .post-header,
795
791
  .post-page .content-shell,
796
792
  .post-page .comments-shell__inner,
@@ -810,6 +806,10 @@
810
806
  var(--color-surface);
811
807
  }
812
808
 
809
+ .post-page--with-image .post-header {
810
+ padding-bottom: 0;
811
+ }
812
+
813
813
  .post-page .post-back-link {
814
814
  margin-bottom: 0.95rem;
815
815
  font-size: 0.9rem;
@@ -950,7 +950,7 @@
950
950
 
951
951
  .post-series__item.is-current .post-series__title {
952
952
  color: color-mix(in srgb, var(--color-brand-strong) 35%, var(--color-text) 65%);
953
- font-weight: 800;
953
+ font-weight: var(--font-weight-semibold);
954
954
  }
955
955
 
956
956
  .post-series__item.is-current .post-series__index {
@@ -996,9 +996,9 @@
996
996
 
997
997
  .post-page .post-title {
998
998
  margin-bottom: 0.95rem;
999
- font-size: 1.875rem;
1000
- line-height: 1.2;
1001
- letter-spacing: -0.014em;
999
+ font-size: var(--font-heading-lg-size);
1000
+ line-height: var(--font-heading-lg-line-height);
1001
+ letter-spacing: var(--font-tracking-normal);
1002
1002
  }
1003
1003
 
1004
1004
  .post-page .post-image-wrap {
@@ -1017,7 +1017,7 @@
1017
1017
 
1018
1018
  .post-page .content-shell {
1019
1019
  margin-top: 0;
1020
- padding: 1.25rem 1rem 1.1rem;
1020
+ padding: var(--post-content-start-space) 1rem 1.1rem;
1021
1021
  border: 1px solid color-mix(in srgb, var(--color-border) 84%, #c9d6ff 16%);
1022
1022
  border-top: 0;
1023
1023
  border-radius: 0 0 1rem 1rem;
@@ -1048,8 +1048,9 @@
1048
1048
  .comments-shell__heading {
1049
1049
  display: block;
1050
1050
  margin-bottom: 0.3rem;
1051
- font-size: 1.16rem;
1052
- font-weight: 800;
1051
+ font-size: var(--font-heading-sm-size);
1052
+ font-weight: var(--font-weight-semibold);
1053
+ line-height: var(--font-heading-sm-line-height);
1053
1054
  }
1054
1055
 
1055
1056
  .comments-collapsible {
@@ -1159,23 +1160,14 @@
1159
1160
 
1160
1161
  .page-article__title {
1161
1162
  margin: 0 0 1rem;
1162
- font-size: clamp(1.35rem, 8.2vw, 1.7rem);
1163
- font-weight: 800;
1164
- line-height: 1.2;
1165
- letter-spacing: -0.014em;
1163
+ font-size: clamp(var(--font-heading-md-size), 8.2vw, var(--font-heading-lg-size));
1164
+ font-weight: var(--font-weight-semibold);
1165
+ line-height: var(--font-heading-lg-line-height);
1166
+ letter-spacing: var(--font-tracking-tight);
1166
1167
  text-wrap: balance;
1167
1168
  overflow-wrap: break-word;
1168
1169
  }
1169
1170
 
1170
- .page-article__description {
1171
- max-width: 46rem;
1172
- margin-top: 1rem;
1173
- margin-bottom: 0.3rem;
1174
- font-size: 1.1rem;
1175
- line-height: 1.6;
1176
- color: var(--color-muted);
1177
- }
1178
-
1179
1171
  .page-article .content-shell {
1180
1172
  margin-top: 0;
1181
1173
  padding: 1.35rem 1.25rem 1.2rem;
@@ -1216,7 +1208,7 @@
1216
1208
  .blog-hub .blog-hub__listing,
1217
1209
  .archive-hub .archive-hub__listing {
1218
1210
  margin-top: 0;
1219
- padding: 0.3rem 0.65rem 0.7rem;
1211
+ padding: 0.3rem 0.65rem 0.35rem;
1220
1212
  border: 1px solid color-mix(in srgb, var(--color-border) 84%, #c9d6ff 16%);
1221
1213
  border-top: 0;
1222
1214
  background: #fff;
@@ -1241,20 +1233,12 @@
1241
1233
  }
1242
1234
 
1243
1235
  .blog-hub .pagination-nav {
1244
- margin-top: 0.4rem;
1236
+ margin-top: 0;
1245
1237
  margin-bottom: 0;
1246
1238
  }
1247
1239
 
1248
- .blog-hub .page-header__title,
1249
- .archive-hub .page-header__title {
1250
- margin-bottom: 0.5rem;
1251
- }
1252
-
1253
- .blog-hub .page-header__description,
1254
- .archive-hub .page-header__description {
1255
- max-width: none;
1256
- margin-top: 0.6rem;
1257
- font-size: 1.05rem;
1240
+ .blog-hub__listing .post-card:last-child {
1241
+ margin-bottom: 0;
1258
1242
  }
1259
1243
 
1260
1244
  .page-header-wrap {
@@ -1299,10 +1283,10 @@
1299
1283
 
1300
1284
  .page-header__title {
1301
1285
  margin-bottom: 2rem;
1302
- font-size: clamp(1.65rem, 10vw, 2.25rem);
1303
- font-weight: 700;
1304
- line-height: 1.1;
1305
- letter-spacing: -0.02em;
1286
+ font-size: clamp(var(--font-heading-lg-size), 10vw, var(--font-heading-2xl-size));
1287
+ font-weight: var(--font-weight-semibold);
1288
+ line-height: var(--font-heading-2xl-line-height);
1289
+ letter-spacing: var(--font-tracking-tight);
1306
1290
  text-wrap: balance;
1307
1291
  overflow-wrap: break-word;
1308
1292
  }
@@ -1311,34 +1295,6 @@
1311
1295
  text-align: center;
1312
1296
  }
1313
1297
 
1314
- .page-header__description {
1315
- max-width: 640px;
1316
- font-size: 1.25rem;
1317
- line-height: 1.5;
1318
- color: var(--color-muted);
1319
- }
1320
-
1321
- .page-header__description--centered {
1322
- text-align: center;
1323
- color: var(--color-muted);
1324
- margin-inline: auto;
1325
- }
1326
-
1327
- .archive-header__blog-link {
1328
- font-weight: 700;
1329
- color: var(--color-brand);
1330
- text-decoration: underline;
1331
- text-decoration-thickness: 0.08em;
1332
- text-underline-offset: 0.13em;
1333
- text-decoration-color: color-mix(in srgb, var(--color-brand) 50%, transparent);
1334
- transition: color 0.2s ease, text-decoration-color 0.2s ease;
1335
- }
1336
-
1337
- .archive-header__blog-link:hover {
1338
- color: var(--color-brand-strong);
1339
- text-decoration-color: var(--color-brand-strong);
1340
- }
1341
-
1342
1298
  .pagination-shell {
1343
1299
  padding-inline: 1.25rem;
1344
1300
  }
@@ -1433,7 +1389,6 @@
1433
1389
  }
1434
1390
 
1435
1391
  .primary-button:hover,
1436
- .post-card:hover,
1437
1392
  .post-navigation__item:hover,
1438
1393
  .related-posts__item:hover,
1439
1394
  .post-card__image:hover .post-card__image-el {
@@ -1465,8 +1420,9 @@
1465
1420
 
1466
1421
  .related-posts__heading {
1467
1422
  margin-bottom: 0.85rem;
1468
- font-size: 1.6rem;
1469
- font-weight: 800;
1423
+ font-size: var(--font-heading-lg-size);
1424
+ font-weight: var(--font-weight-semibold);
1425
+ line-height: var(--font-heading-lg-line-height);
1470
1426
  }
1471
1427
 
1472
1428
  .related-posts__meta {
@@ -1541,9 +1497,9 @@
1541
1497
 
1542
1498
  .testimonial-card__name {
1543
1499
  margin-bottom: 0.25rem;
1544
- font-family: "Manrope", "Helvetica Neue", Helvetica, Arial, sans-serif;
1545
- font-size: 1.125rem;
1546
- font-weight: 700;
1500
+ font-family: var(--font-sans);
1501
+ font-size: var(--font-heading-sm-size);
1502
+ font-weight: var(--font-weight-semibold);
1547
1503
  }
1548
1504
 
1549
1505
  .testimonial-card__role {
@@ -1578,9 +1534,11 @@
1578
1534
  }
1579
1535
 
1580
1536
  .social-section__title {
1581
- font-family: "Manrope", "Helvetica Neue", Helvetica, Arial, sans-serif;
1582
- font-size: 3rem;
1583
- font-weight: 700;
1537
+ font-family: var(--font-sans);
1538
+ font-size: var(--font-heading-xl-size);
1539
+ font-weight: var(--font-weight-semibold);
1540
+ line-height: var(--font-heading-xl-line-height);
1541
+ letter-spacing: var(--font-tracking-tight);
1584
1542
  color: #fff;
1585
1543
  }
1586
1544
 
@@ -1666,9 +1624,10 @@
1666
1624
 
1667
1625
  .content {
1668
1626
  color: color-mix(in srgb, var(--color-text) 90%, #1e293b 10%);
1669
- font-family: "Source Serif 4", Georgia, Cambria, "Times New Roman", Times, serif;
1670
- font-size: 1.12rem;
1671
- line-height: 1.8;
1627
+ font-family: var(--font-sans);
1628
+ font-size: var(--font-text-md-size);
1629
+ line-height: var(--font-text-md-line-height);
1630
+ letter-spacing: var(--font-tracking-normal);
1672
1631
 
1673
1632
  p {
1674
1633
  margin-bottom: 1.5rem;
@@ -1688,34 +1647,40 @@
1688
1647
  h6 {
1689
1648
  margin-top: 2.25rem;
1690
1649
  margin-bottom: 1.25rem;
1691
- font-family: "Source Serif 4", Georgia, Cambria, "Times New Roman", Times, serif;
1692
- font-weight: 700;
1693
- line-height: 1.35;
1650
+ font-family: var(--font-sans);
1651
+ font-weight: var(--font-weight-medium);
1652
+ letter-spacing: var(--font-tracking-normal);
1694
1653
  color: var(--color-text);
1695
1654
  }
1696
1655
 
1697
1656
  h1 {
1698
- font-size: 2.2rem;
1657
+ font-size: var(--font-heading-xl-size);
1658
+ line-height: var(--font-heading-xl-line-height);
1699
1659
  }
1700
1660
 
1701
1661
  h2 {
1702
- font-size: 1.95rem;
1662
+ font-size: var(--font-heading-lg-size);
1663
+ line-height: var(--font-heading-lg-line-height);
1703
1664
  }
1704
1665
 
1705
1666
  h3 {
1706
- font-size: 1.6rem;
1667
+ font-size: var(--font-heading-md-size);
1668
+ line-height: var(--font-heading-md-line-height);
1707
1669
  }
1708
1670
 
1709
1671
  h4 {
1710
- font-size: 1.35rem;
1672
+ font-size: var(--font-heading-md-size);
1673
+ line-height: var(--font-heading-md-line-height);
1711
1674
  }
1712
1675
 
1713
1676
  h5 {
1714
- font-size: 1.1rem;
1677
+ font-size: var(--font-heading-sm-size);
1678
+ line-height: var(--font-heading-sm-line-height);
1715
1679
  }
1716
1680
 
1717
1681
  h6 {
1718
- font-size: 1rem;
1682
+ font-size: var(--font-heading-xs-size);
1683
+ line-height: var(--font-heading-xs-line-height);
1719
1684
  }
1720
1685
 
1721
1686
  ul,
@@ -1837,8 +1802,8 @@
1837
1802
  border-left: 4px solid var(--color-brand);
1838
1803
  border-radius: 0.8rem;
1839
1804
  background: color-mix(in srgb, var(--color-brand) 7%, #ffffff 93%);
1840
- font-size: 1.1rem;
1841
- line-height: 1.7;
1805
+ font-size: var(--font-text-md-size);
1806
+ line-height: var(--font-text-md-line-height);
1842
1807
  color: color-mix(in srgb, var(--color-text) 90%, #1e293b 10%);
1843
1808
 
1844
1809
  p:last-child {
@@ -1851,7 +1816,7 @@
1851
1816
  top: 0.55rem;
1852
1817
  right: 0.7rem;
1853
1818
  color: color-mix(in srgb, var(--color-brand) 28%, transparent);
1854
- font-family: "Source Serif 4", Georgia, Cambria, "Times New Roman", Times, serif;
1819
+ font-family: var(--font-sans);
1855
1820
  font-size: 2.4rem;
1856
1821
  line-height: 1;
1857
1822
  content: "\0022";
@@ -1874,8 +1839,8 @@
1874
1839
  border-left: 4px solid var(--admonition-accent);
1875
1840
  border-radius: 0.8rem;
1876
1841
  background: var(--admonition-bg);
1877
- font-size: 1.05rem;
1878
- line-height: 1.65;
1842
+ font-size: var(--font-text-md-size);
1843
+ line-height: var(--font-text-md-line-height);
1879
1844
  color: color-mix(in srgb, var(--color-text) 88%, #1e293b 12%);
1880
1845
 
1881
1846
  p:last-child {
@@ -1893,10 +1858,10 @@
1893
1858
  left: 0.85rem;
1894
1859
  padding: 0.14rem 0.52rem;
1895
1860
  border-radius: 999px;
1896
- font-family: "Manrope", "Helvetica Neue", Helvetica, Arial, sans-serif;
1897
- font-size: 0.72rem;
1898
- font-weight: 800;
1899
- letter-spacing: 0.04em;
1861
+ font-family: var(--font-sans);
1862
+ font-size: var(--font-text-xs-size);
1863
+ font-weight: var(--font-weight-semibold);
1864
+ letter-spacing: var(--font-tracking-wide);
1900
1865
  text-transform: uppercase;
1901
1866
  color: var(--admonition-accent);
1902
1867
  background: color-mix(in srgb, var(--admonition-accent) 10%, #ffffff 90%);
@@ -1941,20 +1906,22 @@
1941
1906
 
1942
1907
  @media (min-width: 421px) {
1943
1908
  .page-header__title {
1944
- font-size: clamp(1.85rem, 9vw, 2.8rem);
1909
+ font-size: clamp(var(--font-heading-xl-size), 9vw, var(--font-heading-3xl-size));
1945
1910
  line-height: 1.08;
1946
1911
  }
1947
1912
 
1948
1913
  .post-card__title {
1949
- font-size: 3rem;
1914
+ font-size: var(--font-heading-lg-size);
1950
1915
  }
1951
1916
 
1952
1917
  .post-page .post-title {
1953
- font-size: 3rem;
1918
+ font-size: var(--font-heading-xl-size);
1919
+ font-weight: var(--font-weight-medium);
1920
+ letter-spacing: var(--font-tracking-normal);
1954
1921
  }
1955
1922
 
1956
1923
  .page-article__title {
1957
- font-size: clamp(1.55rem, 7.2vw, 2.25rem);
1924
+ font-size: clamp(var(--font-heading-lg-size), 7.2vw, var(--font-heading-xl-size));
1958
1925
  }
1959
1926
  }
1960
1927
 
@@ -2002,8 +1969,8 @@
2002
1969
  }
2003
1970
 
2004
1971
  .hero-description {
2005
- font-size: 1.5rem;
2006
- line-height: 2.5rem;
1972
+ font-size: var(--font-text-lg-size);
1973
+ line-height: var(--font-text-lg-line-height);
2007
1974
  }
2008
1975
 
2009
1976
  .latest-posts__inner,
@@ -2025,7 +1992,7 @@
2025
1992
  width: 250px;
2026
1993
  min-width: 250px;
2027
1994
  margin-bottom: 0;
2028
- margin-right: 1.25rem;
1995
+ margin-right: 0.5rem;
2029
1996
  border-radius: 0;
2030
1997
  aspect-ratio: auto;
2031
1998
  }
@@ -2044,21 +2011,27 @@
2044
2011
  }
2045
2012
 
2046
2013
  .post-card__title {
2047
- font-size: 3rem;
2048
- line-height: 1.25;
2014
+ font-size: var(--font-heading-lg-size);
2015
+ line-height: var(--font-heading-lg-line-height);
2049
2016
  }
2050
2017
 
2051
2018
  .post-page .post-header {
2052
2019
  padding: 1.6rem 1.75rem 1.35rem;
2053
2020
  }
2054
2021
 
2022
+ .post-page--with-image .post-header {
2023
+ padding-bottom: 0;
2024
+ }
2025
+
2055
2026
  .post-page .post-title {
2056
- font-size: 3rem;
2057
- line-height: 1.16;
2027
+ font-size: var(--font-heading-2xl-size);
2028
+ line-height: var(--font-heading-2xl-line-height);
2029
+ font-weight: var(--font-weight-medium);
2030
+ letter-spacing: var(--font-tracking-normal);
2058
2031
  }
2059
2032
 
2060
2033
  .post-page .content-shell {
2061
- padding: 2rem 2rem 1.8rem;
2034
+ padding: var(--post-content-start-space) 2rem 1.8rem;
2062
2035
  }
2063
2036
 
2064
2037
  .post-page .comments-shell__inner,
@@ -2072,7 +2045,7 @@
2072
2045
  }
2073
2046
 
2074
2047
  .comments-shell__heading {
2075
- font-size: 1.3rem;
2048
+ font-size: var(--font-heading-sm-size);
2076
2049
  }
2077
2050
 
2078
2051
  .comments-collapsible__icon-wrap,
@@ -2096,8 +2069,8 @@
2096
2069
  }
2097
2070
 
2098
2071
  .page-article__title {
2099
- font-size: clamp(1.9rem, 4.9vw, 3.2rem);
2100
- line-height: 1.16;
2072
+ font-size: clamp(var(--font-heading-xl-size), 4.9vw, var(--font-heading-2xl-size));
2073
+ line-height: var(--font-heading-2xl-line-height);
2101
2074
  }
2102
2075
 
2103
2076
  .page-article .content-shell {
@@ -2111,20 +2084,13 @@
2111
2084
 
2112
2085
  .blog-hub .blog-hub__listing,
2113
2086
  .archive-hub .archive-hub__listing {
2114
- padding: 0.65rem 1.35rem 1.1rem;
2087
+ padding: 0.65rem 1.35rem 0.75rem;
2115
2088
  }
2116
2089
 
2117
2090
  .blog-hub .pagination-shell {
2118
2091
  padding: 0 1.35rem 1.2rem;
2119
2092
  }
2120
2093
 
2121
- .blog-hub .page-header__description,
2122
- .archive-hub .page-header__description {
2123
- max-width: 640px;
2124
- margin-top: 0;
2125
- font-size: 1.25rem;
2126
- }
2127
-
2128
2094
  .page-header__layout {
2129
2095
  display: flex;
2130
2096
  justify-content: space-between;
@@ -2133,7 +2099,7 @@
2133
2099
  }
2134
2100
 
2135
2101
  .page-header__title {
2136
- font-size: clamp(2.05rem, 7vw, 4.2rem);
2102
+ font-size: clamp(var(--font-heading-2xl-size), 7vw, var(--font-heading-4xl-size));
2137
2103
  line-height: 1.05;
2138
2104
  }
2139
2105
 
@@ -2143,8 +2109,8 @@
2143
2109
  }
2144
2110
 
2145
2111
  .content {
2146
- font-size: 1.23rem;
2147
- line-height: 1.9;
2112
+ font-size: var(--font-text-md-size);
2113
+ line-height: var(--font-text-md-line-height);
2148
2114
  }
2149
2115
  }
2150
2116
 
@@ -76,12 +76,7 @@
76
76
 
77
77
  .before\:font-sans::before {
78
78
  content: var(--tw-content);
79
- font-family: "Manrope", "Helvetica Neue", Helvetica, Arial, sans-serif;
80
- }
81
-
82
- .before\:font-serif::before {
83
- content: var(--tw-content);
84
- font-family: "Source Serif 4", Georgia, Cambria, "Times New Roman", Times, serif;
79
+ font-family: var(--font-sans);
85
80
  }
86
81
 
87
82
  .before\:text-\[182px\]::before {
@@ -1,62 +1,62 @@
1
1
  .font-sans {
2
- font-family: "Manrope", "Helvetica Neue", Helvetica, Arial, sans-serif;
2
+ font-family: var(--font-sans);
3
3
  }
4
4
 
5
5
  .font-semibold {
6
- font-weight: 600;
6
+ font-weight: var(--font-weight-semibold);
7
7
  }
8
8
 
9
9
  .font-bold {
10
- font-weight: 700;
10
+ font-weight: var(--font-weight-bold);
11
11
  }
12
12
 
13
13
  .font-black {
14
- font-weight: 900;
14
+ font-weight: var(--font-weight-bold);
15
15
  }
16
16
 
17
17
  .text-xs {
18
- font-size: 0.75rem;
19
- line-height: 1rem;
18
+ font-size: var(--font-text-xs-size);
19
+ line-height: var(--font-text-xs-line-height);
20
20
  }
21
21
 
22
22
  .text-sm {
23
- font-size: 0.875rem;
24
- line-height: 1.25rem;
23
+ font-size: var(--font-text-sm-size);
24
+ line-height: var(--font-text-sm-line-height);
25
25
  }
26
26
 
27
27
  .text-base {
28
- font-size: 1rem;
29
- line-height: 1.5rem;
28
+ font-size: var(--font-text-md-size);
29
+ line-height: var(--font-text-md-line-height);
30
30
  }
31
31
 
32
32
  .text-lg {
33
- font-size: 1.125rem;
34
- line-height: 1.75rem;
33
+ font-size: var(--font-text-lg-size);
34
+ line-height: var(--font-text-lg-line-height);
35
35
  }
36
36
 
37
37
  .text-xl {
38
- font-size: 1.25rem;
39
- line-height: 1.75rem;
38
+ font-size: var(--font-heading-md-size);
39
+ line-height: var(--font-heading-md-line-height);
40
40
  }
41
41
 
42
42
  .text-2xl {
43
- font-size: 1.5rem;
44
- line-height: 2rem;
43
+ font-size: var(--font-heading-lg-size);
44
+ line-height: var(--font-heading-lg-line-height);
45
45
  }
46
46
 
47
47
  .text-3xl {
48
- font-size: 1.875rem;
49
- line-height: 2.25rem;
48
+ font-size: var(--font-heading-xl-size);
49
+ line-height: var(--font-heading-xl-line-height);
50
50
  }
51
51
 
52
52
  .text-5xl {
53
- font-size: 3rem;
54
- line-height: 1;
53
+ font-size: var(--font-heading-3xl-size);
54
+ line-height: var(--font-heading-3xl-line-height);
55
55
  }
56
56
 
57
57
  .text-8xl {
58
- font-size: 6rem;
59
- line-height: 1;
58
+ font-size: var(--font-heading-5xl-size);
59
+ line-height: var(--font-heading-5xl-line-height);
60
60
  }
61
61
 
62
62
  .leading-8 {
data/assets/css/main.scss CHANGED
@@ -7,6 +7,40 @@ sitemap: false
7
7
  @use "style";
8
8
 
9
9
  :root {
10
+ --font-sans: "Inter", ui-sans-serif, system-ui, sans-serif;
11
+ --font-weight-normal: 400;
12
+ --font-weight-medium: 500;
13
+ --font-weight-semibold: 600;
14
+ --font-weight-bold: 700;
15
+ --font-tracking-wide: 0;
16
+ --font-tracking-normal: -0.01em;
17
+ --font-tracking-tight: -0.02em;
18
+ --font-text-xs-size: 0.75rem;
19
+ --font-text-xs-line-height: 1.125rem;
20
+ --font-text-sm-size: 0.875rem;
21
+ --font-text-sm-line-height: 1.25rem;
22
+ --font-text-md-size: 1rem;
23
+ --font-text-md-line-height: 1.5rem;
24
+ --font-text-lg-size: 1.125rem;
25
+ --font-text-lg-line-height: 1.8125rem;
26
+ --font-heading-xs-size: 1rem;
27
+ --font-heading-xs-line-height: 1.5rem;
28
+ --font-heading-sm-size: 1.125rem;
29
+ --font-heading-sm-line-height: 1.625rem;
30
+ --font-heading-md-size: 1.25rem;
31
+ --font-heading-md-line-height: 1.625rem;
32
+ --font-heading-lg-size: 1.5rem;
33
+ --font-heading-lg-line-height: 1.75rem;
34
+ --font-heading-xl-size: 2rem;
35
+ --font-heading-xl-line-height: 2.375rem;
36
+ --font-heading-2xl-size: 2.25rem;
37
+ --font-heading-2xl-line-height: 2.625rem;
38
+ --font-heading-3xl-size: 3rem;
39
+ --font-heading-3xl-line-height: 3rem;
40
+ --font-heading-4xl-size: 3.75rem;
41
+ --font-heading-4xl-line-height: 3.75rem;
42
+ --font-heading-5xl-size: 4.5rem;
43
+ --font-heading-5xl-line-height: 4.5rem;
10
44
  --color-bg: {{ site.theme_style.background | default: "#eef4ff" }};
11
45
  --color-surface: {{ site.theme_style.surface | default: "#ffffff" }};
12
46
  --color-text: {{ site.theme_style.text | default: "#0f172a" }};
@@ -1 +1 @@
1
- (function(){"use strict";let R;const It=()=>{if(typeof window>"u")return new Map;if(!R){const t=window;t.Ionicons=t.Ionicons||{},R=t.Ionicons.map=t.Ionicons.map||new Map}return R},qt=t=>{Object.keys(t).forEach(e=>{tt(e,t[e]);const n=e.replace(/([a-z0-9]|(?=[A-Z]))([A-Z0-9])/g,"$1-$2").toLowerCase();e!==n&&tt(n,t[e])})},tt=(t,e)=>{const n=It(),s=n.get(t);s===void 0?n.set(t,e):s!==e&&console.warn(`[Ionicons Warning]: Multiple icons were mapped to name "${t}". Ensure that multiple icons are not mapped to the same icon name.`)},Ot="ionicons",T={hydratedSelectorName:"hydrated",lazyLoad:!1,updatable:!0};var Pt=Object.defineProperty,zt=(t,e)=>{for(var n in e)Pt(t,n,{get:e[n],enumerable:!0})},S=t=>{if(t.__stencil__getHostRef)return t.__stencil__getHostRef()},Ht=(t,e)=>{const n={$flags$:0,$hostElement$:t,$cmpMeta$:e,$instanceValues$:new Map};n.$onReadyPromise$=new Promise(o=>n.$onReadyResolve$=o),t["s-p"]=[],t["s-rc"]=[];const s=n;return t.__stencil__getHostRef=()=>s,s},et=(t,e)=>e in t,C=(t,e)=>(0,console.error)(t,e),M=new Map,jt="slot-fb{display:contents}slot-fb[hidden]{display:none}",nt="http://www.w3.org/1999/xlink",v=typeof window<"u"?window:{},Ut=v.HTMLElement||class{},m={$flags$:0,$resourcesUrl$:"",jmp:t=>t(),raf:t=>requestAnimationFrame(t),ael:(t,e,n,s)=>t.addEventListener(e,n,s),rel:(t,e,n,s)=>t.removeEventListener(e,n,s),ce:(t,e)=>new CustomEvent(t,e)},Rt=t=>Promise.resolve(t),st=(()=>{try{return new CSSStyleSheet,typeof new CSSStyleSheet().replaceSync=="function"}catch{}return!1})(),B=!1,ot=[],it=[],Bt=(t,e)=>n=>{t.push(n),B||(B=!0,m.raf(at))},rt=t=>{for(let e=0;e<t.length;e++)try{t[e](performance.now())}catch(n){C(n)}t.length=0},at=()=>{rt(ot),rt(it),(B=ot.length>0)&&m.raf(at)},D=t=>Rt().then(t),Dt=Bt(it),Wt=t=>{const e=new URL(t,m.$resourcesUrl$);return e.origin!==v.location.origin?e.href:e.pathname},W=t=>(t=typeof t,t==="object"||t==="function");function Xt(t){var e,n,s;return(s=(n=(e=t.head)==null?void 0:e.querySelector('meta[name="csp-nonce"]'))==null?void 0:n.getAttribute("content"))!=null?s:void 0}var Zt=t=>t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),Ft={};zt(Ft,{err:()=>ct,map:()=>Gt,ok:()=>X,unwrap:()=>Yt,unwrapErr:()=>Kt});var X=t=>({isOk:!0,isErr:!1,value:t}),ct=t=>({isOk:!1,isErr:!0,value:t});function Gt(t,e){if(t.isOk){const n=e(t.value);return n instanceof Promise?n.then(s=>X(s)):X(n)}if(t.isErr){const n=t.value;return ct(n)}throw"should never get here"}var Yt=t=>{if(t.isOk)return t.value;throw t.value},Kt=t=>{if(t.isErr)return t.value;throw t.value};function hn(t){}var I;function Qt(t){var e;const n=this.attachShadow({mode:"open"});I===void 0&&(I=(e=void 0)!=null?e:null),I&&n.adoptedStyleSheets.push(I)}var x=(t,e="")=>()=>{},k=new WeakMap,Jt=(t,e,n)=>{let s=M.get(t);st&&n?(s=s||new CSSStyleSheet,typeof s=="string"?s=e:s.replaceSync(e)):s=e,M.set(t,s)},Nt=(t,e,n)=>{var s;const o=lt(e),i=M.get(o);if(!v.document)return o;if(t=t.nodeType===11?t:v.document,i)if(typeof i=="string"){t=t.head||t;let a=k.get(t),r;if(a||k.set(t,a=new Set),!a.has(o)){{r=v.document.createElement("style"),r.innerHTML=i;const l=(s=m.$nonce$)!=null?s:Xt(v.document);if(l!=null&&r.setAttribute("nonce",l),!(e.$flags$&1))if(t.nodeName==="HEAD"){const c=t.querySelectorAll("link[rel=preconnect]"),d=c.length>0?c[c.length-1].nextSibling:t.querySelector("style");t.insertBefore(r,d?.parentNode===t?d:null)}else if("host"in t)if(st){const c=new CSSStyleSheet;c.replaceSync(i),t.adoptedStyleSheets.unshift(c)}else{const c=t.querySelector("style");c?c.innerHTML=i+c.innerHTML:t.prepend(r)}else t.append(r);e.$flags$&1&&t.insertBefore(r,null)}e.$flags$&4&&(r.innerHTML+=jt),a&&a.add(o)}}else t.adoptedStyleSheets.includes(i)||t.adoptedStyleSheets.push(i);return o},Vt=t=>{const e=t.$cmpMeta$,n=t.$hostElement$,s=e.$flags$,o=x("attachStyles",e.$tagName$),i=Nt(n.shadowRoot?n.shadowRoot:n.getRootNode(),e);s&10&&(n["s-sc"]=i,n.classList.add(i+"-h")),o()},lt=(t,e)=>"sc-"+t.$tagName$,q=(t,e,...n)=>{let s=null,o=null,i=!1,a=!1;const r=[],l=d=>{for(let u=0;u<d.length;u++)s=d[u],Array.isArray(s)?l(s):s!=null&&typeof s!="boolean"&&((i=typeof t!="function"&&!W(s))&&(s=String(s)),i&&a?r[r.length-1].$text$+=s:r.push(i?Z(null,s):s),a=i)};if(l(n),e){e.key&&(o=e.key);{const d=e.className||e.class;d&&(e.class=typeof d!="object"?d:Object.keys(d).filter(u=>d[u]).join(" "))}}const c=Z(t,null);return c.$attrs$=e,r.length>0&&(c.$children$=r),c.$key$=o,c},Z=(t,e)=>{const n={$flags$:0,$tag$:t,$text$:e,$elm$:null,$children$:null};return n.$attrs$=null,n.$key$=null,n},dt={},te=t=>t&&t.$tag$===dt,F=t=>{const e=Zt(t);return new RegExp(`(^|[^@]|@(?!supports\\s+selector\\s*\\([^{]*?${e}))(${e}\\b)`,"g")};F("::slotted"),F(":host"),F(":host-context");var ut=(t,e,n)=>t!=null&&!W(t)?e&4?t==="false"?!1:t===""||!!t:e&1?String(t):t:t,ee=(t,e,n)=>{const s=m.ce(e,n);return t.dispatchEvent(s),s},ft=(t,e,n,s,o,i,a)=>{if(n===s)return;let r=et(t,e),l=e.toLowerCase();if(e==="class"){const c=t.classList,d=ht(n);let u=ht(s);c.remove(...d.filter(f=>f&&!u.includes(f))),c.add(...u.filter(f=>f&&!d.includes(f)))}else if(e==="style"){for(const c in n)(!s||s[c]==null)&&(c.includes("-")?t.style.removeProperty(c):t.style[c]="");for(const c in s)(!n||s[c]!==n[c])&&(c.includes("-")?t.style.setProperty(c,s[c]):t.style[c]=s[c])}else if(e!=="key")if(e==="ref")s&&s(t);else if(!t.__lookupSetter__(e)&&e[0]==="o"&&e[1]==="n"){if(e[2]==="-"?e=e.slice(3):et(v,l)?e=l.slice(2):e=l[2]+e.slice(3),n||s){const c=e.endsWith(pt);e=e.replace(se,""),n&&m.rel(t,e,n,c),s&&m.ael(t,e,s,c)}}else{const c=W(s);if(r||c&&s!==null)try{if(t.tagName.includes("-"))t[e]!==s&&(t[e]=s);else{const u=s??"";e==="list"?r=!1:(n==null||t[e]!=u)&&(typeof t.__lookupSetter__(e)=="function"?t[e]=u:t.setAttribute(e,u))}}catch{}let d=!1;l!==(l=l.replace(/^xlink\:?/,""))&&(e=l,d=!0),s==null||s===!1?(s!==!1||t.getAttribute(e)==="")&&(d?t.removeAttributeNS(nt,e):t.removeAttribute(e)):(!r||i&4||o)&&!c&&t.nodeType===1&&(s=s===!0?"":s,d?t.setAttributeNS(nt,e,s):t.setAttribute(e,s))}},ne=/\s/,ht=t=>(typeof t=="object"&&t&&"baseVal"in t&&(t=t.baseVal),!t||typeof t!="string"?[]:t.split(ne)),pt="Capture",se=new RegExp(pt+"$"),gt=(t,e,n,s)=>{const o=e.$elm$.nodeType===11&&e.$elm$.host?e.$elm$.host:e.$elm$,i=t&&t.$attrs$||{},a=e.$attrs$||{};for(const r of $t(Object.keys(i)))r in a||ft(o,r,i[r],void 0,n,e.$flags$);for(const r of $t(Object.keys(a)))ft(o,r,i[r],a[r],n,e.$flags$)};function $t(t){return t.includes("ref")?[...t.filter(e=>e!=="ref"),"ref"]:t}var G,vt=!1,O=(t,e,n)=>{const s=e.$children$[n];let o=0,i,a;if(s.$text$!==null)i=s.$elm$=v.document.createTextNode(s.$text$);else{if(!v.document)throw new Error("You are trying to render a Stencil component in an environment that doesn't support the DOM. Make sure to populate the [`window`](https://developer.mozilla.org/en-US/docs/Web/API/Window/window) object before rendering a component.");if(i=s.$elm$=v.document.createElement(s.$tag$),gt(null,s,vt),s.$children$)for(o=0;o<s.$children$.length;++o)a=O(t,s,o),a&&i.appendChild(a)}return i["s-hn"]=G,i},yt=(t,e,n,s,o,i)=>{let a=t,r;for(a.shadowRoot&&a.tagName===G&&(a=a.shadowRoot);o<=i;++o)s[o]&&(r=O(null,n,o),r&&(s[o].$elm$=r,z(a,r,e)))},mt=(t,e,n)=>{for(let s=e;s<=n;++s){const o=t[s];if(o){const i=o.$elm$;wt(o),i&&i.remove()}}},oe=(t,e,n,s,o=!1)=>{let i=0,a=0,r=0,l=0,c=e.length-1,d=e[0],u=e[c],f=s.length-1,h=s[0],g=s[f],$,p;for(;i<=c&&a<=f;)if(d==null)d=e[++i];else if(u==null)u=e[--c];else if(h==null)h=s[++a];else if(g==null)g=s[--f];else if(P(d,h,o))E(d,h,o),d=e[++i],h=s[++a];else if(P(u,g,o))E(u,g,o),u=e[--c],g=s[--f];else if(P(d,g,o))E(d,g,o),z(t,d.$elm$,u.$elm$.nextSibling),d=e[++i],g=s[--f];else if(P(u,h,o))E(u,h,o),z(t,u.$elm$,d.$elm$),u=e[--c],h=s[++a];else{for(r=-1,l=i;l<=c;++l)if(e[l]&&e[l].$key$!==null&&e[l].$key$===h.$key$){r=l;break}r>=0?(p=e[r],p.$tag$!==h.$tag$?$=O(e&&e[a],n,r):(E(p,h,o),e[r]=void 0,$=p.$elm$),h=s[++a]):($=O(e&&e[a],n,a),h=s[++a]),$&&z(d.$elm$.parentNode,$,d.$elm$)}i>c?yt(t,s[f+1]==null?null:s[f+1].$elm$,n,s,a,f):a>f&&mt(e,i,c)},P=(t,e,n=!1)=>t.$tag$===e.$tag$?n?(n&&!t.$key$&&e.$key$&&(t.$key$=e.$key$),!0):t.$key$===e.$key$:!1,E=(t,e,n=!1)=>{const s=e.$elm$=t.$elm$,o=t.$children$,i=e.$children$,a=e.$text$;a===null?(gt(t,e,vt),o!==null&&i!==null?oe(s,o,e,i,n):i!==null?(t.$text$!==null&&(s.textContent=""),yt(s,null,e,i,0,i.length-1)):!n&&T.updatable&&o!==null&&mt(o,0,o.length-1)):t.$text$!==a&&(s.data=a)},wt=t=>{t.$attrs$&&t.$attrs$.ref&&t.$attrs$.ref(null),t.$children$&&t.$children$.map(wt)},z=(t,e,n)=>t?.insertBefore(e,n),ie=(t,e,n=!1)=>{const s=t.$hostElement$,o=t.$cmpMeta$,i=t.$vnode$||Z(null,null),r=te(e)?e:q(null,null,e);if(G=s.tagName,o.$attrsToReflect$&&(r.$attrs$=r.$attrs$||{},o.$attrsToReflect$.map(([l,c])=>r.$attrs$[c]=s[l])),n&&r.$attrs$)for(const l of Object.keys(r.$attrs$))s.hasAttribute(l)&&!["key","ref","style","class"].includes(l)&&(r.$attrs$[l]=s[l]);r.$tag$=null,r.$flags$|=4,t.$vnode$=r,r.$elm$=i.$elm$=s.shadowRoot||s,E(i,r,n)},St=(t,e)=>{if(e&&!t.$onRenderResolve$&&e["s-p"]){const n=e["s-p"].push(new Promise(s=>t.$onRenderResolve$=()=>{e["s-p"].splice(n-1,1),s()}))}},Y=(t,e)=>{if(t.$flags$|=16,t.$flags$&4){t.$flags$|=512;return}return St(t,t.$ancestorComponent$),Dt(()=>re(t,e))},re=(t,e)=>{const n=t.$hostElement$,s=x("scheduleUpdate",t.$cmpMeta$.$tagName$),o=n;if(!o)throw new Error(`Can't render component <${n.tagName.toLowerCase()} /> with invalid Stencil runtime! Make sure this imported component is compiled with a \`externalRuntime: true\` flag. For more information, please refer to https://stenciljs.com/docs/custom-elements#externalruntime`);let i;return e?i=A(o,"componentWillLoad",void 0,n):i=A(o,"componentWillUpdate",void 0,n),i=xt(i,()=>A(o,"componentWillRender",void 0,n)),s(),xt(i,()=>ce(t,o,e))},xt=(t,e)=>ae(t)?t.then(e).catch(n=>{console.error(n),e()}):e(),ae=t=>t instanceof Promise||t&&t.then&&typeof t.then=="function",ce=async(t,e,n)=>{var s;const o=t.$hostElement$,i=x("update",t.$cmpMeta$.$tagName$),a=o["s-rc"];n&&Vt(t);const r=x("render",t.$cmpMeta$.$tagName$);le(t,e,o,n),a&&(a.map(l=>l()),o["s-rc"]=void 0),r(),i();{const l=(s=o["s-p"])!=null?s:[],c=()=>de(t);l.length===0?c():(Promise.all(l).then(c),t.$flags$|=4,l.length=0)}},le=(t,e,n,s)=>{try{e=e.render(),t.$flags$&=-17,t.$flags$|=2,ie(t,e,s)}catch(o){C(o,t.$hostElement$)}return null},de=t=>{const e=t.$cmpMeta$.$tagName$,n=t.$hostElement$,s=x("postUpdate",e),o=n,i=t.$ancestorComponent$;A(o,"componentDidRender",void 0,n),t.$flags$&64?(A(o,"componentDidUpdate",void 0,n),s()):(t.$flags$|=64,fe(n),A(o,"componentDidLoad",void 0,n),s(),t.$onReadyResolve$(n),i||ue()),t.$onRenderResolve$&&(t.$onRenderResolve$(),t.$onRenderResolve$=void 0),t.$flags$&512&&D(()=>Y(t,!1)),t.$flags$&=-517},ue=t=>{D(()=>ee(v,"appload",{detail:{namespace:Ot}}))},A=(t,e,n,s)=>{if(t&&t[e])try{return t[e](n)}catch(o){C(o,s)}},fe=t=>{var e;return t.classList.add((e=T.hydratedSelectorName)!=null?e:"hydrated")},he=(t,e)=>S(t).$instanceValues$.get(e),bt=(t,e,n,s)=>{const o=S(t),i=t,a=o.$instanceValues$.get(e),r=o.$flags$,l=i;n=ut(n,s.$members$[e][0]);const c=Number.isNaN(a)&&Number.isNaN(n);if(n!==a&&!c){o.$instanceValues$.set(e,n);{if(s.$watchers$&&r&128){const u=s.$watchers$[e];u&&u.map(f=>{try{l[f](n,a,e)}catch(h){C(h,i)}})}if((r&18)===2){if(l.componentShouldUpdate&&l.componentShouldUpdate(n,a,e)===!1)return;Y(o,!1)}}}},pe=(t,e,n)=>{var s,o;const i=t.prototype;if(e.$members$||e.$watchers$||t.watchers){t.watchers&&!e.$watchers$&&(e.$watchers$=t.watchers);const a=Object.entries((s=e.$members$)!=null?s:{});a.map(([r,[l]])=>{if(l&31||l&32){const{get:c,set:d}=Object.getOwnPropertyDescriptor(i,r)||{};c&&(e.$members$[r][0]|=2048),d&&(e.$members$[r][0]|=4096),Object.defineProperty(i,r,{get(){return c?c.apply(this):he(this,r)},configurable:!0,enumerable:!0}),Object.defineProperty(i,r,{set(u){const f=S(this);if(d){const h=l&32?this[r]:f.$hostElement$[r];typeof h>"u"&&f.$instanceValues$.get(r)?u=f.$instanceValues$.get(r):!f.$instanceValues$.get(r)&&h&&f.$instanceValues$.set(r,h),d.apply(this,[ut(u,l)]),u=l&32?this[r]:f.$hostElement$[r],bt(this,r,u,e);return}{bt(this,r,u,e);return}}})}});{const r=new Map;i.attributeChangedCallback=function(l,c,d){m.jmp(()=>{var u;const f=r.get(l);if(!(this.hasOwnProperty(f)&&T.lazyLoad)){if(i.hasOwnProperty(f)&&typeof this[f]=="number"&&this[f]==d)return;if(f==null){const g=S(this),$=g?.$flags$;if($&&!($&8)&&$&128&&d!==c){const y=this,b=(u=e.$watchers$)==null?void 0:u[l];b?.forEach(Mt=>{y[Mt]!=null&&y[Mt].call(y,d,c,l)})}return}}const h=Object.getOwnPropertyDescriptor(i,f);d=d===null&&typeof this[f]=="boolean"?!1:d,d!==this[f]&&(!h.get||h.set)&&(this[f]=d)})},t.observedAttributes=Array.from(new Set([...Object.keys((o=e.$watchers$)!=null?o:{}),...a.filter(([l,c])=>c[0]&15).map(([l,c])=>{var d;const u=c[1]||l;return r.set(u,l),c[0]&512&&((d=e.$attrsToReflect$)==null||d.push([l,u])),u})]))}}return t},kt=async(t,e,n,s)=>{let o;if((e.$flags$&32)===0){e.$flags$|=32;{o=t.constructor;const r=t.localName;customElements.whenDefined(r).then(()=>e.$flags$|=128)}if(o&&o.style){let r;typeof o.style=="string"&&(r=o.style);const l=lt(n);if(!M.has(l)){const c=x("registerStyles",n.$tagName$);Jt(l,r,!!(n.$flags$&1)),c()}}}const i=e.$ancestorComponent$,a=()=>Y(e,!0);i&&i["s-rc"]?i["s-rc"].push(a):a()},ge=(t,e)=>{},$e=t=>{{const e=S(t),n=e.$cmpMeta$,s=x("connectedCallback",n.$tagName$);if(e.$flags$&1)e?.$lazyInstance$||e?.$onReadyPromise$&&e.$onReadyPromise$.then(()=>ge());else{e.$flags$|=1;{let o=t;for(;o=o.parentNode||o.host;)if(o["s-p"]){St(e,e.$ancestorComponent$=o);break}}n.$members$&&Object.entries(n.$members$).map(([o,[i]])=>{if(i&31&&t.hasOwnProperty(o)){const a=t[o];delete t[o],t[o]=a}}),T.initializeNextTick?D(()=>kt(t,e,n)):kt(t,e,n)}s()}},ve=async t=>{S(t),k.has(t)&&k.delete(t),t.shadowRoot&&k.has(t.shadowRoot)&&k.delete(t.shadowRoot)},ye=(t,e)=>{const n={$flags$:e[0],$tagName$:e[1]};n.$members$=e[2],n.$watchers$=t.$watchers$,n.$attrsToReflect$=[];const s=t.prototype.connectedCallback,o=t.prototype.disconnectedCallback;return Object.assign(t.prototype,{__hasHostListenerAttached:!1,__registerHost(){Ht(this,n)},connectedCallback(){this.__hasHostListenerAttached||(S(this),this.__hasHostListenerAttached=!0),$e(this),s&&s.call(this)},disconnectedCallback(){ve(this),o&&o.call(this)},__attachShadow(){if(!this.shadowRoot)Qt.call(this,n);else if(this.shadowRoot.mode!=="open")throw new Error(`Unable to re-use existing shadow root for ${n.$tagName$}! Mode is set to ${this.shadowRoot.mode} but Stencil only supports open shadow roots.`)}}),t.is=n.$tagName$,pe(t,n)};let K;const me=()=>{if(typeof window>"u")return new Map;if(!K){const t=window;t.Ionicons=t.Ionicons||{},K=t.Ionicons.map=t.Ionicons.map||new Map}return K},we=t=>{let e=Q(t.src);return e||(e=Et(t.name,t.icon,t.mode,t.ios,t.md),e?Se(e,t):t.icon&&(e=Q(t.icon),e||(e=Q(t.icon[t.mode]),e))?e:null)},Se=(t,e)=>{const n=me().get(t);if(n)return n;try{return Wt(`svg/${t}.svg`)}catch(s){console.log("e",s),console.warn(`[Ionicons Warning]: Could not load icon with name "${t}". Ensure that the icon is registered using addIcons or that the icon SVG data is passed directly to the icon component.`,e)}},Et=(t,e,n,s,o)=>(n=(n&&j(n))==="ios"?"ios":"md",s&&n==="ios"?t=j(s):o&&n==="md"?t=j(o):(!t&&e&&!At(e)&&(t=e),H(t)&&(t=j(t))),!H(t)||t.trim()===""||t.replace(/[a-z]|-|\d/gi,"")!==""?null:t),Q=t=>H(t)&&(t=t.trim(),At(t))?t:null,At=t=>t.length>0&&/(\/|\.)/.test(t),H=t=>typeof t=="string",j=t=>t.toLowerCase(),xe=(t,e=[])=>{const n={};return e.forEach(s=>{t.hasAttribute(s)&&(t.getAttribute(s)!==null&&(n[s]=t.getAttribute(s)),t.removeAttribute(s))}),n},be=t=>t&&t.dir!==""?t.dir.toLowerCase()==="rtl":document?.dir.toLowerCase()==="rtl",ke=t=>{const e=document.createElement("div");e.innerHTML=t;for(let s=e.childNodes.length-1;s>=0;s--)e.childNodes[s].nodeName.toLowerCase()!=="svg"&&e.removeChild(e.childNodes[s]);const n=e.firstElementChild;if(n&&n.nodeName.toLowerCase()==="svg"){const s=n.getAttribute("class")||"";if(n.setAttribute("class",(s+" s-ion-icon").trim()),_t(n))return e.innerHTML}return""},_t=t=>{if(t.nodeType===1){if(t.nodeName.toLowerCase()==="script")return!1;for(let e=0;e<t.attributes.length;e++){const n=t.attributes[e].name;if(H(n)&&n.toLowerCase().indexOf("on")===0)return!1}for(let e=0;e<t.childNodes.length;e++)if(!_t(t.childNodes[e]))return!1}return!0},Ee=t=>t.startsWith("data:image/svg+xml"),Ae=t=>t.indexOf(";utf8,")!==-1,_=new Map,Lt=new Map;let J;function N(t){return _.set(t,""),""}const _e=(t,e)=>{const n=Lt.get(t);return n||(typeof fetch<"u"&&typeof document<"u"?Ee(t)&&Ae(t)?Promise.resolve(Le(t)):Te(t,e):Promise.resolve(N(t)))};function Le(t){J||(J=new DOMParser);const n=J.parseFromString(t,"text/html").querySelector("svg");if(n)return _.set(t,n.outerHTML),n.outerHTML;throw new Error(`Could not parse svg from ${t}`)}function Te(t,e){const n=fetch(t).then(s=>s.text().then(o=>{o&&e!==!1&&(o=ke(o));const i=o||"";return _.set(t,i),i}).catch(()=>N(t))).catch(()=>N(t));return Lt.set(t,n),n}const Ce=":host{display:inline-block;width:1em;height:1em;contain:strict;fill:currentColor;box-sizing:content-box !important}:host .ionicon{stroke:currentColor}.ionicon-fill-none{fill:none}.ionicon-stroke-width{stroke-width:var(--ionicon-stroke-width, 32px)}.icon-inner,.ionicon,svg{display:block;height:100%;width:100%}@supports (background: -webkit-named-image(i)){:host(.icon-rtl) .icon-inner{transform:scaleX(-1)}}@supports not selector(:dir(rtl)) and selector(:host-context([dir='rtl'])){:host(.icon-rtl) .icon-inner{transform:scaleX(-1)}}:host(.flip-rtl):host-context([dir='rtl']) .icon-inner{transform:scaleX(-1)}@supports selector(:dir(rtl)){:host(.flip-rtl:dir(rtl)) .icon-inner{transform:scaleX(-1)}:host(.flip-rtl:dir(ltr)) .icon-inner{transform:scaleX(1)}}:host(.icon-small){font-size:1.125rem !important}:host(.icon-large){font-size:2rem !important}:host(.ion-color){color:var(--ion-color-base) !important}:host(.ion-color-primary){--ion-color-base:var(--ion-color-primary, #3880ff)}:host(.ion-color-secondary){--ion-color-base:var(--ion-color-secondary, #0cd1e8)}:host(.ion-color-tertiary){--ion-color-base:var(--ion-color-tertiary, #f4a942)}:host(.ion-color-success){--ion-color-base:var(--ion-color-success, #10dc60)}:host(.ion-color-warning){--ion-color-base:var(--ion-color-warning, #ffce00)}:host(.ion-color-danger){--ion-color-base:var(--ion-color-danger, #f14141)}:host(.ion-color-light){--ion-color-base:var(--ion-color-light, #f4f5f8)}:host(.ion-color-medium){--ion-color-base:var(--ion-color-medium, #989aa2)}:host(.ion-color-dark){--ion-color-base:var(--ion-color-dark, #222428)}",Me=ye(class extends Ut{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.iconName=null,this.inheritedAttributes={},this.didLoadIcon=!1,this.isVisible=!1,this.mode=Ie(),this.lazy=!1,this.sanitize=!0}componentWillLoad(){this.inheritedAttributes=xe(this.el,["aria-label"])}connectedCallback(){this.waitUntilVisible(this.el,"50px",()=>{this.isVisible=!0,this.loadIcon()})}componentDidLoad(){this.didLoadIcon||this.loadIcon()}disconnectedCallback(){this.io&&(this.io.disconnect(),this.io=void 0)}waitUntilVisible(e,n,s){if(!!!(this.lazy&&typeof window<"u"&&window.IntersectionObserver))return s();const i=this.io=new window.IntersectionObserver(a=>{a[0].isIntersecting&&(i.disconnect(),this.io=void 0,s())},{rootMargin:n});i.observe(e)}loadIcon(){if(this.isVisible){const e=we(this);e&&(_.has(e)?this.svgContent=_.get(e):_e(e,this.sanitize).then(()=>this.svgContent=_.get(e)),this.didLoadIcon=!0)}this.iconName=Et(this.name,this.icon,this.mode,this.ios,this.md)}render(){const{flipRtl:e,iconName:n,inheritedAttributes:s,el:o}=this,i=this.mode||"md",a=n?(n.includes("arrow")||n.includes("chevron"))&&e!==!1:!1,r=e||a;return q(dt,Object.assign({key:"0578c899781ca145dd8205acd9670af39b57cf2e",role:"img",class:Object.assign(Object.assign({[i]:!0},qe(this.color)),{[`icon-${this.size}`]:!!this.size,"flip-rtl":r,"icon-rtl":r&&be(o)})},s),this.svgContent?q("div",{class:"icon-inner",innerHTML:this.svgContent}):q("div",{class:"icon-inner"}))}static get assetsDirs(){return["svg"]}get el(){return this}static get watchers(){return{name:["loadIcon"],src:["loadIcon"],icon:["loadIcon"],ios:["loadIcon"],md:["loadIcon"]}}static get style(){return Ce}},[1,"ion-icon",{mode:[1025],color:[1],ios:[1],md:[1],flipRtl:[4,"flip-rtl"],name:[513],src:[1],icon:[8],size:[1],lazy:[4],sanitize:[4],svgContent:[32],isVisible:[32]},void 0,{name:["loadIcon"],src:["loadIcon"],icon:["loadIcon"],ios:["loadIcon"],md:["loadIcon"]}]),Ie=()=>typeof document<"u"&&document.documentElement.getAttribute("mode")||"md",qe=t=>t?{"ion-color":!0,[`ion-color-${t}`]:!0}:null;function Oe(){if(typeof customElements>"u")return;["ion-icon"].forEach(e=>{e==="ion-icon"&&(customElements.get(e)||customElements.define(e,Me))})}const Pe=Oe,ze="data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='ionicon'><path d='m112 184 144 144 144-144' stroke-linecap='round' stroke-linejoin='round' stroke-width='48px' class='ionicon-fill-none'/></svg>",He="data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='ionicon'><path d='m289.94 256 95-95A24 24 0 0 0 351 127l-95 95-95-95a24 24 0 0 0-34 34l95 95-95 95a24 24 0 1 0 34 34l95-95 95 95a24 24 0 0 0 34-34Z'/></svg>",je="data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='ionicon'><path d='M256 32C132.3 32 32 134.9 32 261.7c0 101.5 64.2 187.5 153.2 217.9a17.6 17.6 0 0 0 3.8.4c8.3 0 11.5-6.1 11.5-11.4 0-5.5-.2-19.9-.3-39.1a102.4 102.4 0 0 1-22.6 2.7c-43.1 0-52.9-33.5-52.9-33.5-10.2-26.5-24.9-33.6-24.9-33.6-19.5-13.7-.1-14.1 1.4-14.1h.1c22.5 2 34.3 23.8 34.3 23.8 11.2 19.6 26.2 25.1 39.6 25.1a63 63 0 0 0 25.6-6c2-14.8 7.8-24.9 14.2-30.7-49.7-5.8-102-25.5-102-113.5 0-25.1 8.7-45.6 23-61.6-2.3-5.8-10-29.2 2.2-60.8a18.6 18.6 0 0 1 5-.5c8.1 0 26.4 3.1 56.6 24.1a208.2 208.2 0 0 1 112.2 0c30.2-21 48.5-24.1 56.6-24.1a18.6 18.6 0 0 1 5 .5c12.2 31.6 4.5 55 2.2 60.8 14.3 16.1 23 36.6 23 61.6 0 88.2-52.4 107.6-102.3 113.3 8 7.1 15.2 21.1 15.2 42.5 0 30.7-.3 55.5-.3 63 0 5.4 3.1 11.5 11.4 11.5a19.4 19.4 0 0 0 4-.4C415.9 449.2 480 363.1 480 261.7 480 134.9 379.7 32 256 32'/></svg>",Ue="data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='ionicon'><path d='M444.17 32H70.28C49.85 32 32 46.7 32 66.89v374.72C32 461.91 49.85 480 70.28 480h373.78c20.54 0 35.94-18.21 35.94-38.39V66.89C480.12 46.7 464.6 32 444.17 32m-273.3 373.43h-64.18V205.88h64.18ZM141 175.54h-.46c-20.54 0-33.84-15.29-33.84-34.43 0-19.49 13.65-34.42 34.65-34.42s33.85 14.82 34.31 34.42c-.01 19.14-13.31 34.43-34.66 34.43m264.43 229.89h-64.18V296.32c0-26.14-9.34-44-32.56-44-17.74 0-28.24 12-32.91 23.69-1.75 4.2-2.22 9.92-2.22 15.76v113.66h-64.18V205.88h64.18v27.77c9.34-13.3 23.93-32.44 57.88-32.44 42.13 0 74 27.77 74 87.64Z'/></svg>",Re="data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='ionicon'><path d='M496 109.5a201.8 201.8 0 0 1-56.55 15.3 97.5 97.5 0 0 0 43.33-53.6 197.7 197.7 0 0 1-62.56 23.5A99.14 99.14 0 0 0 348.31 64c-54.42 0-98.46 43.4-98.46 96.9a93.2 93.2 0 0 0 2.54 22.1 280.7 280.7 0 0 1-203-101.3A95.7 95.7 0 0 0 36 130.4c0 33.6 17.53 63.3 44 80.7A97.5 97.5 0 0 1 35.22 199v1.2c0 47 34 86.1 79 95a100.8 100.8 0 0 1-25.94 3.4 94.4 94.4 0 0 1-18.51-1.8c12.51 38.5 48.92 66.5 92.05 67.3A199.6 199.6 0 0 1 39.5 405.6a203 203 0 0 1-23.5-1.4A278.7 278.7 0 0 0 166.74 448c181.36 0 280.44-147.7 280.44-275.8 0-4.2-.11-8.4-.31-12.5A198.5 198.5 0 0 0 496 109.5'/></svg>",Be="data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='ionicon'><path d='M508.64 148.79c0-45-33.1-81.2-74-81.2C379.24 65 322.74 64 265 64h-18c-57.6 0-114.2 1-169.6 3.6C36.6 67.6 3.5 104 3.5 149 1 184.59-.06 220.19 0 255.79q-.15 53.4 3.4 106.9c0 45 33.1 81.5 73.9 81.5 58.2 2.7 117.9 3.9 178.6 3.8q91.2.3 178.6-3.8c40.9 0 74-36.5 74-81.5 2.4-35.7 3.5-71.3 3.4-107q.34-53.4-3.26-106.9M207 353.89v-196.5l145 98.2Z'/></svg>",De="data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='ionicon'><path d='M80 160h352M80 256h352M80 352h352' stroke-linecap='round' stroke-miterlimit='10' class='ionicon-fill-none ionicon-stroke-width'/></svg>",We="data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='ionicon'><path d='M221.09 64a157.09 157.09 0 1 0 157.09 157.09A157.1 157.1 0 0 0 221.09 64Z' stroke-miterlimit='10' class='ionicon-fill-none ionicon-stroke-width'/><path d='M338.29 338.29 448 448' stroke-linecap='round' stroke-miterlimit='10' class='ionicon-fill-none ionicon-stroke-width'/></svg>",Xe="data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='ionicon'><path d='M256 64C150 64 64 150 64 256s86 192 192 192 192-86 192-192S362 64 256 64Z' stroke-miterlimit='10' class='ionicon-fill-none ionicon-stroke-width'/><path d='M256 128v144h96' stroke-linecap='round' stroke-linejoin='round' class='ionicon-fill-none ionicon-stroke-width'/></svg>",Ze="menu-outline",Fe="close",Ge=()=>{const t=document.querySelector(".site-header__toggle");if(!t)return;const e=document.querySelector(t.dataset.target);if(!e)return;const n=t.querySelector(".sr-only"),s=t.dataset.openLabel||"Open navigation menu",o=t.dataset.closeLabel||"Close navigation menu",i=r=>{t.setAttribute("aria-expanded",r?"true":"false"),t.setAttribute("aria-label",r?o:s),n&&(n.textContent=r?o:s);const l=t.querySelector("ion-icon");l&&(l.name=r?Fe:Ze),e.hidden=!r,e.classList.toggle("is-hidden",!r)},a=()=>{e.hidden||i(!1)};i(!1),t.addEventListener("click",()=>{const l=!(t.getAttribute("aria-expanded")==="true");if(i(l),l){const c=e.querySelector('a, button, input, [tabindex]:not([tabindex="-1"])');c&&c.focus();return}t.focus()}),document.addEventListener("click",r=>{const l=e.contains(r.target),c=t.contains(r.target);!l&&!c&&a()}),document.addEventListener("keydown",r=>{if(r.key==="Escape"){const l=!e.hidden;a(),l&&t.focus()}})},Ye={category:"data-category",categoryId:"data-category-id",emitMetadata:"data-emit-metadata",inputPosition:"data-input-position",lang:"data-lang",loading:"data-loading",mapping:"data-mapping",reactionsEnabled:"data-reactions-enabled",repo:"data-repo",repoId:"data-repo-id",strict:"data-strict",term:"data-term",theme:"data-theme"},Ke=t=>{if(!t||t.dataset.giscusLoaded==="true")return;const e=document.createElement("script");e.src=t.dataset.giscusScriptSrc||"https://giscus.app/client.js",e.async=!0,e.crossOrigin="anonymous";for(const[n,s]of Object.entries(Ye)){const o=t.dataset[`giscus${n.charAt(0).toUpperCase()}${n.slice(1)}`];o&&e.setAttribute(s,o)}t.append(e),t.dataset.giscusLoaded="true"},Qe=()=>{const t=document.querySelectorAll("[data-comments-collapsible]");t.length&&t.forEach(e=>{const n=e.querySelector("[data-comments-toggle]"),s=e.querySelector("[data-comments-panel]"),o=e.querySelector("[data-giscus-mount]");!n||!s||!o||n.addEventListener("click",()=>{const a=!(n.getAttribute("aria-expanded")==="true");n.setAttribute("aria-expanded",a?"true":"false"),e.classList.toggle("is-open",a),s.hidden=!a,a&&Ke(o)})})},Je=()=>{const t=document.querySelector("#main-header");if(!t)return;const e=()=>{if(window.scrollY>8){t.classList.add("is-scrolled");return}t.classList.remove("is-scrolled")};e(),window.addEventListener("scroll",e,{passive:!0})},Ne=()=>{const t=document.querySelectorAll("[data-series-collapsible]");t.length&&t.forEach(e=>{const n=e.querySelector("[data-series-toggle]"),s=e.querySelector("[data-series-panel]");if(!n||!s)return;const o=()=>{const a=n.getAttribute("aria-expanded")==="true";e.classList.toggle("is-open",a),s.hidden=!a};o(),n.addEventListener("click",()=>{const a=n.getAttribute("aria-expanded")==="true";n.setAttribute("aria-expanded",a?"false":"true"),o()});const i=e.querySelectorAll("[data-series-overflow-toggle]");i.length&&i.forEach(a=>{a.addEventListener("click",()=>{const r=a.dataset.seriesOverflowGroup,l=r?`[data-series-overflow-item][data-series-overflow-group="${r}"]`:"[data-series-overflow-item]";e.querySelectorAll(l).forEach(d=>{d.hidden=!1}),a.setAttribute("aria-expanded","true"),a.hidden=!0})})})},Ve=()=>{const t=document.querySelector("[data-reading-progress]"),e=document.querySelector(".content");if(!t||!e)return;const n=()=>{const s=e.offsetTop,o=e.offsetHeight,i=window.innerHeight,a=window.scrollY,r=Math.max(o-i,1),c=Math.min(Math.max(a-s,0),r)/r*100;t.style.transform=`scaleX(${c/100})`};n(),window.addEventListener("scroll",n,{passive:!0}),window.addEventListener("resize",n)},tn="[data-search-root]";let U;const w=t=>(t||"").toString().normalize("NFKD").replace(/[\u0300-\u036f]/g,"").toLowerCase().replace(/[^a-z0-9\s-]/g," ").replace(/\s+/g," ").trim(),en=t=>w(t).split(" ").filter(e=>e.length>0),nn=t=>[...new Set(en(t))],sn=(t,e)=>{const n=t.date?Date.parse(t.date):0,s=e.date?Date.parse(e.date):0;return Number.isNaN(n)||Number.isNaN(s)?0:s-n},on=t=>{const e=t.title||"",n=t.content||"",s=Array.isArray(t.tags)?t.tags:[],o=Array.isArray(t.categories)?t.categories:[];return{...t,title:e,content:n,tags:s,categories:o,normalizedTitle:w(e),normalizedContent:w(n),normalizedTags:s.map(w).filter(Boolean),normalizedCategories:o.map(w).filter(Boolean)}},rn=async t=>(U||(U=fetch(t,{headers:{Accept:"application/json"}}).then(e=>{if(!e.ok)throw new Error(`Search index request failed with ${e.status}`);return e.json()}).then(e=>e.map(on)).catch(e=>{throw U=void 0,e})),U),an=(t,e,n)=>{let s=0;t.normalizedTitle.includes(e)&&(s+=140),t.normalizedContent.includes(e)&&(s+=30),n.forEach(i=>{t.normalizedTitle.includes(i)&&(s+=60),t.normalizedTags.some(a=>a.includes(i))&&(s+=30),t.normalizedCategories.some(a=>a.includes(i))&&(s+=18),t.normalizedContent.includes(i)&&(s+=10)});const o=n.filter(i=>t.normalizedTitle.includes(i)||t.normalizedTags.some(a=>a.includes(i))||t.normalizedCategories.some(a=>a.includes(i))||t.normalizedContent.includes(i)).length;return o===0?0:(o===n.length&&(s+=24),t.type==="post"&&(s+=4),s)},cn=(t,e,n)=>{const s=w(e),o=nn(e);return!s||o.length===0?[]:t.map(i=>({searchDocument:i,score:an(i,s,o)})).filter(i=>i.score>0).sort((i,a)=>a.score-i.score||sn(i.searchDocument,a.searchDocument)).slice(0,n).map(i=>i.searchDocument)},ln=(t,e,n)=>{const s=t.replace(/\s+/g," ").trim();if(!s)return"";const o=w(e),a=w(s).indexOf(o);if(a===-1)return s.length>n?`${s.slice(0,n).trimEnd()}...`:s;const r=Math.max(a-Math.floor(n/3),0),l=Math.min(r+n,s.length),c=r>0?"...":"",d=l<s.length?"...":"";return`${c}${s.slice(r,l).trim()}${d}`},dn=t=>{const e=[];return t.type&&e.push(t.type==="post"?"Post":"Page"),t.tags.length>0&&e.push(t.tags.slice(0,2).join(", ")),e.join(" • ")},Tt=(t,e,n,s)=>{const o=t.querySelector("[data-search-results]"),i=t.querySelector("[data-search-status]");o.innerHTML="",i.textContent=s,e.forEach(a=>{const r=window.document.createElement("li");r.className="site-search__result-item";const l=window.document.createElement("a");l.className="site-search__result-link",l.href=a.url;const c=window.document.createElement("span");c.className="site-search__result-title",c.textContent=a.title,l.append(c);const d=dn(a);if(d){const h=window.document.createElement("span");h.className="site-search__result-meta",h.textContent=d,l.append(h)}const u=Number(t.dataset.searchContentPreviewLength||"140"),f=ln(a.content,n,u);if(f){const h=window.document.createElement("span");h.className="site-search__result-snippet",h.textContent=f,l.append(h)}r.append(l),o.append(r)})},Ct=t=>{const e=t.querySelector("[data-search-panel]"),n=t.querySelector("[data-search-input]");e.hidden=!1,n.setAttribute("aria-expanded","true"),e.setAttribute("aria-hidden","false")},L=t=>{const e=t.querySelector("[data-search-panel]"),n=t.querySelector("[data-search-input]");e.hidden=!0,n.setAttribute("aria-expanded","false"),e.setAttribute("aria-hidden","true")},V=(t,e)=>{const n=[...t.querySelectorAll(".site-search__result-link")];if(n.length===0)return;const s=n.findIndex(i=>i===window.document.activeElement),o=s===-1?e>0?0:n.length-1:(s+e+n.length)%n.length;n[o].focus()},un=t=>{const e=t.querySelector("[data-search-input]"),n=t.querySelector("[data-search-clear]"),s=t.querySelector(".site-search__form"),o=t.dataset.searchUrl,i=Number(t.dataset.searchMaxResults||"8"),a=Number(t.dataset.searchMinQueryLength||"2"),r=t.dataset.searchIdleText||"Start typing to search the site.",l=t.dataset.searchTooShortText||"Type at least %d characters to search.",c=t.dataset.searchLoadingText||"Loading search index...",d=t.dataset.searchEmptyText||"No results found.",u=t.dataset.searchErrorText||"Search is unavailable right now.",f=p=>{const y=t.querySelector("[data-search-status]");y.textContent=p},h=()=>{t.querySelector("[data-search-results]").innerHTML=""},g=()=>{n.hidden=e.value.length===0},$=async()=>{const p=e.value.trim();if(g(),p.length===0){h(),f(r),L(t);return}if(Ct(t),p.length<a){h(),f(l.replace("%d",`${a}`));return}f(c);try{const y=await rn(o),b=cn(y,p,i);if(b.length===0){Tt(t,[],p,d);return}Tt(t,b,p,`${b.length} result${b.length===1?"":"s"} for "${p}"`)}catch{h(),f(u)}};e.addEventListener("focus",()=>{e.value.trim().length>0&&$()}),e.addEventListener("input",()=>{$()}),e.addEventListener("keydown",p=>{p.key==="ArrowDown"&&(p.preventDefault(),t.querySelector(".site-search__result-link")&&Ct(t),V(t,1)),p.key==="Escape"&&L(t)}),t.addEventListener("keydown",p=>{if(p.key==="Escape"&&(L(t),e.focus()),p.key==="ArrowDown"&&p.target.matches(".site-search__result-link")&&(p.preventDefault(),V(t,1)),p.key==="ArrowUp"&&p.target.matches(".site-search__result-link")){if(p.preventDefault(),p.target===t.querySelector(".site-search__result-link")){e.focus();return}V(t,-1)}}),n.addEventListener("click",()=>{e.value="",g(),h(),f(r),L(t),e.focus()}),s.addEventListener("submit",p=>{p.preventDefault();const y=t.querySelector(".site-search__result-link");if(y){window.location.assign(y.href);return}$()}),window.document.addEventListener("click",p=>{t.contains(p.target)||L(t)}),L(t)},fn=()=>{const t=window.document.querySelectorAll(tn);t.length!==0&&t.forEach(un)};qt({"chevron-down-outline":ze,close:He,"logo-github":je,"logo-linkedin":Ue,"logo-twitter":Re,"logo-youtube":Be,"menu-outline":De,"search-outline":We,"time-outline":Xe}),Pe(),Ge(),Qe(),Je(),Ne(),Ve(),fn()})();
1
+ (function(){var e,t=()=>{if(typeof window>`u`)return new Map;if(!e){let t=window;t.Ionicons=t.Ionicons||{},e=t.Ionicons.map=t.Ionicons.map||new Map}return e},n=e=>{Object.keys(e).forEach(t=>{r(t,e[t]);let n=t.replace(/([a-z0-9]|(?=[A-Z]))([A-Z0-9])/g,`$1-$2`).toLowerCase();t!==n&&r(n,e[t])})},r=(e,n)=>{let r=t(),i=r.get(e);i===void 0?r.set(e,n):i!==n&&console.warn(`[Ionicons Warning]: Multiple icons were mapped to name "${e}". Ensure that multiple icons are not mapped to the same icon name.`)},i=`ionicons`,a={hydratedSelectorName:`hydrated`,lazyLoad:!1,updatable:!0},o=Object.defineProperty,s=(e,t)=>{for(var n in t)o(e,n,{get:t[n],enumerable:!0})},c=e=>{if(e.__stencil__getHostRef)return e.__stencil__getHostRef()},l=(e,t)=>{let n={$flags$:0,$hostElement$:e,$cmpMeta$:t,$instanceValues$:new Map};n.$onReadyPromise$=new Promise(e=>n.$onReadyResolve$=e),e[`s-p`]=[],e[`s-rc`]=[];let r=n;return e.__stencil__getHostRef=()=>r,r},u=(e,t)=>t in e,d=(e,t)=>(0,console.error)(e,t),f=new Map,p=`slot-fb{display:contents}slot-fb[hidden]{display:none}`,m=`http://www.w3.org/1999/xlink`,h=typeof window<`u`?window:{},g=h.HTMLElement||class{},_={$flags$:0,$resourcesUrl$:``,jmp:e=>e(),raf:e=>requestAnimationFrame(e),ael:(e,t,n,r)=>e.addEventListener(t,n,r),rel:(e,t,n,r)=>e.removeEventListener(t,n,r),ce:(e,t)=>new CustomEvent(e,t)},ee=e=>Promise.resolve(e),te=(()=>{try{return new CSSStyleSheet,typeof new CSSStyleSheet().replaceSync==`function`}catch{}return!1})(),v=!1,ne=[],re=[],ie=(e,t)=>n=>{e.push(n),v||(v=!0,t&&_.$flags$&4?x(b):_.raf(b))},y=e=>{for(let t=0;t<e.length;t++)try{e[t](performance.now())}catch(e){d(e)}e.length=0},b=()=>{y(ne),y(re),(v=ne.length>0)&&_.raf(b)},x=e=>ee().then(e),ae=ie(re,!0),oe=e=>{let t=new URL(e,_.$resourcesUrl$);return t.origin===h.location.origin?t.pathname:t.href},S=e=>(e=typeof e,e===`object`||e===`function`);function se(e){return(e.head?.querySelector(`meta[name="csp-nonce"]`))?.getAttribute(`content`)??void 0}var ce=e=>e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`);s({},{err:()=>le,map:()=>ue,ok:()=>C,unwrap:()=>de,unwrapErr:()=>fe});var C=e=>({isOk:!0,isErr:!1,value:e}),le=e=>({isOk:!1,isErr:!0,value:e});function ue(e,t){if(e.isOk){let n=t(e.value);return n instanceof Promise?n.then(e=>C(e)):C(n)}if(e.isErr){let t=e.value;return le(t)}throw`should never get here`}var de=e=>{if(e.isOk)return e.value;throw e.value},fe=e=>{if(e.isErr)return e.value;throw e.value},w;function pe(e){let t=this.attachShadow({mode:`open`});w===void 0&&(w=null),w&&t.adoptedStyleSheets.push(w)}var T=(e,t=``)=>()=>{},E=new WeakMap,me=(e,t,n)=>{let r=f.get(e);te&&n?(r||=new CSSStyleSheet,typeof r==`string`?r=t:r.replaceSync(t)):r=t,f.set(e,r)},he=(e,t,n)=>{let r=_e(t),i=f.get(r);if(!h.document)return r;if(e=e.nodeType===11?e:h.document,i)if(typeof i==`string`){e=e.head||e;let n=E.get(e),a;if(n||E.set(e,n=new Set),!n.has(r)){{a=h.document.createElement(`style`),a.innerHTML=i;let n=_.$nonce$??se(h.document);if(n!=null&&a.setAttribute(`nonce`,n),!(t.$flags$&1))if(e.nodeName===`HEAD`){let t=e.querySelectorAll(`link[rel=preconnect]`),n=t.length>0?t[t.length-1].nextSibling:e.querySelector(`style`);e.insertBefore(a,n?.parentNode===e?n:null)}else if(`host`in e)if(te){let t=new CSSStyleSheet;t.replaceSync(i),e.adoptedStyleSheets.unshift(t)}else{let t=e.querySelector(`style`);t?t.innerHTML=i+t.innerHTML:e.prepend(a)}else e.append(a);t.$flags$&1&&e.insertBefore(a,null)}t.$flags$&4&&(a.innerHTML+=p),n&&n.add(r)}}else e.adoptedStyleSheets.includes(i)||e.adoptedStyleSheets.push(i);return r},ge=e=>{let t=e.$cmpMeta$,n=e.$hostElement$,r=t.$flags$,i=T(`attachStyles`,t.$tagName$),a=he(n.shadowRoot?n.shadowRoot:n.getRootNode(),t);r&10&&(n[`s-sc`]=a,n.classList.add(a+`-h`)),i()},_e=(e,t)=>`sc-`+e.$tagName$,D=(e,t,...n)=>{let r=null,i=null,a=!1,o=!1,s=[],c=t=>{for(let n=0;n<t.length;n++)r=t[n],Array.isArray(r)?c(r):r!=null&&typeof r!=`boolean`&&((a=typeof e!=`function`&&!S(r))&&(r=String(r)),a&&o?s[s.length-1].$text$+=r:s.push(a?O(null,r):r),o=a)};if(c(n),t){t.key&&(i=t.key);{let e=t.className||t.class;e&&(t.class=typeof e==`object`?Object.keys(e).filter(t=>e[t]).join(` `):e)}}let l=O(e,null);return l.$attrs$=t,s.length>0&&(l.$children$=s),l.$key$=i,l},O=(e,t)=>{let n={$flags$:0,$tag$:e,$text$:t,$elm$:null,$children$:null};return n.$attrs$=null,n.$key$=null,n},ve={},ye=e=>e&&e.$tag$===ve,k=e=>{let t=ce(e);return RegExp(`(^|[^@]|@(?!supports\\s+selector\\s*\\([^{]*?${t}))(${t}\\b)`,`g`)};k(`::slotted`),k(`:host`),k(`:host-context`);var be=(e,t,n)=>e!=null&&!S(e)?t&4?e===`false`?!1:e===``||!!e:t&1?String(e):e:e,xe=(e,t,n)=>{let r=_.ce(t,n);return e.dispatchEvent(r),r},A=(e,t,n,r,i,a,o)=>{if(n===r)return;let s=u(e,t),c=t.toLowerCase();if(t===`class`){let t=e.classList,i=j(n),a=j(r);t.remove(...i.filter(e=>e&&!a.includes(e))),t.add(...a.filter(e=>e&&!i.includes(e)))}else if(t===`style`){for(let t in n)(!r||r[t]==null)&&(t.includes(`-`)?e.style.removeProperty(t):e.style[t]=``);for(let t in r)(!n||r[t]!==n[t])&&(t.includes(`-`)?e.style.setProperty(t,r[t]):e.style[t]=r[t])}else if(t!==`key`)if(t===`ref`)r&&r(e);else if(!e.__lookupSetter__(t)&&t[0]===`o`&&t[1]===`n`){if(t=t[2]===`-`?t.slice(3):u(h,c)?c.slice(2):c[2]+t.slice(3),n||r){let i=t.endsWith(M);t=t.replace(Ce,``),n&&_.rel(e,t,n,i),r&&_.ael(e,t,r,i)}}else{let o=S(r);if(s||o&&r!==null)try{if(e.tagName.includes(`-`))e[t]!==r&&(e[t]=r);else{let i=r??``;t===`list`?s=!1:(n==null||e[t]!=i)&&(typeof e.__lookupSetter__(t)==`function`?e[t]=i:e.setAttribute(t,i))}}catch{}let l=!1;c!==(c=c.replace(/^xlink\:?/,``))&&(t=c,l=!0),r==null||r===!1?(r!==!1||e.getAttribute(t)===``)&&(l?e.removeAttributeNS(m,t):e.removeAttribute(t)):(!s||a&4||i)&&!o&&e.nodeType===1&&(r=r===!0?``:r,l?e.setAttributeNS(m,t,r):e.setAttribute(t,r))}},Se=/\s/,j=e=>(typeof e==`object`&&e&&`baseVal`in e&&(e=e.baseVal),!e||typeof e!=`string`?[]:e.split(Se)),M=`Capture`,Ce=RegExp(M+`$`),we=(e,t,n,r)=>{let i=t.$elm$.nodeType===11&&t.$elm$.host?t.$elm$.host:t.$elm$,a=e&&e.$attrs$||{},o=t.$attrs$||{};for(let e of Te(Object.keys(a)))e in o||A(i,e,a[e],void 0,n,t.$flags$);for(let e of Te(Object.keys(o)))A(i,e,a[e],o[e],n,t.$flags$)};function Te(e){return e.includes(`ref`)?[...e.filter(e=>e!==`ref`),`ref`]:e}var N,Ee=!1,P=(e,t,n)=>{let r=t.$children$[n],i=0,a,o;if(r.$text$!==null)a=r.$elm$=h.document.createTextNode(r.$text$);else{if(!h.document)throw Error("You are trying to render a Stencil component in an environment that doesn't support the DOM. Make sure to populate the [`window`](https://developer.mozilla.org/en-US/docs/Web/API/Window/window) object before rendering a component.");if(a=r.$elm$=h.document.createElement(r.$tag$),we(null,r,Ee),r.$children$)for(i=0;i<r.$children$.length;++i)o=P(e,r,i),o&&a.appendChild(o)}return a[`s-hn`]=N,a},F=(e,t,n,r,i,a)=>{let o=e,s;for(o.shadowRoot&&o.tagName===N&&(o=o.shadowRoot);i<=a;++i)r[i]&&(s=P(null,n,i),s&&(r[i].$elm$=s,z(o,s,t)))},De=(e,t,n)=>{for(let r=t;r<=n;++r){let t=e[r];if(t){let e=t.$elm$;R(t),e&&e.remove()}}},Oe=(e,t,n,r,i=!1)=>{let a=0,o=0,s=0,c=0,l=t.length-1,u=t[0],d=t[l],f=r.length-1,p=r[0],m=r[f],h,g;for(;a<=l&&o<=f;)if(u==null)u=t[++a];else if(d==null)d=t[--l];else if(p==null)p=r[++o];else if(m==null)m=r[--f];else if(I(u,p,i))L(u,p,i),u=t[++a],p=r[++o];else if(I(d,m,i))L(d,m,i),d=t[--l],m=r[--f];else if(I(u,m,i))L(u,m,i),z(e,u.$elm$,d.$elm$.nextSibling),u=t[++a],m=r[--f];else if(I(d,p,i))L(d,p,i),z(e,d.$elm$,u.$elm$),d=t[--l],p=r[++o];else{for(s=-1,c=a;c<=l;++c)if(t[c]&&t[c].$key$!==null&&t[c].$key$===p.$key$){s=c;break}s>=0?(g=t[s],g.$tag$===p.$tag$?(L(g,p,i),t[s]=void 0,h=g.$elm$):h=P(t&&t[o],n,s),p=r[++o]):(h=P(t&&t[o],n,o),p=r[++o]),h&&z(u.$elm$.parentNode,h,u.$elm$)}a>l?F(e,r[f+1]==null?null:r[f+1].$elm$,n,r,o,f):o>f&&De(t,a,l)},I=(e,t,n=!1)=>e.$tag$===t.$tag$?n?(n&&!e.$key$&&t.$key$&&(e.$key$=t.$key$),!0):e.$key$===t.$key$:!1,L=(e,t,n=!1)=>{let r=t.$elm$=e.$elm$,i=e.$children$,o=t.$children$,s=t.$text$;s===null?(we(e,t,Ee),i!==null&&o!==null?Oe(r,i,t,o,n):o===null?!n&&a.updatable&&i!==null&&De(i,0,i.length-1):(e.$text$!==null&&(r.textContent=``),F(r,null,t,o,0,o.length-1))):e.$text$!==s&&(r.data=s)},R=e=>{e.$attrs$&&e.$attrs$.ref&&e.$attrs$.ref(null),e.$children$&&e.$children$.map(R)},z=(e,t,n)=>e?.insertBefore(t,n),ke=(e,t,n=!1)=>{let r=e.$hostElement$,i=e.$cmpMeta$,a=e.$vnode$||O(null,null),o=ye(t)?t:D(null,null,t);if(N=r.tagName,i.$attrsToReflect$&&(o.$attrs$=o.$attrs$||{},i.$attrsToReflect$.map(([e,t])=>o.$attrs$[t]=r[e])),n&&o.$attrs$)for(let e of Object.keys(o.$attrs$))r.hasAttribute(e)&&![`key`,`ref`,`style`,`class`].includes(e)&&(o.$attrs$[e]=r[e]);o.$tag$=null,o.$flags$|=4,e.$vnode$=o,o.$elm$=a.$elm$=r.shadowRoot||r,L(a,o,n)},B=(e,t)=>{if(t&&!e.$onRenderResolve$&&t[`s-p`]){let n=t[`s-p`].push(new Promise(r=>e.$onRenderResolve$=()=>{t[`s-p`].splice(n-1,1),r()}))}},V=(e,t)=>{if(e.$flags$|=16,e.$flags$&4){e.$flags$|=512;return}return B(e,e.$ancestorComponent$),ae(()=>Ae(e,t))},Ae=(e,t)=>{let n=e.$hostElement$,r=T(`scheduleUpdate`,e.$cmpMeta$.$tagName$),i=n;if(!i)throw Error(`Can't render component <${n.tagName.toLowerCase()} /> with invalid Stencil runtime! Make sure this imported component is compiled with a \`externalRuntime: true\` flag. For more information, please refer to https://stenciljs.com/docs/custom-elements#externalruntime`);let a;return a=t?U(i,`componentWillLoad`,void 0,n):U(i,`componentWillUpdate`,void 0,n),a=H(a,()=>U(i,`componentWillRender`,void 0,n)),r(),H(a,()=>Me(e,i,t))},H=(e,t)=>je(e)?e.then(t).catch(e=>{console.error(e),t()}):t(),je=e=>e instanceof Promise||e&&e.then&&typeof e.then==`function`,Me=async(e,t,n)=>{let r=e.$hostElement$,i=T(`update`,e.$cmpMeta$.$tagName$),a=r[`s-rc`];n&&ge(e);let o=T(`render`,e.$cmpMeta$.$tagName$);Ne(e,t,r,n),a&&(a.map(e=>e()),r[`s-rc`]=void 0),o(),i();{let t=r[`s-p`]??[],n=()=>Pe(e);t.length===0?n():(Promise.all(t).then(n),e.$flags$|=4,t.length=0)}},Ne=(e,t,n,r)=>{try{t=t.render(),e.$flags$&=-17,e.$flags$|=2,ke(e,t,r)}catch(t){d(t,e.$hostElement$)}return null},Pe=e=>{let t=e.$cmpMeta$.$tagName$,n=e.$hostElement$,r=T(`postUpdate`,t),i=n,a=e.$ancestorComponent$;U(i,`componentDidRender`,void 0,n),e.$flags$&64?(U(i,`componentDidUpdate`,void 0,n),r()):(e.$flags$|=64,Ie(n),U(i,`componentDidLoad`,void 0,n),r(),e.$onReadyResolve$(n),a||Fe()),e.$onRenderResolve$&&=(e.$onRenderResolve$(),void 0),e.$flags$&512&&x(()=>V(e,!1)),e.$flags$&=-517},Fe=e=>{x(()=>xe(h,`appload`,{detail:{namespace:i}}))},U=(e,t,n,r)=>{if(e&&e[t])try{return e[t](n)}catch(e){d(e,r)}},Ie=e=>e.classList.add(a.hydratedSelectorName??`hydrated`),Le=(e,t)=>c(e).$instanceValues$.get(t),Re=(e,t,n,r)=>{let i=c(e),a=e,o=i.$instanceValues$.get(t),s=i.$flags$,l=a;if(n=be(n,r.$members$[t][0]),n!==o&&!(Number.isNaN(o)&&Number.isNaN(n))){if(i.$instanceValues$.set(t,n),r.$watchers$&&s&128){let e=r.$watchers$[t];e&&e.map(e=>{try{l[e](n,o,t)}catch(e){d(e,a)}})}if((s&18)==2){if(l.componentShouldUpdate&&l.componentShouldUpdate(n,o,t)===!1)return;V(i,!1)}}},ze=(e,t,n)=>{let r=e.prototype;if(t.$members$||t.$watchers$||e.watchers){e.watchers&&!t.$watchers$&&(t.$watchers$=e.watchers);let n=Object.entries(t.$members$??{});n.map(([e,[n]])=>{if(n&31||n&32){let{get:i,set:a}=Object.getOwnPropertyDescriptor(r,e)||{};i&&(t.$members$[e][0]|=2048),a&&(t.$members$[e][0]|=4096),Object.defineProperty(r,e,{get(){return i?i.apply(this):Le(this,e)},configurable:!0,enumerable:!0}),Object.defineProperty(r,e,{set(r){let i=c(this);if(a){let o=n&32?this[e]:i.$hostElement$[e];o===void 0&&i.$instanceValues$.get(e)?r=i.$instanceValues$.get(e):!i.$instanceValues$.get(e)&&o&&i.$instanceValues$.set(e,o),a.apply(this,[be(r,n)]),r=n&32?this[e]:i.$hostElement$[e],Re(this,e,r,t);return}Re(this,e,r,t)}})}});{let i=new Map;r.attributeChangedCallback=function(e,n,o){_.jmp(()=>{let s=i.get(e);if(!(this.hasOwnProperty(s)&&a.lazyLoad)){if(r.hasOwnProperty(s)&&typeof this[s]==`number`&&this[s]==o)return;if(s==null){let r=c(this)?.$flags$;if(r&&!(r&8)&&r&128&&o!==n){let r=this;(t.$watchers$?.[e])?.forEach(t=>{r[t]!=null&&r[t].call(r,o,n,e)})}return}}let l=Object.getOwnPropertyDescriptor(r,s);o=o===null&&typeof this[s]==`boolean`?!1:o,o!==this[s]&&(!l.get||l.set)&&(this[s]=o)})},e.observedAttributes=Array.from(new Set([...Object.keys(t.$watchers$??{}),...n.filter(([e,t])=>t[0]&15).map(([e,n])=>{var r;let a=n[1]||e;return i.set(a,e),n[0]&512&&((r=t.$attrsToReflect$)==null||r.push([e,a])),a})]))}}return e},Be=async(e,t,n,r)=>{let i;if(!(t.$flags$&32)){t.$flags$|=32;{i=e.constructor;let n=e.localName;customElements.whenDefined(n).then(()=>t.$flags$|=128)}if(i&&i.style){let e;typeof i.style==`string`&&(e=i.style);let t=_e(n);if(!f.has(t)){let r=T(`registerStyles`,n.$tagName$);me(t,e,!!(n.$flags$&1)),r()}}}let a=t.$ancestorComponent$,o=()=>V(t,!0);a&&a[`s-rc`]?a[`s-rc`].push(o):o()},Ve=e=>{if(!(_.$flags$&1)){let t=c(e),n=t.$cmpMeta$,r=T(`connectedCallback`,n.$tagName$);if(t.$flags$&1)t?.$lazyInstance$||t?.$onReadyPromise$&&t.$onReadyPromise$.then(()=>void 0);else{t.$flags$|=1;{let n=e;for(;n=n.parentNode||n.host;)if(n[`s-p`]){B(t,t.$ancestorComponent$=n);break}}n.$members$&&Object.entries(n.$members$).map(([t,[n]])=>{if(n&31&&e.hasOwnProperty(t)){let n=e[t];delete e[t],e[t]=n}}),a.initializeNextTick?x(()=>Be(e,t,n)):Be(e,t,n)}r()}},He=async e=>{_.$flags$&1||c(e),E.has(e)&&E.delete(e),e.shadowRoot&&E.has(e.shadowRoot)&&E.delete(e.shadowRoot)},Ue=(e,t)=>{let n={$flags$:t[0],$tagName$:t[1]};n.$members$=t[2],n.$watchers$=e.$watchers$,n.$attrsToReflect$=[];let r=e.prototype.connectedCallback,i=e.prototype.disconnectedCallback;return Object.assign(e.prototype,{__hasHostListenerAttached:!1,__registerHost(){l(this,n)},connectedCallback(){this.__hasHostListenerAttached||=(c(this),!0),Ve(this),r&&r.call(this)},disconnectedCallback(){He(this),i&&i.call(this)},__attachShadow(){if(!this.shadowRoot)pe.call(this,n);else if(this.shadowRoot.mode!==`open`)throw Error(`Unable to re-use existing shadow root for ${n.$tagName$}! Mode is set to ${this.shadowRoot.mode} but Stencil only supports open shadow roots.`)}}),e.is=n.$tagName$,ze(e,n)},W,We=()=>{if(typeof window>`u`)return new Map;if(!W){let e=window;e.Ionicons=e.Ionicons||{},W=e.Ionicons.map=e.Ionicons.map||new Map}return W},Ge=e=>{let t=G(e.src);return t||(t=qe(e.name,e.icon,e.mode,e.ios,e.md),t?Ke(t,e):e.icon&&(t=G(e.icon),t||(t=G(e.icon[e.mode]),t))?t:null)},Ke=(e,t)=>{let n=We().get(e);if(n)return n;try{return oe(`svg/${e}.svg`)}catch(n){console.log(`e`,n),console.warn(`[Ionicons Warning]: Could not load icon with name "${e}". Ensure that the icon is registered using addIcons or that the icon SVG data is passed directly to the icon component.`,t)}},qe=(e,t,n,r,i)=>(n=(n&&q(n))===`ios`?`ios`:`md`,r&&n===`ios`?e=q(r):i&&n===`md`?e=q(i):(!e&&t&&!Je(t)&&(e=t),K(e)&&(e=q(e))),!K(e)||e.trim()===``||e.replace(/[a-z]|-|\d/gi,``)!==``?null:e),G=e=>K(e)&&(e=e.trim(),Je(e))?e:null,Je=e=>e.length>0&&/(\/|\.)/.test(e),K=e=>typeof e==`string`,q=e=>e.toLowerCase(),Ye=(e,t=[])=>{let n={};return t.forEach(t=>{e.hasAttribute(t)&&(e.getAttribute(t)!==null&&(n[t]=e.getAttribute(t)),e.removeAttribute(t))}),n},Xe=e=>e&&e.dir!==``?e.dir.toLowerCase()===`rtl`:(document==null?void 0:document.dir.toLowerCase())===`rtl`,Ze=e=>{let t=document.createElement(`div`);t.innerHTML=e;for(let e=t.childNodes.length-1;e>=0;e--)t.childNodes[e].nodeName.toLowerCase()!==`svg`&&t.removeChild(t.childNodes[e]);let n=t.firstElementChild;if(n&&n.nodeName.toLowerCase()===`svg`){let e=n.getAttribute(`class`)||``;if(n.setAttribute(`class`,(e+` s-ion-icon`).trim()),Qe(n))return t.innerHTML}return``},Qe=e=>{if(e.nodeType===1){if(e.nodeName.toLowerCase()===`script`)return!1;for(let t=0;t<e.attributes.length;t++){let n=e.attributes[t].name;if(K(n)&&n.toLowerCase().indexOf(`on`)===0)return!1}for(let t=0;t<e.childNodes.length;t++)if(!Qe(e.childNodes[t]))return!1}return!0},$e=e=>e.startsWith(`data:image/svg+xml`),et=e=>e.indexOf(`;utf8,`)!==-1,J=new Map,tt=new Map,nt;function Y(e){return J.set(e,``),``}var rt=(e,t)=>tt.get(e)||(typeof fetch<`u`&&typeof document<`u`?$e(e)&&et(e)?Promise.resolve(it(e)):at(e,t):Promise.resolve(Y(e)));function it(e){nt||=new DOMParser;let t=nt.parseFromString(e,`text/html`).querySelector(`svg`);if(t)return J.set(e,t.outerHTML),t.outerHTML;throw Error(`Could not parse svg from ${e}`)}function at(e,t){let n=fetch(e).then(n=>n.text().then(n=>{n&&t!==!1&&(n=Ze(n));let r=n||``;return J.set(e,r),r}).catch(()=>Y(e))).catch(()=>Y(e));return tt.set(e,n),n}var ot=`:host{display:inline-block;width:1em;height:1em;contain:strict;fill:currentColor;box-sizing:content-box !important}:host .ionicon{stroke:currentColor}.ionicon-fill-none{fill:none}.ionicon-stroke-width{stroke-width:var(--ionicon-stroke-width, 32px)}.icon-inner,.ionicon,svg{display:block;height:100%;width:100%}@supports (background: -webkit-named-image(i)){:host(.icon-rtl) .icon-inner{transform:scaleX(-1)}}@supports not selector(:dir(rtl)) and selector(:host-context([dir='rtl'])){:host(.icon-rtl) .icon-inner{transform:scaleX(-1)}}:host(.flip-rtl):host-context([dir='rtl']) .icon-inner{transform:scaleX(-1)}@supports selector(:dir(rtl)){:host(.flip-rtl:dir(rtl)) .icon-inner{transform:scaleX(-1)}:host(.flip-rtl:dir(ltr)) .icon-inner{transform:scaleX(1)}}:host(.icon-small){font-size:1.125rem !important}:host(.icon-large){font-size:2rem !important}:host(.ion-color){color:var(--ion-color-base) !important}:host(.ion-color-primary){--ion-color-base:var(--ion-color-primary, #3880ff)}:host(.ion-color-secondary){--ion-color-base:var(--ion-color-secondary, #0cd1e8)}:host(.ion-color-tertiary){--ion-color-base:var(--ion-color-tertiary, #f4a942)}:host(.ion-color-success){--ion-color-base:var(--ion-color-success, #10dc60)}:host(.ion-color-warning){--ion-color-base:var(--ion-color-warning, #ffce00)}:host(.ion-color-danger){--ion-color-base:var(--ion-color-danger, #f14141)}:host(.ion-color-light){--ion-color-base:var(--ion-color-light, #f4f5f8)}:host(.ion-color-medium){--ion-color-base:var(--ion-color-medium, #989aa2)}:host(.ion-color-dark){--ion-color-base:var(--ion-color-dark, #222428)}`,st=Ue(class extends g{constructor(){super(),this.__registerHost(),this.__attachShadow(),this.iconName=null,this.inheritedAttributes={},this.didLoadIcon=!1,this.isVisible=!1,this.mode=ct(),this.lazy=!1,this.sanitize=!0}componentWillLoad(){this.inheritedAttributes=Ye(this.el,[`aria-label`])}connectedCallback(){this.waitUntilVisible(this.el,`50px`,()=>{this.isVisible=!0,this.loadIcon()})}componentDidLoad(){this.didLoadIcon||this.loadIcon()}disconnectedCallback(){this.io&&=(this.io.disconnect(),void 0)}waitUntilVisible(e,t,n){if(!(this.lazy&&typeof window<`u`&&window.IntersectionObserver))return n();let r=this.io=new window.IntersectionObserver(e=>{e[0].isIntersecting&&(r.disconnect(),this.io=void 0,n())},{rootMargin:t});r.observe(e)}loadIcon(){if(this.isVisible){let e=Ge(this);e&&(J.has(e)?this.svgContent=J.get(e):rt(e,this.sanitize).then(()=>this.svgContent=J.get(e)),this.didLoadIcon=!0)}this.iconName=qe(this.name,this.icon,this.mode,this.ios,this.md)}render(){let{flipRtl:e,iconName:t,inheritedAttributes:n,el:r}=this,i=this.mode||`md`,a=t?(t.includes(`arrow`)||t.includes(`chevron`))&&e!==!1:!1,o=e||a;return D(ve,Object.assign({key:`0578c899781ca145dd8205acd9670af39b57cf2e`,role:`img`,class:Object.assign(Object.assign({[i]:!0},lt(this.color)),{[`icon-${this.size}`]:!!this.size,"flip-rtl":o,"icon-rtl":o&&Xe(r)})},n),this.svgContent?D(`div`,{class:`icon-inner`,innerHTML:this.svgContent}):D(`div`,{class:`icon-inner`}))}static get assetsDirs(){return[`svg`]}get el(){return this}static get watchers(){return{name:[`loadIcon`],src:[`loadIcon`],icon:[`loadIcon`],ios:[`loadIcon`],md:[`loadIcon`]}}static get style(){return ot}},[1,`ion-icon`,{mode:[1025],color:[1],ios:[1],md:[1],flipRtl:[4,`flip-rtl`],name:[513],src:[1],icon:[8],size:[1],lazy:[4],sanitize:[4],svgContent:[32],isVisible:[32]},void 0,{name:[`loadIcon`],src:[`loadIcon`],icon:[`loadIcon`],ios:[`loadIcon`],md:[`loadIcon`]}]),ct=()=>typeof document<`u`&&document.documentElement.getAttribute(`mode`)||`md`,lt=e=>e?{"ion-color":!0,[`ion-color-${e}`]:!0}:null;function ut(){typeof customElements>`u`||[`ion-icon`].forEach(e=>{switch(e){case`ion-icon`:customElements.get(e)||customElements.define(e,st);break}})}var dt=ut,ft=`data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='ionicon'><path d='m112 184 144 144 144-144' stroke-linecap='round' stroke-linejoin='round' stroke-width='48px' class='ionicon-fill-none'/></svg>`,pt=`data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='ionicon'><path d='m289.94 256 95-95A24 24 0 0 0 351 127l-95 95-95-95a24 24 0 0 0-34 34l95 95-95 95a24 24 0 1 0 34 34l95-95 95 95a24 24 0 0 0 34-34Z'/></svg>`,mt=`data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='ionicon'><path d='M256 32C132.3 32 32 134.9 32 261.7c0 101.5 64.2 187.5 153.2 217.9a17.6 17.6 0 0 0 3.8.4c8.3 0 11.5-6.1 11.5-11.4 0-5.5-.2-19.9-.3-39.1a102.4 102.4 0 0 1-22.6 2.7c-43.1 0-52.9-33.5-52.9-33.5-10.2-26.5-24.9-33.6-24.9-33.6-19.5-13.7-.1-14.1 1.4-14.1h.1c22.5 2 34.3 23.8 34.3 23.8 11.2 19.6 26.2 25.1 39.6 25.1a63 63 0 0 0 25.6-6c2-14.8 7.8-24.9 14.2-30.7-49.7-5.8-102-25.5-102-113.5 0-25.1 8.7-45.6 23-61.6-2.3-5.8-10-29.2 2.2-60.8a18.6 18.6 0 0 1 5-.5c8.1 0 26.4 3.1 56.6 24.1a208.2 208.2 0 0 1 112.2 0c30.2-21 48.5-24.1 56.6-24.1a18.6 18.6 0 0 1 5 .5c12.2 31.6 4.5 55 2.2 60.8 14.3 16.1 23 36.6 23 61.6 0 88.2-52.4 107.6-102.3 113.3 8 7.1 15.2 21.1 15.2 42.5 0 30.7-.3 55.5-.3 63 0 5.4 3.1 11.5 11.4 11.5a19.4 19.4 0 0 0 4-.4C415.9 449.2 480 363.1 480 261.7 480 134.9 379.7 32 256 32'/></svg>`,ht=`data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='ionicon'><path d='M444.17 32H70.28C49.85 32 32 46.7 32 66.89v374.72C32 461.91 49.85 480 70.28 480h373.78c20.54 0 35.94-18.21 35.94-38.39V66.89C480.12 46.7 464.6 32 444.17 32m-273.3 373.43h-64.18V205.88h64.18ZM141 175.54h-.46c-20.54 0-33.84-15.29-33.84-34.43 0-19.49 13.65-34.42 34.65-34.42s33.85 14.82 34.31 34.42c-.01 19.14-13.31 34.43-34.66 34.43m264.43 229.89h-64.18V296.32c0-26.14-9.34-44-32.56-44-17.74 0-28.24 12-32.91 23.69-1.75 4.2-2.22 9.92-2.22 15.76v113.66h-64.18V205.88h64.18v27.77c9.34-13.3 23.93-32.44 57.88-32.44 42.13 0 74 27.77 74 87.64Z'/></svg>`,gt=`data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='ionicon'><path d='M496 109.5a201.8 201.8 0 0 1-56.55 15.3 97.5 97.5 0 0 0 43.33-53.6 197.7 197.7 0 0 1-62.56 23.5A99.14 99.14 0 0 0 348.31 64c-54.42 0-98.46 43.4-98.46 96.9a93.2 93.2 0 0 0 2.54 22.1 280.7 280.7 0 0 1-203-101.3A95.7 95.7 0 0 0 36 130.4c0 33.6 17.53 63.3 44 80.7A97.5 97.5 0 0 1 35.22 199v1.2c0 47 34 86.1 79 95a100.8 100.8 0 0 1-25.94 3.4 94.4 94.4 0 0 1-18.51-1.8c12.51 38.5 48.92 66.5 92.05 67.3A199.6 199.6 0 0 1 39.5 405.6a203 203 0 0 1-23.5-1.4A278.7 278.7 0 0 0 166.74 448c181.36 0 280.44-147.7 280.44-275.8 0-4.2-.11-8.4-.31-12.5A198.5 198.5 0 0 0 496 109.5'/></svg>`,_t=`data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='ionicon'><path d='M508.64 148.79c0-45-33.1-81.2-74-81.2C379.24 65 322.74 64 265 64h-18c-57.6 0-114.2 1-169.6 3.6C36.6 67.6 3.5 104 3.5 149 1 184.59-.06 220.19 0 255.79q-.15 53.4 3.4 106.9c0 45 33.1 81.5 73.9 81.5 58.2 2.7 117.9 3.9 178.6 3.8q91.2.3 178.6-3.8c40.9 0 74-36.5 74-81.5 2.4-35.7 3.5-71.3 3.4-107q.34-53.4-3.26-106.9M207 353.89v-196.5l145 98.2Z'/></svg>`,vt=`data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='ionicon'><path d='M80 160h352M80 256h352M80 352h352' stroke-linecap='round' stroke-miterlimit='10' class='ionicon-fill-none ionicon-stroke-width'/></svg>`,yt=`data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='ionicon'><path d='M221.09 64a157.09 157.09 0 1 0 157.09 157.09A157.1 157.1 0 0 0 221.09 64Z' stroke-miterlimit='10' class='ionicon-fill-none ionicon-stroke-width'/><path d='M338.29 338.29 448 448' stroke-linecap='round' stroke-miterlimit='10' class='ionicon-fill-none ionicon-stroke-width'/></svg>`,bt=`data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' class='ionicon'><path d='M256 64C150 64 64 150 64 256s86 192 192 192 192-86 192-192S362 64 256 64Z' stroke-miterlimit='10' class='ionicon-fill-none ionicon-stroke-width'/><path d='M256 128v144h96' stroke-linecap='round' stroke-linejoin='round' class='ionicon-fill-none ionicon-stroke-width'/></svg>`,xt=`menu-outline`,St=`close`,Ct=()=>{let e=document.querySelector(`.site-header__toggle`);if(!e)return;let t=document.querySelector(e.dataset.target);if(!t)return;let n=e.querySelector(`.sr-only`),r=e.dataset.openLabel||`Open navigation menu`,i=e.dataset.closeLabel||`Close navigation menu`,a=a=>{e.setAttribute(`aria-expanded`,a?`true`:`false`),e.setAttribute(`aria-label`,a?i:r),n&&(n.textContent=a?i:r);let o=e.querySelector(`ion-icon`);o&&(o.name=a?St:xt),t.hidden=!a,t.classList.toggle(`is-hidden`,!a)},o=()=>{t.hidden||a(!1)};a(!1),e.addEventListener(`click`,()=>{let n=e.getAttribute(`aria-expanded`)!==`true`;if(a(n),n){let e=t.querySelector(`a, button, input, [tabindex]:not([tabindex="-1"])`);e&&e.focus();return}e.focus()}),document.addEventListener(`click`,n=>{let r=t.contains(n.target),i=e.contains(n.target);!r&&!i&&o()}),document.addEventListener(`keydown`,n=>{if(n.key===`Escape`){let n=!t.hidden;o(),n&&e.focus()}})},wt={category:`data-category`,categoryId:`data-category-id`,emitMetadata:`data-emit-metadata`,inputPosition:`data-input-position`,lang:`data-lang`,loading:`data-loading`,mapping:`data-mapping`,reactionsEnabled:`data-reactions-enabled`,repo:`data-repo`,repoId:`data-repo-id`,strict:`data-strict`,term:`data-term`,theme:`data-theme`},Tt=e=>{if(!e||e.dataset.giscusLoaded===`true`)return;let t=document.createElement(`script`);t.src=e.dataset.giscusScriptSrc||`https://giscus.app/client.js`,t.async=!0,t.crossOrigin=`anonymous`;for(let[n,r]of Object.entries(wt)){let i=e.dataset[`giscus${n.charAt(0).toUpperCase()}${n.slice(1)}`];i&&t.setAttribute(r,i)}e.append(t),e.dataset.giscusLoaded=`true`},Et=()=>{let e=document.querySelectorAll(`[data-comments-collapsible]`);e.length&&e.forEach(e=>{let t=e.querySelector(`[data-comments-toggle]`),n=e.querySelector(`[data-comments-panel]`),r=e.querySelector(`[data-giscus-mount]`);!t||!n||!r||t.addEventListener(`click`,()=>{let i=t.getAttribute(`aria-expanded`)!==`true`;t.setAttribute(`aria-expanded`,i?`true`:`false`),e.classList.toggle(`is-open`,i),n.hidden=!i,i&&Tt(r)})})},Dt=()=>{let e=document.querySelector(`#main-header`);if(!e)return;let t=()=>{if(window.scrollY>8){e.classList.add(`is-scrolled`);return}e.classList.remove(`is-scrolled`)};t(),window.addEventListener(`scroll`,t,{passive:!0})},Ot=()=>{let e=document.querySelectorAll(`[data-series-collapsible]`);e.length&&e.forEach(e=>{let t=e.querySelector(`[data-series-toggle]`),n=e.querySelector(`[data-series-panel]`);if(!t||!n)return;let r=()=>{let r=t.getAttribute(`aria-expanded`)===`true`;e.classList.toggle(`is-open`,r),n.hidden=!r};r(),t.addEventListener(`click`,()=>{let e=t.getAttribute(`aria-expanded`)===`true`;t.setAttribute(`aria-expanded`,e?`false`:`true`),r()});let i=e.querySelectorAll(`[data-series-overflow-toggle]`);i.length&&i.forEach(t=>{t.addEventListener(`click`,()=>{let n=t.dataset.seriesOverflowGroup,r=n?`[data-series-overflow-item][data-series-overflow-group="${n}"]`:`[data-series-overflow-item]`;e.querySelectorAll(r).forEach(e=>{e.hidden=!1}),t.setAttribute(`aria-expanded`,`true`),t.hidden=!0})})})},kt=()=>{let e=document.querySelector(`[data-reading-progress]`),t=document.querySelector(`.content`);if(!e||!t)return;let n=()=>{let n=t.offsetTop,r=t.offsetHeight,i=window.innerHeight,a=window.scrollY,o=Math.max(r-i,1),s=Math.min(Math.max(a-n,0),o)/o*100;e.style.transform=`scaleX(${s/100})`};n(),window.addEventListener(`scroll`,n,{passive:!0}),window.addEventListener(`resize`,n)},At=`[data-search-root]`,X,Z=e=>(e||``).toString().normalize(`NFKD`).replace(/[\u0300-\u036f]/g,``).toLowerCase().replace(/[^a-z0-9\s-]/g,` `).replace(/\s+/g,` `).trim(),jt=e=>Z(e).split(` `).filter(e=>e.length>0),Mt=e=>[...new Set(jt(e))],Nt=(e,t)=>{let n=e.date?Date.parse(e.date):0,r=t.date?Date.parse(t.date):0;return Number.isNaN(n)||Number.isNaN(r)?0:r-n},Pt=e=>{let t=e.title||``,n=e.content||``,r=Array.isArray(e.tags)?e.tags:[],i=Array.isArray(e.categories)?e.categories:[];return{...e,title:t,content:n,tags:r,categories:i,normalizedTitle:Z(t),normalizedContent:Z(n),normalizedTags:r.map(Z).filter(Boolean),normalizedCategories:i.map(Z).filter(Boolean)}},Ft=async e=>(X||=fetch(e,{headers:{Accept:`application/json`}}).then(e=>{if(!e.ok)throw Error(`Search index request failed with ${e.status}`);return e.json()}).then(e=>e.map(Pt)).catch(e=>{throw X=void 0,e}),X),It=(e,t,n)=>{let r=0;e.normalizedTitle.includes(t)&&(r+=140),e.normalizedContent.includes(t)&&(r+=30),n.forEach(t=>{e.normalizedTitle.includes(t)&&(r+=60),e.normalizedTags.some(e=>e.includes(t))&&(r+=30),e.normalizedCategories.some(e=>e.includes(t))&&(r+=18),e.normalizedContent.includes(t)&&(r+=10)});let i=n.filter(t=>e.normalizedTitle.includes(t)||e.normalizedTags.some(e=>e.includes(t))||e.normalizedCategories.some(e=>e.includes(t))||e.normalizedContent.includes(t)).length;return i===0?0:(i===n.length&&(r+=24),e.type===`post`&&(r+=4),r)},Lt=(e,t,n)=>{let r=Z(t),i=Mt(t);return!r||i.length===0?[]:e.map(e=>({searchDocument:e,score:It(e,r,i)})).filter(e=>e.score>0).sort((e,t)=>t.score-e.score||Nt(e.searchDocument,t.searchDocument)).slice(0,n).map(e=>e.searchDocument)},Rt=(e,t,n)=>{let r=e.replace(/\s+/g,` `).trim();if(!r)return``;let i=Z(t),a=Z(r).indexOf(i);if(a===-1)return r.length>n?`${r.slice(0,n).trimEnd()}...`:r;let o=Math.max(a-Math.floor(n/3),0),s=Math.min(o+n,r.length),c=o>0?`...`:``,l=s<r.length?`...`:``;return`${c}${r.slice(o,s).trim()}${l}`},zt=e=>{let t=[];return e.type&&t.push(e.type===`post`?`Post`:`Page`),e.tags.length>0&&t.push(e.tags.slice(0,2).join(`, `)),t.join(` • `)},Bt=(e,t,n,r)=>{let i=e.querySelector(`[data-search-results]`),a=e.querySelector(`[data-search-status]`);i.innerHTML=``,a.textContent=r,t.forEach(t=>{let r=window.document.createElement(`li`);r.className=`site-search__result-item`;let a=window.document.createElement(`a`);a.className=`site-search__result-link`,a.href=t.url;let o=window.document.createElement(`span`);o.className=`site-search__result-title`,o.textContent=t.title,a.append(o);let s=zt(t);if(s){let e=window.document.createElement(`span`);e.className=`site-search__result-meta`,e.textContent=s,a.append(e)}let c=Number(e.dataset.searchContentPreviewLength||`140`),l=Rt(t.content,n,c);if(l){let e=window.document.createElement(`span`);e.className=`site-search__result-snippet`,e.textContent=l,a.append(e)}r.append(a),i.append(r)})},Vt=e=>{let t=e.querySelector(`[data-search-panel]`),n=e.querySelector(`[data-search-input]`);t.hidden=!1,n.setAttribute(`aria-expanded`,`true`),t.setAttribute(`aria-hidden`,`false`)},Q=e=>{let t=e.querySelector(`[data-search-panel]`),n=e.querySelector(`[data-search-input]`);t.hidden=!0,n.setAttribute(`aria-expanded`,`false`),t.setAttribute(`aria-hidden`,`true`)},$=(e,t)=>{let n=[...e.querySelectorAll(`.site-search__result-link`)];if(n.length===0)return;let r=n.findIndex(e=>e===window.document.activeElement);n[r===-1?t>0?0:n.length-1:(r+t+n.length)%n.length].focus()},Ht=e=>{let t=e.querySelector(`[data-search-input]`),n=e.querySelector(`[data-search-clear]`),r=e.querySelector(`.site-search__form`),i=e.dataset.searchUrl,a=Number(e.dataset.searchMaxResults||`8`),o=Number(e.dataset.searchMinQueryLength||`2`),s=e.dataset.searchIdleText||`Start typing to search the site.`,c=e.dataset.searchTooShortText||`Type at least %d characters to search.`,l=e.dataset.searchLoadingText||`Loading search index...`,u=e.dataset.searchEmptyText||`No results found.`,d=e.dataset.searchErrorText||`Search is unavailable right now.`,f=t=>{let n=e.querySelector(`[data-search-status]`);n.textContent=t},p=()=>{e.querySelector(`[data-search-results]`).innerHTML=``},m=()=>{n.hidden=t.value.length===0},h=async()=>{let n=t.value.trim();if(m(),n.length===0){p(),f(s),Q(e);return}if(Vt(e),n.length<o){p(),f(c.replace(`%d`,`${o}`));return}f(l);try{let t=Lt(await Ft(i),n,a);if(t.length===0){Bt(e,[],n,u);return}Bt(e,t,n,`${t.length} result${t.length===1?``:`s`} for "${n}"`)}catch{p(),f(d)}};t.addEventListener(`focus`,()=>{t.value.trim().length>0&&h()}),t.addEventListener(`input`,()=>{h()}),t.addEventListener(`keydown`,t=>{t.key===`ArrowDown`&&(t.preventDefault(),e.querySelector(`.site-search__result-link`)&&Vt(e),$(e,1)),t.key===`Escape`&&Q(e)}),e.addEventListener(`keydown`,n=>{if(n.key===`Escape`&&(Q(e),t.focus()),n.key===`ArrowDown`&&n.target.matches(`.site-search__result-link`)&&(n.preventDefault(),$(e,1)),n.key===`ArrowUp`&&n.target.matches(`.site-search__result-link`)){if(n.preventDefault(),n.target===e.querySelector(`.site-search__result-link`)){t.focus();return}$(e,-1)}}),n.addEventListener(`click`,()=>{t.value=``,m(),p(),f(s),Q(e),t.focus()}),r.addEventListener(`submit`,t=>{t.preventDefault();let n=e.querySelector(`.site-search__result-link`);if(n){window.location.assign(n.href);return}h()}),window.document.addEventListener(`click`,t=>{e.contains(t.target)||Q(e)}),Q(e)};n({"chevron-down-outline":ft,close:pt,"logo-github":mt,"logo-linkedin":ht,"logo-twitter":gt,"logo-youtube":_t,"menu-outline":vt,"search-outline":yt,"time-outline":bt}),dt(),Ct(),Et(),Dt(),Ot(),kt(),(()=>{let e=window.document.querySelectorAll(At);e.length!==0&&e.forEach(Ht)})()})();
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: imdhemy-jekyll-theme
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.0
4
+ version: 1.7.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mohamad Eldhemy
8
- autorequire:
9
8
  bindir: exe
10
9
  cert_chain: []
11
- date: 2026-03-17 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: jekyll
@@ -80,7 +79,6 @@ dependencies:
80
79
  - - "~>"
81
80
  - !ruby/object:Gem::Version
82
81
  version: '1.4'
83
- description:
84
82
  email:
85
83
  - imdhemy@gmail.com
86
84
  executables:
@@ -141,7 +139,6 @@ homepage: https://imdhemy.com
141
139
  licenses:
142
140
  - MIT
143
141
  metadata: {}
144
- post_install_message:
145
142
  rdoc_options: []
146
143
  require_paths:
147
144
  - lib
@@ -156,8 +153,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
156
153
  - !ruby/object:Gem::Version
157
154
  version: '0'
158
155
  requirements: []
159
- rubygems_version: 3.5.11
160
- signing_key:
156
+ rubygems_version: 4.0.3
161
157
  specification_version: 4
162
158
  summary: Jekyll blog theme with built-in SEO foundations.
163
159
  test_files: []