negodesign 0.0.81 → 0.0.82

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 (278) hide show
  1. package/README.md +133 -133
  2. package/dist/components/NegoDesign.svelte +21 -21
  3. package/dist/components/pages/admin/01/ui/AdminContent.svelte +14 -14
  4. package/dist/components/pages/admin/01/ui/AdminPanel.svelte +46 -46
  5. package/dist/components/pages/product-details/shared/ProductDetailFilesVertical.svelte +103 -103
  6. package/dist/components/pages/profile-user/shared/ProfileUserAddress.svelte +83 -83
  7. package/dist/components/pages/profile-user/shared/ProfileUserTabs.svelte +80 -80
  8. package/dist/components/pages/security/auth/PageAuth01.svelte +62 -62
  9. package/dist/components/pages/security/auth/PageAuth02.svelte +40 -40
  10. package/dist/components/pages/security/auth/PageAuth03.svelte +40 -40
  11. package/dist/components/pages/security/login/01/ui/FormLogin.svelte +91 -63
  12. package/dist/components/pages/security/login/01/ui/FormLogin.svelte.d.ts +2 -0
  13. package/dist/components/pages/security/login/01/ui/FormLoginEmailPassword.svelte +49 -26
  14. package/dist/components/pages/security/login/01/ui/FormLoginEmailPassword.svelte.d.ts +2 -0
  15. package/dist/components/pages/security/login/01/ui/FormLoginPhonePassword.svelte +49 -26
  16. package/dist/components/pages/security/login/01/ui/FormLoginPhonePassword.svelte.d.ts +2 -0
  17. package/dist/components/pages/security/login/01/ui/FormLoginUsernamePassword.svelte +49 -26
  18. package/dist/components/pages/security/login/01/ui/FormLoginUsernamePassword.svelte.d.ts +2 -0
  19. package/dist/components/pages/security/login/01/ui/LoginCard01.svelte +148 -132
  20. package/dist/components/pages/security/login/01/ui/LoginCard01.svelte.d.ts +2 -0
  21. package/dist/components/pages/security/login/01/ui/PageLogin01.svelte +66 -64
  22. package/dist/components/pages/security/login/02/ui/FormLogin02.svelte +82 -72
  23. package/dist/components/pages/security/login/02/ui/FormLogin02.svelte.d.ts +1 -0
  24. package/dist/components/pages/security/login/02/ui/FormLoginEmailPassword02.svelte +27 -26
  25. package/dist/components/pages/security/login/02/ui/FormLoginEmailPassword02.svelte.d.ts +1 -0
  26. package/dist/components/pages/security/login/02/ui/FormLoginPhonePassword02.svelte +27 -26
  27. package/dist/components/pages/security/login/02/ui/FormLoginPhonePassword02.svelte.d.ts +1 -0
  28. package/dist/components/pages/security/login/02/ui/FormLoginUsernamePassword02.svelte +27 -26
  29. package/dist/components/pages/security/login/02/ui/FormLoginUsernamePassword02.svelte.d.ts +1 -0
  30. package/dist/components/pages/security/login/02/ui/LoginCard02.svelte +15 -2
  31. package/dist/components/pages/security/login/02/ui/LoginCard02.svelte.d.ts +1 -0
  32. package/dist/components/pages/security/login/02/ui/PageLogin02.svelte +2 -0
  33. package/dist/components/pages/security/login/03/ui/FormLogin03.svelte +94 -91
  34. package/dist/components/pages/security/login/03/ui/FormLogin03.svelte.d.ts +1 -0
  35. package/dist/components/pages/security/login/03/ui/FormLoginEmailPassword03.svelte +27 -26
  36. package/dist/components/pages/security/login/03/ui/FormLoginEmailPassword03.svelte.d.ts +1 -0
  37. package/dist/components/pages/security/login/03/ui/FormLoginPhonePassword03.svelte +27 -26
  38. package/dist/components/pages/security/login/03/ui/FormLoginPhonePassword03.svelte.d.ts +1 -0
  39. package/dist/components/pages/security/login/03/ui/FormLoginUsernamePassword03.svelte +27 -26
  40. package/dist/components/pages/security/login/03/ui/FormLoginUsernamePassword03.svelte.d.ts +1 -0
  41. package/dist/components/pages/security/login/03/ui/LoginCard03.svelte +15 -2
  42. package/dist/components/pages/security/login/03/ui/LoginCard03.svelte.d.ts +1 -0
  43. package/dist/components/pages/security/login/03/ui/PageLogin03.svelte +2 -0
  44. package/dist/components/pages/security/login/PageLogin.svelte +30 -30
  45. package/dist/components/pages/security/login/types.d.ts +1 -0
  46. package/dist/components/pages/security/register/01/ui/PageRegister01.svelte +78 -76
  47. package/dist/components/pages/security/register/01/ui/RegisterCard01.svelte +107 -104
  48. package/dist/components/pages/security/register/01/ui/RegisterCard01.svelte.d.ts +1 -0
  49. package/dist/components/pages/security/register/02/ui/PageRegister02.svelte +2 -0
  50. package/dist/components/pages/security/register/02/ui/RegisterCard02.svelte +3 -1
  51. package/dist/components/pages/security/register/02/ui/RegisterCard02.svelte.d.ts +1 -0
  52. package/dist/components/pages/security/register/03/ui/PageRegister03.svelte +2 -0
  53. package/dist/components/pages/security/register/03/ui/RegisterCard03.svelte +3 -1
  54. package/dist/components/pages/security/register/03/ui/RegisterCard03.svelte.d.ts +1 -0
  55. package/dist/components/pages/security/register/FormRegister.svelte +148 -146
  56. package/dist/components/pages/security/register/FormRegister.svelte.d.ts +1 -0
  57. package/dist/components/pages/security/register/types.d.ts +1 -0
  58. package/dist/components/ui/avatar/avatar-fallback.svelte +29 -29
  59. package/dist/components/ui/avatar/avatar-image.svelte +38 -38
  60. package/dist/components/ui/avatar/avatar.svelte +39 -39
  61. package/dist/components/ui/badge/badge.svelte +46 -46
  62. package/dist/components/ui/banner/AdCardBanner.svelte +74 -74
  63. package/dist/components/ui/banner/CtaCardBanner.svelte +118 -118
  64. package/dist/components/ui/banner/CtaCardImageBanner.svelte +94 -94
  65. package/dist/components/ui/breadcrumb/core/breadcrumb-list.svelte +31 -31
  66. package/dist/components/ui/button/ButtonBack.svelte +18 -18
  67. package/dist/components/ui/button/ButtonLogin.svelte +19 -15
  68. package/dist/components/ui/button/ButtonLoginWith.svelte +57 -57
  69. package/dist/components/ui/button/ButtonSend.svelte +15 -15
  70. package/dist/components/ui/button/button.svelte +100 -86
  71. package/dist/components/ui/button/button.svelte.d.ts +1 -0
  72. package/dist/components/ui/card/core/highlight/01/CardHighlight01.svelte +103 -103
  73. package/dist/components/ui/card/core/highlight/02/CardHighlight02.svelte +99 -99
  74. package/dist/components/ui/card/core/highlight/CardHighlight.svelte +22 -22
  75. package/dist/components/ui/card/core/media/01/CardMedia01.svelte +133 -133
  76. package/dist/components/ui/card/core/media/02/CardMedia02.svelte +127 -127
  77. package/dist/components/ui/card/core/media/CardMedia.svelte +18 -18
  78. package/dist/components/ui/card/core/product/01/CardProduct01.svelte +136 -136
  79. package/dist/components/ui/card/core/product/02/CardProduct02.svelte +124 -124
  80. package/dist/components/ui/card/core/product/CardProduct.svelte +22 -22
  81. package/dist/components/ui/card/core/profile/01/CardProfile01.svelte +134 -134
  82. package/dist/components/ui/card/core/profile/02/CardProfile02.svelte +132 -132
  83. package/dist/components/ui/card/core/profile/CardProfile.svelte +18 -18
  84. package/dist/components/ui/card/core/promotion/CardPromotion.svelte +139 -139
  85. package/dist/components/ui/card/core/promotion/CardPromotionPrice.svelte +32 -32
  86. package/dist/components/ui/card/core/shared/CardButton.svelte +42 -42
  87. package/dist/components/ui/card/core/shared/CardCart.svelte +36 -36
  88. package/dist/components/ui/card/core/shared/CardDescription.svelte +41 -41
  89. package/dist/components/ui/card/core/shared/CardFavorite.svelte +33 -33
  90. package/dist/components/ui/card/core/shared/CardLogo.svelte +19 -19
  91. package/dist/components/ui/card/core/shared/CardPhoneOrWhatsapp.svelte +45 -45
  92. package/dist/components/ui/card/core/shared/CardStarRating.svelte +24 -24
  93. package/dist/components/ui/card/core/shared/CardTags.svelte +95 -95
  94. package/dist/components/ui/card/core/shared/CardThumbnailVideo.svelte +232 -232
  95. package/dist/components/ui/card/core/shared/CardTitlePrice.svelte +24 -24
  96. package/dist/components/ui/card/core/shared/TruncatableText.svelte +49 -49
  97. package/dist/components/ui/carousel/carousel-content.svelte +56 -56
  98. package/dist/components/ui/carousel/carousel-item.svelte +29 -29
  99. package/dist/components/ui/carousel/carousel-next.svelte +40 -40
  100. package/dist/components/ui/carousel/carousel-previous.svelte +40 -40
  101. package/dist/components/ui/carousel/carousel.svelte +225 -225
  102. package/dist/components/ui/carousel/core/badge/ui/CarouselBadge.svelte +108 -108
  103. package/dist/components/ui/carousel/core/grid/shared/ui/CarouselGridSlot.svelte +38 -38
  104. package/dist/components/ui/carousel/core/hero/ui/CarouselHero.svelte +181 -181
  105. package/dist/components/ui/carousel/core/highlights/ui/CarouselHighlights.svelte +67 -67
  106. package/dist/components/ui/carousel/core/product/ui/CarouselProduct.svelte +57 -57
  107. package/dist/components/ui/carousel/core/promotion/ui/CarouselPromotion.svelte +67 -67
  108. package/dist/components/ui/carousel/core/shared/ui/CarouselHeader.svelte +59 -59
  109. package/dist/components/ui/checkbox/checkbox.svelte +96 -96
  110. package/dist/components/ui/collapsible/collapsible-content.svelte +30 -30
  111. package/dist/components/ui/collapsible/collapsible-trigger.svelte +51 -51
  112. package/dist/components/ui/collapsible/collapsible.svelte +66 -66
  113. package/dist/components/ui/data-table/flex-render.svelte +40 -40
  114. package/dist/components/ui/datatable/ui/DataTableActions.svelte +28 -28
  115. package/dist/components/ui/datatable/ui/DataTableCheckbox.svelte +22 -22
  116. package/dist/components/ui/datatable/ui/DataTableContent.svelte +59 -59
  117. package/dist/components/ui/datatable/ui/DataTableCore.svelte +148 -148
  118. package/dist/components/ui/datatable/ui/DataTableDragHandle.svelte +8 -8
  119. package/dist/components/ui/datatable/ui/DataTableListFilter.svelte +60 -60
  120. package/dist/components/ui/datatable/ui/DataTableListPagination.svelte +35 -35
  121. package/dist/components/ui/drawer/drawer-close.svelte +41 -41
  122. package/dist/components/ui/drawer/drawer-content.svelte +81 -81
  123. package/dist/components/ui/drawer/drawer-description.svelte +19 -19
  124. package/dist/components/ui/drawer/drawer-footer.svelte +20 -20
  125. package/dist/components/ui/drawer/drawer-header.svelte +20 -20
  126. package/dist/components/ui/drawer/drawer-nested.svelte +34 -34
  127. package/dist/components/ui/drawer/drawer-overlay.svelte +25 -25
  128. package/dist/components/ui/drawer/drawer-portal.svelte +19 -19
  129. package/dist/components/ui/drawer/drawer-title.svelte +19 -19
  130. package/dist/components/ui/drawer/drawer-trigger.svelte +42 -42
  131. package/dist/components/ui/drawer/drawer.svelte +74 -74
  132. package/dist/components/ui/dropdown-menu/dropdown-menu-checkbox-group.svelte +25 -25
  133. package/dist/components/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte +69 -69
  134. package/dist/components/ui/dropdown-menu/dropdown-menu-content.svelte +106 -106
  135. package/dist/components/ui/dropdown-menu/dropdown-menu-group-heading.svelte +27 -27
  136. package/dist/components/ui/dropdown-menu/dropdown-menu-group.svelte +21 -21
  137. package/dist/components/ui/dropdown-menu/dropdown-menu-item.svelte +60 -60
  138. package/dist/components/ui/dropdown-menu/dropdown-menu-label.svelte +27 -27
  139. package/dist/components/ui/dropdown-menu/dropdown-menu-portal.svelte +6 -6
  140. package/dist/components/ui/dropdown-menu/dropdown-menu-radio-group.svelte +43 -43
  141. package/dist/components/ui/dropdown-menu/dropdown-menu-radio-item.svelte +70 -70
  142. package/dist/components/ui/dropdown-menu/dropdown-menu-separator.svelte +20 -20
  143. package/dist/components/ui/dropdown-menu/dropdown-menu-sub-content.svelte +33 -33
  144. package/dist/components/ui/dropdown-menu/dropdown-menu-sub-trigger.svelte +57 -57
  145. package/dist/components/ui/dropdown-menu/dropdown-menu-sub.svelte +76 -76
  146. package/dist/components/ui/dropdown-menu/dropdown-menu-trigger.svelte +68 -68
  147. package/dist/components/ui/dropdown-menu/dropdown-menu.svelte +53 -53
  148. package/dist/components/ui/empty/empty-content.svelte +19 -19
  149. package/dist/components/ui/empty/empty-description.svelte +19 -19
  150. package/dist/components/ui/empty/empty-header.svelte +19 -19
  151. package/dist/components/ui/empty/empty-media.svelte +41 -41
  152. package/dist/components/ui/empty/empty-title.svelte +19 -19
  153. package/dist/components/ui/empty/empty.svelte +19 -19
  154. package/dist/components/ui/footer/ui/Footer.svelte +18 -18
  155. package/dist/components/ui/form/ui/calendar/Calendar.svelte +193 -193
  156. package/dist/components/ui/form/ui/calendar/CalendarCard.svelte +89 -89
  157. package/dist/components/ui/form/ui/calendar/DaysGrid.svelte +75 -75
  158. package/dist/components/ui/form/ui/calendar/MonthSelect.svelte +49 -49
  159. package/dist/components/ui/form/ui/calendar/YearSelect.svelte +116 -116
  160. package/dist/components/ui/form/ui/input-base.svelte +83 -83
  161. package/dist/components/ui/form/ui/input-calendar-interval.svelte +178 -178
  162. package/dist/components/ui/form/ui/input-calendar.svelte +109 -109
  163. package/dist/components/ui/form/ui/input-email-or-phone.svelte +23 -23
  164. package/dist/components/ui/form/ui/input-email.svelte +23 -23
  165. package/dist/components/ui/form/ui/input-password-confirm.svelte +23 -23
  166. package/dist/components/ui/form/ui/input-password.svelte +23 -23
  167. package/dist/components/ui/form/ui/input-phone.svelte +43 -37
  168. package/dist/components/ui/form/ui/input-select.svelte +246 -246
  169. package/dist/components/ui/form/ui/input-username.svelte +22 -22
  170. package/dist/components/ui/grid/core/ui/01/Grid01.svelte +30 -30
  171. package/dist/components/ui/grid/core/ui/02/Grid02.svelte +30 -30
  172. package/dist/components/ui/grid/core/ui/ItemsPanel.svelte +26 -26
  173. package/dist/components/ui/grid/core/ui/ItemsPanelCarousel.svelte +37 -37
  174. package/dist/components/ui/grid/core/ui/ItemsPanelGrid.svelte +43 -43
  175. package/dist/components/ui/grid/core/ui/ItemsSimpleGrid.svelte +45 -45
  176. package/dist/components/ui/grid/core/ui/shared/DescriptionGrid.svelte +23 -23
  177. package/dist/components/ui/grid/core/ui/shared/IconRenderGrid.svelte +23 -23
  178. package/dist/components/ui/grid/core/ui/shared/TitleGrid.svelte +19 -19
  179. package/dist/components/ui/hero/SimpleHero.svelte +65 -65
  180. package/dist/components/ui/input-otp/input-otp-group.svelte +22 -22
  181. package/dist/components/ui/input-otp/input-otp-separator.svelte +27 -27
  182. package/dist/components/ui/input-otp/input-otp-slot.svelte +63 -63
  183. package/dist/components/ui/input-otp/input-otp.svelte +181 -181
  184. package/dist/components/ui/label/core/LabelOr.svelte +25 -25
  185. package/dist/components/ui/label/label.svelte +19 -19
  186. package/dist/components/ui/language-switcher/language-switcher.svelte +48 -48
  187. package/dist/components/ui/light-switch/light-switch.svelte +48 -48
  188. package/dist/components/ui/link/link-forget-password.svelte +12 -12
  189. package/dist/components/ui/link/link-privacy-polity.svelte +12 -12
  190. package/dist/components/ui/link/link-terms-of-service.svelte +12 -12
  191. package/dist/components/ui/modal/core/ui/ModalCore.svelte +132 -132
  192. package/dist/components/ui/modal/form/index.d.ts +3 -2
  193. package/dist/components/ui/modal/form/index.js +2 -1
  194. package/dist/components/ui/modal/form/types.d.ts +41 -0
  195. package/dist/components/ui/modal/form/ui/ModalForm.svelte +11 -6
  196. package/dist/components/ui/modal/form/ui/ModalFormEmailOrPhone.svelte +204 -0
  197. package/dist/components/ui/modal/form/ui/ModalFormEmailOrPhone.svelte.d.ts +4 -0
  198. package/dist/components/ui/modal/grid/ui/02/ModalGridSelection02.svelte +146 -146
  199. package/dist/components/ui/modal/share/ui/ModalShareSelection.svelte +156 -156
  200. package/dist/components/ui/nav/ui/ComplexMenu.svelte +51 -51
  201. package/dist/components/ui/nav/ui/Menu.svelte +72 -72
  202. package/dist/components/ui/nav/ui/SimpleMenu.svelte +14 -14
  203. package/dist/components/ui/nav/ui/mobile/ComplexMenuMobile.svelte +125 -125
  204. package/dist/components/ui/nav/ui/mobile/MenuMobile.svelte +54 -54
  205. package/dist/components/ui/nav/ui/shared/MenuButton.svelte +51 -51
  206. package/dist/components/ui/nav/ui/shared/MenuLinks.svelte +40 -40
  207. package/dist/components/ui/nav/ui/shared/MenuListItem.svelte +44 -44
  208. package/dist/components/ui/nav/ui/shared/MenuLogo.svelte +13 -13
  209. package/dist/components/ui/nav/ui/shared/dropdown/DropdownNavigationMenuItemGrid.svelte +30 -30
  210. package/dist/components/ui/nav/ui/shared/navigation/NavDropdown.svelte +88 -88
  211. package/dist/components/ui/nav/ui/shared/navigation/NavigationMenuItem.svelte +17 -17
  212. package/dist/components/ui/nav/ui/shared/navigation/NavigationMenuItemCard.svelte +53 -53
  213. package/dist/components/ui/nav/ui/shared/navigation/NavigationMenuItemGrid.svelte +35 -35
  214. package/dist/components/ui/nav/ui/shared/navigation/NavigationMenuItemList.svelte +24 -24
  215. package/dist/components/ui/nav/ui/shared/navigation/NavigationMenuItems.svelte +21 -21
  216. package/dist/components/ui/panel/CarouselSlot.svelte +57 -57
  217. package/dist/components/ui/panel/LeftHero.svelte +114 -114
  218. package/dist/components/ui/panel/NotFoundEmpty.svelte +66 -66
  219. package/dist/components/ui/phone-input/country-selector.svelte +87 -87
  220. package/dist/components/ui/phone-input/flag.svelte +11 -11
  221. package/dist/components/ui/phone-input/phone-input.svelte +163 -163
  222. package/dist/components/ui/popover/popover-close.svelte +25 -25
  223. package/dist/components/ui/popover/popover-content.svelte +92 -92
  224. package/dist/components/ui/popover/popover-portal.svelte +6 -6
  225. package/dist/components/ui/popover/popover-trigger.svelte +68 -68
  226. package/dist/components/ui/popover/popover.svelte +53 -53
  227. package/dist/components/ui/search/SearchInput.svelte +32 -32
  228. package/dist/components/ui/search/shared/SearchInputCore.svelte +66 -66
  229. package/dist/components/ui/separator/separator.svelte +28 -28
  230. package/dist/components/ui/sidebar/core/MenuBarSidebar.svelte +70 -70
  231. package/dist/components/ui/sidebar/core/ui/navbar/NavMenuBarSidebar.svelte +97 -97
  232. package/dist/components/ui/sidebar/core/ui/navbar/NavMenuBottomSidebar.svelte +33 -33
  233. package/dist/components/ui/sidebar/core/ui/navbar/NavMenuTopBarSidebar.svelte +101 -101
  234. package/dist/components/ui/sidebar/core/ui/navbar/nav-menu-header-sidebar.svelte +77 -77
  235. package/dist/components/ui/sidebar/sidebar-content.svelte +24 -24
  236. package/dist/components/ui/sidebar/sidebar-footer.svelte +21 -21
  237. package/dist/components/ui/sidebar/sidebar-group-content.svelte +21 -21
  238. package/dist/components/ui/sidebar/sidebar-menu-action.svelte +38 -38
  239. package/dist/components/ui/sidebar/sidebar-menu-button.svelte +70 -70
  240. package/dist/components/ui/sidebar/sidebar-menu-sub-button.svelte +39 -39
  241. package/dist/components/ui/sidebar/sidebar-provider.svelte +62 -62
  242. package/dist/components/ui/sidebar/sidebar-rail.svelte +36 -36
  243. package/dist/components/ui/sidebar/sidebar-separator.svelte +21 -21
  244. package/dist/components/ui/sidebar/sidebar-trigger.svelte +36 -36
  245. package/dist/components/ui/sidebar/sidebar.svelte +118 -118
  246. package/dist/components/ui/skeleton/skeleton.svelte +19 -19
  247. package/dist/components/ui/star-rating/star-rating-star.svelte +66 -66
  248. package/dist/components/ui/star-rating/star-rating.svelte +149 -149
  249. package/dist/components/ui/table/table-body.svelte +15 -15
  250. package/dist/components/ui/table/table-caption.svelte +20 -20
  251. package/dist/components/ui/table/table-cell.svelte +15 -15
  252. package/dist/components/ui/table/table-footer.svelte +20 -20
  253. package/dist/components/ui/table/table-head.svelte +15 -15
  254. package/dist/components/ui/table/table-header.svelte +20 -20
  255. package/dist/components/ui/table/table-row.svelte +15 -15
  256. package/dist/components/ui/table/table.svelte +17 -17
  257. package/dist/components/ui/tabs/data/TabModel.d.ts +1 -0
  258. package/dist/components/ui/tabs/ui/tab-underline.svelte +47 -43
  259. package/dist/components/ui/underline-tabs/underline-tabs-content.svelte +33 -33
  260. package/dist/components/ui/underline-tabs/underline-tabs-list.svelte +40 -40
  261. package/dist/components/ui/underline-tabs/underline-tabs-trigger.svelte +91 -91
  262. package/dist/components/ui/underline-tabs/underline-tabs.svelte +61 -61
  263. package/dist/docs/ApiTable.svelte +42 -42
  264. package/dist/docs/CodeBlock.svelte +26 -26
  265. package/dist/docs/DocsHeader.svelte +25 -25
  266. package/dist/docs/DocsSidebar.svelte +108 -108
  267. package/dist/docs/components.js +624 -584
  268. package/dist/globals.css +27 -7
  269. package/dist/i18n/langs/en.d.ts +3 -1
  270. package/dist/i18n/langs/en.js +3 -1
  271. package/dist/i18n/langs/pt.d.ts +3 -1
  272. package/dist/i18n/langs/pt.js +3 -1
  273. package/dist/i18n/translations.d.ts +6 -2
  274. package/dist/index.d.ts +12 -0
  275. package/dist/index.js +12 -0
  276. package/dist/styles/globals.css +283 -283
  277. package/dist/types/index.d.ts +3 -1
  278. package/package.json +81 -81
@@ -1,53 +1,53 @@
1
- <script lang="ts">
2
- import type { NavigationMenuItemCardProps } from "../../../data/types";
3
- import MenuListItem from "../MenuListItem.svelte";
4
- import NavDropdown from "./NavDropdown.svelte";
5
-
6
- let {
7
- label,
8
- header,
9
- cards: items,
10
- hoverClass,
11
- }: NavigationMenuItemCardProps = $props();
12
- </script>
13
-
14
- {#snippet headerSnippet(label: string, description: string)}
15
- <div class="mt-4 mb-2 text-lg font-medium {header?.labelClass}">
16
- {label}
17
- </div>
18
- <p
19
- class="text-sm leading-tight {header?.descriptionClass ||
20
- 'text-muted-foreground'}"
21
- >
22
- {description}
23
- </p>
24
- {/snippet}
25
-
26
- <NavDropdown label={label ?? header?.label ?? ""} {hoverClass}>
27
- <ul class="grid gap-2 p-2 w-100 lg:w-125 lg:grid-cols-[.75fr_1fr]">
28
- {#if header}
29
- <li
30
- class="row-span-3 relative"
31
- style={header.imgUrl
32
- ? `background-image: url(${header.imgUrl}); background-repeat: no-repeat; background-size: cover; background-position: center; border-radius: 12px;`
33
- : ``}
34
- >
35
- <a
36
- href={header.href ?? "#"}
37
- class={`flex h-full w-full flex-col justify-end p-4 md:p-6 ${
38
- header.imgUrl
39
- ? `no-underline outline-hidden select-none`
40
- : `bg-linear-to-b from-muted/50 to-muted rounded-md focus:shadow-md`
41
- }`}
42
- >
43
- {@render headerSnippet(header.label, header.description)}
44
- </a>
45
- </li>
46
- {/if}
47
- {#if items && items.length > 0}
48
- {#each items as item, i (i)}
49
- <MenuListItem {...item} />
50
- {/each}
51
- {/if}
52
- </ul>
53
- </NavDropdown>
1
+ <script lang="ts">
2
+ import type { NavigationMenuItemCardProps } from "../../../data/types";
3
+ import MenuListItem from "../MenuListItem.svelte";
4
+ import NavDropdown from "./NavDropdown.svelte";
5
+
6
+ let {
7
+ label,
8
+ header,
9
+ cards: items,
10
+ hoverClass,
11
+ }: NavigationMenuItemCardProps = $props();
12
+ </script>
13
+
14
+ {#snippet headerSnippet(label: string, description: string)}
15
+ <div class="mt-4 mb-2 text-lg font-medium {header?.labelClass}">
16
+ {label}
17
+ </div>
18
+ <p
19
+ class="text-sm leading-tight {header?.descriptionClass ||
20
+ 'text-muted-foreground'}"
21
+ >
22
+ {description}
23
+ </p>
24
+ {/snippet}
25
+
26
+ <NavDropdown label={label ?? header?.label ?? ""} {hoverClass}>
27
+ <ul class="grid gap-2 p-2 w-100 lg:w-125 lg:grid-cols-[.75fr_1fr]">
28
+ {#if header}
29
+ <li
30
+ class="row-span-3 relative"
31
+ style={header.imgUrl
32
+ ? `background-image: url(${header.imgUrl}); background-repeat: no-repeat; background-size: cover; background-position: center; border-radius: 12px;`
33
+ : ``}
34
+ >
35
+ <a
36
+ href={header.href ?? "#"}
37
+ class={`flex h-full w-full flex-col justify-end p-4 md:p-6 ${
38
+ header.imgUrl
39
+ ? `no-underline outline-hidden select-none`
40
+ : `bg-linear-to-b from-muted/50 to-muted rounded-md focus:shadow-md`
41
+ }`}
42
+ >
43
+ {@render headerSnippet(header.label, header.description)}
44
+ </a>
45
+ </li>
46
+ {/if}
47
+ {#if items && items.length > 0}
48
+ {#each items as item, i (i)}
49
+ <MenuListItem {...item} />
50
+ {/each}
51
+ {/if}
52
+ </ul>
53
+ </NavDropdown>
@@ -1,35 +1,35 @@
1
- <script lang="ts">
2
- import type { NavigationMenuItemGridProps } from "../../../data/types";
3
- import MenuListItem from "../MenuListItem.svelte";
4
- import NavDropdown from "./NavDropdown.svelte";
5
-
6
- let {
7
- label,
8
- grids: items,
9
- textClass,
10
- subTextClass,
11
- hoverClass,
12
- }: NavigationMenuItemGridProps = $props();
13
-
14
- const cols = (): string => {
15
- const len = items?.length ?? 0;
16
- if (len > 5) return "grid-cols-1 md:grid-cols-3";
17
- if (len % 3 == 0) return "grid-cols-1 md:grid-cols-3";
18
- if (len % 2 == 0) return "grid-cols-1 md:grid-cols-2";
19
- return "grid-cols-1";
20
- };
21
-
22
- const gridCols = $derived(cols());
23
- </script>
24
-
25
- <NavDropdown {label} {hoverClass}>
26
- {#if items}
27
- <ul
28
- class={`grid w-75 gap-2 p-2 sm:w-100 md:w-125 lg:min-w-150 max-h-75 overflow-y-auto ${gridCols}`}
29
- >
30
- {#each items as item, i (i)}
31
- <MenuListItem {...item} {textClass} {subTextClass} />
32
- {/each}
33
- </ul>
34
- {/if}
35
- </NavDropdown>
1
+ <script lang="ts">
2
+ import type { NavigationMenuItemGridProps } from "../../../data/types";
3
+ import MenuListItem from "../MenuListItem.svelte";
4
+ import NavDropdown from "./NavDropdown.svelte";
5
+
6
+ let {
7
+ label,
8
+ grids: items,
9
+ textClass,
10
+ subTextClass,
11
+ hoverClass,
12
+ }: NavigationMenuItemGridProps = $props();
13
+
14
+ const cols = (): string => {
15
+ const len = items?.length ?? 0;
16
+ if (len > 5) return "grid-cols-1 md:grid-cols-3";
17
+ if (len % 3 == 0) return "grid-cols-1 md:grid-cols-3";
18
+ if (len % 2 == 0) return "grid-cols-1 md:grid-cols-2";
19
+ return "grid-cols-1";
20
+ };
21
+
22
+ const gridCols = $derived(cols());
23
+ </script>
24
+
25
+ <NavDropdown {label} {hoverClass}>
26
+ {#if items}
27
+ <ul
28
+ class={`grid w-75 gap-2 p-2 sm:w-100 md:w-125 lg:min-w-150 max-h-75 overflow-y-auto ${gridCols}`}
29
+ >
30
+ {#each items as item, i (i)}
31
+ <MenuListItem {...item} {textClass} {subTextClass} />
32
+ {/each}
33
+ </ul>
34
+ {/if}
35
+ </NavDropdown>
@@ -1,24 +1,24 @@
1
- <script lang="ts">
2
- import type { NavigationMenuItemListProps } from "../../../data/types";
3
- import NavDropdown from "./NavDropdown.svelte";
4
-
5
- let { label, list, hoverClass }: NavigationMenuItemListProps = $props();
6
- </script>
7
-
8
- <NavDropdown {label} className="hidden md:block" {hoverClass}>
9
- <ul class="grid w-75 gap-4 p-2">
10
- {#each list as item, i (i)}
11
- <li>
12
- <a
13
- href={item.href}
14
- class="block rounded-xl p-2 no-underline hover:bg-muted"
15
- >
16
- <div class="font-medium">{item.title ?? ""}</div>
17
- <div class="text-muted-foreground">
18
- {item.content}
19
- </div>
20
- </a>
21
- </li>
22
- {/each}
23
- </ul>
24
- </NavDropdown>
1
+ <script lang="ts">
2
+ import type { NavigationMenuItemListProps } from "../../../data/types";
3
+ import NavDropdown from "./NavDropdown.svelte";
4
+
5
+ let { label, list, hoverClass }: NavigationMenuItemListProps = $props();
6
+ </script>
7
+
8
+ <NavDropdown {label} className="hidden md:block" {hoverClass}>
9
+ <ul class="grid w-75 gap-4 p-2">
10
+ {#each list as item, i (i)}
11
+ <li>
12
+ <a
13
+ href={item.href}
14
+ class="block rounded-xl p-2 no-underline hover:bg-muted"
15
+ >
16
+ <div class="font-medium">{item.title ?? ""}</div>
17
+ <div class="text-muted-foreground">
18
+ {item.content}
19
+ </div>
20
+ </a>
21
+ </li>
22
+ {/each}
23
+ </ul>
24
+ </NavDropdown>
@@ -1,21 +1,21 @@
1
- <script lang="ts">
2
- import type { NavigationMenuItemsProps } from "../../../data/types";
3
- import NavDropdown from "./NavDropdown.svelte";
4
-
5
- let { label, items, hoverClass }: NavigationMenuItemsProps = $props();
6
- </script>
7
-
8
- <NavDropdown {label} className="hidden md:block" {hoverClass}>
9
- <ul class="grid min-w-50 gap-4 p-1 md:p-2">
10
- {#each items as item, i (i)}
11
- <li>
12
- <a
13
- href={item.href}
14
- class="block rounded-xl px-3 py-2 text-sm font-medium no-underline hover:bg-muted focus:bg-muted"
15
- >
16
- {item.title}
17
- </a>
18
- </li>
19
- {/each}
20
- </ul>
21
- </NavDropdown>
1
+ <script lang="ts">
2
+ import type { NavigationMenuItemsProps } from "../../../data/types";
3
+ import NavDropdown from "./NavDropdown.svelte";
4
+
5
+ let { label, items, hoverClass }: NavigationMenuItemsProps = $props();
6
+ </script>
7
+
8
+ <NavDropdown {label} className="hidden md:block" {hoverClass}>
9
+ <ul class="grid min-w-50 gap-4 p-1 md:p-2">
10
+ {#each items as item, i (i)}
11
+ <li>
12
+ <a
13
+ href={item.href}
14
+ class="block rounded-xl px-3 py-2 text-sm font-medium no-underline hover:bg-muted focus:bg-muted"
15
+ >
16
+ {item.title}
17
+ </a>
18
+ </li>
19
+ {/each}
20
+ </ul>
21
+ </NavDropdown>
@@ -1,57 +1,57 @@
1
- <script lang="ts">
2
- import * as Carousel from "../carousel/index.js";
3
- import { useDevice } from "../../../hooks/responsive.svelte";
4
- import type { CarouselSlotProps } from "./type";
5
-
6
- const {
7
- positionButtonPreviousAndNext = "center",
8
- isButtonPreviousAndNext = true,
9
- buttonPreviousAndNextClass = "",
10
- isBorderBottom = false,
11
- containerClass = "w-full",
12
- plugins = [],
13
- children,
14
- }: CarouselSlotProps = $props();
15
-
16
- const styleTopCenter = "bg-blue-700! text-white! cursor-pointer!";
17
- const styleCenter =
18
- "absolute top-1/2 -translate-y-1/2 mt-0.5 md:mr-0 z-50 bg-blue-700! text-white! cursor-pointer!";
19
-
20
- const responsive = useDevice();
21
- </script>
22
-
23
- <div
24
- class={`relative py-3 px-2 ${isBorderBottom ? "border-b" : ""} ${containerClass}`}
25
- >
26
- <Carousel.Root {plugins}>
27
- <Carousel.Content
28
- class={positionButtonPreviousAndNext == "top_right" ? "" : "ml-0"}
29
- >
30
- {@render children?.()}
31
- </Carousel.Content>
32
- {#if positionButtonPreviousAndNext == "center" && !responsive.isMobile}
33
- {#if isButtonPreviousAndNext}
34
- <Carousel.Previous
35
- class={`-left-8 ${styleCenter} ${buttonPreviousAndNextClass}`}
36
- />
37
- <Carousel.Next
38
- class={`-right-8 ${styleCenter} ${buttonPreviousAndNextClass}`}
39
- />
40
- {/if}
41
- {/if}
42
- {#if positionButtonPreviousAndNext == "top_right" || responsive.isMobile}
43
- {#if isButtonPreviousAndNext}
44
- <div
45
- class="absolute -top-5 md:-top-10 right-8 md:right-10 lg:right-12 z-20"
46
- >
47
- <Carousel.Previous
48
- class={`${styleTopCenter} ${buttonPreviousAndNextClass}`}
49
- />
50
- <Carousel.Next
51
- class={`start-0 ${styleTopCenter} ${buttonPreviousAndNextClass}`}
52
- />
53
- </div>
54
- {/if}
55
- {/if}
56
- </Carousel.Root>
57
- </div>
1
+ <script lang="ts">
2
+ import * as Carousel from "../carousel/index.js";
3
+ import { useDevice } from "../../../hooks/responsive.svelte";
4
+ import type { CarouselSlotProps } from "./type";
5
+
6
+ const {
7
+ positionButtonPreviousAndNext = "center",
8
+ isButtonPreviousAndNext = true,
9
+ buttonPreviousAndNextClass = "",
10
+ isBorderBottom = false,
11
+ containerClass = "w-full",
12
+ plugins = [],
13
+ children,
14
+ }: CarouselSlotProps = $props();
15
+
16
+ const styleTopCenter = "bg-blue-700! text-white! cursor-pointer!";
17
+ const styleCenter =
18
+ "absolute top-1/2 -translate-y-1/2 mt-0.5 md:mr-0 z-50 bg-blue-700! text-white! cursor-pointer!";
19
+
20
+ const responsive = useDevice();
21
+ </script>
22
+
23
+ <div
24
+ class={`relative py-3 px-2 ${isBorderBottom ? "border-b" : ""} ${containerClass}`}
25
+ >
26
+ <Carousel.Root {plugins}>
27
+ <Carousel.Content
28
+ class={positionButtonPreviousAndNext == "top_right" ? "" : "ml-0"}
29
+ >
30
+ {@render children?.()}
31
+ </Carousel.Content>
32
+ {#if positionButtonPreviousAndNext == "center" && !responsive.isMobile}
33
+ {#if isButtonPreviousAndNext}
34
+ <Carousel.Previous
35
+ class={`-left-8 ${styleCenter} ${buttonPreviousAndNextClass}`}
36
+ />
37
+ <Carousel.Next
38
+ class={`-right-8 ${styleCenter} ${buttonPreviousAndNextClass}`}
39
+ />
40
+ {/if}
41
+ {/if}
42
+ {#if positionButtonPreviousAndNext == "top_right" || responsive.isMobile}
43
+ {#if isButtonPreviousAndNext}
44
+ <div
45
+ class="absolute -top-5 md:-top-10 right-8 md:right-10 lg:right-12 z-20"
46
+ >
47
+ <Carousel.Previous
48
+ class={`${styleTopCenter} ${buttonPreviousAndNextClass}`}
49
+ />
50
+ <Carousel.Next
51
+ class={`start-0 ${styleTopCenter} ${buttonPreviousAndNextClass}`}
52
+ />
53
+ </div>
54
+ {/if}
55
+ {/if}
56
+ </Carousel.Root>
57
+ </div>
@@ -1,114 +1,114 @@
1
- <script lang="ts">
2
- import { HugeiconsIcon } from "@hugeicons/svelte";
3
- import { ArrowRight01Icon } from "@hugeicons/core-free-icons";
4
- import type { LoginCarouselProps } from "../../pages/security/login/types";
5
- import type { Snippet } from "svelte";
6
- import Button from "../button/button.svelte";
7
- import { t } from "../../../i18n";
8
- import Logo from "../../../assets/login-01-admin.webp";
9
-
10
- type Props = {
11
- title?: string | Snippet;
12
- autoPlayInterval?: number;
13
- };
14
-
15
- let {
16
- title,
17
- items = [],
18
- type = "DOT",
19
- autoPlayInterval = 5000,
20
- }: Props & LoginCarouselProps = $props();
21
-
22
- let currentIndex = $state(0);
23
- let currentItem = $derived(items[currentIndex] ?? items[0]);
24
-
25
- function goTo(index: number) {
26
- currentIndex = index;
27
- }
28
-
29
- function next() {
30
- if (items.length === 0) return;
31
- currentIndex = (currentIndex + 1) % items.length;
32
- }
33
-
34
- $effect(() => {
35
- if (items.length <= 1) return;
36
- const timer = setInterval(next, autoPlayInterval);
37
- return () => clearInterval(timer);
38
- });
39
- </script>
40
-
41
- <div
42
- class="relative flex flex-col justify-between overflow-hidden h-screen p-8"
43
- >
44
- <div class="flex items-center gap-2">
45
- <div class="font-bold text-xl tracking-wider flex items-center gap-2">
46
- {#if typeof title === "function"}
47
- {@render title()}
48
- {:else}
49
- {title || $t("label.welcome")}
50
- {/if}
51
- </div>
52
- </div>
53
-
54
- <section class="flex flex-col gap-5">
55
- <div class="my-auto max-w-sm md:max-w-md lg:max-w-100">
56
- {#if currentItem}
57
- {#key currentIndex}
58
- <div
59
- class="text-xl md:text-2xl font-bold tracking-tight mb-4 leading-tight animate-fade-in duration-300"
60
- >
61
- {currentItem.title}
62
- </div>
63
- <p class=" text-sm mb-6 leading-relaxed animate-fade-in duration-300">
64
- {currentItem.description}
65
- </p>
66
- {/key}
67
- <Button
68
- variant="outline"
69
- class="inline-flex items-center gap-2 text-sm font-semibold bg-primary"
70
- >
71
- {currentItem.buttonText}
72
- <HugeiconsIcon icon={ArrowRight01Icon} size={16} />
73
- </Button>
74
- {/if}
75
- </div>
76
-
77
- <div class="flex items-center gap-2 mb-2">
78
- {#each items as it, i (it.title)}
79
- <button
80
- type="button"
81
- onclick={() => goTo(i)}
82
- aria-label={`Ir para o item ${i + 1}`}
83
- aria-current={currentIndex === i}
84
- class="transition-all duration-300 focus:outline-none flex items-center justify-center {currentIndex ===
85
- i
86
- ? 'opacity-100 scale-110'
87
- : 'opacity-50 hover:opacity-75'}"
88
- >
89
- {#if type === "NUMBER"}
90
- <span
91
- class="w-6 h-6 text-xs font-semibold rounded-full text-primary flex items-center justify-center"
92
- >
93
- {i + 1}
94
- </span>
95
- {:else}
96
- <span class="w-2 h-2 rounded-full bg-white"></span>
97
- {/if}
98
- </button>
99
- {/each}
100
- </div>
101
- </section>
102
-
103
- <aside
104
- class="hidden z-50 lg:absolute lg:right-0 lg:-bottom-3 lg:w-105 lg:h-105"
105
- >
106
- <img
107
- src={Logo}
108
- alt=""
109
- class="shadow rounded-tl-lg rounded-bl-lg lg:w-105 lg:h-105"
110
- />
111
- </aside>
112
- </div>
113
-
114
- <aside class="absolute grid-pattern p-0 top-0 h-screen w-8/12"></aside>
1
+ <script lang="ts">
2
+ import { HugeiconsIcon } from "@hugeicons/svelte";
3
+ import { ArrowRight01Icon } from "@hugeicons/core-free-icons";
4
+ import type { LoginCarouselProps } from "../../pages/security/login/types";
5
+ import type { Snippet } from "svelte";
6
+ import Button from "../button/button.svelte";
7
+ import { t } from "../../../i18n";
8
+ import Logo from "../../../assets/login-01-admin.webp";
9
+
10
+ type Props = {
11
+ title?: string | Snippet;
12
+ autoPlayInterval?: number;
13
+ };
14
+
15
+ let {
16
+ title,
17
+ items = [],
18
+ type = "DOT",
19
+ autoPlayInterval = 5000,
20
+ }: Props & LoginCarouselProps = $props();
21
+
22
+ let currentIndex = $state(0);
23
+ let currentItem = $derived(items[currentIndex] ?? items[0]);
24
+
25
+ function goTo(index: number) {
26
+ currentIndex = index;
27
+ }
28
+
29
+ function next() {
30
+ if (items.length === 0) return;
31
+ currentIndex = (currentIndex + 1) % items.length;
32
+ }
33
+
34
+ $effect(() => {
35
+ if (items.length <= 1) return;
36
+ const timer = setInterval(next, autoPlayInterval);
37
+ return () => clearInterval(timer);
38
+ });
39
+ </script>
40
+
41
+ <div
42
+ class="relative flex flex-col justify-between overflow-hidden h-screen p-8"
43
+ >
44
+ <div class="flex items-center gap-2">
45
+ <div class="font-bold text-xl tracking-wider flex items-center gap-2">
46
+ {#if typeof title === "function"}
47
+ {@render title()}
48
+ {:else}
49
+ {title || $t("label.welcome")}
50
+ {/if}
51
+ </div>
52
+ </div>
53
+
54
+ <section class="flex flex-col gap-5">
55
+ <div class="my-auto max-w-sm md:max-w-md lg:max-w-100">
56
+ {#if currentItem}
57
+ {#key currentIndex}
58
+ <div
59
+ class="text-xl md:text-2xl font-bold tracking-tight mb-4 leading-tight animate-fade-in duration-300"
60
+ >
61
+ {currentItem.title}
62
+ </div>
63
+ <p class=" text-sm mb-6 leading-relaxed animate-fade-in duration-300">
64
+ {currentItem.description}
65
+ </p>
66
+ {/key}
67
+ <Button
68
+ variant="outline"
69
+ class="inline-flex items-center gap-2 text-sm font-semibold bg-primary"
70
+ >
71
+ {currentItem.buttonText}
72
+ <HugeiconsIcon icon={ArrowRight01Icon} size={16} />
73
+ </Button>
74
+ {/if}
75
+ </div>
76
+
77
+ <div class="flex items-center gap-2 mb-2">
78
+ {#each items as it, i (it.title)}
79
+ <button
80
+ type="button"
81
+ onclick={() => goTo(i)}
82
+ aria-label={`Ir para o item ${i + 1}`}
83
+ aria-current={currentIndex === i}
84
+ class="transition-all duration-300 focus:outline-none flex items-center justify-center {currentIndex ===
85
+ i
86
+ ? 'opacity-100 scale-110'
87
+ : 'opacity-50 hover:opacity-75'}"
88
+ >
89
+ {#if type === "NUMBER"}
90
+ <span
91
+ class="w-6 h-6 text-xs font-semibold rounded-full text-primary flex items-center justify-center"
92
+ >
93
+ {i + 1}
94
+ </span>
95
+ {:else}
96
+ <span class="w-2 h-2 rounded-full bg-white"></span>
97
+ {/if}
98
+ </button>
99
+ {/each}
100
+ </div>
101
+ </section>
102
+
103
+ <aside
104
+ class="hidden z-50 lg:absolute lg:right-0 lg:-bottom-3 lg:w-105 lg:h-105"
105
+ >
106
+ <img
107
+ src={Logo}
108
+ alt=""
109
+ class="shadow rounded-tl-lg rounded-bl-lg lg:w-105 lg:h-105"
110
+ />
111
+ </aside>
112
+ </div>
113
+
114
+ <aside class="absolute grid-pattern p-0 top-0 h-screen w-8/12"></aside>