robindoc 0.0.0-experimental-7903271 → 0.0.0-experimental-0477e0c
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/components/blocks/search/index.d.ts +7 -3
- package/lib/components/blocks/search/index.d.ts.map +1 -1
- package/lib/components/blocks/search/index.js +1 -1
- package/lib/components/blocks/search/index.js.map +1 -1
- package/lib/styles.css +268 -243
- package/package.json +1 -1
- package/lib/components/blocks/search/search-modal/index.d.ts +0 -16
- package/lib/components/blocks/search/search-modal/index.d.ts.map +0 -1
- package/lib/components/blocks/search/search-modal/index.js +0 -3
- package/lib/components/blocks/search/search-modal/index.js.map +0 -1
- package/lib/components/ui/modal/index.d.ts +0 -8
- package/lib/components/ui/modal/index.d.ts.map +0 -1
- package/lib/components/ui/modal/index.js +0 -2
- package/lib/components/ui/modal/index.js.map +0 -1
- package/lib/components/ui/modal/use-modal.d.ts +0 -6
- package/lib/components/ui/modal/use-modal.d.ts.map +0 -1
- package/lib/components/ui/modal/use-modal.js +0 -2
- package/lib/components/ui/modal/use-modal.js.map +0 -1
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
import "./search.scss";
|
|
2
2
|
import React from "react";
|
|
3
|
-
import {
|
|
3
|
+
import { Searcher } from "../../../core/types/search";
|
|
4
4
|
export interface SearchProps {
|
|
5
|
-
searcher:
|
|
5
|
+
searcher: Searcher | string;
|
|
6
6
|
translations?: {
|
|
7
7
|
/** Search... */
|
|
8
8
|
search?: string;
|
|
9
|
-
|
|
9
|
+
/** Type something... */
|
|
10
|
+
typeSomething?: string;
|
|
11
|
+
/** Nothing found */
|
|
12
|
+
nothingFound?: string;
|
|
13
|
+
};
|
|
10
14
|
}
|
|
11
15
|
export declare const Search: React.FC<SearchProps>;
|
|
12
16
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/blocks/search/index.tsx"],"names":[],"mappings":"AAEA,OAAO,eAAe,CAAC;AAEvB,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/blocks/search/index.tsx"],"names":[],"mappings":"AAEA,OAAO,eAAe,CAAC;AAEvB,OAAO,KAA+C,MAAM,OAAO,CAAC;AAOpE,OAAO,EAAE,QAAQ,EAAiB,mCAA+B;AAIjE,MAAM,WAAW,WAAW;IACxB,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC5B,YAAY,CAAC,EAAE;QACX,gBAAgB;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,wBAAwB;QACxB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,oBAAoB;QACpB,YAAY,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;CACL;AAED,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CA+HxC,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import e,{useRef as r,useEffect as
|
|
2
|
+
import e,{useRef as r,useState as t,useMemo as n,useEffect as o}from"react";import a from"clsx";import{useSystemType as c}from"../../../core/hooks/use-system-type.js";import{KbdContainer as l}from"../../ui/kbd/kbd-container/index.js";import{KbdKey as s}from"../../ui/kbd/kbd-key/index.js";import{createBaseSearcher as m}from"../../../core/utils/create-base-searcher.js";import{useDebouncer as i}from"../../../core/hooks/use-debouncer.js";import{Backdrop as u}from"../../ui/backdrop/index.js";import{NavLink as p}from"../nav-link/index.js";const d=({searcher:d,translations:h={}})=>{const{search:f="Search...",typeSomething:k="Type something...",nothingFound:E="Nothing found"}=h,y=r(null),b=r(null),N=r(null),g=r(null),[v,C]=t(null),w=c(),j=n(()=>"string"==typeof d?m(d):d,[d]),{handler:x}=i(async(e,r)=>{const t=r.target.value;_(t);let n=null;t&&(n=await j(t,e)),C(n)}),L=()=>{const e=document.querySelector(".r-root");e&&e.classList.add("r-root_lock"),b.current?.focus(),N.current?.showModal()},S=()=>{const e=document.querySelector(".r-root");e&&e.classList.remove("r-root_lock"),N.current?.close()};o(()=>{const e=e=>{"k"===e.key.toLowerCase()&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),L())};return window.addEventListener("keydown",e),()=>{window.removeEventListener("keydown",e)}},[]);const _=e=>{y.current&&(y.current.innerText=e||f)};return e.createElement(e.Fragment,null,e.createElement("button",{type:"button",className:"r-search-btn r-no-js",onClick:L},e.createElement("span",{className:"r-search-title",ref:y},f),w&&e.createElement(l,{className:"r-search-kbd"},e.createElement(s,null,"apple"===w?"⌘":"CTRL"),e.createElement(s,null,"K"))),e.createElement("dialog",{onClose:S,className:a("r-search-dialog",Boolean(v?.length)&&"_active"),ref:N},e.createElement(u,{open:!0,onClose:S}),e.createElement("div",{className:"r-search-popup _visible"},e.createElement("form",{className:"r-search-popup-header",onSubmit:e=>{e.preventDefault(),g.current&&g.current.focus()},autoComplete:"off"},e.createElement("input",{type:"text",name:"search",placeholder:k,className:"r-search-input",onChange:x,ref:b}),e.createElement(l,{className:"r-search-kbd r-search-popup-kbd",onClick:S},e.createElement(s,null,"ESC"))),v&&e.createElement("ul",{className:"r-search-results"},v.length>0?v.map((r,t)=>e.createElement("li",{key:r.href},e.createElement(p,{href:r.href,onClick:S,className:"r-search-item",ref:0===t?g:void 0},e.createElement("p",{className:"r-search-item-title"},r.title),r.description&&e.createElement("p",{className:"r-search-item-desc"},r.description)))):e.createElement("p",null,E)))))};export{d as Search};
|
|
3
3
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/components/blocks/search/index.tsx"],"sourcesContent":["\"use client\";\n\nimport \"./search.scss\";\n\nimport React, { useEffect, useRef } from \"react\";\n\nimport { SearchModal, type SearchModalProps } from \"./search-modal\";\nimport { useSystemType } from \"@src/core/hooks/use-system-type\";\nimport { KbdContainer, KbdKey } from \"@src/components/ui/kbd\";\nimport { useModal } from \"@src/components/ui/modal/use-modal\";\n\nexport interface SearchProps {\n searcher: SearchModalProps[\"searcher\"];\n translations?: {\n /** Search... */\n search?: string;\n } & SearchModalProps[\"translations\"];\n}\n\nexport const Search: React.FC<SearchProps> = ({ searcher, translations }) => {\n const { search = \"Search...\", ...modalTranslations } = translations || {};\n const titleRef = useRef<HTMLSpanElement>(null);\n const { opened, closeHandler, openHandler } = useModal();\n const system = useSystemType();\n\n const keyDownHandler = (e: React.KeyboardEvent<HTMLElement>) => {\n if (e.key.length === 1 && e.code !== \"Space\") {\n openHandler();\n }\n };\n\n useEffect(() => {\n const keyDown = (e: KeyboardEvent) => {\n if (e.key.toLowerCase() === \"k\" && (e.metaKey || e.ctrlKey)) {\n e.preventDefault();\n openHandler();\n }\n };\n window.addEventListener(\"keydown\", keyDown);\n\n return () => {\n window.removeEventListener(\"keydown\", keyDown);\n };\n }, []);\n\n const inputHandler = (text: string) => {\n if (titleRef.current) {\n titleRef.current.innerText = text || search;\n }\n };\n\n return (\n <>\n <button type=\"button\" className=\"r-search-btn r-no-js\" onClick={openHandler} onKeyDown={keyDownHandler}>\n <span className=\"r-search-title\" ref={titleRef}>\n {search}\n </span>\n {system && (\n <KbdContainer className=\"r-search-kbd\">\n <KbdKey>{system === \"apple\" ? \"⌘\" : \"CTRL\"}</KbdKey>\n <KbdKey>K</KbdKey>\n </KbdContainer>\n )}\n </button>\n <SearchModal\n open={opened}\n translations={modalTranslations}\n searcher={searcher}\n onClose={closeHandler}\n onInput={inputHandler}\n />\n </>\n );\n};\n"],"names":["Search","searcher","translations","search","modalTranslations","titleRef","useRef","opened","closeHandler","openHandler","useModal","system","useSystemType","useEffect","keyDown","e","key","toLowerCase","metaKey","ctrlKey","preventDefault","window","addEventListener","removeEventListener","React","createElement","Fragment","type","className","onClick","onKeyDown","length","code","ref","KbdContainer","KbdKey","SearchModal","open","onClose","onInput","text","current","innerText"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/components/blocks/search/index.tsx"],"sourcesContent":["\"use client\";\n\nimport \"./search.scss\";\n\nimport React, { useEffect, useMemo, useRef, useState } from \"react\";\nimport clsx from \"clsx\";\n\nimport { useSystemType } from \"@src/core/hooks/use-system-type\";\nimport { KbdContainer, KbdKey } from \"@src/components/ui/kbd\";\nimport { createBaseSearcher } from \"@src/core/utils/create-base-searcher\";\nimport { useDebouncer } from \"@src/core/hooks/use-debouncer\";\nimport { Searcher, SearchResults } from \"@src/core/types/search\";\nimport { Backdrop } from \"@src/components/ui/backdrop\";\nimport { NavLink } from \"@src/components/blocks/nav-link\";\n\nexport interface SearchProps {\n searcher: Searcher | string;\n translations?: {\n /** Search... */\n search?: string;\n /** Type something... */\n typeSomething?: string;\n /** Nothing found */\n nothingFound?: string;\n };\n}\n\nexport const Search: React.FC<SearchProps> = ({ searcher, translations = {} }) => {\n const { search = \"Search...\", typeSomething = \"Type something...\", nothingFound = \"Nothing found\" } = translations;\n const titleRef = useRef<HTMLSpanElement>(null);\n const inputRef = useRef<HTMLInputElement | null>(null);\n const dialogRef = useRef<HTMLDialogElement | null>(null);\n const firstItem = useRef<HTMLAnchorElement | null>(null);\n const [results, setResults] = useState<SearchResults | null>(null);\n const system = useSystemType();\n\n const targetSearcher = useMemo(\n () => (typeof searcher === \"string\" ? createBaseSearcher(searcher) : searcher),\n [searcher],\n );\n\n const { handler } = useDebouncer(async (abortController, e: React.ChangeEvent<HTMLInputElement>) => {\n const value = e.target.value;\n inputHandler(value);\n let newResults = null;\n if (value) {\n newResults = await targetSearcher(value, abortController);\n }\n setResults(newResults);\n });\n\n const openHandler = () => {\n const root = document.querySelector(\".r-root\");\n if (root) {\n root.classList.add(\"r-root_lock\");\n }\n inputRef.current?.focus();\n dialogRef.current?.showModal();\n };\n const closeHandler = () => {\n const root = document.querySelector(\".r-root\");\n if (root) {\n root.classList.remove(\"r-root_lock\");\n }\n dialogRef.current?.close();\n };\n\n useEffect(() => {\n const keyDown = (e: KeyboardEvent) => {\n if (e.key.toLowerCase() === \"k\" && (e.metaKey || e.ctrlKey)) {\n e.preventDefault();\n openHandler();\n }\n };\n window.addEventListener(\"keydown\", keyDown);\n\n return () => {\n window.removeEventListener(\"keydown\", keyDown);\n };\n }, []);\n\n const inputHandler = (text: string) => {\n if (titleRef.current) {\n titleRef.current.innerText = text || search;\n }\n };\n\n const submitHandler = (e: React.FormEvent<HTMLFormElement>) => {\n e.preventDefault();\n if (firstItem.current) {\n firstItem.current.focus();\n }\n };\n\n return (\n <>\n <button type=\"button\" className=\"r-search-btn r-no-js\" onClick={openHandler}>\n <span className=\"r-search-title\" ref={titleRef}>\n {search}\n </span>\n {system && (\n <KbdContainer className=\"r-search-kbd\">\n <KbdKey>{system === \"apple\" ? \"⌘\" : \"CTRL\"}</KbdKey>\n <KbdKey>K</KbdKey>\n </KbdContainer>\n )}\n </button>\n <dialog\n onClose={closeHandler}\n className={clsx(\"r-search-dialog\", Boolean(results?.length) && \"_active\")}\n ref={dialogRef}\n >\n <Backdrop open onClose={closeHandler} />\n <div className=\"r-search-popup _visible\">\n <form className=\"r-search-popup-header\" onSubmit={submitHandler} autoComplete=\"off\">\n <input\n type=\"text\"\n name=\"search\"\n placeholder={typeSomething}\n className=\"r-search-input\"\n onChange={handler}\n ref={inputRef}\n />\n <KbdContainer className=\"r-search-kbd r-search-popup-kbd\" onClick={closeHandler}>\n <KbdKey>ESC</KbdKey>\n </KbdContainer>\n </form>\n {results && (\n <ul className=\"r-search-results\">\n {results.length > 0 ? (\n results.map((item, index) => (\n <li key={item.href}>\n <NavLink\n href={item.href}\n onClick={closeHandler}\n className=\"r-search-item\"\n ref={index === 0 ? firstItem : undefined}\n >\n <p className=\"r-search-item-title\">{item.title}</p>\n {item.description && (\n <p className=\"r-search-item-desc\">{item.description}</p>\n )}\n </NavLink>\n </li>\n ))\n ) : (\n <p>{nothingFound}</p>\n )}\n </ul>\n )}\n </div>\n </dialog>\n </>\n );\n};\n"],"names":["Search","searcher","translations","search","typeSomething","nothingFound","titleRef","useRef","inputRef","dialogRef","firstItem","results","setResults","useState","system","useSystemType","targetSearcher","useMemo","createBaseSearcher","handler","useDebouncer","async","abortController","e","value","target","inputHandler","newResults","openHandler","root","document","querySelector","classList","add","current","focus","showModal","closeHandler","remove","close","useEffect","keyDown","key","toLowerCase","metaKey","ctrlKey","preventDefault","window","addEventListener","removeEventListener","text","innerText","React","createElement","Fragment","type","className","onClick","ref","KbdContainer","KbdKey","onClose","clsx","Boolean","length","Backdrop","open","onSubmit","autoComplete","name","placeholder","onChange","map","item","index","href","NavLink","undefined","title","description"],"mappings":"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"}
|
package/lib/styles.css
CHANGED
|
@@ -122,46 +122,6 @@
|
|
|
122
122
|
}
|
|
123
123
|
.r-powered-link:hover {
|
|
124
124
|
color: var(--r-primary-900);
|
|
125
|
-
}.r-docs-container {
|
|
126
|
-
min-height: calc(100dvh - var(--r-header-height));
|
|
127
|
-
overflow-wrap: break-word;
|
|
128
|
-
box-sizing: border-box;
|
|
129
|
-
}
|
|
130
|
-
@media screen and (width >= 768px) {
|
|
131
|
-
.r-docs-container {
|
|
132
|
-
display: grid;
|
|
133
|
-
justify-content: center;
|
|
134
|
-
column-gap: 32px;
|
|
135
|
-
grid-template-areas: "sidebar breadcrumbs" "sidebar contents" "sidebar content" "sidebar pagination";
|
|
136
|
-
grid-template-columns: 1fr calc(100% - 248px);
|
|
137
|
-
grid-template-rows: auto auto 1fr auto;
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
@media screen and (width >= 1180px) {
|
|
141
|
-
.r-docs-container {
|
|
142
|
-
column-gap: 40px;
|
|
143
|
-
grid-template-areas: "sidebar breadcrumbs contents" "sidebar content contents" "sidebar pagination contents";
|
|
144
|
-
grid-template-columns: 200px 640px 1fr;
|
|
145
|
-
grid-template-rows: auto 1fr auto;
|
|
146
|
-
}
|
|
147
|
-
}.r-blog-container {
|
|
148
|
-
min-height: calc(100dvh - var(--r-header-height));
|
|
149
|
-
overflow-wrap: break-word;
|
|
150
|
-
box-sizing: border-box;
|
|
151
|
-
}
|
|
152
|
-
@media screen and (width >= 1180px) {
|
|
153
|
-
.r-blog-container {
|
|
154
|
-
display: grid;
|
|
155
|
-
justify-content: space-between;
|
|
156
|
-
column-gap: 40px;
|
|
157
|
-
grid-template-areas: "breadcrumbs contents" "content contents" "pagination contents";
|
|
158
|
-
grid-template-columns: 760px 220px;
|
|
159
|
-
grid-template-rows: auto 1fr auto;
|
|
160
|
-
}
|
|
161
|
-
}.r-page-container {
|
|
162
|
-
min-height: calc(100dvh - var(--r-header-height));
|
|
163
|
-
overflow-wrap: break-word;
|
|
164
|
-
box-sizing: border-box;
|
|
165
125
|
}.r-root {
|
|
166
126
|
--r-header-height: 60px;
|
|
167
127
|
position: relative;
|
|
@@ -395,6 +355,46 @@
|
|
|
395
355
|
--r-cl-60: #86181d;
|
|
396
356
|
--r-cl-61: #144620;
|
|
397
357
|
--r-cl-62: #c24e00;
|
|
358
|
+
}.r-docs-container {
|
|
359
|
+
min-height: calc(100dvh - var(--r-header-height));
|
|
360
|
+
overflow-wrap: break-word;
|
|
361
|
+
box-sizing: border-box;
|
|
362
|
+
}
|
|
363
|
+
@media screen and (width >= 768px) {
|
|
364
|
+
.r-docs-container {
|
|
365
|
+
display: grid;
|
|
366
|
+
justify-content: center;
|
|
367
|
+
column-gap: 32px;
|
|
368
|
+
grid-template-areas: "sidebar breadcrumbs" "sidebar contents" "sidebar content" "sidebar pagination";
|
|
369
|
+
grid-template-columns: 1fr calc(100% - 248px);
|
|
370
|
+
grid-template-rows: auto auto 1fr auto;
|
|
371
|
+
}
|
|
372
|
+
}
|
|
373
|
+
@media screen and (width >= 1180px) {
|
|
374
|
+
.r-docs-container {
|
|
375
|
+
column-gap: 40px;
|
|
376
|
+
grid-template-areas: "sidebar breadcrumbs contents" "sidebar content contents" "sidebar pagination contents";
|
|
377
|
+
grid-template-columns: 200px 640px 1fr;
|
|
378
|
+
grid-template-rows: auto 1fr auto;
|
|
379
|
+
}
|
|
380
|
+
}.r-page-container {
|
|
381
|
+
min-height: calc(100dvh - var(--r-header-height));
|
|
382
|
+
overflow-wrap: break-word;
|
|
383
|
+
box-sizing: border-box;
|
|
384
|
+
}.r-blog-container {
|
|
385
|
+
min-height: calc(100dvh - var(--r-header-height));
|
|
386
|
+
overflow-wrap: break-word;
|
|
387
|
+
box-sizing: border-box;
|
|
388
|
+
}
|
|
389
|
+
@media screen and (width >= 1180px) {
|
|
390
|
+
.r-blog-container {
|
|
391
|
+
display: grid;
|
|
392
|
+
justify-content: space-between;
|
|
393
|
+
column-gap: 40px;
|
|
394
|
+
grid-template-areas: "breadcrumbs contents" "content contents" "pagination contents";
|
|
395
|
+
grid-template-columns: 760px 220px;
|
|
396
|
+
grid-template-rows: auto 1fr auto;
|
|
397
|
+
}
|
|
398
398
|
}.keylink-to-content {
|
|
399
399
|
position: absolute !important;
|
|
400
400
|
top: 8px;
|
|
@@ -814,12 +814,98 @@
|
|
|
814
814
|
.r-header-input:checked ~ .r-header-burger .r-burger-line._bottom {
|
|
815
815
|
transform: translateY(0) rotate(-45deg);
|
|
816
816
|
margin-top: 0;
|
|
817
|
+
}.r-dropdown {
|
|
818
|
+
position: relative;
|
|
819
|
+
color: var(--r-main-600);
|
|
820
|
+
transition: color 0.2s 0.1s;
|
|
821
|
+
}
|
|
822
|
+
.r-dropdown:hover, .r-dropdown:focus-within {
|
|
823
|
+
color: var(--r-main-950);
|
|
824
|
+
}
|
|
825
|
+
.r-dropdown:hover .r-dropdown-drop, .r-dropdown:focus-within .r-dropdown-drop {
|
|
826
|
+
visibility: visible;
|
|
827
|
+
pointer-events: all;
|
|
828
|
+
transform: translateY(20px);
|
|
829
|
+
opacity: 1;
|
|
830
|
+
}
|
|
831
|
+
.r-dropdown:hover .r-dropdown-chevron, .r-dropdown:focus-within .r-dropdown-chevron {
|
|
832
|
+
transform: rotate(180deg);
|
|
833
|
+
}
|
|
834
|
+
|
|
835
|
+
.r-dropdown-summary {
|
|
836
|
+
display: flex;
|
|
837
|
+
justify-content: space-between;
|
|
838
|
+
align-items: center;
|
|
839
|
+
width: 100%;
|
|
840
|
+
position: relative;
|
|
841
|
+
color: inherit;
|
|
842
|
+
cursor: pointer;
|
|
843
|
+
padding: 10px 4px;
|
|
844
|
+
font-size: 16px;
|
|
845
|
+
border: 0;
|
|
846
|
+
background: none;
|
|
847
|
+
z-index: 1;
|
|
848
|
+
box-sizing: border-box;
|
|
849
|
+
}
|
|
850
|
+
|
|
851
|
+
.r-dropdown-chevron {
|
|
852
|
+
display: block;
|
|
853
|
+
margin-left: 6px;
|
|
854
|
+
transition: transform 0.3s 0.1s;
|
|
855
|
+
box-sizing: border-box;
|
|
856
|
+
}
|
|
857
|
+
|
|
858
|
+
.r-dropdown-drop {
|
|
859
|
+
list-style: none;
|
|
860
|
+
position: absolute;
|
|
861
|
+
top: 16px;
|
|
862
|
+
left: -12px;
|
|
863
|
+
visibility: hidden;
|
|
864
|
+
pointer-events: none;
|
|
865
|
+
opacity: 0;
|
|
866
|
+
transition: transform 0.3s 0.1s, opacity 0.3s 0.1s, visibility 0.3s 0.1s;
|
|
867
|
+
background-color: var(--r-main-50);
|
|
868
|
+
border: 1px solid var(--r-main-100);
|
|
869
|
+
border-radius: 8px;
|
|
870
|
+
margin: 0;
|
|
871
|
+
padding: 2px 6px;
|
|
872
|
+
min-width: 120px;
|
|
873
|
+
max-width: 180px;
|
|
874
|
+
box-sizing: border-box;
|
|
875
|
+
}
|
|
876
|
+
|
|
877
|
+
.r-dropdown-link {
|
|
878
|
+
display: block;
|
|
879
|
+
width: 100%;
|
|
880
|
+
text-decoration: none;
|
|
881
|
+
color: var(--r-main-700);
|
|
882
|
+
padding: 4px 8px;
|
|
883
|
+
margin-top: 4px;
|
|
884
|
+
margin-bottom: 4px;
|
|
885
|
+
border-radius: 4px;
|
|
886
|
+
transition: background-color 0.2s;
|
|
887
|
+
box-sizing: border-box;
|
|
888
|
+
}
|
|
889
|
+
.r-dropdown-link:hover {
|
|
890
|
+
color: var(--r-main-900);
|
|
891
|
+
background-color: var(--r-main-100);
|
|
892
|
+
}
|
|
893
|
+
|
|
894
|
+
.r-dropdown-link._active {
|
|
895
|
+
color: var(--r-primary-700);
|
|
896
|
+
}.r-container {
|
|
897
|
+
max-width: 1180px;
|
|
898
|
+
padding-right: 12px;
|
|
899
|
+
padding-left: 12px;
|
|
900
|
+
margin-right: auto;
|
|
901
|
+
margin-left: auto;
|
|
902
|
+
box-sizing: border-box;
|
|
817
903
|
}.r-search-btn {
|
|
818
904
|
position: relative;
|
|
819
905
|
border-radius: 6px;
|
|
820
906
|
background-color: var(--r-main-100);
|
|
821
907
|
color: var(--r-main-600);
|
|
822
|
-
padding: 8px
|
|
908
|
+
padding: 8px 16px;
|
|
823
909
|
border: 1px solid var(--r-main-200);
|
|
824
910
|
width: 100%;
|
|
825
911
|
text-align: left;
|
|
@@ -829,7 +915,7 @@
|
|
|
829
915
|
@media screen and (width >= 768px) {
|
|
830
916
|
.r-search-btn {
|
|
831
917
|
width: 220px;
|
|
832
|
-
padding: 8px 96px 8px
|
|
918
|
+
padding: 8px 96px 8px 16px;
|
|
833
919
|
}
|
|
834
920
|
}
|
|
835
921
|
.r-search-btn:hover {
|
|
@@ -859,17 +945,83 @@
|
|
|
859
945
|
}
|
|
860
946
|
}
|
|
861
947
|
|
|
948
|
+
.r-search-dialog {
|
|
949
|
+
width: 100%;
|
|
950
|
+
height: 100%;
|
|
951
|
+
background: none;
|
|
952
|
+
max-width: none;
|
|
953
|
+
max-height: none;
|
|
954
|
+
border: none;
|
|
955
|
+
padding: unset;
|
|
956
|
+
transition: opacity 0.3s ease, overlay 0.4s ease-out allow-discrete, display 0.4s ease-out allow-discrete;
|
|
957
|
+
opacity: 0;
|
|
958
|
+
}
|
|
959
|
+
.r-search-dialog::backdrop {
|
|
960
|
+
backdrop-filter: blur(0);
|
|
961
|
+
background: color-mix(in srgb, var(--r-main-900) 0%, transparent 100%);
|
|
962
|
+
transition: backdrop-filter 0.4s ease-out, background 0.4s ease-out;
|
|
963
|
+
}
|
|
964
|
+
|
|
965
|
+
.r-search-dialog[open] {
|
|
966
|
+
opacity: 1;
|
|
967
|
+
}
|
|
968
|
+
@starting-style {
|
|
969
|
+
.r-search-dialog[open] {
|
|
970
|
+
opacity: 0;
|
|
971
|
+
}
|
|
972
|
+
}
|
|
973
|
+
.r-search-dialog[open]::backdrop {
|
|
974
|
+
backdrop-filter: blur(4px);
|
|
975
|
+
background: color-mix(in srgb, var(--r-main-900) 40%, transparent 100%);
|
|
976
|
+
}
|
|
977
|
+
|
|
978
|
+
.r-search-popup {
|
|
979
|
+
position: fixed;
|
|
980
|
+
left: 50%;
|
|
981
|
+
transform: translateX(-50%);
|
|
982
|
+
top: calc(var(--r-header-height) + 20px);
|
|
983
|
+
z-index: 200;
|
|
984
|
+
width: 100%;
|
|
985
|
+
max-width: 540px;
|
|
986
|
+
background-color: color-mix(in srgb, var(--r-main-50) 95%, transparent);
|
|
987
|
+
border: 2px solid var(--r-main-200);
|
|
988
|
+
border-bottom-width: 0;
|
|
989
|
+
border-radius: 12px 12px 0 0;
|
|
990
|
+
opacity: 0;
|
|
991
|
+
transform: translateX(-50%) translateY(-20px);
|
|
992
|
+
transition: opacity 0.2s, transform 0.2s;
|
|
993
|
+
}
|
|
994
|
+
|
|
995
|
+
.r-search-dialog[open] .r-search-popup {
|
|
996
|
+
opacity: 1;
|
|
997
|
+
transform: translateX(-50%) translateY(0);
|
|
998
|
+
}
|
|
999
|
+
@starting-style {
|
|
1000
|
+
.r-search-dialog[open] .r-search-popup {
|
|
1001
|
+
opacity: 0;
|
|
1002
|
+
transform: translateX(-50%) translateY(-20px);
|
|
1003
|
+
}
|
|
1004
|
+
}
|
|
1005
|
+
|
|
1006
|
+
.r-search-dialog._active .r-search-popup {
|
|
1007
|
+
border-radius: 12px;
|
|
1008
|
+
border-bottom-width: 2px;
|
|
1009
|
+
}
|
|
1010
|
+
|
|
1011
|
+
.r-search-popup:has(.r-search-input:focus) {
|
|
1012
|
+
border-color: var(--r-main-300);
|
|
1013
|
+
}
|
|
1014
|
+
|
|
862
1015
|
.r-search-popup-header {
|
|
863
1016
|
position: relative;
|
|
864
1017
|
border-bottom: 1px solid var(--r-main-200);
|
|
865
1018
|
}
|
|
866
1019
|
|
|
867
1020
|
.r-search-input {
|
|
868
|
-
|
|
869
|
-
background-color: var(--r-main-50);
|
|
1021
|
+
background: none;
|
|
870
1022
|
padding: 16px 20px;
|
|
871
1023
|
border: none;
|
|
872
|
-
border-bottom: 2px solid var(--r-main-
|
|
1024
|
+
border-bottom: 2px solid var(--r-main-100);
|
|
873
1025
|
width: 100%;
|
|
874
1026
|
font-size: 16px;
|
|
875
1027
|
box-sizing: border-box;
|
|
@@ -880,7 +1032,7 @@
|
|
|
880
1032
|
}
|
|
881
1033
|
}
|
|
882
1034
|
.r-search-input:hover {
|
|
883
|
-
border-bottom-color: var(--r-
|
|
1035
|
+
border-bottom-color: var(--r-main-300);
|
|
884
1036
|
}
|
|
885
1037
|
.r-search-input:focus {
|
|
886
1038
|
outline: none;
|
|
@@ -912,14 +1064,14 @@
|
|
|
912
1064
|
color: var(--r-main-700);
|
|
913
1065
|
padding: 8px 12px;
|
|
914
1066
|
border: 1px solid var(--r-main-100);
|
|
915
|
-
border-radius:
|
|
1067
|
+
border-radius: 10px;
|
|
916
1068
|
width: 100%;
|
|
917
1069
|
margin-top: 6px;
|
|
918
1070
|
box-sizing: border-box;
|
|
919
1071
|
}
|
|
920
1072
|
.r-search-item:hover, .r-search-item:focus {
|
|
921
1073
|
color: var(--r-main-950);
|
|
922
|
-
background-color: var(--r-main-
|
|
1074
|
+
background-color: var(--r-main-50);
|
|
923
1075
|
border-color: var(--r-main-200);
|
|
924
1076
|
}
|
|
925
1077
|
|
|
@@ -931,85 +1083,6 @@
|
|
|
931
1083
|
font-size: 14px;
|
|
932
1084
|
color: var(--r-main-600);
|
|
933
1085
|
margin: 12px 0 0;
|
|
934
|
-
}.r-dropdown {
|
|
935
|
-
position: relative;
|
|
936
|
-
color: var(--r-main-600);
|
|
937
|
-
transition: color 0.2s 0.1s;
|
|
938
|
-
}
|
|
939
|
-
.r-dropdown:hover, .r-dropdown:focus-within {
|
|
940
|
-
color: var(--r-main-950);
|
|
941
|
-
}
|
|
942
|
-
.r-dropdown:hover .r-dropdown-drop, .r-dropdown:focus-within .r-dropdown-drop {
|
|
943
|
-
visibility: visible;
|
|
944
|
-
pointer-events: all;
|
|
945
|
-
transform: translateY(20px);
|
|
946
|
-
opacity: 1;
|
|
947
|
-
}
|
|
948
|
-
.r-dropdown:hover .r-dropdown-chevron, .r-dropdown:focus-within .r-dropdown-chevron {
|
|
949
|
-
transform: rotate(180deg);
|
|
950
|
-
}
|
|
951
|
-
|
|
952
|
-
.r-dropdown-summary {
|
|
953
|
-
display: flex;
|
|
954
|
-
justify-content: space-between;
|
|
955
|
-
align-items: center;
|
|
956
|
-
width: 100%;
|
|
957
|
-
position: relative;
|
|
958
|
-
color: inherit;
|
|
959
|
-
cursor: pointer;
|
|
960
|
-
padding: 10px 4px;
|
|
961
|
-
font-size: 16px;
|
|
962
|
-
border: 0;
|
|
963
|
-
background: none;
|
|
964
|
-
z-index: 1;
|
|
965
|
-
box-sizing: border-box;
|
|
966
|
-
}
|
|
967
|
-
|
|
968
|
-
.r-dropdown-chevron {
|
|
969
|
-
display: block;
|
|
970
|
-
margin-left: 6px;
|
|
971
|
-
transition: transform 0.3s 0.1s;
|
|
972
|
-
box-sizing: border-box;
|
|
973
|
-
}
|
|
974
|
-
|
|
975
|
-
.r-dropdown-drop {
|
|
976
|
-
list-style: none;
|
|
977
|
-
position: absolute;
|
|
978
|
-
top: 16px;
|
|
979
|
-
left: -12px;
|
|
980
|
-
visibility: hidden;
|
|
981
|
-
pointer-events: none;
|
|
982
|
-
opacity: 0;
|
|
983
|
-
transition: transform 0.3s 0.1s, opacity 0.3s 0.1s, visibility 0.3s 0.1s;
|
|
984
|
-
background-color: var(--r-main-50);
|
|
985
|
-
border: 1px solid var(--r-main-100);
|
|
986
|
-
border-radius: 8px;
|
|
987
|
-
margin: 0;
|
|
988
|
-
padding: 2px 6px;
|
|
989
|
-
min-width: 120px;
|
|
990
|
-
max-width: 180px;
|
|
991
|
-
box-sizing: border-box;
|
|
992
|
-
}
|
|
993
|
-
|
|
994
|
-
.r-dropdown-link {
|
|
995
|
-
display: block;
|
|
996
|
-
width: 100%;
|
|
997
|
-
text-decoration: none;
|
|
998
|
-
color: var(--r-main-700);
|
|
999
|
-
padding: 4px 8px;
|
|
1000
|
-
margin-top: 4px;
|
|
1001
|
-
margin-bottom: 4px;
|
|
1002
|
-
border-radius: 4px;
|
|
1003
|
-
transition: background-color 0.2s;
|
|
1004
|
-
box-sizing: border-box;
|
|
1005
|
-
}
|
|
1006
|
-
.r-dropdown-link:hover {
|
|
1007
|
-
color: var(--r-main-900);
|
|
1008
|
-
background-color: var(--r-main-100);
|
|
1009
|
-
}
|
|
1010
|
-
|
|
1011
|
-
.r-dropdown-link._active {
|
|
1012
|
-
color: var(--r-primary-700);
|
|
1013
1086
|
}.r-header-social {
|
|
1014
1087
|
display: flex;
|
|
1015
1088
|
flex: 1;
|
|
@@ -1028,13 +1101,6 @@
|
|
|
1028
1101
|
}
|
|
1029
1102
|
.r-header-social-git:hover, .r-header-social-git:focus {
|
|
1030
1103
|
color: var(--r-main-950);
|
|
1031
|
-
}.r-container {
|
|
1032
|
-
max-width: 1180px;
|
|
1033
|
-
padding-right: 12px;
|
|
1034
|
-
padding-left: 12px;
|
|
1035
|
-
margin-right: auto;
|
|
1036
|
-
margin-left: auto;
|
|
1037
|
-
box-sizing: border-box;
|
|
1038
1104
|
}.r-theme-switcher {
|
|
1039
1105
|
position: relative;
|
|
1040
1106
|
display: flex;
|
|
@@ -1470,8 +1536,22 @@
|
|
|
1470
1536
|
}.r-last-modified {
|
|
1471
1537
|
color: var(--r-main-700);
|
|
1472
1538
|
margin-block-start: 16px;
|
|
1473
|
-
}.r-
|
|
1474
|
-
|
|
1539
|
+
}.r-backdrop {
|
|
1540
|
+
position: fixed;
|
|
1541
|
+
top: 0;
|
|
1542
|
+
right: 0;
|
|
1543
|
+
bottom: 0;
|
|
1544
|
+
left: 0;
|
|
1545
|
+
opacity: 0;
|
|
1546
|
+
visibility: hidden;
|
|
1547
|
+
pointer-events: none;
|
|
1548
|
+
z-index: 100;
|
|
1549
|
+
}
|
|
1550
|
+
|
|
1551
|
+
.r-backdrop._visible {
|
|
1552
|
+
opacity: 1;
|
|
1553
|
+
visibility: visible;
|
|
1554
|
+
pointer-events: all;
|
|
1475
1555
|
}.r-external-mark {
|
|
1476
1556
|
position: relative;
|
|
1477
1557
|
vertical-align: text-top;
|
|
@@ -1503,6 +1583,27 @@
|
|
|
1503
1583
|
background-color: currentColor;
|
|
1504
1584
|
border-radius: 0 0 0 4px;
|
|
1505
1585
|
box-sizing: border-box;
|
|
1586
|
+
}.r-git-logo {
|
|
1587
|
+
display: block;
|
|
1588
|
+
}.r-anchor-heading:hover .r-anchor-heading-link {
|
|
1589
|
+
visibility: visible;
|
|
1590
|
+
opacity: 1;
|
|
1591
|
+
}
|
|
1592
|
+
|
|
1593
|
+
.r-anchor-heading-link {
|
|
1594
|
+
visibility: hidden;
|
|
1595
|
+
opacity: 0;
|
|
1596
|
+
transition: opacity 0.3s allow-discrete;
|
|
1597
|
+
padding-inline: 8px;
|
|
1598
|
+
margin-inline-start: -4px;
|
|
1599
|
+
color: var(--r-main-600);
|
|
1600
|
+
text-decoration: none;
|
|
1601
|
+
}
|
|
1602
|
+
.r-anchor-heading-link:hover {
|
|
1603
|
+
color: var(--r-primary-800);
|
|
1604
|
+
}
|
|
1605
|
+
.r-anchor-heading-link::after {
|
|
1606
|
+
content: "#";
|
|
1506
1607
|
}.r-code-section {
|
|
1507
1608
|
position: relative;
|
|
1508
1609
|
margin-block-start: 1.5em;
|
|
@@ -1554,25 +1655,6 @@
|
|
|
1554
1655
|
|
|
1555
1656
|
.r-code-section-filename {
|
|
1556
1657
|
font-family: var(--monospace-font, monospace, monospace);
|
|
1557
|
-
}.r-anchor-heading:hover .r-anchor-heading-link {
|
|
1558
|
-
visibility: visible;
|
|
1559
|
-
opacity: 1;
|
|
1560
|
-
}
|
|
1561
|
-
|
|
1562
|
-
.r-anchor-heading-link {
|
|
1563
|
-
visibility: hidden;
|
|
1564
|
-
opacity: 0;
|
|
1565
|
-
transition: opacity 0.3s allow-discrete;
|
|
1566
|
-
padding-inline: 8px;
|
|
1567
|
-
margin-inline-start: -4px;
|
|
1568
|
-
color: var(--r-main-600);
|
|
1569
|
-
text-decoration: none;
|
|
1570
|
-
}
|
|
1571
|
-
.r-anchor-heading-link:hover {
|
|
1572
|
-
color: var(--r-primary-800);
|
|
1573
|
-
}
|
|
1574
|
-
.r-anchor-heading-link::after {
|
|
1575
|
-
content: "#";
|
|
1576
1658
|
}.r-block {
|
|
1577
1659
|
width: 100%;
|
|
1578
1660
|
overflow: auto;
|
|
@@ -1581,19 +1663,20 @@
|
|
|
1581
1663
|
scrollbar-width: thin;
|
|
1582
1664
|
scrollbar-color: var(--r-main-200) transparent;
|
|
1583
1665
|
box-sizing: border-box;
|
|
1584
|
-
}.r-code-
|
|
1666
|
+
}.r-code-span {
|
|
1585
1667
|
font-family: var(--monospace-font, monospace, monospace);
|
|
1586
|
-
|
|
1587
|
-
|
|
1588
|
-
|
|
1589
|
-
|
|
1590
|
-
|
|
1591
|
-
|
|
1592
|
-
|
|
1593
|
-
|
|
1594
|
-
|
|
1595
|
-
|
|
1596
|
-
|
|
1668
|
+
background-color: var(--r-main-100);
|
|
1669
|
+
border: 1px solid var(--r-main-200);
|
|
1670
|
+
color: var(--r-main-950);
|
|
1671
|
+
border-radius: 4px;
|
|
1672
|
+
padding: 2px 6px;
|
|
1673
|
+
font-size: inherit;
|
|
1674
|
+
font-weight: 500;
|
|
1675
|
+
letter-spacing: 0.5px;
|
|
1676
|
+
}
|
|
1677
|
+
|
|
1678
|
+
.r-code-span + .r-content-link-external {
|
|
1679
|
+
margin-left: -12px;
|
|
1597
1680
|
}.r-blockquote {
|
|
1598
1681
|
background-color: var(--r-main-100);
|
|
1599
1682
|
padding: 8px 12px 8px 20px;
|
|
@@ -1650,22 +1733,18 @@
|
|
|
1650
1733
|
}
|
|
1651
1734
|
.r-blockquote-caution .r-blockquote-title {
|
|
1652
1735
|
color: var(--r-caution);
|
|
1653
|
-
}.r-code-
|
|
1736
|
+
}.r-code-block {
|
|
1654
1737
|
font-family: var(--monospace-font, monospace, monospace);
|
|
1655
|
-
|
|
1656
|
-
|
|
1657
|
-
|
|
1658
|
-
|
|
1659
|
-
|
|
1660
|
-
|
|
1661
|
-
|
|
1662
|
-
|
|
1663
|
-
|
|
1664
|
-
|
|
1665
|
-
.r-code-span + .r-content-link-external {
|
|
1666
|
-
margin-left: -12px;
|
|
1667
|
-
}.r-img {
|
|
1668
|
-
max-width: 100%;
|
|
1738
|
+
font-size: 16px;
|
|
1739
|
+
line-height: 1.33;
|
|
1740
|
+
border-radius: 6px;
|
|
1741
|
+
padding: 16px 20px;
|
|
1742
|
+
margin: 0;
|
|
1743
|
+
color: var(--r-primary-800);
|
|
1744
|
+
background-color: var(--r-main-50);
|
|
1745
|
+
overflow-x: auto;
|
|
1746
|
+
scrollbar-width: thin;
|
|
1747
|
+
scrollbar-color: var(--r-main-200) transparent;
|
|
1669
1748
|
box-sizing: border-box;
|
|
1670
1749
|
}.r-h1 {
|
|
1671
1750
|
font-size: 32px;
|
|
@@ -1707,6 +1786,9 @@
|
|
|
1707
1786
|
line-height: 1.4;
|
|
1708
1787
|
margin-block-start: 1.8em;
|
|
1709
1788
|
margin-block-end: 1.8em;
|
|
1789
|
+
}.r-img {
|
|
1790
|
+
max-width: 100%;
|
|
1791
|
+
box-sizing: border-box;
|
|
1710
1792
|
}.r-p {
|
|
1711
1793
|
line-height: 1.8;
|
|
1712
1794
|
margin-block-start: 1em;
|
|
@@ -1752,42 +1834,6 @@
|
|
|
1752
1834
|
|
|
1753
1835
|
.r-tab-header-code {
|
|
1754
1836
|
font-family: var(--monospace-font, monospace, monospace);
|
|
1755
|
-
}.r-modal {
|
|
1756
|
-
position: fixed;
|
|
1757
|
-
left: 0;
|
|
1758
|
-
bottom: 0;
|
|
1759
|
-
width: 100%;
|
|
1760
|
-
background-color: color-mix(in srgb, var(--r-main-50) 95%, transparent);
|
|
1761
|
-
border: 2px solid var(--r-main-200);
|
|
1762
|
-
border-radius: 12px 12px 0 0;
|
|
1763
|
-
opacity: 0;
|
|
1764
|
-
visibility: hidden;
|
|
1765
|
-
pointer-events: none;
|
|
1766
|
-
transition: opacity 0.2s 0.1s, transform 0.2s 0.1s, visibility 0.01s 0.2s 0.1s;
|
|
1767
|
-
z-index: 1000;
|
|
1768
|
-
box-sizing: border-box;
|
|
1769
|
-
}
|
|
1770
|
-
@media screen and (width >= 768px) {
|
|
1771
|
-
.r-modal {
|
|
1772
|
-
top: 10%;
|
|
1773
|
-
left: 50%;
|
|
1774
|
-
bottom: auto;
|
|
1775
|
-
transform: translateX(-50%) scale(0.95);
|
|
1776
|
-
max-width: 480px;
|
|
1777
|
-
border-radius: 12px;
|
|
1778
|
-
}
|
|
1779
|
-
}
|
|
1780
|
-
|
|
1781
|
-
.r-modal._visible {
|
|
1782
|
-
opacity: 1;
|
|
1783
|
-
visibility: visible;
|
|
1784
|
-
transition: opacity 0.2s 0.1s, transform 0.2s 0.1s;
|
|
1785
|
-
pointer-events: all;
|
|
1786
|
-
}
|
|
1787
|
-
@media screen and (width >= 768px) {
|
|
1788
|
-
.r-modal._visible {
|
|
1789
|
-
transform: translateX(-50%) scale(1);
|
|
1790
|
-
}
|
|
1791
1837
|
}.r-kbd-container {
|
|
1792
1838
|
display: flex;
|
|
1793
1839
|
gap: 4px;
|
|
@@ -1959,10 +2005,6 @@
|
|
|
1959
2005
|
border-collapse: collapse;
|
|
1960
2006
|
}.r-thead {
|
|
1961
2007
|
background-color: var(--r-main-100);
|
|
1962
|
-
}.r-task-ul {
|
|
1963
|
-
list-style: none;
|
|
1964
|
-
}.r-task-ol {
|
|
1965
|
-
list-style: none;
|
|
1966
2008
|
}.r-task-li.r-task-li {
|
|
1967
2009
|
margin-block-start: 2px;
|
|
1968
2010
|
margin-block-end: 2px;
|
|
@@ -1992,27 +2034,10 @@
|
|
|
1992
2034
|
|
|
1993
2035
|
.r-task-label-text {
|
|
1994
2036
|
vertical-align: middle;
|
|
1995
|
-
}.r-
|
|
1996
|
-
|
|
1997
|
-
|
|
1998
|
-
|
|
1999
|
-
bottom: 0;
|
|
2000
|
-
left: 0;
|
|
2001
|
-
background: color-mix(in srgb, var(--r-main-900) 0%, transparent 100%);
|
|
2002
|
-
opacity: 0;
|
|
2003
|
-
visibility: hidden;
|
|
2004
|
-
pointer-events: none;
|
|
2005
|
-
backdrop-filter: blur(4px);
|
|
2006
|
-
transition: background 0.05s, opacity 0.2s, visibility 0.01s 0.15s;
|
|
2007
|
-
z-index: 100;
|
|
2008
|
-
}
|
|
2009
|
-
|
|
2010
|
-
.r-backdrop._visible {
|
|
2011
|
-
opacity: 1;
|
|
2012
|
-
background: color-mix(in srgb, var(--r-main-900) 10%, transparent 100%);
|
|
2013
|
-
visibility: visible;
|
|
2014
|
-
transition: background 0.05s, opacity 0.2s;
|
|
2015
|
-
pointer-events: all;
|
|
2037
|
+
}.r-task-ul {
|
|
2038
|
+
list-style: none;
|
|
2039
|
+
}.r-task-ol {
|
|
2040
|
+
list-style: none;
|
|
2016
2041
|
}.r-tooltip {
|
|
2017
2042
|
font-family: var(--monospace-font, monospace, monospace);
|
|
2018
2043
|
display: none;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "robindoc",
|
|
3
|
-
"version": "0.0.0-experimental-
|
|
3
|
+
"version": "0.0.0-experimental-0477e0c",
|
|
4
4
|
"description": "Robindoc is a framework for automatically creating documentation websites based on markdown files, built on React.js Server Components",
|
|
5
5
|
"main": "./lib/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
import { type Searcher } from "../../../../core/types/search";
|
|
3
|
-
export interface SearchModalProps {
|
|
4
|
-
onClose(): void;
|
|
5
|
-
open: boolean;
|
|
6
|
-
onInput(text: string): void;
|
|
7
|
-
searcher: Searcher | string;
|
|
8
|
-
translations?: {
|
|
9
|
-
/** Type something... */
|
|
10
|
-
typeSomething?: string;
|
|
11
|
-
/** Nothing found */
|
|
12
|
-
nothingFound?: string;
|
|
13
|
-
};
|
|
14
|
-
}
|
|
15
|
-
export declare const SearchModal: React.FC<SearchModalProps>;
|
|
16
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/blocks/search/search-modal/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA+C,MAAM,OAAO,CAAC;AAEpE,OAAO,EAAE,KAAK,QAAQ,EAAsB,sCAA+B;AAO3E,MAAM,WAAW,gBAAgB;IAC7B,OAAO,IAAI,IAAI,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC5B,YAAY,CAAC,EAAE;QACX,wBAAwB;QACxB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,oBAAoB;QACpB,YAAY,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;CACL;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAwDlD,CAAC"}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
'use client';
|
|
2
|
-
import e,{useRef as r,useState as t,useMemo as n,useEffect as a}from"react";import{createBaseSearcher as s}from"../../../../core/utils/create-base-searcher.js";import{NavLink as o}from"../../nav-link/index.js";import{useDebouncer as c}from"../../../../core/hooks/use-debouncer.js";import{KbdContainer as l}from"../../../ui/kbd/kbd-container/index.js";import{KbdKey as m}from"../../../ui/kbd/kbd-key/index.js";import{Modal as i}from"../../../ui/modal/index.js";const p=({translations:p,searcher:h,open:u,onClose:d,onInput:f})=>{const{typeSomething:k="Type something...",nothingFound:E="Nothing found"}=p||{},b=r(null),[g,N]=t(null),y=n(()=>"string"==typeof h?s(h):h,[h]),{handler:j}=c(async(e,r)=>{const t=r.target.value;f(t);let n=null;t&&(n=await y(t,e)),N(n)});return a(()=>{u&&b.current?.focus()},[u]),e.createElement(i,{open:u,onClose:d},e.createElement("div",{className:"r-search-popup-header"},e.createElement("input",{type:"text",name:"search",placeholder:k,className:"r-search-input",onChange:j,ref:b}),e.createElement(l,{className:"r-search-kbd r-search-popup-kbd",onClick:d},e.createElement(m,null,"ESC"))),g&&e.createElement("ul",{className:"r-search-results"},g.length>0?g.map(r=>e.createElement("li",{key:r.href},e.createElement(o,{href:r.href,onClick:d,className:"r-search-item"},e.createElement("p",{className:"r-search-item-title"},r.title),r.description&&e.createElement("p",{className:"r-search-item-desc"},r.description)))):e.createElement("p",null,E)))};export{p as SearchModal};
|
|
3
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../src/components/blocks/search/search-modal/index.tsx"],"sourcesContent":["\"use client\";\n\nimport React, { useEffect, useMemo, useRef, useState } from \"react\";\n\nimport { type Searcher, type SearchResults } from \"@src/core/types/search\";\nimport { createBaseSearcher } from \"@src/core/utils/create-base-searcher\";\nimport { NavLink } from \"@src/components/blocks/nav-link\";\nimport { useDebouncer } from \"@src/core/hooks/use-debouncer\";\nimport { KbdContainer, KbdKey } from \"@src/components/ui/kbd\";\nimport { Modal } from \"@src/components/ui/modal\";\n\nexport interface SearchModalProps {\n onClose(): void;\n open: boolean;\n onInput(text: string): void;\n searcher: Searcher | string;\n translations?: {\n /** Type something... */\n typeSomething?: string;\n /** Nothing found */\n nothingFound?: string;\n };\n}\n\nexport const SearchModal: React.FC<SearchModalProps> = ({ translations, searcher, open, onClose, onInput }) => {\n const { typeSomething = \"Type something...\", nothingFound = \"Nothing found\" } = translations || {};\n const inputRef = useRef<HTMLInputElement | null>(null);\n const [results, setResults] = useState<SearchResults | null>(null);\n const targetSearcher = useMemo(\n () => (typeof searcher === \"string\" ? createBaseSearcher(searcher) : searcher),\n [searcher],\n );\n\n const { handler } = useDebouncer(async (abortController, e: React.ChangeEvent<HTMLInputElement>) => {\n const value = e.target.value;\n onInput(value);\n let newResults = null;\n if (value) {\n newResults = await targetSearcher(value, abortController);\n }\n setResults(newResults);\n });\n\n useEffect(() => {\n if (open) inputRef.current?.focus();\n }, [open]);\n\n return (\n <Modal open={open} onClose={onClose}>\n <div className=\"r-search-popup-header\">\n <input\n type=\"text\"\n name=\"search\"\n placeholder={typeSomething}\n className=\"r-search-input\"\n onChange={handler}\n ref={inputRef}\n />\n <KbdContainer className=\"r-search-kbd r-search-popup-kbd\" onClick={onClose}>\n <KbdKey>ESC</KbdKey>\n </KbdContainer>\n </div>\n {results && (\n <ul className=\"r-search-results\">\n {results.length > 0 ? (\n results.map((item) => (\n <li key={item.href}>\n <NavLink href={item.href} onClick={onClose} className=\"r-search-item\">\n <p className=\"r-search-item-title\">{item.title}</p>\n {item.description && <p className=\"r-search-item-desc\">{item.description}</p>}\n </NavLink>\n </li>\n ))\n ) : (\n <p>{nothingFound}</p>\n )}\n </ul>\n )}\n </Modal>\n );\n};\n"],"names":["SearchModal","translations","searcher","open","onClose","onInput","typeSomething","nothingFound","inputRef","useRef","results","setResults","useState","targetSearcher","useMemo","createBaseSearcher","handler","useDebouncer","async","abortController","e","value","target","newResults","useEffect","current","focus","React","createElement","Modal","className","type","name","placeholder","onChange","ref","KbdContainer","onClick","KbdKey","length","map","item","key","href","NavLink","title","description"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/modal/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,cAAc,CAAC;AAEtB,MAAM,WAAW,UAAU;IACvB,OAAO,IAAI,IAAI,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;CACjB;AAED,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAO/D,CAAC"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import e from"react";import o from"clsx";import{Backdrop as r}from"../backdrop/index.js";const t=({open:t,onClose:l,children:m})=>e.createElement(e.Fragment,null,e.createElement(r,{open:t,onClose:l}),e.createElement("div",{className:o("r-modal",t&&"_visible")},m));export{t as Modal};
|
|
2
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/components/ui/modal/index.tsx"],"sourcesContent":["import React from \"react\";\nimport clsx from \"clsx\";\n\nimport { Backdrop } from \"../backdrop\";\n\nimport \"./modal.scss\";\n\nexport interface ModalProps {\n onClose(): void;\n open: boolean;\n}\n\nexport const Modal: React.FC<React.PropsWithChildren<ModalProps>> = ({ open, onClose, children }) => {\n return (\n <>\n <Backdrop open={open} onClose={onClose} />\n <div className={clsx(\"r-modal\", open && \"_visible\")}>{children}</div>\n </>\n );\n};\n"],"names":["Modal","open","onClose","children","React","createElement","Fragment","Backdrop","className","clsx"],"mappings":"yFAYO,MAAMA,EAAuD,EAAGC,OAAMC,UAASC,cAE9EC,EAAAC,cAAAD,EAAAE,SAAA,KACIF,EAAAC,cAACE,GAASN,KAAMA,EAAMC,QAASA,IAC/BE,EAAAC,cAAA,MAAA,CAAKG,UAAWC,EAAK,UAAWR,GAAQ,aAAcE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"use-modal.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/modal/use-modal.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ;;;;CA8BpB,CAAC"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{useState as e,useCallback as n,useEffect as o}from"react";const r=()=>{const[r,t]=e(!1),d=()=>{t(!1)},w=n(e=>{"Escape"===e.key&&(e.preventDefault(),d())},[]);return o(()=>(r?window.addEventListener("keydown",w):window.removeEventListener("keydown",w),()=>{window.removeEventListener("keydown",w)}),[r]),{opened:r,openHandler:()=>{t(!0)},closeHandler:d}};export{r as useModal};
|
|
2
|
-
//# sourceMappingURL=use-modal.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"use-modal.js","sources":["../../../../src/components/ui/modal/use-modal.ts"],"sourcesContent":["import { useCallback, useEffect, useState } from \"react\";\n\nexport const useModal = () => {\n const [opened, setOpened] = useState(false);\n\n const openHandler = () => {\n setOpened(true);\n };\n const closeHandler = () => {\n setOpened(false);\n };\n\n const closeOnEscape = useCallback((e: KeyboardEvent) => {\n if (e.key === \"Escape\") {\n e.preventDefault();\n closeHandler();\n }\n }, []);\n\n useEffect(() => {\n if (opened) {\n window.addEventListener(\"keydown\", closeOnEscape);\n } else {\n window.removeEventListener(\"keydown\", closeOnEscape);\n }\n\n return () => {\n window.removeEventListener(\"keydown\", closeOnEscape);\n };\n }, [opened]);\n\n return { opened, openHandler, closeHandler };\n};\n"],"names":["useModal","opened","setOpened","useState","closeHandler","closeOnEscape","useCallback","e","key","preventDefault","useEffect","window","addEventListener","removeEventListener","openHandler"],"mappings":"iEAEO,MAAMA,EAAW,KACpB,MAAOC,EAAQC,GAAaC,GAAS,GAK/BC,EAAe,KACjBF,GAAU,IAGRG,EAAgBC,EAAaC,IACjB,WAAVA,EAAEC,MACFD,EAAEE,iBACFL,MAEL,IAcH,OAZAM,EAAU,KACFT,EACAU,OAAOC,iBAAiB,UAAWP,GAEnCM,OAAOE,oBAAoB,UAAWR,GAGnC,KACHM,OAAOE,oBAAoB,UAAWR,KAE3C,CAACJ,IAEG,CAAEA,SAAQa,YA1BG,KAChBZ,GAAU,IAyBgBE"}
|