@netlify/spark-ui 0.0.34 → 0.0.36

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- .n-search-heading{padding-inline:1rem;margin-block:var(--space-xs);font-size:var(--step--2);font-weight:var(--font-regular);color:var(--color-text-3)}
1
+ .n-search-heading{padding-inline:1rem;margin-block:var(--space-xs);font-size:var(--step--2);font-weight:var(--font-semibold, 500);letter-spacing:.1px;color:var(--color-text-3)}
@@ -1 +1 @@
1
- .n-search-link{--n-search-icon-size: 1em;all:unset;display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--space-s, 1rem);align-items:center;padding:var(--n-search-link-padding-block, 1em) var(--n-search-link-padding-inline, 0px);font-size:var(--step--1);font-weight:var(--font-regular);text-decoration:none;cursor:pointer}.n-search-link-body{flex:1;width:80%;color:var(--color-text-2)}.n-search-link:is(:hover,:focus-within){background:var(--n-search-color-bg-2)}.n-search-link:is(:hover,:focus-within) .n-search-link-icon [data-icon=caretRight]{display:block}.n-search-link-label{font-weight:var(--font-semibold, 680);color:var(--color-text-2);line-height:1.5}.n-search-link-excerpt{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--color-text-3);line-height:1.3;font-size:.9em;margin-block-start:var(--space-3xs)}.n-search-link-icon{display:flex;width:var(--n-search-icon-size);height:var(--n-search-icon-size);color:var(--n-search-color-text-secondary)}.n-search-link-icon:first-of-type{margin-inline-start:var(--space-s, 1rem)}.n-search-link-icon [data-icon=caretRight]{display:none;width:.8em;opacity:.3}
1
+ .n-search-link{--n-search-icon-size: 1em;all:unset;display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--space-s, 1rem);align-items:center;padding:var(--n-search-link-padding-block, 1em) var(--n-search-link-padding-inline, 0px);font-size:var(--step--1);font-weight:var(--font-regular);text-decoration:none;cursor:pointer}.n-search-link-body{flex:1;width:80%;color:var(--color-text-2)}.n-search-link:is(:hover,:focus-within){background:var(--n-search-color-bg-2)}.n-search-link:is(:hover,:focus-within) .n-search-link-icon [data-icon=caretRight]{display:block}.n-search-link-title{font-weight:var(--font-semibold, 680);color:var(--color-text-2);line-height:1.5}.n-search-link-excerpt{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--color-text-3);line-height:1.3;font-size:.9em;margin-block-start:var(--space-3xs)}.n-search-link-icon{display:flex;width:var(--n-search-icon-size);height:var(--n-search-icon-size);color:var(--n-search-color-text-secondary)}.n-search-link-icon:first-of-type{margin-inline-start:var(--space-s, 1rem)}.n-search-link-icon [data-icon=caretRight]{display:none;width:.8em;opacity:.3}.n-search-link-label{margin-inline-end:var(--space-2xs)}.n-search-link-badge{display:inline-block;width:max-content;font-size:.7em;padding:.1em .4em;position:relative;bottom:.3em;color:var(--n-search-link-badge-text-color, var(--neutral-500));background:var(--n-search-link-badge-color, var(--neutral-100));border:1px solid var(--n-search-link-badge-border, var(--neutral-300));border-radius:3px}.n-search-link-badge[data-resource=blog]{--n-search-link-badge-color: var(--blue-000);--n-search-link-badge-text-color: var(--blue-500);--n-search-link-badge-border: var(--blue-100)}.n-search-link-badge[data-resource=changelog]{--n-search-link-badge-color: var(--gold-000);--n-search-link-badge-text-color: var(--gold-500);--n-search-link-badge-border: var(--gold-100)}.n-search-link-badge[data-resource=guide]{--n-search-link-badge-color: var(--teal-000);--n-search-link-badge-text-color: var(--teal-500);--n-search-link-badge-border: var(--teal-100)}
@@ -1 +1 @@
1
- .n-keyboard-key{--n-key-text-size: .8em;--n-key-border-radius: 6px;--n-key-text-color: currentColor;--n-key-bg-color: transparent;display:flex;gap:calc(var(--space-3xs) * .5);font-size:var(--n-key-text-size);color:var(--n-key-text-color);background:var(--n-key-bg-color);border:1px solid currentColor;border-radius:var(--n-key-border-radius);padding:var(--n-key-padding-block, .05em) var(--n-key-padding-inline, .3em)}.n-search-heading{padding-inline:1rem;margin-block:var(--space-xs);font-size:var(--step--2);font-weight:var(--font-regular);color:var(--color-text-3)}.n-search-link{--n-search-icon-size: 1em;all:unset;display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--space-s, 1rem);align-items:center;padding:var(--n-search-link-padding-block, 1em) var(--n-search-link-padding-inline, 0px);font-size:var(--step--1);font-weight:var(--font-regular);text-decoration:none;cursor:pointer}.n-search-link-body{flex:1;width:80%;color:var(--color-text-2)}.n-search-link:is(:hover,:focus-within){background:var(--n-search-color-bg-2)}.n-search-link:is(:hover,:focus-within) .n-search-link-icon [data-icon=caretRight]{display:block}.n-search-link-label{font-weight:var(--font-semibold, 680);color:var(--color-text-2);line-height:1.5}.n-search-link-excerpt{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--color-text-3);line-height:1.3;font-size:.9em;margin-block-start:var(--space-3xs)}.n-search-link-icon{display:flex;width:var(--n-search-icon-size);height:var(--n-search-icon-size);color:var(--n-search-color-text-secondary)}.n-search-link-icon:first-of-type{margin-inline-start:var(--space-s, 1rem)}.n-search-link-icon [data-icon=caretRight]{display:none;width:.8em;opacity:.3}.n-search-modal{--n-search-padding-inline: .5em;--n-search-color-text: var(--color-text-1, currentColor);--n-search-color-text-secondary: var(--color-text-2, currentColor);--n-search-color-bg: var(--color-bg-1);--n-search-color-bg-2: var(--color-bg-2);--n-search-color-border: var(--color-bg-3);--n-search-border-radius: 8px;--n-search-max-w: 600px;--n-search-text-highlight: var(--color-text-accent)}.n-search-modal{padding:0;border:none;border-radius:var(--n-search-border-radius);width:min(var(--n-search-max-w),100%);margin-inline:auto}.n-search-container{--mark-bg: var(--n-search-text-highlight);display:grid;width:min(var(--n-search-max-w),100%);min-height:470px;background-color:var(--n-search-color-bg);border-radius:var(--n-search-border-radius);overflow:hidden}.n-search-bar{display:flex;flex-wrap:wrap;align-items:center;overflow:hidden;background:var(--n-search-color-bg);border-bottom:1px solid var(--n-search-color-border)}.n-search-input-wrapper{all:unset;display:flex;width:100%;border-bottom:1px solid var(--n-search-color-border)}.n-search-input{display:inline-flex;box-sizing:border-box;background:var(--n-search-color-bg);inline-size:100%;padding-block:.75rem;padding-inline:var(--n-search-padding-inline);flex:1;border:none;outline:none;font-size:1rem;color:var(--color-text-1)}.n-search-input::placeholder{color:var(--n-search-color-text)}.n-search-label{display:flex;padding-inline:var(--n-search-padding-inline);align-items:center}.n-search-label>*{display:inline-block;margin:0}.n-search-icon{display:flex;width:var(--icon-size, 1em);height:var(--icon-size, 1em);color:var(--n-search-color-text-secondary)}.n-search-term{font-weight:var(--font-medium);font-size:1.1em}.n-search-window{height:400px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;margin-block:0;background:var(--n-search-color-bg)}.n-results-list,ul[role=list]{list-style:none;padding:0}.n-results-list-item{border-bottom:1px solid var(--color-bg-3)}.n-results-list-item:first-of-type{border-top:1px solid var(--color-bg-3)}.n-search-footer{border-top:1px solid var(--n-search-color-border);padding:var(--space-2xs) var(--space-s);background:var(--color-bg-2);display:flex;gap:var(--space-m)}.n-search-footer-tip{--n-key-text-color: var(--n-search-color-text-secondary);color:var(--n-search-color-text-secondary);display:flex;gap:var(--space-2xs);align-items:center;font-size:var(--step--1)}.n-search-modal{transition:display .2s allow-discrete,overlay .2s allow-discrete;animation:closeSearch .2s forwards}.n-search-modal[open]{animation:openSearch .2s forwards}@keyframes openSearch{0%{opacity:0;transform:translateY(20px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes closeSearch{0%{opacity:1;transform:translateY(0) scale(1)}50%{opacity:.3}to{opacity:0;transform:translateY(20px) scale(.9)}}.n-search-modal::backdrop{animation:closeSearchBackdrop .2s forwards}.n-search-modal[open]::backdrop{animation:openSearchBackdrop .2s forwards}@keyframes openSearchBackdrop{0%{opacity:0;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}to{opacity:1;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}}@keyframes closeSearchBackdrop{0%{opacity:1;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px)}50%{opacity:.3}to{opacity:0;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}}
1
+ .n-keyboard-key{--n-key-text-size: .8em;--n-key-border-radius: 6px;--n-key-text-color: currentColor;--n-key-bg-color: transparent;display:flex;gap:calc(var(--space-3xs) * .5);font-size:var(--n-key-text-size);color:var(--n-key-text-color);background:var(--n-key-bg-color);border:1px solid currentColor;border-radius:var(--n-key-border-radius);padding:var(--n-key-padding-block, .05em) var(--n-key-padding-inline, .3em)}.n-search-heading{padding-inline:1rem;margin-block:var(--space-xs);font-size:var(--step--2);font-weight:var(--font-semibold, 500);letter-spacing:.1px;color:var(--color-text-3)}.n-search-link{--n-search-icon-size: 1em;all:unset;display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--space-s, 1rem);align-items:center;padding:var(--n-search-link-padding-block, 1em) var(--n-search-link-padding-inline, 0px);font-size:var(--step--1);font-weight:var(--font-regular);text-decoration:none;cursor:pointer}.n-search-link-body{flex:1;width:80%;color:var(--color-text-2)}.n-search-link:is(:hover,:focus-within){background:var(--n-search-color-bg-2)}.n-search-link:is(:hover,:focus-within) .n-search-link-icon [data-icon=caretRight]{display:block}.n-search-link-title{font-weight:var(--font-semibold, 680);color:var(--color-text-2);line-height:1.5}.n-search-link-excerpt{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--color-text-3);line-height:1.3;font-size:.9em;margin-block-start:var(--space-3xs)}.n-search-link-icon{display:flex;width:var(--n-search-icon-size);height:var(--n-search-icon-size);color:var(--n-search-color-text-secondary)}.n-search-link-icon:first-of-type{margin-inline-start:var(--space-s, 1rem)}.n-search-link-icon [data-icon=caretRight]{display:none;width:.8em;opacity:.3}.n-search-link-label{margin-inline-end:var(--space-2xs)}.n-search-link-badge{display:inline-block;width:max-content;font-size:.7em;padding:.1em .4em;position:relative;bottom:.3em;color:var(--n-search-link-badge-text-color, var(--neutral-500));background:var(--n-search-link-badge-color, var(--neutral-100));border:1px solid var(--n-search-link-badge-border, var(--neutral-300));border-radius:3px}.n-search-link-badge[data-resource=blog]{--n-search-link-badge-color: var(--blue-000);--n-search-link-badge-text-color: var(--blue-500);--n-search-link-badge-border: var(--blue-100)}.n-search-link-badge[data-resource=changelog]{--n-search-link-badge-color: var(--gold-000);--n-search-link-badge-text-color: var(--gold-500);--n-search-link-badge-border: var(--gold-100)}.n-search-link-badge[data-resource=guide]{--n-search-link-badge-color: var(--teal-000);--n-search-link-badge-text-color: var(--teal-500);--n-search-link-badge-border: var(--teal-100)}.n-search-modal{--n-search-padding-inline: .5em;--n-search-color-text: var(--color-text-1, currentColor);--n-search-color-text-secondary: var(--color-text-2, currentColor);--n-search-color-bg: var(--color-bg-1);--n-search-color-bg-2: var(--color-bg-2);--n-search-color-border: var(--color-bg-3);--n-search-border-radius: 8px;--n-search-max-w: 600px;--n-search-text-highlight: var(--color-text-accent)}.n-search-modal{padding:0;border:none;border-radius:var(--n-search-border-radius);width:min(var(--n-search-max-w),100%);margin-inline:auto}.n-search-container{--mark-bg: var(--n-search-text-highlight);display:grid;width:min(var(--n-search-max-w),100%);min-height:470px;background-color:var(--n-search-color-bg);border-radius:var(--n-search-border-radius);overflow:hidden}.n-search-bar{display:flex;flex-wrap:wrap;align-items:center;overflow:hidden;background:var(--n-search-color-bg);border-bottom:1px solid var(--n-search-color-border)}.n-search-input-wrapper{all:unset;display:flex;width:100%;border-bottom:1px solid var(--n-search-color-border)}.n-search-input{display:inline-flex;box-sizing:border-box;background:var(--n-search-color-bg);inline-size:100%;padding-block:.75rem;padding-inline:var(--n-search-padding-inline);flex:1;border:none;outline:none;font-size:1rem;color:var(--color-text-1)}.n-search-input::placeholder{color:var(--n-search-color-text)}.n-search-label{display:flex;padding-inline:var(--n-search-padding-inline);align-items:center}.n-search-label>*{display:inline-block;margin:0}.n-search-icon{display:flex;width:var(--icon-size, 1em);height:var(--icon-size, 1em);color:var(--n-search-color-text-secondary)}.n-search-term{font-weight:var(--font-medium);font-size:1.1em}.n-search-window{height:400px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;margin-block:0;background:var(--n-search-color-bg)}.n-results-list,ul[role=list]{list-style:none;padding:0}.n-results-list-item{border-bottom:1px solid var(--color-bg-3)}.n-results-list-item:first-of-type{border-top:1px solid var(--color-bg-3)}.n-search-footer{border-top:1px solid var(--n-search-color-border);padding:var(--space-2xs) var(--space-s);background:var(--color-bg-2);display:flex;gap:var(--space-m)}.n-search-footer-tip{--n-key-text-color: var(--n-search-color-text-secondary);color:var(--n-search-color-text-secondary);display:flex;gap:var(--space-2xs);align-items:center;font-size:var(--step--1)}.n-search-modal{transition:display .2s allow-discrete,overlay .2s allow-discrete;animation:closeSearch .2s forwards}.n-search-modal[open]{animation:openSearch .2s forwards}@keyframes openSearch{0%{opacity:0;transform:translateY(20px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes closeSearch{0%{opacity:1;transform:translateY(0) scale(1)}50%{opacity:.3}to{opacity:0;transform:translateY(20px) scale(.9)}}.n-search-modal::backdrop{animation:closeSearchBackdrop .2s forwards}.n-search-modal[open]::backdrop{animation:openSearchBackdrop .2s forwards}@keyframes openSearchBackdrop{0%{opacity:0;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}to{opacity:1;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}}@keyframes closeSearchBackdrop{0%{opacity:1;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px)}50%{opacity:.3}to{opacity:0;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}}
@@ -103,10 +103,16 @@ const n = () => /* @__PURE__ */ C(
103
103
  d: "M0 4.57143C0 2.04286 2.04286 0 4.57143 0C37.4 0 64 26.6 64 59.4286C64 61.9571 61.9571 64 59.4286 64C56.9 64 54.8571 61.9571 54.8571 59.4286C54.8571 31.6571 32.3429 9.14286 4.57143 9.14286C2.04286 9.14286 0 7.1 0 4.57143ZM0 54.8571C0 52.4323 0.963263 50.1068 2.67788 48.3922C4.3925 46.6776 6.71802 45.7143 9.14286 45.7143C11.5677 45.7143 13.8932 46.6776 15.6078 48.3922C17.3225 50.1068 18.2857 52.4323 18.2857 54.8571C18.2857 57.282 17.3225 59.6075 15.6078 61.3221C13.8932 63.0367 11.5677 64 9.14286 64C6.71802 64 4.3925 63.0367 2.67788 61.3221C0.963263 59.6075 0 57.282 0 54.8571ZM4.57143 18.2857C27.3 18.2857 45.7143 36.7 45.7143 59.4286C45.7143 61.9571 43.6714 64 41.1429 64C38.6143 64 36.5714 61.9571 36.5714 59.4286C36.5714 41.7571 22.2429 27.4286 4.57143 27.4286C2.04286 27.4286 0 25.3857 0 22.8571C0 20.3286 2.04286 18.2857 4.57143 18.2857Z",
104
104
  fill: "currentColor"
105
105
  }
106
- ), Z = () => /* @__PURE__ */ C("path", { d: "M15.4623 44.9025C17.0744 43.7277 19.1614 43.4278 21.0359 44.1027C24.3475 45.3024 28.0591 45.9897 32.0081 45.9897C47.5917 45.9897 58.0015 35.9295 58.0015 25.9942C58.0015 16.0589 47.5917 5.99866 32.0081 5.99866C16.4246 5.99866 6.01468 16.0589 6.01468 25.9942C6.01468 29.9933 7.56429 33.8424 10.4761 37.1417C11.5508 38.3539 12.0756 39.9536 11.9507 41.5782C11.7757 43.8402 11.2384 45.9148 10.5385 47.7518C12.663 46.7646 14.4251 45.6648 15.4623 44.915V44.9025ZM2.66553 49.9763C2.89048 49.6389 3.10292 49.3015 3.30287 48.9641C4.55255 46.8895 5.73975 44.1651 5.97719 41.1033C2.22814 36.8418 0.0162028 31.6304 0.0162028 25.9942C0.0162028 11.6349 14.3376 0 32.0081 0C49.6786 0 64 11.6349 64 25.9942C64 40.3535 49.6786 51.9884 32.0081 51.9884C27.3718 51.9884 22.9729 51.1886 18.9989 49.7514C17.5118 50.8387 15.0874 52.3258 12.2131 53.5755C10.3261 54.4004 8.17664 55.1502 5.9522 55.5876C5.85222 55.6126 5.75225 55.6251 5.65228 55.6501C5.10241 55.7501 4.56505 55.8375 4.00269 55.8875C3.9777 55.8875 3.94021 55.9 3.91522 55.9C3.27788 55.9625 2.64054 56 2.0032 56C1.19091 56 0.466089 55.5126 0.153668 54.7628C-0.158753 54.0129 0.0162028 53.1631 0.57856 52.5883C1.09093 52.0634 1.55331 51.501 1.9907 50.9011C2.20315 50.6137 2.4031 50.3263 2.59055 50.0388L2.62804 49.9763H2.66553Z", fill: "currentColor" }), u = () => /* @__PURE__ */ C(
106
+ ), Z = () => /* @__PURE__ */ C(
107
107
  "path",
108
108
  {
109
- d: "M72.5371 33.3999C79.5621 26.3749 79.5621 14.9874 72.5371 7.96235C65.8496 1.27485 55.1121 0.912354 47.9871 7.14985L47.2246 7.82485C45.9746 8.91235 45.8496 10.8124 46.9371 12.0624C48.0246 13.3124 49.9246 13.4374 51.1746 12.3499L51.9371 11.6749C56.6871 7.52486 63.8371 7.76236 68.2996 12.2249C72.9746 16.8999 72.9746 24.4874 68.2996 29.1749L54.1371 43.3249C49.4621 47.9999 41.8621 47.9999 37.1871 43.3249C32.7246 38.8624 32.4871 31.7124 36.6371 26.9624L37.2246 26.2874C38.3121 25.0374 38.1871 23.1499 36.9371 22.0499C35.6871 20.9499 33.7996 21.0874 32.6996 22.3374L32.1121 23.0124C25.8871 30.1374 26.2496 40.8749 32.9371 47.5624C39.9621 54.5874 51.3496 54.5874 58.3746 47.5624L72.5371 33.3999ZM7.46211 30.5999C0.437109 37.6249 0.437109 49.0124 7.46211 56.0249C14.1621 62.7249 24.8996 63.0749 32.0246 56.8374L32.7871 56.1624C34.0371 55.0749 34.1621 53.1749 33.0746 51.9249C31.9871 50.6749 30.0871 50.5499 28.8371 51.6374L28.0746 52.3124C23.3246 56.4624 16.1746 56.2249 11.7121 51.7624C7.03711 47.0874 7.03711 39.4999 11.7121 34.8124L25.8746 20.6749C30.5496 15.9999 38.1371 15.9999 42.8246 20.6749C47.2871 25.1374 47.5246 32.2874 43.3746 37.0374L42.6996 37.7999C41.6121 39.0499 41.7371 40.9374 42.9871 42.0374C44.2371 43.1374 46.1246 42.9999 47.2246 41.7499L47.8996 40.9874C54.1371 33.8624 53.7746 23.1249 47.0871 16.4249C40.0621 9.39985 28.6746 9.39985 21.6496 16.4249L7.46211 30.5999Z",
109
+ d: "M15.4623 44.9025C17.0744 43.7277 19.1614 43.4278 21.0359 44.1027C24.3475 45.3024 28.0591 45.9897 32.0081 45.9897C47.5917 45.9897 58.0015 35.9295 58.0015 25.9942C58.0015 16.0589 47.5917 5.99866 32.0081 5.99866C16.4246 5.99866 6.01468 16.0589 6.01468 25.9942C6.01468 29.9933 7.56429 33.8424 10.4761 37.1417C11.5508 38.3539 12.0756 39.9536 11.9507 41.5782C11.7757 43.8402 11.2384 45.9148 10.5385 47.7518C12.663 46.7646 14.4251 45.6648 15.4623 44.915V44.9025ZM2.66553 49.9763C2.89048 49.6389 3.10292 49.3015 3.30287 48.9641C4.55255 46.8895 5.73975 44.1651 5.97719 41.1033C2.22814 36.8418 0.0162028 31.6304 0.0162028 25.9942C0.0162028 11.6349 14.3376 0 32.0081 0C49.6786 0 64 11.6349 64 25.9942C64 40.3535 49.6786 51.9884 32.0081 51.9884C27.3718 51.9884 22.9729 51.1886 18.9989 49.7514C17.5118 50.8387 15.0874 52.3258 12.2131 53.5755C10.3261 54.4004 8.17664 55.1502 5.9522 55.5876C5.85222 55.6126 5.75225 55.6251 5.65228 55.6501C5.10241 55.7501 4.56505 55.8375 4.00269 55.8875C3.9777 55.8875 3.94021 55.9 3.91522 55.9C3.27788 55.9625 2.64054 56 2.0032 56C1.19091 56 0.466089 55.5126 0.153668 54.7628C-0.158753 54.0129 0.0162028 53.1631 0.57856 52.5883C1.09093 52.0634 1.55331 51.501 1.9907 50.9011C2.20315 50.6137 2.4031 50.3263 2.59055 50.0388L2.62804 49.9763H2.66553Z",
110
+ fill: "currentColor"
111
+ }
112
+ ), u = () => /* @__PURE__ */ C(
113
+ "path",
114
+ {
115
+ d: "M58.0309 26.6159C63.6509 21.0179 63.6509 11.9435 58.0309 6.34543C52.6809 1.01633 44.0909 0.72746 38.3909 5.69797L37.7809 6.23586C36.7809 7.10246 36.6809 8.61652 37.5509 9.61262C38.4209 10.6087 39.9409 10.7083 40.9409 9.84172L41.5509 9.30383C45.3509 5.9968 51.0709 6.18605 54.6409 9.74211C58.3809 13.4675 58.3809 19.5138 54.6409 23.2491L43.3109 34.5249C39.5709 38.2503 33.4909 38.2503 29.7509 34.5249C26.1809 30.9689 25.9909 25.2712 29.3109 21.4861L29.7809 20.9482C30.6509 19.9521 30.5509 18.448 29.5509 17.5714C28.5509 16.6948 27.0409 16.8044 26.1609 17.8005L25.6909 18.3384C20.7109 24.0161 21.0009 32.5726 26.3509 37.9017C31.9709 43.4997 41.0809 43.4997 46.7009 37.9017L58.0309 26.6159ZM5.97086 24.3847C0.350859 29.9827 0.350859 39.0571 5.97086 44.6452C11.3309 49.9843 19.9209 50.2632 25.6209 45.2927L26.2309 44.7548C27.2309 43.8882 27.3309 42.3741 26.4609 41.378C25.5909 40.382 24.0709 40.2823 23.0709 41.1489L22.4609 41.6868C18.6609 44.9939 12.9409 44.8046 9.37086 41.2486C5.63086 37.5232 5.63086 31.4769 9.37086 27.7415L20.7009 16.4757C24.4409 12.7503 30.5109 12.7503 34.2609 16.4757C37.8309 20.0318 38.0209 25.7294 34.7009 29.5146L34.1609 30.1222C33.2909 31.1183 33.3909 32.6224 34.3909 33.4989C35.3909 34.3755 36.9009 34.2659 37.7809 33.2698L38.3209 32.6622C43.3109 26.9845 43.0209 18.428 37.6709 13.089C32.0509 7.49094 22.9409 7.49094 17.3209 13.089L5.97086 24.3847Z",
110
116
  fill: "currentColor"
111
117
  }
112
118
  ), i = () => /* @__PURE__ */ C(
@@ -133,7 +139,13 @@ const n = () => /* @__PURE__ */ C(
133
139
  d: "M8 20.0002C8 14.4752 12.475 10.0002 18 10.0002H22C27.525 10.0002 32 14.4752 32 20.0002V20.5752C32 23.5877 30.5 26.4002 27.9875 28.0627L21.45 32.4252C18.675 34.2752 17 37.4002 17 40.7502V41.0002C17 42.6627 18.3375 44.0002 20 44.0002C21.6625 44.0002 23 42.6627 23 41.0002V40.7502C23 39.4127 23.6625 38.1627 24.775 37.4252L31.3125 33.0627C35.4875 30.2752 37.9875 25.6002 37.9875 20.5877V20.0127C37.9875 11.1752 30.825 4.01271 21.9875 4.01271H17.9875C9.1625 4.00021 2 11.1627 2 20.0002C2 21.6627 3.3375 23.0002 5 23.0002C6.6625 23.0002 8 21.6627 8 20.0002ZM20 60.0002C21.0609 60.0002 22.0783 59.5788 22.8284 58.8286C23.5786 58.0785 24 57.0611 24 56.0002C24 54.9393 23.5786 53.9219 22.8284 53.1718C22.0783 52.4216 21.0609 52.0002 20 52.0002C18.9391 52.0002 17.9217 52.4216 17.1716 53.1718C16.4214 53.9219 16 54.9393 16 56.0002C16 57.0611 16.4214 58.0785 17.1716 58.8286C17.9217 59.5788 18.9391 60.0002 20 60.0002Z",
134
140
  fill: "currentColor"
135
141
  }
136
- ), d = () => /* @__PURE__ */ C("path", { d: "M59.4286 0H4.55714C2.04286 0 0 2.07143 0 4.61429V59.3857C0 61.9286 2.04286 64 4.55714 64H59.4286C61.9429 64 64 61.9286 64 59.3857V4.61429C64 2.07143 61.9429 0 59.4286 0ZM19.3429 54.8571H9.85714V24.3143H19.3571V54.8571H19.3429ZM14.6 20.1429C11.5571 20.1429 9.1 17.6714 9.1 14.6429C9.1 11.6143 11.5571 9.14286 14.6 9.14286C17.6286 9.14286 20.1 11.6143 20.1 14.6429C20.1 17.6857 17.6429 20.1429 14.6 20.1429ZM54.9 54.8571H45.4143V40C45.4143 36.4571 45.3429 31.9 40.4857 31.9C35.5429 31.9 34.7857 35.7571 34.7857 39.7429V54.8571H25.3V24.3143H34.4V28.4857H34.5286C35.8 26.0857 38.9 23.5571 43.5143 23.5571C53.1143 23.5571 54.9 29.8857 54.9 38.1143V54.8571Z", fill: "currentColor" }), f = () => /* @__PURE__ */ C(
142
+ ), d = () => /* @__PURE__ */ C(
143
+ "path",
144
+ {
145
+ d: "M59.4286 0H4.55714C2.04286 0 0 2.07143 0 4.61429V59.3857C0 61.9286 2.04286 64 4.55714 64H59.4286C61.9429 64 64 61.9286 64 59.3857V4.61429C64 2.07143 61.9429 0 59.4286 0ZM19.3429 54.8571H9.85714V24.3143H19.3571V54.8571H19.3429ZM14.6 20.1429C11.5571 20.1429 9.1 17.6714 9.1 14.6429C9.1 11.6143 11.5571 9.14286 14.6 9.14286C17.6286 9.14286 20.1 11.6143 20.1 14.6429C20.1 17.6857 17.6429 20.1429 14.6 20.1429ZM54.9 54.8571H45.4143V40C45.4143 36.4571 45.3429 31.9 40.4857 31.9C35.5429 31.9 34.7857 35.7571 34.7857 39.7429V54.8571H25.3V24.3143H34.4V28.4857H34.5286C35.8 26.0857 38.9 23.5571 43.5143 23.5571C53.1143 23.5571 54.9 29.8857 54.9 38.1143V54.8571Z",
146
+ fill: "currentColor"
147
+ }
148
+ ), f = () => /* @__PURE__ */ C(
137
149
  "path",
138
150
  {
139
151
  d: "M48.6496 6H57.4746L38.1996 28.025L60.8746 58H43.1246L29.2121 39.825L13.3121 58H4.47461L25.0871 34.4375L3.34961 6H21.5496L34.1121 22.6125L48.6496 6ZM45.5496 52.725H50.4371L18.8871 11H13.6371L45.5496 52.725Z",
@@ -1,3 +1,3 @@
1
1
  import { SearchLinkProps } from '../../types/search.types';
2
- declare const SearchLink: ({ icon, label, url, excerpt }: SearchLinkProps) => import("preact").JSX.Element;
2
+ declare const SearchLink: ({ icon, label, url, excerpt, resource }: SearchLinkProps) => import("preact").JSX.Element;
3
3
  export default SearchLink;
@@ -1,13 +1,17 @@
1
- import { u as e } from "../../../../../chunks/jsxRuntime.module.Bzuv3cXw.js";
2
- import r from "../../../Icon/index.js";
3
- import '../../../../../assets/SearchLink.css';const h = ({ icon: a, label: c, url: l, excerpt: n }) => /* @__PURE__ */ e("a", { className: "n-search-link", href: l, children: [
4
- a && /* @__PURE__ */ e("span", { className: "n-search-link-icon", children: /* @__PURE__ */ e(r, { name: a }) }),
5
- /* @__PURE__ */ e("div", { className: "n-search-link-body", children: [
6
- /* @__PURE__ */ e("p", { className: "n-search-link-label", children: c }),
7
- n && /* @__PURE__ */ e("p", { className: "n-search-link-excerpt", dangerouslySetInnerHTML: { __html: n } })
1
+ import { u as a } from "../../../../../chunks/jsxRuntime.module.Bzuv3cXw.js";
2
+ import s from "../../../Icon/index.js";
3
+ import '../../../../../assets/SearchLink.css';const m = ({ icon: e, label: c, url: r, excerpt: l, resource: n }) => /* @__PURE__ */ a("a", { className: "n-search-link", href: r, children: [
4
+ e && /* @__PURE__ */ a("span", { className: "n-search-link-icon", children: /* @__PURE__ */ a(s, { name: e }) }),
5
+ /* @__PURE__ */ a("div", { className: "n-search-link-body", children: [
6
+ /* @__PURE__ */ a("p", { className: "n-search-link-title", children: [
7
+ /* @__PURE__ */ a("span", { className: "n-search-link-label", children: c }),
8
+ " ",
9
+ n && /* @__PURE__ */ a("span", { className: "n-search-link-badge", "data-resource": n, children: n })
10
+ ] }),
11
+ l && /* @__PURE__ */ a("p", { className: "n-search-link-excerpt", dangerouslySetInnerHTML: { __html: l } })
8
12
  ] }),
9
- /* @__PURE__ */ e("div", { className: "n-search-link-icon", children: /* @__PURE__ */ e(r, { name: "caretRight" }) })
13
+ /* @__PURE__ */ a("div", { className: "n-search-link-icon", children: /* @__PURE__ */ a(s, { name: "caretRight" }) })
10
14
  ] });
11
15
  export {
12
- h as default
16
+ m as default
13
17
  };
@@ -1,64 +1,63 @@
1
- import { A as u, y as p, d as S } from "../../../../chunks/hooks.module.BFfOesdf.js";
2
- import { getSiteIcon as w } from "../utils/index.js";
3
- function T(s, r) {
4
- const t = u(null), c = u("");
5
- return p(() => () => {
1
+ import { A as u, y as w, d as S } from "../../../../chunks/hooks.module.BFfOesdf.js";
2
+ function T(c, n) {
3
+ const t = u(null), a = u("");
4
+ return w(() => () => {
6
5
  t.current && clearTimeout(t.current);
7
6
  }, []), { reset: () => {
8
7
  t.current && clearTimeout(t.current);
9
8
  }, run: (h) => {
10
- c.current = h, t.current = setTimeout(
11
- () => s(c.current),
12
- r
9
+ a.current = h, t.current = setTimeout(
10
+ () => c(a.current),
11
+ n
13
12
  );
14
13
  } };
15
14
  }
16
- function x() {
17
- const [s, r] = S({
15
+ function b() {
16
+ const [c, n] = S({
18
17
  searchTerm: "",
19
18
  results: [],
20
19
  isLoading: !1
21
- }), t = u(/* @__PURE__ */ new Map()), { reset: c, run: l } = T((e) => {
22
- (e.length > 2 || e.length === 0) && o(e);
23
- }, 150), o = async (e) => {
20
+ }), t = u(/* @__PURE__ */ new Map()), { reset: a, run: l } = T((e) => {
21
+ (e.length > 2 || e.length === 0) && i(e);
22
+ }, 150), i = async (e) => {
24
23
  if (!(window != null && window.pagefind)) return;
25
- if (r((n) => ({ ...n, isLoading: !0 })), t.current.has(e)) {
26
- r((n) => ({
27
- ...n,
24
+ if (n((r) => ({ ...r, isLoading: !0 })), t.current.has(e)) {
25
+ n((r) => ({
26
+ ...r,
28
27
  results: t.current.get(e),
29
28
  isLoading: !1
30
29
  }));
31
30
  return;
32
31
  }
33
- const i = await window.pagefind.debouncedSearch(e), g = await Promise.all(
34
- i.results.slice(0, 15).map(async (n) => {
35
- var m, f, d;
36
- const a = await n.data();
32
+ const o = await window.pagefind.debouncedSearch(e), d = await Promise.all(
33
+ o.results.slice(0, 15).map(async (r) => {
34
+ var f, m;
35
+ const s = await r.data(), g = (p) => p.replace("#", "");
37
36
  return {
38
- icon: w((m = a.meta) == null ? void 0 : m.content_type),
39
- content_type: (f = a.meta) == null ? void 0 : f.content_type,
40
- label: (d = a.meta) == null ? void 0 : d.title,
41
- url: a.url,
42
- excerpt: a.excerpt
37
+ icon: "pageWithLines",
38
+ resource: (f = s.meta) == null ? void 0 : f.resource,
39
+ label: (m = s.meta) == null ? void 0 : m.title,
40
+ url: s.url,
41
+ excerpt: g(s.excerpt)
43
42
  };
44
43
  })
45
44
  );
46
- r((n) => ({
47
- ...n,
48
- results: g,
45
+ n((r) => ({
46
+ ...r,
47
+ results: d,
49
48
  isLoading: !1
50
49
  }));
51
50
  };
52
51
  return {
53
- state: s,
52
+ state: c,
54
53
  actions: {
55
54
  setSearchTerm: (e) => {
56
- r((i) => ({ ...i, searchTerm: e })), c(), l(e);
55
+ n((o) => ({ ...o, searchTerm: e })), a(), l(e);
57
56
  },
58
- submitSearch: o
57
+ submitSearch: i
59
58
  }
60
59
  };
61
60
  }
62
61
  export {
63
- x as useSearch
62
+ b as useSearch
64
63
  };
@@ -3,7 +3,7 @@ import { IconName } from '../../Icon';
3
3
  export interface SearchLinkProps {
4
4
  icon: IconName;
5
5
  label: string;
6
- content_type?: string;
6
+ resource?: 'blog' | 'changelog' | 'docs' | 'guide';
7
7
  url: string;
8
8
  excerpt?: string;
9
9
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@netlify/spark-ui",
3
3
  "description": "Assets, design tokens, components, and utilities",
4
- "version": "0.0.34",
4
+ "version": "0.0.36",
5
5
  "type": "module",
6
6
  "main": "dist/components/preact/index.js",
7
7
  "types": "dist/components/preact/index.d.ts",
@@ -7,14 +7,14 @@ interface Props {
7
7
  const { id, class: className, ...rest } = Astro.props;
8
8
  ---
9
9
 
10
- <x-tabs id={id} class={className} {...rest}>
10
+ <n-tabs id={id} class={className} {...rest}>
11
11
  <slot />
12
- </x-tabs>
12
+ </n-tabs>
13
13
 
14
14
  <script>
15
15
  /**
16
16
  * Slightly altered version of another tabs component
17
- * Adds "tabs-change" event that includes selected tab info
17
+ * Adds "tabs-change" event that returns selected tab info
18
18
  * {@link https://www.mayank.co/blog/tabs}
19
19
  */
20
20
  class Tabs extends HTMLElement {
@@ -102,5 +102,5 @@ const { id, class: className, ...rest } = Astro.props;
102
102
  }
103
103
  }
104
104
 
105
- customElements.define('x-tabs', Tabs);
105
+ customElements.define('n-tabs', Tabs);
106
106
  </script>
@@ -118,14 +118,17 @@ const RSSIcon: FunctionComponent = () => {
118
118
 
119
119
  const CommentIcon: FunctionComponent = () => {
120
120
  return (
121
- <path d="M15.4623 44.9025C17.0744 43.7277 19.1614 43.4278 21.0359 44.1027C24.3475 45.3024 28.0591 45.9897 32.0081 45.9897C47.5917 45.9897 58.0015 35.9295 58.0015 25.9942C58.0015 16.0589 47.5917 5.99866 32.0081 5.99866C16.4246 5.99866 6.01468 16.0589 6.01468 25.9942C6.01468 29.9933 7.56429 33.8424 10.4761 37.1417C11.5508 38.3539 12.0756 39.9536 11.9507 41.5782C11.7757 43.8402 11.2384 45.9148 10.5385 47.7518C12.663 46.7646 14.4251 45.6648 15.4623 44.915V44.9025ZM2.66553 49.9763C2.89048 49.6389 3.10292 49.3015 3.30287 48.9641C4.55255 46.8895 5.73975 44.1651 5.97719 41.1033C2.22814 36.8418 0.0162028 31.6304 0.0162028 25.9942C0.0162028 11.6349 14.3376 0 32.0081 0C49.6786 0 64 11.6349 64 25.9942C64 40.3535 49.6786 51.9884 32.0081 51.9884C27.3718 51.9884 22.9729 51.1886 18.9989 49.7514C17.5118 50.8387 15.0874 52.3258 12.2131 53.5755C10.3261 54.4004 8.17664 55.1502 5.9522 55.5876C5.85222 55.6126 5.75225 55.6251 5.65228 55.6501C5.10241 55.7501 4.56505 55.8375 4.00269 55.8875C3.9777 55.8875 3.94021 55.9 3.91522 55.9C3.27788 55.9625 2.64054 56 2.0032 56C1.19091 56 0.466089 55.5126 0.153668 54.7628C-0.158753 54.0129 0.0162028 53.1631 0.57856 52.5883C1.09093 52.0634 1.55331 51.501 1.9907 50.9011C2.20315 50.6137 2.4031 50.3263 2.59055 50.0388L2.62804 49.9763H2.66553Z" fill="currentColor" />
121
+ <path
122
+ d="M15.4623 44.9025C17.0744 43.7277 19.1614 43.4278 21.0359 44.1027C24.3475 45.3024 28.0591 45.9897 32.0081 45.9897C47.5917 45.9897 58.0015 35.9295 58.0015 25.9942C58.0015 16.0589 47.5917 5.99866 32.0081 5.99866C16.4246 5.99866 6.01468 16.0589 6.01468 25.9942C6.01468 29.9933 7.56429 33.8424 10.4761 37.1417C11.5508 38.3539 12.0756 39.9536 11.9507 41.5782C11.7757 43.8402 11.2384 45.9148 10.5385 47.7518C12.663 46.7646 14.4251 45.6648 15.4623 44.915V44.9025ZM2.66553 49.9763C2.89048 49.6389 3.10292 49.3015 3.30287 48.9641C4.55255 46.8895 5.73975 44.1651 5.97719 41.1033C2.22814 36.8418 0.0162028 31.6304 0.0162028 25.9942C0.0162028 11.6349 14.3376 0 32.0081 0C49.6786 0 64 11.6349 64 25.9942C64 40.3535 49.6786 51.9884 32.0081 51.9884C27.3718 51.9884 22.9729 51.1886 18.9989 49.7514C17.5118 50.8387 15.0874 52.3258 12.2131 53.5755C10.3261 54.4004 8.17664 55.1502 5.9522 55.5876C5.85222 55.6126 5.75225 55.6251 5.65228 55.6501C5.10241 55.7501 4.56505 55.8375 4.00269 55.8875C3.9777 55.8875 3.94021 55.9 3.91522 55.9C3.27788 55.9625 2.64054 56 2.0032 56C1.19091 56 0.466089 55.5126 0.153668 54.7628C-0.158753 54.0129 0.0162028 53.1631 0.57856 52.5883C1.09093 52.0634 1.55331 51.501 1.9907 50.9011C2.20315 50.6137 2.4031 50.3263 2.59055 50.0388L2.62804 49.9763H2.66553Z"
123
+ fill="currentColor"
124
+ />
122
125
  );
123
126
  };
124
127
 
125
128
  const LinkIcon: FunctionComponent = () => {
126
129
  return (
127
130
  <path
128
- d="M72.5371 33.3999C79.5621 26.3749 79.5621 14.9874 72.5371 7.96235C65.8496 1.27485 55.1121 0.912354 47.9871 7.14985L47.2246 7.82485C45.9746 8.91235 45.8496 10.8124 46.9371 12.0624C48.0246 13.3124 49.9246 13.4374 51.1746 12.3499L51.9371 11.6749C56.6871 7.52486 63.8371 7.76236 68.2996 12.2249C72.9746 16.8999 72.9746 24.4874 68.2996 29.1749L54.1371 43.3249C49.4621 47.9999 41.8621 47.9999 37.1871 43.3249C32.7246 38.8624 32.4871 31.7124 36.6371 26.9624L37.2246 26.2874C38.3121 25.0374 38.1871 23.1499 36.9371 22.0499C35.6871 20.9499 33.7996 21.0874 32.6996 22.3374L32.1121 23.0124C25.8871 30.1374 26.2496 40.8749 32.9371 47.5624C39.9621 54.5874 51.3496 54.5874 58.3746 47.5624L72.5371 33.3999ZM7.46211 30.5999C0.437109 37.6249 0.437109 49.0124 7.46211 56.0249C14.1621 62.7249 24.8996 63.0749 32.0246 56.8374L32.7871 56.1624C34.0371 55.0749 34.1621 53.1749 33.0746 51.9249C31.9871 50.6749 30.0871 50.5499 28.8371 51.6374L28.0746 52.3124C23.3246 56.4624 16.1746 56.2249 11.7121 51.7624C7.03711 47.0874 7.03711 39.4999 11.7121 34.8124L25.8746 20.6749C30.5496 15.9999 38.1371 15.9999 42.8246 20.6749C47.2871 25.1374 47.5246 32.2874 43.3746 37.0374L42.6996 37.7999C41.6121 39.0499 41.7371 40.9374 42.9871 42.0374C44.2371 43.1374 46.1246 42.9999 47.2246 41.7499L47.8996 40.9874C54.1371 33.8624 53.7746 23.1249 47.0871 16.4249C40.0621 9.39985 28.6746 9.39985 21.6496 16.4249L7.46211 30.5999Z"
131
+ d="M58.0309 26.6159C63.6509 21.0179 63.6509 11.9435 58.0309 6.34543C52.6809 1.01633 44.0909 0.72746 38.3909 5.69797L37.7809 6.23586C36.7809 7.10246 36.6809 8.61652 37.5509 9.61262C38.4209 10.6087 39.9409 10.7083 40.9409 9.84172L41.5509 9.30383C45.3509 5.9968 51.0709 6.18605 54.6409 9.74211C58.3809 13.4675 58.3809 19.5138 54.6409 23.2491L43.3109 34.5249C39.5709 38.2503 33.4909 38.2503 29.7509 34.5249C26.1809 30.9689 25.9909 25.2712 29.3109 21.4861L29.7809 20.9482C30.6509 19.9521 30.5509 18.448 29.5509 17.5714C28.5509 16.6948 27.0409 16.8044 26.1609 17.8005L25.6909 18.3384C20.7109 24.0161 21.0009 32.5726 26.3509 37.9017C31.9709 43.4997 41.0809 43.4997 46.7009 37.9017L58.0309 26.6159ZM5.97086 24.3847C0.350859 29.9827 0.350859 39.0571 5.97086 44.6452C11.3309 49.9843 19.9209 50.2632 25.6209 45.2927L26.2309 44.7548C27.2309 43.8882 27.3309 42.3741 26.4609 41.378C25.5909 40.382 24.0709 40.2823 23.0709 41.1489L22.4609 41.6868C18.6609 44.9939 12.9409 44.8046 9.37086 41.2486C5.63086 37.5232 5.63086 31.4769 9.37086 27.7415L20.7009 16.4757C24.4409 12.7503 30.5109 12.7503 34.2609 16.4757C37.8309 20.0318 38.0209 25.7294 34.7009 29.5146L34.1609 30.1222C33.2909 31.1183 33.3909 32.6224 34.3909 33.4989C35.3909 34.3755 36.9009 34.2659 37.7809 33.2698L38.3209 32.6622C43.3109 26.9845 43.0209 18.428 37.6709 13.089C32.0509 7.49094 22.9409 7.49094 17.3209 13.089L5.97086 24.3847Z"
129
132
  fill="currentColor"
130
133
  />
131
134
  );
@@ -169,7 +172,10 @@ const QuestionIcon: FunctionComponent = () => {
169
172
 
170
173
  const LinkedInIcon: FunctionComponent = () => {
171
174
  return (
172
- <path d="M59.4286 0H4.55714C2.04286 0 0 2.07143 0 4.61429V59.3857C0 61.9286 2.04286 64 4.55714 64H59.4286C61.9429 64 64 61.9286 64 59.3857V4.61429C64 2.07143 61.9429 0 59.4286 0ZM19.3429 54.8571H9.85714V24.3143H19.3571V54.8571H19.3429ZM14.6 20.1429C11.5571 20.1429 9.1 17.6714 9.1 14.6429C9.1 11.6143 11.5571 9.14286 14.6 9.14286C17.6286 9.14286 20.1 11.6143 20.1 14.6429C20.1 17.6857 17.6429 20.1429 14.6 20.1429ZM54.9 54.8571H45.4143V40C45.4143 36.4571 45.3429 31.9 40.4857 31.9C35.5429 31.9 34.7857 35.7571 34.7857 39.7429V54.8571H25.3V24.3143H34.4V28.4857H34.5286C35.8 26.0857 38.9 23.5571 43.5143 23.5571C53.1143 23.5571 54.9 29.8857 54.9 38.1143V54.8571Z" fill="currentColor"/>
175
+ <path
176
+ d="M59.4286 0H4.55714C2.04286 0 0 2.07143 0 4.61429V59.3857C0 61.9286 2.04286 64 4.55714 64H59.4286C61.9429 64 64 61.9286 64 59.3857V4.61429C64 2.07143 61.9429 0 59.4286 0ZM19.3429 54.8571H9.85714V24.3143H19.3571V54.8571H19.3429ZM14.6 20.1429C11.5571 20.1429 9.1 17.6714 9.1 14.6429C9.1 11.6143 11.5571 9.14286 14.6 9.14286C17.6286 9.14286 20.1 11.6143 20.1 14.6429C20.1 17.6857 17.6429 20.1429 14.6 20.1429ZM54.9 54.8571H45.4143V40C45.4143 36.4571 45.3429 31.9 40.4857 31.9C35.5429 31.9 34.7857 35.7571 34.7857 39.7429V54.8571H25.3V24.3143H34.4V28.4857H34.5286C35.8 26.0857 38.9 23.5571 43.5143 23.5571C53.1143 23.5571 54.9 29.8857 54.9 38.1143V54.8571Z"
177
+ fill="currentColor"
178
+ />
173
179
  );
174
180
  };
175
181
 
@@ -2,6 +2,7 @@
2
2
  padding-inline: 1rem;
3
3
  margin-block: var(--space-xs);
4
4
  font-size: var(--step--2);
5
- font-weight: var(--font-regular);
5
+ font-weight: var(--font-semibold, 500);
6
+ letter-spacing: .1px;
6
7
  color: var(--color-text-3);
7
8
  }
@@ -27,7 +27,7 @@
27
27
  }
28
28
  }
29
29
 
30
- .n-search-link-label {
30
+ .n-search-link-title {
31
31
  font-weight: var(--font-semibold, 680);
32
32
  color: var(--color-text-2);
33
33
  line-height: 1.5;
@@ -59,3 +59,36 @@
59
59
  width: .8em;
60
60
  opacity: .3;
61
61
  }
62
+
63
+ .n-search-link-label {
64
+ margin-inline-end: var(--space-2xs);
65
+ }
66
+
67
+ .n-search-link-badge {
68
+ display: inline-block;
69
+ width: max-content;
70
+ font-size: .7em;
71
+ padding: .1em .4em;
72
+ position: relative;
73
+ bottom: 0.3em;
74
+ color: var(--n-search-link-badge-text-color, var(--neutral-500));
75
+ background: var(--n-search-link-badge-color, var(--neutral-100));
76
+ border: 1px solid var(--n-search-link-badge-border, var(--neutral-300));
77
+ border-radius: 3px;
78
+ }
79
+
80
+ .n-search-link-badge[data-resource="blog"] {
81
+ --n-search-link-badge-color: var(--blue-000);
82
+ --n-search-link-badge-text-color: var(--blue-500);
83
+ --n-search-link-badge-border: var(--blue-100);
84
+ }
85
+ .n-search-link-badge[data-resource="changelog"] {
86
+ --n-search-link-badge-color: var(--gold-000);
87
+ --n-search-link-badge-text-color: var(--gold-500);
88
+ --n-search-link-badge-border: var(--gold-100);
89
+ }
90
+ .n-search-link-badge[data-resource="guide"] {
91
+ --n-search-link-badge-color: var(--teal-000);
92
+ --n-search-link-badge-text-color: var(--teal-500);
93
+ --n-search-link-badge-border: var(--teal-100);
94
+ }
@@ -3,7 +3,7 @@ import './SearchLink.css';
3
3
 
4
4
  import Icon from '../../../Icon';
5
5
 
6
- const SearchLink = ({ icon, label, url, excerpt }: SearchLinkProps) => {
6
+ const SearchLink = ({ icon, label, url, excerpt, resource }: SearchLinkProps) => {
7
7
  return (
8
8
  <a className="n-search-link" href={url}>
9
9
  {icon && (
@@ -12,7 +12,9 @@ const SearchLink = ({ icon, label, url, excerpt }: SearchLinkProps) => {
12
12
  </span>
13
13
  )}
14
14
  <div className="n-search-link-body">
15
- <p className="n-search-link-label">{label}</p>
15
+
16
+ <p className="n-search-link-title">
17
+ <span className="n-search-link-label">{label}</span> {resource && <span className="n-search-link-badge" data-resource={resource}>{resource}</span>}</p>
16
18
  {excerpt && (
17
19
  <p className="n-search-link-excerpt" dangerouslySetInnerHTML={{ __html: excerpt }} />
18
20
  )}
@@ -1,7 +1,6 @@
1
1
  import { useState, useRef } from 'preact/hooks';
2
2
  import type { SearchState } from '../types/search.types';
3
3
  import { useTimeout } from '../../../../utils/useTimeout';
4
- import { getSiteIcon } from '../utils';
5
4
 
6
5
  /**
7
6
  * Hook that encapsulates client-side search logic:
@@ -44,12 +43,14 @@ export function useSearch() {
44
43
  const results = await Promise.all(
45
44
  search.results.slice(0, 15).map(async (result: any) => {
46
45
  const data = await result.data();
46
+ const removeAnchorLink = (text: string) => text.replace("#", '')
47
+
47
48
  return {
48
- icon: getSiteIcon(data.meta?.content_type),
49
- content_type: data.meta?.content_type,
49
+ icon: 'pageWithLines',
50
+ resource: data.meta?.resource,
50
51
  label: data.meta?.title,
51
52
  url: data.url,
52
- excerpt: data.excerpt,
53
+ excerpt: removeAnchorLink(data.excerpt),
53
54
  };
54
55
  })
55
56
  );
@@ -4,7 +4,7 @@ import type { IconName } from '../../Icon';
4
4
  export interface SearchLinkProps {
5
5
  icon: IconName;
6
6
  label: string;
7
- content_type?: string;
7
+ resource?: 'blog' | 'changelog' | 'docs' | 'guide';
8
8
  url: string;
9
9
  excerpt?: string;
10
10
  }
@@ -16,20 +16,25 @@ button,
16
16
  border: 1px solid var(--color-border);
17
17
  border-radius: var(--radius-m);
18
18
 
19
- /* Button press */
20
- &:active:not(:disabled) {
21
- top: 1px;
22
- }
23
-
24
19
  /* Button icons */
25
20
  svg {
26
21
  flex: none;
27
22
  height: var(--button-icon-size, 1.2cap);
28
23
  width: auto;
29
24
  }
30
- }
31
25
 
32
- :where(button, .button) {
26
+ /* Button states */
27
+ &:active:not(:disabled) {
28
+ top: 1px;
29
+ }
30
+
31
+ &:disabled {
32
+ color: var(--color-disabled-bg);
33
+ background-color: var(--color-disabled-bg);
34
+ border-color: var(--color-disabled-bg);
35
+ }
36
+
37
+ /* Button variants */
33
38
  &[data-button-variant='primary'] {
34
39
  color: var(--color-text-inverse);
35
40
  background-color: var(--color-brand);
@@ -40,4 +45,16 @@ button,
40
45
  background-color: var(--color-brand-alt);
41
46
  border-color: var(--color-brand-alt);
42
47
  }
48
+
49
+ &[data-button-variant='text'] {
50
+ color: currentColor;
51
+ background-color: transparent;
52
+ border-color: transparent;
53
+ }
54
+
55
+ &[data-button-variant='ghost'] {
56
+ color: currentColor;
57
+ background-color: transparent;
58
+ border-color: currentColor;
59
+ }
43
60
  }
@@ -1,16 +1,26 @@
1
- [role='tablist'] {
1
+ .tabs [role='tablist'] {
2
2
  display: flex;
3
- gap: 2rem;
3
+ isolation: isolate;
4
+ border: var(--_border);
4
5
  }
5
6
 
6
- [role='tab'] {
7
- border-bottom: 2px solid transparent;
7
+ .tabs [role='tab'] {
8
+ position: relative;
9
+ border-color: transparent;
8
10
 
9
- &[aria-selected='true'] {
10
- border-color: var(--color-border);
11
+ /* Remove button push/click style */
12
+ &:active:not(:disabled) {
13
+ top: unset;
11
14
  }
12
15
  }
13
16
 
14
- [role='tabpanel'] {
15
- margin-block-start: 1rem;
17
+ .tabs [role='tab'][aria-selected='true'] {
18
+ /* Bring selected tab to layer above others to avoid clipping outline styles */
19
+ z-index: 1;
20
+ }
21
+
22
+ .tabs [role='tabpanel'] {
23
+ border: var(--_border);
24
+ border-block-start: unset;
25
+ padding: var(--_padding);
16
26
  }
@@ -16,6 +16,7 @@
16
16
  --color-bg-1: var(--neutral-000);
17
17
  --color-bg-2: var(--neutral-100);
18
18
  --color-bg-3: var(--neutral-200);
19
+ --color-border: var(--neutral-200);
19
20
  --color-brand: var(--blue-700);
20
21
  --color-disabled-bg: var(--neutral-200);
21
22
  --color-disabled-border: var(--neutral-400);
@@ -146,6 +147,7 @@
146
147
  --color-bg-1: var(--neutral-000);
147
148
  --color-bg-2: var(--neutral-100);
148
149
  --color-bg-3: var(--neutral-200);
150
+ --color-border: var(--neutral-200);
149
151
  --color-brand: var(--blue-700);
150
152
  --color-disabled-bg: var(--neutral-200);
151
153
  --color-disabled-border: var(--neutral-400);
@@ -180,6 +182,7 @@
180
182
  --color-bg-1: var(--neutral-000);
181
183
  --color-bg-2: var(--neutral-100);
182
184
  --color-bg-3: var(--neutral-200);
185
+ --color-border: var(--neutral-200);
183
186
  --color-brand: var(--blue-700);
184
187
  --color-disabled-bg: var(--neutral-200);
185
188
  --color-disabled-border: var(--neutral-400);
@@ -214,6 +217,7 @@
214
217
  --color-bg-1: var(--neutral-800);
215
218
  --color-bg-2: var(--neutral-700);
216
219
  --color-bg-3: var(--neutral-600);
220
+ --color-border: var(--neutral-200);
217
221
  --color-brand: var(--teal-200);
218
222
  --color-disabled-bg: var(--neutral-600);
219
223
  --color-disabled-border: var(--neutral-400);
@@ -248,6 +252,7 @@
248
252
  --color-bg-1: var(--neutral-800);
249
253
  --color-bg-2: var(--neutral-700);
250
254
  --color-bg-3: var(--neutral-600);
255
+ --color-border: var(--neutral-200);
251
256
  --color-brand: var(--teal-200);
252
257
  --color-disabled-bg: var(--neutral-600);
253
258
  --color-disabled-border: var(--neutral-400);
@@ -1,2 +0,0 @@
1
- import { IconName } from '../../Icon';
2
- export declare function getSiteIcon(contentType?: string): IconName;
@@ -1,11 +0,0 @@
1
- const i = {
2
- blog: "book",
3
- changelog: "rss",
4
- doc: "pageWithLines"
5
- };
6
- function o(e) {
7
- return e && i[e] || "pageWithLines";
8
- }
9
- export {
10
- o as getSiteIcon
11
- };
@@ -1,11 +0,0 @@
1
- import { IconName } from '../../Icon';
2
-
3
- const SITE_ICONS: Record<string, IconName> = {
4
- blog: 'book',
5
- changelog: 'rss',
6
- doc: 'pageWithLines',
7
- };
8
-
9
- export function getSiteIcon(contentType?: string): IconName {
10
- return contentType ? SITE_ICONS[contentType] || 'pageWithLines' : 'pageWithLines';
11
- }