@coffic/cosy-ui 0.6.12 → 0.6.14

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.
Files changed (149) hide show
  1. package/dist/app.css +1 -1
  2. package/dist/assets/iconData.ts +93 -0
  3. package/dist/components/base/Alert.astro +1 -1
  4. package/dist/components/base/Button.astro +102 -91
  5. package/dist/components/base/Image.astro +1 -1
  6. package/dist/components/base/Link.astro +1 -1
  7. package/dist/components/containers/Container.astro +1 -1
  8. package/dist/components/containers/Main.astro +1 -1
  9. package/dist/components/containers/Section.astro +96 -94
  10. package/dist/components/data-display/Blog.astro +1 -1
  11. package/dist/components/data-display/ProductCard.astro +2 -4
  12. package/dist/components/data-display/Products.astro +2 -2
  13. package/dist/components/data-display/TeamMember.astro +2 -4
  14. package/dist/components/data-display/TeamMembers.astro +1 -1
  15. package/dist/components/display/Banner.astro +1 -1
  16. package/dist/components/display/Card.astro +1 -1
  17. package/dist/components/display/CodeBlock.astro +1 -1
  18. package/dist/components/display/CodeExample.astro +1 -1
  19. package/dist/components/display/Hero.astro +1 -1
  20. package/dist/components/display/Modal.astro +1 -1
  21. package/dist/components/layouts/AppLayout.astro +2 -6
  22. package/dist/components/layouts/BaseLayout.astro +1 -1
  23. package/dist/components/layouts/DashboardLayout.astro +1 -1
  24. package/dist/components/layouts/Footer.astro +2 -5
  25. package/dist/components/layouts/Grid.astro +1 -1
  26. package/dist/components/layouts/Header.astro +1 -1
  27. package/dist/components/layouts/NavItems.astro +1 -1
  28. package/dist/components/layouts/Sidebar.astro +2 -2
  29. package/dist/components/layouts/SidebarNav.astro +1 -1
  30. package/dist/components/layouts/Stack.astro +72 -70
  31. package/dist/components/navigation/LanguageSwitcher.astro +2 -2
  32. package/dist/components/navigation/TableOfContents.astro +1 -1
  33. package/dist/components/navigation/ThemeSwitcher.astro +2 -2
  34. package/dist/components/typography/Article.astro +2 -2
  35. package/dist/components/typography/Heading.astro +2 -2
  36. package/dist/components/typography/Text.astro +1 -1
  37. package/dist/icons/AlertTriangle.astro +24 -0
  38. package/dist/icons/AstroIcon.astro +46 -0
  39. package/dist/icons/CalendarIcon.astro +24 -0
  40. package/dist/icons/CheckCircle.astro +23 -0
  41. package/dist/icons/CheckIcon.astro +27 -0
  42. package/dist/{components/icons → icons}/ChevronDownIcon.astro +3 -13
  43. package/dist/icons/ClipboardIcon.astro +27 -0
  44. package/dist/icons/CloseIcon.astro +27 -0
  45. package/dist/icons/ErrorIcon.astro +24 -0
  46. package/dist/icons/GithubIcon.astro +24 -0
  47. package/dist/icons/InfoCircle.astro +24 -0
  48. package/dist/icons/InfoIcon.astro +26 -0
  49. package/dist/icons/LinkIcon.astro +27 -0
  50. package/dist/icons/LinkedinIcon.astro +23 -0
  51. package/dist/icons/MenuIcon.astro +27 -0
  52. package/dist/icons/SearchIcon.astro +23 -0
  53. package/dist/icons/SettingsIcon.astro +18 -0
  54. package/dist/{components/icons → icons}/SocialIcon.astro +14 -14
  55. package/dist/icons/SuccessIcon.astro +24 -0
  56. package/dist/icons/SunCloudyIcon.astro +23 -0
  57. package/dist/icons/TwitterIcon.astro +24 -0
  58. package/dist/icons/UserIcon.astro +24 -0
  59. package/dist/icons/WarningIcon.astro +27 -0
  60. package/dist/icons/XCircle.astro +24 -0
  61. package/dist/index.ts +1 -1
  62. package/dist/index_icons.ts +23 -0
  63. package/dist/index_vue.ts +41 -0
  64. package/dist/vue/{AlertDialog.vue → AlertDialog/AlertDialog.vue} +1 -1
  65. package/dist/vue/AlertDialog/Basic.vue +38 -0
  66. package/dist/vue/AlertDialog/Multilang.vue +48 -0
  67. package/dist/vue/AlertDialog/index.ts +58 -0
  68. package/dist/vue/BannerBox/BannerBox.vue +435 -0
  69. package/dist/vue/BannerBox/Basic.vue +32 -0
  70. package/dist/vue/BannerBox/CustomBg.vue +32 -0
  71. package/dist/vue/BannerBox/CustomComponent.vue +60 -0
  72. package/dist/vue/BannerBox/DisplayMode.vue +49 -0
  73. package/dist/vue/{FeatureCard.vue → BannerBox/FeatureCard.vue} +23 -42
  74. package/dist/vue/BannerBox/ImageExport.vue +37 -0
  75. package/dist/vue/BannerBox/SizePreset.vue +35 -0
  76. package/dist/vue/BannerBox/SmartBanner.vue +44 -0
  77. package/dist/vue/BannerBox/index.ts +76 -0
  78. package/dist/vue/FeatureButton.vue +25 -26
  79. package/dist/vue/Icons/AlertTriangleIcon.vue +30 -0
  80. package/dist/vue/Icons/CalendarIcon.vue +30 -0
  81. package/dist/vue/Icons/CheckCircleIcon.vue +30 -0
  82. package/dist/vue/Icons/CheckIcon.vue +30 -0
  83. package/dist/vue/Icons/ChevronDownIcon.vue +30 -0
  84. package/dist/vue/Icons/ClipboardIcon.vue +30 -0
  85. package/dist/vue/Icons/CloseIcon.vue +30 -0
  86. package/dist/vue/Icons/InfoCircleIcon.vue +30 -0
  87. package/dist/vue/Icons/InfoIcon.vue +30 -0
  88. package/dist/vue/Icons/LinkIcon.vue +30 -0
  89. package/dist/vue/Icons/MenuIcon.vue +30 -0
  90. package/dist/vue/Icons/SearchIcon.vue +30 -0
  91. package/dist/vue/Icons/SettingsIcon.vue +30 -0
  92. package/dist/vue/Icons/UserIcon.vue +30 -0
  93. package/dist/vue/Icons/VueIcon.vue +76 -0
  94. package/dist/vue/Icons/XCircleIcon.vue +30 -0
  95. package/dist/vue/MacWindow/Basic.vue +11 -0
  96. package/dist/vue/MacWindow/CustomHeight.vue +13 -0
  97. package/dist/vue/{MacWindow.vue → MacWindow/MacWindow.vue} +70 -38
  98. package/dist/vue/MacWindow/WithEvents.vue +34 -0
  99. package/dist/vue/MacWindow/WithSidebar.vue +21 -0
  100. package/dist/vue/MacWindow/WithTabs.vue +21 -0
  101. package/dist/vue/MacWindow/WithToolbar.vue +43 -0
  102. package/dist/vue/MacWindow/index.ts +50 -0
  103. package/dist/vue/SmartHero.vue +28 -34
  104. package/dist/vue/VueCounter.vue +29 -0
  105. package/dist/vue/iPhone/Basic.vue +33 -0
  106. package/dist/vue/iPhone/CustomBackground.vue +33 -0
  107. package/dist/vue/iPhone/NoFrame.vue +33 -0
  108. package/dist/vue/iPhone/WeatherApp.vue +97 -0
  109. package/dist/vue/iPhone/assets/iPhone 14 Pro - Deep Purple - Landscape.png +0 -0
  110. package/dist/vue/iPhone/assets/iPhone 14 Pro - Deep Purple - Portrait.png +0 -0
  111. package/dist/vue/iPhone/assets/iPhone 14 Pro - Gold - Landscape.png +0 -0
  112. package/dist/vue/iPhone/assets/iPhone 14 Pro - Gold - Portrait.png +0 -0
  113. package/dist/vue/iPhone/assets/iPhone 14 Pro - Silver - Landscape.png +0 -0
  114. package/dist/vue/iPhone/assets/iPhone 14 Pro - Silver - Portrait.png +0 -0
  115. package/dist/vue/iPhone/assets/iPhone 14 Pro - Space Black - Landscape.png +0 -0
  116. package/dist/vue/iPhone/assets/iPhone 14 Pro - Space Black - Portrait.png +0 -0
  117. package/dist/vue/{iPhoneWindow.vue → iPhone/iPhoneWindow.vue} +11 -7
  118. package/dist/vue/iPhone/index.ts +41 -0
  119. package/dist/vue/shims-vue.d.ts +5 -0
  120. package/package.json +13 -12
  121. package/dist/components/icons/AlertTriangle.astro +0 -35
  122. package/dist/components/icons/CalendarIcon.astro +0 -38
  123. package/dist/components/icons/CheckCircle.astro +0 -36
  124. package/dist/components/icons/CheckIcon.astro +0 -38
  125. package/dist/components/icons/ClipboardIcon.astro +0 -39
  126. package/dist/components/icons/CloseIcon.astro +0 -38
  127. package/dist/components/icons/ErrorIcon.astro +0 -35
  128. package/dist/components/icons/GithubIcon.astro +0 -31
  129. package/dist/components/icons/InfoCircle.astro +0 -37
  130. package/dist/components/icons/InfoIcon.astro +0 -38
  131. package/dist/components/icons/LinkIcon.astro +0 -39
  132. package/dist/components/icons/LinkedinIcon.astro +0 -31
  133. package/dist/components/icons/MenuIcon.astro +0 -38
  134. package/dist/components/icons/SearchIcon.astro +0 -36
  135. package/dist/components/icons/SettingsIcon.astro +0 -36
  136. package/dist/components/icons/SuccessIcon.astro +0 -35
  137. package/dist/components/icons/SunCloudyIcon.astro +0 -41
  138. package/dist/components/icons/TwitterIcon.astro +0 -31
  139. package/dist/components/icons/UserIcon.astro +0 -35
  140. package/dist/components/icons/WarningIcon.astro +0 -38
  141. package/dist/components/icons/XCircle.astro +0 -37
  142. package/dist/entities/Banner.ts +0 -105
  143. package/dist/icons.ts +0 -22
  144. package/dist/vue/BannerBox.vue +0 -267
  145. package/dist/vue/FeatureGroup.vue +0 -22
  146. package/dist/vue/SmartBanner.vue +0 -45
  147. package/dist/vue/WildBanner.vue +0 -15
  148. package/dist/vue.ts +0 -14
  149. /package/dist/{collection.ts → index_collection.ts} +0 -0
@@ -1,35 +0,0 @@
1
- ---
2
- interface Props {
3
- /**
4
- * 图标的大小
5
- * @default "24px"
6
- */
7
- size?: string;
8
- /**
9
- * 图标的颜色
10
- * @default "currentColor"
11
- */
12
- color?: string;
13
- /**
14
- * 自定义类名
15
- */
16
- class?: string;
17
- }
18
-
19
- const { size = '24px', color = 'currentColor', class: className = '' } = Astro.props;
20
- ---
21
-
22
- <svg
23
- xmlns="http://www.w3.org/2000/svg"
24
- width={size}
25
- height={size}
26
- viewBox="0 0 24 24"
27
- fill="none"
28
- stroke={color}
29
- stroke-width="2"
30
- stroke-linecap="round"
31
- stroke-linejoin="round"
32
- class={className}
33
- >
34
- <path d="M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0 9 9 0 0118 0z" />
35
- </svg>
@@ -1,31 +0,0 @@
1
- ---
2
- interface Props {
3
- /**
4
- * 图标的大小
5
- * @default "24px"
6
- */
7
- size?: string;
8
- /**
9
- * 图标的颜色
10
- * @default "currentColor"
11
- */
12
- color?: string;
13
- /**
14
- * 自定义类名
15
- */
16
- class?: string;
17
- }
18
-
19
- const { size = '24px', color = 'currentColor', class: className = '' } = Astro.props;
20
- ---
21
-
22
- <svg
23
- xmlns="http://www.w3.org/2000/svg"
24
- width={size}
25
- height={size}
26
- viewBox="0 0 24 24"
27
- fill={color}
28
- class={className}
29
- >
30
- <path d="M12 0C5.374 0 0 5.373 0 12c0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23A11.509 11.509 0 0112 5.803c1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576C20.566 21.797 24 17.3 24 12c0-6.627-5.373-12-12-12z" />
31
- </svg>
@@ -1,37 +0,0 @@
1
- ---
2
- interface Props {
3
- /**
4
- * 图标的大小
5
- * @default "24px"
6
- */
7
- size?: string;
8
- /**
9
- * 图标的颜色
10
- * @default "currentColor"
11
- */
12
- color?: string;
13
- /**
14
- * 自定义类名
15
- */
16
- class?: string;
17
- }
18
-
19
- const { size = '24px', color = 'currentColor', class: className = '' } = Astro.props;
20
- ---
21
-
22
- <svg
23
- xmlns="http://www.w3.org/2000/svg"
24
- width={size}
25
- height={size}
26
- viewBox="0 0 24 24"
27
- fill="none"
28
- stroke={color}
29
- stroke-width="2"
30
- stroke-linecap="round"
31
- stroke-linejoin="round"
32
- class={className}
33
- >
34
- <circle cx="12" cy="12" r="10"></circle>
35
- <line x1="12" y1="16" x2="12" y2="12"></line>
36
- <line x1="12" y1="8" x2="12.01" y2="8"></line>
37
- </svg>
@@ -1,38 +0,0 @@
1
- ---
2
- /**
3
- * 信息图标组件
4
- */
5
- interface Props {
6
- /**
7
- * 图标的大小
8
- * @default "24px"
9
- */
10
- size?: string;
11
- /**
12
- * 图标的颜色
13
- * @default "currentColor"
14
- */
15
- color?: string;
16
- /**
17
- * 自定义类名
18
- */
19
- class?: string;
20
- }
21
-
22
- const { size = '24px', color = 'currentColor', class: className = '' } = Astro.props;
23
- ---
24
-
25
- <svg
26
- xmlns="http://www.w3.org/2000/svg"
27
- width={size}
28
- height={size}
29
- viewBox="0 0 24 24"
30
- fill="none"
31
- stroke={color}
32
- stroke-width="2"
33
- stroke-linecap="round"
34
- stroke-linejoin="round"
35
- class={className}
36
- >
37
- <path d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path>
38
- </svg>
@@ -1,39 +0,0 @@
1
- ---
2
- /**
3
- * 链接图标组件
4
- */
5
- interface Props {
6
- /**
7
- * 图标的大小
8
- * @default "24px"
9
- */
10
- size?: string;
11
- /**
12
- * 图标的颜色
13
- * @default "currentColor"
14
- */
15
- color?: string;
16
- /**
17
- * 自定义类名
18
- */
19
- class?: string;
20
- }
21
-
22
- const { size = '24px', color = 'currentColor', class: className = '' } = Astro.props;
23
- ---
24
-
25
- <svg
26
- xmlns="http://www.w3.org/2000/svg"
27
- width={size}
28
- height={size}
29
- viewBox="0 0 24 24"
30
- fill="none"
31
- stroke={color}
32
- stroke-width="2"
33
- stroke-linecap="round"
34
- stroke-linejoin="round"
35
- class={className}
36
- >
37
- <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path>
38
- <path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path>
39
- </svg>
@@ -1,31 +0,0 @@
1
- ---
2
- interface Props {
3
- /**
4
- * 图标的大小
5
- * @default "24px"
6
- */
7
- size?: string;
8
- /**
9
- * 图标的颜色
10
- * @default "currentColor"
11
- */
12
- color?: string;
13
- /**
14
- * 自定义类名
15
- */
16
- class?: string;
17
- }
18
-
19
- const { size = '24px', color = 'currentColor', class: className = '' } = Astro.props;
20
- ---
21
-
22
- <svg
23
- xmlns="http://www.w3.org/2000/svg"
24
- width={size}
25
- height={size}
26
- viewBox="0 0 24 24"
27
- fill={color}
28
- class={className}
29
- >
30
- <path d="M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433c-1.144 0-2.063-.926-2.063-2.065 0-1.138.92-2.063 2.063-2.063 1.14 0 2.064.925 2.064 2.063 0 1.139-.925 2.065-2.064 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z" />
31
- </svg>
@@ -1,38 +0,0 @@
1
- ---
2
- /**
3
- * 菜单图标组件
4
- */
5
- interface Props {
6
- /**
7
- * 图标的大小
8
- * @default "24px"
9
- */
10
- size?: string;
11
- /**
12
- * 图标的颜色
13
- * @default "currentColor"
14
- */
15
- color?: string;
16
- /**
17
- * 自定义类名
18
- */
19
- class?: string;
20
- }
21
-
22
- const { size = '24px', color = 'currentColor', class: className = '' } = Astro.props;
23
- ---
24
-
25
- <svg
26
- xmlns="http://www.w3.org/2000/svg"
27
- width={size}
28
- height={size}
29
- viewBox="0 0 24 24"
30
- fill="none"
31
- stroke={color}
32
- stroke-width="2"
33
- stroke-linecap="round"
34
- stroke-linejoin="round"
35
- class={className}
36
- >
37
- <path d="M4 6h16M4 12h16M4 18h16" />
38
- </svg>
@@ -1,36 +0,0 @@
1
- ---
2
- interface Props {
3
- /**
4
- * 图标的大小
5
- * @default "24px"
6
- */
7
- size?: string;
8
- /**
9
- * 图标的颜色
10
- * @default "currentColor"
11
- */
12
- color?: string;
13
- /**
14
- * 自定义类名
15
- */
16
- class?: string;
17
- }
18
-
19
- const { size = '24px', color = 'currentColor', class: className = '' } = Astro.props;
20
- ---
21
-
22
- <svg
23
- xmlns="http://www.w3.org/2000/svg"
24
- width={size}
25
- height={size}
26
- viewBox="0 0 24 24"
27
- fill="none"
28
- stroke={color}
29
- stroke-width="2"
30
- stroke-linecap="round"
31
- stroke-linejoin="round"
32
- class={className}>
33
- <circle cx="11" cy="11" r="8"></circle>
34
- <line x1="21" y1="21" x2="16.65" y2="16.65"></line>
35
- </svg>
36
-
@@ -1,36 +0,0 @@
1
- ---
2
- interface Props {
3
- class?: string;
4
- width?: string;
5
- height?: string;
6
- stroke?: string;
7
- fill?: string;
8
- strokeWidth?: string;
9
- }
10
-
11
- const {
12
- class: className,
13
- width = '24',
14
- height = '24',
15
- stroke = 'currentColor',
16
- fill = 'none',
17
- strokeWidth = '2',
18
- } = Astro.props;
19
- ---
20
-
21
- <svg
22
- xmlns="http://www.w3.org/2000/svg"
23
- class={className}
24
- width={width}
25
- height={height}
26
- viewBox="0 0 24 24"
27
- fill={fill}
28
- stroke={stroke}
29
- stroke-width={strokeWidth}
30
- stroke-linecap="round"
31
- stroke-linejoin="round">
32
- <circle cx="12" cy="12" r="3"></circle>
33
- <path
34
- d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"
35
- ></path>
36
- </svg>
@@ -1,35 +0,0 @@
1
- ---
2
- interface Props {
3
- /**
4
- * 图标的大小
5
- * @default "24px"
6
- */
7
- size?: string;
8
- /**
9
- * 图标的颜色
10
- * @default "currentColor"
11
- */
12
- color?: string;
13
- /**
14
- * 自定义类名
15
- */
16
- class?: string;
17
- }
18
-
19
- const { size = '24px', color = 'currentColor', class: className = '' } = Astro.props;
20
- ---
21
-
22
- <svg
23
- xmlns="http://www.w3.org/2000/svg"
24
- width={size}
25
- height={size}
26
- viewBox="0 0 24 24"
27
- fill="none"
28
- stroke={color}
29
- stroke-width="2"
30
- stroke-linecap="round"
31
- stroke-linejoin="round"
32
- class={className}
33
- >
34
- <path d="M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z" />
35
- </svg>
@@ -1,41 +0,0 @@
1
- ---
2
- interface Props {
3
- /**
4
- * 图标的大小
5
- * @default "24px"
6
- */
7
- size?: string;
8
- /**
9
- * 图标的颜色
10
- * @default "currentColor"
11
- */
12
- color?: string;
13
- /**
14
- * 自定义类名
15
- */
16
- class?: string;
17
- }
18
-
19
- const { size = '24px', color = 'currentColor', class: className = '' } = Astro.props;
20
- ---
21
-
22
- <svg
23
- xmlns="http://www.w3.org/2000/svg"
24
- width={size}
25
- height={size}
26
- viewBox="0 0 24 24"
27
- fill="none"
28
- stroke={color}
29
- stroke-width="2"
30
- stroke-linecap="round"
31
- stroke-linejoin="round"
32
- class={className}>
33
- <path d="M12 2v2"></path>
34
- <path d="M2 12h2"></path>
35
- <path d="M20 12h2"></path>
36
- <path d="M4.93 4.93l1.41 1.41"></path>
37
- <path d="M17.66 4.93l-1.41 1.41"></path>
38
- <path d="M12 19a4 4 0 100-8 4 4 0 000 8z"></path>
39
- <path d="M12 15a7 7 0 00-7 7h14a7 7 0 00-7-7z"></path>
40
- </svg>
41
-
@@ -1,31 +0,0 @@
1
- ---
2
- interface Props {
3
- /**
4
- * 图标的大小
5
- * @default "24px"
6
- */
7
- size?: string;
8
- /**
9
- * 图标的颜色
10
- * @default "currentColor"
11
- */
12
- color?: string;
13
- /**
14
- * 自定义类名
15
- */
16
- class?: string;
17
- }
18
-
19
- const { size = '24px', color = 'currentColor', class: className = '' } = Astro.props;
20
- ---
21
-
22
- <svg
23
- xmlns="http://www.w3.org/2000/svg"
24
- width={size}
25
- height={size}
26
- viewBox="0 0 24 24"
27
- fill={color}
28
- class={className}
29
- >
30
- <path d="M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z" />
31
- </svg>
@@ -1,35 +0,0 @@
1
- ---
2
- interface Props {
3
- /**
4
- * 图标的大小
5
- * @default "24px"
6
- */
7
- size?: string;
8
- /**
9
- * 图标的颜色
10
- * @default "currentColor"
11
- */
12
- color?: string;
13
- /**
14
- * 自定义类名
15
- */
16
- class?: string;
17
- }
18
-
19
- const { size = '24px', color = 'currentColor', class: className = '' } = Astro.props;
20
- ---
21
-
22
- <svg
23
- xmlns="http://www.w3.org/2000/svg"
24
- width={size}
25
- height={size}
26
- viewBox="0 0 24 24"
27
- fill="none"
28
- stroke={color}
29
- stroke-width="2"
30
- stroke-linecap="round"
31
- stroke-linejoin="round"
32
- class={className}
33
- >
34
- <path d="M16 7a4 4 0 11-8 0 4 4 0 018 0zM12 14a7 7 0 00-7 7h14a7 7 0 00-7-7z" />
35
- </svg>
@@ -1,38 +0,0 @@
1
- ---
2
- /**
3
- * 警告图标组件
4
- */
5
- interface Props {
6
- /**
7
- * 图标的大小
8
- * @default "24px"
9
- */
10
- size?: string;
11
- /**
12
- * 图标的颜色
13
- * @default "currentColor"
14
- */
15
- color?: string;
16
- /**
17
- * 自定义类名
18
- */
19
- class?: string;
20
- }
21
-
22
- const { size = '24px', color = 'currentColor', class: className = '' } = Astro.props;
23
- ---
24
-
25
- <svg
26
- xmlns="http://www.w3.org/2000/svg"
27
- width={size}
28
- height={size}
29
- viewBox="0 0 24 24"
30
- fill="none"
31
- stroke={color}
32
- stroke-width="2"
33
- stroke-linecap="round"
34
- stroke-linejoin="round"
35
- class={className}
36
- >
37
- <path d="M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z" />
38
- </svg>
@@ -1,37 +0,0 @@
1
- ---
2
- interface Props {
3
- /**
4
- * 图标的大小
5
- * @default "24px"
6
- */
7
- size?: string;
8
- /**
9
- * 图标的颜色
10
- * @default "currentColor"
11
- */
12
- color?: string;
13
- /**
14
- * 自定义类名
15
- */
16
- class?: string;
17
- }
18
-
19
- const { size = '24px', color = 'currentColor', class: className = '' } = Astro.props;
20
- ---
21
-
22
- <svg
23
- xmlns="http://www.w3.org/2000/svg"
24
- width={size}
25
- height={size}
26
- viewBox="0 0 24 24"
27
- fill="none"
28
- stroke={color}
29
- stroke-width="2"
30
- stroke-linecap="round"
31
- stroke-linejoin="round"
32
- class={className}
33
- >
34
- <circle cx="12" cy="12" r="10"></circle>
35
- <line x1="15" y1="9" x2="9" y2="15"></line>
36
- <line x1="9" y1="9" x2="15" y2="15"></line>
37
- </svg>
@@ -1,105 +0,0 @@
1
- import Feature from './Feature';
2
- import type { Component } from 'vue';
3
-
4
- class Banner {
5
- private translations: Map<string, {
6
- title: string,
7
- description: string
8
- }>;
9
- private features: Feature[];
10
- private component: Component | null;
11
- private componentProps: Record<string, unknown>;
12
-
13
- constructor() {
14
- this.translations = new Map();
15
- this.features = [];
16
- this.component = null;
17
- this.componentProps = {};
18
- // Initialize empty entries for both languages
19
- this.translations.set('zh-cn', { title: '', description: '' });
20
- this.translations.set('en', { title: '', description: '' });
21
- }
22
-
23
- static create(): Banner {
24
- return new Banner();
25
- }
26
-
27
- public setZhTitle(title: string): Banner {
28
- const current = this.translations.get('zh-cn') || { title: '', description: '' };
29
- this.translations.set('zh-cn', { ...current, title });
30
- return this;
31
- }
32
-
33
- public setEnTitle(title: string): Banner {
34
- const current = this.translations.get('en') || { title: '', description: '' };
35
- this.translations.set('en', { ...current, title });
36
- return this;
37
- }
38
-
39
- public setZhDescription(description: string): Banner {
40
- const current = this.translations.get('zh-cn') || { title: '', description: '' };
41
- this.translations.set('zh-cn', { ...current, description });
42
- return this;
43
- }
44
-
45
- public setEnDescription(description: string): Banner {
46
- const current = this.translations.get('en') || { title: '', description: '' };
47
- this.translations.set('en', { ...current, description });
48
- return this;
49
- }
50
-
51
- public appendFeature(feature: Feature): Banner {
52
- this.features.push(feature);
53
- return this;
54
- }
55
-
56
- public withFeatures(features: Feature[]): Banner {
57
- this.features.push(...features);
58
- return this;
59
- }
60
-
61
- // 获取指定语言的标题
62
- public getTitle(lang: string): string {
63
- return this.translations.get(lang)?.title || '';
64
- }
65
-
66
- // 获取指定语言的描述
67
- public getDescription(lang: string): string {
68
- return this.translations.get(lang)?.description || '';
69
- }
70
-
71
- // 获取指定语言的特性列表
72
- public getFeatures(): Feature[] {
73
- return this.features;
74
- }
75
-
76
- // 检查是否支持某种语言
77
- public hasLanguage(lang: string): boolean {
78
- return this.translations.has(lang);
79
- }
80
-
81
- // 获取所有支持的语言
82
- public getSupportedLanguages(): string[] {
83
- return Array.from(this.translations.keys());
84
- }
85
-
86
- public setComponent(component: Component): Banner {
87
- this.component = component;
88
- return this;
89
- }
90
-
91
- public getComponent(): Component | null {
92
- return this.component;
93
- }
94
-
95
- public setComponentProps(props: Record<string, unknown>): Banner {
96
- this.componentProps = props;
97
- return this;
98
- }
99
-
100
- public getComponentProps(): Record<string, unknown> {
101
- return this.componentProps;
102
- }
103
- }
104
-
105
- export default Banner;
package/dist/icons.ts DELETED
@@ -1,22 +0,0 @@
1
- export { default as SocialIcon } from './components/icons/SocialIcon.astro';
2
- export { default as TwitterIcon } from './components/icons/TwitterIcon.astro';
3
- export { default as UserIcon } from './components/icons/UserIcon.astro';
4
- export { default as WarningIcon } from './components/icons/WarningIcon.astro';
5
- export { default as XCircle } from './components/icons/XCircle.astro';
6
- export { default as InfoIcon } from './components/icons/InfoIcon.astro';
7
- export { default as LinkIcon } from './components/icons/LinkIcon.astro';
8
- export { default as LinkedinIcon } from './components/icons/LinkedinIcon.astro';
9
- export { default as MenuIcon } from './components/icons/MenuIcon.astro';
10
- export { default as SearchIcon } from './components/icons/SearchIcon.astro';
11
- export { default as SuccessIcon } from './components/icons/SuccessIcon.astro';
12
- export { default as SunCloudyIcon } from './components/icons/SunCloudyIcon.astro';
13
- export { default as AlertTriangle } from './components/icons/AlertTriangle.astro';
14
- export { default as CalendarIcon } from './components/icons/CalendarIcon.astro';
15
- export { default as CheckCircle } from './components/icons/CheckCircle.astro';
16
- export { default as CheckIcon } from './components/icons/CheckIcon.astro';
17
- export { default as ClipboardIcon } from './components/icons/ClipboardIcon.astro';
18
- export { default as CloseIcon } from './components/icons/CloseIcon.astro';
19
- export { default as ErrorIcon } from './components/icons/ErrorIcon.astro';
20
- export { default as GithubIcon } from './components/icons/GithubIcon.astro';
21
- export { default as InfoCircle } from './components/icons/InfoCircle.astro';
22
- export { default as SettingsIcon } from './components/icons/SettingsIcon.astro';