@coffic/cosy-ui 0.7.2 → 0.8.6

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 (607) hide show
  1. package/dist/app.css +1 -1
  2. package/dist/index-astro.ts +86 -0
  3. package/dist/index-collection.ts +104 -0
  4. package/dist/index-vue.ts +33 -0
  5. package/dist/{alert → src-astro/alert}/Alert.astro +39 -33
  6. package/dist/{alert → src-astro/alert}/EAlertBasic.astro +1 -1
  7. package/dist/{alert → src-astro/alert}/EAlertBasicContainer.astro +4 -4
  8. package/dist/src-astro/alert/EAlertCustomStyle.astro +16 -0
  9. package/dist/{alert → src-astro/alert}/EAlertCustomStyleContainer.astro +4 -4
  10. package/dist/src-astro/alert/EAlertError.astro +6 -0
  11. package/dist/src-astro/alert/EAlertInfo.astro +6 -0
  12. package/dist/src-astro/alert/EAlertSuccess.astro +6 -0
  13. package/dist/{alert → src-astro/alert}/EAlertTypesContainer.astro +21 -21
  14. package/dist/src-astro/alert/EAlertWarning.astro +6 -0
  15. package/dist/{alert → src-astro/alert}/EAlertWithTitle.astro +2 -2
  16. package/dist/{alert → src-astro/alert}/EAlertWithTitleContainer.astro +4 -4
  17. package/dist/{alert → src-astro/alert}/index.ts +9 -9
  18. package/dist/{article → src-astro/article}/Article.astro +17 -17
  19. package/dist/src-astro/article/ArticleBasic.astro +35 -0
  20. package/dist/{article → src-astro/article}/index.ts +1 -1
  21. package/dist/src-astro/assets/iconData.ts +117 -0
  22. package/dist/src-astro/banner/Banner.astro +174 -0
  23. package/dist/src-astro/banner/BannerAllAnimations.astro +10 -0
  24. package/dist/{banner → src-astro/banner}/BannerBasic.astro +1 -1
  25. package/dist/src-astro/banner/BannerCustomStyle.astro +8 -0
  26. package/dist/{banner → src-astro/banner}/BannerDanger.astro +1 -1
  27. package/dist/{banner → src-astro/banner}/BannerFadeIn.astro +1 -1
  28. package/dist/{banner → src-astro/banner}/BannerInfo.astro +1 -1
  29. package/dist/{banner → src-astro/banner}/BannerPrimary.astro +1 -1
  30. package/dist/{banner → src-astro/banner}/BannerSecondary.astro +1 -1
  31. package/dist/{banner → src-astro/banner}/BannerSlideUp.astro +1 -1
  32. package/dist/{banner → src-astro/banner}/BannerSuccess.astro +1 -1
  33. package/dist/{banner → src-astro/banner}/BannerWarning.astro +1 -1
  34. package/dist/{banner → src-astro/banner}/index.ts +15 -2
  35. package/dist/src-astro/button/Button.astro +192 -0
  36. package/dist/src-astro/button/ButtonBasic.astro +18 -0
  37. package/dist/{button → src-astro/button}/ButtonBasicContainer.astro +4 -4
  38. package/dist/src-astro/button/ButtonIconBoth.astro +9 -0
  39. package/dist/{button → src-astro/button}/ButtonIconLeft.astro +2 -2
  40. package/dist/{button → src-astro/button}/ButtonIconRight.astro +2 -2
  41. package/dist/{button → src-astro/button}/ButtonLinkContainer.astro +9 -9
  42. package/dist/{button → src-astro/button}/ButtonLinkExternal.astro +2 -2
  43. package/dist/src-astro/button/ButtonShapes.astro +23 -0
  44. package/dist/{button → src-astro/button}/ButtonShapesContainer.astro +16 -12
  45. package/dist/src-astro/button/ButtonSizes.astro +15 -0
  46. package/dist/{button → src-astro/button}/ButtonSizesContainer.astro +4 -4
  47. package/dist/src-astro/button/ButtonStates.astro +12 -0
  48. package/dist/{button → src-astro/button}/ButtonStatesContainer.astro +4 -4
  49. package/dist/src-astro/button/ButtonVariants.astro +14 -0
  50. package/dist/{button → src-astro/button}/ButtonVariantsContainer.astro +45 -36
  51. package/dist/{button → src-astro/button}/ButtonWidth.astro +2 -2
  52. package/dist/{button → src-astro/button}/ButtonWidthContainer.astro +9 -9
  53. package/dist/src-astro/button/ButtonWithIcons.astro +25 -0
  54. package/dist/{button → src-astro/button}/ButtonWithIconsContainer.astro +16 -12
  55. package/dist/{button → src-astro/button}/index_astro.ts +29 -31
  56. package/dist/{card → src-astro/card}/Card.astro +75 -15
  57. package/dist/src-astro/card/CardCourse.astro +34 -0
  58. package/dist/src-astro/card/ECardBasic.astro +13 -0
  59. package/dist/src-astro/card/ECardBasicContainer.astro +11 -0
  60. package/dist/src-astro/card/ECardClickable.astro +16 -0
  61. package/dist/src-astro/card/ECardClickableContainer.astro +11 -0
  62. package/dist/src-astro/card/ECardCompact.astro +13 -0
  63. package/dist/src-astro/card/ECardCompactContainer.astro +11 -0
  64. package/dist/src-astro/card/ECardCustomStyle.astro +17 -0
  65. package/dist/src-astro/card/ECardCustomStyleContainer.astro +11 -0
  66. package/dist/src-astro/card/ECardWithImage.astro +16 -0
  67. package/dist/src-astro/card/ECardWithImageContainer.astro +11 -0
  68. package/dist/src-astro/card/ECardWithSubtitle.astro +13 -0
  69. package/dist/src-astro/card/ECardWithSubtitleContainer.astro +11 -0
  70. package/dist/src-astro/card/index.ts +27 -0
  71. package/dist/src-astro/code-block/CodeBlock.astro +155 -0
  72. package/dist/src-astro/code-block/index.ts +1 -0
  73. package/dist/src-astro/code-container/CodeContainer.astro +280 -0
  74. package/dist/{code-container → src-astro/code-container}/ECodeContainerBasic.astro +3 -3
  75. package/dist/{code-container → src-astro/code-container}/ECodeContainerMultiple.astro +16 -16
  76. package/dist/{code-container → src-astro/code-container}/index.ts +2 -2
  77. package/dist/src-astro/code-example/CodeExample.astro +185 -0
  78. package/dist/src-astro/code-example/index.ts +1 -0
  79. package/dist/src-astro/contact/Contact.astro +321 -0
  80. package/dist/src-astro/contact/EContactBasic.astro +15 -0
  81. package/dist/src-astro/contact/EContactBasicContainer.astro +11 -0
  82. package/dist/src-astro/contact/EContactCompact.astro +11 -0
  83. package/dist/src-astro/contact/EContactCompactContainer.astro +11 -0
  84. package/dist/src-astro/contact/EContactCustomStyle.astro +21 -0
  85. package/dist/src-astro/contact/EContactCustomStyleContainer.astro +11 -0
  86. package/dist/src-astro/contact/EContactSocial.astro +20 -0
  87. package/dist/src-astro/contact/EContactSocialContainer.astro +11 -0
  88. package/dist/src-astro/contact/EContactWithTitle.astro +17 -0
  89. package/dist/src-astro/contact/EContactWithTitleContainer.astro +11 -0
  90. package/dist/src-astro/contact/index.ts +21 -0
  91. package/dist/src-astro/container/Container.astro +211 -0
  92. package/dist/src-astro/container/EContainerBasic.astro +15 -0
  93. package/dist/{container → src-astro/container}/EContainerBasicContainer.astro +4 -4
  94. package/dist/src-astro/container/EContainerFlexBetween.astro +23 -0
  95. package/dist/src-astro/container/EContainerFlexCenter.astro +30 -0
  96. package/dist/src-astro/container/EContainerFlexColumn.astro +23 -0
  97. package/dist/{container → src-astro/container}/EContainerFlexContainer.astro +20 -20
  98. package/dist/src-astro/container/EContainerFlexRow.astro +23 -0
  99. package/dist/src-astro/container/EContainerPadding.astro +32 -0
  100. package/dist/{container → src-astro/container}/EContainerPaddingContainer.astro +4 -4
  101. package/dist/src-astro/container/EContainerSizes.astro +36 -0
  102. package/dist/{container → src-astro/container}/EContainerSizesContainer.astro +4 -4
  103. package/dist/{container → src-astro/container}/index.ts +8 -8
  104. package/dist/{cosy.ts → src-astro/cosy.ts} +1 -1
  105. package/dist/src-astro/database/BaseDB.ts +264 -0
  106. package/dist/src-astro/database/BlogDB.ts +198 -0
  107. package/dist/src-astro/database/CourseDB.ts +90 -0
  108. package/dist/{database → src-astro/database}/ExperimentDB.ts +51 -47
  109. package/dist/{database → src-astro/database}/LessonDB.ts +51 -47
  110. package/dist/src-astro/database/MetaDB.ts +74 -0
  111. package/dist/src-astro/entities/BaseDoc.ts +207 -0
  112. package/dist/{entities → src-astro/entities}/BlogDoc.ts +50 -47
  113. package/dist/src-astro/entities/CourseDoc.ts +101 -0
  114. package/dist/src-astro/entities/ExperimentDoc.ts +119 -0
  115. package/dist/src-astro/entities/Feature.ts +53 -0
  116. package/dist/src-astro/entities/LessonDoc.ts +153 -0
  117. package/dist/src-astro/entities/MetaDoc.ts +93 -0
  118. package/dist/src-astro/entities/SidebarItem.ts +89 -0
  119. package/dist/src-astro/entities/Tag.ts +42 -0
  120. package/dist/src-astro/env.d.ts +42 -0
  121. package/dist/src-astro/errors/403.astro +135 -0
  122. package/dist/src-astro/errors/404.astro +124 -0
  123. package/dist/src-astro/errors/404Basic.astro +7 -0
  124. package/dist/src-astro/errors/500.astro +165 -0
  125. package/dist/src-astro/errors/503.astro +189 -0
  126. package/dist/src-astro/errors/E403Basic.astro +11 -0
  127. package/dist/src-astro/errors/E403BasicContainer.astro +20 -0
  128. package/dist/src-astro/errors/E404Basic.astro +11 -0
  129. package/dist/src-astro/errors/E404BasicContainer.astro +20 -0
  130. package/dist/src-astro/errors/E404WithDebug.astro +18 -0
  131. package/dist/src-astro/errors/E500Basic.astro +11 -0
  132. package/dist/src-astro/errors/E500BasicContainer.astro +20 -0
  133. package/dist/src-astro/errors/E503Maintenance.astro +20 -0
  134. package/dist/src-astro/errors/E503MaintenanceContainer.astro +21 -0
  135. package/dist/src-astro/errors/EErrorPageCustomStyle.astro +21 -0
  136. package/dist/src-astro/errors/EErrorPageCustomStyleContainer.astro +21 -0
  137. package/dist/src-astro/errors/EErrorPageShowcase.astro +68 -0
  138. package/dist/src-astro/errors/EErrorPageShowcaseContainer.astro +21 -0
  139. package/dist/src-astro/errors/ErrorPage.astro +119 -0
  140. package/dist/src-astro/errors/index.ts +77 -0
  141. package/dist/{flex → src-astro/flex}/Flex.astro +31 -31
  142. package/dist/src-astro/flex/FlexBasic.astro +26 -0
  143. package/dist/{flex → src-astro/flex}/index.ts +1 -1
  144. package/dist/src-astro/footer/EFooterBasic.astro +18 -0
  145. package/dist/{footer → src-astro/footer}/EFooterBasicContainer.astro +4 -4
  146. package/dist/src-astro/footer/EFooterComplete.astro +50 -0
  147. package/dist/{footer → src-astro/footer}/EFooterCompleteContainer.astro +4 -4
  148. package/dist/{footer → src-astro/footer}/EFooterFeaturesContainer.astro +24 -24
  149. package/dist/src-astro/footer/EFooterWithLogo.astro +28 -0
  150. package/dist/{footer → src-astro/footer}/EFooterWithLogoContainer.astro +4 -4
  151. package/dist/src-astro/footer/EFooterWithNavigation.astro +24 -0
  152. package/dist/{footer → src-astro/footer}/EFooterWithNavigationContainer.astro +4 -4
  153. package/dist/src-astro/footer/EFooterWithProducts.astro +24 -0
  154. package/dist/{footer → src-astro/footer}/EFooterWithProductsContainer.astro +4 -4
  155. package/dist/src-astro/footer/EFooterWithSocial.astro +24 -0
  156. package/dist/{footer → src-astro/footer}/EFooterWithSocialContainer.astro +4 -4
  157. package/dist/{footer → src-astro/footer}/Footer.astro +170 -158
  158. package/dist/src-astro/footer/FooterSection.astro +49 -0
  159. package/dist/{footer → src-astro/footer}/index.ts +11 -11
  160. package/dist/{grid → src-astro/grid}/Grid.astro +99 -99
  161. package/dist/src-astro/grid/GridBasic.astro +21 -0
  162. package/dist/{grid → src-astro/grid}/index.ts +1 -1
  163. package/dist/src-astro/header/Header.astro +209 -0
  164. package/dist/{header → src-astro/header}/HeaderBasic.astro +6 -1
  165. package/dist/src-astro/header/HeaderCustomNavbarCenter.astro +28 -0
  166. package/dist/src-astro/header/HeaderCustomNavbarEnd.astro +25 -0
  167. package/dist/src-astro/header/HeaderCustomNavbarStart.astro +27 -0
  168. package/dist/{header → src-astro/header}/HeaderCustomPosition.astro +17 -6
  169. package/dist/src-astro/header/HeaderWithNavigation.astro +27 -0
  170. package/dist/{header → src-astro/header}/index.ts +22 -8
  171. package/dist/src-astro/heading/Heading.astro +245 -0
  172. package/dist/{heading → src-astro/heading}/index.ts +1 -1
  173. package/dist/src-astro/hero/Hero.astro +381 -0
  174. package/dist/src-astro/hero/HeroAlignCenter.astro +13 -0
  175. package/dist/{hero → src-astro/hero}/HeroAlignContainer.astro +16 -12
  176. package/dist/src-astro/hero/HeroAlignLeft.astro +13 -0
  177. package/dist/src-astro/hero/HeroAlignRight.astro +13 -0
  178. package/dist/{hero → src-astro/hero}/HeroBackgroundContainer.astro +9 -9
  179. package/dist/src-astro/hero/HeroBackgroundImage.astro +16 -0
  180. package/dist/{hero → src-astro/hero}/HeroBackgroundImageContainer.astro +4 -4
  181. package/dist/src-astro/hero/HeroBasic.astro +12 -0
  182. package/dist/{hero → src-astro/hero}/HeroBasicContainer.astro +4 -4
  183. package/dist/src-astro/hero/HeroGradientBackground.astro +10 -0
  184. package/dist/src-astro/hero/HeroPlainBackground.astro +10 -0
  185. package/dist/src-astro/hero/HeroWithButton.astro +15 -0
  186. package/dist/{hero → src-astro/hero}/HeroWithButtonContainer.astro +4 -4
  187. package/dist/src-astro/hero/HeroWithImage.astro +16 -0
  188. package/dist/{hero → src-astro/hero}/HeroWithImageContainer.astro +4 -4
  189. package/dist/{hero → src-astro/hero}/index.ts +19 -19
  190. package/dist/src-astro/icons/AlertTriangle.astro +28 -0
  191. package/dist/src-astro/icons/AstroIcon.astro +62 -0
  192. package/dist/src-astro/icons/CalendarIcon.astro +28 -0
  193. package/dist/src-astro/icons/CheckCircle.astro +27 -0
  194. package/dist/src-astro/icons/CheckIcon.astro +31 -0
  195. package/dist/src-astro/icons/ChevronDownIcon.astro +28 -0
  196. package/dist/src-astro/icons/ClipboardIcon.astro +31 -0
  197. package/dist/src-astro/icons/CloseIcon.astro +31 -0
  198. package/dist/src-astro/icons/ErrorIcon.astro +28 -0
  199. package/dist/src-astro/icons/GithubIcon.astro +25 -0
  200. package/dist/src-astro/icons/InboxArchive.astro +27 -0
  201. package/dist/src-astro/icons/InfoCircle.astro +28 -0
  202. package/dist/src-astro/icons/InfoIcon.astro +30 -0
  203. package/dist/src-astro/icons/LinkIcon.astro +31 -0
  204. package/dist/src-astro/icons/LinkedinIcon.astro +27 -0
  205. package/dist/src-astro/icons/MenuIcon.astro +31 -0
  206. package/dist/src-astro/icons/SearchIcon.astro +27 -0
  207. package/dist/{icons → src-astro/icons}/SettingsIcon.astro +8 -8
  208. package/dist/{icons → src-astro/icons}/SocialIcon.astro +36 -36
  209. package/dist/src-astro/icons/SuccessIcon.astro +28 -0
  210. package/dist/src-astro/icons/SunCloudyIcon.astro +27 -0
  211. package/dist/src-astro/icons/TwitterIcon.astro +28 -0
  212. package/dist/src-astro/icons/UserIcon.astro +28 -0
  213. package/dist/src-astro/icons/WarningIcon.astro +31 -0
  214. package/dist/src-astro/icons/XCircle.astro +28 -0
  215. package/dist/src-astro/icons/index.ts +25 -0
  216. package/dist/src-astro/image/Image.astro +338 -0
  217. package/dist/src-astro/image/ImageBasic.astro +0 -0
  218. package/dist/src-astro/image/ImageEffects.astro +34 -0
  219. package/dist/src-astro/image/ImageLoading.astro +37 -0
  220. package/dist/{image → src-astro/image}/index.ts +3 -3
  221. package/dist/src-astro/integration.ts +14 -0
  222. package/dist/{language-switcher → src-astro/language-switcher}/LanguageSwitcher.astro +22 -22
  223. package/dist/{language-switcher → src-astro/language-switcher}/LanguageSwitcherBasic.astro +1 -1
  224. package/dist/{language-switcher → src-astro/language-switcher}/index.ts +1 -1
  225. package/dist/{layout-app → src-astro/layout-app}/AppLayout.astro +83 -75
  226. package/dist/src-astro/layout-app/AppLayoutBasic.astro +54 -0
  227. package/dist/{layout-app → src-astro/layout-app}/index.ts +1 -1
  228. package/dist/{layout-basic → src-astro/layout-basic}/BaseLayout.astro +35 -31
  229. package/dist/src-astro/layout-basic/BaseLayoutBasic.astro +17 -0
  230. package/dist/{layout-basic → src-astro/layout-basic}/index.ts +1 -1
  231. package/dist/src-astro/layout-dashboard/DashboardLayout.astro +686 -0
  232. package/dist/src-astro/layout-dashboard/DashboardLayoutBasic.astro +51 -0
  233. package/dist/{layout-dashboard → src-astro/layout-dashboard}/index.ts +1 -1
  234. package/dist/{link → src-astro/link}/Link.astro +72 -57
  235. package/dist/src-astro/link/LinkAnimations.astro +29 -0
  236. package/dist/src-astro/link/LinkBasic.astro +17 -0
  237. package/dist/src-astro/link/LinkVariants.astro +20 -0
  238. package/dist/{link → src-astro/link}/index.ts +3 -3
  239. package/dist/{main → src-astro/main}/Main.astro +68 -60
  240. package/dist/src-astro/main/index.ts +1 -0
  241. package/dist/src-astro/modal/Modal.astro +126 -0
  242. package/dist/src-astro/modal/index.ts +1 -0
  243. package/dist/{module → src-astro/module}/Module.astro +30 -23
  244. package/dist/src-astro/module/ModuleBasic.astro +12 -0
  245. package/dist/src-astro/module/ModuleCustom.astro +14 -0
  246. package/dist/src-astro/module/ModuleGrid.astro +27 -0
  247. package/dist/{module → src-astro/module}/index.ts +3 -3
  248. package/dist/src-astro/nav-item/NavItems.astro +44 -0
  249. package/dist/src-astro/nav-item/NavItemsBasic.astro +30 -0
  250. package/dist/{nav-item → src-astro/nav-item}/index.ts +1 -1
  251. package/dist/src-astro/nav-section/NavSection.astro +41 -0
  252. package/dist/src-astro/nav-section/NavSectionBasic.astro +12 -0
  253. package/dist/{nav-section → src-astro/nav-section}/index.ts +1 -1
  254. package/dist/src-astro/products/ProductCard.astro +374 -0
  255. package/dist/src-astro/products/Products.astro +200 -0
  256. package/dist/src-astro/products/index.ts +2 -0
  257. package/dist/src-astro/section/Section.astro +150 -0
  258. package/dist/src-astro/section/index.ts +1 -0
  259. package/dist/src-astro/sidebar/Sidebar.astro +192 -0
  260. package/dist/src-astro/sidebar/SidebarBasic.astro +0 -0
  261. package/dist/{sidebar → src-astro/sidebar}/index.ts +1 -1
  262. package/dist/src-astro/sidebar-nav/SidebarNav.astro +136 -0
  263. package/dist/src-astro/sidebar-nav/SidebarNavBasic.astro +32 -0
  264. package/dist/{sidebar-nav → src-astro/sidebar-nav}/index.ts +1 -1
  265. package/dist/src-astro/speak/Speak.astro +73 -0
  266. package/dist/src-astro/speak/SpeakBasic.astro +13 -0
  267. package/dist/src-astro/speak/SpeakGrid.astro +30 -0
  268. package/dist/{speak → src-astro/speak}/index.ts +2 -2
  269. package/dist/{stack → src-astro/stack}/Stack.astro +67 -65
  270. package/dist/src-astro/stack/StackBasic.astro +21 -0
  271. package/dist/{stack → src-astro/stack}/index.ts +1 -1
  272. package/dist/src-astro/team-member/TeamMember.astro +137 -0
  273. package/dist/src-astro/team-member/TeamMemberBasic.astro +25 -0
  274. package/dist/src-astro/team-member/TeamMemberCustomStyle.astro +26 -0
  275. package/dist/src-astro/team-member/TeamMemberGroup.astro +60 -0
  276. package/dist/src-astro/team-member/TeamMemberWithSocial.astro +30 -0
  277. package/dist/{team-member → src-astro/team-member}/TeamMembers.astro +40 -48
  278. package/dist/{team-member → src-astro/team-member}/index.ts +9 -2
  279. package/dist/{text → src-astro/text}/Text.astro +50 -50
  280. package/dist/{text → src-astro/text}/TextBasic.astro +1 -1
  281. package/dist/src-astro/text/TextSizes.astro +11 -0
  282. package/dist/{text → src-astro/text}/index.ts +1 -1
  283. package/dist/{theme-switcher → src-astro/theme-switcher}/ThemeItem.astro +20 -20
  284. package/dist/src-astro/theme-switcher/ThemeSwitcher.astro +121 -0
  285. package/dist/{theme-switcher → src-astro/theme-switcher}/ThemeSwitcherBasic.astro +1 -1
  286. package/dist/{theme-switcher → src-astro/theme-switcher}/index.ts +1 -1
  287. package/dist/src-astro/toc/TableOfContents.astro +438 -0
  288. package/dist/src-astro/toc/TableOfContentsBasic.astro +25 -0
  289. package/dist/{toc → src-astro/toc}/index.ts +1 -1
  290. package/dist/src-astro/types/article.ts +22 -0
  291. package/dist/src-astro/types/footer.ts +129 -0
  292. package/dist/src-astro/types/header.ts +87 -0
  293. package/dist/src-astro/types/heading.ts +13 -0
  294. package/dist/{types → src-astro/types}/image.ts +4 -4
  295. package/dist/src-astro/types/layout.ts +71 -0
  296. package/dist/src-astro/types/main.ts +86 -0
  297. package/dist/src-astro/types/menu.ts +24 -0
  298. package/dist/src-astro/types/meta.ts +55 -0
  299. package/dist/src-astro/types/product.ts +10 -0
  300. package/dist/src-astro/types/sidebar.ts +59 -0
  301. package/dist/src-astro/types/static-path.ts +8 -0
  302. package/dist/src-astro/utils/component.ts +42 -0
  303. package/dist/src-astro/utils/i18n.ts +83 -0
  304. package/dist/src-astro/utils/image.ts +128 -0
  305. package/dist/src-astro/utils/lang_entry.ts +240 -0
  306. package/dist/src-astro/utils/lang_package.ts +150 -0
  307. package/dist/src-astro/utils/language.ts +121 -0
  308. package/dist/src-astro/utils/link.ts +250 -0
  309. package/dist/src-astro/utils/logger.ts +136 -0
  310. package/dist/src-astro/utils/path.ts +59 -0
  311. package/dist/src-astro/utils/social.ts +90 -0
  312. package/dist/src-astro/utils/theme.ts +122 -0
  313. package/dist/{utils → src-astro/utils}/url.ts +2 -2
  314. package/dist/vue/SmartLink.vue +21 -0
  315. package/dist/vue/TagList.vue +23 -0
  316. package/dist/vue/alert-dialog-vue/AlertDialog.vue +130 -0
  317. package/dist/vue/alert-dialog-vue/Basic.vue +38 -0
  318. package/dist/vue/alert-dialog-vue/Multilang.vue +58 -0
  319. package/dist/vue/alert-dialog-vue/index.ts +20 -0
  320. package/dist/vue/banner-box-vue/BannerBox.vue +336 -0
  321. package/dist/vue/banner-box-vue/DownloadButton.vue +244 -0
  322. package/dist/vue/banner-box-vue/ExampleBasic.vue +34 -0
  323. package/dist/vue/banner-box-vue/ExampleCustomBg.vue +34 -0
  324. package/dist/vue/banner-box-vue/ExampleDisplayModeAlways.vue +36 -0
  325. package/dist/vue/banner-box-vue/ExampleDisplayModeHover.vue +36 -0
  326. package/dist/vue/banner-box-vue/ExampleDisplayModeNever.vue +36 -0
  327. package/dist/vue/banner-box-vue/ExampleImageExport.vue +42 -0
  328. package/dist/vue/banner-box-vue/ExampleSizePreset.vue +39 -0
  329. package/dist/vue/banner-box-vue/FeatureCard.vue +205 -0
  330. package/dist/vue/banner-box-vue/SmartBanner.vue +48 -0
  331. package/dist/vue/banner-box-vue/bgStyles.ts +55 -0
  332. package/dist/vue/banner-box-vue/index.ts +48 -0
  333. package/dist/vue/banner-box-vue/sizePresets.ts +23 -0
  334. package/dist/vue/blog-vue/Basic.vue +30 -0
  335. package/dist/vue/blog-vue/BlogList.vue +102 -0
  336. package/dist/vue/blog-vue/Empty.vue +8 -0
  337. package/dist/vue/blog-vue/EmptyEnglish.vue +8 -0
  338. package/dist/vue/blog-vue/English.vue +24 -0
  339. package/dist/vue/blog-vue/index.ts +29 -0
  340. package/dist/vue/buttons-vue/Button.vue +105 -0
  341. package/dist/vue/buttons-vue/ButtonBasic.vue +11 -0
  342. package/dist/vue/buttons-vue/ButtonFeature.vue +100 -0
  343. package/dist/vue/buttons-vue/ButtonFeatureBasic.vue +8 -0
  344. package/dist/vue/buttons-vue/ButtonFeatureWithTips.vue +7 -0
  345. package/dist/vue/buttons-vue/ButtonLink.vue +13 -0
  346. package/dist/vue/buttons-vue/ButtonSizes.vue +12 -0
  347. package/dist/{button → vue/buttons-vue}/ButtonVariants.vue +2 -2
  348. package/dist/vue/buttons-vue/ButtonWithIcons.vue +21 -0
  349. package/dist/vue/buttons-vue/index.ts +1 -0
  350. package/dist/vue/confirm-dialog-vue/Basic.vue +62 -0
  351. package/dist/vue/confirm-dialog-vue/ConfirmDialog.vue +147 -0
  352. package/dist/vue/confirm-dialog-vue/CustomButtons.vue +81 -0
  353. package/dist/vue/confirm-dialog-vue/index.ts +20 -0
  354. package/dist/vue/cosy.ts +6 -0
  355. package/dist/vue/counter-vue/VueCounter.vue +29 -0
  356. package/dist/vue/counter-vue/index.ts +1 -0
  357. package/dist/vue/iPhone-vue/Basic.vue +33 -0
  358. package/dist/vue/iPhone-vue/CustomBackground.vue +35 -0
  359. package/dist/vue/iPhone-vue/NoFrame.vue +33 -0
  360. package/dist/vue/iPhone-vue/WeatherApp.vue +143 -0
  361. package/dist/vue/iPhone-vue/assets/iPhone 14 Pro - Deep Purple - Landscape.png +0 -0
  362. package/dist/vue/iPhone-vue/assets/iPhone 14 Pro - Deep Purple - Portrait.png +0 -0
  363. package/dist/vue/iPhone-vue/assets/iPhone 14 Pro - Gold - Landscape.png +0 -0
  364. package/dist/vue/iPhone-vue/assets/iPhone 14 Pro - Gold - Portrait.png +0 -0
  365. package/dist/vue/iPhone-vue/assets/iPhone 14 Pro - Silver - Landscape.png +0 -0
  366. package/dist/vue/iPhone-vue/assets/iPhone 14 Pro - Silver - Portrait.png +0 -0
  367. package/dist/vue/iPhone-vue/assets/iPhone 14 Pro - Space Black - Landscape.png +0 -0
  368. package/dist/vue/iPhone-vue/assets/iPhone 14 Pro - Space Black - Portrait.png +0 -0
  369. package/dist/vue/iPhone-vue/iPhoneWindow.vue +247 -0
  370. package/dist/vue/iPhone-vue/index.ts +31 -0
  371. package/dist/vue/icons-vue/AlertTriangleIcon.vue +30 -0
  372. package/dist/vue/icons-vue/CalendarIcon.vue +30 -0
  373. package/dist/vue/icons-vue/CheckCircleIcon.vue +30 -0
  374. package/dist/vue/icons-vue/CheckIcon.vue +30 -0
  375. package/dist/vue/icons-vue/ChevronDownIcon.vue +30 -0
  376. package/dist/vue/icons-vue/ClipboardIcon.vue +30 -0
  377. package/dist/vue/icons-vue/CloseIcon.vue +30 -0
  378. package/dist/vue/icons-vue/InboxArchiveIcon.vue +30 -0
  379. package/dist/vue/icons-vue/InfoCircleIcon.vue +30 -0
  380. package/dist/vue/icons-vue/InfoIcon.vue +30 -0
  381. package/dist/vue/icons-vue/LinkIcon.vue +30 -0
  382. package/dist/vue/icons-vue/MenuIcon.vue +30 -0
  383. package/dist/vue/icons-vue/SearchIcon.vue +30 -0
  384. package/dist/vue/icons-vue/SettingsIcon.vue +30 -0
  385. package/dist/vue/icons-vue/UserIcon.vue +30 -0
  386. package/dist/vue/icons-vue/VueIcon.vue +86 -0
  387. package/dist/vue/icons-vue/XCircleIcon.vue +30 -0
  388. package/dist/vue/icons-vue/index.ts +1 -0
  389. package/dist/vue/list-vue/ListItem.vue +5 -0
  390. package/dist/vue/list-vue/index.ts +1 -0
  391. package/dist/vue/mac-window-vue/Basic.vue +9 -0
  392. package/dist/vue/mac-window-vue/CustomHeight.vue +13 -0
  393. package/dist/vue/mac-window-vue/MacWindow.vue +283 -0
  394. package/dist/vue/mac-window-vue/WithEvents.vue +40 -0
  395. package/dist/vue/mac-window-vue/WithSidebar.vue +31 -0
  396. package/dist/vue/mac-window-vue/WithTabs.vue +26 -0
  397. package/dist/vue/mac-window-vue/WithToolbar.vue +44 -0
  398. package/dist/vue/mac-window-vue/index.ts +36 -0
  399. package/dist/vue/utils/component.ts +42 -0
  400. package/dist/vue/utils/i18n.ts +83 -0
  401. package/dist/vue/utils/image.ts +128 -0
  402. package/dist/vue/utils/lang_entry.ts +240 -0
  403. package/dist/vue/utils/lang_package.ts +150 -0
  404. package/dist/vue/utils/language.ts +121 -0
  405. package/dist/vue/utils/link.ts +250 -0
  406. package/dist/vue/utils/logger.ts +136 -0
  407. package/dist/vue/utils/path.ts +59 -0
  408. package/dist/vue/utils/social.ts +90 -0
  409. package/dist/vue/utils/theme.ts +122 -0
  410. package/dist/vue/utils/url.ts +17 -0
  411. package/package.json +85 -82
  412. package/LICENSE +0 -21
  413. package/README.md +0 -31
  414. package/dist/alert/EAlertCustomStyle.astro +0 -14
  415. package/dist/alert/EAlertError.astro +0 -6
  416. package/dist/alert/EAlertInfo.astro +0 -6
  417. package/dist/alert/EAlertSuccess.astro +0 -6
  418. package/dist/alert/EAlertWarning.astro +0 -6
  419. package/dist/article/ArticleBasic.astro +0 -31
  420. package/dist/assets/iconData.ts +0 -116
  421. package/dist/banner/Banner.astro +0 -165
  422. package/dist/banner/BannerAllAnimations.astro +0 -10
  423. package/dist/banner/BannerCustomStyle.astro +0 -7
  424. package/dist/blog/Blog.astro +0 -249
  425. package/dist/blog/index.ts +0 -1
  426. package/dist/button/Button.astro +0 -192
  427. package/dist/button/ButtonBasic.astro +0 -18
  428. package/dist/button/ButtonIconBoth.astro +0 -9
  429. package/dist/button/ButtonShapes.astro +0 -23
  430. package/dist/button/ButtonSizes.astro +0 -15
  431. package/dist/button/ButtonStates.astro +0 -12
  432. package/dist/button/ButtonVariants.astro +0 -14
  433. package/dist/button/ButtonWithIcons.astro +0 -25
  434. package/dist/card/CardCompact.astro +0 -77
  435. package/dist/card/CardCourse.astro +0 -32
  436. package/dist/card/CardLink.astro +0 -75
  437. package/dist/card/CardWithImage.astro +0 -39
  438. package/dist/card/index.ts +0 -7
  439. package/dist/code-block/CodeBlock.astro +0 -152
  440. package/dist/code-block/index.ts +0 -1
  441. package/dist/code-container/CodeContainer.astro +0 -254
  442. package/dist/code-example/CodeExample.astro +0 -157
  443. package/dist/code-example/index.ts +0 -1
  444. package/dist/container/Container.astro +0 -211
  445. package/dist/container/EContainerBasic.astro +0 -13
  446. package/dist/container/EContainerFlexBetween.astro +0 -16
  447. package/dist/container/EContainerFlexCenter.astro +0 -23
  448. package/dist/container/EContainerFlexColumn.astro +0 -16
  449. package/dist/container/EContainerFlexRow.astro +0 -16
  450. package/dist/container/EContainerPadding.astro +0 -32
  451. package/dist/container/EContainerSizes.astro +0 -36
  452. package/dist/database/BaseDB.ts +0 -231
  453. package/dist/database/BlogDB.ts +0 -198
  454. package/dist/database/CourseDB.ts +0 -84
  455. package/dist/database/MetaDB.ts +0 -74
  456. package/dist/entities/BaseDoc.ts +0 -195
  457. package/dist/entities/CourseDoc.ts +0 -96
  458. package/dist/entities/ExperimentDoc.ts +0 -114
  459. package/dist/entities/Feature.ts +0 -53
  460. package/dist/entities/LessonDoc.ts +0 -148
  461. package/dist/entities/MetaDoc.ts +0 -90
  462. package/dist/entities/SidebarItem.ts +0 -89
  463. package/dist/entities/Tag.ts +0 -42
  464. package/dist/env.d.ts +0 -32
  465. package/dist/errors/404.astro +0 -27
  466. package/dist/errors/404Basic.astro +0 -5
  467. package/dist/errors/index.ts +0 -11
  468. package/dist/flex/FlexBasic.astro +0 -9
  469. package/dist/footer/EFooterBasic.astro +0 -18
  470. package/dist/footer/EFooterComplete.astro +0 -45
  471. package/dist/footer/EFooterWithLogo.astro +0 -23
  472. package/dist/footer/EFooterWithNavigation.astro +0 -24
  473. package/dist/footer/EFooterWithProducts.astro +0 -24
  474. package/dist/footer/EFooterWithSocial.astro +0 -24
  475. package/dist/footer/FooterSection.astro +0 -48
  476. package/dist/grid/GridBasic.astro +0 -9
  477. package/dist/header/Header.astro +0 -204
  478. package/dist/header/HeaderCustomNavbarCenter.astro +0 -23
  479. package/dist/header/HeaderCustomNavbarEnd.astro +0 -20
  480. package/dist/header/HeaderCustomNavbarStart.astro +0 -20
  481. package/dist/header/HeaderWithNavigation.astro +0 -22
  482. package/dist/heading/Heading.astro +0 -238
  483. package/dist/hero/Hero.astro +0 -368
  484. package/dist/hero/HeroAlignCenter.astro +0 -13
  485. package/dist/hero/HeroAlignLeft.astro +0 -13
  486. package/dist/hero/HeroAlignRight.astro +0 -13
  487. package/dist/hero/HeroBackgroundImage.astro +0 -12
  488. package/dist/hero/HeroBasic.astro +0 -12
  489. package/dist/hero/HeroGradientBackground.astro +0 -10
  490. package/dist/hero/HeroPlainBackground.astro +0 -10
  491. package/dist/hero/HeroWithButton.astro +0 -11
  492. package/dist/hero/HeroWithImage.astro +0 -16
  493. package/dist/icons/AlertTriangle.astro +0 -24
  494. package/dist/icons/AstroIcon.astro +0 -61
  495. package/dist/icons/CalendarIcon.astro +0 -24
  496. package/dist/icons/CheckCircle.astro +0 -23
  497. package/dist/icons/CheckIcon.astro +0 -27
  498. package/dist/icons/ChevronDownIcon.astro +0 -24
  499. package/dist/icons/ClipboardIcon.astro +0 -27
  500. package/dist/icons/CloseIcon.astro +0 -27
  501. package/dist/icons/ErrorIcon.astro +0 -24
  502. package/dist/icons/GithubIcon.astro +0 -19
  503. package/dist/icons/InboxArchive.astro +0 -23
  504. package/dist/icons/InfoCircle.astro +0 -24
  505. package/dist/icons/InfoIcon.astro +0 -26
  506. package/dist/icons/LinkIcon.astro +0 -27
  507. package/dist/icons/LinkedinIcon.astro +0 -23
  508. package/dist/icons/MenuIcon.astro +0 -27
  509. package/dist/icons/SearchIcon.astro +0 -23
  510. package/dist/icons/SuccessIcon.astro +0 -24
  511. package/dist/icons/SunCloudyIcon.astro +0 -23
  512. package/dist/icons/TwitterIcon.astro +0 -24
  513. package/dist/icons/UserIcon.astro +0 -24
  514. package/dist/icons/WarningIcon.astro +0 -27
  515. package/dist/icons/XCircle.astro +0 -24
  516. package/dist/icons/index.ts +0 -3
  517. package/dist/image/Image.astro +0 -342
  518. package/dist/image/ImageBasic.astro +0 -1
  519. package/dist/image/ImageEffects.astro +0 -32
  520. package/dist/image/ImageLoading.astro +0 -35
  521. package/dist/index.ts +0 -3
  522. package/dist/index_astro.ts +0 -68
  523. package/dist/index_collection.ts +0 -104
  524. package/dist/index_icons.ts +0 -24
  525. package/dist/index_utils.ts +0 -8
  526. package/dist/index_vue.ts +0 -44
  527. package/dist/integration.ts +0 -14
  528. package/dist/layout-app/AppLayoutBasic.astro +0 -53
  529. package/dist/layout-basic/BaseLayoutBasic.astro +0 -16
  530. package/dist/layout-dashboard/DashboardLayout.astro +0 -671
  531. package/dist/layout-dashboard/DashboardLayoutBasic.astro +0 -48
  532. package/dist/link/LinkAnimations.astro +0 -21
  533. package/dist/link/LinkBasic.astro +0 -17
  534. package/dist/link/LinkVariants.astro +0 -20
  535. package/dist/main/index.ts +0 -1
  536. package/dist/modal/Modal.astro +0 -119
  537. package/dist/modal/index.ts +0 -1
  538. package/dist/module/ModuleBasic.astro +0 -12
  539. package/dist/module/ModuleCustom.astro +0 -14
  540. package/dist/module/ModuleGrid.astro +0 -26
  541. package/dist/nav-item/NavItems.astro +0 -44
  542. package/dist/nav-item/NavItemsBasic.astro +0 -27
  543. package/dist/nav-section/NavSection.astro +0 -42
  544. package/dist/nav-section/NavSectionBasic.astro +0 -12
  545. package/dist/products/ProductCard.astro +0 -375
  546. package/dist/products/Products.astro +0 -195
  547. package/dist/products/index.ts +0 -2
  548. package/dist/section/Section.astro +0 -140
  549. package/dist/section/index.ts +0 -1
  550. package/dist/sidebar/Sidebar.astro +0 -174
  551. package/dist/sidebar/SidebarBasic.astro +0 -1
  552. package/dist/sidebar-nav/SidebarNav.astro +0 -117
  553. package/dist/sidebar-nav/SidebarNavBasic.astro +0 -32
  554. package/dist/speak/Speak.astro +0 -65
  555. package/dist/speak/SpeakBasic.astro +0 -13
  556. package/dist/speak/SpeakGrid.astro +0 -29
  557. package/dist/stack/StackBasic.astro +0 -15
  558. package/dist/team-member/TeamMember.astro +0 -135
  559. package/dist/team-member/TeamMemberBasic.astro +0 -25
  560. package/dist/team-member/TeamMemberCustomStyle.astro +0 -26
  561. package/dist/team-member/TeamMemberGroup.astro +0 -60
  562. package/dist/team-member/TeamMemberWithSocial.astro +0 -30
  563. package/dist/text/TextSizes.astro +0 -11
  564. package/dist/theme-switcher/ThemeSwitcher.astro +0 -120
  565. package/dist/toc/TableOfContents.astro +0 -405
  566. package/dist/toc/TableOfContentsBasic.astro +0 -25
  567. package/dist/types/article.ts +0 -22
  568. package/dist/types/footer.ts +0 -129
  569. package/dist/types/header.ts +0 -87
  570. package/dist/types/heading.ts +0 -13
  571. package/dist/types/layout.ts +0 -71
  572. package/dist/types/main.ts +0 -80
  573. package/dist/types/menu.ts +0 -24
  574. package/dist/types/meta.ts +0 -55
  575. package/dist/types/product.ts +0 -10
  576. package/dist/types/sidebar.ts +0 -39
  577. package/dist/types/static-path.ts +0 -8
  578. package/dist/utils/component.ts +0 -39
  579. package/dist/utils/i18n.ts +0 -83
  580. package/dist/utils/image.ts +0 -126
  581. package/dist/utils/lang_entry.ts +0 -240
  582. package/dist/utils/lang_package.ts +0 -150
  583. package/dist/utils/language.ts +0 -118
  584. package/dist/utils/link.ts +0 -248
  585. package/dist/utils/logger.ts +0 -130
  586. package/dist/utils/path.ts +0 -55
  587. package/dist/utils/social.ts +0 -90
  588. package/dist/utils/theme.ts +0 -114
  589. /package/dist/{assets → src-astro/assets}/book.png +0 -0
  590. /package/dist/{assets → src-astro/assets}/logo-rounded.png +0 -0
  591. /package/dist/{assets → src-astro/assets}/logo.png +0 -0
  592. /package/dist/{button → src-astro/button}/ButtonBlock.astro +0 -0
  593. /package/dist/{button → src-astro/button}/ButtonError.astro +0 -0
  594. /package/dist/{button → src-astro/button}/ButtonGhost.astro +0 -0
  595. /package/dist/{button → src-astro/button}/ButtonInfo.astro +0 -0
  596. /package/dist/{button → src-astro/button}/ButtonLink.astro +0 -0
  597. /package/dist/{button → src-astro/button}/ButtonNeutral.astro +0 -0
  598. /package/dist/{button → src-astro/button}/ButtonOutline.astro +0 -0
  599. /package/dist/{button → src-astro/button}/ButtonShapeCircle.astro +0 -0
  600. /package/dist/{button → src-astro/button}/ButtonShapeDefault.astro +0 -0
  601. /package/dist/{button → src-astro/button}/ButtonShapeSquare.astro +0 -0
  602. /package/dist/{button → src-astro/button}/ButtonSuccess.astro +0 -0
  603. /package/dist/{button → src-astro/button}/ButtonWarning.astro +0 -0
  604. /package/dist/{button → src-astro/button}/ButtonWide.astro +0 -0
  605. /package/dist/{card → src-astro/card}/CardBasic.astro +0 -0
  606. /package/dist/{heading → src-astro/heading}/HeadingBasic.astro +0 -0
  607. /package/dist/{types → src-astro/types}/nav.ts +0 -0
@@ -1,165 +0,0 @@
1
- ---
2
- /**
3
- * @component Banner
4
- *
5
- * @description
6
- * Banner 组件用于在页面中展示醒目的横幅信息,通常用于展示重要的标语、公告或营销信息。
7
- * 组件设计简洁大方,具有平滑的动画效果,能够吸引用户注意力。
8
- *
9
- * @design
10
- * 设计理念:
11
- * 1. 视觉冲击力 - 使用大号字体和醒目的背景,确保信息能够被用户注意到
12
- * 2. 简洁明了 - 简单的布局和充足的留白,让信息更容易被理解
13
- * 3. 动态效果 - 支持多种动画效果选择
14
- * 4. 响应式设计 - 在不同屏幕尺寸下保持良好的可读性
15
- *
16
- * 视觉特点:
17
- * - 圆角设计:柔和的视觉效果
18
- * - 悬停效果:轻微放大和阴影增强,提供交互反馈
19
- * - 动画效果:支持淡入、上滑或组合动画
20
- * - 模糊背景:半透明背景配合模糊效果,现代感强
21
- *
22
- * @usage
23
- * 基本用法:
24
- * ```astro
25
- * <Banner>欢迎使用我们的服务</Banner>
26
- * ```
27
- *
28
- * 指定动画效果:
29
- * ```astro
30
- * <Banner animation="fade">淡入效果的横幅</Banner>
31
- * ```
32
- *
33
- * @slots
34
- * @slot default - Banner 中显示的文本内容
35
- *
36
- * @accessibility
37
- * - 使用适当的字体大小和行高,确保文本可读性
38
- * - 动画遵循 prefers-reduced-motion 媒体查询,尊重用户的动画偏好设置
39
- */
40
-
41
- import '../style.ts';
42
-
43
- interface Props {
44
- /**
45
- * 自定义CSS类,可用于覆盖默认样式
46
- */
47
- class?: string;
48
-
49
- /**
50
- * 背景颜色,默认为primary
51
- */
52
- bgColor?: 'primary' | 'secondary' | 'accent' | 'info' | 'success' | 'warning' | 'error';
53
-
54
- /**
55
- * 文本颜色,默认根据背景色自动设置
56
- */
57
- textColor?: string;
58
-
59
- /**
60
- * 动画效果类型,可选值:
61
- * - 'none': 无动画
62
- * - 'fade': 仅淡入效果
63
- * - 'slide': 仅上滑效果
64
- * - 'both': 淡入和上滑效果
65
- * 默认为'both'
66
- */
67
- animation?: 'none' | 'fade' | 'slide' | 'both';
68
-
69
- /**
70
- * @deprecated 使用animation属性替代
71
- */
72
- animated?: boolean;
73
- }
74
-
75
- const {
76
- class: className = '',
77
- bgColor = 'primary',
78
- textColor = '',
79
- animation = 'both',
80
- animated, // 向后兼容
81
- } = Astro.props;
82
-
83
- // 处理向后兼容
84
- const effectiveAnimation = animated === false ? 'none' : animation;
85
-
86
- // 根据背景色自动设置文本颜色
87
- const getTextColorClass = () => {
88
- if (textColor) return `cosy:text-${textColor}`;
89
-
90
- // 对于深色背景,使用白色文本
91
- const darkBgColors = ['primary', 'secondary', 'accent', 'error'];
92
- return darkBgColors.includes(bgColor) ? 'cosy:text-white' : 'cosy:text-gray-800';
93
- };
94
-
95
- // 组合CSS类
96
- const bannerClasses = [
97
- 'cosy:w-full',
98
- 'cosy:py-8',
99
- 'cosy:px-4',
100
- 'cosy:rounded-lg',
101
- 'cosy:text-center',
102
- 'cosy:text-2xl',
103
- 'cosy:md:text-3xl',
104
- 'cosy:font-bold',
105
- 'cosy:transition-all',
106
- 'cosy:duration-300',
107
- 'cosy:ease-in-out',
108
- 'cosy:backdrop-blur-sm',
109
- 'cosy:bg-opacity-90',
110
- 'cosy:shadow-md',
111
- 'cosy:hover:shadow-lg',
112
- 'cosy:hover:scale-[1.01]',
113
- `cosy:bg-${bgColor}`,
114
- getTextColorClass(),
115
- className,
116
- ].join(' ');
117
-
118
- // 动画类
119
- const animationClasses = {
120
- none: '',
121
- fade: 'cosy:animate-fadeIn',
122
- slide: 'cosy:animate-slideUp',
123
- both: 'cosy:animate-fadeIn cosy:animate-slideUp',
124
- }[effectiveAnimation];
125
- ---
126
-
127
- <div class={`${bannerClasses} ${animationClasses}`}>
128
- <slot />
129
- </div>
130
-
131
- <style>
132
- @keyframes fadeIn {
133
- from {
134
- opacity: 0;
135
- }
136
- to {
137
- opacity: 1;
138
- }
139
- }
140
-
141
- @keyframes slideUp {
142
- from {
143
- transform: translateY(20px);
144
- }
145
- to {
146
- transform: translateY(0);
147
- }
148
- }
149
-
150
- /* 动画类 */
151
- .cosy\:animate-fadeIn {
152
- animation: fadeIn 0.8s ease-in-out;
153
- }
154
-
155
- .cosy\:animate-slideUp {
156
- animation: slideUp 0.5s ease-out;
157
- }
158
-
159
- @media (prefers-reduced-motion: reduce) {
160
- .cosy\:animate-fadeIn,
161
- .cosy\:animate-slideUp {
162
- animation: none;
163
- }
164
- }
165
- </style>
@@ -1,10 +0,0 @@
1
- ---
2
- import { Banner } from '../index';
3
- ---
4
-
5
- <div class="flex flex-col gap-4">
6
- <Banner animation="none">这是一个没有动画的横幅</Banner>
7
- <Banner animation="fade">这是一个只有淡入动画的横幅</Banner>
8
- <Banner animation="slide">这是一个只有上滑动画的横幅</Banner>
9
- <Banner animation="both">这是一个同时有淡入和上滑动画的横幅</Banner>
10
- </div>
@@ -1,7 +0,0 @@
1
- ---
2
- import { Banner } from '../index';
3
- ---
4
-
5
- <Banner class="bg-gradient-to-r from-purple-500 to-pink-500 text-white font-bold">
6
- 这是一个自定义样式的横幅
7
- </Banner>
@@ -1,249 +0,0 @@
1
- ---
2
- /**
3
- * @component Blog
4
- *
5
- * @description
6
- * Blog 组件是一个用于展示博客文章的容器组件,提供了标题、副标题、作者信息、日期、封面图片和标签等元素的布局。
7
- * 组件内部使用了响应式设计,确保在不同屏幕尺寸下都有良好的显示效果。
8
- *
9
- * @design
10
- * 设计理念:
11
- * 1. 内容优先 - 突出展示文章的核心内容和相关元数据
12
- * 2. 视觉层次 - 通过字体大小、间距和颜色建立清晰的视觉层次
13
- * 3. 响应式布局 - 自适应不同屏幕尺寸,优化阅读体验
14
- * 4. 视觉一致性 - 与整体设计系统保持一致的视觉风格
15
- *
16
- * @usage
17
- * 基本用法:
18
- * ```astro
19
- * <Blog title="这是一篇博客文章">
20
- * <p>这里是博客文章的内容...</p>
21
- * </Blog>
22
- * ```
23
- *
24
- * 完整用法:
25
- * ```astro
26
- * <Blog
27
- * title="使用 Astro 构建现代网站"
28
- * subtitle="探索 Astro 的强大功能和使用技巧"
29
- * author="张三"
30
- * date={new Date('2023-12-15')}
31
- * cover={{
32
- * src: "/images/blog/astro-cover.jpg",
33
- * alt: "Astro 框架封面图"
34
- * }}
35
- * tags={["Astro", "前端", "教程"]}
36
- * >
37
- * <p>这里是博客文章的详细内容...</p>
38
- * </Blog>
39
- * ```
40
- */
41
-
42
- import '../style.ts';
43
- import { UserIcon, CalendarIcon } from '../index';
44
-
45
- interface Props {
46
- /**
47
- * 文章标题
48
- */
49
- title: string;
50
- /**
51
- * 文章副标题
52
- */
53
- subtitle?: string;
54
- /**
55
- * 文章作者
56
- */
57
- author?: string;
58
- /**
59
- * 发布日期
60
- */
61
- date?: Date;
62
- /**
63
- * 封面图片
64
- */
65
- cover?: {
66
- src: string;
67
- alt?: string;
68
- };
69
- /**
70
- * 文章标签
71
- */
72
- tags?: string[];
73
- }
74
-
75
- const { title, subtitle, author, date, cover, tags = [] } = Astro.props;
76
-
77
- // 格式化日期
78
- const formatDate = (date?: Date) => {
79
- if (!date) return '';
80
- return new Intl.DateTimeFormat('zh-CN', {
81
- year: 'numeric',
82
- month: 'long',
83
- day: 'numeric',
84
- }).format(date);
85
- };
86
- ---
87
-
88
- <article class="article">
89
- <header class="article-header">
90
- {
91
- cover && (
92
- <div class="cover-container">
93
- <img src={cover.src} alt={cover.alt || title} class="cover-image" />
94
- </div>
95
- )
96
- }
97
-
98
- <div class="header-content">
99
- <h1 class="article-title">{title}</h1>
100
- {subtitle && <p class="article-subtitle">{subtitle}</p>}
101
-
102
- <div class="article-meta">
103
- {
104
- author && (
105
- <div class="meta-item">
106
- <UserIcon size="16px" />
107
- <span>{author}</span>
108
- </div>
109
- )
110
- }
111
-
112
- {
113
- date && (
114
- <div class="meta-item">
115
- <CalendarIcon size="16px" />
116
- <time datetime={date.toISOString()}>{formatDate(date)}</time>
117
- </div>
118
- )
119
- }
120
- </div>
121
-
122
- {
123
- tags.length > 0 && (
124
- <div class="article-tags">
125
- {tags.map((tag: string) => (
126
- <span class="tag">{tag}</span>
127
- ))}
128
- </div>
129
- )
130
- }
131
- </div>
132
- </header>
133
-
134
- <div class="article-content">
135
- <slot />
136
- </div>
137
- </article>
138
-
139
- <style>
140
- /* 基础样式 */
141
- .article {
142
- container-type: inline-size;
143
- }
144
-
145
- /* 文章头部 */
146
- .article-header {
147
- margin-bottom: 2rem;
148
- }
149
-
150
- /* 封面图片 */
151
- .cover-container {
152
- position: relative;
153
- width: 100%;
154
- height: 300px;
155
- margin-bottom: 1.5rem;
156
- border-radius: 0.5rem;
157
- overflow: hidden;
158
- }
159
-
160
- .cover-image {
161
- width: 100%;
162
- height: 100%;
163
- object-fit: cover;
164
- }
165
-
166
- /* 标题和副标题 */
167
- .header-content {
168
- display: flex;
169
- flex-direction: column;
170
- gap: 1rem;
171
- }
172
-
173
- .article-title {
174
- font-size: 2.25rem;
175
- font-weight: 700;
176
- line-height: 1.2;
177
- letter-spacing: -0.025em;
178
- }
179
-
180
- .article-subtitle {
181
- font-size: 1.25rem;
182
- color: var(--text-secondary, rgba(0, 0, 0, 0.7));
183
- }
184
-
185
- /* 元数据 */
186
- .article-meta {
187
- display: flex;
188
- flex-wrap: wrap;
189
- align-items: center;
190
- gap: 1rem;
191
- font-size: 0.875rem;
192
- color: var(--text-secondary, rgba(0, 0, 0, 0.6));
193
- }
194
-
195
- .meta-item {
196
- display: flex;
197
- align-items: center;
198
- gap: 0.5rem;
199
- }
200
-
201
- /* 标签 */
202
- .article-tags {
203
- display: flex;
204
- flex-wrap: wrap;
205
- gap: 0.5rem;
206
- }
207
-
208
- .tag {
209
- display: inline-block;
210
- padding: 0.25rem 0.75rem;
211
- border: 1px solid var(--border-color, #e2e8f0);
212
- border-radius: 9999px;
213
- font-size: 0.75rem;
214
- line-height: 1.5;
215
- }
216
-
217
- /* 文章内容 */
218
- .article-content {
219
- max-width: none;
220
- font-size: 1.125rem;
221
- line-height: 1.75;
222
- }
223
-
224
- /* 响应式调整 */
225
- @media (min-width: 768px) {
226
- .article-title {
227
- font-size: 3rem;
228
- }
229
-
230
- .cover-container {
231
- height: 400px;
232
- }
233
- }
234
-
235
- /* 暗色主题适配 */
236
- @media (prefers-color-scheme: dark) {
237
- .article-subtitle {
238
- color: var(--text-secondary, rgba(255, 255, 255, 0.7));
239
- }
240
-
241
- .article-meta {
242
- color: var(--text-secondary, rgba(255, 255, 255, 0.6));
243
- }
244
-
245
- .tag {
246
- border-color: var(--border-color, #2d3748);
247
- }
248
- }
249
- </style>
@@ -1 +0,0 @@
1
- export {default as Blog} from './Blog.astro';
@@ -1,192 +0,0 @@
1
- ---
2
- /**
3
- * @component Button
4
- *
5
- * @description
6
- * Button 组件用于触发一个即时操作,如表单提交、打开对话框等。
7
- * 支持多种样式变体、尺寸和状态,可以满足不同场景的需求。
8
- *
9
- * @design
10
- * 设计理念:
11
- * 1. 直观易用 - 通过视觉差异清晰传达按钮的重要性和功能
12
- * 2. 响应式交互 - 提供丰富的状态反馈,增强用户体验
13
- * 3. 可定制性 - 支持多种配置选项,适应不同场景需求
14
- * 4. 无障碍性 - 确保所有用户都能获得良好体验
15
- *
16
- * 视觉特点:
17
- * - 悬停效果:轻微上浮和阴影增强
18
- * - 点击效果:轻微下沉
19
- * - 加载状态:显示加载动画
20
- * - 多种颜色变体:适应不同场景和语义
21
- * - 多种尺寸:适应不同布局需求
22
- *
23
- * @usage
24
- * 基本用法:
25
- * ```astro
26
- * <Button>默认按钮</Button>
27
- * <Button variant="primary">主要按钮</Button>
28
- * ```
29
- *
30
- * 不同尺寸:
31
- * ```astro
32
- * <Button size="sm">小型按钮</Button>
33
- * <Button size="lg">大型按钮</Button>
34
- * ```
35
- *
36
- * 状态变化:
37
- * ```astro
38
- * <Button disabled>禁用按钮</Button>
39
- * <Button loading>加载中</Button>
40
- * ```
41
- *
42
- * 带图标:
43
- * ```astro
44
- * <Button>
45
- * <span slot="icon-left">👈</span>
46
- * 左侧图标
47
- * </Button>
48
- * ```
49
- *
50
- * 链接按钮:
51
- * ```astro
52
- * <Button href="https://example.com">跳转链接</Button>
53
- * <Button href="https://example.com" target="_blank">新窗口打开</Button>
54
- * ```
55
- */
56
-
57
- // 导入样式
58
- import '../style.ts';
59
-
60
- interface Props {
61
- variant?:
62
- | 'primary'
63
- | 'secondary'
64
- | 'accent'
65
- | 'info'
66
- | 'success'
67
- | 'warning'
68
- | 'error'
69
- | 'ghost'
70
- | 'link'
71
- | 'outline'
72
- | 'neutral';
73
- size?: 'lg' | 'md' | 'sm' | 'xs';
74
- shape?: 'circle' | 'square';
75
- wide?: boolean;
76
- block?: boolean;
77
- loading?: boolean;
78
- disabled?: boolean;
79
- type?: 'button' | 'submit' | 'reset';
80
- class?: string;
81
- onClick?: string;
82
- formmethod?: string;
83
- href?: string;
84
- target?: string;
85
- [key: string]: any; // 允许任意自定义属性
86
- }
87
-
88
- const {
89
- variant = 'primary',
90
- size = 'md',
91
- shape,
92
- wide = false,
93
- block = false,
94
- loading = false,
95
- disabled = false,
96
- type = 'button',
97
- class: className,
98
- onClick,
99
- formmethod,
100
- href,
101
- target,
102
- ...rest
103
- } = Astro.props;
104
-
105
- // 计算按钮的类名
106
- const getButtonClasses = () => {
107
- const classes = ['cosy:btn'];
108
-
109
- // Variant classes
110
- const variantClasses = {
111
- primary: 'cosy:btn-primary',
112
- secondary: 'cosy:btn-secondary',
113
- accent: 'cosy:btn-accent',
114
- info: 'cosy:btn-info',
115
- success: 'cosy:btn-success',
116
- warning: 'cosy:btn-warning',
117
- error: 'cosy:btn-error',
118
- ghost: 'cosy:btn-ghost',
119
- link: 'cosy:btn-link',
120
- outline: 'cosy:btn-outline',
121
- neutral: 'cosy:btn-neutral',
122
- };
123
-
124
- // Size classes
125
- const sizeClasses = {
126
- lg: 'cosy:btn-lg',
127
- md: 'cosy:btn-md',
128
- sm: 'cosy:btn-sm',
129
- xs: 'cosy:btn-xs',
130
- };
131
-
132
- // Shape classes
133
- const shapeClasses = {
134
- circle: 'cosy:btn-circle',
135
- square: 'cosy:btn-square',
136
- };
137
-
138
- if (variantClasses[variant]) {
139
- classes.push(variantClasses[variant]);
140
- }
141
-
142
- if (sizeClasses[size]) {
143
- classes.push(sizeClasses[size]);
144
- }
145
-
146
- if (shape && shapeClasses[shape]) {
147
- classes.push(shapeClasses[shape]);
148
- }
149
-
150
- if (wide) classes.push('cosy:btn-wide');
151
- if (block) classes.push('cosy:btn-block');
152
- if (loading) classes.push('cosy:loading');
153
- if (className) classes.push(className);
154
-
155
- return classes;
156
- };
157
-
158
- const buttonClasses = getButtonClasses();
159
- ---
160
-
161
- {
162
- href ? (
163
- <a
164
- href={href}
165
- class:list={buttonClasses}
166
- target={target}
167
- onclick={onClick}
168
- data-variant={variant}
169
- {...rest}>
170
- <span class="cosy:flex cosy:items-center cosy:gap-2">
171
- <slot name="icon-left" />
172
- <slot />
173
- <slot name="icon-right" />
174
- </span>
175
- </a>
176
- ) : (
177
- <button
178
- type={formmethod === 'dialog' ? 'submit' : type}
179
- class:list={buttonClasses}
180
- disabled={disabled}
181
- onclick={onClick}
182
- formmethod={formmethod}
183
- data-variant={variant}
184
- {...rest}>
185
- <span class="cosy:flex cosy:items-center cosy:gap-2">
186
- <slot name="icon-left" />
187
- <slot />
188
- <slot name="icon-right" />
189
- </span>
190
- </button>
191
- )
192
- }
@@ -1,18 +0,0 @@
1
- ---
2
- import Button from './Button.astro';
3
- ---
4
-
5
- <div class="cosy:flex cosy:flex-wrap cosy:gap-2">
6
- <Button>默认按钮</Button>
7
- <Button variant="primary">主要按钮</Button>
8
- <Button variant="secondary">次要按钮</Button>
9
- <Button variant="accent">强调按钮</Button>
10
- <Button variant="info">信息按钮</Button>
11
- <Button variant="success">成功按钮</Button>
12
- <Button variant="warning">警告按钮</Button>
13
- <Button variant="error">错误按钮</Button>
14
- <Button variant="ghost">幽灵按钮</Button>
15
- <Button variant="link">链接按钮</Button>
16
- <Button variant="outline">轮廓按钮</Button>
17
- <Button variant="neutral">中性按钮</Button>
18
- </div>
@@ -1,9 +0,0 @@
1
- ---
2
- import Button from './Button.astro';
3
- ---
4
-
5
- <Button>
6
- <span slot="icon-left">←</span>
7
- 两侧图标按钮
8
- <span slot="icon-right">→</span>
9
- </Button>
@@ -1,23 +0,0 @@
1
- ---
2
- import Button from './Button.astro';
3
- ---
4
-
5
- <div class="cosy:flex cosy:flex-wrap cosy:gap-2">
6
- <Button>默认形状</Button>
7
-
8
- <Button shape="circle" variant="primary">
9
- <span slot="icon-left">🔄</span>
10
- </Button>
11
-
12
- <Button shape="square" variant="success">
13
- <span slot="icon-left">✨</span>
14
- </Button>
15
-
16
- <Button shape="circle" variant="warning" size="lg">
17
- <span slot="icon-left">⚡</span>
18
- </Button>
19
-
20
- <Button shape="square" variant="error" size="sm">
21
- <span slot="icon-left">❌</span>
22
- </Button>
23
- </div>
@@ -1,15 +0,0 @@
1
- ---
2
- import Button from './Button.astro';
3
- ---
4
-
5
- <div class="cosy:flex cosy:items-center cosy:gap-2">
6
- <Button size="xs">超小按钮</Button>
7
- <Button size="sm">小型按钮</Button>
8
- <Button size="md">中等按钮</Button>
9
- <Button size="lg">大型按钮</Button>
10
- </div>
11
-
12
- <div class="cosy:mt-4 cosy:flex cosy:flex-col cosy:items-center cosy:gap-2">
13
- <Button size="lg" wide>宽按钮</Button>
14
- <Button block>块级按钮</Button>
15
- </div>
@@ -1,12 +0,0 @@
1
- ---
2
- import Button from './Button.astro';
3
- ---
4
-
5
- <div class="cosy:flex cosy:flex-wrap cosy:gap-2">
6
- <Button>正常按钮</Button>
7
- <Button disabled>禁用按钮</Button>
8
- <Button loading>加载中</Button>
9
- <Button variant="primary" loading>加载中</Button>
10
- <Button variant="success" disabled>禁用成功按钮</Button>
11
- <Button variant="error" loading>处理错误中</Button>
12
- </div>