@acmekit/docs-ui 2.13.41
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/dist/Items-YPPZD6C6.mjs +312 -0
- package/dist/chunk-JD7BP7O5.mjs +13144 -0
- package/dist/index.d.mts +1550 -0
- package/dist/index.d.ts +1550 -0
- package/dist/index.js +15218 -0
- package/dist/index.mjs +366 -0
- package/package.json +58 -0
- package/src/components/Badge/index.tsx +74 -0
- package/src/components/BadgesList/index.tsx +18 -0
- package/src/components/BetaBadge/index.tsx +24 -0
- package/src/components/Bordered/index.tsx +21 -0
- package/src/components/BorderedIcon/index.tsx +60 -0
- package/src/components/Breadcrumbs/index.tsx +83 -0
- package/src/components/Button/index.tsx +100 -0
- package/src/components/Card/Layout/Default/index.tsx +124 -0
- package/src/components/Card/Layout/Filler/index.tsx +30 -0
- package/src/components/Card/Layout/Large/index.tsx +88 -0
- package/src/components/Card/Layout/Mini/index.tsx +142 -0
- package/src/components/Card/index.tsx +50 -0
- package/src/components/CardList/index.tsx +40 -0
- package/src/components/ChildDocs/index.tsx +9 -0
- package/src/components/CodeBlock/Actions/AskAi/index.tsx +10 -0
- package/src/components/CodeBlock/Actions/Copy/index.tsx +59 -0
- package/src/components/CodeBlock/Actions/index.tsx +137 -0
- package/src/components/CodeBlock/Collapsible/Button/index.tsx +58 -0
- package/src/components/CodeBlock/Collapsible/Fade/index.tsx +55 -0
- package/src/components/CodeBlock/Collapsible/Lines/index.tsx +22 -0
- package/src/components/CodeBlock/Header/Wrapper/index.tsx +46 -0
- package/src/components/CodeBlock/Header/index.tsx +67 -0
- package/src/components/CodeBlock/Inline/index.tsx +20 -0
- package/src/components/CodeBlock/Line/index.tsx +331 -0
- package/src/components/CodeBlock/index.tsx +510 -0
- package/src/components/CodeMdx/index.tsx +45 -0
- package/src/components/CodeTabs/Item/index.tsx +67 -0
- package/src/components/CodeTabs/index.tsx +319 -0
- package/src/components/ContentMenu/Actions/index.tsx +7 -0
- package/src/components/ContentMenu/Products/index.tsx +64 -0
- package/src/components/ContentMenu/Toc/index.tsx +148 -0
- package/src/components/ContentMenu/Version/index.tsx +77 -0
- package/src/components/ContentMenu/index.tsx +31 -0
- package/src/components/CopyButton/index.tsx +76 -0
- package/src/components/Details/Summary/index.tsx +75 -0
- package/src/components/Details/index.tsx +98 -0
- package/src/components/DetailsList/index.tsx +32 -0
- package/src/components/DottedSeparator/index.tsx +30 -0
- package/src/components/EditButton/index.tsx +32 -0
- package/src/components/EditDate/index.tsx +33 -0
- package/src/components/ErrorPage/Icon/index.tsx +428 -0
- package/src/components/ErrorPage/index.tsx +32 -0
- package/src/components/Feedback/Solutions/index.tsx +105 -0
- package/src/components/Feedback/index.tsx +304 -0
- package/src/components/Footer/index.tsx +23 -0
- package/src/components/Heading/H1/index.tsx +21 -0
- package/src/components/Heading/H2/index.tsx +47 -0
- package/src/components/Heading/H3/index.tsx +42 -0
- package/src/components/Heading/H4/index.tsx +14 -0
- package/src/components/Heading/index.tsx +4 -0
- package/src/components/IconHeadline/index.tsx +15 -0
- package/src/components/Icons/AiAssistant/index.tsx +462 -0
- package/src/components/Icons/ArrowRightDown/index.tsx +30 -0
- package/src/components/Icons/BundledProduct/index.tsx +72 -0
- package/src/components/Icons/CalendarRefresh/index.tsx +70 -0
- package/src/components/Icons/ChefHat/index.tsx +65 -0
- package/src/components/Icons/CircleDottedLine/index.tsx +60 -0
- package/src/components/Icons/CloudSolid/index.tsx +47 -0
- package/src/components/Icons/ColoredAcmeKit/index.tsx +13 -0
- package/src/components/Icons/DecisionProcess/index.tsx +58 -0
- package/src/components/Icons/Erp/index.tsx +92 -0
- package/src/components/Icons/Github/index.tsx +22 -0
- package/src/components/Icons/House/index.tsx +23 -0
- package/src/components/Icons/ImageBinary/index.tsx +69 -0
- package/src/components/Icons/Kapa/index.tsx +22 -0
- package/src/components/Icons/Markdown/index.tsx +25 -0
- package/src/components/Icons/NavigationDropdown/Admin/index.tsx +33 -0
- package/src/components/Icons/NavigationDropdown/Doc/index.tsx +41 -0
- package/src/components/Icons/NavigationDropdown/DocV1/index.tsx +37 -0
- package/src/components/Icons/NavigationDropdown/Modules/index.tsx +33 -0
- package/src/components/Icons/NavigationDropdown/Resources/index.tsx +37 -0
- package/src/components/Icons/NavigationDropdown/Store/index.tsx +37 -0
- package/src/components/Icons/NavigationDropdown/Ui/index.tsx +37 -0
- package/src/components/Icons/NavigationDropdown/User/index.tsx +37 -0
- package/src/components/Icons/PuzzleColored/index.tsx +35 -0
- package/src/components/Icons/QuestionMark/index.tsx +23 -0
- package/src/components/Icons/Restock/index.tsx +55 -0
- package/src/components/Icons/ScrollText/index.tsx +68 -0
- package/src/components/Icons/ShadedBg/index.tsx +334 -0
- package/src/components/Icons/Shop/index.tsx +68 -0
- package/src/components/Icons/SidebarLeft/index.tsx +42 -0
- package/src/components/Icons/StripeColored/index.tsx +60 -0
- package/src/components/Icons/ThumbDown/index.tsx +23 -0
- package/src/components/Icons/ThumbUp/index.tsx +23 -0
- package/src/components/Icons/WindowPaintbrush/index.tsx +57 -0
- package/src/components/Icons/index.tsx +20 -0
- package/src/components/InlineCode/index.tsx +42 -0
- package/src/components/InlineIcon/index.tsx +21 -0
- package/src/components/InlineThemeImage/index.tsx +14 -0
- package/src/components/Input/Search/index.tsx +64 -0
- package/src/components/Input/Text/index.tsx +39 -0
- package/src/components/Kbd/index.tsx +33 -0
- package/src/components/Label/index.tsx +19 -0
- package/src/components/Link/index.tsx +67 -0
- package/src/components/LinkButton/index.tsx +43 -0
- package/src/components/Loading/Dots/index.tsx +16 -0
- package/src/components/Loading/Spinner/index.tsx +19 -0
- package/src/components/Loading/index.tsx +43 -0
- package/src/components/MDXComponents/index.tsx +209 -0
- package/src/components/MainNav/DesktopMenu/ThemeMenu/index.tsx +76 -0
- package/src/components/MainNav/DesktopMenu/index.tsx +100 -0
- package/src/components/MainNav/Items/Dropdown/index.tsx +88 -0
- package/src/components/MainNav/Items/Link/index.tsx +34 -0
- package/src/components/MainNav/Items/index.tsx +61 -0
- package/src/components/MainNav/MobileMenu/Main/index.tsx +67 -0
- package/src/components/MainNav/MobileMenu/SubMenu/index.tsx +77 -0
- package/src/components/MainNav/MobileMenu/index.tsx +103 -0
- package/src/components/MainNav/Version/index.tsx +33 -0
- package/src/components/MainNav/index.tsx +153 -0
- package/src/components/MarkdownContent/index.tsx +41 -0
- package/src/components/Menu/Action/index.tsx +43 -0
- package/src/components/Menu/Divider/index.tsx +35 -0
- package/src/components/Menu/Dropdown/index.tsx +78 -0
- package/src/components/Menu/Item/index.tsx +36 -0
- package/src/components/Menu/SubMenu/index.tsx +47 -0
- package/src/components/Menu/index.tsx +44 -0
- package/src/components/Modal/Footer/index.tsx +29 -0
- package/src/components/Modal/Header/index.tsx +33 -0
- package/src/components/Modal/index.tsx +124 -0
- package/src/components/Note/Layout/index.tsx +139 -0
- package/src/components/Note/Types/checks.tsx +7 -0
- package/src/components/Note/Types/default.tsx +7 -0
- package/src/components/Note/Types/error.tsx +7 -0
- package/src/components/Note/Types/soon.tsx +7 -0
- package/src/components/Note/Types/sucess.tsx +7 -0
- package/src/components/Note/Types/warning.tsx +7 -0
- package/src/components/Note/index.tsx +32 -0
- package/src/components/Notices/DeprecatedNotice/index.tsx +33 -0
- package/src/components/Notices/ExpandableNotice/index.tsx +36 -0
- package/src/components/Notices/FeatureFlagNotice/index.tsx +36 -0
- package/src/components/Notices/VersionNotice/index.tsx +37 -0
- package/src/components/Notification/Item/Layout/Default/index.tsx +89 -0
- package/src/components/Notification/Item/index.tsx +88 -0
- package/src/components/Notification/index.tsx +65 -0
- package/src/components/Pagination/Card/index.tsx +80 -0
- package/src/components/Pagination/index.tsx +35 -0
- package/src/components/Prerequisites/Item/index.tsx +43 -0
- package/src/components/Prerequisites/index.tsx +94 -0
- package/src/components/RadioItem/index.tsx +38 -0
- package/src/components/Rating/index.tsx +133 -0
- package/src/components/RootProviders/index.tsx +31 -0
- package/src/components/Select/Badge/index.tsx +122 -0
- package/src/components/Select/Dropdown/index.tsx +188 -0
- package/src/components/Select/Input/index.tsx +123 -0
- package/src/components/Select/index.ts +13 -0
- package/src/components/Sidebar/Child/index.tsx +43 -0
- package/src/components/Sidebar/Item/Category/index.tsx +151 -0
- package/src/components/Sidebar/Item/Link/index.tsx +174 -0
- package/src/components/Sidebar/Item/Sidebar/index.tsx +67 -0
- package/src/components/Sidebar/Item/SubCategory/index.tsx +83 -0
- package/src/components/Sidebar/Item/index.tsx +41 -0
- package/src/components/Sidebar/Top/MobileClose/index.tsx +21 -0
- package/src/components/Sidebar/Top/index.tsx +33 -0
- package/src/components/Sidebar/index.tsx +153 -0
- package/src/components/SourceCodeLink/index.tsx +37 -0
- package/src/components/SplitLists/index.tsx +58 -0
- package/src/components/Table/index.tsx +87 -0
- package/src/components/Tabs/index.tsx +106 -0
- package/src/components/TextArea/index.tsx +30 -0
- package/src/components/ThemeImage/index.tsx +26 -0
- package/src/components/Toggle/index.tsx +28 -0
- package/src/components/Tooltip/index.tsx +65 -0
- package/src/components/TypeList/Items/index.tsx +337 -0
- package/src/components/TypeList/index.tsx +63 -0
- package/src/components/WideSection/index.tsx +25 -0
- package/src/components/ZoomImg/index.tsx +17 -0
- package/src/components/index.ts +75 -0
- package/src/constants.tsx +261 -0
- package/src/global-config.ts +11 -0
- package/src/hooks/index.ts +14 -0
- package/src/hooks/use-active-on-scroll/index.tsx +223 -0
- package/src/hooks/use-click-outside/index.tsx +37 -0
- package/src/hooks/use-collapsible/index.tsx +128 -0
- package/src/hooks/use-collapsible-code-lines/index.tsx +149 -0
- package/src/hooks/use-copy/index.tsx +28 -0
- package/src/hooks/use-heading-url/index.tsx +32 -0
- package/src/hooks/use-is-external-link/index.tsx +19 -0
- package/src/hooks/use-keyboard-shortcut/index.tsx +71 -0
- package/src/hooks/use-mutation-observer/index.ts +32 -0
- package/src/hooks/use-page-scroll-manager/index.tsx +82 -0
- package/src/hooks/use-resize-observer/index.ts +20 -0
- package/src/hooks/use-scroll-utils/index.tsx +372 -0
- package/src/hooks/use-select/index.tsx +99 -0
- package/src/hooks/use-tabs/index.tsx +94 -0
- package/src/index.ts +8 -0
- package/src/layouts/barebone.tsx +18 -0
- package/src/layouts/index.ts +4 -0
- package/src/layouts/main-content.tsx +86 -0
- package/src/layouts/root.tsx +43 -0
- package/src/layouts/tight.tsx +29 -0
- package/src/layouts/wide.tsx +25 -0
- package/src/providers/AiAssistant/index.tsx +65 -0
- package/src/providers/BrowserProvider/index.tsx +40 -0
- package/src/providers/ColorMode/index.tsx +73 -0
- package/src/providers/Layout/index.tsx +52 -0
- package/src/providers/MainNav/index.tsx +134 -0
- package/src/providers/Mobile/index.tsx +62 -0
- package/src/providers/Modal/index.tsx +52 -0
- package/src/providers/Notification/index.tsx +149 -0
- package/src/providers/Pagination/index.tsx +230 -0
- package/src/providers/Search/index.tsx +91 -0
- package/src/providers/Sidebar/index.tsx +745 -0
- package/src/providers/SiteConfig/index.tsx +70 -0
- package/src/providers/index.ts +13 -0
- package/src/types/config.ts +34 -0
- package/src/types/frontmatter.ts +23 -0
- package/src/types/general.ts +1 -0
- package/src/types/index.ts +9 -0
- package/src/types/menu.ts +40 -0
- package/src/types/navigation-dropdown.ts +16 -0
- package/src/types/navigation.ts +21 -0
- package/src/types/sidebar.ts +109 -0
- package/src/types/toc.ts +19 -0
- package/src/types/ui.ts +9 -0
- package/src/utils/array-same-elms.ts +10 -0
- package/src/utils/capitalize.ts +3 -0
- package/src/utils/check-sidebar-item-visibility.ts +47 -0
- package/src/utils/decode-str.ts +8 -0
- package/src/utils/dom-utils.ts +29 -0
- package/src/utils/event-parser.ts +54 -0
- package/src/utils/get-link-with-base-path.ts +3 -0
- package/src/utils/get-navbar-items.ts +55 -0
- package/src/utils/get-scrolled-top.ts +8 -0
- package/src/utils/index.ts +13 -0
- package/src/utils/is-elm-window.ts +3 -0
- package/src/utils/is-in-view.ts +10 -0
- package/src/utils/os-browser-utils.ts +39 -0
- package/src/utils/set-obj-value.ts +38 -0
- package/src/utils/sidebar-utils.ts +129 -0
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { IconProps } from "@acmekit/icons/dist/types"
|
|
2
|
+
import React from "react"
|
|
3
|
+
|
|
4
|
+
export const ThumbDownIcon = (props: IconProps) => {
|
|
5
|
+
return (
|
|
6
|
+
<svg
|
|
7
|
+
width="20"
|
|
8
|
+
height="20"
|
|
9
|
+
viewBox="0 0 20 20"
|
|
10
|
+
fill="none"
|
|
11
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
12
|
+
{...props}
|
|
13
|
+
>
|
|
14
|
+
<path
|
|
15
|
+
d="M6.25001 12.5H8.12501M14.8117 4.375C14.8208 4.41667 14.835 4.45833 14.855 4.49833C15.3475 5.49833 15.625 6.62333 15.625 7.8125C15.6268 9.00847 15.3413 10.1874 14.7925 11.25M14.8117 4.375C14.7483 4.07083 14.9642 3.75 15.2908 3.75H16.0475C16.7883 3.75 17.475 4.18167 17.6908 4.89C17.9733 5.815 18.125 6.79583 18.125 7.8125C18.125 9.10667 17.8792 10.3425 17.4325 11.4775C17.1775 12.1225 16.5275 12.5 15.8333 12.5H14.9558C14.5625 12.5 14.335 12.0367 14.5392 11.7C14.6285 11.553 14.7136 11.4029 14.7925 11.25M14.8117 4.375H13.7333C13.3303 4.37525 12.9299 4.31053 12.5475 4.18333L9.95251 3.31667C9.5701 3.18947 9.16969 3.12475 8.76668 3.125H5.42001C4.90501 3.125 4.40584 3.33083 4.08251 3.7325C2.6508 5.50731 1.87157 7.71971 1.87501 10C1.87501 10.3617 1.89418 10.7192 1.93168 11.0708C2.02251 11.9217 2.78834 12.5 3.64334 12.5H6.24835C6.76335 12.5 7.07418 13.1033 6.85251 13.5683C6.45441 14.4062 6.24856 15.3224 6.25001 16.25C6.25001 16.7473 6.44756 17.2242 6.79919 17.5758C7.15082 17.9275 7.62773 18.125 8.12501 18.125C8.29077 18.125 8.44974 18.0592 8.56695 17.9419C8.68416 17.8247 8.75001 17.6658 8.75001 17.5V16.9725C8.75001 16.495 8.84168 16.0225 9.01834 15.5792C9.27168 14.9458 9.79335 14.4708 10.3958 14.15C11.3208 13.6564 12.1326 12.9752 12.7792 12.15C13.1942 11.6217 13.8008 11.25 14.4725 11.25H14.7925"
|
|
16
|
+
stroke="currentColor"
|
|
17
|
+
strokeWidth="1.5"
|
|
18
|
+
strokeLinecap="round"
|
|
19
|
+
strokeLinejoin="round"
|
|
20
|
+
/>
|
|
21
|
+
</svg>
|
|
22
|
+
)
|
|
23
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { IconProps } from "@acmekit/icons/dist/types"
|
|
2
|
+
import React from "react"
|
|
3
|
+
|
|
4
|
+
export const ThumbUpIcon = (props: IconProps) => {
|
|
5
|
+
return (
|
|
6
|
+
<svg
|
|
7
|
+
width="20"
|
|
8
|
+
height="20"
|
|
9
|
+
viewBox="0 0 20 20"
|
|
10
|
+
fill="none"
|
|
11
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
12
|
+
{...props}
|
|
13
|
+
>
|
|
14
|
+
<path
|
|
15
|
+
d="M5.5275 8.75C6.19917 8.75 6.805 8.37833 7.22 7.85C7.86688 7.02468 8.67893 6.34349 9.60417 5.85C10.2067 5.53 10.7292 5.05333 10.9817 4.42083C11.159 3.97771 11.2501 3.50479 11.25 3.0275V2.5C11.25 2.33424 11.3159 2.17527 11.4331 2.05806C11.5503 1.94085 11.7092 1.875 11.875 1.875C12.3723 1.875 12.8492 2.07254 13.2008 2.42417C13.5525 2.77581 13.75 3.25272 13.75 3.75C13.75 4.71 13.5333 5.61917 13.1475 6.43167C12.9258 6.89667 13.2367 7.5 13.7517 7.5H16.3567C17.2117 7.5 17.9775 8.07833 18.0683 8.92917C18.1058 9.28083 18.125 9.6375 18.125 10C18.1284 12.2803 17.3492 14.4927 15.9175 16.2675C15.5942 16.6692 15.095 16.875 14.58 16.875H11.2333C10.8308 16.875 10.43 16.81 10.0475 16.6833L7.4525 15.8167C7.07009 15.6895 6.66968 15.6248 6.26667 15.625H4.92M4.92 15.625C4.98917 15.7958 5.06417 15.9625 5.145 16.1267C5.30917 16.46 5.08 16.875 4.70917 16.875H3.9525C3.21167 16.875 2.525 16.4433 2.30917 15.735C2.02054 14.7877 1.87422 13.8028 1.875 12.8125C1.875 11.5183 2.12084 10.2825 2.5675 9.1475C2.8225 8.5025 3.4725 8.125 4.16667 8.125H5.04417C5.4375 8.125 5.665 8.58833 5.46084 8.925C4.74908 10.0966 4.37369 11.4416 4.37584 12.8125C4.37584 13.8075 4.56917 14.7567 4.92084 15.625H4.92ZM11.875 7.5H13.75"
|
|
16
|
+
stroke="currentColor"
|
|
17
|
+
strokeWidth="1.5"
|
|
18
|
+
strokeLinecap="round"
|
|
19
|
+
strokeLinejoin="round"
|
|
20
|
+
/>
|
|
21
|
+
</svg>
|
|
22
|
+
)
|
|
23
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import React from "react"
|
|
2
|
+
import { IconProps } from "@acmekit/icons/dist/types"
|
|
3
|
+
|
|
4
|
+
export const WindowPaintbrushIcon = (props: IconProps) => {
|
|
5
|
+
return (
|
|
6
|
+
<svg
|
|
7
|
+
width="16"
|
|
8
|
+
height="16"
|
|
9
|
+
viewBox="0 0 16 16"
|
|
10
|
+
fill="none"
|
|
11
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
12
|
+
{...props}
|
|
13
|
+
>
|
|
14
|
+
<g clipPath="url(#clip0_10703_107733)">
|
|
15
|
+
<path
|
|
16
|
+
opacity="0.3"
|
|
17
|
+
d="M5.11111 10.5022C7.03289 11.08 8.59289 11.128 9.86756 9.82311C10.6364 9.05155 10.6364 7.8 9.86756 7.02755C9.09867 6.25511 7.85778 6.24444 7.08267 7.02755C5.82223 8.30222 6.92267 9.512 5.11111 10.5022Z"
|
|
18
|
+
fill="currentColor"
|
|
19
|
+
/>
|
|
20
|
+
<path
|
|
21
|
+
d="M10.4445 8.21954L14.9653 3.70132C15.456 3.21065 15.456 2.41421 14.9653 1.92354C14.4747 1.43288 13.6782 1.43288 13.1876 1.92354L8.65956 6.45332"
|
|
22
|
+
stroke="currentColor"
|
|
23
|
+
strokeWidth="1.5"
|
|
24
|
+
strokeLinecap="round"
|
|
25
|
+
strokeLinejoin="round"
|
|
26
|
+
/>
|
|
27
|
+
<path
|
|
28
|
+
d="M5.11111 10.5022C7.03289 11.08 8.59289 11.128 9.86756 9.82311C10.6364 9.05155 10.6364 7.8 9.86756 7.02755C9.09867 6.25511 7.85778 6.24444 7.08267 7.02755C5.82223 8.30222 6.92267 9.512 5.11111 10.5022Z"
|
|
29
|
+
stroke="currentColor"
|
|
30
|
+
strokeWidth="1.5"
|
|
31
|
+
strokeLinecap="round"
|
|
32
|
+
strokeLinejoin="round"
|
|
33
|
+
/>
|
|
34
|
+
<path
|
|
35
|
+
d="M14.4444 7.36357V11.7778C14.4444 12.76 13.6489 13.5556 12.6667 13.5556H3.33334C2.35111 13.5556 1.55556 12.76 1.55556 11.7778V4.22224C1.55556 3.24001 2.35111 2.44446 3.33334 2.44446H9.52445"
|
|
36
|
+
stroke="currentColor"
|
|
37
|
+
strokeWidth="1.5"
|
|
38
|
+
strokeLinecap="round"
|
|
39
|
+
strokeLinejoin="round"
|
|
40
|
+
/>
|
|
41
|
+
<path
|
|
42
|
+
d="M3.77778 5.33333C4.14597 5.33333 4.44445 5.03485 4.44445 4.66667C4.44445 4.29848 4.14597 4 3.77778 4C3.40959 4 3.11111 4.29848 3.11111 4.66667C3.11111 5.03485 3.40959 5.33333 3.77778 5.33333Z"
|
|
43
|
+
fill="currentColor"
|
|
44
|
+
/>
|
|
45
|
+
<path
|
|
46
|
+
d="M5.99999 5.33333C6.36818 5.33333 6.66666 5.03485 6.66666 4.66667C6.66666 4.29848 6.36818 4 5.99999 4C5.63181 4 5.33333 4.29848 5.33333 4.66667C5.33333 5.03485 5.63181 5.33333 5.99999 5.33333Z"
|
|
47
|
+
fill="currentColor"
|
|
48
|
+
/>
|
|
49
|
+
</g>
|
|
50
|
+
<defs>
|
|
51
|
+
<clipPath id="clip0_10703_107733">
|
|
52
|
+
<rect width="16" height="16" fill="white" />
|
|
53
|
+
</clipPath>
|
|
54
|
+
</defs>
|
|
55
|
+
</svg>
|
|
56
|
+
)
|
|
57
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export * from "./AiAssistant"
|
|
2
|
+
export * from "./BundledProduct"
|
|
3
|
+
export * from "./CalendarRefresh"
|
|
4
|
+
export * from "./ChefHat"
|
|
5
|
+
export * from "./CircleDottedLine"
|
|
6
|
+
export * from "./CloudSolid"
|
|
7
|
+
export * from "./ColoredAcmeKit"
|
|
8
|
+
export * from "./DecisionProcess"
|
|
9
|
+
export * from "./Erp"
|
|
10
|
+
export * from "./ImageBinary"
|
|
11
|
+
export * from "./PuzzleColored"
|
|
12
|
+
export * from "./QuestionMark"
|
|
13
|
+
export * from "./Restock"
|
|
14
|
+
export * from "./ScrollText"
|
|
15
|
+
export * from "./ShadedBg"
|
|
16
|
+
export * from "./Shop"
|
|
17
|
+
export * from "./StripeColored"
|
|
18
|
+
export * from "./ThumbDown"
|
|
19
|
+
export * from "./ThumbUp"
|
|
20
|
+
export * from "./WindowPaintbrush"
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
|
|
2
|
+
import React from "react"
|
|
3
|
+
import clsx from "clsx"
|
|
4
|
+
import { CopyButton } from "../../components/CopyButton"
|
|
5
|
+
|
|
6
|
+
export type InlineCodeProps = React.ComponentProps<"code"> & {
|
|
7
|
+
variant?: "default" | "grey-bg"
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export const InlineCode = ({
|
|
11
|
+
variant = "default",
|
|
12
|
+
...props
|
|
13
|
+
}: InlineCodeProps) => {
|
|
14
|
+
return (
|
|
15
|
+
<CopyButton
|
|
16
|
+
text={props.children as string}
|
|
17
|
+
buttonClassName={clsx(
|
|
18
|
+
"bg-transparent border-0 p-0 inline text-acmekit-fg-subtle group",
|
|
19
|
+
"font-monospace"
|
|
20
|
+
)}
|
|
21
|
+
>
|
|
22
|
+
<code
|
|
23
|
+
{...props}
|
|
24
|
+
className={clsx(
|
|
25
|
+
"text-acmekit-tag-neutral-text border whitespace-break-spaces",
|
|
26
|
+
"font-monospace text-code-label rounded-docs_sm py-0 px-[5px]",
|
|
27
|
+
variant === "default" && [
|
|
28
|
+
"bg-acmekit-tag-neutral-bg group-hover:bg-acmekit-tag-neutral-bg-hover",
|
|
29
|
+
"group-active:bg-acmekit-bg-subtle-pressed group-focus:bg-acmekit-bg-subtle-pressed",
|
|
30
|
+
"border-acmekit-tag-neutral-border",
|
|
31
|
+
],
|
|
32
|
+
variant === "grey-bg" && [
|
|
33
|
+
"bg-acmekit-bg-switch-off group-hover:bg-acmekit-bg-switch-off-hover",
|
|
34
|
+
"group-active:bg-acmekit-bg-switch-off-hover group-focus:bg-acmekit-switch-off-hover",
|
|
35
|
+
"border-acmekit-border-strong",
|
|
36
|
+
],
|
|
37
|
+
props.className
|
|
38
|
+
)}
|
|
39
|
+
/>
|
|
40
|
+
</CopyButton>
|
|
41
|
+
)
|
|
42
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import React from "react"
|
|
2
|
+
import { IconProps } from "@acmekit/icons/dist/types"
|
|
3
|
+
import clsx from "clsx"
|
|
4
|
+
|
|
5
|
+
type InlineIconProps = IconProps & {
|
|
6
|
+
Icon: React.ComponentType<IconProps>
|
|
7
|
+
alt?: string
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export const InlineIcon = ({ Icon, alt, ...props }: InlineIconProps) => {
|
|
11
|
+
return (
|
|
12
|
+
<Icon
|
|
13
|
+
{...props}
|
|
14
|
+
className={clsx(
|
|
15
|
+
"text-acmekit-fg-subtle inline-block align-middle",
|
|
16
|
+
props.className
|
|
17
|
+
)}
|
|
18
|
+
aria-label={alt}
|
|
19
|
+
/>
|
|
20
|
+
)
|
|
21
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import React from "react"
|
|
2
|
+
import clsx from "clsx"
|
|
3
|
+
import { ThemeImage, ThemeImageProps } from "../../components/ThemeImage"
|
|
4
|
+
|
|
5
|
+
export const InlineThemeImage = (props: ThemeImageProps) => {
|
|
6
|
+
return (
|
|
7
|
+
<ThemeImage
|
|
8
|
+
{...props}
|
|
9
|
+
width={20}
|
|
10
|
+
height={20}
|
|
11
|
+
className={clsx(props.className, "inline")}
|
|
12
|
+
/>
|
|
13
|
+
)
|
|
14
|
+
}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
|
|
2
|
+
import { MagnifyingGlass, XMark } from "@acmekit/icons"
|
|
3
|
+
import clsx from "clsx"
|
|
4
|
+
import React from "react"
|
|
5
|
+
import { useKeyboardShortcut } from "../../../hooks/use-keyboard-shortcut"
|
|
6
|
+
import { Kbd } from "../../Kbd"
|
|
7
|
+
|
|
8
|
+
type SearchInputProps = {
|
|
9
|
+
onChange: (value: string) => void
|
|
10
|
+
} & Omit<React.ComponentProps<"input">, "onChange">
|
|
11
|
+
|
|
12
|
+
export const SearchInput = ({
|
|
13
|
+
value,
|
|
14
|
+
onChange,
|
|
15
|
+
className,
|
|
16
|
+
placeholder = "Search...",
|
|
17
|
+
...props
|
|
18
|
+
}: SearchInputProps) => {
|
|
19
|
+
useKeyboardShortcut({
|
|
20
|
+
metakey: false,
|
|
21
|
+
shortcutKeys: ["escape"],
|
|
22
|
+
action: () => onChange(""),
|
|
23
|
+
checkEditing: false,
|
|
24
|
+
preventDefault: true,
|
|
25
|
+
})
|
|
26
|
+
|
|
27
|
+
return (
|
|
28
|
+
<div className="flex flex-col gap-docs_0.5">
|
|
29
|
+
<div className="relative">
|
|
30
|
+
<MagnifyingGlass className="absolute left-docs_0.5 top-[8.5px] bottom-[8.5px] text-acmekit-fg-muted" />
|
|
31
|
+
<input
|
|
32
|
+
type="text"
|
|
33
|
+
placeholder={placeholder}
|
|
34
|
+
className={clsx(
|
|
35
|
+
"w-full h-docs_2 pl-docs_2 text-base md:text-compact-small placeholder:text-acmekit-fg-muted",
|
|
36
|
+
"bg-acmekit-bg-field text-acmekit-fg-base rounded-full",
|
|
37
|
+
"shadow-borders-base hover:bg-acmekit-bg-field-hover",
|
|
38
|
+
"focus:bg-acmekit-bg-field focus:shadow-borders-interactive-with-active focus:outline-none",
|
|
39
|
+
className
|
|
40
|
+
)}
|
|
41
|
+
value={value}
|
|
42
|
+
onChange={(e) => onChange(e.target.value)}
|
|
43
|
+
{...props}
|
|
44
|
+
/>
|
|
45
|
+
{value && (
|
|
46
|
+
<button
|
|
47
|
+
className={clsx(
|
|
48
|
+
"absolute right-docs_0.5 top-[8.5px] bottom-[8.5px] appearance-none",
|
|
49
|
+
"flex items-center justify-center"
|
|
50
|
+
)}
|
|
51
|
+
onClick={() => onChange("")}
|
|
52
|
+
data-testid="clear-button"
|
|
53
|
+
>
|
|
54
|
+
<XMark className="text-acmekit-fg-muted" />
|
|
55
|
+
</button>
|
|
56
|
+
)}
|
|
57
|
+
</div>
|
|
58
|
+
<span className="flex gap-docs_0.25 justify-end items-center text-compact-x-small">
|
|
59
|
+
<Kbd variant="small">esc</Kbd>
|
|
60
|
+
<span className="text-acmekit-fg-muted">Clear Search</span>
|
|
61
|
+
</span>
|
|
62
|
+
</div>
|
|
63
|
+
)
|
|
64
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import React from "react"
|
|
2
|
+
import clsx from "clsx"
|
|
3
|
+
|
|
4
|
+
export type InputTextProps = {
|
|
5
|
+
className?: string
|
|
6
|
+
addGroupStyling?: boolean
|
|
7
|
+
passedRef?: React.Ref<HTMLInputElement>
|
|
8
|
+
} & React.DetailedHTMLProps<
|
|
9
|
+
React.InputHTMLAttributes<HTMLInputElement>,
|
|
10
|
+
HTMLInputElement
|
|
11
|
+
>
|
|
12
|
+
|
|
13
|
+
export const InputText = ({
|
|
14
|
+
addGroupStyling = false,
|
|
15
|
+
className,
|
|
16
|
+
passedRef,
|
|
17
|
+
...props
|
|
18
|
+
}: InputTextProps) => {
|
|
19
|
+
return (
|
|
20
|
+
<input
|
|
21
|
+
{...props}
|
|
22
|
+
className={clsx(
|
|
23
|
+
"bg-acmekit-bg-field-component shadow-border-base dark:shadow-border-base-dark",
|
|
24
|
+
"rounded-docs_sm px-docs_0.5",
|
|
25
|
+
"hover:bg-acmekit-bg-field-component-hover",
|
|
26
|
+
addGroupStyling && "group-hover:bg-acmekit-bg-field-component-hover",
|
|
27
|
+
"focus:border-acmekit-border-interactive",
|
|
28
|
+
"active:border-acmekit-border-interactive",
|
|
29
|
+
"disabled:bg-acmekit-bg-disabled",
|
|
30
|
+
"disabled:border-acmekit-border-base",
|
|
31
|
+
"placeholder:text-acmekit-fg-muted",
|
|
32
|
+
"disabled:placeholder:text-acmekit-fg-disabled",
|
|
33
|
+
"text-compact-small font-base",
|
|
34
|
+
className
|
|
35
|
+
)}
|
|
36
|
+
ref={passedRef}
|
|
37
|
+
/>
|
|
38
|
+
)
|
|
39
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import React from "react"
|
|
2
|
+
import clsx from "clsx"
|
|
3
|
+
|
|
4
|
+
export type KbdProps = React.ComponentProps<"kbd"> & {
|
|
5
|
+
variant?: "default" | "small"
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export const Kbd = ({
|
|
9
|
+
children,
|
|
10
|
+
className,
|
|
11
|
+
variant = "default",
|
|
12
|
+
...props
|
|
13
|
+
}: KbdProps) => {
|
|
14
|
+
return (
|
|
15
|
+
<kbd
|
|
16
|
+
className={clsx(
|
|
17
|
+
"rounded-docs_xs border-solid border border-acmekit-border-base",
|
|
18
|
+
"inline-flex items-center justify-center",
|
|
19
|
+
"px-docs_0.25",
|
|
20
|
+
"bg-acmekit-bg-field",
|
|
21
|
+
"text-acmekit-fg-base",
|
|
22
|
+
"font-base shadow-none",
|
|
23
|
+
variant === "small"
|
|
24
|
+
? "text-compact-x-small"
|
|
25
|
+
: "text-compact-x-small-plus",
|
|
26
|
+
className
|
|
27
|
+
)}
|
|
28
|
+
{...props}
|
|
29
|
+
>
|
|
30
|
+
{children}
|
|
31
|
+
</kbd>
|
|
32
|
+
)
|
|
33
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import clsx from "clsx"
|
|
2
|
+
import React from "react"
|
|
3
|
+
|
|
4
|
+
export type LabelProps = {
|
|
5
|
+
className?: string
|
|
6
|
+
} & React.HTMLAttributes<HTMLSpanElement>
|
|
7
|
+
|
|
8
|
+
export const Label = ({ children, className }: LabelProps) => {
|
|
9
|
+
return (
|
|
10
|
+
<span
|
|
11
|
+
className={clsx(
|
|
12
|
+
"text-acmekit-fg-base text-compact-medium-plus",
|
|
13
|
+
className
|
|
14
|
+
)}
|
|
15
|
+
>
|
|
16
|
+
{children}
|
|
17
|
+
</span>
|
|
18
|
+
)
|
|
19
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import React from "react"
|
|
2
|
+
import { Link as RouterLink } from "react-router-dom"
|
|
3
|
+
import clsx from "clsx"
|
|
4
|
+
import { TriangleRightMini } from "@acmekit/icons"
|
|
5
|
+
|
|
6
|
+
export type LinkProps = React.AllHTMLAttributes<HTMLAnchorElement> & {
|
|
7
|
+
href?: string
|
|
8
|
+
children?: React.ReactNode
|
|
9
|
+
className?: string
|
|
10
|
+
withIcon?: boolean
|
|
11
|
+
variant?: "default" | "content"
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
const HASH_REGEX = /#.*$/
|
|
15
|
+
|
|
16
|
+
export const Link = ({
|
|
17
|
+
href,
|
|
18
|
+
children,
|
|
19
|
+
className,
|
|
20
|
+
withIcon = false,
|
|
21
|
+
variant = "default",
|
|
22
|
+
...rest
|
|
23
|
+
}: LinkProps) => {
|
|
24
|
+
const hash = href?.match(HASH_REGEX)?.[0] || ""
|
|
25
|
+
const hrefWithoutHash = href?.replace(HASH_REGEX, "") || ""
|
|
26
|
+
if (hrefWithoutHash.endsWith("page.mdx")) {
|
|
27
|
+
href = hrefWithoutHash.replace("/page.mdx", "") + hash
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
const isExternal =
|
|
31
|
+
href?.startsWith("http") || href?.startsWith("//") || rest.target === "_blank"
|
|
32
|
+
|
|
33
|
+
const linkClassName = clsx(
|
|
34
|
+
variant === "default" &&
|
|
35
|
+
"text-acmekit-fg-interactive hover:text-acmekit-fg-interactive-hover",
|
|
36
|
+
variant === "content" && [
|
|
37
|
+
"underline decoration-acmekit-fg-muted hover:decoration-acmekit-fg-interactive",
|
|
38
|
+
"decoration-[1.5px] font-medium transition-[text-decoration-color]",
|
|
39
|
+
],
|
|
40
|
+
withIcon && "flex gap-0.25 items-center group",
|
|
41
|
+
className
|
|
42
|
+
)
|
|
43
|
+
|
|
44
|
+
if (isExternal) {
|
|
45
|
+
return (
|
|
46
|
+
<a href={href || ""} {...rest} className={linkClassName}>
|
|
47
|
+
{children}
|
|
48
|
+
{withIcon && (
|
|
49
|
+
<TriangleRightMini className="group-hover:translate-x-docs_0.125 transition-transform" />
|
|
50
|
+
)}
|
|
51
|
+
</a>
|
|
52
|
+
)
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
return (
|
|
56
|
+
<RouterLink
|
|
57
|
+
to={href || ""}
|
|
58
|
+
{...(rest as any)}
|
|
59
|
+
className={linkClassName}
|
|
60
|
+
>
|
|
61
|
+
{children}
|
|
62
|
+
{withIcon && (
|
|
63
|
+
<TriangleRightMini className="group-hover:translate-x-docs_0.125 transition-transform" />
|
|
64
|
+
)}
|
|
65
|
+
</RouterLink>
|
|
66
|
+
)
|
|
67
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import React from "react"
|
|
2
|
+
import { Link, LinkProps as RouterLinkProps } from "react-router-dom"
|
|
3
|
+
import clsx from "clsx"
|
|
4
|
+
|
|
5
|
+
type LinkButtonProps = RouterLinkProps & {
|
|
6
|
+
variant?: "base" | "interactive" | "subtle" | "muted"
|
|
7
|
+
className?: string
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export const LinkButton = ({
|
|
11
|
+
variant = "base",
|
|
12
|
+
className,
|
|
13
|
+
...linkProps
|
|
14
|
+
}: LinkButtonProps) => {
|
|
15
|
+
return (
|
|
16
|
+
<Link
|
|
17
|
+
{...linkProps}
|
|
18
|
+
className={clsx(
|
|
19
|
+
className,
|
|
20
|
+
"inline-flex justify-center items-center",
|
|
21
|
+
"gap-docs_0.25 rounded-docs_xs",
|
|
22
|
+
"text-compact-small-plus disabled:text-acmekit-fg-disabled",
|
|
23
|
+
"focus:shadow-borders-focus no-underline",
|
|
24
|
+
variant === "base" && [
|
|
25
|
+
"text-acmekit-fg-base hover:text-acmekit-fg-subtle",
|
|
26
|
+
"focus:text-acmekit-fg-base",
|
|
27
|
+
],
|
|
28
|
+
variant === "interactive" && [
|
|
29
|
+
"text-acmekit-fg-interactive hover:text-acmekit-interactive-hover",
|
|
30
|
+
"focus:text-acmekit-fg-interactive",
|
|
31
|
+
],
|
|
32
|
+
variant === "subtle" && [
|
|
33
|
+
"text-acmekit-fg-subtle hover:text-acmekit-fg-base",
|
|
34
|
+
"focus:text-acmekit-fg-subtle",
|
|
35
|
+
],
|
|
36
|
+
variant === "muted" && [
|
|
37
|
+
"text-acmekit-fg-muted hover:text-acmekit-fg-subtle",
|
|
38
|
+
"focus:text-acmekit-fg-muted",
|
|
39
|
+
]
|
|
40
|
+
)}
|
|
41
|
+
/>
|
|
42
|
+
)
|
|
43
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import clsx from "clsx"
|
|
2
|
+
import React from "react"
|
|
3
|
+
|
|
4
|
+
export type DotsLoadingProps = {
|
|
5
|
+
className?: string
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export const DotsLoading = ({ className }: DotsLoadingProps) => {
|
|
9
|
+
return (
|
|
10
|
+
<span className={clsx("text-medium text-acmekit-fg-subtle", className)}>
|
|
11
|
+
<span className="animate-pulsingDots">.</span>
|
|
12
|
+
<span className="animate-pulsingDots animation-delay-[500ms]">.</span>
|
|
13
|
+
<span className="animate-pulsingDots animation-delay-[1000ms]">.</span>
|
|
14
|
+
</span>
|
|
15
|
+
)
|
|
16
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import React from "react"
|
|
2
|
+
import clsx from "clsx"
|
|
3
|
+
import { Spinner } from "@acmekit/icons"
|
|
4
|
+
import { IconProps } from "@acmekit/icons/dist/types"
|
|
5
|
+
|
|
6
|
+
export type SpinnerLoadingProps = {
|
|
7
|
+
iconProps?: IconProps
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export const SpinnerLoading = ({ iconProps }: SpinnerLoadingProps) => {
|
|
11
|
+
return (
|
|
12
|
+
<span role="status">
|
|
13
|
+
<Spinner
|
|
14
|
+
{...iconProps}
|
|
15
|
+
className={clsx("animate-spin", iconProps?.className)}
|
|
16
|
+
/>
|
|
17
|
+
</span>
|
|
18
|
+
)
|
|
19
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import React from "react"
|
|
2
|
+
import clsx from "clsx"
|
|
3
|
+
|
|
4
|
+
export type LoadingProps = {
|
|
5
|
+
className?: string
|
|
6
|
+
barClassName?: string
|
|
7
|
+
count?: number
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export const Loading = ({
|
|
11
|
+
className,
|
|
12
|
+
count = 6,
|
|
13
|
+
barClassName,
|
|
14
|
+
}: LoadingProps) => {
|
|
15
|
+
const getLoadingBars = () => {
|
|
16
|
+
const bars = []
|
|
17
|
+
for (let i = 0; i < count; i++) {
|
|
18
|
+
bars.push(
|
|
19
|
+
<span
|
|
20
|
+
className={clsx(
|
|
21
|
+
"bg-acmekit-bg-subtle-pressed h-docs_1 w-full rounded-full",
|
|
22
|
+
barClassName
|
|
23
|
+
)}
|
|
24
|
+
key={i}
|
|
25
|
+
></span>
|
|
26
|
+
)
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
return bars
|
|
30
|
+
}
|
|
31
|
+
return (
|
|
32
|
+
<span
|
|
33
|
+
role="status"
|
|
34
|
+
className={clsx(
|
|
35
|
+
"my-docs_1 flex w-full animate-pulse flex-col gap-docs_1",
|
|
36
|
+
className
|
|
37
|
+
)}
|
|
38
|
+
>
|
|
39
|
+
{getLoadingBars()}
|
|
40
|
+
<span className="sr-only">Loading...</span>
|
|
41
|
+
</span>
|
|
42
|
+
)
|
|
43
|
+
}
|