@lobehub/icons 1.0.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/LICENSE +21 -0
- package/README.md +200 -0
- package/es/Editor/Preview.d.ts +9 -0
- package/es/Editor/Preview.js +93 -0
- package/es/Editor/data.d.ts +1 -0
- package/es/Editor/data.js +1 -0
- package/es/Editor/index.d.ts +2 -0
- package/es/Editor/index.js +67 -0
- package/es/Editor/svgo.d.ts +76 -0
- package/es/Editor/svgo.js +78 -0
- package/es/IconPreview/ColorPreview.d.ts +6 -0
- package/es/IconPreview/ColorPreview.js +41 -0
- package/es/IconPreview/index.d.ts +6 -0
- package/es/IconPreview/index.js +47 -0
- package/es/IconShowcase/index.d.ts +11 -0
- package/es/IconShowcase/index.js +91 -0
- package/es/Zhipu/components/Avatar.d.ts +4 -0
- package/es/Zhipu/components/Avatar.js +28 -0
- package/es/Zhipu/components/Color.d.ts +3 -0
- package/es/Zhipu/components/Color.js +38 -0
- package/es/Zhipu/components/Combine.d.ts +8 -0
- package/es/Zhipu/components/Combine.js +34 -0
- package/es/Zhipu/components/Mono.d.ts +3 -0
- package/es/Zhipu/components/Mono.js +36 -0
- package/es/Zhipu/components/Text.d.ts +3 -0
- package/es/Zhipu/components/Text.js +30 -0
- package/es/Zhipu/index.d.ts +6 -0
- package/es/Zhipu/index.js +6 -0
- package/es/Zhipu/style.d.ts +3 -0
- package/es/Zhipu/style.js +3 -0
- package/es/index.d.ts +4 -0
- package/es/index.js +5 -0
- package/es/types/index.d.ts +6 -0
- package/es/types/index.js +1 -0
- package/package.json +122 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2023 LobeHub
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
<a name="readme-top"></a>
|
|
2
|
+
|
|
3
|
+
<div align="center">
|
|
4
|
+
|
|
5
|
+
<img height="120" src="https://registry.npmmirror.com/@lobehub/assets-logo/1.0.0/files/assets/logo-3d.webp">
|
|
6
|
+
<img height="120" src="https://gw.alipayobjects.com/zos/kitchen/qJ3l3EPsdW/split.svg">
|
|
7
|
+
<img height="120" src="https://registry.npmmirror.com/fluentui-emoji/0.0.8/files/icons/modern/pretzel.svg">
|
|
8
|
+
|
|
9
|
+
<h1>Lobe Icons</h1>
|
|
10
|
+
|
|
11
|
+
Popular LLM model brand svg logo and icon collection
|
|
12
|
+
|
|
13
|
+
English ・ [Changelog](./CHANGELOG.md) · [Report Bug][github-issues-link] · [Request Feature][github-issues-link]
|
|
14
|
+
|
|
15
|
+
<!-- SHIELD GROUP -->
|
|
16
|
+
|
|
17
|
+
[![][npm-release-shield]][npm-release-link]
|
|
18
|
+
[![][vercel-shield]][vercel-link]
|
|
19
|
+
[![][discord-shield]][discord-link]
|
|
20
|
+
[![][npm-downloads-shield]][npm-downloads-link]
|
|
21
|
+
[![][github-releasedate-shield]][github-releasedate-link]
|
|
22
|
+
[![][github-action-test-shield]][github-action-test-link]
|
|
23
|
+
[![][github-action-release-shield]][github-action-release-link]<br/>
|
|
24
|
+
[![][github-contributors-shield]][github-contributors-link]
|
|
25
|
+
[![][github-forks-shield]][github-forks-link]
|
|
26
|
+
[![][github-stars-shield]][github-stars-link]
|
|
27
|
+
[![][github-issues-shield]][github-issues-link]
|
|
28
|
+
[![][github-license-shield]][github-license-link]
|
|
29
|
+
|
|
30
|
+

|
|
31
|
+
|
|
32
|
+
</div>
|
|
33
|
+
|
|
34
|
+
<details>
|
|
35
|
+
<summary><kbd>Table of contents</kbd></summary>
|
|
36
|
+
|
|
37
|
+
#### TOC
|
|
38
|
+
|
|
39
|
+
- [📦 Installation](#-installation)
|
|
40
|
+
- [Compile with NextJS](#compile-with-nextjs)
|
|
41
|
+
- [⌨️ Local Development](#️-local-development)
|
|
42
|
+
- [🤝 Contributing](#-contributing)
|
|
43
|
+
- [🩷 Sponsor](#-sponsor)
|
|
44
|
+
- [🔗 More Products](#-more-products)
|
|
45
|
+
|
|
46
|
+
####
|
|
47
|
+
|
|
48
|
+
</details>
|
|
49
|
+
|
|
50
|
+
## 📦 Installation
|
|
51
|
+
|
|
52
|
+
> \[!IMPORTANT]\
|
|
53
|
+
> This package is [ESM only](https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c).
|
|
54
|
+
|
|
55
|
+
To install Lobe UI, run the following command:
|
|
56
|
+
|
|
57
|
+
[![][bun-shield]][bun-link]
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
$ bun add @lobehub/icons
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
### Compile with NextJS
|
|
64
|
+
|
|
65
|
+
> \[!NOTE]\
|
|
66
|
+
> By work correct with nextjs ssr, add `transpilePackages: ['@lobehub/icons']` to `next.config.js`. For example:
|
|
67
|
+
|
|
68
|
+
```js
|
|
69
|
+
// next.config.js
|
|
70
|
+
const nextConfig = {
|
|
71
|
+
// ...other config
|
|
72
|
+
|
|
73
|
+
transpilePackages: ['@lobehub/icons'],
|
|
74
|
+
};
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
<div align="right">
|
|
78
|
+
|
|
79
|
+
[![][back-to-top]](#readme-top)
|
|
80
|
+
|
|
81
|
+
</div>
|
|
82
|
+
|
|
83
|
+
## ⌨️ Local Development
|
|
84
|
+
|
|
85
|
+
You can use Github Codespaces for online development:
|
|
86
|
+
|
|
87
|
+
[![][codespaces-shield]][codespaces-link]
|
|
88
|
+
|
|
89
|
+
Or clone it for local development:
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
$ git clone https://github.com/lobehub/lobe-icons.git
|
|
93
|
+
$ cd lobe-icons
|
|
94
|
+
$ bun install
|
|
95
|
+
$ bun start
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
<div align="right">
|
|
99
|
+
|
|
100
|
+
[![][back-to-top]](#readme-top)
|
|
101
|
+
|
|
102
|
+
</div>
|
|
103
|
+
|
|
104
|
+
## 🤝 Contributing
|
|
105
|
+
|
|
106
|
+
Contributions of all types are more than welcome, if you are interested in contributing code, feel free to check out our GitHub [Issues][github-issues-link] to get stuck in to show us what you’re made of.
|
|
107
|
+
|
|
108
|
+
[![][pr-welcome-shield]][pr-welcome-link]
|
|
109
|
+
|
|
110
|
+
[![][contributors-contrib]][contributors-link]
|
|
111
|
+
|
|
112
|
+
<div align="right">
|
|
113
|
+
|
|
114
|
+
[![][back-to-top]](#readme-top)
|
|
115
|
+
|
|
116
|
+
</div>
|
|
117
|
+
|
|
118
|
+
## 🩷 Sponsor
|
|
119
|
+
|
|
120
|
+
Every bit counts and your one-time donation sparkles in our galaxy of support! You're a shooting star, making a swift and bright impact on our journey. Thank you for believing in us – your generosity guides us toward our mission, one brilliant flash at a time.
|
|
121
|
+
|
|
122
|
+
<a href="https://opencollective.com/lobehub" target="_blank">
|
|
123
|
+
<picture>
|
|
124
|
+
<source media="(prefers-color-scheme: dark)" srcset="https://github.com/lobehub/.github/blob/main/static/sponsor-dark.png?raw=true">
|
|
125
|
+
<img src="https://github.com/lobehub/.github/blob/main/static/sponsor-light.png?raw=true">
|
|
126
|
+
</picture>
|
|
127
|
+
</a>
|
|
128
|
+
|
|
129
|
+
<div align="right">
|
|
130
|
+
|
|
131
|
+
[![][back-to-top]](#readme-top)
|
|
132
|
+
|
|
133
|
+
</div>
|
|
134
|
+
|
|
135
|
+
## 🔗 More Products
|
|
136
|
+
|
|
137
|
+
- **[🤖 Lobe Chat][lobe-chat] :** An open-source, extensible (Function Calling), high-performance chatbot framework. It supports one-click free deployment of your private ChatGPT/LLM web application.
|
|
138
|
+
- **[🤯 Lobe Theme][lobe-theme] :** The modern theme for stable diffusion webui, exquisite interface design, highly customizable UI, and efficiency boosting features.
|
|
139
|
+
- **[🌏 Lobe i18n][lobe-i18n] :** Lobe i18n is an automation tool for the i18n (internationalization) translation process, powered by ChatGPT. It supports features such as automatic splitting of large files, incremental updates, and customization options for the OpenAI model, API proxy, and temperature.
|
|
140
|
+
- **[💌 Lobe Commit][lobe-commit] :** Lobe Commit is a CLI tool that leverages Langchain/ChatGPT to generate Gitmoji-based commit messages.
|
|
141
|
+
|
|
142
|
+
<div align="right">
|
|
143
|
+
|
|
144
|
+
[![][back-to-top]](#readme-top)
|
|
145
|
+
|
|
146
|
+
</div>
|
|
147
|
+
|
|
148
|
+
---
|
|
149
|
+
|
|
150
|
+
<details><summary><h4>📝 License</h4></summary>
|
|
151
|
+
|
|
152
|
+
[![][fossa-license-shield]][fossa-license-link]
|
|
153
|
+
|
|
154
|
+
</details>
|
|
155
|
+
|
|
156
|
+
Copyright © 2023 [LobeHub][profile-link]. <br />
|
|
157
|
+
This project is [MIT](./LICENSE) licensed.
|
|
158
|
+
|
|
159
|
+
<!-- LINK GROUP -->
|
|
160
|
+
|
|
161
|
+
[back-to-top]: https://img.shields.io/badge/-BACK_TO_TOP-151515?style=flat-square
|
|
162
|
+
[bun-link]: https://bun.sh
|
|
163
|
+
[bun-shield]: https://img.shields.io/badge/-speedup%20with%20bun-black?logo=bun&style=for-the-badge
|
|
164
|
+
[codespaces-link]: https://codespaces.new/lobehub/lobe-icons
|
|
165
|
+
[codespaces-shield]: https://github.com/codespaces/badge.svg
|
|
166
|
+
[contributors-contrib]: https://contrib.rocks/image?repo=lobehub/lobe-icons
|
|
167
|
+
[contributors-link]: https://github.com/lobehub/lobe-icons/graphs/contributors
|
|
168
|
+
[discord-link]: https://discord.gg/AYFPHvv2jT
|
|
169
|
+
[discord-shield]: https://img.shields.io/discord/1127171173982154893?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=flat-square
|
|
170
|
+
[fossa-license-link]: https://app.fossa.com/projects/git%2Bgithub.com%2Flobehub%2Flobe-icons
|
|
171
|
+
[fossa-license-shield]: https://app.fossa.com/api/projects/git%2Bgithub.com%2Flobehub%2Flobe-icons.svg?type=large
|
|
172
|
+
[github-action-release-link]: https://github.com/actions/workflows/lobehub/lobe-icons/release.yml
|
|
173
|
+
[github-action-release-shield]: https://img.shields.io/github/actions/workflow/status/lobehub/lobe-icons/release.yml?label=release&labelColor=black&logo=githubactions&logoColor=white&style=flat-square
|
|
174
|
+
[github-action-test-link]: https://github.com/actions/workflows/lobehub/lobe-icons/test.yml
|
|
175
|
+
[github-action-test-shield]: https://img.shields.io/github/actions/workflow/status/lobehub/lobe-icons/test.yml?label=test&labelColor=black&logo=githubactions&logoColor=white&style=flat-square
|
|
176
|
+
[github-contributors-link]: https://github.com/lobehub/lobe-icons/graphs/contributors
|
|
177
|
+
[github-contributors-shield]: https://img.shields.io/github/contributors/lobehub/lobe-icons?color=c4f042&labelColor=black&style=flat-square
|
|
178
|
+
[github-forks-link]: https://github.com/lobehub/lobe-icons/network/members
|
|
179
|
+
[github-forks-shield]: https://img.shields.io/github/forks/lobehub/lobe-icons?color=8ae8ff&labelColor=black&style=flat-square
|
|
180
|
+
[github-issues-link]: https://github.com/lobehub/lobe-icons/issues
|
|
181
|
+
[github-issues-shield]: https://img.shields.io/github/issues/lobehub/lobe-icons?color=ff80eb&labelColor=black&style=flat-square
|
|
182
|
+
[github-license-link]: https://github.com/lobehub/lobe-icons/blob/master/LICENSE
|
|
183
|
+
[github-license-shield]: https://img.shields.io/github/license/lobehub/lobe-icons?color=white&labelColor=black&style=flat-square
|
|
184
|
+
[github-releasedate-link]: https://github.com/lobehub/lobe-icons/releases
|
|
185
|
+
[github-releasedate-shield]: https://img.shields.io/github/release-date/lobehub/lobe-icons?labelColor=black&style=flat-square
|
|
186
|
+
[github-stars-link]: https://github.com/lobehub/lobe-icons/network/stargazers
|
|
187
|
+
[github-stars-shield]: https://img.shields.io/github/stars/lobehub/lobe-icons?color=ffcb47&labelColor=black&style=flat-square
|
|
188
|
+
[lobe-chat]: https://github.com/lobehub/lobe-chat
|
|
189
|
+
[lobe-commit]: https://github.com/lobehub/lobe-commit/tree/master/packages/lobe-commit
|
|
190
|
+
[lobe-i18n]: https://github.com/lobehub/lobe-commit/tree/master/packages/lobe-i18n
|
|
191
|
+
[lobe-theme]: https://github.com/lobehub/sd-webui-lobe-theme
|
|
192
|
+
[npm-downloads-link]: https://www.npmjs.com/package/@lobehub/icons
|
|
193
|
+
[npm-downloads-shield]: https://img.shields.io/npm/dt/@lobehub/icons?labelColor=black&style=flat-square
|
|
194
|
+
[npm-release-link]: https://www.npmjs.com/package/@lobehub/icons
|
|
195
|
+
[npm-release-shield]: https://img.shields.io/npm/v/@lobehub/icons?color=369eff&labelColor=black&logo=npm&logoColor=white&style=flat-square
|
|
196
|
+
[pr-welcome-link]: https://github.com/lobehub/lobe-chat/pulls
|
|
197
|
+
[pr-welcome-shield]: https://img.shields.io/badge/🤯_pr_welcome-%E2%86%92-ffcb47?labelColor=black&style=for-the-badge
|
|
198
|
+
[profile-link]: https://github.com/lobehub
|
|
199
|
+
[vercel-link]: https://ui.lobehub.com
|
|
200
|
+
[vercel-shield]: https://img.shields.io/website?down_message=offline&label=vercel&labelColor=black&logo=vercel&style=flat-square&up_message=online&url=https%3A%2F%2Fui.lobehub.com
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { type SvgoConfig } from './svgo';
|
|
3
|
+
interface PreviewProps {
|
|
4
|
+
config?: SvgoConfig;
|
|
5
|
+
svg: string;
|
|
6
|
+
title: string;
|
|
7
|
+
}
|
|
8
|
+
declare const Preview: import("react").NamedExoticComponent<PreviewProps>;
|
|
9
|
+
export default Preview;
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
|
|
2
|
+
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
3
|
+
import _taggedTemplateLiteral from "@babel/runtime/helpers/esm/taggedTemplateLiteral";
|
|
4
|
+
var _templateObject;
|
|
5
|
+
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
6
|
+
import { Highlighter, Tag } from '@lobehub/ui';
|
|
7
|
+
import { createStyles } from 'antd-style';
|
|
8
|
+
import { memo, useCallback, useEffect, useState } from 'react';
|
|
9
|
+
import { Flexbox } from 'react-layout-kit';
|
|
10
|
+
import { IconPreview } from "./..";
|
|
11
|
+
import SvgoClient from "./svgo";
|
|
12
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
13
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
14
|
+
var useStyles = createStyles(function (_ref) {
|
|
15
|
+
var css = _ref.css;
|
|
16
|
+
return {
|
|
17
|
+
code: css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n height: 96px;\n\n pre {\n padding: 8px !important;\n }\n\n code {\n font-size: 12px;\n text-wrap: initial;\n }\n "])))
|
|
18
|
+
};
|
|
19
|
+
});
|
|
20
|
+
var Preview = /*#__PURE__*/memo(function (_ref2) {
|
|
21
|
+
var svg = _ref2.svg,
|
|
22
|
+
config = _ref2.config,
|
|
23
|
+
title = _ref2.title;
|
|
24
|
+
var _useState = useState(),
|
|
25
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
26
|
+
newSvgIcon = _useState2[0],
|
|
27
|
+
setNewSvgIcon = _useState2[1];
|
|
28
|
+
var _useStyles = useStyles(),
|
|
29
|
+
styles = _useStyles.styles;
|
|
30
|
+
var newSvg = useCallback( /*#__PURE__*/function () {
|
|
31
|
+
var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(svgoInstance) {
|
|
32
|
+
var data;
|
|
33
|
+
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
34
|
+
while (1) switch (_context.prev = _context.next) {
|
|
35
|
+
case 0:
|
|
36
|
+
_context.next = 2;
|
|
37
|
+
return svgoInstance.optimize(svg);
|
|
38
|
+
case 2:
|
|
39
|
+
data = _context.sent;
|
|
40
|
+
setNewSvgIcon(data);
|
|
41
|
+
case 4:
|
|
42
|
+
case "end":
|
|
43
|
+
return _context.stop();
|
|
44
|
+
}
|
|
45
|
+
}, _callee);
|
|
46
|
+
}));
|
|
47
|
+
return function (_x) {
|
|
48
|
+
return _ref3.apply(this, arguments);
|
|
49
|
+
};
|
|
50
|
+
}(), [svg]);
|
|
51
|
+
useEffect(function () {
|
|
52
|
+
if (config) {
|
|
53
|
+
var svgoInstance = new SvgoClient(config);
|
|
54
|
+
newSvg(svgoInstance);
|
|
55
|
+
} else {
|
|
56
|
+
setNewSvgIcon(svg);
|
|
57
|
+
}
|
|
58
|
+
}, [config, svg]);
|
|
59
|
+
return /*#__PURE__*/_jsxs(Flexbox, {
|
|
60
|
+
flex: 1,
|
|
61
|
+
gap: 16,
|
|
62
|
+
style: {
|
|
63
|
+
position: 'relative',
|
|
64
|
+
width: '100%'
|
|
65
|
+
},
|
|
66
|
+
children: [/*#__PURE__*/_jsxs(Flexbox, {
|
|
67
|
+
align: 'center',
|
|
68
|
+
gap: 8,
|
|
69
|
+
horizontal: true,
|
|
70
|
+
children: [/*#__PURE__*/_jsx("h2", {
|
|
71
|
+
style: {
|
|
72
|
+
lineHeight: 1,
|
|
73
|
+
margin: 0
|
|
74
|
+
},
|
|
75
|
+
children: title
|
|
76
|
+
}), config && newSvgIcon && /*#__PURE__*/_jsxs(Tag, {
|
|
77
|
+
children: [-Math.floor((1 - newSvgIcon.length / svg.length) * 100), "%"]
|
|
78
|
+
})]
|
|
79
|
+
}), /*#__PURE__*/_jsxs(Flexbox, {
|
|
80
|
+
gap: 8,
|
|
81
|
+
horizontal: true,
|
|
82
|
+
children: [/*#__PURE__*/_jsx(IconPreview, {
|
|
83
|
+
children: newSvgIcon
|
|
84
|
+
}), /*#__PURE__*/_jsx(Highlighter, {
|
|
85
|
+
className: styles.code,
|
|
86
|
+
language: 'html',
|
|
87
|
+
type: 'ghost',
|
|
88
|
+
children: newSvgIcon || ''
|
|
89
|
+
})]
|
|
90
|
+
})]
|
|
91
|
+
});
|
|
92
|
+
});
|
|
93
|
+
export default Preview;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const svgIcon = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>zhipu</title>\n <g id=\"zhipu\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group\" transform=\"translate(1, 2)\">\n <path d=\"M5.07527149,8.49366103 C6.59949232,7.44550712 8.76827725,6.75878559 11.2217793,6.75878559 C13.6752814,6.75878559 15.8443435,7.44550712 17.3685644,8.49366103 C18.1395462,9.02468861 18.7209014,9.62744662 19.1081944,10.2641237 C19,8 19,8 19.6878862,7.36154359 C19.3708794,7.07225578 19.0342518,6.80536049 18.6804256,6.56277802 C16.7223369,5.21463523 14.0819805,4.41920596 11.2234427,4.41920596 C8.36462764,4.41920596 5.7242713,5.21463523 3.76645982,6.56277802 C1.81142067,7.90758452 0.440786295,9.88461966 0.440786295,12.210298 C0.440786295,14.5362544 1.81142067,16.5130116 3.76341027,17.8564279 C5.72149898,19.2045707 8.36157809,20 11.2203931,20 C14.078931,20 16.7206735,19.2045707 18.677376,17.8564279 C20.6290884,16.5130116 22,14.5376446 22,12.210298 C22,10.7306495 21.4455363,9.39334964 20.5403742,8.27040703 C20.4937992,9.30632785 20.1306255,10.300823 19.5284779,11.2066281 C19.6266824,11.5321048 19.6768389,11.8702477 19.6773514,12.210298 C19.6773514,13.5400912 18.8955575,14.8743327 17.3652376,15.9269351 C15.841294,16.975089 13.672509,17.6620885 11.219007,17.6620885 C8.76550493,17.6620885 6.59644277,16.975367 5.07222194,15.9272131 C3.5435654,14.8743327 2.76010813,13.5400912 2.76010813,12.210298 C2.76315768,10.8807829 3.54495156,9.54654137 5.07527149,8.49366103 Z\" id=\"Path\" fill=\"#3762FF\"></path>\n <path d=\"M2.74652377,9.49427269 C2.127465,11.2630672 2.2735662,12.8589302 3.07920201,14.0038367 C3.88511506,15.1481873 5.33254266,15.8165592 7.19554084,15.8165592 C9.0557667,15.8165592 11.2245516,15.1373443 13.2170171,13.7174711 C15.210037,12.2975979 16.567087,10.4659698 17.1844824,8.70023354 C17.8035412,6.93143906 17.65744,5.33557607 16.8518041,4.19094751 C16.0458911,3.04659698 14.5984635,2.37794706 12.7351881,2.37794706 C10.8749622,2.37794706 8.70645454,3.05716192 6.71371185,4.47703514 C4.72096916,5.89718639 3.36391915,7.72853648 2.74652377,9.49427269 Z M0.518965682,8.70468194 C1.3185024,6.42348754 3.00573557,4.20623888 5.34917658,2.53697731 C7.69123143,0.866047598 10.3299244,0 12.7335247,0 C15.1343527,0 17.4115353,0.873832295 18.7791201,2.8169484 C20.1453188,4.76034253 20.210191,7.21141014 19.4117632,9.49121441 C18.6119493,11.7726868 16.9249934,13.9896575 14.5815524,15.6591971 C12.2381113,17.3284586 9.60080455,18.1947843 7.19526361,18.1961744 C4.7944356,18.1961744 2.51725301,17.3223421 1.14966819,15.379226 C-0.217916632,13.4358319 -0.281125498,10.9830961 0.517025059,8.70495996 L0.51868845,8.70495996 L0.518965682,8.70468194 Z\" id=\"Shape\" fill=\"#1041F3\"></path>\n </g>\n </g>\n</svg>";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export var svgIcon = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg width=\"24px\" height=\"24px\" viewBox=\"0 0 24 24\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <title>zhipu</title>\n <g id=\"zhipu\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"Group\" transform=\"translate(1, 2)\">\n <path d=\"M5.07527149,8.49366103 C6.59949232,7.44550712 8.76827725,6.75878559 11.2217793,6.75878559 C13.6752814,6.75878559 15.8443435,7.44550712 17.3685644,8.49366103 C18.1395462,9.02468861 18.7209014,9.62744662 19.1081944,10.2641237 C19,8 19,8 19.6878862,7.36154359 C19.3708794,7.07225578 19.0342518,6.80536049 18.6804256,6.56277802 C16.7223369,5.21463523 14.0819805,4.41920596 11.2234427,4.41920596 C8.36462764,4.41920596 5.7242713,5.21463523 3.76645982,6.56277802 C1.81142067,7.90758452 0.440786295,9.88461966 0.440786295,12.210298 C0.440786295,14.5362544 1.81142067,16.5130116 3.76341027,17.8564279 C5.72149898,19.2045707 8.36157809,20 11.2203931,20 C14.078931,20 16.7206735,19.2045707 18.677376,17.8564279 C20.6290884,16.5130116 22,14.5376446 22,12.210298 C22,10.7306495 21.4455363,9.39334964 20.5403742,8.27040703 C20.4937992,9.30632785 20.1306255,10.300823 19.5284779,11.2066281 C19.6266824,11.5321048 19.6768389,11.8702477 19.6773514,12.210298 C19.6773514,13.5400912 18.8955575,14.8743327 17.3652376,15.9269351 C15.841294,16.975089 13.672509,17.6620885 11.219007,17.6620885 C8.76550493,17.6620885 6.59644277,16.975367 5.07222194,15.9272131 C3.5435654,14.8743327 2.76010813,13.5400912 2.76010813,12.210298 C2.76315768,10.8807829 3.54495156,9.54654137 5.07527149,8.49366103 Z\" id=\"Path\" fill=\"#3762FF\"></path>\n <path d=\"M2.74652377,9.49427269 C2.127465,11.2630672 2.2735662,12.8589302 3.07920201,14.0038367 C3.88511506,15.1481873 5.33254266,15.8165592 7.19554084,15.8165592 C9.0557667,15.8165592 11.2245516,15.1373443 13.2170171,13.7174711 C15.210037,12.2975979 16.567087,10.4659698 17.1844824,8.70023354 C17.8035412,6.93143906 17.65744,5.33557607 16.8518041,4.19094751 C16.0458911,3.04659698 14.5984635,2.37794706 12.7351881,2.37794706 C10.8749622,2.37794706 8.70645454,3.05716192 6.71371185,4.47703514 C4.72096916,5.89718639 3.36391915,7.72853648 2.74652377,9.49427269 Z M0.518965682,8.70468194 C1.3185024,6.42348754 3.00573557,4.20623888 5.34917658,2.53697731 C7.69123143,0.866047598 10.3299244,0 12.7335247,0 C15.1343527,0 17.4115353,0.873832295 18.7791201,2.8169484 C20.1453188,4.76034253 20.210191,7.21141014 19.4117632,9.49121441 C18.6119493,11.7726868 16.9249934,13.9896575 14.5815524,15.6591971 C12.2381113,17.3284586 9.60080455,18.1947843 7.19526361,18.1961744 C4.7944356,18.1961744 2.51725301,17.3223421 1.14966819,15.379226 C-0.217916632,13.4358319 -0.281125498,10.9830961 0.517025059,8.70495996 L0.51868845,8.70495996 L0.518965682,8.70468194 Z\" id=\"Shape\" fill=\"#1041F3\"></path>\n </g>\n </g>\n</svg>";
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
2
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
3
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
4
|
+
import { StoryBook, useControls, useCreateStore } from '@lobehub/ui';
|
|
5
|
+
import { Flexbox } from 'react-layout-kit';
|
|
6
|
+
import Preview from "./Preview";
|
|
7
|
+
import { svgIcon } from "./data";
|
|
8
|
+
import { defaultPlugins } from "./svgo";
|
|
9
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
10
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
11
|
+
export default (function () {
|
|
12
|
+
var levaStore = useCreateStore();
|
|
13
|
+
var _useControls = useControls({
|
|
14
|
+
svg: {
|
|
15
|
+
rows: true,
|
|
16
|
+
value: svgIcon
|
|
17
|
+
}
|
|
18
|
+
}, {
|
|
19
|
+
store: levaStore
|
|
20
|
+
}),
|
|
21
|
+
svg = _useControls.svg;
|
|
22
|
+
var config = useControls('Config', defaultPlugins, {
|
|
23
|
+
collapsed: true
|
|
24
|
+
}, {
|
|
25
|
+
store: levaStore
|
|
26
|
+
});
|
|
27
|
+
var removeColor = {
|
|
28
|
+
addAttributesToSVGElement: {
|
|
29
|
+
attribute: {
|
|
30
|
+
'fill': 'currentColor',
|
|
31
|
+
'fill-rule': 'evenodd'
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
collapseGroups: true,
|
|
35
|
+
removeAttrs: {
|
|
36
|
+
attrs: ['fill', 'color', 'stroke', 'stroke-width', 'fill-rule']
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
return /*#__PURE__*/_jsx(StoryBook, {
|
|
40
|
+
levaStore: levaStore,
|
|
41
|
+
style: {
|
|
42
|
+
position: 'relative'
|
|
43
|
+
},
|
|
44
|
+
children: /*#__PURE__*/_jsxs(Flexbox, {
|
|
45
|
+
gap: 32,
|
|
46
|
+
style: {
|
|
47
|
+
flexWrap: 'wrap',
|
|
48
|
+
height: '100%',
|
|
49
|
+
overflow: 'hidden',
|
|
50
|
+
position: 'relative',
|
|
51
|
+
width: '100%'
|
|
52
|
+
},
|
|
53
|
+
children: [/*#__PURE__*/_jsx(Preview, {
|
|
54
|
+
svg: svg,
|
|
55
|
+
title: 'Original'
|
|
56
|
+
}), /*#__PURE__*/_jsx(Preview, {
|
|
57
|
+
config: config,
|
|
58
|
+
svg: svg,
|
|
59
|
+
title: 'Compression'
|
|
60
|
+
}), /*#__PURE__*/_jsx(Preview, {
|
|
61
|
+
config: _objectSpread(_objectSpread({}, config), removeColor),
|
|
62
|
+
svg: svg,
|
|
63
|
+
title: 'Monochrome'
|
|
64
|
+
})]
|
|
65
|
+
})
|
|
66
|
+
});
|
|
67
|
+
});
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
export interface SvgoConfig {
|
|
2
|
+
addAttributesToSVGElement?: any;
|
|
3
|
+
cleanupAttrs?: any;
|
|
4
|
+
cleanupEnableBackground?: any;
|
|
5
|
+
cleanupIDs?: any;
|
|
6
|
+
cleanupNumericValues?: any;
|
|
7
|
+
collapseGroups?: any;
|
|
8
|
+
convertColors?: any;
|
|
9
|
+
convertPathData?: any;
|
|
10
|
+
convertShapeToPath?: any;
|
|
11
|
+
convertStyleToAttrs?: any;
|
|
12
|
+
convertTransform?: any;
|
|
13
|
+
mergePaths?: any;
|
|
14
|
+
moveElemsAttrsToGroup?: any;
|
|
15
|
+
moveGroupAttrsToElems?: any;
|
|
16
|
+
removeAttrs?: any;
|
|
17
|
+
removeComments?: any;
|
|
18
|
+
removeDesc?: any;
|
|
19
|
+
removeDimensions?: any;
|
|
20
|
+
removeDoctype?: any;
|
|
21
|
+
removeEditorsNSData?: any;
|
|
22
|
+
removeEmptyAttrs?: any;
|
|
23
|
+
removeEmptyContainers?: any;
|
|
24
|
+
removeEmptyText?: any;
|
|
25
|
+
removeHiddenElems?: any;
|
|
26
|
+
removeMetadata?: any;
|
|
27
|
+
removeNonInheritableGroupAttrs?: any;
|
|
28
|
+
removeRasterImages?: any;
|
|
29
|
+
removeTitle?: any;
|
|
30
|
+
removeUnknownsAndDefaults?: any;
|
|
31
|
+
removeUnusedNS?: any;
|
|
32
|
+
removeUselessDefs?: any;
|
|
33
|
+
removeUselessStrokeAndFill?: any;
|
|
34
|
+
removeViewBox?: any;
|
|
35
|
+
removeXMLProcInst?: any;
|
|
36
|
+
sortAttrs?: any;
|
|
37
|
+
}
|
|
38
|
+
export declare const defaultPlugins: {
|
|
39
|
+
cleanupAttrs: boolean;
|
|
40
|
+
cleanupEnableBackground: boolean;
|
|
41
|
+
cleanupIDs: boolean;
|
|
42
|
+
cleanupNumericValues: boolean;
|
|
43
|
+
collapseGroups: boolean;
|
|
44
|
+
convertColors: boolean;
|
|
45
|
+
convertPathData: boolean;
|
|
46
|
+
convertShapeToPath: boolean;
|
|
47
|
+
convertStyleToAttrs: boolean;
|
|
48
|
+
convertTransform: boolean;
|
|
49
|
+
mergePaths: boolean;
|
|
50
|
+
moveGroupAttrsToElems: boolean;
|
|
51
|
+
removeComments: boolean;
|
|
52
|
+
removeDesc: boolean;
|
|
53
|
+
removeDimensions: boolean;
|
|
54
|
+
removeDoctype: boolean;
|
|
55
|
+
removeEditorsNSData: boolean;
|
|
56
|
+
removeEmptyAttrs: boolean;
|
|
57
|
+
removeEmptyContainers: boolean;
|
|
58
|
+
removeEmptyText: boolean;
|
|
59
|
+
removeHiddenElems: boolean;
|
|
60
|
+
removeMetadata: boolean;
|
|
61
|
+
removeNonInheritableGroupAttrs: boolean;
|
|
62
|
+
removeRasterImages: boolean;
|
|
63
|
+
removeTitle: boolean;
|
|
64
|
+
removeUnknownsAndDefaults: boolean;
|
|
65
|
+
removeUnusedNS: boolean;
|
|
66
|
+
removeUselessDefs: boolean;
|
|
67
|
+
removeUselessStrokeAndFill: boolean;
|
|
68
|
+
removeViewBox: boolean;
|
|
69
|
+
removeXMLProcInst: boolean;
|
|
70
|
+
sortAttrs: boolean;
|
|
71
|
+
};
|
|
72
|
+
export default class SVGO {
|
|
73
|
+
app: any;
|
|
74
|
+
constructor(config?: SvgoConfig);
|
|
75
|
+
optimize(svgData: string): Promise<any>;
|
|
76
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
|
|
2
|
+
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
3
|
+
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
4
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
5
|
+
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
6
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
7
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
8
|
+
// @ts-ignore
|
|
9
|
+
import getSvgoInstance from 'svgo-browser/lib/get-svgo-instance';
|
|
10
|
+
export var defaultPlugins = {
|
|
11
|
+
cleanupAttrs: true,
|
|
12
|
+
cleanupEnableBackground: true,
|
|
13
|
+
cleanupIDs: true,
|
|
14
|
+
cleanupNumericValues: true,
|
|
15
|
+
collapseGroups: true,
|
|
16
|
+
convertColors: true,
|
|
17
|
+
convertPathData: true,
|
|
18
|
+
convertShapeToPath: true,
|
|
19
|
+
convertStyleToAttrs: true,
|
|
20
|
+
convertTransform: true,
|
|
21
|
+
mergePaths: true,
|
|
22
|
+
moveGroupAttrsToElems: true,
|
|
23
|
+
removeComments: true,
|
|
24
|
+
removeDesc: true,
|
|
25
|
+
removeDimensions: true,
|
|
26
|
+
removeDoctype: true,
|
|
27
|
+
removeEditorsNSData: true,
|
|
28
|
+
removeEmptyAttrs: true,
|
|
29
|
+
removeEmptyContainers: true,
|
|
30
|
+
removeEmptyText: true,
|
|
31
|
+
removeHiddenElems: true,
|
|
32
|
+
removeMetadata: true,
|
|
33
|
+
removeNonInheritableGroupAttrs: true,
|
|
34
|
+
removeRasterImages: false,
|
|
35
|
+
removeTitle: true,
|
|
36
|
+
removeUnknownsAndDefaults: true,
|
|
37
|
+
removeUnusedNS: true,
|
|
38
|
+
removeUselessDefs: true,
|
|
39
|
+
removeUselessStrokeAndFill: true,
|
|
40
|
+
removeViewBox: false,
|
|
41
|
+
removeXMLProcInst: true,
|
|
42
|
+
sortAttrs: true
|
|
43
|
+
};
|
|
44
|
+
var SVGO = /*#__PURE__*/function () {
|
|
45
|
+
function SVGO(config) {
|
|
46
|
+
_classCallCheck(this, SVGO);
|
|
47
|
+
_defineProperty(this, "app", void 0);
|
|
48
|
+
this.app = getSvgoInstance(_objectSpread(_objectSpread({}, defaultPlugins), config));
|
|
49
|
+
}
|
|
50
|
+
_createClass(SVGO, [{
|
|
51
|
+
key: "optimize",
|
|
52
|
+
value: function () {
|
|
53
|
+
var _optimize = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(svgData) {
|
|
54
|
+
var _yield$this$app$optim, data;
|
|
55
|
+
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
56
|
+
while (1) switch (_context.prev = _context.next) {
|
|
57
|
+
case 0:
|
|
58
|
+
_context.next = 2;
|
|
59
|
+
return this.app.optimize(svgData);
|
|
60
|
+
case 2:
|
|
61
|
+
_yield$this$app$optim = _context.sent;
|
|
62
|
+
data = _yield$this$app$optim.data;
|
|
63
|
+
return _context.abrupt("return", data);
|
|
64
|
+
case 5:
|
|
65
|
+
case "end":
|
|
66
|
+
return _context.stop();
|
|
67
|
+
}
|
|
68
|
+
}, _callee, this);
|
|
69
|
+
}));
|
|
70
|
+
function optimize(_x) {
|
|
71
|
+
return _optimize.apply(this, arguments);
|
|
72
|
+
}
|
|
73
|
+
return optimize;
|
|
74
|
+
}()
|
|
75
|
+
}]);
|
|
76
|
+
return SVGO;
|
|
77
|
+
}();
|
|
78
|
+
export { SVGO as default };
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import _taggedTemplateLiteral from "@babel/runtime/helpers/esm/taggedTemplateLiteral";
|
|
2
|
+
var _templateObject, _templateObject2;
|
|
3
|
+
import { CopyButton } from '@lobehub/ui';
|
|
4
|
+
import { createStyles } from 'antd-style';
|
|
5
|
+
import { readableColor } from 'polished';
|
|
6
|
+
import { memo } from 'react';
|
|
7
|
+
import { Flexbox } from 'react-layout-kit';
|
|
8
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
9
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
10
|
+
var useStyles = createStyles(function (_ref) {
|
|
11
|
+
var css = _ref.css,
|
|
12
|
+
token = _ref.token,
|
|
13
|
+
cx = _ref.cx;
|
|
14
|
+
return {
|
|
15
|
+
btn: cx('copy-button', css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n position: absolute;\n top: 4px;\n right: 4px;\n opacity: 0;\n "])))),
|
|
16
|
+
container: css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n position: relative;\n\n flex: none;\n\n width: 98px;\n height: 98px;\n\n font-family: ", ";\n line-height: 1;\n\n background: ", ";\n border: 1px solid ", ";\n border-radius: ", "px;\n\n &:hover {\n .copy-button {\n opacity: 1;\n }\n }\n "])), token.fontFamilyCode, token.colorBgContainer, token.colorBorder, token.borderRadius)
|
|
17
|
+
};
|
|
18
|
+
});
|
|
19
|
+
var IconPreview = /*#__PURE__*/memo(function (_ref2) {
|
|
20
|
+
var color = _ref2.color;
|
|
21
|
+
var _useStyles = useStyles(),
|
|
22
|
+
styles = _useStyles.styles;
|
|
23
|
+
return /*#__PURE__*/_jsxs(Flexbox, {
|
|
24
|
+
align: 'center',
|
|
25
|
+
className: styles.container,
|
|
26
|
+
justify: 'center',
|
|
27
|
+
style: {
|
|
28
|
+
background: color
|
|
29
|
+
},
|
|
30
|
+
children: [/*#__PURE__*/_jsx("div", {
|
|
31
|
+
style: {
|
|
32
|
+
color: readableColor(color)
|
|
33
|
+
},
|
|
34
|
+
children: color
|
|
35
|
+
}), /*#__PURE__*/_jsx(CopyButton, {
|
|
36
|
+
className: styles.btn,
|
|
37
|
+
content: color
|
|
38
|
+
})]
|
|
39
|
+
});
|
|
40
|
+
});
|
|
41
|
+
export default IconPreview;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import _taggedTemplateLiteral from "@babel/runtime/helpers/esm/taggedTemplateLiteral";
|
|
2
|
+
var _templateObject, _templateObject2, _templateObject3;
|
|
3
|
+
import { CopyButton } from '@lobehub/ui';
|
|
4
|
+
import { createStyles } from 'antd-style';
|
|
5
|
+
import { memo, useRef } from 'react';
|
|
6
|
+
import { Flexbox } from 'react-layout-kit';
|
|
7
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
8
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
9
|
+
var useStyles = createStyles(function (_ref) {
|
|
10
|
+
var css = _ref.css,
|
|
11
|
+
token = _ref.token,
|
|
12
|
+
cx = _ref.cx;
|
|
13
|
+
return {
|
|
14
|
+
btn: cx('copy-button', css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n position: absolute;\n top: 4px;\n right: 4px;\n opacity: 0;\n "])))),
|
|
15
|
+
container: css(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n position: relative;\n\n flex: none;\n\n padding: 12px;\n\n line-height: 1;\n\n background: ", ";\n border: 1px solid ", ";\n border-radius: ", "px;\n\n &:hover {\n .copy-button {\n opacity: 1;\n }\n }\n "])), token.colorBgContainer, token.colorBorder, token.borderRadius),
|
|
16
|
+
inner: css(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n display: flex;\n flex: none;\n align-items: center;\n justify-content: center;\n\n width: auto;\n min-width: 72px;\n height: 72px;\n\n font-size: 72px;\n line-height: 1;\n "])))
|
|
17
|
+
};
|
|
18
|
+
});
|
|
19
|
+
var IconPreview = /*#__PURE__*/memo(function (_ref2) {
|
|
20
|
+
var _ref$current;
|
|
21
|
+
var children = _ref2.children;
|
|
22
|
+
var _useStyles = useStyles(),
|
|
23
|
+
styles = _useStyles.styles;
|
|
24
|
+
var ref = useRef(null);
|
|
25
|
+
var isString = typeof children === 'string';
|
|
26
|
+
return /*#__PURE__*/_jsxs(Flexbox, {
|
|
27
|
+
align: 'center',
|
|
28
|
+
className: styles.container,
|
|
29
|
+
flex: 'none',
|
|
30
|
+
justify: 'center',
|
|
31
|
+
children: [isString ? /*#__PURE__*/_jsx("div", {
|
|
32
|
+
className: styles.inner,
|
|
33
|
+
dangerouslySetInnerHTML: {
|
|
34
|
+
__html: children
|
|
35
|
+
},
|
|
36
|
+
ref: ref
|
|
37
|
+
}) : /*#__PURE__*/_jsx("div", {
|
|
38
|
+
className: styles.inner,
|
|
39
|
+
ref: ref,
|
|
40
|
+
children: children
|
|
41
|
+
}), /*#__PURE__*/_jsx(CopyButton, {
|
|
42
|
+
className: styles.btn,
|
|
43
|
+
content: String(ref === null || ref === void 0 || (_ref$current = ref.current) === null || _ref$current === void 0 || (_ref$current = _ref$current.querySelector('svg')) === null || _ref$current === void 0 ? void 0 : _ref$current.outerHTML)
|
|
44
|
+
})]
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
export default IconPreview;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
interface IconShowcaseProps {
|
|
3
|
+
avatar: ReactNode;
|
|
4
|
+
color: ReactNode;
|
|
5
|
+
combine?: ReactNode;
|
|
6
|
+
mono: ReactNode;
|
|
7
|
+
primaryColor: string;
|
|
8
|
+
text?: ReactNode;
|
|
9
|
+
}
|
|
10
|
+
declare const IconShowcase: import("react").NamedExoticComponent<IconShowcaseProps>;
|
|
11
|
+
export default IconShowcase;
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { memo } from 'react';
|
|
2
|
+
import { Flexbox } from 'react-layout-kit';
|
|
3
|
+
import IconPreview from "../IconPreview";
|
|
4
|
+
import ColorPreview from "../IconPreview/ColorPreview";
|
|
5
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
6
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
7
|
+
var IconShowcase = /*#__PURE__*/memo(function (_ref) {
|
|
8
|
+
var color = _ref.color,
|
|
9
|
+
mono = _ref.mono,
|
|
10
|
+
combine = _ref.combine,
|
|
11
|
+
text = _ref.text,
|
|
12
|
+
primaryColor = _ref.primaryColor,
|
|
13
|
+
avatar = _ref.avatar;
|
|
14
|
+
return /*#__PURE__*/_jsxs(Flexbox, {
|
|
15
|
+
gap: 32,
|
|
16
|
+
style: {
|
|
17
|
+
flexWrap: 'wrap'
|
|
18
|
+
},
|
|
19
|
+
children: [/*#__PURE__*/_jsxs(Flexbox, {
|
|
20
|
+
align: 'flex-start',
|
|
21
|
+
gap: 16,
|
|
22
|
+
children: [/*#__PURE__*/_jsx("h2", {
|
|
23
|
+
style: {
|
|
24
|
+
lineHeight: 1,
|
|
25
|
+
margin: 0
|
|
26
|
+
},
|
|
27
|
+
children: "Icons"
|
|
28
|
+
}), /*#__PURE__*/_jsxs(Flexbox, {
|
|
29
|
+
gap: 16,
|
|
30
|
+
horizontal: true,
|
|
31
|
+
style: {
|
|
32
|
+
flexWrap: 'wrap'
|
|
33
|
+
},
|
|
34
|
+
children: [/*#__PURE__*/_jsx(IconPreview, {
|
|
35
|
+
children: color
|
|
36
|
+
}), /*#__PURE__*/_jsx(IconPreview, {
|
|
37
|
+
children: mono
|
|
38
|
+
}), avatar]
|
|
39
|
+
})]
|
|
40
|
+
}), text && /*#__PURE__*/_jsxs(Flexbox, {
|
|
41
|
+
align: 'flex-start',
|
|
42
|
+
gap: 16,
|
|
43
|
+
children: [/*#__PURE__*/_jsx("h2", {
|
|
44
|
+
style: {
|
|
45
|
+
lineHeight: 1,
|
|
46
|
+
margin: 0
|
|
47
|
+
},
|
|
48
|
+
children: "Texts"
|
|
49
|
+
}), /*#__PURE__*/_jsx(IconPreview, {
|
|
50
|
+
children: text
|
|
51
|
+
})]
|
|
52
|
+
}), combine && /*#__PURE__*/_jsxs(Flexbox, {
|
|
53
|
+
align: 'flex-start',
|
|
54
|
+
gap: 16,
|
|
55
|
+
children: [/*#__PURE__*/_jsx("h2", {
|
|
56
|
+
style: {
|
|
57
|
+
lineHeight: 1,
|
|
58
|
+
margin: 0
|
|
59
|
+
},
|
|
60
|
+
children: "Combines"
|
|
61
|
+
}), /*#__PURE__*/_jsx(Flexbox, {
|
|
62
|
+
gap: 16,
|
|
63
|
+
horizontal: true,
|
|
64
|
+
style: {
|
|
65
|
+
flexWrap: 'wrap'
|
|
66
|
+
},
|
|
67
|
+
children: combine
|
|
68
|
+
})]
|
|
69
|
+
}), /*#__PURE__*/_jsxs(Flexbox, {
|
|
70
|
+
align: 'flex-start',
|
|
71
|
+
gap: 16,
|
|
72
|
+
children: [/*#__PURE__*/_jsx("h2", {
|
|
73
|
+
style: {
|
|
74
|
+
lineHeight: 1,
|
|
75
|
+
margin: 0
|
|
76
|
+
},
|
|
77
|
+
children: "Colors"
|
|
78
|
+
}), /*#__PURE__*/_jsx(Flexbox, {
|
|
79
|
+
gap: 16,
|
|
80
|
+
horizontal: true,
|
|
81
|
+
style: {
|
|
82
|
+
flexWrap: 'wrap'
|
|
83
|
+
},
|
|
84
|
+
children: /*#__PURE__*/_jsx(ColorPreview, {
|
|
85
|
+
color: primaryColor
|
|
86
|
+
})
|
|
87
|
+
})]
|
|
88
|
+
})]
|
|
89
|
+
});
|
|
90
|
+
});
|
|
91
|
+
export default IconShowcase;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
2
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
3
|
+
var _excluded = ["size", "style"];
|
|
4
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
5
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
6
|
+
import { Avatar as A } from '@lobehub/ui';
|
|
7
|
+
import { readableColor } from 'polished';
|
|
8
|
+
import { memo } from 'react';
|
|
9
|
+
import { COLOR_PRIMARY } from "../style";
|
|
10
|
+
import Mono from "./Mono";
|
|
11
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
12
|
+
var Avatar = /*#__PURE__*/memo(function (_ref) {
|
|
13
|
+
var _ref$size = _ref.size,
|
|
14
|
+
size = _ref$size === void 0 ? 64 : _ref$size,
|
|
15
|
+
style = _ref.style,
|
|
16
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
17
|
+
return /*#__PURE__*/_jsx(A, _objectSpread({
|
|
18
|
+
avatar: /*#__PURE__*/_jsx(Mono, {
|
|
19
|
+
size: size * 0.75
|
|
20
|
+
}),
|
|
21
|
+
background: COLOR_PRIMARY,
|
|
22
|
+
size: size,
|
|
23
|
+
style: _objectSpread({
|
|
24
|
+
color: readableColor(COLOR_PRIMARY)
|
|
25
|
+
}, style)
|
|
26
|
+
}, rest));
|
|
27
|
+
});
|
|
28
|
+
export default Avatar;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
2
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
3
|
+
var _excluded = ["size", "style"];
|
|
4
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
5
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
6
|
+
import { forwardRef } from 'react';
|
|
7
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
8
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
9
|
+
var Icon = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
10
|
+
var _ref$size = _ref.size,
|
|
11
|
+
size = _ref$size === void 0 ? '1em' : _ref$size,
|
|
12
|
+
style = _ref.style,
|
|
13
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
14
|
+
return /*#__PURE__*/_jsx("svg", _objectSpread(_objectSpread({
|
|
15
|
+
height: size,
|
|
16
|
+
ref: ref,
|
|
17
|
+
style: _objectSpread({
|
|
18
|
+
flex: 'none',
|
|
19
|
+
lineHeight: 1
|
|
20
|
+
}, style),
|
|
21
|
+
viewBox: "0 0 24 24",
|
|
22
|
+
width: size,
|
|
23
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
24
|
+
}, rest), {}, {
|
|
25
|
+
children: /*#__PURE__*/_jsxs("g", {
|
|
26
|
+
fill: "none",
|
|
27
|
+
fillRule: "evenodd",
|
|
28
|
+
children: [/*#__PURE__*/_jsx("path", {
|
|
29
|
+
d: "M6.075 10.494C7.6 9.446 9.768 8.759 12.222 8.759c2.453 0 4.622.687 6.147 1.735.77.53 1.352 1.133 1.74 1.77C20 10 20 10 20.687 9.362a9.276 9.276 0 00-1.008-.8c-1.958-1.347-4.598-2.143-7.457-2.143-2.858 0-5.499.796-7.457 2.144-1.955 1.345-3.325 3.322-3.325 5.647 0 2.326 1.37 4.303 3.322 5.646C6.721 21.205 9.362 22 12.22 22c2.859 0 5.5-.795 7.457-2.144C21.63 18.513 23 16.538 23 14.21c0-1.48-.554-2.817-1.46-3.94-.046 1.036-.41 2.03-1.012 2.937.099.325.149.663.15 1.003 0 1.33-.782 2.664-2.313 3.717-1.524 1.048-3.692 1.735-6.146 1.735-2.453 0-4.623-.687-6.147-1.735C4.544 16.874 3.76 15.54 3.76 14.21c.003-1.33.785-2.663 2.315-3.716z",
|
|
30
|
+
fill: "#3762FF"
|
|
31
|
+
}), /*#__PURE__*/_jsx("path", {
|
|
32
|
+
d: "M3.747 11.494c-.62 1.77-.473 3.365.332 4.51.806 1.144 2.254 1.813 4.117 1.813 1.86 0 4.029-.68 6.021-2.1 1.993-1.42 3.35-3.251 3.967-5.017.62-1.769.473-3.364-.332-4.51-.806-1.143-2.254-1.812-4.117-1.812-1.86 0-4.029.68-6.021 2.099-1.993 1.42-3.35 3.252-3.967 5.017zm-2.228-.79c.8-2.28 2.487-4.498 4.83-6.167C8.691 2.866 11.33 2 13.734 2c2.4 0 4.678.874 6.045 2.817 1.366 1.943 1.431 4.394.633 6.674-.8 2.282-2.487 4.499-4.83 6.168-2.344 1.67-4.981 2.536-7.387 2.537-2.4 0-4.678-.874-6.045-2.817-1.368-1.943-1.431-4.396-.633-6.674h.002z",
|
|
33
|
+
fill: "#1041F3"
|
|
34
|
+
})]
|
|
35
|
+
})
|
|
36
|
+
}));
|
|
37
|
+
});
|
|
38
|
+
export default Icon;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { type FlexboxProps } from 'react-layout-kit';
|
|
3
|
+
export interface CombineProps extends FlexboxProps {
|
|
4
|
+
size?: number;
|
|
5
|
+
type?: 'color' | 'mono';
|
|
6
|
+
}
|
|
7
|
+
declare const Combine: import("react").NamedExoticComponent<CombineProps>;
|
|
8
|
+
export default Combine;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
2
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
3
|
+
var _excluded = ["type", "size"];
|
|
4
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
5
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
6
|
+
import { memo } from 'react';
|
|
7
|
+
import { Flexbox } from 'react-layout-kit';
|
|
8
|
+
import { SPACE_MULTIPLE, TEXT_MULTIPLE } from "../style";
|
|
9
|
+
import Color from "./Color";
|
|
10
|
+
import Mono from "./Mono";
|
|
11
|
+
import Text from "./Text";
|
|
12
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
13
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
14
|
+
var Combine = /*#__PURE__*/memo(function (_ref) {
|
|
15
|
+
var _ref$type = _ref.type,
|
|
16
|
+
type = _ref$type === void 0 ? 'color' : _ref$type,
|
|
17
|
+
_ref$size = _ref.size,
|
|
18
|
+
size = _ref$size === void 0 ? 64 : _ref$size,
|
|
19
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
20
|
+
var Icon = type === 'color' ? Color : Mono;
|
|
21
|
+
return /*#__PURE__*/_jsxs(Flexbox, _objectSpread(_objectSpread({
|
|
22
|
+
align: 'center',
|
|
23
|
+
flex: 'none',
|
|
24
|
+
gap: size * SPACE_MULTIPLE,
|
|
25
|
+
horizontal: true
|
|
26
|
+
}, rest), {}, {
|
|
27
|
+
children: [/*#__PURE__*/_jsx(Icon, {
|
|
28
|
+
size: size
|
|
29
|
+
}), /*#__PURE__*/_jsx(Text, {
|
|
30
|
+
size: size * TEXT_MULTIPLE
|
|
31
|
+
})]
|
|
32
|
+
}));
|
|
33
|
+
});
|
|
34
|
+
export default Combine;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
2
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
3
|
+
var _excluded = ["size", "style"];
|
|
4
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
5
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
6
|
+
import { forwardRef } from 'react';
|
|
7
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
8
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
9
|
+
var Icon = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
10
|
+
var _ref$size = _ref.size,
|
|
11
|
+
size = _ref$size === void 0 ? '1em' : _ref$size,
|
|
12
|
+
style = _ref.style,
|
|
13
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
14
|
+
return /*#__PURE__*/_jsx("svg", _objectSpread(_objectSpread({
|
|
15
|
+
fill: "currentColor",
|
|
16
|
+
fillRule: "evenodd",
|
|
17
|
+
height: size,
|
|
18
|
+
ref: ref,
|
|
19
|
+
style: _objectSpread({
|
|
20
|
+
flex: 'none',
|
|
21
|
+
lineHeight: 1
|
|
22
|
+
}, style),
|
|
23
|
+
viewBox: "0 0 24 24",
|
|
24
|
+
width: size,
|
|
25
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
26
|
+
}, rest), {}, {
|
|
27
|
+
children: /*#__PURE__*/_jsxs("g", {
|
|
28
|
+
children: [/*#__PURE__*/_jsx("path", {
|
|
29
|
+
d: "M6.075 10.494C7.6 9.446 9.768 8.759 12.222 8.759c2.453 0 4.622.687 6.147 1.735.77.53 1.352 1.133 1.74 1.77C20 10 20 10 20.687 9.362a9.276 9.276 0 00-1.008-.8c-1.958-1.347-4.598-2.143-7.457-2.143-2.858 0-5.499.796-7.457 2.144-1.955 1.345-3.325 3.322-3.325 5.647 0 2.326 1.37 4.303 3.322 5.646C6.721 21.205 9.362 22 12.22 22c2.859 0 5.5-.795 7.457-2.144C21.63 18.513 23 16.538 23 14.21c0-1.48-.554-2.817-1.46-3.94-.046 1.036-.41 2.03-1.012 2.937.099.325.149.663.15 1.003 0 1.33-.782 2.664-2.313 3.717-1.524 1.048-3.692 1.735-6.146 1.735-2.453 0-4.623-.687-6.147-1.735C4.544 16.874 3.76 15.54 3.76 14.21c.003-1.33.785-2.663 2.315-3.716z"
|
|
30
|
+
}), /*#__PURE__*/_jsx("path", {
|
|
31
|
+
d: "M3.747 11.494c-.62 1.77-.473 3.365.332 4.51.806 1.144 2.254 1.813 4.117 1.813 1.86 0 4.029-.68 6.021-2.1 1.993-1.42 3.35-3.251 3.967-5.017.62-1.769.473-3.364-.332-4.51-.806-1.143-2.254-1.812-4.117-1.812-1.86 0-4.029.68-6.021 2.099-1.993 1.42-3.35 3.252-3.967 5.017zm-2.228-.79c.8-2.28 2.487-4.498 4.83-6.167C8.691 2.866 11.33 2 13.734 2c2.4 0 4.678.874 6.045 2.817 1.366 1.943 1.431 4.394.633 6.674-.8 2.282-2.487 4.499-4.83 6.168-2.344 1.67-4.981 2.536-7.387 2.537-2.4 0-4.678-.874-6.045-2.817-1.368-1.943-1.431-4.396-.633-6.674h.002z"
|
|
32
|
+
})]
|
|
33
|
+
})
|
|
34
|
+
}));
|
|
35
|
+
});
|
|
36
|
+
export default Icon;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
2
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
|
|
3
|
+
var _excluded = ["size", "style"];
|
|
4
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
5
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
6
|
+
import { forwardRef } from 'react';
|
|
7
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
8
|
+
var Icon = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
9
|
+
var _ref$size = _ref.size,
|
|
10
|
+
size = _ref$size === void 0 ? '1em' : _ref$size,
|
|
11
|
+
style = _ref.style,
|
|
12
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
13
|
+
return /*#__PURE__*/_jsx("svg", _objectSpread(_objectSpread({
|
|
14
|
+
fill: "currentColor",
|
|
15
|
+
fillRule: "evenodd",
|
|
16
|
+
height: size,
|
|
17
|
+
ref: ref,
|
|
18
|
+
style: _objectSpread({
|
|
19
|
+
flex: 'none',
|
|
20
|
+
lineHeight: 1
|
|
21
|
+
}, style),
|
|
22
|
+
viewBox: "0 0 86 24",
|
|
23
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
24
|
+
}, rest), {}, {
|
|
25
|
+
children: /*#__PURE__*/_jsx("path", {
|
|
26
|
+
d: "M82.857 13.62v5.001c0 1.86-1.61 3.377-3.587 3.377H67.086V13.62h15.77zm-20.095-1.973v6.943c0 1.863-1.609 3.379-3.587 3.379h-.797v-2h.294c.655 0 1.212-.42 1.388-.991h-6.624v3.02h-2.628V11.647h11.954zm-43.606 1.236v5.738c0 1.86-1.61 3.376-3.587 3.376H3.132v-9.114h16.024zm22.387-.003v5.737c0 1.863-1.61 3.379-3.587 3.379h-8.62l.002-9.116h12.205zM26.95 6.317V18.33l1.337-.746v2.553l-3.755 1.858V8.478h-1.026v-2.16h3.444zm22.315 6.774c-.07.605-.166 1.27-.28 1.98a91.279 91.279 0 01-1.35 6.792H45.13a81.452 81.452 0 001.064-4.471 86.9 86.9 0 00.456-2.352 39.05 39.05 0 00.303-1.95h2.312zm30.95 2.527h-10.5v4.379h9.052c.797 0 1.447-.617 1.447-1.376v-3.003zm-63.701 2.644H5.762v1.735h9.557c.797 0 1.195-.618 1.195-1.376v-.359zM38.9 18.26h-6.934v1.734h5.486c.798 0 1.448-.618 1.448-1.376v-.358zm21.22-1.897h-6.682v.972h6.682v-.972zM16.51 14.884H5.76v1.736h10.752v-1.736zm22.39-.004h-6.935v1.737H38.9V14.88zm21.219-1.23h-6.682v1.068h6.682V13.65zM6.003 2.03l-.366.83h5.039v2.003h-2.91v1.501h2.987v2.001h-2.84a6.942 6.942 0 002.84 1.698v2.085a9.1 9.1 0 01-4.564-2.582 9.139 9.139 0 01-4.11 2.466l-.007-2.134A6.91 6.91 0 004.45 8.363H2.11V6.362h3.077V4.86H2l.67-1.654.147-.346h.029l.368-.83h2.79zM40.116 2c-.04.155-.096.325-.166.509-.082.216-.18.428-.296.65l-.099.188h2.832V5.21h-3.33v4.984h3.388v1.954H28.683v-1.955h3.593V5.212h-3.403V3.349h2.967l-.055-.17a10.132 10.132 0 00-.474-1.177h2.822c.116.2.215.393.306.59.1.22.191.444.272.672l.03.085h1.962l.037-.07A5.7 5.7 0 0037.212 2h2.904zm42.932 8.13v2.017h-16.15V10.13h16.15zM20.03 2.776V8.77c0 1.86-1.61 3.376-3.586 3.376H11.6v-9.37h8.43zm27.435 4.686c.32.589.643 1.286.964 2.076.304.748.593 1.502.867 2.262h-2.46a42.866 42.866 0 00-.811-2.284 27.453 27.453 0 00-.882-2.054h2.322zm10.727-5.397v.71h5.244v2h-5.244V5.79h4.439v2.003h-4.439v1.015h5.371v2H50.01v-2h5.371V7.793h-4.439V5.79h4.439V4.775h-5.244v-2h5.244v-.71h2.813zM36.821 5.21H34.49v4.982h2.331V5.21zM17.39 4.776h-3.16v5.368h1.712c.797 0 1.448-.618 1.448-1.376V4.776zm13.494 1.425c.38.928.689 1.945.917 3.028l-2.273.002a17.347 17.347 0 00-.359-1.55c-.14-.5-.301-.993-.482-1.48h2.197zm11.564-.048a13.645 13.645 0 01-.899 3.052h-2.211c.212-.489.393-.99.542-1.501.146-.51.266-1.028.359-1.55h2.209zm40.6.297v2.017H66.899V6.45h16.15zM47.507 2.065c.163.308.322.618.474.93.184.382.36.768.525 1.158a34.027 34.027 0 01.89 2.25H46.95c-.121-.356-.249-.722-.384-1.085a33.973 33.973 0 00-.987-2.403 33.74 33.74 0 00-.412-.85h2.339zm-20.921-.033c.166.447.318.9.455 1.356.171.574.329 1.152.472 1.734h-2.78a29.381 29.381 0 00-.406-1.71 28.974 28.974 0 00-.417-1.38h2.676zm49.792.033v.71H84v2H65.943v-2h7.62v-.71h2.814z"
|
|
27
|
+
})
|
|
28
|
+
}));
|
|
29
|
+
});
|
|
30
|
+
export default Icon;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { default as Avatar } from './components/Avatar';
|
|
2
|
+
export { default as Color } from './components/Color';
|
|
3
|
+
export { default as Combine } from './components/Combine';
|
|
4
|
+
export { default as Mono } from './components/Mono';
|
|
5
|
+
export { default as Text } from './components/Text';
|
|
6
|
+
export { COLOR_PRIMARY as colorPrimary } from './style';
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { default as Avatar } from "./components/Avatar";
|
|
2
|
+
export { default as Color } from "./components/Color";
|
|
3
|
+
export { default as Combine } from "./components/Combine";
|
|
4
|
+
export { default as Mono } from "./components/Mono";
|
|
5
|
+
export { default as Text } from "./components/Text";
|
|
6
|
+
export { COLOR_PRIMARY as colorPrimary } from "./style";
|
package/es/index.d.ts
ADDED
package/es/index.js
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ForwardRefExoticComponent, RefAttributes, SVGProps } from 'react';
|
|
2
|
+
export type IconType = ForwardRefExoticComponent<Pick<SVGProps<SVGSVGElement>, 'string' | 'style' | 'clipPath' | 'filter' | 'mask' | 'path' | 'className' | 'color' | 'height' | 'id' | 'lang' | 'max' | 'media' | 'method' | 'min' | 'name' | 'target' | 'type' | 'width' | 'role' | 'tabIndex' | 'crossOrigin' | 'accentHeight' | 'accumulate' | 'additive' | 'alignmentBaseline' | 'allowReorder' | 'alphabetic' | 'amplitude' | 'arabicForm' | 'ascent' | 'attributeName' | 'attributeType' | 'autoReverse' | 'azimuth' | 'baseFrequency' | 'baselineShift' | 'baseProfile' | 'bbox' | 'begin' | 'bias' | 'by' | 'calcMode' | 'capHeight' | 'clip' | 'clipPathUnits' | 'clipRule' | 'colorInterpolation' | 'colorInterpolationFilters' | 'colorProfile' | 'colorRendering' | 'contentScriptType' | 'contentStyleType' | 'cursor' | 'cx' | 'cy' | 'd' | 'decelerate' | 'descent' | 'diffuseConstant' | 'direction' | 'display' | 'divisor' | 'dominantBaseline' | 'dur' | 'dx' | 'dy' | 'edgeMode' | 'elevation' | 'enableBackground' | 'end' | 'exponent' | 'externalResourcesRequired' | 'fill' | 'fillOpacity' | 'fillRule' | 'filterRes' | 'filterUnits' | 'floodColor' | 'floodOpacity' | 'focusable' | 'fontFamily' | 'fontSize' | 'fontSizeAdjust' | 'fontStretch' | 'fontStyle' | 'fontVariant' | 'fontWeight' | 'format' | 'fr' | 'from' | 'fx' | 'fy' | 'g1' | 'g2' | 'glyphName' | 'glyphOrientationHorizontal' | 'glyphOrientationVertical' | 'glyphRef' | 'gradientTransform' | 'gradientUnits' | 'hanging' | 'horizAdvX' | 'horizOriginX' | 'href' | 'ideographic' | 'imageRendering' | 'in2' | 'in' | 'intercept' | 'k1' | 'k2' | 'k3' | 'k4' | 'k' | 'kernelMatrix' | 'kernelUnitLength' | 'kerning' | 'keyPoints' | 'keySplines' | 'keyTimes' | 'lengthAdjust' | 'letterSpacing' | 'lightingColor' | 'limitingConeAngle' | 'local' | 'markerEnd' | 'markerHeight' | 'markerMid' | 'markerStart' | 'markerUnits' | 'markerWidth' | 'maskContentUnits' | 'maskUnits' | 'mathematical' | 'mode' | 'numOctaves' | 'offset' | 'opacity' | 'operator' | 'order' | 'orient' | 'orientation' | 'origin' | 'overflow' | 'overlinePosition' | 'overlineThickness' | 'paintOrder' | 'panose1' | 'pathLength' | 'patternContentUnits' | 'patternTransform' | 'patternUnits' | 'pointerEvents' | 'points' | 'pointsAtX' | 'pointsAtY' | 'pointsAtZ' | 'preserveAlpha' | 'preserveAspectRatio' | 'primitiveUnits' | 'r' | 'radius' | 'refX' | 'refY' | 'renderingIntent' | 'repeatCount' | 'repeatDur' | 'requiredExtensions' | 'requiredFeatures' | 'restart' | 'result' | 'rotate' | 'rx' | 'ry' | 'scale' | 'seed' | 'shapeRendering' | 'slope' | 'spacing' | 'specularConstant' | 'specularExponent' | 'speed' | 'spreadMethod' | 'startOffset' | 'stdDeviation' | 'stemh' | 'stemv' | 'stitchTiles' | 'stopColor' | 'stopOpacity' | 'strikethroughPosition' | 'strikethroughThickness' | 'stroke' | 'strokeDasharray' | 'strokeDashoffset' | 'strokeLinecap' | 'strokeLinejoin' | 'strokeMiterlimit' | 'strokeOpacity' | 'strokeWidth' | 'surfaceScale' | 'systemLanguage' | 'tableValues' | 'targetX' | 'targetY' | 'textAnchor' | 'textDecoration' | 'textLength' | 'textRendering' | 'to' | 'transform' | 'u1' | 'u2' | 'underlinePosition' | 'underlineThickness' | 'unicode' | 'unicodeBidi' | 'unicodeRange' | 'unitsPerEm' | 'vAlphabetic' | 'values' | 'vectorEffect' | 'version' | 'vertAdvY' | 'vertOriginX' | 'vertOriginY' | 'vHanging' | 'vIdeographic' | 'viewBox' | 'viewTarget' | 'visibility' | 'vMathematical' | 'widths' | 'wordSpacing' | 'writingMode' | 'x1' | 'x2' | 'x' | 'xChannelSelector' | 'xHeight' | 'xlinkActuate' | 'xlinkArcrole' | 'xlinkHref' | 'xlinkRole' | 'xlinkShow' | 'xlinkTitle' | 'xlinkType' | 'xmlBase' | 'xmlLang' | 'xmlns' | 'xmlnsXlink' | 'xmlSpace' | 'y1' | 'y2' | 'y' | 'yChannelSelector' | 'z' | 'zoomAndPan' | 'aria-activedescendant' | 'aria-atomic' | 'aria-autocomplete' | 'aria-busy' | 'aria-checked' | 'aria-colcount' | 'aria-colindex' | 'aria-colspan' | 'aria-controls' | 'aria-current' | 'aria-describedby' | 'aria-details' | 'aria-disabled' | 'aria-dropeffect' | 'aria-errormessage' | 'aria-expanded' | 'aria-flowto' | 'aria-grabbed' | 'aria-haspopup' | 'aria-hidden' | 'aria-invalid' | 'aria-keyshortcuts' | 'aria-label' | 'aria-labelledby' | 'aria-level' | 'aria-live' | 'aria-modal' | 'aria-multiline' | 'aria-multiselectable' | 'aria-orientation' | 'aria-owns' | 'aria-placeholder' | 'aria-posinset' | 'aria-pressed' | 'aria-readonly' | 'aria-relevant' | 'aria-required' | 'aria-roledescription' | 'aria-rowcount' | 'aria-rowindex' | 'aria-rowspan' | 'aria-selected' | 'aria-setsize' | 'aria-sort' | 'aria-valuemax' | 'aria-valuemin' | 'aria-valuenow' | 'aria-valuetext' | 'children' | 'dangerouslySetInnerHTML' | 'onCopy' | 'onCopyCapture' | 'onCut' | 'onCutCapture' | 'onPaste' | 'onPasteCapture' | 'onCompositionEnd' | 'onCompositionEndCapture' | 'onCompositionStart' | 'onCompositionStartCapture' | 'onCompositionUpdate' | 'onCompositionUpdateCapture' | 'onFocus' | 'onFocusCapture' | 'onBlur' | 'onBlurCapture' | 'onChange' | 'onChangeCapture' | 'onBeforeInput' | 'onBeforeInputCapture' | 'onInput' | 'onInputCapture' | 'onReset' | 'onResetCapture' | 'onSubmit' | 'onSubmitCapture' | 'onInvalid' | 'onInvalidCapture' | 'onLoad' | 'onLoadCapture' | 'onError' | 'onErrorCapture' | 'onKeyDown' | 'onKeyDownCapture' | 'onKeyPress' | 'onKeyPressCapture' | 'onKeyUp' | 'onKeyUpCapture' | 'onAbort' | 'onAbortCapture' | 'onCanPlay' | 'onCanPlayCapture' | 'onCanPlayThrough' | 'onCanPlayThroughCapture' | 'onDurationChange' | 'onDurationChangeCapture' | 'onEmptied' | 'onEmptiedCapture' | 'onEncrypted' | 'onEncryptedCapture' | 'onEnded' | 'onEndedCapture' | 'onLoadedData' | 'onLoadedDataCapture' | 'onLoadedMetadata' | 'onLoadedMetadataCapture' | 'onLoadStart' | 'onLoadStartCapture' | 'onPause' | 'onPauseCapture' | 'onPlay' | 'onPlayCapture' | 'onPlaying' | 'onPlayingCapture' | 'onProgress' | 'onProgressCapture' | 'onRateChange' | 'onRateChangeCapture' | 'onSeeked' | 'onSeekedCapture' | 'onSeeking' | 'onSeekingCapture' | 'onStalled' | 'onStalledCapture' | 'onSuspend' | 'onSuspendCapture' | 'onTimeUpdate' | 'onTimeUpdateCapture' | 'onVolumeChange' | 'onVolumeChangeCapture' | 'onWaiting' | 'onWaitingCapture' | 'onAuxClick' | 'onAuxClickCapture' | 'onClick' | 'onClickCapture' | 'onContextMenu' | 'onContextMenuCapture' | 'onDoubleClick' | 'onDoubleClickCapture' | 'onDrag' | 'onDragCapture' | 'onDragEnd' | 'onDragEndCapture' | 'onDragEnter' | 'onDragEnterCapture' | 'onDragExit' | 'onDragExitCapture' | 'onDragLeave' | 'onDragLeaveCapture' | 'onDragOver' | 'onDragOverCapture' | 'onDragStart' | 'onDragStartCapture' | 'onDrop' | 'onDropCapture' | 'onMouseDown' | 'onMouseDownCapture' | 'onMouseEnter' | 'onMouseLeave' | 'onMouseMove' | 'onMouseMoveCapture' | 'onMouseOut' | 'onMouseOutCapture' | 'onMouseOver' | 'onMouseOverCapture' | 'onMouseUp' | 'onMouseUpCapture' | 'onSelect' | 'onSelectCapture' | 'onTouchCancel' | 'onTouchCancelCapture' | 'onTouchEnd' | 'onTouchEndCapture' | 'onTouchMove' | 'onTouchMoveCapture' | 'onTouchStart' | 'onTouchStartCapture' | 'onPointerDown' | 'onPointerDownCapture' | 'onPointerMove' | 'onPointerMoveCapture' | 'onPointerUp' | 'onPointerUpCapture' | 'onPointerCancel' | 'onPointerCancelCapture' | 'onPointerEnter' | 'onPointerEnterCapture' | 'onPointerLeave' | 'onPointerLeaveCapture' | 'onPointerOver' | 'onPointerOverCapture' | 'onPointerOut' | 'onPointerOutCapture' | 'onGotPointerCapture' | 'onGotPointerCaptureCapture' | 'onLostPointerCapture' | 'onLostPointerCaptureCapture' | 'onScroll' | 'onScrollCapture' | 'onWheel' | 'onWheelCapture' | 'onAnimationStart' | 'onAnimationStartCapture' | 'onAnimationEnd' | 'onAnimationEndCapture' | 'onAnimationIteration' | 'onAnimationIterationCapture' | 'onTransitionEnd' | 'onTransitionEndCapture' | 'key'> & {
|
|
3
|
+
color?: string;
|
|
4
|
+
size?: string | number;
|
|
5
|
+
title?: string;
|
|
6
|
+
} & RefAttributes<SVGSVGElement>>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/package.json
ADDED
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@lobehub/icons",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "Popular LLM model brand svg logo and icon collection",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"lobehub",
|
|
7
|
+
"llm icons",
|
|
8
|
+
"llm brand logo",
|
|
9
|
+
"react components",
|
|
10
|
+
"svg icons"
|
|
11
|
+
],
|
|
12
|
+
"homepage": "https://github.com/lobehub/lobe-icons",
|
|
13
|
+
"bugs": {
|
|
14
|
+
"url": "https://github.com/lobehub/lobe-icons/issues/new"
|
|
15
|
+
},
|
|
16
|
+
"repository": {
|
|
17
|
+
"type": "git",
|
|
18
|
+
"url": "https://github.com/lobehub/lobe-icons.git"
|
|
19
|
+
},
|
|
20
|
+
"license": "MIT",
|
|
21
|
+
"author": "LobeHub <i@lobehub.com>",
|
|
22
|
+
"sideEffects": false,
|
|
23
|
+
"main": "es/index.js",
|
|
24
|
+
"module": "es/index.js",
|
|
25
|
+
"types": "es/index.d.ts",
|
|
26
|
+
"files": [
|
|
27
|
+
"es"
|
|
28
|
+
],
|
|
29
|
+
"scripts": {
|
|
30
|
+
"build": "father build",
|
|
31
|
+
"build:watch": "father dev",
|
|
32
|
+
"ci": "npm run lint && npm run type-check",
|
|
33
|
+
"clean": "rm -r es lib dist coverage .dumi/tmp .eslintcache node_modules/.cache",
|
|
34
|
+
"dev": "father dev",
|
|
35
|
+
"docs:build": "dumi build",
|
|
36
|
+
"docs:build-analyze": "ANALYZE=1 dumi build",
|
|
37
|
+
"docs:dev": "dumi dev",
|
|
38
|
+
"doctor": "father doctor",
|
|
39
|
+
"lint": "eslint \"{src,tests}/**/*.{js,jsx,ts,tsx}\" --fix",
|
|
40
|
+
"lint:md": "remark . --quiet --frail --output",
|
|
41
|
+
"lint:style": "stylelint \"{src,tests}/**/*.{js,jsx,ts,tsx}\" --fix",
|
|
42
|
+
"prepare": "husky install && npm run setup",
|
|
43
|
+
"prepublishOnly": "father doctor && npm run build",
|
|
44
|
+
"prettier": "prettier -c --write --no-error-on-unmatched-pattern \"**/**\"",
|
|
45
|
+
"pull": "git pull",
|
|
46
|
+
"release": "semantic-release",
|
|
47
|
+
"setup": "dumi setup",
|
|
48
|
+
"start": "npm run docs:dev",
|
|
49
|
+
"test": "vitest --passWithNoTests",
|
|
50
|
+
"test:coverage": "vitest run --coverage --passWithNoTests",
|
|
51
|
+
"test:update": "vitest -u",
|
|
52
|
+
"type-check": "tsc -p tsconfig-check.json"
|
|
53
|
+
},
|
|
54
|
+
"lint-staged": {
|
|
55
|
+
"*.md": [
|
|
56
|
+
"remark --quiet --output --",
|
|
57
|
+
"prettier --write --no-error-on-unmatched-pattern"
|
|
58
|
+
],
|
|
59
|
+
"*.json": [
|
|
60
|
+
"prettier --write --no-error-on-unmatched-pattern"
|
|
61
|
+
],
|
|
62
|
+
"*.{js,jsx}": [
|
|
63
|
+
"prettier --write",
|
|
64
|
+
"stylelint --fix",
|
|
65
|
+
"eslint --fix"
|
|
66
|
+
],
|
|
67
|
+
"*.{ts,tsx}": [
|
|
68
|
+
"prettier --parser=typescript --write",
|
|
69
|
+
"stylelint --fix",
|
|
70
|
+
"eslint --fix"
|
|
71
|
+
]
|
|
72
|
+
},
|
|
73
|
+
"dependencies": {
|
|
74
|
+
"@babel/runtime": "^7",
|
|
75
|
+
"@lobehub/ui": "^1",
|
|
76
|
+
"polished": "^4",
|
|
77
|
+
"react-layout-kit": "^1",
|
|
78
|
+
"svgo-browser": "^1"
|
|
79
|
+
},
|
|
80
|
+
"devDependencies": {
|
|
81
|
+
"@commitlint/cli": "^18",
|
|
82
|
+
"@lobehub/lint": "latest",
|
|
83
|
+
"@testing-library/react": "^14",
|
|
84
|
+
"@types/pangu": "^4",
|
|
85
|
+
"@types/query-string": "^6",
|
|
86
|
+
"@types/react": "18.2.40",
|
|
87
|
+
"@types/react-dom": "^18",
|
|
88
|
+
"@vitest/coverage-v8": "latest",
|
|
89
|
+
"antd-style": "^3",
|
|
90
|
+
"babel-plugin-antd-style": "latest",
|
|
91
|
+
"commitlint": "^18",
|
|
92
|
+
"concurrently": "^8",
|
|
93
|
+
"cross-env": "^7",
|
|
94
|
+
"dumi": "^2",
|
|
95
|
+
"dumi-theme-lobehub": "latest",
|
|
96
|
+
"eslint": "^8",
|
|
97
|
+
"father": "4.3.1",
|
|
98
|
+
"husky": "^8",
|
|
99
|
+
"jsdom": "^23",
|
|
100
|
+
"lint-staged": "^15",
|
|
101
|
+
"prettier": "^3",
|
|
102
|
+
"react": "^18",
|
|
103
|
+
"react-dom": "^18",
|
|
104
|
+
"remark": "^14",
|
|
105
|
+
"remark-cli": "^11",
|
|
106
|
+
"semantic-release": "^21",
|
|
107
|
+
"stylelint": "^15",
|
|
108
|
+
"typescript": "^5",
|
|
109
|
+
"vitest": "latest"
|
|
110
|
+
},
|
|
111
|
+
"peerDependencies": {
|
|
112
|
+
"@lobehub/ui": ">=1",
|
|
113
|
+
"antd-style": ">=3",
|
|
114
|
+
"polished": ">=4",
|
|
115
|
+
"react": ">=18",
|
|
116
|
+
"react-dom": ">=18"
|
|
117
|
+
},
|
|
118
|
+
"publishConfig": {
|
|
119
|
+
"access": "public",
|
|
120
|
+
"registry": "https://registry.npmjs.org"
|
|
121
|
+
}
|
|
122
|
+
}
|