@infonomic/uikit 1.5.0 → 2.1.0
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/components/button/button-group.d.ts +1 -1
- package/dist/components/button/button-group.d.ts.map +1 -1
- package/dist/components/button/button-group.js +1 -1
- package/dist/components/button/button.d.ts.map +1 -1
- package/dist/components/button/button.js +1 -1
- package/dist/components/button/control-buttons.d.ts.map +1 -1
- package/dist/components/button/control-buttons.js +3 -3
- package/dist/components/button/copy-button.d.ts.map +1 -1
- package/dist/components/button/copy-button.js +2 -2
- package/dist/components/button/icon-button.d.ts.map +1 -1
- package/dist/components/button/icon-button.js +1 -1
- package/dist/components/button/index.js +17 -1
- package/dist/components/card/card.d.ts.map +1 -1
- package/dist/components/dropdown/dropdown.d.ts +1 -1
- package/dist/components/dropdown/dropdown.d.ts.map +1 -1
- package/dist/components/input/checkbox.d.ts.map +1 -1
- package/dist/components/input/checkbox.js +4 -4
- package/dist/components/input/error-text.d.ts.map +1 -1
- package/dist/components/input/error-text.js +1 -1
- package/dist/components/input/help-text.d.ts.map +1 -1
- package/dist/components/input/help-text.js +1 -1
- package/dist/components/input/input-adornment.d.ts.map +1 -1
- package/dist/components/input/input-adornment.js +1 -1
- package/dist/components/input/input.d.ts.map +1 -1
- package/dist/components/input/input.js +3 -3
- package/dist/components/input/label.d.ts.map +1 -1
- package/dist/components/input/label.js +1 -1
- package/dist/components/input/radio-group.js +1 -1
- package/dist/components/input/select.d.ts +1 -1
- package/dist/components/input/select.d.ts.map +1 -1
- package/dist/components/input/select.js +3 -3
- package/dist/components/input/text-area.d.ts.map +1 -1
- package/dist/components/input/text-area.js +3 -3
- package/dist/components/notifications/alert.d.ts.map +1 -1
- package/dist/components/notifications/alert.js +2 -2
- package/dist/components/notifications/toast.js +4 -4
- package/dist/components/pager/ellipses.d.ts.map +1 -1
- package/dist/components/pager/ellipses.js +1 -1
- package/dist/components/pager/first-button.d.ts.map +1 -1
- package/dist/components/pager/first-button.js +2 -2
- package/dist/components/pager/last-button.d.ts.map +1 -1
- package/dist/components/pager/last-button.js +2 -2
- package/dist/components/pager/next-button.d.ts.map +1 -1
- package/dist/components/pager/next-button.js +2 -2
- package/dist/components/pager/number-button.d.ts.map +1 -1
- package/dist/components/pager/number-button.js +2 -2
- package/dist/components/pager/pagination.d.ts +1 -1
- package/dist/components/pager/pagination.d.ts.map +1 -1
- package/dist/components/pager/pagination.js +5 -5
- package/dist/components/pager/previous-button.d.ts.map +1 -1
- package/dist/components/pager/previous-button.js +2 -2
- package/dist/components/scroll-area/scroll-area.js +1 -1
- package/dist/components/table/table.d.ts.map +1 -1
- package/dist/components/table/table.js +2 -2
- package/dist/components/tabs/tabs.d.ts +1 -1
- package/dist/components/tabs/tabs.d.ts.map +1 -1
- package/dist/components/tabs/tabs.js +1 -1
- package/dist/components/tooltip/tooltip.d.ts.map +1 -1
- package/dist/icons/index.js +1 -17
- package/package.json +9 -5
- package/src/astro.d.ts +43 -0
- package/src/astro.js +2 -2
- package/src/components/@types/shared.ts +24 -0
- package/src/components/accordion/accordion.module.css +60 -0
- package/src/components/accordion/accordion.stories.tsx +117 -0
- package/src/components/accordion/accordion.tsx +105 -0
- package/src/components/animation/fade-in-lift.stories.tsx +81 -0
- package/src/components/animation/fade-in-lift.tsx +42 -0
- package/src/components/avatar/avatar.module.css +54 -0
- package/src/components/avatar/avatar.stories.tsx +28 -0
- package/src/components/avatar/avatar.tsx +19 -0
- package/src/components/button/@types/button.ts +17 -0
- package/src/components/button/button-group.module.css +17 -0
- package/src/components/button/button-group.stories.tsx +45 -0
- package/src/components/button/button-group.tsx +132 -0
- package/src/components/button/button-icon.stories.tsx +145 -0
- package/src/components/button/button-intents.stories.tsx +50 -0
- package/src/components/button/button-variants.stories.tsx +60 -0
- package/src/components/button/button.astro +86 -0
- package/src/components/button/button.module.css +533 -0
- package/src/components/button/button.tsx +81 -0
- package/src/components/button/control-buttons.module.css +144 -0
- package/src/components/button/control-buttons.stories.tsx +60 -0
- package/src/components/button/control-buttons.tsx +137 -0
- package/src/components/button/copy-button.module.css +31 -0
- package/src/components/button/copy-button.stories.tsx +50 -0
- package/src/components/button/copy-button.tsx +92 -0
- package/src/components/button/icon-button.astro +47 -0
- package/src/components/button/icon-button.tsx +44 -0
- package/src/components/button/index.ts +5 -0
- package/src/components/calendar/calendar.module.css +315 -0
- package/src/components/calendar/calendar.stories.tsx +139 -0
- package/src/components/calendar/calendar.tsx +173 -0
- package/src/components/card/card-content.astro +14 -0
- package/src/components/card/card-description.astro +14 -0
- package/src/components/card/card-footer.astro +14 -0
- package/src/components/card/card-header.astro +14 -0
- package/src/components/card/card-title.astro +14 -0
- package/src/components/card/card.astro +41 -0
- package/src/components/card/card.module.css +67 -0
- package/src/components/card/card.stories.tsx +61 -0
- package/src/components/card/card.tsx +86 -0
- package/src/components/container/container.astro +13 -0
- package/src/components/container/container.module.css +28 -0
- package/src/components/container/container.stories.tsx +42 -0
- package/src/components/container/container.tsx +23 -0
- package/src/components/dropdown/dropdown.module.css +131 -0
- package/src/components/dropdown/dropdown.stories.tsx +103 -0
- package/src/components/dropdown/dropdown.tsx +193 -0
- package/src/components/hamburger/hamburger.astro +30 -0
- package/src/components/hamburger/hamburger.tsx +66 -0
- package/src/components/input/@types/checkbox.ts +20 -0
- package/src/components/input/@types/input.ts +20 -0
- package/src/components/input/checkbox-group.tsx +78 -0
- package/src/components/input/checkbox.module.css +267 -0
- package/src/components/input/checkbox.stories.tsx +240 -0
- package/src/components/input/checkbox.tsx +95 -0
- package/src/components/input/error-text.astro +14 -0
- package/src/components/input/error-text.module.css +19 -0
- package/src/components/input/error-text.tsx +18 -0
- package/src/components/input/errors.tsx +37 -0
- package/src/components/input/help-text.astro +13 -0
- package/src/components/input/help-text.module.css +19 -0
- package/src/components/input/help-text.tsx +13 -0
- package/src/components/input/index.tsx +8 -0
- package/src/components/input/input-adornment.astro +26 -0
- package/src/components/input/input-adornment.module.css +18 -0
- package/src/components/input/input-adornment.tsx +36 -0
- package/src/components/input/input.astro +99 -0
- package/src/components/input/input.module.css +310 -0
- package/src/components/input/input.stories.tsx +174 -0
- package/src/components/input/input.tsx +103 -0
- package/src/components/input/label.astro +24 -0
- package/src/components/input/label.module.css +28 -0
- package/src/components/input/label.tsx +25 -0
- package/src/components/input/radio-group.module.css +219 -0
- package/src/components/input/radio-group.stories.tsx +73 -0
- package/src/components/input/radio-group.tsx +67 -0
- package/src/components/input/select.module.css +75 -0
- package/src/components/input/select.stories.tsx +34 -0
- package/src/components/input/select.tsx +115 -0
- package/src/components/input/text-area.module.css +9 -0
- package/src/components/input/text-area.stories.tsx +51 -0
- package/src/components/input/text-area.tsx +81 -0
- package/src/components/input/utils.ts +21 -0
- package/src/components/notifications/@types/alert.ts +12 -0
- package/src/components/notifications/@types/toast.ts +12 -0
- package/src/components/notifications/alert.module.css +114 -0
- package/src/components/notifications/alert.stories.tsx +39 -0
- package/src/components/notifications/alert.tsx +117 -0
- package/src/components/notifications/index.ts +2 -0
- package/src/components/notifications/toast.module.css +237 -0
- package/src/components/notifications/toast.stories.tsx +42 -0
- package/src/components/notifications/toast.tsx +124 -0
- package/src/components/overlay/index.stories.tsx +29 -0
- package/src/components/overlay/index.ts +2 -0
- package/src/components/overlay/overlay.module.css +41 -0
- package/src/components/overlay/overlay.tsx +61 -0
- package/src/components/pager/@types/index.ts +2 -0
- package/src/components/pager/ellipses.tsx +18 -0
- package/src/components/pager/event-pager.tsx +18 -0
- package/src/components/pager/first-button.tsx +53 -0
- package/src/components/pager/hooks/types/usePagination.ts +80 -0
- package/src/components/pager/hooks/usePagination.ts +140 -0
- package/src/components/pager/icons/first.tsx +33 -0
- package/src/components/pager/icons/index.tsx +4 -0
- package/src/components/pager/icons/last.tsx +33 -0
- package/src/components/pager/icons/next.tsx +20 -0
- package/src/components/pager/icons/previous.tsx +20 -0
- package/src/components/pager/index.ts +4 -0
- package/src/components/pager/last-button.tsx +57 -0
- package/src/components/pager/next-button.tsx +55 -0
- package/src/components/pager/number-button.tsx +83 -0
- package/src/components/pager/pagination.module.css +165 -0
- package/src/components/pager/pagination.stories.tsx +190 -0
- package/src/components/pager/pagination.tsx +266 -0
- package/src/components/pager/previous-button.tsx +51 -0
- package/src/components/scroll-area/scroll-area.module.css +80 -0
- package/src/components/scroll-area/scroll-area.stories.tsx +33 -0
- package/src/components/scroll-area/scroll-area.tsx +22 -0
- package/src/components/scroll-to-top/scroll-to-top.tsx +59 -0
- package/src/components/section/section.astro +13 -0
- package/src/components/section/section.module.css +7 -0
- package/src/components/section/section.tsx +23 -0
- package/src/components/shimmer/shimmer.module.css +53 -0
- package/src/components/shimmer/shimmer.stories.tsx +24 -0
- package/src/components/shimmer/shimmer.tsx +70 -0
- package/src/components/table/table.module.css +100 -0
- package/src/components/table/table.stories.tsx +95 -0
- package/src/components/table/table.tsx +165 -0
- package/src/components/tabs/tabs.module.css +64 -0
- package/src/components/tabs/tabs.stories.tsx +47 -0
- package/src/components/tabs/tabs.tsx +75 -0
- package/src/components/timeline/timeline.module.css +87 -0
- package/src/components/timeline/timeline.stories.tsx +50 -0
- package/src/components/timeline/timeline.tsx +177 -0
- package/src/components/tooltip/tooltip.module.css +55 -0
- package/src/components/tooltip/tooltip.stories.tsx +59 -0
- package/src/components/tooltip/tooltip.tsx +51 -0
- package/src/declarations.d.ts +4 -0
- package/src/hooks/use-media-query.ts +20 -0
- package/src/icons/activity-icon.tsx +40 -0
- package/src/icons/calendar-icon.tsx +39 -0
- package/src/icons/check-icon.tsx +33 -0
- package/src/icons/chevron-down-icon.tsx +39 -0
- package/src/icons/chevron-left-double-icon.tsx +58 -0
- package/src/icons/chevron-left-icon.tsx +58 -0
- package/src/icons/chevron-right-double-icon.tsx +58 -0
- package/src/icons/chevron-right-icon.tsx +58 -0
- package/src/icons/chevrons-up-down.tsx +37 -0
- package/src/icons/close-icon.astro +38 -0
- package/src/icons/close-icon.tsx +30 -0
- package/src/icons/copy-icon.tsx +35 -0
- package/src/icons/danger-icon.tsx +18 -0
- package/src/icons/dashboard-icon.tsx +41 -0
- package/src/icons/delete-icon.tsx +34 -0
- package/src/icons/document-icon.tsx +38 -0
- package/src/icons/download-icon.tsx +39 -0
- package/src/icons/edit-icon.tsx +35 -0
- package/src/icons/ellipsis-icon.tsx +38 -0
- package/src/icons/email-icon.tsx +33 -0
- package/src/icons/external-link-icon.tsx +39 -0
- package/src/icons/github-icon.tsx +27 -0
- package/src/icons/globe-icon.tsx +50 -0
- package/src/icons/google-icon.tsx +44 -0
- package/src/icons/gripper-vertical-icon.tsx +43 -0
- package/src/icons/history-icon.tsx +32 -0
- package/src/icons/home-icon.tsx +34 -0
- package/src/icons/icon-element.astro +27 -0
- package/src/icons/icon-element.tsx +32 -0
- package/src/icons/icon-sprite.tsx +18 -0
- package/src/icons/icons.module.css +147 -0
- package/src/icons/index.stories.tsx +25 -0
- package/src/icons/index.ts +39 -0
- package/src/icons/info-icon.tsx +18 -0
- package/src/icons/infonomic-icon.tsx +173 -0
- package/src/icons/light-icon.astro +36 -0
- package/src/icons/light-icon.tsx +29 -0
- package/src/icons/location-pin-icon.tsx +36 -0
- package/src/icons/moon-icon.astro +38 -0
- package/src/icons/moon-icon.tsx +42 -0
- package/src/icons/plus-icon.tsx +34 -0
- package/src/icons/primary-icon.tsx +22 -0
- package/src/icons/refresh-icon.tsx +33 -0
- package/src/icons/return-icon.tsx +36 -0
- package/src/icons/roles-icon.tsx +34 -0
- package/src/icons/search-icon.astro +40 -0
- package/src/icons/search-icon.tsx +29 -0
- package/src/icons/search-menu-icon.tsx +42 -0
- package/src/icons/settings-gear-icon.tsx +36 -0
- package/src/icons/settings-sliders-icon.tsx +43 -0
- package/src/icons/sign-out-icon.tsx +35 -0
- package/src/icons/source/icon-calendar.svg +1 -0
- package/src/icons/source/icon-check.svg +4 -0
- package/src/icons/source/icon-close.svg +3 -0
- package/src/icons/source/icon-coinbase.svg +9 -0
- package/src/icons/source/icon-copy.svg +4 -0
- package/src/icons/source/icon-document.svg +5 -0
- package/src/icons/source/icon-download.svg +4 -0
- package/src/icons/source/icon-edit.svg +6 -0
- package/src/icons/source/icon-eth-purple.svg +15 -0
- package/src/icons/source/icon-etherscan.svg +5 -0
- package/src/icons/source/icon-external-link.svg +4 -0
- package/src/icons/source/icon-globe.svg +7 -0
- package/src/icons/source/icon-gripper-vertical.svg +9 -0
- package/src/icons/source/icon-info.svg +4 -0
- package/src/icons/source/icon-infonomic.svg +43 -0
- package/src/icons/source/icon-ledger.svg +4 -0
- package/src/icons/source/icon-light.svg +3 -0
- package/src/icons/source/icon-location-pin.svg +8 -0
- package/src/icons/source/icon-logout.svg +6 -0
- package/src/icons/source/icon-metamask.svg +32 -0
- package/src/icons/source/icon-moon.svg +3 -0
- package/src/icons/source/icon-plus.svg +4 -0
- package/src/icons/source/icon-refresh.svg +4 -0
- package/src/icons/source/icon-return.svg +4 -0
- package/src/icons/source/icon-search-menu.svg +13 -0
- package/src/icons/source/icon-search.svg +3 -0
- package/src/icons/source/icon-settings-gear.svg +5 -0
- package/src/icons/source/icon-settings.svg +12 -0
- package/src/icons/source/icon-wallet.svg +3 -0
- package/src/icons/source/icon-walletconnect.svg +4 -0
- package/src/icons/source/icon-x.svg +4 -0
- package/src/icons/stopwatch-icon.tsx +39 -0
- package/src/icons/success-icon.tsx +18 -0
- package/src/icons/types/icon.ts +8 -0
- package/src/icons/user-icon.tsx +33 -0
- package/src/icons/users-icon.tsx +35 -0
- package/src/icons/wallet-icon.tsx +29 -0
- package/src/icons/warning-icon.tsx +18 -0
- package/src/icons/x-icon.tsx +33 -0
- package/src/loaders/ellipses.tsx +36 -0
- package/src/loaders/loaders.stories.tsx +46 -0
- package/src/loaders/ring.tsx +33 -0
- package/src/loaders/spinner.tsx +28 -0
- package/src/loaders/types/index.ts +6 -0
- package/src/react.ts +99 -0
- package/src/styles/base/animations.css +143 -0
- package/src/styles/base/base.css +5 -0
- package/src/styles/base/colors.css +163 -0
- package/src/styles/base/colors.stories.tsx +671 -0
- package/src/styles/base/reset.css +464 -0
- package/src/styles/base/typography.css +25 -0
- package/src/styles/base/vars.css +188 -0
- package/src/styles/components/card.css +20 -0
- package/src/styles/components/checkbox.css +55 -0
- package/src/styles/components/components.css +11 -0
- package/src/styles/components/directional-button.css +92 -0
- package/src/styles/components/dropdown.css +19 -0
- package/src/styles/components/fade-in-lift.css +13 -0
- package/src/styles/components/hamburger.css +107 -0
- package/src/styles/components/icon-element.css +4 -0
- package/src/styles/components/list-checkbox.css +60 -0
- package/src/styles/components/loaders.css +196 -0
- package/src/styles/components/popover.css +15 -0
- package/src/styles/components/scroll-to-top.css +89 -0
- package/src/styles/components/toast.css +18 -0
- package/src/styles/styles.css +6 -0
- package/src/styles/theme/autofill.css +58 -0
- package/src/styles/theme/scrollers.css +52 -0
- package/src/styles/theme/theme.css +130 -0
- package/src/styles/theme/theme.stories.tsx +33 -0
- package/src/styles/typography/code.stories.tsx +76 -0
- package/src/styles/typography/default.stories.tsx +51 -0
- package/src/styles/typography/fonts.css +30 -0
- package/src/styles/typography/lists.stories.tsx +50 -0
- package/src/styles/typography/prose.css +404 -0
- package/src/styles/typography/quote.stories.tsx +37 -0
- package/src/styles/typography.css +24 -0
- package/src/styles/utils/scroll-layout-shift.css +9 -0
- package/src/styles/utils/utility-classes.css +1278 -0
- package/src/styles/utils/utils.css +2 -0
- package/src/theme/theme-provider/index.ts +1 -0
- package/src/theme/theme-provider/provider.tsx +44 -0
- package/src/utils/capitalize.ts +6 -0
- package/src/utils/externalLinkProps.ts +6 -0
- package/src/utils/findMatch.ts +7 -0
- package/src/utils/getPortalRoot.ts +3 -0
- package/src/utils/isTouchDevice.ts +11 -0
- package/src/utils/objectsToArray.ts +15 -0
- package/src/utils/objectsToString.ts +5 -0
- package/src/utils/polymorphic.ts +16 -0
- package/src/utils/to-kebab-case.ts +5 -0
- package/src/widgets/datepicker/datepicker.module.css +189 -0
- package/src/widgets/datepicker/datepicker.stories.tsx +25 -0
- package/src/widgets/datepicker/datepicker.tsx +310 -0
- package/src/widgets/drawer/drawer-container.tsx +26 -0
- package/src/widgets/drawer/drawer-content.tsx +26 -0
- package/src/widgets/drawer/drawer-context.tsx +49 -0
- package/src/widgets/drawer/drawer-header.tsx +27 -0
- package/src/widgets/drawer/drawer-top-actions.tsx +27 -0
- package/src/widgets/drawer/drawer-wrapper.tsx +54 -0
- package/src/widgets/drawer/drawer.module.css +116 -0
- package/src/widgets/drawer/drawer.stories.tsx +224 -0
- package/src/widgets/drawer/drawer.tsx +115 -0
- package/src/widgets/drawer/motionDomAnimation.ts +4 -0
- package/src/widgets/drawer/motionDomMax.ts +4 -0
- package/src/widgets/modal/modal-actions.tsx +26 -0
- package/src/widgets/modal/modal-container.tsx +26 -0
- package/src/widgets/modal/modal-content.tsx +26 -0
- package/src/widgets/modal/modal-header.tsx +27 -0
- package/src/widgets/modal/modal-wrapper.tsx +50 -0
- package/src/widgets/modal/modal.module.css +85 -0
- package/src/widgets/modal/modal.stories.tsx +71 -0
- package/src/widgets/modal/modal.tsx +110 -0
- package/src/widgets/modal/motionDomAnimation.ts +4 -0
- package/src/widgets/modal/motionDomMax.ts +4 -0
- package/src/widgets/search/index.ts +1 -0
- package/src/widgets/search/search.stories.tsx +18 -0
- package/src/widgets/search/search.tsx +186 -0
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Byline CMS
|
|
3
|
+
*
|
|
4
|
+
* Copyright © 2025 Anthony Bouch and contributors.
|
|
5
|
+
*
|
|
6
|
+
* This file is part of Byline CMS.
|
|
7
|
+
*
|
|
8
|
+
* This program is free software: you can redistribute it and/or modify
|
|
9
|
+
* it under the terms of the GNU Affero General Public License as
|
|
10
|
+
* published by the Free Software Foundation, either version 3 of the
|
|
11
|
+
* License, or (at your option) any later version.
|
|
12
|
+
*
|
|
13
|
+
* This program is distributed in the hope that it will be useful,
|
|
14
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
15
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
16
|
+
* GNU Affero General Public License for more details.
|
|
17
|
+
*
|
|
18
|
+
* You should have received a copy of the GNU Affero General Public License
|
|
19
|
+
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
20
|
+
*/
|
|
21
|
+
|
|
22
|
+
import cx from 'classnames'
|
|
23
|
+
import type React from 'react'
|
|
24
|
+
|
|
25
|
+
import { IconElement } from './icon-element.jsx'
|
|
26
|
+
import styles from './icons.module.css'
|
|
27
|
+
import type { IconProps } from './types/icon.js'
|
|
28
|
+
|
|
29
|
+
export const ChevronLeftIcon = ({
|
|
30
|
+
className,
|
|
31
|
+
svgClassName,
|
|
32
|
+
...rest
|
|
33
|
+
}: IconProps): React.JSX.Element => {
|
|
34
|
+
const applied = cx(styles['fill-contrast'], svgClassName)
|
|
35
|
+
|
|
36
|
+
return (
|
|
37
|
+
<IconElement className={cx('chevron-left-icon', className)} {...rest}>
|
|
38
|
+
<svg
|
|
39
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
40
|
+
className={applied}
|
|
41
|
+
role="presentation"
|
|
42
|
+
focusable="false"
|
|
43
|
+
aria-hidden="true"
|
|
44
|
+
viewBox="0 0 15 15"
|
|
45
|
+
strokeWidth={1}
|
|
46
|
+
>
|
|
47
|
+
<path
|
|
48
|
+
d="M8.84182 3.13514C9.04327 3.32401 9.05348 3.64042 8.86462 3.84188L5.43521 7.49991L8.86462 11.1579C9.05348 11.3594 9.04327 11.6758 8.84182 11.8647C8.64036 12.0535 8.32394 12.0433 8.13508 11.8419L4.38508 7.84188C4.20477 7.64955 4.20477 7.35027 4.38508 7.15794L8.13508 3.15794C8.32394 2.95648 8.64036 2.94628 8.84182 3.13514Z"
|
|
49
|
+
fill="currentColor"
|
|
50
|
+
fillRule="evenodd"
|
|
51
|
+
clipRule="evenodd"
|
|
52
|
+
></path>
|
|
53
|
+
</svg>
|
|
54
|
+
</IconElement>
|
|
55
|
+
)
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
ChevronLeftIcon.displayName = 'ChevronLeftIcon'
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Byline CMS
|
|
3
|
+
*
|
|
4
|
+
* Copyright © 2025 Anthony Bouch and contributors.
|
|
5
|
+
*
|
|
6
|
+
* This file is part of Byline CMS.
|
|
7
|
+
*
|
|
8
|
+
* This program is free software: you can redistribute it and/or modify
|
|
9
|
+
* it under the terms of the GNU Affero General Public License as
|
|
10
|
+
* published by the Free Software Foundation, either version 3 of the
|
|
11
|
+
* License, or (at your option) any later version.
|
|
12
|
+
*
|
|
13
|
+
* This program is distributed in the hope that it will be useful,
|
|
14
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
15
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
16
|
+
* GNU Affero General Public License for more details.
|
|
17
|
+
*
|
|
18
|
+
* You should have received a copy of the GNU Affero General Public License
|
|
19
|
+
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
20
|
+
*/
|
|
21
|
+
|
|
22
|
+
import cx from 'classnames'
|
|
23
|
+
import type React from 'react'
|
|
24
|
+
|
|
25
|
+
import { IconElement } from './icon-element.jsx'
|
|
26
|
+
import styles from './icons.module.css'
|
|
27
|
+
import type { IconProps } from './types/icon.js'
|
|
28
|
+
|
|
29
|
+
export const ChevronRightDoubleIcon = ({
|
|
30
|
+
className,
|
|
31
|
+
svgClassName,
|
|
32
|
+
...rest
|
|
33
|
+
}: IconProps): React.JSX.Element => {
|
|
34
|
+
const applied = cx(styles['fill-contrast'], svgClassName)
|
|
35
|
+
|
|
36
|
+
return (
|
|
37
|
+
<IconElement className={cx('chevron-right-double-icon', className)} {...rest}>
|
|
38
|
+
<svg
|
|
39
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
40
|
+
className={applied}
|
|
41
|
+
role="presentation"
|
|
42
|
+
focusable="false"
|
|
43
|
+
aria-hidden="true"
|
|
44
|
+
viewBox="0 0 15 15"
|
|
45
|
+
strokeWidth={1}
|
|
46
|
+
>
|
|
47
|
+
<path
|
|
48
|
+
d="M2.14645 11.1464C1.95118 11.3417 1.95118 11.6583 2.14645 11.8536C2.34171 12.0488 2.65829 12.0488 2.85355 11.8536L6.85355 7.85355C7.04882 7.65829 7.04882 7.34171 6.85355 7.14645L2.85355 3.14645C2.65829 2.95118 2.34171 2.95118 2.14645 3.14645C1.95118 3.34171 1.95118 3.65829 2.14645 3.85355L5.79289 7.5L2.14645 11.1464ZM8.14645 11.1464C7.95118 11.3417 7.95118 11.6583 8.14645 11.8536C8.34171 12.0488 8.65829 12.0488 8.85355 11.8536L12.8536 7.85355C13.0488 7.65829 13.0488 7.34171 12.8536 7.14645L8.85355 3.14645C8.65829 2.95118 8.34171 2.95118 8.14645 3.14645C7.95118 3.34171 7.95118 3.65829 8.14645 3.85355L11.7929 7.5L8.14645 11.1464Z"
|
|
49
|
+
fill="currentColor"
|
|
50
|
+
fillRule="evenodd"
|
|
51
|
+
clipRule="evenodd"
|
|
52
|
+
></path>
|
|
53
|
+
</svg>
|
|
54
|
+
</IconElement>
|
|
55
|
+
)
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
ChevronRightDoubleIcon.displayName = 'ChevronRightDoubleIcon'
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Byline CMS
|
|
3
|
+
*
|
|
4
|
+
* Copyright © 2025 Anthony Bouch and contributors.
|
|
5
|
+
*
|
|
6
|
+
* This file is part of Byline CMS.
|
|
7
|
+
*
|
|
8
|
+
* This program is free software: you can redistribute it and/or modify
|
|
9
|
+
* it under the terms of the GNU Affero General Public License as
|
|
10
|
+
* published by the Free Software Foundation, either version 3 of the
|
|
11
|
+
* License, or (at your option) any later version.
|
|
12
|
+
*
|
|
13
|
+
* This program is distributed in the hope that it will be useful,
|
|
14
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
15
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
16
|
+
* GNU Affero General Public License for more details.
|
|
17
|
+
*
|
|
18
|
+
* You should have received a copy of the GNU Affero General Public License
|
|
19
|
+
* along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
20
|
+
*/
|
|
21
|
+
|
|
22
|
+
import cx from 'classnames'
|
|
23
|
+
import type React from 'react'
|
|
24
|
+
|
|
25
|
+
import { IconElement } from './icon-element.jsx'
|
|
26
|
+
import styles from './icons.module.css'
|
|
27
|
+
import type { IconProps } from './types/icon.js'
|
|
28
|
+
|
|
29
|
+
export const ChevronRightIcon = ({
|
|
30
|
+
className,
|
|
31
|
+
svgClassName,
|
|
32
|
+
...rest
|
|
33
|
+
}: IconProps): React.JSX.Element => {
|
|
34
|
+
const applied = cx(styles['fill-contrast'], svgClassName)
|
|
35
|
+
|
|
36
|
+
return (
|
|
37
|
+
<IconElement className={cx('chevron-right-icon', className)} {...rest}>
|
|
38
|
+
<svg
|
|
39
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
40
|
+
className={applied}
|
|
41
|
+
role="presentation"
|
|
42
|
+
focusable="false"
|
|
43
|
+
aria-hidden="true"
|
|
44
|
+
viewBox="0 0 15 15"
|
|
45
|
+
strokeWidth={1}
|
|
46
|
+
>
|
|
47
|
+
<path
|
|
48
|
+
d="M6.1584 3.13508C6.35985 2.94621 6.67627 2.95642 6.86514 3.15788L10.6151 7.15788C10.7954 7.3502 10.7954 7.64949 10.6151 7.84182L6.86514 11.8418C6.67627 12.0433 6.35985 12.0535 6.1584 11.8646C5.95694 11.6757 5.94673 11.3593 6.1356 11.1579L9.565 7.49985L6.1356 3.84182C5.94673 3.64036 5.95694 3.32394 6.1584 3.13508Z"
|
|
49
|
+
fill="currentColor"
|
|
50
|
+
fillRule="evenodd"
|
|
51
|
+
clipRule="evenodd"
|
|
52
|
+
></path>
|
|
53
|
+
</svg>
|
|
54
|
+
</IconElement>
|
|
55
|
+
)
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
ChevronRightIcon.displayName = 'ChevronRightIcon'
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import cx from 'classnames'
|
|
2
|
+
import type React from 'react'
|
|
3
|
+
|
|
4
|
+
import { IconElement } from './icon-element.jsx'
|
|
5
|
+
import styles from './icons.module.css'
|
|
6
|
+
import type { IconProps } from './types/icon.js'
|
|
7
|
+
|
|
8
|
+
export const ChevronsUpDown = ({
|
|
9
|
+
className,
|
|
10
|
+
svgClassName,
|
|
11
|
+
...rest
|
|
12
|
+
}: IconProps): React.JSX.Element => {
|
|
13
|
+
const applied = cx(styles['stroke-contrast'], svgClassName)
|
|
14
|
+
|
|
15
|
+
return (
|
|
16
|
+
<IconElement className={cx('chevrons-up-down', className)} {...rest}>
|
|
17
|
+
<svg
|
|
18
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
19
|
+
className={applied}
|
|
20
|
+
role="presentation"
|
|
21
|
+
focusable="false"
|
|
22
|
+
aria-hidden="true"
|
|
23
|
+
viewBox="0 0 24 24"
|
|
24
|
+
fill="none"
|
|
25
|
+
stroke="currentColor"
|
|
26
|
+
strokeWidth={2}
|
|
27
|
+
strokeLinecap="round"
|
|
28
|
+
strokeLinejoin="round"
|
|
29
|
+
>
|
|
30
|
+
<path d="m7 15 5 5 5-5" />
|
|
31
|
+
<path d="m7 9 5-5 5 5" />
|
|
32
|
+
</svg>
|
|
33
|
+
</IconElement>
|
|
34
|
+
)
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
ChevronsUpDown.displayName = 'ChevronsUpDown'
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
---
|
|
2
|
+
import type { HTMLAttributes } from 'astro/types'
|
|
3
|
+
|
|
4
|
+
interface Props extends HTMLAttributes<'div'> {
|
|
5
|
+
class?: string
|
|
6
|
+
width?: string
|
|
7
|
+
height?: string
|
|
8
|
+
menuItem?: boolean
|
|
9
|
+
svgClass?: string
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
import IconElement from './icon-element.astro'
|
|
13
|
+
import styles from './icons.module.css'
|
|
14
|
+
|
|
15
|
+
const { class: className, width, height, svgClass: svgClassName, menuItem, ...rest } = Astro.props
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
<IconElement
|
|
19
|
+
class:list={['close-icon', className]}
|
|
20
|
+
width={width}
|
|
21
|
+
height={height}
|
|
22
|
+
menuItem={menuItem}
|
|
23
|
+
{...rest}
|
|
24
|
+
>
|
|
25
|
+
<svg
|
|
26
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
27
|
+
viewBox="0 0 15 15"
|
|
28
|
+
class:list={[styles['fill-contrast'], svgClassName]}
|
|
29
|
+
focusable="false"
|
|
30
|
+
aria-hidden="true"
|
|
31
|
+
{...rest}
|
|
32
|
+
>
|
|
33
|
+
<path
|
|
34
|
+
d="M12.8536 2.85355C13.0488 2.65829 13.0488 2.34171 12.8536 2.14645C12.6583 1.95118 12.3417 1.95118 12.1464 2.14645L7.5 6.79289L2.85355 2.14645C2.65829 1.95118 2.34171 1.95118 2.14645 2.14645C1.95118 2.34171 1.95118 2.65829 2.14645 2.85355L6.79289 7.5L2.14645 12.1464C1.95118 12.3417 1.95118 12.6583 2.14645 12.8536C2.34171 13.0488 2.65829 13.0488 2.85355 12.8536L7.5 8.20711L12.1464 12.8536C12.3417 13.0488 12.6583 13.0488 12.8536 12.8536C13.0488 12.6583 13.0488 12.3417 12.8536 12.1464L8.20711 7.5L12.8536 2.85355Z"
|
|
35
|
+
fill-rule="evenodd"
|
|
36
|
+
clip-rule="evenodd"></path>
|
|
37
|
+
</svg>
|
|
38
|
+
</IconElement>
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import cx from 'classnames'
|
|
2
|
+
import type React from 'react'
|
|
3
|
+
|
|
4
|
+
import { IconElement } from './icon-element.js'
|
|
5
|
+
import styles from './icons.module.css'
|
|
6
|
+
import type { IconProps } from './types/icon.js'
|
|
7
|
+
|
|
8
|
+
export const CloseIcon = ({ className, svgClassName, ...rest }: IconProps): React.JSX.Element => {
|
|
9
|
+
const applied = cx(styles['fill-contrast'], svgClassName)
|
|
10
|
+
|
|
11
|
+
return (
|
|
12
|
+
<IconElement className={cx('close-icon', className)} {...rest}>
|
|
13
|
+
<svg
|
|
14
|
+
className={applied}
|
|
15
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
16
|
+
focusable="false"
|
|
17
|
+
aria-hidden="true"
|
|
18
|
+
viewBox="0 0 15 15"
|
|
19
|
+
>
|
|
20
|
+
<path
|
|
21
|
+
d="M12.8536 2.85355C13.0488 2.65829 13.0488 2.34171 12.8536 2.14645C12.6583 1.95118 12.3417 1.95118 12.1464 2.14645L7.5 6.79289L2.85355 2.14645C2.65829 1.95118 2.34171 1.95118 2.14645 2.14645C1.95118 2.34171 1.95118 2.65829 2.14645 2.85355L6.79289 7.5L2.14645 12.1464C1.95118 12.3417 1.95118 12.6583 2.14645 12.8536C2.34171 13.0488 2.65829 13.0488 2.85355 12.8536L7.5 8.20711L12.1464 12.8536C12.3417 13.0488 12.6583 13.0488 12.8536 12.8536C13.0488 12.6583 13.0488 12.3417 12.8536 12.1464L8.20711 7.5L12.8536 2.85355Z"
|
|
22
|
+
fillRule="evenodd"
|
|
23
|
+
clipRule="evenodd"
|
|
24
|
+
></path>
|
|
25
|
+
</svg>
|
|
26
|
+
</IconElement>
|
|
27
|
+
)
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
CloseIcon.displayName = 'CloseIcon'
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type React from 'react'
|
|
2
|
+
|
|
3
|
+
import cx from 'classnames'
|
|
4
|
+
|
|
5
|
+
import { IconElement } from './icon-element.js'
|
|
6
|
+
|
|
7
|
+
import type { IconProps } from './types/icon.js'
|
|
8
|
+
|
|
9
|
+
import styles from './icons.module.css'
|
|
10
|
+
|
|
11
|
+
export const CopyIcon = ({ className, svgClassName, ...rest }: IconProps): React.JSX.Element => {
|
|
12
|
+
const applied = cx(styles['fill-gray'], svgClassName)
|
|
13
|
+
|
|
14
|
+
return (
|
|
15
|
+
<IconElement className={cx('copy-icon', className)} {...rest}>
|
|
16
|
+
<svg
|
|
17
|
+
className={applied}
|
|
18
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
19
|
+
focusable="false"
|
|
20
|
+
aria-hidden="true"
|
|
21
|
+
viewBox="0 0 15 15"
|
|
22
|
+
strokeWidth="0"
|
|
23
|
+
>
|
|
24
|
+
<path
|
|
25
|
+
d="M1 9.50006C1 10.3285 1.67157 11.0001 2.5 11.0001H4L4 10.0001H2.5C2.22386 10.0001 2 9.7762 2 9.50006L2 2.50006C2 2.22392 2.22386 2.00006 2.5 2.00006L9.5 2.00006C9.77614 2.00006 10 2.22392 10 2.50006V4.00002H5.5C4.67158 4.00002 4 4.67159 4 5.50002V12.5C4 13.3284 4.67158 14 5.5 14H12.5C13.3284 14 14 13.3284 14 12.5V5.50002C14 4.67159 13.3284 4.00002 12.5 4.00002H11V2.50006C11 1.67163 10.3284 1.00006 9.5 1.00006H2.5C1.67157 1.00006 1 1.67163 1 2.50006V9.50006ZM5 5.50002C5 5.22388 5.22386 5.00002 5.5 5.00002H12.5C12.7761 5.00002 13 5.22388 13 5.50002V12.5C13 12.7762 12.7761 13 12.5 13H5.5C5.22386 13 5 12.7762 5 12.5V5.50002Z"
|
|
26
|
+
// fill="currentColor"
|
|
27
|
+
fillRule="evenodd"
|
|
28
|
+
clipRule="evenodd"
|
|
29
|
+
/>
|
|
30
|
+
</svg>
|
|
31
|
+
</IconElement>
|
|
32
|
+
)
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
CopyIcon.displayName = 'CopyIcon'
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import cx from 'classnames'
|
|
2
|
+
import type React from 'react'
|
|
3
|
+
|
|
4
|
+
import { IconElement } from './icon-element.js'
|
|
5
|
+
import styles from './icons.module.css'
|
|
6
|
+
import type { IconProps } from './types/icon.js'
|
|
7
|
+
|
|
8
|
+
export const DangerIcon = ({ className, svgClassName, ...rest }: IconProps): React.JSX.Element => {
|
|
9
|
+
const applied = cx(styles['fill-danger'], svgClassName)
|
|
10
|
+
|
|
11
|
+
return (
|
|
12
|
+
<IconElement className={cx('danger-icon', className)} {...rest}>
|
|
13
|
+
<svg className={applied} focusable="false" aria-hidden="true" viewBox="0 0 24 24">
|
|
14
|
+
<path d="M11 15h2v2h-2zm0-8h2v6h-2zm.99-5C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z" />
|
|
15
|
+
</svg>
|
|
16
|
+
</IconElement>
|
|
17
|
+
)
|
|
18
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import type React from 'react'
|
|
2
|
+
|
|
3
|
+
import cx from 'classnames'
|
|
4
|
+
|
|
5
|
+
import { IconElement } from './icon-element.jsx'
|
|
6
|
+
|
|
7
|
+
import type { IconProps } from './types/icon.js'
|
|
8
|
+
|
|
9
|
+
import styles from './icons.module.css'
|
|
10
|
+
|
|
11
|
+
export const DashboardIcon = ({
|
|
12
|
+
className,
|
|
13
|
+
svgClassName,
|
|
14
|
+
...rest
|
|
15
|
+
}: IconProps): React.JSX.Element => {
|
|
16
|
+
const applied = cx(styles['fill-none'], styles['stroke-contrast'], svgClassName)
|
|
17
|
+
|
|
18
|
+
return (
|
|
19
|
+
<IconElement className={cx('dashboard-icon', className)} {...rest}>
|
|
20
|
+
<svg
|
|
21
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
22
|
+
className={applied}
|
|
23
|
+
focusable="false"
|
|
24
|
+
aria-hidden="true"
|
|
25
|
+
viewBox="0 0 24 24"
|
|
26
|
+
fill="none"
|
|
27
|
+
strokeLinecap="round"
|
|
28
|
+
strokeLinejoin="round"
|
|
29
|
+
strokeWidth={2}
|
|
30
|
+
>
|
|
31
|
+
{' '}
|
|
32
|
+
<path d="M5 4h4a1 1 0 0 1 1 1v6a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1v-6a1 1 0 0 1 1 -1"></path>{' '}
|
|
33
|
+
<path d="M5 16h4a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1v-2a1 1 0 0 1 1 -1"></path>{' '}
|
|
34
|
+
<path d="M15 12h4a1 1 0 0 1 1 1v6a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1v-6a1 1 0 0 1 1 -1"></path>{' '}
|
|
35
|
+
<path d="M15 4h4a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1v-2a1 1 0 0 1 1 -1"></path>{' '}
|
|
36
|
+
</svg>
|
|
37
|
+
</IconElement>
|
|
38
|
+
)
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
DashboardIcon.displayName = 'DashboardIcon'
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type React from 'react'
|
|
2
|
+
|
|
3
|
+
import cx from 'classnames'
|
|
4
|
+
|
|
5
|
+
import { IconElement } from './icon-element.js'
|
|
6
|
+
|
|
7
|
+
import type { IconProps } from './types/icon.js'
|
|
8
|
+
|
|
9
|
+
import styles from './icons.module.css'
|
|
10
|
+
|
|
11
|
+
export const DeleteIcon = ({ className, svgClassName, ...rest }: IconProps): React.JSX.Element => {
|
|
12
|
+
const applied = cx(styles['fill-none'], styles['stroke-danger'], svgClassName)
|
|
13
|
+
|
|
14
|
+
return (
|
|
15
|
+
<IconElement className={cx('delete-icon', className)} {...rest}>
|
|
16
|
+
<svg
|
|
17
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
18
|
+
className={applied}
|
|
19
|
+
viewBox="0 0 24 24"
|
|
20
|
+
strokeLinecap="round"
|
|
21
|
+
strokeLinejoin="round"
|
|
22
|
+
focusable="false"
|
|
23
|
+
aria-hidden="true"
|
|
24
|
+
strokeWidth={1.5}
|
|
25
|
+
>
|
|
26
|
+
<path d="M4 7l16 0"></path> <path d="M10 11l0 6"></path> <path d="M14 11l0 6"></path>
|
|
27
|
+
<path d="M5 7l1 12a2 2 0 0 0 2 2h8a2 2 0 0 0 2 -2l1 -12"></path>
|
|
28
|
+
<path d="M9 7v-3a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v3"></path>
|
|
29
|
+
</svg>
|
|
30
|
+
</IconElement>
|
|
31
|
+
)
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
DeleteIcon.displayName = 'DeleteIcon'
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type React from 'react'
|
|
2
|
+
|
|
3
|
+
import cx from 'classnames'
|
|
4
|
+
|
|
5
|
+
import { IconElement } from './icon-element.js'
|
|
6
|
+
|
|
7
|
+
import type { IconProps } from './types/icon.js'
|
|
8
|
+
|
|
9
|
+
import styles from './icons.module.css'
|
|
10
|
+
|
|
11
|
+
export const DocumentIcon = ({
|
|
12
|
+
className,
|
|
13
|
+
svgClassName,
|
|
14
|
+
...rest
|
|
15
|
+
}: IconProps): React.JSX.Element => {
|
|
16
|
+
const applied = cx(styles['fill-none'], styles['stroke-contrast'], svgClassName)
|
|
17
|
+
|
|
18
|
+
return (
|
|
19
|
+
<IconElement className={cx('document-icon', className)} {...rest}>
|
|
20
|
+
<svg
|
|
21
|
+
className={applied}
|
|
22
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
23
|
+
focusable="false"
|
|
24
|
+
aria-hidden="true"
|
|
25
|
+
viewBox="0 0 24 24"
|
|
26
|
+
strokeWidth="1.5"
|
|
27
|
+
strokeLinecap="round"
|
|
28
|
+
strokeLinejoin="round"
|
|
29
|
+
>
|
|
30
|
+
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
|
|
31
|
+
<path d="M14 3v4a1 1 0 0 0 1 1h4" />
|
|
32
|
+
<path d="M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z" />
|
|
33
|
+
</svg>
|
|
34
|
+
</IconElement>
|
|
35
|
+
)
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
DocumentIcon.displayName = 'DocumentIcon'
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type React from 'react'
|
|
2
|
+
|
|
3
|
+
import cx from 'classnames'
|
|
4
|
+
|
|
5
|
+
import { IconElement } from './icon-element.js'
|
|
6
|
+
|
|
7
|
+
import type { IconProps } from './types/icon.js'
|
|
8
|
+
|
|
9
|
+
import styles from './icons.module.css'
|
|
10
|
+
|
|
11
|
+
export const DownloadIcon = ({
|
|
12
|
+
className,
|
|
13
|
+
svgClassName,
|
|
14
|
+
...rest
|
|
15
|
+
}: IconProps): React.JSX.Element => {
|
|
16
|
+
const applied = cx(styles['fill-contrast'], svgClassName)
|
|
17
|
+
|
|
18
|
+
return (
|
|
19
|
+
<IconElement className={cx('download-icon', className)} {...rest}>
|
|
20
|
+
<svg
|
|
21
|
+
className={applied}
|
|
22
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
23
|
+
focusable="false"
|
|
24
|
+
aria-hidden="true"
|
|
25
|
+
viewBox="0 0 15 15"
|
|
26
|
+
strokeWidth="0"
|
|
27
|
+
>
|
|
28
|
+
<path
|
|
29
|
+
d="M7.50005 1.04999C7.74858 1.04999 7.95005 1.25146 7.95005 1.49999V8.41359L10.1819 6.18179C10.3576 6.00605 10.6425 6.00605 10.8182 6.18179C10.994 6.35753 10.994 6.64245 10.8182 6.81819L7.81825 9.81819C7.64251 9.99392 7.35759 9.99392 7.18185 9.81819L4.18185 6.81819C4.00611 6.64245 4.00611 6.35753 4.18185 6.18179C4.35759 6.00605 4.64251 6.00605 4.81825 6.18179L7.05005 8.41359V1.49999C7.05005 1.25146 7.25152 1.04999 7.50005 1.04999ZM2.5 10C2.77614 10 3 10.2239 3 10.5V12C3 12.5539 3.44565 13 3.99635 13H11.0012C11.5529 13 12 12.5528 12 12V10.5C12 10.2239 12.2239 10 12.5 10C12.7761 10 13 10.2239 13 10.5V12C13 13.1041 12.1062 14 11.0012 14H3.99635C2.89019 14 2 13.103 2 12V10.5C2 10.2239 2.22386 10 2.5 10Z"
|
|
30
|
+
fill="currentColor"
|
|
31
|
+
fillRule="evenodd"
|
|
32
|
+
clipRule="evenodd"
|
|
33
|
+
></path>
|
|
34
|
+
</svg>
|
|
35
|
+
</IconElement>
|
|
36
|
+
)
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
DownloadIcon.displayName = 'DownloadIcon'
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type React from 'react'
|
|
2
|
+
|
|
3
|
+
import cx from 'classnames'
|
|
4
|
+
|
|
5
|
+
import { IconElement } from './icon-element.js'
|
|
6
|
+
|
|
7
|
+
import type { IconProps } from './types/icon.js'
|
|
8
|
+
|
|
9
|
+
import styles from './icons.module.css'
|
|
10
|
+
|
|
11
|
+
export const EditIcon = ({ className, svgClassName, ...rest }: IconProps): React.JSX.Element => {
|
|
12
|
+
const applied = cx(styles['fill-none'], styles['stroke-contrast'], svgClassName)
|
|
13
|
+
|
|
14
|
+
return (
|
|
15
|
+
<IconElement className={cx('edit-icon', className)} {...rest}>
|
|
16
|
+
<svg
|
|
17
|
+
className={applied}
|
|
18
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
19
|
+
focusable="false"
|
|
20
|
+
aria-hidden="true"
|
|
21
|
+
viewBox="0 0 24 24"
|
|
22
|
+
strokeLinecap="round"
|
|
23
|
+
strokeLinejoin="round"
|
|
24
|
+
strokeWidth={1.5}
|
|
25
|
+
>
|
|
26
|
+
<path stroke="none" d="M0 0h24v24H0z" fill="none" />
|
|
27
|
+
<path d="M7 7h-1a2 2 0 0 0 -2 2v9a2 2 0 0 0 2 2h9a2 2 0 0 0 2 -2v-1" />
|
|
28
|
+
<path d="M20.385 6.585a2.1 2.1 0 0 0 -2.97 -2.97l-8.415 8.385v3h3l8.385 -8.415z" />
|
|
29
|
+
<path d="M16 5l3 3" />
|
|
30
|
+
</svg>
|
|
31
|
+
</IconElement>
|
|
32
|
+
)
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
EditIcon.displayName = 'EditIcon'
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type React from 'react'
|
|
2
|
+
|
|
3
|
+
import cx from 'classnames'
|
|
4
|
+
|
|
5
|
+
import { IconElement } from './icon-element.js'
|
|
6
|
+
|
|
7
|
+
import type { IconProps } from './types/icon.js'
|
|
8
|
+
|
|
9
|
+
import styles from './icons.module.css'
|
|
10
|
+
|
|
11
|
+
export const EllipsisIcon = ({
|
|
12
|
+
className,
|
|
13
|
+
svgClassName,
|
|
14
|
+
...rest
|
|
15
|
+
}: IconProps): React.JSX.Element => {
|
|
16
|
+
const applied = cx(styles['fill-none'], styles['stroke-contrast'], svgClassName)
|
|
17
|
+
|
|
18
|
+
return (
|
|
19
|
+
<IconElement className={cx('ellipsis-icon', className)} {...rest}>
|
|
20
|
+
<svg
|
|
21
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
22
|
+
className={applied}
|
|
23
|
+
strokeLinecap="round"
|
|
24
|
+
strokeLinejoin="round"
|
|
25
|
+
focusable="false"
|
|
26
|
+
aria-hidden="true"
|
|
27
|
+
viewBox="0 0 24 24"
|
|
28
|
+
strokeWidth={2}
|
|
29
|
+
>
|
|
30
|
+
<circle cx="12" cy="12" r="1" />
|
|
31
|
+
<circle cx="19" cy="12" r="1" />
|
|
32
|
+
<circle cx="5" cy="12" r="1" />
|
|
33
|
+
</svg>
|
|
34
|
+
</IconElement>
|
|
35
|
+
)
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
EllipsisIcon.displayName = 'EllipsisIcon'
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type React from 'react'
|
|
2
|
+
|
|
3
|
+
import cx from 'classnames'
|
|
4
|
+
|
|
5
|
+
import { IconElement } from './icon-element.js'
|
|
6
|
+
|
|
7
|
+
import type { IconProps } from './types/icon.js'
|
|
8
|
+
|
|
9
|
+
import styles from './icons.module.css'
|
|
10
|
+
|
|
11
|
+
export const EmailIcon = ({ className, svgClassName, ...rest }: IconProps): React.JSX.Element => {
|
|
12
|
+
const applied = cx(styles['fill-none'], styles['stroke-contrast'], svgClassName)
|
|
13
|
+
|
|
14
|
+
return (
|
|
15
|
+
<IconElement className={cx('email-icon', className)} {...rest}>
|
|
16
|
+
<svg
|
|
17
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
18
|
+
className={applied}
|
|
19
|
+
viewBox="0 0 24 24"
|
|
20
|
+
strokeLinecap="round"
|
|
21
|
+
strokeLinejoin="round"
|
|
22
|
+
focusable="false"
|
|
23
|
+
aria-hidden="true"
|
|
24
|
+
strokeWidth={1.5}
|
|
25
|
+
>
|
|
26
|
+
<path d="M3 7a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v10a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-10z"></path>
|
|
27
|
+
<path d="M3 7l9 6l9 -6"></path>
|
|
28
|
+
</svg>
|
|
29
|
+
</IconElement>
|
|
30
|
+
)
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
EmailIcon.displayName = 'UserIcon'
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type React from 'react'
|
|
2
|
+
|
|
3
|
+
import cx from 'classnames'
|
|
4
|
+
|
|
5
|
+
import { IconElement } from './icon-element.js'
|
|
6
|
+
|
|
7
|
+
import type { IconProps } from './types/icon.js'
|
|
8
|
+
|
|
9
|
+
import styles from './icons.module.css'
|
|
10
|
+
|
|
11
|
+
export const ExternalLinkIcon = ({
|
|
12
|
+
className,
|
|
13
|
+
svgClassName,
|
|
14
|
+
...rest
|
|
15
|
+
}: IconProps): React.JSX.Element => {
|
|
16
|
+
const applied = cx(styles['fill-current'], svgClassName)
|
|
17
|
+
|
|
18
|
+
return (
|
|
19
|
+
<IconElement className={cx('external-link-icon', className)} {...rest}>
|
|
20
|
+
<svg
|
|
21
|
+
className={applied}
|
|
22
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
23
|
+
focusable="false"
|
|
24
|
+
aria-hidden="true"
|
|
25
|
+
viewBox="0 0 15 15"
|
|
26
|
+
strokeWidth="0"
|
|
27
|
+
>
|
|
28
|
+
<path
|
|
29
|
+
d="M3 2C2.44772 2 2 2.44772 2 3V12C2 12.5523 2.44772 13 3 13H12C12.5523 13 13 12.5523 13 12V8.5C13 8.22386 12.7761 8 12.5 8C12.2239 8 12 8.22386 12 8.5V12H3V3L6.5 3C6.77614 3 7 2.77614 7 2.5C7 2.22386 6.77614 2 6.5 2H3ZM12.8536 2.14645C12.9015 2.19439 12.9377 2.24964 12.9621 2.30861C12.9861 2.36669 12.9996 2.4303 13 2.497L13 2.5V2.50049V5.5C13 5.77614 12.7761 6 12.5 6C12.2239 6 12 5.77614 12 5.5V3.70711L6.85355 8.85355C6.65829 9.04882 6.34171 9.04882 6.14645 8.85355C5.95118 8.65829 5.95118 8.34171 6.14645 8.14645L11.2929 3H9.5C9.22386 3 9 2.77614 9 2.5C9 2.22386 9.22386 2 9.5 2H12.4999H12.5C12.5678 2 12.6324 2.01349 12.6914 2.03794C12.7504 2.06234 12.8056 2.09851 12.8536 2.14645Z"
|
|
30
|
+
fill="currentColor"
|
|
31
|
+
fillRule="evenodd"
|
|
32
|
+
clipRule="evenodd"
|
|
33
|
+
></path>
|
|
34
|
+
</svg>
|
|
35
|
+
</IconElement>
|
|
36
|
+
)
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
ExternalLinkIcon.displayName = 'ExternalLinkIcon'
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import cx from 'classnames'
|
|
2
|
+
import type React from 'react'
|
|
3
|
+
|
|
4
|
+
import { IconElement } from './icon-element.js'
|
|
5
|
+
import styles from './icons.module.css'
|
|
6
|
+
import type { IconProps } from './types/icon.js'
|
|
7
|
+
|
|
8
|
+
export const GithubIcon = ({ className, svgClassName, ...rest }: IconProps): React.JSX.Element => {
|
|
9
|
+
const applied = cx(styles['fill-contrast'], svgClassName)
|
|
10
|
+
|
|
11
|
+
return (
|
|
12
|
+
<IconElement className={cx('github-icon', className)} {...rest}>
|
|
13
|
+
<svg
|
|
14
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
15
|
+
viewBox="0 0 24 24"
|
|
16
|
+
className={applied}
|
|
17
|
+
focusable="false"
|
|
18
|
+
aria-hidden="true"
|
|
19
|
+
strokeWidth={1.75}
|
|
20
|
+
>
|
|
21
|
+
<path d="M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z" />
|
|
22
|
+
</svg>
|
|
23
|
+
</IconElement>
|
|
24
|
+
)
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
GithubIcon.displayName = 'GithubIcon'
|