robindoc 0.0.0-experimental-7903271 → 0.0.0-experimental-3f39623
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 +359 -334
- 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":";2hBA2BO,MAAMA,CAAAA,CAAgC,CAAA,CAAGC,WAAUC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAe,CAAA,MACrE,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAEA,CAAAA,CAAS,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAWC,cAAEA,CAAAA,CAAgB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAmBC,aAAEA,CAAAA,CAAe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAoBH,EAChGI,CAAAA,CAAWC,CAAAA,CAAwB,CAAA,CAAA,CAAA,CAAA,CAAA,CACnCC,CAAAA,CAAWD,EAAgC,CAAA,CAAA,CAAA,CAAA,CAAA,CAC3CE,CAAAA,CAAYF,CAAAA,CAAiC,CAAA,CAAA,CAAA,CAAA,CAAA,CAC7CG,EAAYH,CAAAA,CAAiC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAC5CI,CAAAA,CAASC,CAAAA,CAAAA,CAAcC,EAA+B,CAAA,CAAA,CAAA,CAAA,CAAA,CACvDC,CAAAA,CAASC,IAETC,CAAAA,CAAiBC,CAAAA,CACnB,IAA2B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAbhB,CAAAA,CAAwBiB,CAAAA,CAAmBjB,CAAAA,CAAAA,CAAYA,EACrE,CAACA,CAAAA,CAAAA,CAAAA,CAAAA,CAGCkB,QAAEA,CAAAA,CAAAA,CAAYC,CAAAA,CAAaC,MAAOC,CAAAA,CAAiBC,CAAAA,CAAAA,CAAAA,CAAAA,CACrD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMC,CAAAA,CAAQD,EAAEE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAOD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACvBE,EAAaF,CAAAA,CAAAA,CACb,CAAA,CAAA,CAAA,CAAIG,EAAa,CAAA,CAAA,CAAA,CAAA,CACbH,CAAAA,CAAAA,CAAAA,CACAG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAmBX,CAAAA,CAAeQ,EAAOF,CAAAA,CAAAA,CAAAA,CAE7CV,CAAAA,CAAWe,CAAAA,CAAAA,CAAAA,CAAAA,CAGTC,CAAAA,CAAc,KAChB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMC,CAAAA,CAAOC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAASC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAc,WAChCF,CAAAA,CAAAA,CACAA,CAAAA,CAAKG,UAAUC,CAAAA,CAAAA,CAAAA,CAAI,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAEvBzB,EAAS0B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAASC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAClB1B,CAAAA,CAAUyB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAASE,aAEjBC,CAAAA,CAAe,CAAA,CAAA,CAAA,CAAA,CACjB,MAAMR,CAAAA,CAAOC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAASC,cAAc,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAChCF,CAAAA,CAAAA,CACAA,CAAAA,CAAKG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAUM,OAAO,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAE1B7B,CAAAA,CAAUyB,SAASK,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAGvBC,CAAAA,CAAU,KACN,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMC,CAAAA,CAAWlB,CAAAA,CAAAA,CAAAA,CACe,CAAA,CAAA,CAAA,CAAA,CAAA,CAAxBA,EAAEmB,CAAAA,CAAAA,CAAAA,CAAIC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAA0BpB,CAAAA,CAAEqB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAWrB,EAAEsB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAC/CtB,CAAAA,CAAEuB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACFlB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAKR,OAFAmB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAOC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB,UAAWP,CAAAA,CAAAA,CAE5B,CAAA,CAAA,CAAA,CAAA,CACHM,OAAOE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAoB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAWR,CAAAA,CAAAA,CAAAA,CAAAA,CAE3C,CAAA,CAAA,CAAA,CAEH,MAAMf,CAAAA,CAAgBwB,CAAAA,CAAAA,CAAAA,CACd5C,EAAS4B,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACT5B,CAAAA,CAAS4B,QAAQiB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAYD,CAAAA,CAAAA,CAAQ/C,CAAAA,CAAAA,CAAAA,CAW7C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACIiD,EAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAD,CAAAA,CAAAE,SAAA,CAAA,CAAA,CAAA,CAAA,CACIF,CAAAA,CAAAC,cAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAQE,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAASC,UAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAuBC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS7B,CAAAA,CAAAA,CAC5DwB,CAAAA,CAAAC,cAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAMG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAiBE,IAAKpD,CAAAA,CAAAA,CACjCH,CAAAA,CAAAA,CAEJW,GACGsC,CAAAA,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAACM,EAAY,CAACH,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACpBJ,CAAAA,CAAAC,cAACO,CAAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAa,UAAX9C,CAAAA,CAAqB,CAAA,CAAA,CAAA,CAAM,QACpCsC,CAAAA,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAACO,CAAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,OAInBR,CAAAA,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,SAAA,CACIQ,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAASxB,EACTmB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAWM,CAAAA,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAmBC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAQpD,GAASqD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAW,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAC/DN,CAAAA,CAAAA,CAAAA,CAAKjD,CAAAA,CAAAA,CAEL2C,EAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAACY,CAAAA,CAAQ,CAACC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,GAAKL,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAASxB,CAAAA,CAAAA,CAAAA,CACxBe,EAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAKG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACXJ,CAAAA,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,OAAA,CAAMG,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,wBAAwBW,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CA3BjC5C,CAAAA,CAAAA,CAAAA,CACnBA,EAAEuB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACEpC,CAAAA,CAAUwB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACVxB,CAAAA,CAAUwB,QAAQC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAwBuDiC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,OAC1EhB,CAAAA,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,QAAA,CACIE,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACLc,CAAAA,CAAAA,CAAAA,CAAAA,CAAK,SACLC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAalE,CAAAA,CACboD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACVe,SAAUpD,CAAAA,CACVuC,CAAAA,CAAAA,CAAAA,CAAKlD,CAAAA,CAAAA,CAAAA,CAET4C,CAAAA,CAAAC,cAACM,CAAAA,EAAaH,UAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAkCC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAASpB,GAC/De,CAAAA,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAACO,CAAAA,CAAM,CAAA,CAAA,CAAA,CAAA,CAAA,SAGdjD,CAAAA,CAAAA,CACGyC,CAAAA,CAAAC,cAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIG,UAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACT7C,CAAAA,CAAQqD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAS,CAAA,CACdrD,EAAQ6D,CAAAA,CAAAA,CAAAA,CAAI,CAACC,EAAMC,CAAAA,CAAAA,CAAAA,CACftB,CAAAA,CAAAC,cAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAIX,CAAAA,CAAAA,CAAAA,CAAK+B,CAAAA,CAAKE,MACVvB,CAAAA,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAACuB,CAAAA,CAAO,CACJD,KAAMF,CAAAA,CAAKE,CAAAA,CAAAA,CAAAA,CAAAA,CACXlB,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAASpB,CAAAA,CACTmB,UAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACVE,CAAAA,CAAAA,CAAAA,CAAe,IAAVgB,CAAAA,CAAchE,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAYmE,GAE/BzB,CAAAA,CAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAGG,UAAU,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAuBiB,CAAAA,CAAKK,OACxCL,CAAAA,CAAKM,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CACF3B,qBAAGI,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAU,sBAAsBiB,CAAAA,CAAKM,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAMxD3B,EAAAC,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAA,CAAA,CAAA,CAAA,CAAA,KAAIhD,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA,CAAAA"}
|
package/lib/styles.css
CHANGED
|
@@ -162,6 +162,11 @@
|
|
|
162
162
|
min-height: calc(100dvh - var(--r-header-height));
|
|
163
163
|
overflow-wrap: break-word;
|
|
164
164
|
box-sizing: border-box;
|
|
165
|
+
}.keylink-to-content {
|
|
166
|
+
position: absolute !important;
|
|
167
|
+
top: 8px;
|
|
168
|
+
left: 12px;
|
|
169
|
+
z-index: 1001;
|
|
165
170
|
}.r-root {
|
|
166
171
|
--r-header-height: 60px;
|
|
167
172
|
position: relative;
|
|
@@ -395,65 +400,8 @@
|
|
|
395
400
|
--r-cl-60: #86181d;
|
|
396
401
|
--r-cl-61: #144620;
|
|
397
402
|
--r-cl-62: #c24e00;
|
|
398
|
-
}.keylink-to-content {
|
|
399
|
-
position: absolute !important;
|
|
400
|
-
top: 8px;
|
|
401
|
-
left: 12px;
|
|
402
|
-
z-index: 1001;
|
|
403
403
|
}.r-keylink.keylink-to-navigation:focus {
|
|
404
404
|
margin-top: -40px;
|
|
405
|
-
}.r-article {
|
|
406
|
-
padding: 20px 0 40px;
|
|
407
|
-
grid-area: content;
|
|
408
|
-
}
|
|
409
|
-
@media screen and (width >= 1180px) {
|
|
410
|
-
.r-article {
|
|
411
|
-
padding: 32px 0 40px;
|
|
412
|
-
}
|
|
413
|
-
}
|
|
414
|
-
.r-article > *:first-child {
|
|
415
|
-
margin-top: 0;
|
|
416
|
-
}
|
|
417
|
-
.r-article > *:last-child {
|
|
418
|
-
margin-bottom: 0;
|
|
419
|
-
}
|
|
420
|
-
|
|
421
|
-
.r-checkbox {
|
|
422
|
-
cursor: pointer;
|
|
423
|
-
width: 20px;
|
|
424
|
-
height: 20px;
|
|
425
|
-
margin: 4px;
|
|
426
|
-
vertical-align: middle;
|
|
427
|
-
box-sizing: border-box;
|
|
428
|
-
}
|
|
429
|
-
|
|
430
|
-
.r-label {
|
|
431
|
-
cursor: pointer;
|
|
432
|
-
}
|
|
433
|
-
|
|
434
|
-
.r-task-ol,
|
|
435
|
-
.r-task-ul {
|
|
436
|
-
list-style: none;
|
|
437
|
-
}
|
|
438
|
-
|
|
439
|
-
.r-task-label {
|
|
440
|
-
display: block;
|
|
441
|
-
width: 100%;
|
|
442
|
-
padding-top: 2px;
|
|
443
|
-
padding-bottom: 2px;
|
|
444
|
-
box-sizing: border-box;
|
|
445
|
-
}
|
|
446
|
-
.r-task-label:hover .r-checkbox {
|
|
447
|
-
filter: brightness(0.8);
|
|
448
|
-
}
|
|
449
|
-
|
|
450
|
-
.r-task-li.r-task-li {
|
|
451
|
-
margin-block-start: 2px;
|
|
452
|
-
margin-block-end: 2px;
|
|
453
|
-
}
|
|
454
|
-
|
|
455
|
-
.r-label-text {
|
|
456
|
-
vertical-align: middle;
|
|
457
405
|
}.r-sidebar {
|
|
458
406
|
grid-area: sidebar;
|
|
459
407
|
box-sizing: border-box;
|
|
@@ -726,6 +674,58 @@
|
|
|
726
674
|
|
|
727
675
|
.r-sidebar-drop[open] > .r-sidebar-drop-btn > .r-sidebar-drop-icon {
|
|
728
676
|
transform: rotate(90deg);
|
|
677
|
+
}.r-article {
|
|
678
|
+
padding: 20px 0 40px;
|
|
679
|
+
grid-area: content;
|
|
680
|
+
}
|
|
681
|
+
@media screen and (width >= 1180px) {
|
|
682
|
+
.r-article {
|
|
683
|
+
padding: 32px 0 40px;
|
|
684
|
+
}
|
|
685
|
+
}
|
|
686
|
+
.r-article > *:first-child {
|
|
687
|
+
margin-top: 0;
|
|
688
|
+
}
|
|
689
|
+
.r-article > *:last-child {
|
|
690
|
+
margin-bottom: 0;
|
|
691
|
+
}
|
|
692
|
+
|
|
693
|
+
.r-checkbox {
|
|
694
|
+
cursor: pointer;
|
|
695
|
+
width: 20px;
|
|
696
|
+
height: 20px;
|
|
697
|
+
margin: 4px;
|
|
698
|
+
vertical-align: middle;
|
|
699
|
+
box-sizing: border-box;
|
|
700
|
+
}
|
|
701
|
+
|
|
702
|
+
.r-label {
|
|
703
|
+
cursor: pointer;
|
|
704
|
+
}
|
|
705
|
+
|
|
706
|
+
.r-task-ol,
|
|
707
|
+
.r-task-ul {
|
|
708
|
+
list-style: none;
|
|
709
|
+
}
|
|
710
|
+
|
|
711
|
+
.r-task-label {
|
|
712
|
+
display: block;
|
|
713
|
+
width: 100%;
|
|
714
|
+
padding-top: 2px;
|
|
715
|
+
padding-bottom: 2px;
|
|
716
|
+
box-sizing: border-box;
|
|
717
|
+
}
|
|
718
|
+
.r-task-label:hover .r-checkbox {
|
|
719
|
+
filter: brightness(0.8);
|
|
720
|
+
}
|
|
721
|
+
|
|
722
|
+
.r-task-li.r-task-li {
|
|
723
|
+
margin-block-start: 2px;
|
|
724
|
+
margin-block-end: 2px;
|
|
725
|
+
}
|
|
726
|
+
|
|
727
|
+
.r-label-text {
|
|
728
|
+
vertical-align: middle;
|
|
729
729
|
}.r-header-menu {
|
|
730
730
|
display: flex;
|
|
731
731
|
justify-content: flex-end;
|
|
@@ -819,7 +819,7 @@
|
|
|
819
819
|
border-radius: 6px;
|
|
820
820
|
background-color: var(--r-main-100);
|
|
821
821
|
color: var(--r-main-600);
|
|
822
|
-
padding: 8px
|
|
822
|
+
padding: 8px 16px;
|
|
823
823
|
border: 1px solid var(--r-main-200);
|
|
824
824
|
width: 100%;
|
|
825
825
|
text-align: left;
|
|
@@ -829,7 +829,7 @@
|
|
|
829
829
|
@media screen and (width >= 768px) {
|
|
830
830
|
.r-search-btn {
|
|
831
831
|
width: 220px;
|
|
832
|
-
padding: 8px 96px 8px
|
|
832
|
+
padding: 8px 96px 8px 16px;
|
|
833
833
|
}
|
|
834
834
|
}
|
|
835
835
|
.r-search-btn:hover {
|
|
@@ -859,17 +859,83 @@
|
|
|
859
859
|
}
|
|
860
860
|
}
|
|
861
861
|
|
|
862
|
+
.r-search-dialog {
|
|
863
|
+
width: 100%;
|
|
864
|
+
height: 100%;
|
|
865
|
+
background: none;
|
|
866
|
+
max-width: none;
|
|
867
|
+
max-height: none;
|
|
868
|
+
border: none;
|
|
869
|
+
padding: unset;
|
|
870
|
+
transition: opacity 0.3s ease, overlay 0.4s ease-out allow-discrete, display 0.4s ease-out allow-discrete;
|
|
871
|
+
opacity: 0;
|
|
872
|
+
}
|
|
873
|
+
.r-search-dialog::backdrop {
|
|
874
|
+
backdrop-filter: blur(0);
|
|
875
|
+
background: color-mix(in srgb, var(--r-main-900) 0%, transparent 100%);
|
|
876
|
+
transition: backdrop-filter 0.4s ease-out, background 0.4s ease-out;
|
|
877
|
+
}
|
|
878
|
+
|
|
879
|
+
.r-search-dialog[open] {
|
|
880
|
+
opacity: 1;
|
|
881
|
+
}
|
|
882
|
+
@starting-style {
|
|
883
|
+
.r-search-dialog[open] {
|
|
884
|
+
opacity: 0;
|
|
885
|
+
}
|
|
886
|
+
}
|
|
887
|
+
.r-search-dialog[open]::backdrop {
|
|
888
|
+
backdrop-filter: blur(4px);
|
|
889
|
+
background: color-mix(in srgb, var(--r-main-900) 40%, transparent 100%);
|
|
890
|
+
}
|
|
891
|
+
|
|
892
|
+
.r-search-popup {
|
|
893
|
+
position: fixed;
|
|
894
|
+
left: 50%;
|
|
895
|
+
transform: translateX(-50%);
|
|
896
|
+
top: calc(var(--r-header-height) + 20px);
|
|
897
|
+
z-index: 200;
|
|
898
|
+
width: 100%;
|
|
899
|
+
max-width: 540px;
|
|
900
|
+
background-color: color-mix(in srgb, var(--r-main-50) 95%, transparent);
|
|
901
|
+
border: 2px solid var(--r-main-200);
|
|
902
|
+
border-bottom-width: 0;
|
|
903
|
+
border-radius: 12px 12px 0 0;
|
|
904
|
+
opacity: 0;
|
|
905
|
+
transform: translateX(-50%) translateY(-20px);
|
|
906
|
+
transition: opacity 0.2s, transform 0.2s;
|
|
907
|
+
}
|
|
908
|
+
|
|
909
|
+
.r-search-dialog[open] .r-search-popup {
|
|
910
|
+
opacity: 1;
|
|
911
|
+
transform: translateX(-50%) translateY(0);
|
|
912
|
+
}
|
|
913
|
+
@starting-style {
|
|
914
|
+
.r-search-dialog[open] .r-search-popup {
|
|
915
|
+
opacity: 0;
|
|
916
|
+
transform: translateX(-50%) translateY(-20px);
|
|
917
|
+
}
|
|
918
|
+
}
|
|
919
|
+
|
|
920
|
+
.r-search-dialog._active .r-search-popup {
|
|
921
|
+
border-radius: 12px;
|
|
922
|
+
border-bottom-width: 2px;
|
|
923
|
+
}
|
|
924
|
+
|
|
925
|
+
.r-search-popup:has(.r-search-input:focus) {
|
|
926
|
+
border-color: var(--r-main-300);
|
|
927
|
+
}
|
|
928
|
+
|
|
862
929
|
.r-search-popup-header {
|
|
863
930
|
position: relative;
|
|
864
931
|
border-bottom: 1px solid var(--r-main-200);
|
|
865
932
|
}
|
|
866
933
|
|
|
867
934
|
.r-search-input {
|
|
868
|
-
|
|
869
|
-
background-color: var(--r-main-50);
|
|
935
|
+
background: none;
|
|
870
936
|
padding: 16px 20px;
|
|
871
937
|
border: none;
|
|
872
|
-
border-bottom: 2px solid var(--r-main-
|
|
938
|
+
border-bottom: 2px solid var(--r-main-100);
|
|
873
939
|
width: 100%;
|
|
874
940
|
font-size: 16px;
|
|
875
941
|
box-sizing: border-box;
|
|
@@ -880,7 +946,7 @@
|
|
|
880
946
|
}
|
|
881
947
|
}
|
|
882
948
|
.r-search-input:hover {
|
|
883
|
-
border-bottom-color: var(--r-
|
|
949
|
+
border-bottom-color: var(--r-main-300);
|
|
884
950
|
}
|
|
885
951
|
.r-search-input:focus {
|
|
886
952
|
outline: none;
|
|
@@ -912,14 +978,14 @@
|
|
|
912
978
|
color: var(--r-main-700);
|
|
913
979
|
padding: 8px 12px;
|
|
914
980
|
border: 1px solid var(--r-main-100);
|
|
915
|
-
border-radius:
|
|
981
|
+
border-radius: 10px;
|
|
916
982
|
width: 100%;
|
|
917
983
|
margin-top: 6px;
|
|
918
984
|
box-sizing: border-box;
|
|
919
985
|
}
|
|
920
986
|
.r-search-item:hover, .r-search-item:focus {
|
|
921
987
|
color: var(--r-main-950);
|
|
922
|
-
background-color: var(--r-main-
|
|
988
|
+
background-color: var(--r-main-50);
|
|
923
989
|
border-color: var(--r-main-200);
|
|
924
990
|
}
|
|
925
991
|
|
|
@@ -1121,182 +1187,69 @@
|
|
|
1121
1187
|
user-select: none;
|
|
1122
1188
|
pointer-events: none;
|
|
1123
1189
|
box-sizing: border-box;
|
|
1124
|
-
}.r-
|
|
1125
|
-
grid-area:
|
|
1126
|
-
list-style: none;
|
|
1127
|
-
margin: 0;
|
|
1128
|
-
padding: 20px 0 0;
|
|
1129
|
-
line-height: 2;
|
|
1130
|
-
}
|
|
1131
|
-
@media screen and (width >= 768px) {
|
|
1132
|
-
.r-breadcrumbs {
|
|
1133
|
-
padding: 32px 0 0;
|
|
1134
|
-
}
|
|
1190
|
+
}.r-contents {
|
|
1191
|
+
grid-area: contents;
|
|
1135
1192
|
}
|
|
1136
1193
|
|
|
1137
|
-
.r-
|
|
1138
|
-
|
|
1194
|
+
.r-contents-sticky {
|
|
1195
|
+
position: sticky;
|
|
1196
|
+
top: var(--r-header-height);
|
|
1197
|
+
width: 100%;
|
|
1198
|
+
box-sizing: border-box;
|
|
1139
1199
|
}
|
|
1140
|
-
|
|
1141
|
-
.r-
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
|
|
1200
|
+
@media screen and (width >= 1180px) {
|
|
1201
|
+
.r-contents-sticky {
|
|
1202
|
+
padding: 0 12px;
|
|
1203
|
+
max-height: calc(100dvh - var(--r-header-height));
|
|
1204
|
+
overflow: auto;
|
|
1205
|
+
scrollbar-width: thin;
|
|
1206
|
+
scrollbar-color: var(--r-main-200) transparent;
|
|
1207
|
+
scrollbar-gutter: stable;
|
|
1208
|
+
}
|
|
1145
1209
|
}
|
|
1146
1210
|
|
|
1147
|
-
.r-
|
|
1148
|
-
|
|
1149
|
-
|
|
1211
|
+
.r-contents-control {
|
|
1212
|
+
display: contents;
|
|
1213
|
+
visibility: hidden;
|
|
1150
1214
|
}
|
|
1151
|
-
|
|
1152
|
-
|
|
1215
|
+
@media screen and (width >= 1180px) {
|
|
1216
|
+
.r-contents-control {
|
|
1217
|
+
pointer-events: none;
|
|
1218
|
+
}
|
|
1153
1219
|
}
|
|
1154
1220
|
|
|
1155
|
-
.r-
|
|
1156
|
-
|
|
1157
|
-
display: inline;
|
|
1158
|
-
padding: 6px 0;
|
|
1159
|
-
margin: 0;
|
|
1221
|
+
.r-contents-control:checked + .r-contents-details .r-contents-list {
|
|
1222
|
+
box-sizing: border-box;
|
|
1160
1223
|
}
|
|
1161
|
-
|
|
1162
|
-
.r-
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
}
|
|
1166
|
-
grid-area: pagination;
|
|
1167
|
-
display: grid;
|
|
1168
|
-
grid-template-columns: repeat(auto-fit, minmax(148px, 1fr));
|
|
1169
|
-
gap: 16px;
|
|
1170
|
-
margin-bottom: 40px;
|
|
1224
|
+
@media screen and (width < 1180px) {
|
|
1225
|
+
.r-contents-control:checked + .r-contents-details .r-contents-list {
|
|
1226
|
+
visibility: visible;
|
|
1227
|
+
height: var(--drop-height, auto);
|
|
1228
|
+
}
|
|
1171
1229
|
}
|
|
1172
|
-
|
|
1173
|
-
.r-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
padding-bottom: 8px;
|
|
1177
|
-
text-decoration: none;
|
|
1178
|
-
font-size: 14px;
|
|
1179
|
-
color: var(--r-main-800);
|
|
1230
|
+
@media screen and (width < 1180px) {
|
|
1231
|
+
.r-contents-control:checked + .r-contents-details .r-contents-title {
|
|
1232
|
+
color: var(--r-main-800);
|
|
1233
|
+
}
|
|
1180
1234
|
}
|
|
1181
|
-
.r-
|
|
1182
|
-
|
|
1235
|
+
.r-contents-control:checked + .r-contents-details .r-contents-chevron {
|
|
1236
|
+
transform: rotate(180deg);
|
|
1183
1237
|
}
|
|
1184
1238
|
|
|
1185
|
-
.r-
|
|
1186
|
-
|
|
1239
|
+
.r-contents-list {
|
|
1240
|
+
overflow: hidden;
|
|
1241
|
+
transition: height 0.3s allow-discrete, visibility 0.3s allow-discrete;
|
|
1242
|
+
box-sizing: border-box;
|
|
1243
|
+
}
|
|
1244
|
+
@media screen and (width < 1180px) {
|
|
1245
|
+
.r-contents-list {
|
|
1246
|
+
visibility: hidden;
|
|
1247
|
+
height: 0;
|
|
1248
|
+
}
|
|
1187
1249
|
}
|
|
1188
1250
|
|
|
1189
|
-
.r-
|
|
1190
|
-
|
|
1191
|
-
padding-right: 28px;
|
|
1192
|
-
}
|
|
1193
|
-
|
|
1194
|
-
.r-pagination-text {
|
|
1195
|
-
display: block;
|
|
1196
|
-
line-height: 2;
|
|
1197
|
-
}
|
|
1198
|
-
|
|
1199
|
-
.r-pagination-title {
|
|
1200
|
-
font-weight: 600;
|
|
1201
|
-
font-size: 16px;
|
|
1202
|
-
}
|
|
1203
|
-
|
|
1204
|
-
.r-pagination-icon {
|
|
1205
|
-
position: absolute;
|
|
1206
|
-
top: 50%;
|
|
1207
|
-
transform: translateY(-50%);
|
|
1208
|
-
transition: transform 0.2s;
|
|
1209
|
-
}
|
|
1210
|
-
|
|
1211
|
-
.r-pagination-icon._prev {
|
|
1212
|
-
left: 0;
|
|
1213
|
-
}
|
|
1214
|
-
.r-pagination-item:hover .r-pagination-icon._prev {
|
|
1215
|
-
transform: translate(-4px, -50%);
|
|
1216
|
-
}
|
|
1217
|
-
@media screen and (width >= 1180px) {
|
|
1218
|
-
.r-pagination-item:hover .r-pagination-icon._prev {
|
|
1219
|
-
transform: translate(-8px, -50%);
|
|
1220
|
-
}
|
|
1221
|
-
}
|
|
1222
|
-
|
|
1223
|
-
.r-pagination-icon._next {
|
|
1224
|
-
right: 0;
|
|
1225
|
-
}
|
|
1226
|
-
.r-pagination-item:hover .r-pagination-icon._next {
|
|
1227
|
-
transform: translate(4px, -50%);
|
|
1228
|
-
}
|
|
1229
|
-
@media screen and (width >= 1180px) {
|
|
1230
|
-
.r-pagination-item:hover .r-pagination-icon._next {
|
|
1231
|
-
transform: translate(8px, -50%);
|
|
1232
|
-
}
|
|
1233
|
-
}
|
|
1234
|
-
|
|
1235
|
-
.r-pagination-svg {
|
|
1236
|
-
display: block;
|
|
1237
|
-
}.r-contents {
|
|
1238
|
-
grid-area: contents;
|
|
1239
|
-
}
|
|
1240
|
-
|
|
1241
|
-
.r-contents-sticky {
|
|
1242
|
-
position: sticky;
|
|
1243
|
-
top: var(--r-header-height);
|
|
1244
|
-
width: 100%;
|
|
1245
|
-
box-sizing: border-box;
|
|
1246
|
-
}
|
|
1247
|
-
@media screen and (width >= 1180px) {
|
|
1248
|
-
.r-contents-sticky {
|
|
1249
|
-
padding: 0 12px;
|
|
1250
|
-
max-height: calc(100dvh - var(--r-header-height));
|
|
1251
|
-
overflow: auto;
|
|
1252
|
-
scrollbar-width: thin;
|
|
1253
|
-
scrollbar-color: var(--r-main-200) transparent;
|
|
1254
|
-
scrollbar-gutter: stable;
|
|
1255
|
-
}
|
|
1256
|
-
}
|
|
1257
|
-
|
|
1258
|
-
.r-contents-control {
|
|
1259
|
-
display: contents;
|
|
1260
|
-
visibility: hidden;
|
|
1261
|
-
}
|
|
1262
|
-
@media screen and (width >= 1180px) {
|
|
1263
|
-
.r-contents-control {
|
|
1264
|
-
pointer-events: none;
|
|
1265
|
-
}
|
|
1266
|
-
}
|
|
1267
|
-
|
|
1268
|
-
.r-contents-control:checked + .r-contents-details .r-contents-list {
|
|
1269
|
-
box-sizing: border-box;
|
|
1270
|
-
}
|
|
1271
|
-
@media screen and (width < 1180px) {
|
|
1272
|
-
.r-contents-control:checked + .r-contents-details .r-contents-list {
|
|
1273
|
-
visibility: visible;
|
|
1274
|
-
height: var(--drop-height, auto);
|
|
1275
|
-
}
|
|
1276
|
-
}
|
|
1277
|
-
@media screen and (width < 1180px) {
|
|
1278
|
-
.r-contents-control:checked + .r-contents-details .r-contents-title {
|
|
1279
|
-
color: var(--r-main-800);
|
|
1280
|
-
}
|
|
1281
|
-
}
|
|
1282
|
-
.r-contents-control:checked + .r-contents-details .r-contents-chevron {
|
|
1283
|
-
transform: rotate(180deg);
|
|
1284
|
-
}
|
|
1285
|
-
|
|
1286
|
-
.r-contents-list {
|
|
1287
|
-
overflow: hidden;
|
|
1288
|
-
transition: height 0.3s allow-discrete, visibility 0.3s allow-discrete;
|
|
1289
|
-
box-sizing: border-box;
|
|
1290
|
-
}
|
|
1291
|
-
@media screen and (width < 1180px) {
|
|
1292
|
-
.r-contents-list {
|
|
1293
|
-
visibility: hidden;
|
|
1294
|
-
height: 0;
|
|
1295
|
-
}
|
|
1296
|
-
}
|
|
1297
|
-
|
|
1298
|
-
.r-contents-list-content {
|
|
1299
|
-
padding: 2px;
|
|
1251
|
+
.r-contents-list-content {
|
|
1252
|
+
padding: 2px;
|
|
1300
1253
|
}
|
|
1301
1254
|
|
|
1302
1255
|
@media screen and (width < 1180px) {
|
|
@@ -1467,9 +1420,138 @@
|
|
|
1467
1420
|
}
|
|
1468
1421
|
.r-contents-git:hover {
|
|
1469
1422
|
color: var(--r-main-900);
|
|
1423
|
+
}.r-breadcrumbs {
|
|
1424
|
+
grid-area: breadcrumbs;
|
|
1425
|
+
list-style: none;
|
|
1426
|
+
margin: 0;
|
|
1427
|
+
padding: 20px 0 0;
|
|
1428
|
+
line-height: 2;
|
|
1429
|
+
}
|
|
1430
|
+
@media screen and (width >= 768px) {
|
|
1431
|
+
.r-breadcrumbs {
|
|
1432
|
+
padding: 32px 0 0;
|
|
1433
|
+
}
|
|
1434
|
+
}
|
|
1435
|
+
|
|
1436
|
+
.r-breadcrumb {
|
|
1437
|
+
display: inline;
|
|
1438
|
+
}
|
|
1439
|
+
|
|
1440
|
+
.r-breadcrumb._previous::after {
|
|
1441
|
+
content: "/";
|
|
1442
|
+
font-weight: 600;
|
|
1443
|
+
margin-inline: 8px;
|
|
1444
|
+
}
|
|
1445
|
+
|
|
1446
|
+
.r-breadcrumb-link {
|
|
1447
|
+
color: var(--r-main-700);
|
|
1448
|
+
text-decoration: none;
|
|
1449
|
+
}
|
|
1450
|
+
.r-breadcrumb-link:hover {
|
|
1451
|
+
color: var(--r-primary-800);
|
|
1452
|
+
}
|
|
1453
|
+
|
|
1454
|
+
.r-breadcrumb-link,
|
|
1455
|
+
.r-breadcrumb-title {
|
|
1456
|
+
display: inline;
|
|
1457
|
+
padding: 6px 0;
|
|
1458
|
+
margin: 0;
|
|
1459
|
+
}
|
|
1460
|
+
|
|
1461
|
+
.r-breadcrumb-title {
|
|
1462
|
+
color: var(--r-main-950);
|
|
1463
|
+
font-weight: 600;
|
|
1464
|
+
}.r-pagination {
|
|
1465
|
+
grid-area: pagination;
|
|
1466
|
+
display: grid;
|
|
1467
|
+
grid-template-columns: repeat(auto-fit, minmax(148px, 1fr));
|
|
1468
|
+
gap: 16px;
|
|
1469
|
+
margin-bottom: 40px;
|
|
1470
|
+
}
|
|
1471
|
+
|
|
1472
|
+
.r-pagination-item {
|
|
1473
|
+
position: relative;
|
|
1474
|
+
padding-top: 8px;
|
|
1475
|
+
padding-bottom: 8px;
|
|
1476
|
+
text-decoration: none;
|
|
1477
|
+
font-size: 14px;
|
|
1478
|
+
color: var(--r-main-800);
|
|
1479
|
+
}
|
|
1480
|
+
.r-pagination-item:hover {
|
|
1481
|
+
color: var(--r-main-950);
|
|
1482
|
+
}
|
|
1483
|
+
|
|
1484
|
+
.r-pagination-item._prev {
|
|
1485
|
+
padding-left: 28px;
|
|
1486
|
+
}
|
|
1487
|
+
|
|
1488
|
+
.r-pagination-item._next {
|
|
1489
|
+
text-align: right;
|
|
1490
|
+
padding-right: 28px;
|
|
1491
|
+
}
|
|
1492
|
+
|
|
1493
|
+
.r-pagination-text {
|
|
1494
|
+
display: block;
|
|
1495
|
+
line-height: 2;
|
|
1496
|
+
}
|
|
1497
|
+
|
|
1498
|
+
.r-pagination-title {
|
|
1499
|
+
font-weight: 600;
|
|
1500
|
+
font-size: 16px;
|
|
1501
|
+
}
|
|
1502
|
+
|
|
1503
|
+
.r-pagination-icon {
|
|
1504
|
+
position: absolute;
|
|
1505
|
+
top: 50%;
|
|
1506
|
+
transform: translateY(-50%);
|
|
1507
|
+
transition: transform 0.2s;
|
|
1508
|
+
}
|
|
1509
|
+
|
|
1510
|
+
.r-pagination-icon._prev {
|
|
1511
|
+
left: 0;
|
|
1512
|
+
}
|
|
1513
|
+
.r-pagination-item:hover .r-pagination-icon._prev {
|
|
1514
|
+
transform: translate(-4px, -50%);
|
|
1515
|
+
}
|
|
1516
|
+
@media screen and (width >= 1180px) {
|
|
1517
|
+
.r-pagination-item:hover .r-pagination-icon._prev {
|
|
1518
|
+
transform: translate(-8px, -50%);
|
|
1519
|
+
}
|
|
1520
|
+
}
|
|
1521
|
+
|
|
1522
|
+
.r-pagination-icon._next {
|
|
1523
|
+
right: 0;
|
|
1524
|
+
}
|
|
1525
|
+
.r-pagination-item:hover .r-pagination-icon._next {
|
|
1526
|
+
transform: translate(4px, -50%);
|
|
1527
|
+
}
|
|
1528
|
+
@media screen and (width >= 1180px) {
|
|
1529
|
+
.r-pagination-item:hover .r-pagination-icon._next {
|
|
1530
|
+
transform: translate(8px, -50%);
|
|
1531
|
+
}
|
|
1532
|
+
}
|
|
1533
|
+
|
|
1534
|
+
.r-pagination-svg {
|
|
1535
|
+
display: block;
|
|
1470
1536
|
}.r-last-modified {
|
|
1471
1537
|
color: var(--r-main-700);
|
|
1472
1538
|
margin-block-start: 16px;
|
|
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;
|
|
1473
1555
|
}.r-git-logo {
|
|
1474
1556
|
display: block;
|
|
1475
1557
|
}.r-external-mark {
|
|
@@ -1503,6 +1585,25 @@
|
|
|
1503
1585
|
background-color: currentColor;
|
|
1504
1586
|
border-radius: 0 0 0 4px;
|
|
1505
1587
|
box-sizing: border-box;
|
|
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,6 @@
|
|
|
1581
1663
|
scrollbar-width: thin;
|
|
1582
1664
|
scrollbar-color: var(--r-main-200) transparent;
|
|
1583
1665
|
box-sizing: border-box;
|
|
1584
|
-
}.r-code-block {
|
|
1585
|
-
font-family: var(--monospace-font, monospace, monospace);
|
|
1586
|
-
font-size: 16px;
|
|
1587
|
-
line-height: 1.33;
|
|
1588
|
-
border-radius: 6px;
|
|
1589
|
-
padding: 16px 20px;
|
|
1590
|
-
margin: 0;
|
|
1591
|
-
color: var(--r-primary-800);
|
|
1592
|
-
background-color: var(--r-main-50);
|
|
1593
|
-
overflow-x: auto;
|
|
1594
|
-
scrollbar-width: thin;
|
|
1595
|
-
scrollbar-color: var(--r-main-200) transparent;
|
|
1596
|
-
box-sizing: border-box;
|
|
1597
1666
|
}.r-blockquote {
|
|
1598
1667
|
background-color: var(--r-main-100);
|
|
1599
1668
|
padding: 8px 12px 8px 20px;
|
|
@@ -1650,22 +1719,18 @@
|
|
|
1650
1719
|
}
|
|
1651
1720
|
.r-blockquote-caution .r-blockquote-title {
|
|
1652
1721
|
color: var(--r-caution);
|
|
1653
|
-
}.r-code-
|
|
1722
|
+
}.r-code-block {
|
|
1654
1723
|
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%;
|
|
1724
|
+
font-size: 16px;
|
|
1725
|
+
line-height: 1.33;
|
|
1726
|
+
border-radius: 6px;
|
|
1727
|
+
padding: 16px 20px;
|
|
1728
|
+
margin: 0;
|
|
1729
|
+
color: var(--r-primary-800);
|
|
1730
|
+
background-color: var(--r-main-50);
|
|
1731
|
+
overflow-x: auto;
|
|
1732
|
+
scrollbar-width: thin;
|
|
1733
|
+
scrollbar-color: var(--r-main-200) transparent;
|
|
1669
1734
|
box-sizing: border-box;
|
|
1670
1735
|
}.r-h1 {
|
|
1671
1736
|
font-size: 32px;
|
|
@@ -1707,6 +1772,23 @@
|
|
|
1707
1772
|
line-height: 1.4;
|
|
1708
1773
|
margin-block-start: 1.8em;
|
|
1709
1774
|
margin-block-end: 1.8em;
|
|
1775
|
+
}.r-code-span {
|
|
1776
|
+
font-family: var(--monospace-font, monospace, monospace);
|
|
1777
|
+
background-color: var(--r-main-100);
|
|
1778
|
+
border: 1px solid var(--r-main-200);
|
|
1779
|
+
color: var(--r-main-950);
|
|
1780
|
+
border-radius: 4px;
|
|
1781
|
+
padding: 2px 6px;
|
|
1782
|
+
font-size: inherit;
|
|
1783
|
+
font-weight: 500;
|
|
1784
|
+
letter-spacing: 0.5px;
|
|
1785
|
+
}
|
|
1786
|
+
|
|
1787
|
+
.r-code-span + .r-content-link-external {
|
|
1788
|
+
margin-left: -12px;
|
|
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-ol {
|
|
2038
|
+
list-style: none;
|
|
2039
|
+
}.r-task-ul {
|
|
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-3f39623",
|
|
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"}
|