cadt-icons 1.0.7 → 1.0.9

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/README.md CHANGED
@@ -1,7 +1,10 @@
1
- # cadt-icons
1
+ # CaDtIcons
2
2
 
3
3
  > 一个轻量、灵活的 Vue 3 图标库,支持按需引入、动态加载,完美适配现代前端项目。
4
4
 
5
+ [![License](https://img.shields.io/badge/License-MIT-blue.svg)](https://license.coscl.org.cn/MIT)![Vue](https://img.shields.io/badge/Vue-3.x-brightgreen)[![GitHub](https://img.shields.io/badge/github-repo-blue?logo=github)](https://github.com/OraSkyC/CaDtIcons)[![Gitee](https://img.shields.io/badge/gitee-repo-red?logo=gitee)](https://gitee.com/candysweet-cdt/cadt-icons)
6
+
7
+
5
8
  ## 1 特性
6
9
 
7
10
  - **保留原始语义** – 实心图标保持实心,轮廓图标保持轮廓
@@ -745,1021 +748,23 @@ useIcon(type: string): Component
745
748
 
746
749
  1. 直接查看 `node_modules/cadt-icons/src/components/` 下的 `.vue` 文件名(去掉 `.vue` 后缀即为组件名)。
747
750
  2. 在使用 `CadtIcon` 时,`type` 属性使用组件名的小写 kebab 形式(例如 `UserAdd` → `user-add`)。
748
- 3. 也可以使用下面的示例页面进行查询:
749
-
750
- ```vue
751
- <script setup>
752
- import { ref, computed } from 'vue'
753
- import { CadtIcon } from 'cadt-icons/async'
754
-
755
- // ---------- 分类定义 ----------
756
- const categories = [
757
- { id: 'all', name: '全部' },
758
- { id: 'ui', name: '用户界面' },
759
- { id: 'media', name: '媒体与科技' },
760
- { id: 'edit', name: '编辑工具' },
761
- { id: 'shape', name: '形状与符号' },
762
- { id: 'game', name: '游戏' },
763
- { id: 'item', name: '物品' },
764
- { id: 'nature', name: '自然与饮食' },
765
- ]
766
-
767
- // ---------- 图标数据(完整 574 个,基于最新映射)----------
768
- // 每个条目:{ cat, title, type, component }
769
- const iconsData = [
770
- // 1. 用户界面 (94个)
771
- { cat: 'ui', title: '上锁', type: 'lock', component: 'Lock' },
772
- { cat: 'ui', title: '不可见', type: 'invisible', component: 'Invisible' },
773
- { cat: 'ui', title: '休息', type: 'rest', component: 'Rest' },
774
- { cat: 'ui', title: '保存', type: 'save', component: 'Save' },
775
- { cat: 'ui', title: '信息', type: 'info', component: 'Info' },
776
- { cat: 'ui', title: '删除用户', type: 'user-delete', component: 'UserDelete' },
777
- { cat: 'ui', title: '刷新', type: 'refresh', component: 'Refresh' },
778
- { cat: 'ui', title: '加载', type: 'loading', component: 'Loading' },
779
- { cat: 'ui', title: '加载2', type: 'loading2', component: 'Loading2' },
780
- { cat: 'ui', title: '加载3', type: 'loading3', component: 'Loading3' },
781
- { cat: 'ui', title: '加载4', type: 'loading4', component: 'Loading4' },
782
- { cat: 'ui', title: '加载5', type: 'loading5', component: 'Loading5' },
783
- { cat: 'ui', title: '叉号', type: 'close', component: 'Close' },
784
- { cat: 'ui', title: '双感叹号', type: 'double-exclamation', component: 'DoubleExclamation' },
785
- { cat: 'ui', title: '可见', type: 'visible', component: 'Visible' },
786
- { cat: 'ui', title: '向右旋转', type: 'rotate-right', component: 'RotateRight' },
787
- { cat: 'ui', title: '向左旋转', type: 'rotate-left', component: 'RotateLeft' },
788
- { cat: 'ui', title: '圆圈', type: 'circle', component: 'Circle' },
789
- { cat: 'ui', title: '对勾', type: 'check', component: 'Check' },
790
- { cat: 'ui', title: '展开', type: 'expand', component: 'Expand' },
791
- { cat: 'ui', title: '展开2', type: 'expand2', component: 'Expand2' },
792
- { cat: 'ui', title: '展开3', type: 'expand3', component: 'Expand3' },
793
- { cat: 'ui', title: '展开4', type: 'expand4', component: 'Expand4' },
794
- { cat: 'ui', title: '开关', type: 'toggle', component: 'Toggle' },
795
- { cat: 'ui', title: '开关关闭', type: 'toggle-off', component: 'ToggleOff' },
796
- { cat: 'ui', title: '开关开启', type: 'toggle-on', component: 'ToggleOn' },
797
- { cat: 'ui', title: '感叹号', type: 'exclamation', component: 'Exclamation' },
798
- { cat: 'ui', title: '提醒用户', type: 'user-alert', component: 'UserAlert' },
799
- { cat: 'ui', title: '搜索', type: 'search', component: 'Search' },
800
- { cat: 'ui', title: '放大', type: 'zoom-in', component: 'ZoomIn' },
801
- { cat: 'ui', title: '朋友', type: 'friend', component: 'Friend' },
802
- { cat: 'ui', title: '浅色模式', type: 'light-mode', component: 'LightMode' },
803
- { cat: 'ui', title: '浅色模式2', type: 'light-mode2', component: 'LightMode2' },
804
- { cat: 'ui', title: '深色模式', type: 'dark-mode', component: 'DarkMode' },
805
- { cat: 'ui', title: '深色模式2', type: 'dark-mode2', component: 'DarkMode2' },
806
- { cat: 'ui', title: '添加用户', type: 'user-add', component: 'UserAdd' },
807
- { cat: 'ui', title: '滑块', type: 'slider', component: 'Slider' },
808
- { cat: 'ui', title: '用户', type: 'user', component: 'User' },
809
- { cat: 'ui', title: '用户列表', type: 'user-list', component: 'UserList' },
810
- { cat: 'ui', title: '用户头像', type: 'avatar', component: 'Avatar' },
811
- { cat: 'ui', title: '用户头像2', type: 'avatar2', component: 'Avatar2' },
812
- { cat: 'ui', title: '用户界面', type: 'user-interface', component: 'UserInterface' },
813
- { cat: 'ui', title: '用户组', type: 'group', component: 'Group' },
814
- { cat: 'ui', title: '禁止', type: 'forbidden', component: 'Forbidden' },
815
- { cat: 'ui', title: '移除用户', type: 'user-remove', component: 'UserRemove' },
816
- { cat: 'ui', title: '缩小', type: 'zoom-out', component: 'ZoomOut' },
817
- { cat: 'ui', title: '网格', type: 'grid', component: 'Grid' },
818
- { cat: 'ui', title: '网格2', type: 'grid2', component: 'Grid2' },
819
- { cat: 'ui', title: '网格3', type: 'grid3', component: 'Grid3' },
820
- { cat: 'ui', title: '网格4', type: 'grid4', component: 'Grid4' },
821
- { cat: 'ui', title: '网格5', type: 'grid5', component: 'Grid5' },
822
- { cat: 'ui', title: '网格6', type: 'grid6', component: 'Grid6' },
823
- { cat: 'ui', title: '网格7', type: 'grid7', component: 'Grid7' },
824
- { cat: 'ui', title: '网格添加', type: 'grid-add', component: 'GridAdd' },
825
- { cat: 'ui', title: '菜单', type: 'menu', component: 'Menu' },
826
- { cat: 'ui', title: '菜单2', type: 'menu2', component: 'Menu2' },
827
- { cat: 'ui', title: '菜单3', type: 'menu3', component: 'Menu3' },
828
- { cat: 'ui', title: '菜单4', type: 'menu4', component: 'Menu4' },
829
- { cat: 'ui', title: '菜单5', type: 'menu5', component: 'Menu5' },
830
- { cat: 'ui', title: '菜单6', type: 'menu6', component: 'Menu6' },
831
- { cat: 'ui', title: '菜单7', type: 'menu7', component: 'Menu7' },
832
- { cat: 'ui', title: '菜单打开', type: 'menu-open', component: 'MenuOpen' },
833
- { cat: 'ui', title: '菜单添加', type: 'menu-add', component: 'MenuAdd' },
834
- { cat: 'ui', title: '解锁', type: 'unlock', component: 'Unlock' },
835
- { cat: 'ui', title: '设置', type: 'settings', component: 'Settings' },
836
- { cat: 'ui', title: '设置2', type: 'settings2', component: 'Settings2' },
837
- { cat: 'ui', title: '调整', type: 'adjust', component: 'Adjust' },
838
- { cat: 'ui', title: '还原', type: 'undo', component: 'Undo' },
839
- { cat: 'ui', title: '还原2', type: 'undo2', component: 'Undo2' },
840
- { cat: 'ui', title: '还原3', type: 'undo3', component: 'Undo3' },
841
- { cat: 'ui', title: '还原4', type: 'undo4', component: 'Undo4' },
842
- { cat: 'ui', title: '进度条', type: 'progress-bar', component: 'ProgressBar' },
843
- { cat: 'ui', title: '问号', type: 'question', component: 'Question' },
844
- { cat: 'ui', title: '验证用户', type: 'user-verify', component: 'UserVerify' },
845
-
846
- // 2. 媒体与科技 (88个)
847
- { cat: 'media', title: '上一个', type: 'previous', component: 'Previous' },
848
- { cat: 'media', title: '下一个', type: 'next', component: 'Next' },
849
- { cat: 'media', title: '上一帧', type: 'prev-frame', component: 'PrevFrame' },
850
- { cat: 'media', title: '下一帧', type: 'next-frame', component: 'NextFrame' },
851
- { cat: 'media', title: '上传', type: 'upload', component: 'Upload' },
852
- { cat: 'media', title: '下载', type: 'download', component: 'Download' },
853
- { cat: 'media', title: '主机', type: 'host', component: 'Host' },
854
- { cat: 'media', title: '书签', type: 'bookmark', component: 'Bookmark' },
855
- { cat: 'media', title: '二维码', type: 'qrcode', component: 'Qrcode' },
856
- { cat: 'media', title: '云端上传', type: 'cloud-upload', component: 'CloudUpload' },
857
- { cat: 'media', title: '云端下载', type: 'cloud-download', component: 'CloudDownload' },
858
- { cat: 'media', title: '互联网', type: 'internet', component: 'Internet' },
859
- { cat: 'media', title: '代码', type: 'code', component: 'Code' },
860
- { cat: 'media', title: '代码错误', type: 'code-error', component: 'CodeError' },
861
- { cat: 'media', title: '位置', type: 'location', component: 'Location' },
862
- { cat: 'media', title: '保护', type: 'protect', component: 'Protect' },
863
- { cat: 'media', title: '信用卡', type: 'credit-card', component: 'CreditCard' },
864
- { cat: 'media', title: '停止', type: 'stop', component: 'Stop' },
865
- { cat: 'media', title: '储存卡', type: 'sd-card', component: 'SdCard' },
866
- { cat: 'media', title: '分享', type: 'share', component: 'Share' },
867
- { cat: 'media', title: '分享2', type: 'share2', component: 'Share2' },
868
- { cat: 'media', title: '图像', type: 'image', component: 'Image' },
869
- { cat: 'media', title: '地球', type: 'earth', component: 'Earth' },
870
- { cat: 'media', title: '垃圾桶', type: 'trash', component: 'Trash' },
871
- { cat: 'media', title: '头戴式耳机', type: 'headphones', component: 'Headphones' },
872
- { cat: 'media', title: '导入', type: 'import', component: 'Import' },
873
- { cat: 'media', title: '导出', type: 'export', component: 'Export' },
874
- { cat: 'media', title: '平板', type: 'tablet', component: 'Tablet' },
875
- { cat: 'media', title: '录像', type: 'video-recorder', component: 'VideoRecorder' },
876
- { cat: 'media', title: '录制', type: 'record', component: 'Record' },
877
- { cat: 'media', title: '快进', type: 'fast-forward', component: 'FastForward' },
878
- { cat: 'media', title: '快退', type: 'rewind', component: 'Rewind' },
879
- { cat: 'media', title: '手机', type: 'smartphone', component: 'Smartphone' },
880
- { cat: 'media', title: '手表', type: 'watch', component: 'Watch' },
881
- { cat: 'media', title: '提及', type: 'mention', component: 'Mention' },
882
- { cat: 'media', title: '摄像头', type: 'camera', component: 'Camera' },
883
- { cat: 'media', title: '播放', type: 'play', component: 'Play' },
884
- { cat: 'media', title: '文件', type: 'file', component: 'File' },
885
- { cat: 'media', title: '文件夹', type: 'folder', component: 'Folder' },
886
- { cat: 'media', title: '文档', type: 'document', component: 'Document' },
887
- { cat: 'media', title: '无线网络', type: 'wifi', component: 'Wifi' },
888
- { cat: 'media', title: '无音乐', type: 'no-music', component: 'NoMusic' },
889
- { cat: 'media', title: '无音乐2', type: 'no-music2', component: 'NoMusic2' },
890
- { cat: 'media', title: '日历', type: 'calendar', component: 'Calendar' },
891
- { cat: 'media', title: '时间', type: 'time', component: 'Time' },
892
- { cat: 'media', title: '显示器', type: 'monitor', component: 'Monitor' },
893
- { cat: 'media', title: '暂停', type: 'pause', component: 'Pause' },
894
- { cat: 'media', title: '最后一帧', type: 'last-frame', component: 'LastFrame' },
895
- { cat: 'media', title: '标签', type: 'tag', component: 'Tag' },
896
- { cat: 'media', title: '消息', type: 'message', component: 'Message' },
897
- { cat: 'media', title: '消息2', type: 'message2', component: 'Message2' },
898
- { cat: 'media', title: '游戏手柄', type: 'gamepad', component: 'Gamepad' },
899
- { cat: 'media', title: '灯光', type: 'light', component: 'Light' },
900
- { cat: 'media', title: '点赞', type: 'like', component: 'Like' },
901
- { cat: 'media', title: '点踩', type: 'dislike', component: 'Dislike' },
902
- { cat: 'media', title: '电影', type: 'movie', component: 'Movie' },
903
- { cat: 'media', title: '电池正', type: 'battery-plus', component: 'BatteryPlus' },
904
- { cat: 'media', title: '电池负', type: 'battery-minus', component: 'BatteryMinus' },
905
- { cat: 'media', title: '电源开关', type: 'power', component: 'Power' },
906
- { cat: 'media', title: '电话', type: 'phone', component: 'Phone' },
907
- { cat: 'media', title: '直播', type: 'live', component: 'Live' },
908
- { cat: 'media', title: '直播2', type: 'live2', component: 'Live2' },
909
- { cat: 'media', title: '相机', type: 'camera-alt', component: 'CameraAlt' },
910
- { cat: 'media', title: '移动数据', type: 'mobile-data', component: 'MobileData' },
911
- { cat: 'media', title: '笔记本', type: 'laptop', component: 'Laptop' },
912
- { cat: 'media', title: '老电视', type: 'old-tv', component: 'OldTv' },
913
- { cat: 'media', title: '芯片', type: 'chip', component: 'Chip' },
914
- { cat: 'media', title: '蓝牙', type: 'bluetooth', component: 'Bluetooth' },
915
- { cat: 'media', title: '视频', type: 'video', component: 'Video' },
916
- { cat: 'media', title: '起始帧', type: 'first-frame', component: 'FirstFrame' },
917
- { cat: 'media', title: '连接', type: 'connection', component: 'Connection' },
918
- { cat: 'media', title: '通知', type: 'notification', component: 'Notification' },
919
- { cat: 'media', title: '邮件', type: 'mail', component: 'Mail' },
920
- { cat: 'media', title: '链接', type: 'link', component: 'Link' },
921
- { cat: 'media', title: '键盘', type: 'keyboard', component: 'Keyboard' },
922
- { cat: 'media', title: '闪存盘', type: 'usb-drive', component: 'UsbDrive' },
923
- { cat: 'media', title: '闹钟', type: 'alarm', component: 'Alarm' },
924
- { cat: 'media', title: '静音', type: 'mute', component: 'Mute' },
925
- { cat: 'media', title: '静默', type: 'silent', component: 'Silent' },
926
- { cat: 'media', title: '音乐', type: 'music', component: 'Music' },
927
- { cat: 'media', title: '音乐2', type: 'music2', component: 'Music2' },
928
- { cat: 'media', title: '音量', type: 'volume', component: 'Volume' },
929
- { cat: 'media', title: '音频波形', type: 'waveform', component: 'Waveform' },
930
- { cat: 'media', title: '麦克风', type: 'microphone', component: 'Microphone' },
931
- { cat: 'media', title: '鼠标', type: 'mouse', component: 'Mouse' },
932
-
933
- // 3. 编辑工具 (54个)
934
- { cat: 'edit', title: '上对齐', type: 'align-top', component: 'AlignTop' },
935
- { cat: 'edit', title: '上对齐2', type: 'align-top2', component: 'AlignTop2' },
936
- { cat: 'edit', title: '下对齐', type: 'align-bottom', component: 'AlignBottom' },
937
- { cat: 'edit', title: '下对齐2', type: 'align-bottom2', component: 'AlignBottom2' },
938
- { cat: 'edit', title: '下划线', type: 'underline', component: 'Underline' },
939
- { cat: 'edit', title: '光标不可用', type: 'cursor-not-allowed', component: 'CursorNotAllowed' },
940
- { cat: 'edit', title: '光标不可用2', type: 'cursor-not-allowed2', component: 'CursorNotAllowed2' },
941
- { cat: 'edit', title: '光标候选', type: 'cursor-candidate', component: 'CursorCandidate' },
942
- { cat: 'edit', title: '光标加载', type: 'cursor-loading', component: 'CursorLoading' },
943
- { cat: 'edit', title: '光标加载2', type: 'cursor-loading2', component: 'CursorLoading2' },
944
- { cat: 'edit', title: '光标垂直调整', type: 'cursor-ns-resize', component: 'CursorNsResize' },
945
- { cat: 'edit', title: '光标对角调整', type: 'cursor-nesw-resize', component: 'CursorNeswResize' },
946
- { cat: 'edit', title: '光标对角调整2', type: 'cursor-nwse-resize', component: 'CursorNwseResize' },
947
- { cat: 'edit', title: '光标帮助', type: 'cursor-help', component: 'CursorHelp' },
948
- { cat: 'edit', title: '光标帮助2', type: 'cursor-help2', component: 'CursorHelp2' },
949
- { cat: 'edit', title: '光标忙', type: 'cursor-wait', component: 'CursorWait' },
950
- { cat: 'edit', title: '光标忙2', type: 'cursor-wait2', component: 'CursorWait2' },
951
- { cat: 'edit', title: '光标忙3', type: 'cursor-wait3', component: 'CursorWait3' },
952
- { cat: 'edit', title: '光标手写', type: 'cursor-pointer', component: 'CursorPointer' },
953
- { cat: 'edit', title: '光标文本选择', type: 'cursor-text', component: 'CursorText' },
954
- { cat: 'edit', title: '光标正常', type: 'cursor-default', component: 'CursorDefault' },
955
- { cat: 'edit', title: '光标正常2', type: 'cursor-default2', component: 'CursorDefault2' },
956
- { cat: 'edit', title: '光标水平调整', type: 'cursor-ew-resize', component: 'CursorEwResize' },
957
- { cat: 'edit', title: '光标移动', type: 'cursor-move', component: 'CursorMove' },
958
- { cat: 'edit', title: '光标精准选择', type: 'cursor-crosshair', component: 'CursorCrosshair' },
959
- { cat: 'edit', title: '光标链接选择', type: 'cursor-pointer-link', component: 'CursorPointerLink' },
960
- { cat: 'edit', title: '分割', type: 'split', component: 'Split' },
961
- { cat: 'edit', title: '删除线', type: 'strikethrough', component: 'Strikethrough' },
962
- { cat: 'edit', title: '取色器', type: 'color-picker', component: 'ColorPicker' },
963
- { cat: 'edit', title: '右对齐', type: 'align-right', component: 'AlignRight' },
964
- { cat: 'edit', title: '右对齐2', type: 'align-right2', component: 'AlignRight2' },
965
- { cat: 'edit', title: '垂直居中', type: 'align-center-vertical', component: 'AlignCenterVertical' },
966
- { cat: 'edit', title: '垂直居中2', type: 'align-center-vertical2', component: 'AlignCenterVertical2' },
967
- { cat: 'edit', title: '填充', type: 'fill', component: 'Fill' },
968
- { cat: 'edit', title: '复制', type: 'copy', component: 'Copy' },
969
- { cat: 'edit', title: '字体', type: 'font', component: 'Font' },
970
- { cat: 'edit', title: '字体2', type: 'font2', component: 'Font2' },
971
- { cat: 'edit', title: '左对齐', type: 'align-left', component: 'AlignLeft' },
972
- { cat: 'edit', title: '左对齐2', type: 'align-left2', component: 'AlignLeft2' },
973
- { cat: 'edit', title: '撤销', type: 'undo-action', component: 'UndoAction' },
974
- { cat: 'edit', title: '文本', type: 'text', component: 'Text' },
975
- { cat: 'edit', title: '斜体', type: 'italic', component: 'Italic' },
976
- { cat: 'edit', title: '框架', type: 'frame', component: 'Frame' },
977
- { cat: 'edit', title: '橡皮', type: 'eraser', component: 'Eraser' },
978
- { cat: 'edit', title: '水平居中', type: 'align-center-horizontal', component: 'AlignCenterHorizontal' },
979
- { cat: 'edit', title: '水平居中2', type: 'align-center-horizontal2', component: 'AlignCenterHorizontal2' },
980
- { cat: 'edit', title: '画刷', type: 'brush', component: 'Brush' },
981
- { cat: 'edit', title: '画笔', type: 'paintbrush', component: 'Paintbrush' },
982
- { cat: 'edit', title: '粗体', type: 'bold', component: 'Bold' },
983
- { cat: 'edit', title: '调色盘', type: 'palette', component: 'Palette' },
984
- { cat: 'edit', title: '轮廓', type: 'outline', component: 'Outline' },
985
- { cat: 'edit', title: '选择', type: 'select', component: 'Select' },
986
- { cat: 'edit', title: '重做', type: 'redo', component: 'Redo' },
987
- { cat: 'edit', title: '钢笔', type: 'pen', component: 'Pen' },
988
- { cat: 'edit', title: '铅笔', type: 'pencil', component: 'Pencil' },
989
-
990
- // 4. 形状与符号 (约160个)
991
- { cat: 'shape', title: '123', type: 'number-123', component: 'Number123' },
992
- { cat: 'shape', title: 'ABC', type: 'abc', component: 'Abc' },
993
- { cat: 'shape', title: 'A', type: 'a', component: 'A' },
994
- { cat: 'shape', title: 'B', type: 'b', component: 'B' },
995
- { cat: 'shape', title: 'C', type: 'c', component: 'C' },
996
- { cat: 'shape', title: 'D', type: 'd', component: 'D' },
997
- { cat: 'shape', title: 'E', type: 'e', component: 'E' },
998
- { cat: 'shape', title: 'F', type: 'f', component: 'F' },
999
- { cat: 'shape', title: 'G', type: 'g', component: 'G' },
1000
- { cat: 'shape', title: 'H', type: 'h', component: 'H' },
1001
- { cat: 'shape', title: 'I', type: 'i', component: 'I' },
1002
- { cat: 'shape', title: 'J', type: 'j', component: 'J' },
1003
- { cat: 'shape', title: 'K', type: 'k', component: 'K' },
1004
- { cat: 'shape', title: 'L', type: 'l', component: 'L' },
1005
- { cat: 'shape', title: 'M', type: 'm', component: 'M' },
1006
- { cat: 'shape', title: 'N', type: 'n', component: 'N' },
1007
- { cat: 'shape', title: 'O', type: 'o', component: 'O' },
1008
- { cat: 'shape', title: 'P', type: 'p', component: 'P' },
1009
- { cat: 'shape', title: 'Q', type: 'q', component: 'Q' },
1010
- { cat: 'shape', title: 'R', type: 'r', component: 'R' },
1011
- { cat: 'shape', title: 'S', type: 's', component: 'S' },
1012
- { cat: 'shape', title: 'T', type: 't', component: 'T' },
1013
- { cat: 'shape', title: 'U', type: 'u', component: 'U' },
1014
- { cat: 'shape', title: 'V', type: 'v', component: 'V' },
1015
- { cat: 'shape', title: 'W', type: 'w', component: 'W' },
1016
- { cat: 'shape', title: 'X', type: 'x', component: 'X' },
1017
- { cat: 'shape', title: 'Y', type: 'y', component: 'Y' },
1018
- { cat: 'shape', title: 'Z', type: 'z', component: 'Z' },
1019
- { cat: 'shape', title: '一', type: 'one', component: 'One' },
1020
- { cat: 'shape', title: '七', type: 'seven', component: 'Seven' },
1021
- { cat: 'shape', title: '七角星', type: 'seven-pointed-star', component: 'SevenPointedStar' },
1022
- { cat: 'shape', title: '七边形', type: 'heptagon', component: 'Heptagon' },
1023
- { cat: 'shape', title: '三', type: 'three', component: 'Three' },
1024
- { cat: 'shape', title: '三角形', type: 'triangle', component: 'Triangle' },
1025
- { cat: 'shape', title: '三角星', type: 'three-pointed-star', component: 'ThreePointedStar' },
1026
- { cat: 'shape', title: '上箭头2', type: 'arrow-up2', component: 'ArrowUp2' },
1027
- { cat: 'shape', title: '上箭头3', type: 'arrow-up3', component: 'ArrowUp3' },
1028
- { cat: 'shape', title: '上箭头', type: 'arrow-up', component: 'ArrowUp' },
1029
- { cat: 'shape', title: '下箭头2', type: 'arrow-down2', component: 'ArrowDown2' },
1030
- { cat: 'shape', title: '下箭头3', type: 'arrow-down3', component: 'ArrowDown3' },
1031
- { cat: 'shape', title: '下箭头', type: 'arrow-down', component: 'ArrowDown' },
1032
- { cat: 'shape', title: '不等于', type: 'not-equal', component: 'NotEqual' },
1033
- { cat: 'shape', title: '乘号2', type: 'multiply2', component: 'Multiply2' },
1034
- { cat: 'shape', title: '乘号3', type: 'multiply3', component: 'Multiply3' },
1035
- { cat: 'shape', title: '乘号', type: 'multiply', component: 'Multiply' },
1036
- { cat: 'shape', title: '九', type: 'nine', component: 'Nine' },
1037
- { cat: 'shape', title: '二', type: 'two', component: 'Two' },
1038
- { cat: 'shape', title: '五', type: 'five', component: 'Five' },
1039
- { cat: 'shape', title: '五角星', type: 'five-pointed-star', component: 'FivePointedStar' },
1040
- { cat: 'shape', title: '五边形', type: 'pentagon', component: 'Pentagon' },
1041
- { cat: 'shape', title: '人民币或日元', type: 'cny-symbol', component: 'CnySymbol' },
1042
- { cat: 'shape', title: '元', type: 'yuan', component: 'Yuan' },
1043
- { cat: 'shape', title: '八', type: 'eight', component: 'Eight' },
1044
- { cat: 'shape', title: '六', type: 'six', component: 'Six' },
1045
- { cat: 'shape', title: '六角星', type: 'six-pointed-star', component: 'SixPointedStar' },
1046
- { cat: 'shape', title: '六边形', type: 'hexagon', component: 'Hexagon' },
1047
- { cat: 'shape', title: '円', type: 'yen', component: 'Yen' },
1048
- { cat: 'shape', title: '减号', type: 'minus', component: 'Minus' },
1049
- { cat: 'shape', title: '函数', type: 'function', component: 'Function' },
1050
- { cat: 'shape', title: '加号', type: 'plus', component: 'Plus' },
1051
- { cat: 'shape', title: '半圆', type: 'semicircle', component: 'Semicircle' },
1052
- { cat: 'shape', title: '卢布', type: 'ruble', component: 'Ruble' },
1053
- { cat: 'shape', title: '卢比', type: 'rupee', component: 'Rupee' },
1054
- { cat: 'shape', title: '右箭头2', type: 'arrow-right2', component: 'ArrowRight2' },
1055
- { cat: 'shape', title: '右箭头3', type: 'arrow-right3', component: 'ArrowRight3' },
1056
- { cat: 'shape', title: '右箭头', type: 'arrow-right', component: 'ArrowRight' },
1057
- { cat: 'shape', title: '四', type: 'four', component: 'Four' },
1058
- { cat: 'shape', title: '四分之一圆', type: 'quarter-circle', component: 'QuarterCircle' },
1059
- { cat: 'shape', title: '四分之三圆', type: 'three-quarter-circle', component: 'ThreeQuarterCircle' },
1060
- { cat: 'shape', title: '四角星', type: 'four-pointed-star', component: 'FourPointedStar' },
1061
- { cat: 'shape', title: '四边形', type: 'quadrilateral', component: 'Quadrilateral' },
1062
- { cat: 'shape', title: '圆形', type: 'circle-shape', component: 'CircleShape' },
1063
- { cat: 'shape', title: '大于号', type: 'greater-than', component: 'GreaterThan' },
1064
- { cat: 'shape', title: '大于等于', type: 'greater-than-or-equal', component: 'GreaterThanOrEqual' },
1065
- { cat: 'shape', title: '奈拉', type: 'naira', component: 'Naira' },
1066
- { cat: 'shape', title: '小于号', type: 'less-than', component: 'LessThan' },
1067
- { cat: 'shape', title: '小于等于', type: 'less-than-or-equal', component: 'LessThanOrEqual' },
1068
- { cat: 'shape', title: '左箭头2', type: 'arrow-left2', component: 'ArrowLeft2' },
1069
- { cat: 'shape', title: '左箭头3', type: 'arrow-left3', component: 'ArrowLeft3' },
1070
- { cat: 'shape', title: '左箭头', type: 'arrow-left', component: 'ArrowLeft' },
1071
- { cat: 'shape', title: '带派', type: 'dollar-alt', component: 'DollarAlt' },
1072
- { cat: 'shape', title: '平行四边形', type: 'parallelogram', component: 'Parallelogram' },
1073
- { cat: 'shape', title: '无限', type: 'infinity', component: 'Infinity' },
1074
- { cat: 'shape', title: '根号', type: 'sqrt', component: 'Sqrt' },
1075
- { cat: 'shape', title: '梯形', type: 'trapezoid', component: 'Trapezoid' },
1076
- { cat: 'shape', title: '椭圆', type: 'ellipse', component: 'Ellipse' },
1077
- { cat: 'shape', title: '欧元', type: 'euro', component: 'Euro' },
1078
- { cat: 'shape', title: '正方形', type: 'square', component: 'Square' },
1079
- { cat: 'shape', title: '比特币', type: 'bitcoin', component: 'Bitcoin' },
1080
- { cat: 'shape', title: '泰铢', type: 'baht', component: 'Baht' },
1081
- { cat: 'shape', title: '百分号', type: 'percent', component: 'Percent' },
1082
- { cat: 'shape', title: '直角梯形', type: 'right-trapezoid', component: 'RightTrapezoid' },
1083
- { cat: 'shape', title: '等号', type: 'equals', component: 'Equals' },
1084
- { cat: 'shape', title: '等边三角形', type: 'equilateral-triangle', component: 'EquilateralTriangle' },
1085
- { cat: 'shape', title: '约等于', type: 'approx-equal', component: 'ApproxEqual' },
1086
- { cat: 'shape', title: '线性', type: 'linear', component: 'Linear' },
1087
- { cat: 'shape', title: '缓入', type: 'ease-in', component: 'EaseIn' },
1088
- { cat: 'shape', title: '缓入出', type: 'ease-in-out', component: 'EaseInOut' },
1089
- { cat: 'shape', title: '缓出', type: 'ease-out', component: 'EaseOut' },
1090
- { cat: 'shape', title: '美元2', type: 'dollar2', component: 'Dollar2' },
1091
- { cat: 'shape', title: '美元', type: 'dollar', component: 'Dollar' },
1092
- { cat: 'shape', title: '胶囊', type: 'capsule', component: 'Capsule' },
1093
- { cat: 'shape', title: '英镑', type: 'pound', component: 'Pound' },
1094
- { cat: 'shape', title: '菱形', type: 'diamond', component: 'Diamond' },
1095
- { cat: 'shape', title: '表情', type: 'emoji', component: 'Emoji' },
1096
- { cat: 'shape', title: '表情2', type: 'emoji2', component: 'Emoji2' },
1097
- { cat: 'shape', title: '表情3', type: 'emoji3', component: 'Emoji3' },
1098
- { cat: 'shape', title: '表情4', type: 'emoji4', component: 'Emoji4' },
1099
- { cat: 'shape', title: '表情5', type: 'emoji5', component: 'Emoji5' },
1100
- { cat: 'shape', title: '表情6', type: 'emoji6', component: 'Emoji6' },
1101
- { cat: 'shape', title: '表情7', type: 'emoji7', component: 'Emoji7' },
1102
- { cat: 'shape', title: '表情8', type: 'emoji8', component: 'Emoji8' },
1103
- { cat: 'shape', title: '表情9', type: 'emoji9', component: 'Emoji9' },
1104
- { cat: 'shape', title: '表情10', type: 'emoji10', component: 'Emoji10' },
1105
- { cat: 'shape', title: '表情11', type: 'emoji11', component: 'Emoji11' },
1106
- { cat: 'shape', title: '表情12', type: 'emoji12', component: 'Emoji12' },
1107
- { cat: 'shape', title: '表情13', type: 'emoji13', component: 'Emoji13' },
1108
- { cat: 'shape', title: '表情14', type: 'emoji14', component: 'Emoji14' },
1109
- { cat: 'shape', title: '表情15', type: 'emoji15', component: 'Emoji15' },
1110
- { cat: 'shape', title: '表情16', type: 'emoji16', component: 'Emoji16' },
1111
- { cat: 'shape', title: '表情17', type: 'emoji17', component: 'Emoji17' },
1112
- { cat: 'shape', title: '表情18', type: 'emoji18', component: 'Emoji18' },
1113
- { cat: 'shape', title: '表情19', type: 'emoji19', component: 'Emoji19' },
1114
- { cat: 'shape', title: '表情20', type: 'emoji20', component: 'Emoji20' },
1115
- { cat: 'shape', title: '里拉', type: 'lira', component: 'Lira' },
1116
- { cat: 'shape', title: '钝角三角形', type: 'obtuse-triangle', component: 'ObtuseTriangle' },
1117
- { cat: 'shape', title: '锐角三角形', type: 'acute-triangle', component: 'AcuteTriangle' },
1118
- { cat: 'shape', title: '长方形', type: 'rectangle', component: 'Rectangle' },
1119
- { cat: 'shape', title: '除号', type: 'divide', component: 'Divide' },
1120
- { cat: 'shape', title: '除号2', type: 'divide2', component: 'Divide2' },
1121
- { cat: 'shape', title: '零', type: 'zero', component: 'Zero' },
1122
- { cat: 'shape', title: '韩元', type: 'won', component: 'Won' },
1123
-
1124
- // 5. 游戏 (约60个)
1125
- { cat: 'game', title: '一倍', type: 'x1', component: 'X1' },
1126
- { cat: 'game', title: '万圣节', type: 'halloween', component: 'Halloween' },
1127
- { cat: 'game', title: '三倍', type: 'x3', component: 'X3' },
1128
- { cat: 'game', title: '两倍', type: 'x2', component: 'X2' },
1129
- { cat: 'game', title: '俄罗斯方块I', type: 'tetromino-i', component: 'TetrominoI' },
1130
- { cat: 'game', title: '俄罗斯方块J', type: 'tetromino-j', component: 'TetrominoJ' },
1131
- { cat: 'game', title: '俄罗斯方块L', type: 'tetromino-l', component: 'TetrominoL' },
1132
- { cat: 'game', title: '俄罗斯方块O', type: 'tetromino-o', component: 'TetrominoO' },
1133
- { cat: 'game', title: '俄罗斯方块S', type: 'tetromino-s', component: 'TetrominoS' },
1134
- { cat: 'game', title: '俄罗斯方块T', type: 'tetromino-t', component: 'TetrominoT' },
1135
- { cat: 'game', title: '俄罗斯方块Z', type: 'tetromino-z', component: 'TetrominoZ' },
1136
- { cat: 'game', title: '六面骰子1', type: 'dice-num1', component: 'DiceNum1' },
1137
- { cat: 'game', title: '六面骰子2', type: 'dice-num2', component: 'DiceNum2' },
1138
- { cat: 'game', title: '六面骰子3', type: 'dice-num3', component: 'DiceNum3' },
1139
- { cat: 'game', title: '六面骰子4', type: 'dice-num4', component: 'DiceNum4' },
1140
- { cat: 'game', title: '六面骰子5', type: 'dice-num5', component: 'DiceNum5' },
1141
- { cat: 'game', title: '六面骰子6', type: 'dice-num6', component: 'DiceNum6' },
1142
- { cat: 'game', title: '击中', type: 'hit', component: 'Hit' },
1143
- { cat: 'game', title: '卡牌', type: 'card', component: 'Card' },
1144
- { cat: 'game', title: '商店', type: 'shop', component: 'Shop' },
1145
- { cat: 'game', title: '城镇', type: 'town', component: 'Town' },
1146
- { cat: 'game', title: '塔', type: 'tower', component: 'Tower' },
1147
- { cat: 'game', title: '塔2', type: 'tower2', component: 'Tower2' },
1148
- { cat: 'game', title: '塔3', type: 'tower3', component: 'Tower3' },
1149
- { cat: 'game', title: '塔4', type: 'tower4', component: 'Tower4' },
1150
- { cat: 'game', title: '塔5', type: 'tower5', component: 'Tower5' },
1151
- { cat: 'game', title: '塔6', type: 'tower6', component: 'Tower6' },
1152
- { cat: 'game', title: '多张卡牌', type: 'cards', component: 'Cards' },
1153
- { cat: 'game', title: '奖杯', type: 'trophy', component: 'Trophy' },
1154
- { cat: 'game', title: '女性', type: 'female', component: 'Female' },
1155
- { cat: 'game', title: '帐篷', type: 'tent', component: 'Tent' },
1156
- { cat: 'game', title: '房子', type: 'house', component: 'House' },
1157
- { cat: 'game', title: '房子2', type: 'house2', component: 'House2' },
1158
- { cat: 'game', title: '房子3', type: 'house3', component: 'House3' },
1159
- { cat: 'game', title: '房子4', type: 'house4', component: 'House4' },
1160
- { cat: 'game', title: '拼图', type: 'puzzle', component: 'Puzzle' },
1161
- { cat: 'game', title: '拼图2', type: 'puzzle2', component: 'Puzzle2' },
1162
- { cat: 'game', title: '拼图3', type: 'puzzle3', component: 'Puzzle3' },
1163
- { cat: 'game', title: '拼图4', type: 'puzzle4', component: 'Puzzle4' },
1164
- { cat: 'game', title: '拼图5', type: 'puzzle5', component: 'Puzzle5' },
1165
- { cat: 'game', title: '拼图6', type: 'puzzle6', component: 'Puzzle6' },
1166
- { cat: 'game', title: '拼图7', type: 'puzzle7', component: 'Puzzle7' },
1167
- { cat: 'game', title: '拼图8', type: 'puzzle8', component: 'Puzzle8' },
1168
- { cat: 'game', title: '拼图9', type: 'puzzle9', component: 'Puzzle9' },
1169
- { cat: 'game', title: '拼图10', type: 'puzzle10', component: 'Puzzle10' },
1170
- { cat: 'game', title: '拼图11', type: 'puzzle11', component: 'Puzzle11' },
1171
- { cat: 'game', title: '拼图12', type: 'puzzle12', component: 'Puzzle12' },
1172
- { cat: 'game', title: '排行', type: 'leaderboard', component: 'Leaderboard' },
1173
- { cat: 'game', title: '方块', type: 'block', component: 'Block' },
1174
- { cat: 'game', title: '方块卡', type: 'diamond-card', component: 'DiamondCard' },
1175
- { cat: 'game', title: '村庄', type: 'village', component: 'Village' },
1176
- { cat: 'game', title: '梅花', type: 'club', component: 'Club' },
1177
- { cat: 'game', title: '梅花卡', type: 'club-card', component: 'ClubCard' },
1178
- { cat: 'game', title: '死亡', type: 'death', component: 'Death' },
1179
- { cat: 'game', title: '爱心', type: 'heart', component: 'Heart' },
1180
- { cat: 'game', title: '男性', type: 'male', component: 'Male' },
1181
- { cat: 'game', title: '等级', type: 'level', component: 'Level' },
1182
- { cat: 'game', title: '红心', type: 'heart-suit', component: 'HeartSuit' },
1183
- { cat: 'game', title: '红心卡', type: 'heart-card', component: 'HeartCard' },
1184
- { cat: 'game', title: '经验', type: 'xp', component: 'Xp' },
1185
- { cat: 'game', title: '耐力', type: 'stamina', component: 'Stamina' },
1186
- { cat: 'game', title: '角色', type: 'character', component: 'Character' },
1187
- { cat: 'game', title: '银行', type: 'bank', component: 'Bank' },
1188
- { cat: 'game', title: '随机骰子', type: 'random-dice', component: 'RandomDice' },
1189
- { cat: 'game', title: '首领', type: 'boss', component: 'Boss' },
1190
- { cat: 'game', title: '骰子1', type: 'dice1', component: 'Dice1' },
1191
- { cat: 'game', title: '骰子2', type: 'dice2', component: 'Dice2' },
1192
- { cat: 'game', title: '骰子3', type: 'dice3', component: 'Dice3' },
1193
- { cat: 'game', title: '骰子4', type: 'dice4', component: 'Dice4' },
1194
- { cat: 'game', title: '骰子5', type: 'dice5', component: 'Dice5' },
1195
- { cat: 'game', title: '骰子6', type: 'dice6', component: 'Dice6' },
1196
- { cat: 'game', title: '骰子一对', type: 'dice-pair', component: 'DicePair' },
1197
- { cat: 'game', title: '骷髅头', type: 'skull', component: 'Skull' },
1198
- { cat: 'game', title: '鬼魂', type: 'ghost', component: 'Ghost' },
1199
- { cat: 'game', title: '黑桃', type: 'spade', component: 'Spade' },
1200
- { cat: 'game', title: '黑桃卡', type: 'spade-card', component: 'SpadeCard' },
1201
-
1202
- // 6. 物品 (约70个)
1203
- { cat: 'item', title: '三叉戟', type: 'trident', component: 'Trident' },
1204
- { cat: 'item', title: '书', type: 'book', component: 'Book' },
1205
- { cat: 'item', title: '元宝', type: 'gold-ingot', component: 'GoldIngot' },
1206
- { cat: 'item', title: '刀', type: 'knife', component: 'Knife' },
1207
- { cat: 'item', title: '刀2', type: 'knife2', component: 'Knife2' },
1208
- { cat: 'item', title: '剑', type: 'sword', component: 'Sword' },
1209
- { cat: 'item', title: '剪刀', type: 'scissors', component: 'Scissors' },
1210
- { cat: 'item', title: '匕首', type: 'dagger', component: 'Dagger' },
1211
- { cat: 'item', title: '医疗箱', type: 'medkit', component: 'Medkit' },
1212
- { cat: 'item', title: '单只靴子', type: 'boot-single', component: 'BootSingle' },
1213
- { cat: 'item', title: '回形针', type: 'paperclip', component: 'Paperclip' },
1214
- { cat: 'item', title: '图钉', type: 'pushpin', component: 'Pushpin' },
1215
- { cat: 'item', title: '地图', type: 'map', component: 'Map' },
1216
- { cat: 'item', title: '墓碑', type: 'tombstone', component: 'Tombstone' },
1217
- { cat: 'item', title: '头盔2', type: 'helmet2', component: 'Helmet2' },
1218
- { cat: 'item', title: '头盔3', type: 'helmet3', component: 'Helmet3' },
1219
- { cat: 'item', title: '头盔', type: 'helmet', component: 'Helmet' },
1220
- { cat: 'item', title: '子弹', type: 'bullet', component: 'Bullet' },
1221
- { cat: 'item', title: '导弹', type: 'missile', component: 'Missile' },
1222
- { cat: 'item', title: '工具箱', type: 'toolbox', component: 'Toolbox' },
1223
- { cat: 'item', title: '干草叉', type: 'pitchfork', component: 'Pitchfork' },
1224
- { cat: 'item', title: '弓', type: 'bow', component: 'Bow' },
1225
- { cat: 'item', title: '手枪', type: 'pistol', component: 'Pistol' },
1226
- { cat: 'item', title: '扩音器', type: 'megaphone', component: 'Megaphone' },
1227
- { cat: 'item', title: '扳手', type: 'wrench', component: 'Wrench' },
1228
- { cat: 'item', title: '护腿', type: 'leggings', component: 'Leggings' },
1229
- { cat: 'item', title: '指南针', type: 'compass', component: 'Compass' },
1230
- { cat: 'item', title: '放射性', type: 'radioactive', component: 'Radioactive' },
1231
- { cat: 'item', title: '斧头', type: 'axe', component: 'Axe' },
1232
- { cat: 'item', title: '星币', type: 'starburst', component: 'Starburst' },
1233
- { cat: 'item', title: '星币2', type: 'starburst2', component: 'Starburst2' },
1234
- { cat: 'item', title: '棍子', type: 'stick', component: 'Stick' },
1235
- { cat: 'item', title: '步枪', type: 'rifle', component: 'Rifle' },
1236
- { cat: 'item', title: '水晶球', type: 'crystal-ball', component: 'CrystalBall' },
1237
- { cat: 'item', title: '滚筒刷', type: 'roller', component: 'Roller' },
1238
- { cat: 'item', title: '漏斗', type: 'funnel', component: 'Funnel' },
1239
- { cat: 'item', title: '火把', type: 'torch', component: 'Torch' },
1240
- { cat: 'item', title: '灯笼', type: 'lantern', component: 'Lantern' },
1241
- { cat: 'item', title: '灯笼2', type: 'lantern2', component: 'Lantern2' },
1242
- { cat: 'item', title: '灯笼3', type: 'lantern3', component: 'Lantern3' },
1243
- { cat: 'item', title: '灯笼4', type: 'lantern4', component: 'Lantern4' },
1244
- { cat: 'item', title: '灯笼5', type: 'lantern5', component: 'Lantern5' },
1245
- { cat: 'item', title: '炸弹', type: 'bomb', component: 'Bomb' },
1246
- { cat: 'item', title: '王冠', type: 'crown', component: 'Crown' },
1247
- { cat: 'item', title: '盾', type: 'shield', component: 'Shield' },
1248
- { cat: 'item', title: '盾2', type: 'shield2', component: 'Shield2' },
1249
- { cat: 'item', title: '盾3', type: 'shield3', component: 'Shield3' },
1250
- { cat: 'item', title: '矛', type: 'spear', component: 'Spear' },
1251
- { cat: 'item', title: '石油', type: 'oil', component: 'Oil' },
1252
- { cat: 'item', title: '硬币', type: 'coin', component: 'Coin' },
1253
- { cat: 'item', title: '磁铁', type: 'magnet', component: 'Magnet' },
1254
- { cat: 'item', title: '箭矢', type: 'arrow-ammo', component: 'ArrowAmmo' },
1255
- { cat: 'item', title: '箱子', type: 'chest', component: 'Chest' },
1256
- { cat: 'item', title: '背包', type: 'backpack', component: 'Backpack' },
1257
- { cat: 'item', title: '胸甲', type: 'chestplate', component: 'Chestplate' },
1258
- { cat: 'item', title: '药丸', type: 'pill', component: 'Pill' },
1259
- { cat: 'item', title: '药水', type: 'potion', component: 'Potion' },
1260
- { cat: 'item', title: '药水2', type: 'potion2', component: 'Potion2' },
1261
- { cat: 'item', title: '药水3', type: 'potion3', component: 'Potion3' },
1262
- { cat: 'item', title: '螺丝刀', type: 'screwdriver', component: 'Screwdriver' },
1263
- { cat: 'item', title: '钉子', type: 'nail', component: 'Nail' },
1264
- { cat: 'item', title: '钉子集', type: 'nails', component: 'Nails' },
1265
- { cat: 'item', title: '钓鱼竿', type: 'fishing-rod', component: 'FishingRod' },
1266
- { cat: 'item', title: '钥匙', type: 'key', component: 'Key' },
1267
- { cat: 'item', title: '钻石', type: 'diamond-1', component: 'Diamond1' },
1268
- { cat: 'item', title: '铁砧', type: 'anvil', component: 'Anvil' },
1269
- { cat: 'item', title: '铲子', type: 'shovel', component: 'Shovel' },
1270
- { cat: 'item', title: '锚', type: 'anchor', component: 'Anchor' },
1271
- { cat: 'item', title: '锤子', type: 'hammer', component: 'Hammer' },
1272
- { cat: 'item', title: '锤子2', type: 'hammer2', component: 'Hammer2' },
1273
- { cat: 'item', title: '锭', type: 'ingot', component: 'Ingot' },
1274
- { cat: 'item', title: '锯子', type: 'saw', component: 'Saw' },
1275
- { cat: 'item', title: '镐子', type: 'pickaxe', component: 'Pickaxe' },
1276
- { cat: 'item', title: '镜子', type: 'mirror', component: 'Mirror' },
1277
- { cat: 'item', title: '镰刀', type: 'scythe', component: 'Scythe' },
1278
- { cat: 'item', title: '靴子', type: 'boots', component: 'Boots' },
1279
- { cat: 'item', title: '马桶塞子', type: 'plunger', component: 'Plunger' },
1280
- { cat: 'item', title: '骨头', type: 'bone', component: 'Bone' },
1281
- { cat: 'item', title: '魔杖', type: 'wand', component: 'Wand' },
1282
- { cat: 'item', title: '魔杖2', type: 'wand2', component: 'Wand2' },
1283
- { cat: 'item', title: '魔杖3', type: 'wand3', component: 'Wand3' },
1284
- { cat: 'item', title: '鱼钩', type: 'fishhook', component: 'Fishhook' },
1285
-
1286
- // 7. 自然与饮食 (约68个)
1287
- { cat: 'nature', title: '一杯水', type: 'cup-of-water', component: 'CupOfWater' },
1288
- { cat: 'nature', title: '一瓶水', type: 'water-bottle', component: 'WaterBottle' },
1289
- { cat: 'nature', title: '云', type: 'cloud', component: 'Cloud' },
1290
- { cat: 'nature', title: '仙人掌', type: 'cactus', component: 'Cactus' },
1291
- { cat: 'nature', title: '动物', type: 'animal', component: 'Animal' },
1292
- { cat: 'nature', title: '四叶草', type: 'four-leaf-clover', component: 'FourLeafClover' },
1293
- { cat: 'nature', title: '土豆', type: 'potato', component: 'Potato' },
1294
- { cat: 'nature', title: '多云', type: 'cloudy', component: 'Cloudy' },
1295
- { cat: 'nature', title: '多雪', type: 'snowy', component: 'Snowy' },
1296
- { cat: 'nature', title: '夜晚', type: 'night', component: 'Night' },
1297
- { cat: 'nature', title: '太阳2', type: 'sun2', component: 'Sun2' },
1298
- { cat: 'nature', title: '太阳', type: 'sun', component: 'Sun' },
1299
- { cat: 'nature', title: '山', type: 'mountain', component: 'Mountain' },
1300
- { cat: 'nature', title: '彩虹', type: 'rainbow', component: 'Rainbow' },
1301
- { cat: 'nature', title: '星星', type: 'star', component: 'Star' },
1302
- { cat: 'nature', title: '木头', type: 'wood', component: 'Wood' },
1303
- { cat: 'nature', title: '树', type: 'tree', component: 'Tree' },
1304
- { cat: 'nature', title: '树2', type: 'tree2', component: 'Tree2' },
1305
- { cat: 'nature', title: '树3', type: 'tree3', component: 'Tree3' },
1306
- { cat: 'nature', title: '树4', type: 'tree4', component: 'Tree4' },
1307
- { cat: 'nature', title: '树叶', type: 'leaf', component: 'Leaf' },
1308
- { cat: 'nature', title: '桃子', type: 'peach', component: 'Peach' },
1309
- { cat: 'nature', title: '梨', type: 'pear', component: 'Pear' },
1310
- { cat: 'nature', title: '森林', type: 'forest', component: 'Forest' },
1311
- { cat: 'nature', title: '森林2', type: 'forest2', component: 'Forest2' },
1312
- { cat: 'nature', title: '森林3', type: 'forest3', component: 'Forest3' },
1313
- { cat: 'nature', title: '水', type: 'water', component: 'Water' },
1314
- { cat: 'nature', title: '水母', type: 'jellyfish', component: 'Jellyfish' },
1315
- { cat: 'nature', title: '河流', type: 'river', component: 'River' },
1316
- { cat: 'nature', title: '流星', type: 'meteor', component: 'Meteor' },
1317
- { cat: 'nature', title: '海', type: 'sea', component: 'Sea' },
1318
- { cat: 'nature', title: '温度', type: 'temperature', component: 'Temperature' },
1319
- { cat: 'nature', title: '温度上升', type: 'temperature-up', component: 'TemperatureUp' },
1320
- { cat: 'nature', title: '温度上升2', type: 'temperature-up2', component: 'TemperatureUp2' },
1321
- { cat: 'nature', title: '温度下降', type: 'temperature-down', component: 'TemperatureDown' },
1322
- { cat: 'nature', title: '温度下降2', type: 'temperature-down2', component: 'TemperatureDown2' },
1323
- { cat: 'nature', title: '火', type: 'fire', component: 'Fire' },
1324
- { cat: 'nature', title: '火腿', type: 'ham', component: 'Ham' },
1325
- { cat: 'nature', title: '火腿2', type: 'ham2', component: 'Ham2' },
1326
- { cat: 'nature', title: '熟肉', type: 'cooked-meat', component: 'CookedMeat' },
1327
- { cat: 'nature', title: '牛', type: 'cow', component: 'Cow' },
1328
- { cat: 'nature', title: '狐狸', type: 'fox', component: 'Fox' },
1329
- { cat: 'nature', title: '狗', type: 'dog', component: 'Dog' },
1330
- { cat: 'nature', title: '狼', type: 'wolf', component: 'Wolf' },
1331
- { cat: 'nature', title: '猪', type: 'pig', component: 'Pig' },
1332
- { cat: 'nature', title: '猫', type: 'cat', component: 'Cat' },
1333
- { cat: 'nature', title: '石头', type: 'stone', component: 'Stone' },
1334
- { cat: 'nature', title: '竹子', type: 'bamboo', component: 'Bamboo' },
1335
- { cat: 'nature', title: '竹笋', type: 'bamboo-shoot', component: 'BambooShoot' },
1336
- { cat: 'nature', title: '羊', type: 'sheep', component: 'Sheep' },
1337
- { cat: 'nature', title: '肉', type: 'meat', component: 'Meat' },
1338
- { cat: 'nature', title: '胡萝卜', type: 'carrot', component: 'Carrot' },
1339
- { cat: 'nature', title: '花', type: 'flower', component: 'Flower' },
1340
- { cat: 'nature', title: '花2', type: 'flower2', component: 'Flower2' },
1341
- { cat: 'nature', title: '花3', type: 'flower3', component: 'Flower3' },
1342
- { cat: 'nature', title: '苹果', type: 'apple', component: 'Apple' },
1343
- { cat: 'nature', title: '草', type: 'grass', component: 'Grass' },
1344
- { cat: 'nature', title: '虾', type: 'shrimp', component: 'Shrimp' },
1345
- { cat: 'nature', title: '雨', type: 'rain', component: 'Rain' },
1346
- { cat: 'nature', title: '雨2', type: 'rain2', component: 'Rain2' },
1347
- { cat: 'nature', title: '雪花', type: 'snowflake', component: 'Snowflake' },
1348
- { cat: 'nature', title: '雷电', type: 'lightning', component: 'Lightning' },
1349
- { cat: 'nature', title: '雷雨', type: 'thunderstorm', component: 'Thunderstorm' },
1350
- { cat: 'nature', title: '雾天', type: 'fog', component: 'Fog' },
1351
- { cat: 'nature', title: '面包', type: 'bread', component: 'Bread' },
1352
- { cat: 'nature', title: '面包2', type: 'bread2', component: 'Bread2' },
1353
- { cat: 'nature', title: '风', type: 'wind', component: 'Wind' },
1354
- { cat: 'nature', title: '香蒲', type: 'cattail', component: 'Cattail' },
1355
- { cat: 'nature', title: '鱼', type: 'fish', component: 'Fish' },
1356
- { cat: 'nature', title: '鱼2', type: 'fish2', component: 'Fish2' },
1357
- ]
1358
-
1359
- // ---------- 响应式状态 ----------
1360
- const activeCategory = ref('all')
1361
- const searchKeyword = ref('')
1362
- const searchText = ref('')
1363
- const modalVisible = ref(false)
1364
- const currentIcon = ref(null)
1365
-
1366
- // 计算过滤后的图标列表
1367
- const filteredIcons = computed(() => {
1368
- let list = iconsData
1369
- if (activeCategory.value !== 'all') {
1370
- list = list.filter(icon => icon.cat === activeCategory.value)
1371
- }
1372
- if (searchText.value) {
1373
- const kw = searchText.value.toLowerCase()
1374
- list = list.filter(icon =>
1375
- icon.title.toLowerCase().includes(kw) || icon.type.toLowerCase().includes(kw)
1376
- )
1377
- }
1378
- return list
1379
- })
1380
-
1381
- // 当前代码片段(独立导入方式)
1382
- const currentCodeSnippet = computed(() => {
1383
- if (!currentIcon.value) return ''
1384
- const comp = currentIcon.value.component
1385
- return `<script setup>
1386
- import { ${comp} } from 'cadt-icons';
1387
- <\/script>
1388
-
1389
- <template>
1390
- <${comp} size="32" color="#333" />
1391
- </template>`
1392
- })
1393
-
1394
- function handleSearch() {
1395
- searchText.value = searchKeyword.value.trim()
1396
- }
1397
-
1398
- function openModal(icon) {
1399
- currentIcon.value = icon
1400
- modalVisible.value = true
1401
- }
1402
-
1403
- function closeModal() {
1404
- modalVisible.value = false
1405
- currentIcon.value = null
1406
- }
1407
-
1408
- async function copyType() {
1409
- if (!currentIcon.value) return
1410
- try {
1411
- await navigator.clipboard.writeText(currentIcon.value.type)
1412
- alert(`已复制 type: ${currentIcon.value.type}`)
1413
- } catch (err) {
1414
- console.error('复制失败', err)
1415
- }
1416
- }
1417
-
1418
- async function copyCode() {
1419
- try {
1420
- await navigator.clipboard.writeText(currentCodeSnippet.value)
1421
- alert('代码已复制到剪贴板')
1422
- } catch (err) {
1423
- console.error('复制失败', err)
1424
- }
1425
- }
1426
- </script>
751
+ 3. 也可以使用示例页面进行查询:[CaDtIconsSearch](https://gitee.com/candysweet-cdt/cadt-icons-search)
1427
752
 
1428
- <template>
1429
- <div class="app">
1430
- <!-- 左侧分类 -->
1431
- <aside class="sidebar">
1432
- <div class="category-title">分类</div>
1433
- <ul class="category-list">
1434
- <li
1435
- v-for="cat in categories"
1436
- :key="cat.id"
1437
- :class="{ active: activeCategory === cat.id }"
1438
- @click="activeCategory = cat.id"
1439
- >
1440
- {{ cat.name }}
1441
- </li>
1442
- </ul>
1443
- </aside>
1444
-
1445
- <!-- 右侧主区域 -->
1446
- <main class="main">
1447
- <div class="search-bar">
1448
- <input
1449
- v-model="searchKeyword"
1450
- type="text"
1451
- placeholder="输入图标名称或 type 搜索..."
1452
- @keyup.enter="handleSearch"
1453
- />
1454
- <button @click="handleSearch">搜索</button>
1455
- </div>
1456
-
1457
- <div class="icon-grid">
1458
- <div
1459
- v-for="icon in filteredIcons"
1460
- :key="icon.type"
1461
- class="icon-card"
1462
- @click="openModal(icon)"
1463
- >
1464
- <div class="icon-display">
1465
- <CadtIcon :type="icon.type" size="32" />
1466
- </div>
1467
- <span class="icon-name">{{ icon.title }}</span>
1468
- </div>
1469
- </div>
1470
- </main>
1471
-
1472
- <!-- 弹层(模态框) -->
1473
- <Teleport to="body">
1474
- <div v-if="modalVisible" class="modal-overlay" @click.self="closeModal">
1475
- <div class="modal-container">
1476
- <div class="modal-left">
1477
- <CadtIcon :type="currentIcon?.type" size="64" />
1478
- </div>
1479
- <div class="modal-right">
1480
- <div class="modal-title">{{ currentIcon?.title }}</div>
1481
- <div class="modal-code">
1482
- <pre><code>{{ currentCodeSnippet }}</code></pre>
1483
- </div>
1484
- <div class="modal-buttons">
1485
- <button @click="copyType">复制图标 type</button>
1486
- <button @click="copyCode">复制代码</button>
1487
- </div>
1488
- </div>
1489
- <button class="modal-close" @click="closeModal">×</button>
1490
- </div>
1491
- </div>
1492
- </Teleport>
1493
- </div>
1494
- </template>
1495
753
 
1496
- <style scoped>
1497
- * {
1498
- margin: 0;
1499
- padding: 0;
1500
- box-sizing: border-box;
1501
- }
1502
-
1503
- .app {
1504
- display: flex;
1505
- height: 100vh;
1506
- font-family: system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
1507
- background: #f5f7fb;
1508
- }
1509
-
1510
- /* 侧边栏 */
1511
- .sidebar {
1512
- width: 260px;
1513
- background: white;
1514
- border-right: 1px solid #e9ecef;
1515
- overflow-y: auto;
1516
- padding: 24px 0;
1517
- }
1518
-
1519
- .category-title {
1520
- font-size: 18px;
1521
- font-weight: 600;
1522
- padding: 0 20px 16px;
1523
- color: #1e293b;
1524
- border-bottom: 1px solid #eef2f6;
1525
- margin-bottom: 12px;
1526
- }
1527
-
1528
- .category-list {
1529
- list-style: none;
1530
- }
1531
-
1532
- .category-list li {
1533
- padding: 10px 20px;
1534
- margin: 4px 8px;
1535
- border-radius: 12px;
1536
- cursor: pointer;
1537
- font-size: 14px;
1538
- font-weight: 500;
1539
- color: #334155;
1540
- transition: all 0.2s;
1541
- }
1542
-
1543
- .category-list li:hover {
1544
- background: #f1f5f9;
1545
- color: #0f172a;
1546
- }
1547
-
1548
- .category-list li.active {
1549
- background: #eef2ff;
1550
- color: #3b82f6;
1551
- }
1552
-
1553
- /* 主区域 */
1554
- .main {
1555
- flex: 1;
1556
- display: flex;
1557
- flex-direction: column;
1558
- overflow: hidden;
1559
- padding: 20px 28px;
1560
- }
1561
-
1562
- .search-bar {
1563
- display: flex;
1564
- gap: 12px;
1565
- margin-bottom: 28px;
1566
- }
1567
-
1568
- .search-bar input {
1569
- flex: 1;
1570
- padding: 10px 16px;
1571
- border: 1px solid #e2e8f0;
1572
- border-radius: 40px;
1573
- font-size: 14px;
1574
- background: white;
1575
- outline: none;
1576
- transition: 0.2s;
1577
- }
1578
-
1579
- .search-bar input:focus {
1580
- border-color: #3b82f6;
1581
- box-shadow: 0 0 0 3px rgba(59,130,246,0.1);
1582
- }
1583
-
1584
- .search-bar button {
1585
- background: #3b82f6;
1586
- border: none;
1587
- padding: 0 24px;
1588
- border-radius: 40px;
1589
- color: white;
1590
- font-weight: 500;
1591
- cursor: pointer;
1592
- transition: background 0.2s;
1593
- }
1594
-
1595
- .search-bar button:hover {
1596
- background: #2563eb;
1597
- }
1598
-
1599
- /* 图标网格:使用 auto-fill 和 minmax,高度由内容撑开,不会拉伸 */
1600
- .icon-grid {
1601
- flex: 1;
1602
- overflow-y: auto;
1603
- display: grid;
1604
- grid-template-columns: repeat(auto-fill, minmax(110px, 1fr));
1605
- gap: 20px;
1606
- align-content: start; /* 防止内容不足时拉伸 */
1607
- padding: 4px 2px 20px;
1608
- }
1609
-
1610
- .icon-card {
1611
- background: white;
1612
- border-radius: 20px;
1613
- padding: 18px 8px 12px;
1614
- display: flex;
1615
- flex-direction: column;
1616
- align-items: center;
1617
- cursor: pointer;
1618
- transition: all 0.2s;
1619
- box-shadow: 0 1px 2px rgba(0,0,0,0.05);
1620
- border: 1px solid #edf2f7;
1621
- }
1622
-
1623
- .icon-card:hover {
1624
- transform: translateY(-4px);
1625
- box-shadow: 0 12px 20px -12px rgba(0,0,0,0.15);
1626
- border-color: #cbd5e1;
1627
- }
1628
-
1629
- .icon-display {
1630
- display: flex;
1631
- justify-content: center;
1632
- align-items: center;
1633
- height: 56px;
1634
- margin-bottom: 12px;
1635
- }
1636
-
1637
- .icon-name {
1638
- font-size: 12px;
1639
- color: #334155;
1640
- text-align: center;
1641
- word-break: break-word;
1642
- max-width: 100%;
1643
- }
1644
-
1645
- /* 模态框 */
1646
- .modal-overlay {
1647
- position: fixed;
1648
- top: 0;
1649
- left: 0;
1650
- width: 100%;
1651
- height: 100%;
1652
- background: rgba(0,0,0,0.5);
1653
- display: flex;
1654
- justify-content: center;
1655
- align-items: center;
1656
- z-index: 1000;
1657
- backdrop-filter: blur(3px);
1658
- }
1659
-
1660
- .modal-container {
1661
- background: white;
1662
- border-radius: 32px;
1663
- width: 720px;
1664
- max-width: 90vw;
1665
- display: flex;
1666
- padding: 28px;
1667
- gap: 28px;
1668
- position: relative;
1669
- box-shadow: 0 25px 40px rgba(0,0,0,0.2);
1670
- }
1671
-
1672
- .modal-left {
1673
- background: #f8fafc;
1674
- border-radius: 28px;
1675
- width: 160px;
1676
- height: 160px;
1677
- display: flex;
1678
- align-items: center;
1679
- justify-content: center;
1680
- flex-shrink: 0;
1681
- }
1682
-
1683
- .modal-right {
1684
- flex: 1;
1685
- }
1686
-
1687
- .modal-title {
1688
- font-size: 24px;
1689
- font-weight: 700;
1690
- margin-bottom: 16px;
1691
- color: #0f172a;
1692
- }
1693
-
1694
- .modal-code {
1695
- background: #f1f5f9;
1696
- padding: 12px 16px;
1697
- border-radius: 16px;
1698
- overflow-x: auto;
1699
- margin: 16px 0;
1700
- }
1701
-
1702
- .modal-code pre {
1703
- margin: 0;
1704
- font-family: 'Menlo', monospace;
1705
- font-size: 13px;
1706
- color: #1e293b;
1707
- }
1708
-
1709
- .modal-buttons {
1710
- display: flex;
1711
- gap: 12px;
1712
- margin-top: 16px;
1713
- }
1714
-
1715
- .modal-buttons button {
1716
- background: white;
1717
- border: 1px solid #cbd5e1;
1718
- padding: 8px 18px;
1719
- border-radius: 40px;
1720
- font-size: 14px;
1721
- font-weight: 500;
1722
- cursor: pointer;
1723
- transition: all 0.2s;
1724
- }
1725
-
1726
- .modal-buttons button:hover {
1727
- background: #f1f5f9;
1728
- border-color: #94a3b8;
1729
- }
1730
-
1731
- .modal-close {
1732
- position: absolute;
1733
- top: 20px;
1734
- right: 24px;
1735
- background: none;
1736
- border: none;
1737
- font-size: 28px;
1738
- cursor: pointer;
1739
- color: #64748b;
1740
- width: 32px;
1741
- height: 32px;
1742
- display: flex;
1743
- align-items: center;
1744
- justify-content: center;
1745
- border-radius: 40px;
1746
- }
1747
-
1748
- .modal-close:hover {
1749
- background: #f1f5f9;
1750
- color: #0f172a;
1751
- }
1752
- </style>
1753
- ```
1754
754
 
755
+ ## 6 开发调试
1755
756
 
757
+ 代码仓库:
1756
758
 
1757
- ## 6 开发调试
759
+ - Gitee:https://gitee.com/candysweet-cdt/cadt-icons
760
+ - Github:https://github.com/OraSkyC/CaDtIcons
1758
761
 
1759
762
  如果你想本地开发或贡献图标:
1760
763
 
1761
764
  ```bash
1762
765
  git clone https://gitee.com/candysweet-cdt/cadt-icons.git
766
+ # 或
767
+ git clone https://github.com/OraSkyC/CaDtIcons.git
1763
768
  cd cadt-icons
1764
769
  npm install
1765
770
  # 将 SVG 放入 icons/ 目录(英文命名)
@@ -1774,7 +779,7 @@ npm link # 本地链接(供测试项目使用)
1774
779
 
1775
780
  [MIT](./LICENSE)
1776
781
 
1777
- ------
782
+
1778
783
 
1779
784
  ## 8 鸣谢
1780
785