flowbite-angular 0.0.2 → 1.0.0-alpha.1

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 (400) hide show
  1. package/{esm2020 → esm2022}/flowbite-angular.mjs +2 -2
  2. package/esm2022/lib/common/flowbite.theme.init.mjs +318 -0
  3. package/esm2022/lib/common/index.mjs +3 -0
  4. package/esm2022/lib/common/type-definitions/colors/flowbite.colors.mjs +2 -0
  5. package/esm2022/lib/common/type-definitions/colors/flowbite.gradient-colors.mjs +2 -0
  6. package/esm2022/lib/common/type-definitions/colors/flowbite.gradient-duo-tone-colors.mjs +2 -0
  7. package/esm2022/lib/common/type-definitions/colors/index.mjs +2 -0
  8. package/esm2022/lib/common/type-definitions/flowbite.boolean.mjs +2 -0
  9. package/esm2022/lib/common/type-definitions/flowbite.class.mjs +2 -0
  10. package/esm2022/lib/common/type-definitions/flowbite.combination.mjs +5 -0
  11. package/esm2022/lib/common/type-definitions/flowbite.content-positions.mjs +2 -0
  12. package/esm2022/lib/common/type-definitions/flowbite.deep-partial.mjs +2 -0
  13. package/esm2022/lib/common/type-definitions/flowbite.heading-levels.mjs +2 -0
  14. package/esm2022/lib/common/type-definitions/flowbite.positions.mjs +2 -0
  15. package/esm2022/lib/common/type-definitions/flowbite.router-link-parameter.mjs +2 -0
  16. package/esm2022/lib/common/type-definitions/flowbite.sizes.mjs +2 -0
  17. package/esm2022/lib/common/type-definitions/flowbite.themes.mjs +2 -0
  18. package/esm2022/lib/common/type-definitions/index.mjs +2 -0
  19. package/esm2022/lib/components/accordion/accordion-content.component.mjs +46 -0
  20. package/esm2022/lib/components/accordion/accordion-content.theme.mjs +19 -0
  21. package/esm2022/lib/components/accordion/accordion-content.theme.service.mjs +17 -0
  22. package/esm2022/lib/components/accordion/accordion-panel.component.mjs +57 -0
  23. package/esm2022/lib/components/accordion/accordion-panel.theme.mjs +7 -0
  24. package/esm2022/lib/components/accordion/accordion-panel.theme.service.mjs +17 -0
  25. package/esm2022/lib/components/accordion/accordion-title.component.mjs +70 -0
  26. package/esm2022/lib/components/accordion/accordion-title.theme.mjs +26 -0
  27. package/esm2022/lib/components/accordion/accordion-title.theme.service.mjs +18 -0
  28. package/esm2022/lib/components/accordion/accordion.component.mjs +49 -0
  29. package/esm2022/lib/components/accordion/accordion.theme.mjs +19 -0
  30. package/esm2022/lib/components/accordion/accordion.theme.service.mjs +17 -0
  31. package/esm2022/lib/components/accordion/index.mjs +13 -0
  32. package/esm2022/lib/components/alert/alert.component.mjs +99 -0
  33. package/esm2022/lib/components/alert/alert.theme.mjs +34 -0
  34. package/esm2022/lib/components/alert/alert.theme.service.mjs +18 -0
  35. package/esm2022/lib/components/alert/index.mjs +4 -0
  36. package/esm2022/lib/components/badge/badge.component.mjs +47 -0
  37. package/esm2022/lib/components/badge/badge.theme.mjs +34 -0
  38. package/esm2022/lib/components/badge/badge.theme.service.mjs +17 -0
  39. package/esm2022/lib/components/badge/index.mjs +4 -0
  40. package/esm2022/lib/components/base-component.directive.mjs +34 -0
  41. package/esm2022/lib/components/breadcrumb/breadcrumb-item.component.mjs +57 -0
  42. package/esm2022/lib/components/breadcrumb/breadcrumb-item.theme.mjs +18 -0
  43. package/esm2022/lib/components/breadcrumb/breadcrumb-item.theme.service.mjs +18 -0
  44. package/esm2022/lib/components/breadcrumb/breadcrumb.component.mjs +46 -0
  45. package/esm2022/lib/components/breadcrumb/breadcrumb.theme.mjs +7 -0
  46. package/esm2022/lib/components/breadcrumb/breadcrumb.theme.service.mjs +17 -0
  47. package/esm2022/lib/components/breadcrumb/index.mjs +7 -0
  48. package/esm2022/lib/components/button/button.component.mjs +81 -0
  49. package/esm2022/lib/components/button/button.theme.mjs +113 -0
  50. package/esm2022/lib/components/button/button.theme.service.mjs +24 -0
  51. package/esm2022/lib/components/button/index.mjs +4 -0
  52. package/esm2022/lib/components/dark-theme-toggle/dark-theme-toggle.component.mjs +86 -0
  53. package/esm2022/lib/components/dark-theme-toggle/dark-theme-toggle.theme.mjs +7 -0
  54. package/esm2022/lib/components/dark-theme-toggle/dark-theme-toggle.theme.service.mjs +17 -0
  55. package/esm2022/lib/components/dark-theme-toggle/index.mjs +4 -0
  56. package/esm2022/lib/components/dropdown/dropdown-divider.component.mjs +34 -0
  57. package/esm2022/lib/components/dropdown/dropdown-divider.theme.mjs +7 -0
  58. package/esm2022/lib/components/dropdown/dropdown-divider.theme.service.mjs +17 -0
  59. package/esm2022/lib/components/dropdown/dropdown-header.component.mjs +44 -0
  60. package/esm2022/lib/components/dropdown/dropdown-header.theme.mjs +10 -0
  61. package/esm2022/lib/components/dropdown/dropdown-header.theme.service.mjs +18 -0
  62. package/esm2022/lib/components/dropdown/dropdown-item.component.mjs +34 -0
  63. package/esm2022/lib/components/dropdown/dropdown-item.theme.mjs +6 -0
  64. package/esm2022/lib/components/dropdown/dropdown-item.theme.service.mjs +17 -0
  65. package/esm2022/lib/components/dropdown/dropdown.component.mjs +161 -0
  66. package/esm2022/lib/components/dropdown/dropdown.theme.mjs +32 -0
  67. package/esm2022/lib/components/dropdown/dropdown.theme.service.mjs +22 -0
  68. package/esm2022/lib/components/dropdown/index.mjs +13 -0
  69. package/esm2022/lib/components/form-field/directives/addon.directive.mjs +32 -0
  70. package/esm2022/lib/components/form-field/directives/addon.directive.theme.mjs +8 -0
  71. package/esm2022/lib/components/form-field/directives/addon.directive.theme.service.mjs +17 -0
  72. package/esm2022/lib/components/form-field/directives/base-input.directive.mjs +26 -0
  73. package/esm2022/lib/components/form-field/directives/helper.directive.mjs +34 -0
  74. package/esm2022/lib/components/form-field/directives/helper.directive.theme.mjs +12 -0
  75. package/esm2022/lib/components/form-field/directives/helper.directive.theme.service.mjs +17 -0
  76. package/esm2022/lib/components/form-field/directives/icon.directive.mjs +32 -0
  77. package/esm2022/lib/components/form-field/directives/icon.directive.theme.mjs +8 -0
  78. package/esm2022/lib/components/form-field/directives/icon.directive.theme.service.mjs +17 -0
  79. package/esm2022/lib/components/form-field/directives/index.mjs +17 -0
  80. package/esm2022/lib/components/form-field/directives/input.directive.mjs +41 -0
  81. package/esm2022/lib/components/form-field/directives/input.directive.theme.mjs +79 -0
  82. package/esm2022/lib/components/form-field/directives/input.directive.theme.service.mjs +24 -0
  83. package/esm2022/lib/components/form-field/directives/label.directive.mjs +41 -0
  84. package/esm2022/lib/components/form-field/directives/label.directive.theme.mjs +51 -0
  85. package/esm2022/lib/components/form-field/directives/label.directive.theme.service.mjs +21 -0
  86. package/esm2022/lib/components/form-field/form-field.component.mjs +40 -0
  87. package/esm2022/lib/components/form-field/form-field.theme.mjs +8 -0
  88. package/esm2022/lib/components/form-field/form-field.theme.service.mjs +17 -0
  89. package/esm2022/lib/components/form-field/index.mjs +5 -0
  90. package/esm2022/lib/components/icon/icon-registry.mjs +159 -0
  91. package/esm2022/lib/components/icon/icon.component.mjs +67 -0
  92. package/esm2022/lib/components/icon/index.mjs +4 -0
  93. package/esm2022/lib/components/icon/trusted-types.mjs +21 -0
  94. package/esm2022/lib/components/index.mjs +16 -0
  95. package/esm2022/lib/components/indicators/index.mjs +4 -0
  96. package/esm2022/lib/components/indicators/indicators.component.mjs +54 -0
  97. package/esm2022/lib/components/indicators/indicators.theme.mjs +68 -0
  98. package/esm2022/lib/components/indicators/indicators.theme.service.mjs +17 -0
  99. package/esm2022/lib/components/modal/index.mjs +13 -0
  100. package/esm2022/lib/components/modal/modal-body.component.mjs +34 -0
  101. package/esm2022/lib/components/modal/modal-body.theme.mjs +7 -0
  102. package/esm2022/lib/components/modal/modal-body.theme.service.mjs +17 -0
  103. package/esm2022/lib/components/modal/modal-footer.component.mjs +34 -0
  104. package/esm2022/lib/components/modal/modal-footer.theme.mjs +7 -0
  105. package/esm2022/lib/components/modal/modal-footer.theme.service.mjs +17 -0
  106. package/esm2022/lib/components/modal/modal-header.component.mjs +70 -0
  107. package/esm2022/lib/components/modal/modal-header.theme.mjs +13 -0
  108. package/esm2022/lib/components/modal/modal-header.theme.service.mjs +19 -0
  109. package/esm2022/lib/components/modal/modal.component.mjs +146 -0
  110. package/esm2022/lib/components/modal/modal.theme.mjs +33 -0
  111. package/esm2022/lib/components/modal/modal.theme.service.mjs +20 -0
  112. package/esm2022/lib/components/navbar/index.mjs +19 -0
  113. package/esm2022/lib/components/navbar/navbar-brand.component.mjs +34 -0
  114. package/esm2022/lib/components/navbar/navbar-brand.theme.mjs +7 -0
  115. package/esm2022/lib/components/navbar/navbar-brand.theme.service.mjs +17 -0
  116. package/esm2022/lib/components/navbar/navbar-content.component.mjs +45 -0
  117. package/esm2022/lib/components/navbar/navbar-content.theme.mjs +14 -0
  118. package/esm2022/lib/components/navbar/navbar-content.theme.service.mjs +18 -0
  119. package/esm2022/lib/components/navbar/navbar-icon-button.component.mjs +42 -0
  120. package/esm2022/lib/components/navbar/navbar-icon-button.theme.mjs +15 -0
  121. package/esm2022/lib/components/navbar/navbar-icon-button.theme.service.mjs +17 -0
  122. package/esm2022/lib/components/navbar/navbar-item.component.mjs +47 -0
  123. package/esm2022/lib/components/navbar/navbar-item.theme.mjs +11 -0
  124. package/esm2022/lib/components/navbar/navbar-item.theme.service.mjs +17 -0
  125. package/esm2022/lib/components/navbar/navbar-toggle.component.mjs +58 -0
  126. package/esm2022/lib/components/navbar/navbar-toggle.theme.mjs +7 -0
  127. package/esm2022/lib/components/navbar/navbar-toggle.theme.service.mjs +17 -0
  128. package/esm2022/lib/components/navbar/navbar.component.mjs +62 -0
  129. package/esm2022/lib/components/navbar/navbar.theme.mjs +23 -0
  130. package/esm2022/lib/components/navbar/navbar.theme.service.mjs +17 -0
  131. package/esm2022/lib/components/scroll-top/index.mjs +4 -0
  132. package/esm2022/lib/components/scroll-top/scroll-top.component.mjs +54 -0
  133. package/esm2022/lib/components/scroll-top/scroll-top.theme.mjs +27 -0
  134. package/esm2022/lib/components/scroll-top/scroll-top.theme.service.mjs +17 -0
  135. package/esm2022/lib/components/sidebar/index.mjs +19 -0
  136. package/esm2022/lib/components/sidebar/sidebar-item-group.component.mjs +85 -0
  137. package/esm2022/lib/components/sidebar/sidebar-item-group.theme.mjs +18 -0
  138. package/esm2022/lib/components/sidebar/sidebar-item-group.theme.service.mjs +18 -0
  139. package/esm2022/lib/components/sidebar/sidebar-item.component.mjs +85 -0
  140. package/esm2022/lib/components/sidebar/sidebar-item.theme.mjs +18 -0
  141. package/esm2022/lib/components/sidebar/sidebar-item.theme.service.mjs +18 -0
  142. package/esm2022/lib/components/sidebar/sidebar-menu.component.mjs +49 -0
  143. package/esm2022/lib/components/sidebar/sidebar-menu.theme.mjs +24 -0
  144. package/esm2022/lib/components/sidebar/sidebar-menu.theme.service.mjs +17 -0
  145. package/esm2022/lib/components/sidebar/sidebar-page-content.component.mjs +36 -0
  146. package/esm2022/lib/components/sidebar/sidebar-page-content.theme.mjs +12 -0
  147. package/esm2022/lib/components/sidebar/sidebar-page-content.theme.service.mjs +17 -0
  148. package/esm2022/lib/components/sidebar/sidebar-toggle.component.mjs +53 -0
  149. package/esm2022/lib/components/sidebar/sidebar-toggle.theme.mjs +18 -0
  150. package/esm2022/lib/components/sidebar/sidebar-toggle.theme.service.mjs +17 -0
  151. package/esm2022/lib/components/sidebar/sidebar.component.mjs +61 -0
  152. package/esm2022/lib/components/sidebar/sidebar.theme.mjs +11 -0
  153. package/esm2022/lib/components/sidebar/sidebar.theme.service.mjs +17 -0
  154. package/esm2022/lib/directives/flowbite-router-link-active.directive.mjs +51 -0
  155. package/esm2022/lib/directives/flowbite-router-link.directive.mjs +44 -0
  156. package/esm2022/lib/directives/index.mjs +3 -0
  157. package/esm2022/lib/pipes/index.mjs +2 -0
  158. package/esm2022/lib/pipes/sanitize-html/sanitize-html.pipe.mjs +32 -0
  159. package/esm2022/lib/services/flowbite.theme.service.mjs +16 -0
  160. package/esm2022/lib/services/index.mjs +4 -0
  161. package/esm2022/lib/services/signal-store.service.mjs +61 -0
  162. package/esm2022/lib/services/state/index.mjs +2 -0
  163. package/esm2022/lib/services/state/theme.state.mjs +2 -0
  164. package/esm2022/lib/utils/boolean.util.mjs +10 -0
  165. package/esm2022/lib/utils/directives/index.mjs +3 -0
  166. package/esm2022/lib/utils/directives/inputs/index.mjs +3 -0
  167. package/esm2022/lib/utils/directives/inputs/router-link-active.input.mjs +8 -0
  168. package/esm2022/lib/utils/directives/inputs/router-link.inputs.mjs +20 -0
  169. package/esm2022/lib/utils/directives/outputs/index.mjs +3 -0
  170. package/esm2022/lib/utils/directives/outputs/router-link-active.output.mjs +8 -0
  171. package/esm2022/lib/utils/directives/outputs/router-link.output.mjs +8 -0
  172. package/esm2022/lib/utils/icon.list.mjs +39 -0
  173. package/esm2022/lib/utils/id.generator.mjs +81 -0
  174. package/esm2022/lib/utils/index.mjs +9 -0
  175. package/esm2022/lib/utils/theme/clone-deep.mjs +18 -0
  176. package/esm2022/lib/utils/theme/create-class.mjs +10 -0
  177. package/esm2022/lib/utils/theme/create-theme.mjs +10 -0
  178. package/esm2022/lib/utils/theme/is-object.mjs +10 -0
  179. package/esm2022/lib/utils/theme/merge-theme.mjs +27 -0
  180. package/esm2022/lib/utils/theme/to-string.mjs +10 -0
  181. package/esm2022/public-api.mjs +7 -0
  182. package/fesm2022/flowbite-angular.mjs +4326 -0
  183. package/fesm2022/flowbite-angular.mjs.map +1 -0
  184. package/index.d.ts +5 -4
  185. package/lib/common/flowbite.theme.init.d.ts +9 -0
  186. package/lib/common/index.d.ts +2 -0
  187. package/lib/common/type-definitions/colors/flowbite.colors.d.ts +19 -0
  188. package/lib/common/type-definitions/colors/flowbite.gradient-colors.d.ts +11 -0
  189. package/lib/common/type-definitions/colors/flowbite.gradient-duo-tone-colors.d.ts +12 -0
  190. package/lib/common/type-definitions/colors/index.d.ts +3 -0
  191. package/lib/common/type-definitions/flowbite.boolean.d.ts +7 -0
  192. package/lib/common/type-definitions/flowbite.class.d.ts +6 -0
  193. package/lib/common/type-definitions/flowbite.combination.d.ts +8 -0
  194. package/lib/common/type-definitions/flowbite.content-positions.d.ts +6 -0
  195. package/lib/common/type-definitions/flowbite.deep-partial.d.ts +6 -0
  196. package/lib/common/type-definitions/flowbite.heading-levels.d.ts +4 -0
  197. package/lib/common/type-definitions/flowbite.positions.d.ts +14 -0
  198. package/lib/common/type-definitions/flowbite.router-link-parameter.d.ts +5 -0
  199. package/lib/common/type-definitions/flowbite.sizes.d.ts +10 -0
  200. package/lib/common/type-definitions/flowbite.themes.d.ts +4 -0
  201. package/lib/common/type-definitions/index.d.ts +11 -0
  202. package/lib/components/accordion/accordion-content.component.d.ts +32 -0
  203. package/lib/components/accordion/accordion-content.theme.d.ts +16 -0
  204. package/lib/components/accordion/accordion-content.theme.service.d.ts +8 -0
  205. package/lib/components/accordion/accordion-panel.component.d.ts +27 -0
  206. package/lib/components/accordion/accordion-panel.theme.d.ts +11 -0
  207. package/lib/components/accordion/accordion-panel.theme.service.d.ts +9 -0
  208. package/lib/components/accordion/accordion-title.component.d.ts +46 -0
  209. package/lib/components/accordion/accordion-title.theme.d.ts +24 -0
  210. package/lib/components/accordion/accordion-title.theme.service.d.ts +8 -0
  211. package/lib/components/accordion/accordion.component.d.ts +35 -0
  212. package/lib/components/accordion/accordion.theme.d.ts +21 -0
  213. package/lib/components/accordion/accordion.theme.service.d.ts +8 -0
  214. package/lib/components/accordion/index.d.ts +16 -0
  215. package/lib/components/alert/alert.component.d.ts +53 -12
  216. package/lib/components/alert/alert.theme.d.ts +27 -0
  217. package/lib/components/alert/alert.theme.service.d.ts +8 -0
  218. package/lib/components/alert/index.d.ts +4 -1
  219. package/lib/components/badge/badge.component.d.ts +50 -10
  220. package/lib/components/badge/badge.theme.d.ts +32 -0
  221. package/lib/components/badge/badge.theme.service.d.ts +8 -0
  222. package/lib/components/badge/index.d.ts +4 -1
  223. package/lib/components/base-component.directive.d.ts +19 -0
  224. package/lib/components/breadcrumb/breadcrumb-item.component.d.ts +39 -0
  225. package/lib/components/breadcrumb/breadcrumb-item.theme.d.ts +22 -0
  226. package/lib/components/breadcrumb/breadcrumb-item.theme.service.d.ts +8 -0
  227. package/lib/components/breadcrumb/breadcrumb.component.d.ts +22 -0
  228. package/lib/components/breadcrumb/breadcrumb.theme.d.ts +14 -0
  229. package/lib/components/breadcrumb/breadcrumb.theme.service.d.ts +8 -0
  230. package/lib/components/breadcrumb/index.d.ts +8 -0
  231. package/lib/components/button/button.component.d.ts +110 -0
  232. package/lib/components/button/button.theme.d.ts +56 -0
  233. package/lib/components/button/button.theme.service.d.ts +8 -0
  234. package/lib/components/button/index.d.ts +4 -0
  235. package/lib/components/dark-theme-toggle/dark-theme-toggle.component.d.ts +21 -9
  236. package/lib/components/dark-theme-toggle/dark-theme-toggle.theme.d.ts +11 -0
  237. package/lib/components/dark-theme-toggle/dark-theme-toggle.theme.service.d.ts +8 -0
  238. package/lib/components/dark-theme-toggle/index.d.ts +4 -1
  239. package/lib/components/dropdown/dropdown-divider.component.d.ts +13 -0
  240. package/lib/components/dropdown/dropdown-divider.theme.d.ts +11 -0
  241. package/lib/components/dropdown/dropdown-divider.theme.service.d.ts +8 -0
  242. package/lib/components/dropdown/dropdown-header.component.d.ts +13 -0
  243. package/lib/components/dropdown/dropdown-header.theme.d.ts +16 -0
  244. package/lib/components/dropdown/dropdown-header.theme.service.d.ts +8 -0
  245. package/lib/components/dropdown/dropdown-item.component.d.ts +17 -0
  246. package/lib/components/dropdown/dropdown-item.theme.d.ts +11 -0
  247. package/lib/components/dropdown/dropdown-item.theme.service.d.ts +8 -0
  248. package/lib/components/dropdown/dropdown.component.d.ts +71 -0
  249. package/lib/components/dropdown/dropdown.theme.d.ts +44 -0
  250. package/lib/components/dropdown/dropdown.theme.service.d.ts +8 -0
  251. package/lib/components/dropdown/index.d.ts +16 -0
  252. package/lib/components/form-field/directives/addon.directive.d.ts +13 -0
  253. package/lib/components/form-field/directives/addon.directive.theme.d.ts +10 -0
  254. package/lib/components/form-field/directives/addon.directive.theme.service.d.ts +8 -0
  255. package/lib/components/form-field/directives/base-input.directive.d.ts +14 -0
  256. package/lib/components/form-field/directives/helper.directive.d.ts +18 -0
  257. package/lib/components/form-field/directives/helper.directive.theme.d.ts +13 -0
  258. package/lib/components/form-field/directives/helper.directive.theme.service.d.ts +8 -0
  259. package/lib/components/form-field/directives/icon.directive.d.ts +13 -0
  260. package/lib/components/form-field/directives/icon.directive.theme.d.ts +10 -0
  261. package/lib/components/form-field/directives/icon.directive.theme.service.d.ts +8 -0
  262. package/lib/components/form-field/directives/index.d.ts +21 -0
  263. package/lib/components/form-field/directives/input.directive.d.ts +100 -0
  264. package/lib/components/form-field/directives/input.directive.theme.d.ts +24 -0
  265. package/lib/components/form-field/directives/input.directive.theme.service.d.ts +8 -0
  266. package/lib/components/form-field/directives/label.directive.d.ts +62 -0
  267. package/lib/components/form-field/directives/label.directive.theme.d.ts +20 -0
  268. package/lib/components/form-field/directives/label.directive.theme.service.d.ts +8 -0
  269. package/lib/components/form-field/form-field.component.d.ts +20 -0
  270. package/lib/components/form-field/form-field.theme.d.ts +45 -0
  271. package/lib/components/form-field/form-field.theme.service.d.ts +8 -0
  272. package/lib/components/form-field/index.d.ts +5 -0
  273. package/lib/components/icon/icon-registry.d.ts +45 -0
  274. package/lib/components/icon/icon.component.d.ts +22 -0
  275. package/lib/components/icon/index.d.ts +5 -0
  276. package/lib/components/icon/trusted-types.d.ts +15 -0
  277. package/lib/components/index.d.ts +10 -0
  278. package/lib/components/indicators/index.d.ts +4 -0
  279. package/lib/components/indicators/indicators.component.d.ts +92 -0
  280. package/lib/components/indicators/indicators.theme.d.ts +43 -0
  281. package/lib/components/indicators/indicators.theme.service.d.ts +8 -0
  282. package/lib/components/modal/index.d.ts +16 -0
  283. package/lib/components/modal/modal-body.component.d.ts +17 -0
  284. package/lib/components/modal/modal-body.theme.d.ts +11 -0
  285. package/lib/components/modal/modal-body.theme.service.d.ts +8 -0
  286. package/lib/components/modal/modal-footer.component.d.ts +17 -0
  287. package/lib/components/modal/modal-footer.theme.d.ts +11 -0
  288. package/lib/components/modal/modal-footer.theme.service.d.ts +8 -0
  289. package/lib/components/modal/modal-header.component.d.ts +29 -0
  290. package/lib/components/modal/modal-header.theme.d.ts +20 -0
  291. package/lib/components/modal/modal-header.theme.service.d.ts +8 -0
  292. package/lib/components/modal/modal.component.d.ts +73 -0
  293. package/lib/components/modal/modal.theme.d.ts +39 -0
  294. package/lib/components/modal/modal.theme.service.d.ts +8 -0
  295. package/lib/components/navbar/index.d.ts +24 -1
  296. package/lib/components/navbar/navbar-brand.component.d.ts +17 -0
  297. package/lib/components/navbar/navbar-brand.theme.d.ts +11 -0
  298. package/lib/components/navbar/navbar-brand.theme.service.d.ts +8 -0
  299. package/lib/components/navbar/navbar-content.component.d.ts +27 -0
  300. package/lib/components/navbar/navbar-content.theme.d.ts +18 -0
  301. package/lib/components/navbar/navbar-content.theme.service.d.ts +8 -0
  302. package/lib/components/navbar/navbar-icon-button.component.d.ts +27 -0
  303. package/lib/components/navbar/navbar-icon-button.theme.d.ts +14 -0
  304. package/lib/components/navbar/navbar-icon-button.theme.service.d.ts +8 -0
  305. package/lib/components/navbar/navbar-item.component.d.ts +29 -0
  306. package/lib/components/navbar/navbar-item.theme.d.ts +15 -0
  307. package/lib/components/navbar/navbar-item.theme.service.d.ts +8 -0
  308. package/lib/components/navbar/navbar-toggle.component.d.ts +23 -0
  309. package/lib/components/navbar/navbar-toggle.theme.d.ts +11 -0
  310. package/lib/components/navbar/navbar-toggle.theme.service.d.ts +8 -0
  311. package/lib/components/navbar/navbar.component.d.ts +45 -6
  312. package/lib/components/navbar/navbar.theme.d.ts +24 -0
  313. package/lib/components/navbar/navbar.theme.service.d.ts +8 -0
  314. package/lib/components/scroll-top/index.d.ts +4 -0
  315. package/lib/components/scroll-top/scroll-top.component.d.ts +46 -0
  316. package/lib/components/scroll-top/scroll-top.theme.d.ts +21 -0
  317. package/lib/components/scroll-top/scroll-top.theme.service.d.ts +8 -0
  318. package/lib/components/sidebar/index.d.ts +24 -3
  319. package/lib/components/sidebar/sidebar-item-group.component.d.ts +41 -2
  320. package/lib/components/sidebar/sidebar-item-group.theme.d.ts +19 -0
  321. package/lib/components/sidebar/sidebar-item-group.theme.service.d.ts +8 -0
  322. package/lib/components/sidebar/sidebar-item.component.d.ts +38 -8
  323. package/lib/components/sidebar/sidebar-item.theme.d.ts +22 -0
  324. package/lib/components/sidebar/sidebar-item.theme.service.d.ts +8 -0
  325. package/lib/components/sidebar/sidebar-menu.component.d.ts +43 -0
  326. package/lib/components/sidebar/sidebar-menu.theme.d.ts +18 -0
  327. package/lib/components/sidebar/sidebar-menu.theme.service.d.ts +8 -0
  328. package/lib/components/sidebar/sidebar-page-content.component.d.ts +22 -0
  329. package/lib/components/sidebar/sidebar-page-content.theme.d.ts +15 -0
  330. package/lib/components/sidebar/sidebar-page-content.theme.service.d.ts +8 -0
  331. package/lib/components/sidebar/sidebar-toggle.component.d.ts +40 -0
  332. package/lib/components/sidebar/sidebar-toggle.theme.d.ts +19 -0
  333. package/lib/components/sidebar/sidebar-toggle.theme.service.d.ts +8 -0
  334. package/lib/components/sidebar/sidebar.component.d.ts +30 -7
  335. package/lib/components/sidebar/sidebar.theme.d.ts +25 -0
  336. package/lib/components/sidebar/sidebar.theme.service.d.ts +8 -0
  337. package/lib/directives/flowbite-router-link-active.directive.d.ts +25 -0
  338. package/lib/directives/flowbite-router-link.directive.d.ts +16 -0
  339. package/lib/directives/index.d.ts +2 -0
  340. package/lib/pipes/index.d.ts +1 -1
  341. package/lib/pipes/sanitize-html/sanitize-html.pipe.d.ts +14 -4
  342. package/lib/services/flowbite.theme.service.d.ts +10 -0
  343. package/lib/services/index.d.ts +3 -2
  344. package/lib/services/signal-store.service.d.ts +46 -0
  345. package/lib/services/state/index.d.ts +1 -0
  346. package/lib/services/state/theme.state.d.ts +4 -0
  347. package/lib/utils/boolean.util.d.ts +8 -0
  348. package/lib/utils/directives/index.d.ts +2 -0
  349. package/lib/utils/directives/inputs/index.d.ts +2 -0
  350. package/lib/utils/directives/inputs/router-link-active.input.d.ts +8 -0
  351. package/lib/utils/directives/inputs/router-link.inputs.d.ts +8 -0
  352. package/lib/utils/directives/outputs/index.d.ts +2 -0
  353. package/lib/utils/directives/outputs/router-link-active.output.d.ts +8 -0
  354. package/lib/utils/directives/outputs/router-link.output.d.ts +8 -0
  355. package/lib/utils/icon.list.d.ts +7 -0
  356. package/lib/utils/id.generator.d.ts +59 -0
  357. package/lib/utils/index.d.ts +8 -0
  358. package/lib/utils/theme/clone-deep.d.ts +7 -0
  359. package/lib/utils/theme/create-class.d.ts +7 -0
  360. package/lib/utils/theme/create-theme.d.ts +7 -0
  361. package/lib/utils/theme/is-object.d.ts +7 -0
  362. package/lib/utils/theme/merge-theme.d.ts +8 -0
  363. package/lib/utils/theme/to-string.d.ts +7 -0
  364. package/package.json +11 -25
  365. package/public-api.d.ts +6 -0
  366. package/LICENSE +0 -21
  367. package/README.md +0 -376
  368. package/esm2020/index.mjs +0 -5
  369. package/esm2020/lib/components/alert/alert.component.mjs +0 -128
  370. package/esm2020/lib/components/alert/index.mjs +0 -2
  371. package/esm2020/lib/components/badge/badge.component.mjs +0 -77
  372. package/esm2020/lib/components/badge/index.mjs +0 -2
  373. package/esm2020/lib/components/dark-theme-toggle/dark-theme-toggle.component.mjs +0 -122
  374. package/esm2020/lib/components/dark-theme-toggle/index.mjs +0 -2
  375. package/esm2020/lib/components/index.mjs +0 -6
  376. package/esm2020/lib/components/navbar/index.mjs +0 -2
  377. package/esm2020/lib/components/navbar/navbar.component.mjs +0 -49
  378. package/esm2020/lib/components/sidebar/index.mjs +0 -4
  379. package/esm2020/lib/components/sidebar/sidebar-item-group.component.mjs +0 -18
  380. package/esm2020/lib/components/sidebar/sidebar-item.component.mjs +0 -73
  381. package/esm2020/lib/components/sidebar/sidebar.component.mjs +0 -50
  382. package/esm2020/lib/flowbite.module.mjs +0 -45
  383. package/esm2020/lib/pipes/index.mjs +0 -2
  384. package/esm2020/lib/pipes/sanitize-html/sanitize-html.pipe.mjs +0 -21
  385. package/esm2020/lib/services/index.mjs +0 -3
  386. package/esm2020/lib/services/sidebar/index.mjs +0 -2
  387. package/esm2020/lib/services/sidebar/sidebar.service.mjs +0 -24
  388. package/esm2020/lib/services/theme/index.mjs +0 -2
  389. package/esm2020/lib/services/theme/theme.service.mjs +0 -24
  390. package/fesm2015/flowbite-angular.mjs +0 -600
  391. package/fesm2015/flowbite-angular.mjs.map +0 -1
  392. package/fesm2020/flowbite-angular.mjs +0 -599
  393. package/fesm2020/flowbite-angular.mjs.map +0 -1
  394. package/flowbite-angular.d.ts +0 -5
  395. package/lib/flowbite.module.d.ts +0 -16
  396. package/lib/services/sidebar/index.d.ts +0 -1
  397. package/lib/services/sidebar/sidebar.service.d.ts +0 -9
  398. package/lib/services/theme/index.d.ts +0 -1
  399. package/lib/services/theme/theme.service.d.ts +0 -10
  400. /package/{esm2020 → esm2022}/lib/pipes/sanitize-html/index.mjs +0 -0
@@ -0,0 +1,20 @@
1
+ import { mergeTheme } from '../../utils/theme/merge-theme';
2
+ import { inject, InjectionToken } from '@angular/core';
3
+ import { twMerge } from 'tailwind-merge';
4
+ export const FLOWBITE_MODAL_THEME_TOKEN = new InjectionToken('FLOWBITE_MODAL_THEME_TOKEN');
5
+ export class ModalThemeService {
6
+ constructor() {
7
+ this.baseTheme = inject(FLOWBITE_MODAL_THEME_TOKEN);
8
+ }
9
+ getClasses(properties) {
10
+ const theme = mergeTheme(this.baseTheme, properties.customStyle);
11
+ const output = {
12
+ rootClass: twMerge(theme.root.base),
13
+ modalWrapperClass: twMerge(theme.wrapper.base, theme.wrapper.position[properties.position]),
14
+ modalContainerClass: twMerge(theme.container.base, theme.container.size[properties.size]),
15
+ modalContentClass: twMerge(theme.content.base),
16
+ };
17
+ return output;
18
+ }
19
+ }
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWwudGhlbWUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmxvd2JpdGUtYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvbW9kYWwvbW9kYWwudGhlbWUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFHM0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXpDLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLElBQUksY0FBYyxDQUFhLDRCQUE0QixDQUFDLENBQUM7QUFFdkcsTUFBTSxPQUFPLGlCQUFpQjtJQUE5QjtRQUNtQixjQUFTLEdBQUcsTUFBTSxDQUFDLDBCQUEwQixDQUFDLENBQUM7SUFjbEUsQ0FBQztJQVpRLFVBQVUsQ0FBQyxVQUEyQjtRQUMzQyxNQUFNLEtBQUssR0FBZSxVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUM7UUFFN0UsTUFBTSxNQUFNLEdBQWU7WUFDekIsU0FBUyxFQUFFLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztZQUNuQyxpQkFBaUIsRUFBRSxPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzNGLG1CQUFtQixFQUFFLE9BQU8sQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDekYsaUJBQWlCLEVBQUUsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO1NBQy9DLENBQUM7UUFFRixPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEZsb3diaXRlVGhlbWVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgbWVyZ2VUaGVtZSB9IGZyb20gJy4uLy4uL3V0aWxzL3RoZW1lL21lcmdlLXRoZW1lJztcbmltcG9ydCB0eXBlIHsgTW9kYWxDbGFzcywgTW9kYWxQcm9wZXJ0aWVzLCBNb2RhbFRoZW1lIH0gZnJvbSAnLi9tb2RhbC50aGVtZSc7XG5cbmltcG9ydCB7IGluamVjdCwgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHR3TWVyZ2UgfSBmcm9tICd0YWlsd2luZC1tZXJnZSc7XG5cbmV4cG9ydCBjb25zdCBGTE9XQklURV9NT0RBTF9USEVNRV9UT0tFTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxNb2RhbFRoZW1lPignRkxPV0JJVEVfTU9EQUxfVEhFTUVfVE9LRU4nKTtcblxuZXhwb3J0IGNsYXNzIE1vZGFsVGhlbWVTZXJ2aWNlIGltcGxlbWVudHMgRmxvd2JpdGVUaGVtZVNlcnZpY2U8TW9kYWxQcm9wZXJ0aWVzPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgYmFzZVRoZW1lID0gaW5qZWN0KEZMT1dCSVRFX01PREFMX1RIRU1FX1RPS0VOKTtcblxuICBwdWJsaWMgZ2V0Q2xhc3Nlcyhwcm9wZXJ0aWVzOiBNb2RhbFByb3BlcnRpZXMpOiBNb2RhbENsYXNzIHtcbiAgICBjb25zdCB0aGVtZTogTW9kYWxUaGVtZSA9IG1lcmdlVGhlbWUodGhpcy5iYXNlVGhlbWUsIHByb3BlcnRpZXMuY3VzdG9tU3R5bGUpO1xuXG4gICAgY29uc3Qgb3V0cHV0OiBNb2RhbENsYXNzID0ge1xuICAgICAgcm9vdENsYXNzOiB0d01lcmdlKHRoZW1lLnJvb3QuYmFzZSksXG4gICAgICBtb2RhbFdyYXBwZXJDbGFzczogdHdNZXJnZSh0aGVtZS53cmFwcGVyLmJhc2UsIHRoZW1lLndyYXBwZXIucG9zaXRpb25bcHJvcGVydGllcy5wb3NpdGlvbl0pLFxuICAgICAgbW9kYWxDb250YWluZXJDbGFzczogdHdNZXJnZSh0aGVtZS5jb250YWluZXIuYmFzZSwgdGhlbWUuY29udGFpbmVyLnNpemVbcHJvcGVydGllcy5zaXplXSksXG4gICAgICBtb2RhbENvbnRlbnRDbGFzczogdHdNZXJnZSh0aGVtZS5jb250ZW50LmJhc2UpLFxuICAgIH07XG5cbiAgICByZXR1cm4gb3V0cHV0O1xuICB9XG59XG4iXX0=
@@ -0,0 +1,19 @@
1
+ export { NavbarComponent } from './navbar.component';
2
+ export { navbarTheme } from './navbar.theme';
3
+ export { FLOWBITE_NAVBAR_THEME_TOKEN, NavbarThemeService } from './navbar.theme.service';
4
+ export { NavbarBrandComponent } from './navbar-brand.component';
5
+ export { navbarBrandTheme } from './navbar-brand.theme';
6
+ export { FLOWBITE_NAVBAR_BRAND_THEME_TOKEN, NavbarBrandThemeService } from './navbar-brand.theme.service';
7
+ export { NavbarContentComponent } from './navbar-content.component';
8
+ export { navbarContentTheme } from './navbar-content.theme';
9
+ export { FLOWBITE_NAVBAR_CONTENT_THEME_TOKEN, NavbarContentThemeService } from './navbar-content.theme.service';
10
+ export { NavbarItemComponent } from './navbar-item.component';
11
+ export { navbarItemTheme } from './navbar-item.theme';
12
+ export { FLOWBITE_NAVBAR_ITEM_THEME_TOKEN, NavbarItemThemeService } from './navbar-item.theme.service';
13
+ export { NavbarToggleComponent } from './navbar-toggle.component';
14
+ export { navbarToogleTheme } from './navbar-toggle.theme';
15
+ export { FLOWBITE_NAVBAR_TOGGLE_THEME_TOKEN, NavbarToggleThemeService } from './navbar-toggle.theme.service';
16
+ export { NavbarIconButtonComponent } from './navbar-icon-button.component';
17
+ export { navbarIconButtonTheme } from './navbar-icon-button.theme';
18
+ export { FLOWBITE_NAVBAR_ICON_BUTTON_THEME_TOKEN, NavbarIconButtonThemeService, } from './navbar-icon-button.theme.service';
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Zsb3diaXRlLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL25hdmJhci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFckQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXpGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRWhFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRTFHLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRXBFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRWhILE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRTlELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUV2RyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUVsRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUU3RyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQU0zRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQ0wsdUNBQXVDLEVBQ3ZDLDRCQUE0QixHQUM3QixNQUFNLG9DQUFvQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgTmF2YmFyQ29tcG9uZW50IH0gZnJvbSAnLi9uYXZiYXIuY29tcG9uZW50JztcbmV4cG9ydCB0eXBlIHsgTmF2YmFyUHJvcGVydGllcywgTmF2YmFyQ2xhc3MsIE5hdmJhckNvbG9ycywgTmF2YmFyVGhlbWUgfSBmcm9tICcuL25hdmJhci50aGVtZSc7XG5leHBvcnQgeyBuYXZiYXJUaGVtZSB9IGZyb20gJy4vbmF2YmFyLnRoZW1lJztcbmV4cG9ydCB7IEZMT1dCSVRFX05BVkJBUl9USEVNRV9UT0tFTiwgTmF2YmFyVGhlbWVTZXJ2aWNlIH0gZnJvbSAnLi9uYXZiYXIudGhlbWUuc2VydmljZSc7XG5cbmV4cG9ydCB7IE5hdmJhckJyYW5kQ29tcG9uZW50IH0gZnJvbSAnLi9uYXZiYXItYnJhbmQuY29tcG9uZW50JztcbmV4cG9ydCB0eXBlIHsgTmF2YmFyQnJhbmRQcm9wZXJ0aWVzLCBOYXZiYXJCcmFuZENsYXNzLCBOYXZiYXJCcmFuZFRoZW1lIH0gZnJvbSAnLi9uYXZiYXItYnJhbmQudGhlbWUnO1xuZXhwb3J0IHsgbmF2YmFyQnJhbmRUaGVtZSB9IGZyb20gJy4vbmF2YmFyLWJyYW5kLnRoZW1lJztcbmV4cG9ydCB7IEZMT1dCSVRFX05BVkJBUl9CUkFORF9USEVNRV9UT0tFTiwgTmF2YmFyQnJhbmRUaGVtZVNlcnZpY2UgfSBmcm9tICcuL25hdmJhci1icmFuZC50aGVtZS5zZXJ2aWNlJztcblxuZXhwb3J0IHsgTmF2YmFyQ29udGVudENvbXBvbmVudCB9IGZyb20gJy4vbmF2YmFyLWNvbnRlbnQuY29tcG9uZW50JztcbmV4cG9ydCB0eXBlIHsgTmF2YmFyQ29udGVudFByb3BlcnRpZXMsIE5hdmJhckNvbnRlbnRDbGFzcywgTmF2YmFyQ29udGVudFRoZW1lIH0gZnJvbSAnLi9uYXZiYXItY29udGVudC50aGVtZSc7XG5leHBvcnQgeyBuYXZiYXJDb250ZW50VGhlbWUgfSBmcm9tICcuL25hdmJhci1jb250ZW50LnRoZW1lJztcbmV4cG9ydCB7IEZMT1dCSVRFX05BVkJBUl9DT05URU5UX1RIRU1FX1RPS0VOLCBOYXZiYXJDb250ZW50VGhlbWVTZXJ2aWNlIH0gZnJvbSAnLi9uYXZiYXItY29udGVudC50aGVtZS5zZXJ2aWNlJztcblxuZXhwb3J0IHsgTmF2YmFySXRlbUNvbXBvbmVudCB9IGZyb20gJy4vbmF2YmFyLWl0ZW0uY29tcG9uZW50JztcbmV4cG9ydCB0eXBlIHsgTmFidmFySXRlbVByb3BlcnRpZXMsIE5hdmJhckl0ZW1DbGFzcywgTmF2YmFySXRlbVRoZW1lIH0gZnJvbSAnLi9uYXZiYXItaXRlbS50aGVtZSc7XG5leHBvcnQgeyBuYXZiYXJJdGVtVGhlbWUgfSBmcm9tICcuL25hdmJhci1pdGVtLnRoZW1lJztcbmV4cG9ydCB7IEZMT1dCSVRFX05BVkJBUl9JVEVNX1RIRU1FX1RPS0VOLCBOYXZiYXJJdGVtVGhlbWVTZXJ2aWNlIH0gZnJvbSAnLi9uYXZiYXItaXRlbS50aGVtZS5zZXJ2aWNlJztcblxuZXhwb3J0IHsgTmF2YmFyVG9nZ2xlQ29tcG9uZW50IH0gZnJvbSAnLi9uYXZiYXItdG9nZ2xlLmNvbXBvbmVudCc7XG5leHBvcnQgdHlwZSB7IE5hdmJhclRvZ2dsZVRoZW1lLCBOYXZiYXJUb2dnbGVDbGFzcywgTmF2YmFyVG9nZ2xlUHJvcGVydGllcyB9IGZyb20gJy4vbmF2YmFyLXRvZ2dsZS50aGVtZSc7XG5leHBvcnQgeyBuYXZiYXJUb29nbGVUaGVtZSB9IGZyb20gJy4vbmF2YmFyLXRvZ2dsZS50aGVtZSc7XG5leHBvcnQgeyBGTE9XQklURV9OQVZCQVJfVE9HR0xFX1RIRU1FX1RPS0VOLCBOYXZiYXJUb2dnbGVUaGVtZVNlcnZpY2UgfSBmcm9tICcuL25hdmJhci10b2dnbGUudGhlbWUuc2VydmljZSc7XG5cbmV4cG9ydCB7IE5hdmJhckljb25CdXR0b25Db21wb25lbnQgfSBmcm9tICcuL25hdmJhci1pY29uLWJ1dHRvbi5jb21wb25lbnQnO1xuZXhwb3J0IHR5cGUge1xuICBOYXZiYXJJY29uQnV0dG9uUHJvcGVydGllcyxcbiAgTmF2YmFySWNvbkJ1dHRvbkNsYXNzLFxuICBOYXZiYXJJY29uQnV0dG9uVGhlbWUsXG59IGZyb20gJy4vbmF2YmFyLWljb24tYnV0dG9uLnRoZW1lJztcbmV4cG9ydCB7IG5hdmJhckljb25CdXR0b25UaGVtZSB9IGZyb20gJy4vbmF2YmFyLWljb24tYnV0dG9uLnRoZW1lJztcbmV4cG9ydCB7XG4gIEZMT1dCSVRFX05BVkJBUl9JQ09OX0JVVFRPTl9USEVNRV9UT0tFTixcbiAgTmF2YmFySWNvbkJ1dHRvblRoZW1lU2VydmljZSxcbn0gZnJvbSAnLi9uYXZiYXItaWNvbi1idXR0b24udGhlbWUuc2VydmljZSc7XG4iXX0=
@@ -0,0 +1,34 @@
1
+ import { BaseComponent } from '../base-component.directive';
2
+ import { NavbarBrandThemeService } from './navbar-brand.theme.service';
3
+ import { NavbarComponent } from './navbar.component';
4
+ import { NgClass } from '@angular/common';
5
+ import { Component, inject, model } from '@angular/core';
6
+ import * as i0 from "@angular/core";
7
+ export class NavbarBrandComponent extends BaseComponent {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.themeService = inject(NavbarBrandThemeService);
11
+ this.navbarComponent = inject(NavbarComponent);
12
+ //#region properties
13
+ this.customStyle = model({});
14
+ }
15
+ //#endregion
16
+ //#region BaseComponent implementation
17
+ fetchClass() {
18
+ return this.themeService.getClasses({
19
+ customStyle: this.customStyle(),
20
+ });
21
+ }
22
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: NavbarBrandComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
23
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.5", type: NavbarBrandComponent, isStandalone: true, selector: "flowbite-navbar-brand", inputs: { customStyle: { classPropertyName: "customStyle", publicName: "customStyle", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { customStyle: "customStyleChange" }, usesInheritance: true, ngImport: i0, template: `<ng-content />`, isInline: true }); }
24
+ }
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: NavbarBrandComponent, decorators: [{
26
+ type: Component,
27
+ args: [{
28
+ selector: 'flowbite-navbar-brand',
29
+ standalone: true,
30
+ imports: [NgClass],
31
+ template: `<ng-content />`,
32
+ }]
33
+ }] });
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLWJyYW5kLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmxvd2JpdGUtYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvbmF2YmFyL25hdmJhci1icmFuZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRTVELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVF6RCxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsYUFBK0I7SUFOekU7O1FBT2tCLGlCQUFZLEdBQUcsTUFBTSxDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFDL0Msb0JBQWUsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7UUFFMUQsb0JBQW9CO1FBQ2IsZ0JBQVcsR0FBRyxLQUFLLENBQWdDLEVBQUUsQ0FBQyxDQUFDO0tBVS9EO0lBVEMsWUFBWTtJQUVaLHNDQUFzQztJQUN0QixVQUFVO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUM7WUFDbEMsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUU7U0FDaEMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs4R0FiVSxvQkFBb0I7a0dBQXBCLG9CQUFvQiw2U0FGckIsZ0JBQWdCOzsyRkFFZixvQkFBb0I7a0JBTmhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHVCQUF1QjtvQkFDakMsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQztvQkFDbEIsUUFBUSxFQUFFLGdCQUFnQjtpQkFDM0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IERlZXBQYXJ0aWFsIH0gZnJvbSAnLi4vLi4vY29tbW9uL3R5cGUtZGVmaW5pdGlvbnMvZmxvd2JpdGUuZGVlcC1wYXJ0aWFsJztcbmltcG9ydCB7IEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi9iYXNlLWNvbXBvbmVudC5kaXJlY3RpdmUnO1xuaW1wb3J0IHR5cGUgeyBOYXZiYXJCcmFuZENsYXNzLCBOYXZiYXJCcmFuZFRoZW1lIH0gZnJvbSAnLi9uYXZiYXItYnJhbmQudGhlbWUnO1xuaW1wb3J0IHsgTmF2YmFyQnJhbmRUaGVtZVNlcnZpY2UgfSBmcm9tICcuL25hdmJhci1icmFuZC50aGVtZS5zZXJ2aWNlJztcbmltcG9ydCB7IE5hdmJhckNvbXBvbmVudCB9IGZyb20gJy4vbmF2YmFyLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IE5nQ2xhc3MgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QsIG1vZGVsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Zsb3diaXRlLW5hdmJhci1icmFuZCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ0NsYXNzXSxcbiAgdGVtcGxhdGU6IGA8bmctY29udGVudCAvPmAsXG59KVxuZXhwb3J0IGNsYXNzIE5hdmJhckJyYW5kQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudDxOYXZiYXJCcmFuZENsYXNzPiB7XG4gIHB1YmxpYyByZWFkb25seSB0aGVtZVNlcnZpY2UgPSBpbmplY3QoTmF2YmFyQnJhbmRUaGVtZVNlcnZpY2UpO1xuICBwdWJsaWMgcmVhZG9ubHkgbmF2YmFyQ29tcG9uZW50ID0gaW5qZWN0KE5hdmJhckNvbXBvbmVudCk7XG5cbiAgLy8jcmVnaW9uIHByb3BlcnRpZXNcbiAgcHVibGljIGN1c3RvbVN0eWxlID0gbW9kZWw8RGVlcFBhcnRpYWw8TmF2YmFyQnJhbmRUaGVtZT4+KHt9KTtcbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIEJhc2VDb21wb25lbnQgaW1wbGVtZW50YXRpb25cbiAgcHVibGljIG92ZXJyaWRlIGZldGNoQ2xhc3MoKTogTmF2YmFyQnJhbmRDbGFzcyB7XG4gICAgcmV0dXJuIHRoaXMudGhlbWVTZXJ2aWNlLmdldENsYXNzZXMoe1xuICAgICAgY3VzdG9tU3R5bGU6IHRoaXMuY3VzdG9tU3R5bGUoKSxcbiAgICB9KTtcbiAgfVxuICAvLyNlbmRyZWdpb25cbn1cbiJdfQ==
@@ -0,0 +1,7 @@
1
+ import { createTheme } from '../../utils/theme/create-theme';
2
+ export const navbarBrandTheme = createTheme({
3
+ root: {
4
+ base: 'cursor-pointer flex items-center space-x-3 rtl:space-x-reverse',
5
+ },
6
+ });
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLWJyYW5kLnRoZW1lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mbG93Yml0ZS1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9uYXZiYXIvbmF2YmFyLWJyYW5kLnRoZW1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQVk3RCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBcUIsV0FBVyxDQUFDO0lBQzVELElBQUksRUFBRTtRQUNKLElBQUksRUFBRSxnRUFBZ0U7S0FDdkU7Q0FDRixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IERlZXBQYXJ0aWFsLCBGbG93Yml0ZUNsYXNzIH0gZnJvbSAnLi4vLi4vY29tbW9uJztcbmltcG9ydCB7IGNyZWF0ZVRoZW1lIH0gZnJvbSAnLi4vLi4vdXRpbHMvdGhlbWUvY3JlYXRlLXRoZW1lJztcblxuZXhwb3J0IGludGVyZmFjZSBOYXZiYXJCcmFuZFByb3BlcnRpZXMge1xuICBjdXN0b21TdHlsZTogRGVlcFBhcnRpYWw8TmF2YmFyQnJhbmRUaGVtZT47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmF2YmFyQnJhbmRUaGVtZSB7XG4gIHJvb3Q6IHtcbiAgICBiYXNlOiBzdHJpbmc7XG4gIH07XG59XG5cbmV4cG9ydCBjb25zdCBuYXZiYXJCcmFuZFRoZW1lOiBOYXZiYXJCcmFuZFRoZW1lID0gY3JlYXRlVGhlbWUoe1xuICByb290OiB7XG4gICAgYmFzZTogJ2N1cnNvci1wb2ludGVyIGZsZXggaXRlbXMtY2VudGVyIHNwYWNlLXgtMyBydGw6c3BhY2UteC1yZXZlcnNlJyxcbiAgfSxcbn0pO1xuXG5leHBvcnQgdHlwZSBOYXZiYXJCcmFuZENsYXNzID0gRmxvd2JpdGVDbGFzcztcbiJdfQ==
@@ -0,0 +1,17 @@
1
+ import { mergeTheme } from '../../utils/theme/merge-theme';
2
+ import { inject, InjectionToken } from '@angular/core';
3
+ import { twMerge } from 'tailwind-merge';
4
+ export const FLOWBITE_NAVBAR_BRAND_THEME_TOKEN = new InjectionToken('FLOWBITE_NAVBAR_BRAND_THEME_TOKEN');
5
+ export class NavbarBrandThemeService {
6
+ constructor() {
7
+ this.baseTheme = inject(FLOWBITE_NAVBAR_BRAND_THEME_TOKEN);
8
+ }
9
+ getClasses(properties) {
10
+ const theme = mergeTheme(this.baseTheme, properties.customStyle);
11
+ const output = {
12
+ rootClass: twMerge(theme.root.base),
13
+ };
14
+ return output;
15
+ }
16
+ }
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLWJyYW5kLnRoZW1lLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Zsb3diaXRlLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL25hdmJhci9uYXZiYXItYnJhbmQudGhlbWUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFHM0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXpDLE1BQU0sQ0FBQyxNQUFNLGlDQUFpQyxHQUFHLElBQUksY0FBYyxDQUNqRSxtQ0FBbUMsQ0FDcEMsQ0FBQztBQUVGLE1BQU0sT0FBTyx1QkFBdUI7SUFBcEM7UUFDbUIsY0FBUyxHQUFHLE1BQU0sQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO0lBV3pFLENBQUM7SUFUUSxVQUFVLENBQUMsVUFBaUM7UUFDakQsTUFBTSxLQUFLLEdBQXFCLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFVBQVUsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUVuRixNQUFNLE1BQU0sR0FBcUI7WUFDL0IsU0FBUyxFQUFFLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztTQUNwQyxDQUFDO1FBRUYsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBGbG93Yml0ZVRoZW1lU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IG1lcmdlVGhlbWUgfSBmcm9tICcuLi8uLi91dGlscy90aGVtZS9tZXJnZS10aGVtZSc7XG5pbXBvcnQgdHlwZSB7IE5hdmJhckJyYW5kQ2xhc3MsIE5hdmJhckJyYW5kUHJvcGVydGllcywgTmF2YmFyQnJhbmRUaGVtZSB9IGZyb20gJy4vbmF2YmFyLWJyYW5kLnRoZW1lJztcblxuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdHdNZXJnZSB9IGZyb20gJ3RhaWx3aW5kLW1lcmdlJztcblxuZXhwb3J0IGNvbnN0IEZMT1dCSVRFX05BVkJBUl9CUkFORF9USEVNRV9UT0tFTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxOYXZiYXJCcmFuZFRoZW1lPihcbiAgJ0ZMT1dCSVRFX05BVkJBUl9CUkFORF9USEVNRV9UT0tFTicsXG4pO1xuXG5leHBvcnQgY2xhc3MgTmF2YmFyQnJhbmRUaGVtZVNlcnZpY2UgaW1wbGVtZW50cyBGbG93Yml0ZVRoZW1lU2VydmljZTxOYXZiYXJCcmFuZFByb3BlcnRpZXM+IHtcbiAgcHJpdmF0ZSByZWFkb25seSBiYXNlVGhlbWUgPSBpbmplY3QoRkxPV0JJVEVfTkFWQkFSX0JSQU5EX1RIRU1FX1RPS0VOKTtcblxuICBwdWJsaWMgZ2V0Q2xhc3Nlcyhwcm9wZXJ0aWVzOiBOYXZiYXJCcmFuZFByb3BlcnRpZXMpOiBOYXZiYXJCcmFuZENsYXNzIHtcbiAgICBjb25zdCB0aGVtZTogTmF2YmFyQnJhbmRUaGVtZSA9IG1lcmdlVGhlbWUodGhpcy5iYXNlVGhlbWUsIHByb3BlcnRpZXMuY3VzdG9tU3R5bGUpO1xuXG4gICAgY29uc3Qgb3V0cHV0OiBOYXZiYXJCcmFuZENsYXNzID0ge1xuICAgICAgcm9vdENsYXNzOiB0d01lcmdlKHRoZW1lLnJvb3QuYmFzZSksXG4gICAgfTtcblxuICAgIHJldHVybiBvdXRwdXQ7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,45 @@
1
+ import { booleanToFlowbiteBoolean } from '../../utils/boolean.util';
2
+ import { BaseComponent } from '../base-component.directive';
3
+ import { NavbarContentThemeService } from './navbar-content.theme.service';
4
+ import { NavbarComponent } from './navbar.component';
5
+ import { NgClass } from '@angular/common';
6
+ import { Component, inject, model } from '@angular/core';
7
+ import * as i0 from "@angular/core";
8
+ export class NavbarContentComponent extends BaseComponent {
9
+ constructor() {
10
+ super(...arguments);
11
+ this.themeService = inject(NavbarContentThemeService);
12
+ this.navbarComponent = model(inject(NavbarComponent));
13
+ //#region properties
14
+ this.color = model(this.navbarComponent().color());
15
+ this.customStyle = model({});
16
+ }
17
+ //#endregion
18
+ //#region BaseComponent implementation
19
+ fetchClass() {
20
+ return this.themeService.getClasses({
21
+ isOpen: booleanToFlowbiteBoolean(this.navbarComponent().isOpen()),
22
+ customStyle: this.customStyle(),
23
+ });
24
+ }
25
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: NavbarContentComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
26
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.5", type: NavbarContentComponent, isStandalone: true, selector: "flowbite-navbar-content", inputs: { navbarComponent: { classPropertyName: "navbarComponent", publicName: "navbarComponent", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, customStyle: { classPropertyName: "customStyle", publicName: "customStyle", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { navbarComponent: "navbarComponentChange", color: "colorChange", customStyle: "customStyleChange" }, usesInheritance: true, ngImport: i0, template: `
27
+ <div [ngClass]="contentClasses().navbarContentListClass">
28
+ <ng-content />
29
+ </div>
30
+ `, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
31
+ }
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: NavbarContentComponent, decorators: [{
33
+ type: Component,
34
+ args: [{
35
+ selector: 'flowbite-navbar-content',
36
+ standalone: true,
37
+ imports: [NgClass],
38
+ template: `
39
+ <div [ngClass]="contentClasses().navbarContentListClass">
40
+ <ng-content />
41
+ </div>
42
+ `,
43
+ }]
44
+ }] });
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLWNvbnRlbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mbG93Yml0ZS1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9uYXZiYXIvbmF2YmFyLWNvbnRlbnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUU1RCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFHckQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFZekQsTUFBTSxPQUFPLHNCQUF1QixTQUFRLGFBQWlDO0lBVjdFOztRQVdrQixpQkFBWSxHQUFHLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBQ2pELG9CQUFlLEdBQUcsS0FBSyxDQUFrQixNQUFNLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQztRQUVsRixvQkFBb0I7UUFDYixVQUFLLEdBQUcsS0FBSyxDQUFxQixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUNsRSxnQkFBVyxHQUFHLEtBQUssQ0FBa0MsRUFBRSxDQUFDLENBQUM7S0FXakU7SUFWQyxZQUFZO0lBRVosc0NBQXNDO0lBQ3RCLFVBQVU7UUFDeEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQztZQUNsQyxNQUFNLEVBQUUsd0JBQXdCLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2pFLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFO1NBQ2hDLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBZlUsc0JBQXNCO2tHQUF0QixzQkFBc0IsNm5CQU52Qjs7OztHQUlULDREQUxTLE9BQU87OzJGQU9OLHNCQUFzQjtrQkFWbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUseUJBQXlCO29CQUNuQyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDO29CQUNsQixRQUFRLEVBQUU7Ozs7R0FJVDtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRGVlcFBhcnRpYWwgfSBmcm9tICcuLi8uLi9jb21tb24nO1xuaW1wb3J0IHsgYm9vbGVhblRvRmxvd2JpdGVCb29sZWFuIH0gZnJvbSAnLi4vLi4vdXRpbHMvYm9vbGVhbi51dGlsJztcbmltcG9ydCB7IEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi9iYXNlLWNvbXBvbmVudC5kaXJlY3RpdmUnO1xuaW1wb3J0IHR5cGUgeyBOYXZiYXJDb250ZW50Q2xhc3MsIE5hdmJhckNvbnRlbnRUaGVtZSB9IGZyb20gJy4vbmF2YmFyLWNvbnRlbnQudGhlbWUnO1xuaW1wb3J0IHsgTmF2YmFyQ29udGVudFRoZW1lU2VydmljZSB9IGZyb20gJy4vbmF2YmFyLWNvbnRlbnQudGhlbWUuc2VydmljZSc7XG5pbXBvcnQgeyBOYXZiYXJDb21wb25lbnQgfSBmcm9tICcuL25hdmJhci5jb21wb25lbnQnO1xuaW1wb3J0IHR5cGUgeyBOYXZiYXJDb2xvcnMgfSBmcm9tICcuL25hdmJhci50aGVtZSc7XG5cbmltcG9ydCB7IE5nQ2xhc3MgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHR5cGUgeyBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0LCBtb2RlbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmbG93Yml0ZS1uYXZiYXItY29udGVudCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ0NsYXNzXSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IFtuZ0NsYXNzXT1cImNvbnRlbnRDbGFzc2VzKCkubmF2YmFyQ29udGVudExpc3RDbGFzc1wiPlxuICAgICAgPG5nLWNvbnRlbnQgLz5cbiAgICA8L2Rpdj5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgTmF2YmFyQ29udGVudENvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQ8TmF2YmFyQ29udGVudENsYXNzPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHB1YmxpYyByZWFkb25seSB0aGVtZVNlcnZpY2UgPSBpbmplY3QoTmF2YmFyQ29udGVudFRoZW1lU2VydmljZSk7XG4gIHB1YmxpYyByZWFkb25seSBuYXZiYXJDb21wb25lbnQgPSBtb2RlbDxOYXZiYXJDb21wb25lbnQ+KGluamVjdChOYXZiYXJDb21wb25lbnQpKTtcblxuICAvLyNyZWdpb24gcHJvcGVydGllc1xuICBwdWJsaWMgY29sb3IgPSBtb2RlbDxrZXlvZiBOYXZiYXJDb2xvcnM+KHRoaXMubmF2YmFyQ29tcG9uZW50KCkuY29sb3IoKSk7XG4gIHB1YmxpYyBjdXN0b21TdHlsZSA9IG1vZGVsPERlZXBQYXJ0aWFsPE5hdmJhckNvbnRlbnRUaGVtZT4+KHt9KTtcbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIEJhc2VDb21wb25lbnQgaW1wbGVtZW50YXRpb25cbiAgcHVibGljIG92ZXJyaWRlIGZldGNoQ2xhc3MoKTogTmF2YmFyQ29udGVudENsYXNzIHtcbiAgICByZXR1cm4gdGhpcy50aGVtZVNlcnZpY2UuZ2V0Q2xhc3Nlcyh7XG4gICAgICBpc09wZW46IGJvb2xlYW5Ub0Zsb3diaXRlQm9vbGVhbih0aGlzLm5hdmJhckNvbXBvbmVudCgpLmlzT3BlbigpKSxcbiAgICAgIGN1c3RvbVN0eWxlOiB0aGlzLmN1c3RvbVN0eWxlKCksXG4gICAgfSk7XG4gIH1cbiAgLy8jZW5kcmVnaW9uXG59XG4iXX0=
@@ -0,0 +1,14 @@
1
+ import { createTheme } from '../../utils/theme/create-theme';
2
+ export const navbarContentTheme = createTheme({
3
+ root: {
4
+ base: 'w-full md:block md:w-auto order-last md:order-none',
5
+ isOpen: {
6
+ enabled: '',
7
+ disabled: 'hidden',
8
+ },
9
+ },
10
+ list: {
11
+ base: 'font-medium flex flex-col p-4 md:p-0 mt-4 items-center border border-gray-100 rounded-lg bg-gray-50 md:flex-row md:space-x-8 rtl:space-x-reverse md:mt-0 md:border-0 md:bg-white dark:bg-gray-900 md:dark:bg-gray-800 dark:border-gray-700',
12
+ },
13
+ });
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLWNvbnRlbnQudGhlbWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Zsb3diaXRlLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL25hdmJhci9uYXZiYXItY29udGVudC50aGVtZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFpQjdELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUF1QixXQUFXLENBQUM7SUFDaEUsSUFBSSxFQUFFO1FBQ0osSUFBSSxFQUFFLG9EQUFvRDtRQUMxRCxNQUFNLEVBQUU7WUFDTixPQUFPLEVBQUUsRUFBRTtZQUNYLFFBQVEsRUFBRSxRQUFRO1NBQ25CO0tBQ0Y7SUFDRCxJQUFJLEVBQUU7UUFDSixJQUFJLEVBQUUsNE9BQTRPO0tBQ25QO0NBQ0YsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBEZWVwUGFydGlhbCwgRmxvd2JpdGVCb29sZWFuLCBGbG93Yml0ZUNsYXNzIH0gZnJvbSAnLi4vLi4vY29tbW9uJztcbmltcG9ydCB7IGNyZWF0ZVRoZW1lIH0gZnJvbSAnLi4vLi4vdXRpbHMvdGhlbWUvY3JlYXRlLXRoZW1lJztcblxuZXhwb3J0IGludGVyZmFjZSBOYXZiYXJDb250ZW50UHJvcGVydGllcyB7XG4gIGlzT3Blbjoga2V5b2YgRmxvd2JpdGVCb29sZWFuO1xuICBjdXN0b21TdHlsZTogRGVlcFBhcnRpYWw8TmF2YmFyQ29udGVudFRoZW1lPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOYXZiYXJDb250ZW50VGhlbWUge1xuICByb290OiB7XG4gICAgYmFzZTogc3RyaW5nO1xuICAgIGlzT3BlbjogRmxvd2JpdGVCb29sZWFuO1xuICB9O1xuICBsaXN0OiB7XG4gICAgYmFzZTogc3RyaW5nO1xuICB9O1xufVxuXG5leHBvcnQgY29uc3QgbmF2YmFyQ29udGVudFRoZW1lOiBOYXZiYXJDb250ZW50VGhlbWUgPSBjcmVhdGVUaGVtZSh7XG4gIHJvb3Q6IHtcbiAgICBiYXNlOiAndy1mdWxsIG1kOmJsb2NrIG1kOnctYXV0byBvcmRlci1sYXN0IG1kOm9yZGVyLW5vbmUnLFxuICAgIGlzT3Blbjoge1xuICAgICAgZW5hYmxlZDogJycsXG4gICAgICBkaXNhYmxlZDogJ2hpZGRlbicsXG4gICAgfSxcbiAgfSxcbiAgbGlzdDoge1xuICAgIGJhc2U6ICdmb250LW1lZGl1bSBmbGV4IGZsZXgtY29sIHAtNCBtZDpwLTAgbXQtNCBpdGVtcy1jZW50ZXIgYm9yZGVyIGJvcmRlci1ncmF5LTEwMCByb3VuZGVkLWxnIGJnLWdyYXktNTAgbWQ6ZmxleC1yb3cgbWQ6c3BhY2UteC04IHJ0bDpzcGFjZS14LXJldmVyc2UgbWQ6bXQtMCBtZDpib3JkZXItMCBtZDpiZy13aGl0ZSBkYXJrOmJnLWdyYXktOTAwIG1kOmRhcms6YmctZ3JheS04MDAgZGFyazpib3JkZXItZ3JheS03MDAnLFxuICB9LFxufSk7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmF2YmFyQ29udGVudENsYXNzIGV4dGVuZHMgRmxvd2JpdGVDbGFzcyB7XG4gIG5hdmJhckNvbnRlbnRMaXN0Q2xhc3M6IHN0cmluZztcbn1cbiJdfQ==
@@ -0,0 +1,18 @@
1
+ import { mergeTheme } from '../../utils/theme/merge-theme';
2
+ import { inject, InjectionToken } from '@angular/core';
3
+ import { twMerge } from 'tailwind-merge';
4
+ export const FLOWBITE_NAVBAR_CONTENT_THEME_TOKEN = new InjectionToken('FLOWBITE_NAVBAR_CONTENT_THEME_TOKEN');
5
+ export class NavbarContentThemeService {
6
+ constructor() {
7
+ this.baseTheme = inject(FLOWBITE_NAVBAR_CONTENT_THEME_TOKEN);
8
+ }
9
+ getClasses(properties) {
10
+ const theme = mergeTheme(this.baseTheme, properties.customStyle);
11
+ const output = {
12
+ rootClass: twMerge(theme.root.base, theme.root.isOpen[properties.isOpen]),
13
+ navbarContentListClass: twMerge(theme.list.base),
14
+ };
15
+ return output;
16
+ }
17
+ }
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLWNvbnRlbnQudGhlbWUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmxvd2JpdGUtYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvbmF2YmFyL25hdmJhci1jb250ZW50LnRoZW1lLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRzNELE9BQU8sRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6QyxNQUFNLENBQUMsTUFBTSxtQ0FBbUMsR0FBRyxJQUFJLGNBQWMsQ0FDbkUscUNBQXFDLENBQ3RDLENBQUM7QUFFRixNQUFNLE9BQU8seUJBQXlCO0lBQXRDO1FBQ21CLGNBQVMsR0FBRyxNQUFNLENBQUMsbUNBQW1DLENBQUMsQ0FBQztJQVkzRSxDQUFDO0lBVlEsVUFBVSxDQUFDLFVBQW1DO1FBQ25ELE1BQU0sS0FBSyxHQUF1QixVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUM7UUFFckYsTUFBTSxNQUFNLEdBQXVCO1lBQ2pDLFNBQVMsRUFBRSxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3pFLHNCQUFzQixFQUFFLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztTQUNqRCxDQUFDO1FBRUYsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBGbG93Yml0ZVRoZW1lU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IG1lcmdlVGhlbWUgfSBmcm9tICcuLi8uLi91dGlscy90aGVtZS9tZXJnZS10aGVtZSc7XG5pbXBvcnQgdHlwZSB7IE5hdmJhckNvbnRlbnRDbGFzcywgTmF2YmFyQ29udGVudFByb3BlcnRpZXMsIE5hdmJhckNvbnRlbnRUaGVtZSB9IGZyb20gJy4vbmF2YmFyLWNvbnRlbnQudGhlbWUnO1xuXG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0d01lcmdlIH0gZnJvbSAndGFpbHdpbmQtbWVyZ2UnO1xuXG5leHBvcnQgY29uc3QgRkxPV0JJVEVfTkFWQkFSX0NPTlRFTlRfVEhFTUVfVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48TmF2YmFyQ29udGVudFRoZW1lPihcbiAgJ0ZMT1dCSVRFX05BVkJBUl9DT05URU5UX1RIRU1FX1RPS0VOJyxcbik7XG5cbmV4cG9ydCBjbGFzcyBOYXZiYXJDb250ZW50VGhlbWVTZXJ2aWNlIGltcGxlbWVudHMgRmxvd2JpdGVUaGVtZVNlcnZpY2U8TmF2YmFyQ29udGVudFByb3BlcnRpZXM+IHtcbiAgcHJpdmF0ZSByZWFkb25seSBiYXNlVGhlbWUgPSBpbmplY3QoRkxPV0JJVEVfTkFWQkFSX0NPTlRFTlRfVEhFTUVfVE9LRU4pO1xuXG4gIHB1YmxpYyBnZXRDbGFzc2VzKHByb3BlcnRpZXM6IE5hdmJhckNvbnRlbnRQcm9wZXJ0aWVzKTogTmF2YmFyQ29udGVudENsYXNzIHtcbiAgICBjb25zdCB0aGVtZTogTmF2YmFyQ29udGVudFRoZW1lID0gbWVyZ2VUaGVtZSh0aGlzLmJhc2VUaGVtZSwgcHJvcGVydGllcy5jdXN0b21TdHlsZSk7XG5cbiAgICBjb25zdCBvdXRwdXQ6IE5hdmJhckNvbnRlbnRDbGFzcyA9IHtcbiAgICAgIHJvb3RDbGFzczogdHdNZXJnZSh0aGVtZS5yb290LmJhc2UsIHRoZW1lLnJvb3QuaXNPcGVuW3Byb3BlcnRpZXMuaXNPcGVuXSksXG4gICAgICBuYXZiYXJDb250ZW50TGlzdENsYXNzOiB0d01lcmdlKHRoZW1lLmxpc3QuYmFzZSksXG4gICAgfTtcblxuICAgIHJldHVybiBvdXRwdXQ7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,42 @@
1
+ import { BaseComponent } from '../base-component.directive';
2
+ import { NavbarContentComponent } from './navbar-content.component';
3
+ import { NavbarIconButtonThemeService } from './navbar-icon-button.theme.service';
4
+ import { NavbarComponent } from './navbar.component';
5
+ import { Component, inject, model } from '@angular/core';
6
+ import * as i0 from "@angular/core";
7
+ export class NavbarIconButtonComponent extends BaseComponent {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.themeService = inject(NavbarIconButtonThemeService);
11
+ this.navbarComponent = inject(NavbarComponent, { optional: true });
12
+ this.navbarContentComponent = inject(NavbarContentComponent, { optional: true });
13
+ //#region properties
14
+ this.color = model(this.navbarContentComponent?.color() || this.navbarComponent.color());
15
+ this.customStyle = model({});
16
+ }
17
+ //#endregion
18
+ //#region BaseComponent implementation
19
+ fetchClass() {
20
+ return this.themeService.getClasses({
21
+ color: this.color(),
22
+ customStyle: this.customStyle(),
23
+ });
24
+ }
25
+ verify() {
26
+ if (this.navbarComponent === null && this.navbarContentComponent === null) {
27
+ throw new Error('No NavbarComponent/NavbarContentComponent available');
28
+ }
29
+ }
30
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: NavbarIconButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
31
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.5", type: NavbarIconButtonComponent, isStandalone: true, selector: "flowbite-navbar-icon-button", inputs: { color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, customStyle: { classPropertyName: "customStyle", publicName: "customStyle", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { color: "colorChange", customStyle: "customStyleChange" }, usesInheritance: true, ngImport: i0, template: `<ng-content />`, isInline: true }); }
32
+ }
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: NavbarIconButtonComponent, decorators: [{
34
+ type: Component,
35
+ args: [{
36
+ selector: 'flowbite-navbar-icon-button',
37
+ standalone: true,
38
+ imports: [],
39
+ template: `<ng-content />`,
40
+ }]
41
+ }] });
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLWljb24tYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmxvd2JpdGUtYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvbmF2YmFyL25hdmJhci1pY29uLWJ1dHRvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzVELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRXBFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUdyRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBUXpELE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxhQUFvQztJQU5uRjs7UUFPa0IsaUJBQVksR0FBRyxNQUFNLENBQUMsNEJBQTRCLENBQUMsQ0FBQztRQUNwRCxvQkFBZSxHQUFHLE1BQU0sQ0FBQyxlQUFlLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUM5RCwyQkFBc0IsR0FBRyxNQUFNLENBQUMsc0JBQXNCLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUU1RixvQkFBb0I7UUFDYixVQUFLLEdBQUcsS0FBSyxDQUFxQixJQUFJLENBQUMsc0JBQXNCLEVBQUUsS0FBSyxFQUFFLElBQUksSUFBSSxDQUFDLGVBQWdCLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUN6RyxnQkFBVyxHQUFHLEtBQUssQ0FBcUMsRUFBRSxDQUFDLENBQUM7S0FnQnBFO0lBZkMsWUFBWTtJQUVaLHNDQUFzQztJQUN0QixVQUFVO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUM7WUFDbEMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDbkIsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUU7U0FDaEMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVlLE1BQU07UUFDcEIsSUFBSSxJQUFJLENBQUMsZUFBZSxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsc0JBQXNCLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDMUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxxREFBcUQsQ0FBQyxDQUFDO1FBQ3pFLENBQUM7SUFDSCxDQUFDOzhHQXRCVSx5QkFBeUI7a0dBQXpCLHlCQUF5QixpY0FGMUIsZ0JBQWdCOzsyRkFFZix5QkFBeUI7a0JBTnJDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDZCQUE2QjtvQkFDdkMsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxFQUFFO29CQUNYLFFBQVEsRUFBRSxnQkFBZ0I7aUJBQzNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBEZWVwUGFydGlhbCB9IGZyb20gJy4uLy4uL2NvbW1vbic7XG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi4vYmFzZS1jb21wb25lbnQuZGlyZWN0aXZlJztcbmltcG9ydCB7IE5hdmJhckNvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuL25hdmJhci1jb250ZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgdHlwZSB7IE5hdmJhckljb25CdXR0b25DbGFzcywgTmF2YmFySWNvbkJ1dHRvblRoZW1lIH0gZnJvbSAnLi9uYXZiYXItaWNvbi1idXR0b24udGhlbWUnO1xuaW1wb3J0IHsgTmF2YmFySWNvbkJ1dHRvblRoZW1lU2VydmljZSB9IGZyb20gJy4vbmF2YmFyLWljb24tYnV0dG9uLnRoZW1lLnNlcnZpY2UnO1xuaW1wb3J0IHsgTmF2YmFyQ29tcG9uZW50IH0gZnJvbSAnLi9uYXZiYXIuY29tcG9uZW50JztcbmltcG9ydCB0eXBlIHsgTmF2YmFyQ29sb3JzIH0gZnJvbSAnLi9uYXZiYXIudGhlbWUnO1xuXG5pbXBvcnQgeyBDb21wb25lbnQsIGluamVjdCwgbW9kZWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZmxvd2JpdGUtbmF2YmFyLWljb24tYnV0dG9uJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW10sXG4gIHRlbXBsYXRlOiBgPG5nLWNvbnRlbnQgLz5gLFxufSlcbmV4cG9ydCBjbGFzcyBOYXZiYXJJY29uQnV0dG9uQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudDxOYXZiYXJJY29uQnV0dG9uQ2xhc3M+IHtcbiAgcHVibGljIHJlYWRvbmx5IHRoZW1lU2VydmljZSA9IGluamVjdChOYXZiYXJJY29uQnV0dG9uVGhlbWVTZXJ2aWNlKTtcbiAgcHVibGljIHJlYWRvbmx5IG5hdmJhckNvbXBvbmVudCA9IGluamVjdChOYXZiYXJDb21wb25lbnQsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG4gIHB1YmxpYyByZWFkb25seSBuYXZiYXJDb250ZW50Q29tcG9uZW50ID0gaW5qZWN0KE5hdmJhckNvbnRlbnRDb21wb25lbnQsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG5cbiAgLy8jcmVnaW9uIHByb3BlcnRpZXNcbiAgcHVibGljIGNvbG9yID0gbW9kZWw8a2V5b2YgTmF2YmFyQ29sb3JzPih0aGlzLm5hdmJhckNvbnRlbnRDb21wb25lbnQ/LmNvbG9yKCkgfHwgdGhpcy5uYXZiYXJDb21wb25lbnQhLmNvbG9yKCkpO1xuICBwdWJsaWMgY3VzdG9tU3R5bGUgPSBtb2RlbDxEZWVwUGFydGlhbDxOYXZiYXJJY29uQnV0dG9uVGhlbWU+Pih7fSk7XG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiBCYXNlQ29tcG9uZW50IGltcGxlbWVudGF0aW9uXG4gIHB1YmxpYyBvdmVycmlkZSBmZXRjaENsYXNzKCk6IE5hdmJhckljb25CdXR0b25DbGFzcyB7XG4gICAgcmV0dXJuIHRoaXMudGhlbWVTZXJ2aWNlLmdldENsYXNzZXMoe1xuICAgICAgY29sb3I6IHRoaXMuY29sb3IoKSxcbiAgICAgIGN1c3RvbVN0eWxlOiB0aGlzLmN1c3RvbVN0eWxlKCksXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgdmVyaWZ5KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLm5hdmJhckNvbXBvbmVudCA9PT0gbnVsbCAmJiB0aGlzLm5hdmJhckNvbnRlbnRDb21wb25lbnQgPT09IG51bGwpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTm8gTmF2YmFyQ29tcG9uZW50L05hdmJhckNvbnRlbnRDb21wb25lbnQgYXZhaWxhYmxlJyk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -0,0 +1,15 @@
1
+ import { createTheme } from '../../utils/theme/create-theme';
2
+ export const navbarIconButtonTheme = createTheme({
3
+ root: {
4
+ base: 'cursor-pointer rounded-lg p-2.5 text-sm text-gray-500 hover:bg-gray-100 focus:outline-none focus:ring-4 focus:ring-gray-200 dark:text-gray-400 dark:hover:bg-gray-700 dark:focus:ring-gray-700',
5
+ color: {
6
+ primary: 'text-primary-500 dark:text-primary-300',
7
+ gray: 'text-gray-500 dark:text-gray-400',
8
+ blue: 'text-blue-500 dark:text-blue-300',
9
+ red: 'text-red-500 dark:text-red-300',
10
+ green: 'text-green-500 dark:text-green-300',
11
+ yellow: 'text-yellow-500 dark:text-yellow-300',
12
+ },
13
+ },
14
+ });
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLWljb24tYnV0dG9uLnRoZW1lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mbG93Yml0ZS1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9uYXZiYXIvbmF2YmFyLWljb24tYnV0dG9uLnRoZW1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQWU3RCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBMEIsV0FBVyxDQUFDO0lBQ3RFLElBQUksRUFBRTtRQUNKLElBQUksRUFBRSxnTUFBZ007UUFDdE0sS0FBSyxFQUFFO1lBQ0wsT0FBTyxFQUFFLHdDQUF3QztZQUNqRCxJQUFJLEVBQUUsa0NBQWtDO1lBQ3hDLElBQUksRUFBRSxrQ0FBa0M7WUFDeEMsR0FBRyxFQUFFLGdDQUFnQztZQUNyQyxLQUFLLEVBQUUsb0NBQW9DO1lBQzNDLE1BQU0sRUFBRSxzQ0FBc0M7U0FDL0M7S0FDRjtDQUNGLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRGVlcFBhcnRpYWwsIEZsb3diaXRlQ2xhc3MgfSBmcm9tICcuLi8uLi9jb21tb24nO1xuaW1wb3J0IHsgY3JlYXRlVGhlbWUgfSBmcm9tICcuLi8uLi91dGlscy90aGVtZS9jcmVhdGUtdGhlbWUnO1xuaW1wb3J0IHR5cGUgeyBOYXZiYXJDb2xvcnMgfSBmcm9tICcuL25hdmJhci50aGVtZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmF2YmFySWNvbkJ1dHRvblByb3BlcnRpZXMge1xuICBjb2xvcjoga2V5b2YgTmF2YmFyQ29sb3JzO1xuICBjdXN0b21TdHlsZTogRGVlcFBhcnRpYWw8TmF2YmFySWNvbkJ1dHRvblRoZW1lPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOYXZiYXJJY29uQnV0dG9uVGhlbWUge1xuICByb290OiB7XG4gICAgYmFzZTogc3RyaW5nO1xuICAgIGNvbG9yOiBOYXZiYXJDb2xvcnM7XG4gIH07XG59XG5cbmV4cG9ydCBjb25zdCBuYXZiYXJJY29uQnV0dG9uVGhlbWU6IE5hdmJhckljb25CdXR0b25UaGVtZSA9IGNyZWF0ZVRoZW1lKHtcbiAgcm9vdDoge1xuICAgIGJhc2U6ICdjdXJzb3ItcG9pbnRlciByb3VuZGVkLWxnIHAtMi41IHRleHQtc20gdGV4dC1ncmF5LTUwMCBob3ZlcjpiZy1ncmF5LTEwMCBmb2N1czpvdXRsaW5lLW5vbmUgZm9jdXM6cmluZy00IGZvY3VzOnJpbmctZ3JheS0yMDAgZGFyazp0ZXh0LWdyYXktNDAwIGRhcms6aG92ZXI6YmctZ3JheS03MDAgZGFyazpmb2N1czpyaW5nLWdyYXktNzAwJyxcbiAgICBjb2xvcjoge1xuICAgICAgcHJpbWFyeTogJ3RleHQtcHJpbWFyeS01MDAgZGFyazp0ZXh0LXByaW1hcnktMzAwJyxcbiAgICAgIGdyYXk6ICd0ZXh0LWdyYXktNTAwIGRhcms6dGV4dC1ncmF5LTQwMCcsXG4gICAgICBibHVlOiAndGV4dC1ibHVlLTUwMCBkYXJrOnRleHQtYmx1ZS0zMDAnLFxuICAgICAgcmVkOiAndGV4dC1yZWQtNTAwIGRhcms6dGV4dC1yZWQtMzAwJyxcbiAgICAgIGdyZWVuOiAndGV4dC1ncmVlbi01MDAgZGFyazp0ZXh0LWdyZWVuLTMwMCcsXG4gICAgICB5ZWxsb3c6ICd0ZXh0LXllbGxvdy01MDAgZGFyazp0ZXh0LXllbGxvdy0zMDAnLFxuICAgIH0sXG4gIH0sXG59KTtcblxuZXhwb3J0IHR5cGUgTmF2YmFySWNvbkJ1dHRvbkNsYXNzID0gRmxvd2JpdGVDbGFzcztcbiJdfQ==
@@ -0,0 +1,17 @@
1
+ import { mergeTheme } from '../../utils/theme/merge-theme';
2
+ import { inject, InjectionToken } from '@angular/core';
3
+ import { twMerge } from 'tailwind-merge';
4
+ export const FLOWBITE_NAVBAR_ICON_BUTTON_THEME_TOKEN = new InjectionToken('FLOWBITE_NAVBAR_TOGGLE_THEME_TOKEN');
5
+ export class NavbarIconButtonThemeService {
6
+ constructor() {
7
+ this.baseTheme = inject(FLOWBITE_NAVBAR_ICON_BUTTON_THEME_TOKEN);
8
+ }
9
+ getClasses(properties) {
10
+ const theme = mergeTheme(this.baseTheme, properties.customStyle);
11
+ const output = {
12
+ rootClass: twMerge(theme.root.base, theme.root.color[properties.color]),
13
+ };
14
+ return output;
15
+ }
16
+ }
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLWljb24tYnV0dG9uLnRoZW1lLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Zsb3diaXRlLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL25hdmJhci9uYXZiYXItaWNvbi1idXR0b24udGhlbWUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFPM0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXpDLE1BQU0sQ0FBQyxNQUFNLHVDQUF1QyxHQUFHLElBQUksY0FBYyxDQUN2RSxvQ0FBb0MsQ0FDckMsQ0FBQztBQUVGLE1BQU0sT0FBTyw0QkFBNEI7SUFBekM7UUFDbUIsY0FBUyxHQUFHLE1BQU0sQ0FBQyx1Q0FBdUMsQ0FBQyxDQUFDO0lBVy9FLENBQUM7SUFUUSxVQUFVLENBQUMsVUFBc0M7UUFDdEQsTUFBTSxLQUFLLEdBQTBCLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFVBQVUsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUV4RixNQUFNLE1BQU0sR0FBMEI7WUFDcEMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDeEUsQ0FBQztRQUVGLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRmxvd2JpdGVUaGVtZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBtZXJnZVRoZW1lIH0gZnJvbSAnLi4vLi4vdXRpbHMvdGhlbWUvbWVyZ2UtdGhlbWUnO1xuaW1wb3J0IHR5cGUge1xuICBOYXZiYXJJY29uQnV0dG9uQ2xhc3MsXG4gIE5hdmJhckljb25CdXR0b25Qcm9wZXJ0aWVzLFxuICBOYXZiYXJJY29uQnV0dG9uVGhlbWUsXG59IGZyb20gJy4vbmF2YmFyLWljb24tYnV0dG9uLnRoZW1lJztcblxuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdHdNZXJnZSB9IGZyb20gJ3RhaWx3aW5kLW1lcmdlJztcblxuZXhwb3J0IGNvbnN0IEZMT1dCSVRFX05BVkJBUl9JQ09OX0JVVFRPTl9USEVNRV9UT0tFTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxOYXZiYXJJY29uQnV0dG9uVGhlbWU+KFxuICAnRkxPV0JJVEVfTkFWQkFSX1RPR0dMRV9USEVNRV9UT0tFTicsXG4pO1xuXG5leHBvcnQgY2xhc3MgTmF2YmFySWNvbkJ1dHRvblRoZW1lU2VydmljZSBpbXBsZW1lbnRzIEZsb3diaXRlVGhlbWVTZXJ2aWNlPE5hdmJhckljb25CdXR0b25Qcm9wZXJ0aWVzPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgYmFzZVRoZW1lID0gaW5qZWN0KEZMT1dCSVRFX05BVkJBUl9JQ09OX0JVVFRPTl9USEVNRV9UT0tFTik7XG5cbiAgcHVibGljIGdldENsYXNzZXMocHJvcGVydGllczogTmF2YmFySWNvbkJ1dHRvblByb3BlcnRpZXMpOiBOYXZiYXJJY29uQnV0dG9uQ2xhc3Mge1xuICAgIGNvbnN0IHRoZW1lOiBOYXZiYXJJY29uQnV0dG9uVGhlbWUgPSBtZXJnZVRoZW1lKHRoaXMuYmFzZVRoZW1lLCBwcm9wZXJ0aWVzLmN1c3RvbVN0eWxlKTtcblxuICAgIGNvbnN0IG91dHB1dDogTmF2YmFySWNvbkJ1dHRvbkNsYXNzID0ge1xuICAgICAgcm9vdENsYXNzOiB0d01lcmdlKHRoZW1lLnJvb3QuYmFzZSwgdGhlbWUucm9vdC5jb2xvcltwcm9wZXJ0aWVzLmNvbG9yXSksXG4gICAgfTtcblxuICAgIHJldHVybiBvdXRwdXQ7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,47 @@
1
+ import { FlowbiteRouterLinkActiveDirective } from '../../directives/flowbite-router-link-active.directive';
2
+ import { FlowbiteRouterLinkDirective } from '../../directives/flowbite-router-link.directive';
3
+ import { BaseComponent } from '../base-component.directive';
4
+ import { NavbarContentComponent } from './navbar-content.component';
5
+ import { NavbarItemThemeService } from './navbar-item.theme.service';
6
+ import { NgClass } from '@angular/common';
7
+ import { Component, inject, model } from '@angular/core';
8
+ import * as i0 from "@angular/core";
9
+ export class NavbarItemComponent extends BaseComponent {
10
+ constructor() {
11
+ super(...arguments);
12
+ this.flowbiteRouterLink = inject(FlowbiteRouterLinkDirective, { optional: true });
13
+ this.flowbiteRouterLinkActive = inject(FlowbiteRouterLinkActiveDirective, { optional: true });
14
+ this.themeService = inject(NavbarItemThemeService);
15
+ this.navbarContentComponent = inject(NavbarContentComponent);
16
+ //#region properties
17
+ this.color = model(this.navbarContentComponent.color());
18
+ this.customStyle = model({});
19
+ }
20
+ //#endregion
21
+ //#region BaseComponent implementation
22
+ fetchClass() {
23
+ return this.themeService.getClasses({
24
+ color: this.color(),
25
+ customStyle: this.customStyle(),
26
+ });
27
+ }
28
+ //#endregion
29
+ onClick() {
30
+ this.navbarContentComponent.navbarComponent().toggleVisibility(false);
31
+ }
32
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: NavbarItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
33
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.5", type: NavbarItemComponent, isStandalone: true, selector: "flowbite-navbar-item", inputs: { color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, customStyle: { classPropertyName: "customStyle", publicName: "customStyle", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { color: "colorChange", customStyle: "customStyleChange" }, host: { listeners: { "click": "onClick()" } }, usesInheritance: true, ngImport: i0, template: `<ng-content />`, isInline: true }); }
34
+ }
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: NavbarItemComponent, decorators: [{
36
+ type: Component,
37
+ args: [{
38
+ selector: 'flowbite-navbar-item',
39
+ standalone: true,
40
+ imports: [NgClass],
41
+ template: `<ng-content />`,
42
+ host: {
43
+ '(click)': 'onClick()',
44
+ },
45
+ }]
46
+ }] });
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mbG93Yml0ZS1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9uYXZiYXIvbmF2YmFyLWl0ZW0uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQzNHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUVwRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUdyRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVd6RCxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsYUFBOEI7SUFUdkU7O1FBVWtCLHVCQUFrQixHQUFHLE1BQU0sQ0FBQywyQkFBMkIsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzdFLDZCQUF3QixHQUFHLE1BQU0sQ0FBQyxpQ0FBaUMsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3pGLGlCQUFZLEdBQUcsTUFBTSxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDOUMsMkJBQXNCLEdBQUcsTUFBTSxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFFeEUsb0JBQW9CO1FBQ2IsVUFBSyxHQUFHLEtBQUssQ0FBcUIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDdkUsZ0JBQVcsR0FBRyxLQUFLLENBQStCLEVBQUUsQ0FBQyxDQUFDO0tBZTlEO0lBZEMsWUFBWTtJQUVaLHNDQUFzQztJQUN0QixVQUFVO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUM7WUFDbEMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDbkIsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUU7U0FDaEMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELFlBQVk7SUFFTCxPQUFPO1FBQ1osSUFBSSxDQUFDLHNCQUFzQixDQUFDLGVBQWUsRUFBRSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hFLENBQUM7OEdBdEJVLG1CQUFtQjtrR0FBbkIsbUJBQW1CLHllQUxwQixnQkFBZ0I7OzJGQUtmLG1CQUFtQjtrQkFUL0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsc0JBQXNCO29CQUNoQyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDO29CQUNsQixRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixJQUFJLEVBQUU7d0JBQ0osU0FBUyxFQUFFLFdBQVc7cUJBQ3ZCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBEZWVwUGFydGlhbCB9IGZyb20gJy4uLy4uL2NvbW1vbi90eXBlLWRlZmluaXRpb25zL2Zsb3diaXRlLmRlZXAtcGFydGlhbCc7XG5pbXBvcnQgeyBGbG93Yml0ZVJvdXRlckxpbmtBY3RpdmVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2Zsb3diaXRlLXJvdXRlci1saW5rLWFjdGl2ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgRmxvd2JpdGVSb3V0ZXJMaW5rRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9mbG93Yml0ZS1yb3V0ZXItbGluay5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4uL2Jhc2UtY29tcG9uZW50LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBOYXZiYXJDb250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi9uYXZiYXItY29udGVudC5jb21wb25lbnQnO1xuaW1wb3J0IHR5cGUgeyBOYXZiYXJJdGVtQ2xhc3MsIE5hdmJhckl0ZW1UaGVtZSB9IGZyb20gJy4vbmF2YmFyLWl0ZW0udGhlbWUnO1xuaW1wb3J0IHsgTmF2YmFySXRlbVRoZW1lU2VydmljZSB9IGZyb20gJy4vbmF2YmFyLWl0ZW0udGhlbWUuc2VydmljZSc7XG5pbXBvcnQgdHlwZSB7IE5hdmJhckNvbG9ycyB9IGZyb20gJy4vbmF2YmFyLnRoZW1lJztcblxuaW1wb3J0IHsgTmdDbGFzcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIGluamVjdCwgbW9kZWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZmxvd2JpdGUtbmF2YmFyLWl0ZW0nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTmdDbGFzc10sXG4gIHRlbXBsYXRlOiBgPG5nLWNvbnRlbnQgLz5gLFxuICBob3N0OiB7XG4gICAgJyhjbGljayknOiAnb25DbGljaygpJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgTmF2YmFySXRlbUNvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQ8TmF2YmFySXRlbUNsYXNzPiB7XG4gIHB1YmxpYyByZWFkb25seSBmbG93Yml0ZVJvdXRlckxpbmsgPSBpbmplY3QoRmxvd2JpdGVSb3V0ZXJMaW5rRGlyZWN0aXZlLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuICBwdWJsaWMgcmVhZG9ubHkgZmxvd2JpdGVSb3V0ZXJMaW5rQWN0aXZlID0gaW5qZWN0KEZsb3diaXRlUm91dGVyTGlua0FjdGl2ZURpcmVjdGl2ZSwgeyBvcHRpb25hbDogdHJ1ZSB9KTtcbiAgcHVibGljIHJlYWRvbmx5IHRoZW1lU2VydmljZSA9IGluamVjdChOYXZiYXJJdGVtVGhlbWVTZXJ2aWNlKTtcbiAgcHVibGljIHJlYWRvbmx5IG5hdmJhckNvbnRlbnRDb21wb25lbnQgPSBpbmplY3QoTmF2YmFyQ29udGVudENvbXBvbmVudCk7XG5cbiAgLy8jcmVnaW9uIHByb3BlcnRpZXNcbiAgcHVibGljIGNvbG9yID0gbW9kZWw8a2V5b2YgTmF2YmFyQ29sb3JzPih0aGlzLm5hdmJhckNvbnRlbnRDb21wb25lbnQuY29sb3IoKSk7XG4gIHB1YmxpYyBjdXN0b21TdHlsZSA9IG1vZGVsPERlZXBQYXJ0aWFsPE5hdmJhckl0ZW1UaGVtZT4+KHt9KTtcbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIEJhc2VDb21wb25lbnQgaW1wbGVtZW50YXRpb25cbiAgcHVibGljIG92ZXJyaWRlIGZldGNoQ2xhc3MoKTogTmF2YmFySXRlbUNsYXNzIHtcbiAgICByZXR1cm4gdGhpcy50aGVtZVNlcnZpY2UuZ2V0Q2xhc3Nlcyh7XG4gICAgICBjb2xvcjogdGhpcy5jb2xvcigpLFxuICAgICAgY3VzdG9tU3R5bGU6IHRoaXMuY3VzdG9tU3R5bGUoKSxcbiAgICB9KTtcbiAgfVxuICAvLyNlbmRyZWdpb25cblxuICBwdWJsaWMgb25DbGljaygpOiB2b2lkIHtcbiAgICB0aGlzLm5hdmJhckNvbnRlbnRDb21wb25lbnQubmF2YmFyQ29tcG9uZW50KCkudG9nZ2xlVmlzaWJpbGl0eShmYWxzZSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,11 @@
1
+ import { createTheme } from '../../utils/theme/create-theme';
2
+ export const navbarItemTheme = createTheme({
3
+ root: {
4
+ base: 'cursor-pointer block py-2 px-3 rounded text-sm text-gray-900 dark:text-white hover:bg-gray-100 dark:hover:bg-gray-700 md:hover:bg-transparent md:border-0 md:p-0 md:dark:hover:bg-transparent',
5
+ color: {
6
+ primary: 'md:hover:text-primary-700 md:dark:hover:text-primary-500 aria-current:text-primary-500 dark:aria-current:text-primary-300',
7
+ gray: 'md:hover:text-gray-700 md:dark:hover:text-gray-500 aria-current:text-gray-500 dark:aria-current:text-gray-300',
8
+ },
9
+ },
10
+ });
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLWl0ZW0udGhlbWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Zsb3diaXRlLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL25hdmJhci9uYXZiYXItaXRlbS50aGVtZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFlN0QsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFvQixXQUFXLENBQUM7SUFDMUQsSUFBSSxFQUFFO1FBQ0osSUFBSSxFQUFFLCtMQUErTDtRQUNyTSxLQUFLLEVBQUU7WUFDTCxPQUFPLEVBQ0wsMkhBQTJIO1lBQzdILElBQUksRUFBRSwrR0FBK0c7U0FDdEg7S0FDRjtDQUNGLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRGVlcFBhcnRpYWwgfSBmcm9tICcuLi8uLi9jb21tb24nO1xuaW1wb3J0IHR5cGUgeyBGbG93Yml0ZUNsYXNzIH0gZnJvbSAnLi4vLi4vY29tbW9uL3R5cGUtZGVmaW5pdGlvbnMvZmxvd2JpdGUuY2xhc3MnO1xuaW1wb3J0IHsgY3JlYXRlVGhlbWUgfSBmcm9tICcuLi8uLi91dGlscy90aGVtZS9jcmVhdGUtdGhlbWUnO1xuaW1wb3J0IHR5cGUgeyBOYXZiYXJDb2xvcnMgfSBmcm9tICcuL25hdmJhci50aGVtZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmFidmFySXRlbVByb3BlcnRpZXMge1xuICBjb2xvcjoga2V5b2YgTmF2YmFyQ29sb3JzO1xuICBjdXN0b21TdHlsZTogRGVlcFBhcnRpYWw8TmF2YmFySXRlbVRoZW1lPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOYXZiYXJJdGVtVGhlbWUge1xuICByb290OiB7XG4gICAgYmFzZTogc3RyaW5nO1xuICAgIGNvbG9yOiBOYXZiYXJDb2xvcnM7XG4gIH07XG59XG5cbmV4cG9ydCBjb25zdCBuYXZiYXJJdGVtVGhlbWU6IE5hdmJhckl0ZW1UaGVtZSA9IGNyZWF0ZVRoZW1lKHtcbiAgcm9vdDoge1xuICAgIGJhc2U6ICdjdXJzb3ItcG9pbnRlciBibG9jayBweS0yIHB4LTMgcm91bmRlZCB0ZXh0LXNtIHRleHQtZ3JheS05MDAgZGFyazp0ZXh0LXdoaXRlIGhvdmVyOmJnLWdyYXktMTAwIGRhcms6aG92ZXI6YmctZ3JheS03MDAgbWQ6aG92ZXI6YmctdHJhbnNwYXJlbnQgbWQ6Ym9yZGVyLTAgbWQ6cC0wIG1kOmRhcms6aG92ZXI6YmctdHJhbnNwYXJlbnQnLFxuICAgIGNvbG9yOiB7XG4gICAgICBwcmltYXJ5OlxuICAgICAgICAnbWQ6aG92ZXI6dGV4dC1wcmltYXJ5LTcwMCBtZDpkYXJrOmhvdmVyOnRleHQtcHJpbWFyeS01MDAgYXJpYS1jdXJyZW50OnRleHQtcHJpbWFyeS01MDAgZGFyazphcmlhLWN1cnJlbnQ6dGV4dC1wcmltYXJ5LTMwMCcsXG4gICAgICBncmF5OiAnbWQ6aG92ZXI6dGV4dC1ncmF5LTcwMCBtZDpkYXJrOmhvdmVyOnRleHQtZ3JheS01MDAgYXJpYS1jdXJyZW50OnRleHQtZ3JheS01MDAgZGFyazphcmlhLWN1cnJlbnQ6dGV4dC1ncmF5LTMwMCcsXG4gICAgfSxcbiAgfSxcbn0pO1xuXG5leHBvcnQgdHlwZSBOYXZiYXJJdGVtQ2xhc3MgPSBGbG93Yml0ZUNsYXNzO1xuIl19
@@ -0,0 +1,17 @@
1
+ import { mergeTheme } from '../../utils/theme/merge-theme';
2
+ import { inject, InjectionToken } from '@angular/core';
3
+ import { twMerge } from 'tailwind-merge';
4
+ export const FLOWBITE_NAVBAR_ITEM_THEME_TOKEN = new InjectionToken('FLOWBITE_NAVBAR_ITEM_THEME_TOKEN');
5
+ export class NavbarItemThemeService {
6
+ constructor() {
7
+ this.baseTheme = inject(FLOWBITE_NAVBAR_ITEM_THEME_TOKEN);
8
+ }
9
+ getClasses(properties) {
10
+ const theme = mergeTheme(this.baseTheme, properties.customStyle);
11
+ const output = {
12
+ rootClass: twMerge(theme.root.base, theme.root.color[properties.color]),
13
+ };
14
+ return output;
15
+ }
16
+ }
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLWl0ZW0udGhlbWUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmxvd2JpdGUtYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvbmF2YmFyL25hdmJhci1pdGVtLnRoZW1lLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRzNELE9BQU8sRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6QyxNQUFNLENBQUMsTUFBTSxnQ0FBZ0MsR0FBRyxJQUFJLGNBQWMsQ0FBa0Isa0NBQWtDLENBQUMsQ0FBQztBQUV4SCxNQUFNLE9BQU8sc0JBQXNCO0lBQW5DO1FBQ21CLGNBQVMsR0FBRyxNQUFNLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztJQVd4RSxDQUFDO0lBVFEsVUFBVSxDQUFDLFVBQWdDO1FBQ2hELE1BQU0sS0FBSyxHQUFvQixVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUM7UUFFbEYsTUFBTSxNQUFNLEdBQW9CO1lBQzlCLFNBQVMsRUFBRSxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3hFLENBQUM7UUFFRixPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEZsb3diaXRlVGhlbWVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgbWVyZ2VUaGVtZSB9IGZyb20gJy4uLy4uL3V0aWxzL3RoZW1lL21lcmdlLXRoZW1lJztcbmltcG9ydCB0eXBlIHsgTmFidmFySXRlbVByb3BlcnRpZXMsIE5hdmJhckl0ZW1DbGFzcywgTmF2YmFySXRlbVRoZW1lIH0gZnJvbSAnLi9uYXZiYXItaXRlbS50aGVtZSc7XG5cbmltcG9ydCB7IGluamVjdCwgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHR3TWVyZ2UgfSBmcm9tICd0YWlsd2luZC1tZXJnZSc7XG5cbmV4cG9ydCBjb25zdCBGTE9XQklURV9OQVZCQVJfSVRFTV9USEVNRV9UT0tFTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxOYXZiYXJJdGVtVGhlbWU+KCdGTE9XQklURV9OQVZCQVJfSVRFTV9USEVNRV9UT0tFTicpO1xuXG5leHBvcnQgY2xhc3MgTmF2YmFySXRlbVRoZW1lU2VydmljZSBpbXBsZW1lbnRzIEZsb3diaXRlVGhlbWVTZXJ2aWNlPE5hYnZhckl0ZW1Qcm9wZXJ0aWVzPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgYmFzZVRoZW1lID0gaW5qZWN0KEZMT1dCSVRFX05BVkJBUl9JVEVNX1RIRU1FX1RPS0VOKTtcblxuICBwdWJsaWMgZ2V0Q2xhc3Nlcyhwcm9wZXJ0aWVzOiBOYWJ2YXJJdGVtUHJvcGVydGllcyk6IE5hdmJhckl0ZW1DbGFzcyB7XG4gICAgY29uc3QgdGhlbWU6IE5hdmJhckl0ZW1UaGVtZSA9IG1lcmdlVGhlbWUodGhpcy5iYXNlVGhlbWUsIHByb3BlcnRpZXMuY3VzdG9tU3R5bGUpO1xuXG4gICAgY29uc3Qgb3V0cHV0OiBOYXZiYXJJdGVtQ2xhc3MgPSB7XG4gICAgICByb290Q2xhc3M6IHR3TWVyZ2UodGhlbWUucm9vdC5iYXNlLCB0aGVtZS5yb290LmNvbG9yW3Byb3BlcnRpZXMuY29sb3JdKSxcbiAgICB9O1xuXG4gICAgcmV0dXJuIG91dHB1dDtcbiAgfVxufVxuIl19
@@ -0,0 +1,58 @@
1
+ import { BARS_SVG_ICON } from '../../utils/icon.list';
2
+ import { BaseComponent } from '../base-component.directive';
3
+ import { IconComponent, IconRegistry } from '../icon';
4
+ import { NavbarToggleThemeService } from './navbar-toggle.theme.service';
5
+ import { NavbarComponent } from './navbar.component';
6
+ import { CommonModule } from '@angular/common';
7
+ import { Component, inject, model } from '@angular/core';
8
+ import { DomSanitizer } from '@angular/platform-browser';
9
+ import * as i0 from "@angular/core";
10
+ export class NavbarToggleComponent extends BaseComponent {
11
+ constructor() {
12
+ super(...arguments);
13
+ this.themeService = inject(NavbarToggleThemeService);
14
+ this.navbarComponent = model(inject(NavbarComponent));
15
+ this.iconRegistry = inject(IconRegistry);
16
+ this.domSanitizer = inject(DomSanitizer);
17
+ //#region properties
18
+ this.customStyle = model({});
19
+ }
20
+ //#endregion
21
+ //#region BaseComponent implementation
22
+ fetchClass() {
23
+ return this.themeService.getClasses({
24
+ customStyle: this.customStyle(),
25
+ });
26
+ }
27
+ init() {
28
+ this.iconRegistry.addRawSvgIconInNamepsace('flowbite-angular', 'bars', this.domSanitizer.bypassSecurityTrustHtml(BARS_SVG_ICON));
29
+ }
30
+ //#endregion
31
+ onClick() {
32
+ const isCollapsed = this.navbarComponent().isOpen();
33
+ this.navbarComponent().isOpen.set(!isCollapsed);
34
+ }
35
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: NavbarToggleComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
36
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.5", type: NavbarToggleComponent, isStandalone: true, selector: "flowbite-navbar-toggle", inputs: { navbarComponent: { classPropertyName: "navbarComponent", publicName: "navbarComponent", isSignal: true, isRequired: false, transformFunction: null }, customStyle: { classPropertyName: "customStyle", publicName: "customStyle", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { navbarComponent: "navbarComponentChange", customStyle: "customStyleChange" }, host: { listeners: { "click": "onClick()" } }, usesInheritance: true, ngImport: i0, template: `
37
+ <flowbite-icon
38
+ svgIcon="flowbite-angular:bars"
39
+ class="w-5 h-5" />
40
+ `, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: IconComponent, selector: "flowbite-icon", inputs: ["svgIcon"], outputs: ["svgIconChange"] }] }); }
41
+ }
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: NavbarToggleComponent, decorators: [{
43
+ type: Component,
44
+ args: [{
45
+ selector: 'flowbite-navbar-toggle',
46
+ standalone: true,
47
+ imports: [CommonModule, IconComponent],
48
+ template: `
49
+ <flowbite-icon
50
+ svgIcon="flowbite-angular:bars"
51
+ class="w-5 h-5" />
52
+ `,
53
+ host: {
54
+ '(click)': 'onClick()',
55
+ },
56
+ }]
57
+ }] });
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLXRvZ2dsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Zsb3diaXRlLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL25hdmJhci9uYXZiYXItdG9nZ2xlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzVELE9BQU8sRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRXRELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7QUFlekQsTUFBTSxPQUFPLHFCQUFzQixTQUFRLGFBQWdDO0lBYjNFOztRQWNrQixpQkFBWSxHQUFHLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1FBQ2hELG9CQUFlLEdBQUcsS0FBSyxDQUFrQixNQUFNLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQztRQUNsRSxpQkFBWSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNwQyxpQkFBWSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUVwRCxvQkFBb0I7UUFDYixnQkFBVyxHQUFHLEtBQUssQ0FBaUMsRUFBRSxDQUFDLENBQUM7S0F3QmhFO0lBdkJDLFlBQVk7SUFFWixzQ0FBc0M7SUFDdEIsVUFBVTtRQUN4QixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDO1lBQ2xDLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFO1NBQ2hDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFZSxJQUFJO1FBQ2xCLElBQUksQ0FBQyxZQUFZLENBQUMsd0JBQXdCLENBQ3hDLGtCQUFrQixFQUNsQixNQUFNLEVBQ04sSUFBSSxDQUFDLFlBQVksQ0FBQyx1QkFBdUIsQ0FBQyxhQUFhLENBQUMsQ0FDekQsQ0FBQztJQUNKLENBQUM7SUFDRCxZQUFZO0lBRUwsT0FBTztRQUNaLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUVwRCxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2xELENBQUM7OEdBOUJVLHFCQUFxQjtrR0FBckIscUJBQXFCLDZoQkFUdEI7Ozs7R0FJVCwyREFMUyxZQUFZLCtCQUFFLGFBQWE7OzJGQVUxQixxQkFBcUI7a0JBYmpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHdCQUF3QjtvQkFDbEMsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxhQUFhLENBQUM7b0JBQ3RDLFFBQVEsRUFBRTs7OztHQUlUO29CQUNELElBQUksRUFBRTt3QkFDSixTQUFTLEVBQUUsV0FBVztxQkFDdkI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IERlZXBQYXJ0aWFsIH0gZnJvbSAnLi4vLi4vY29tbW9uJztcbmltcG9ydCB7IEJBUlNfU1ZHX0lDT04gfSBmcm9tICcuLi8uLi91dGlscy9pY29uLmxpc3QnO1xuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4uL2Jhc2UtY29tcG9uZW50LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBJY29uQ29tcG9uZW50LCBJY29uUmVnaXN0cnkgfSBmcm9tICcuLi9pY29uJztcbmltcG9ydCB0eXBlIHsgTmF2YmFyVG9nZ2xlQ2xhc3MsIE5hdmJhclRvZ2dsZVRoZW1lIH0gZnJvbSAnLi9uYXZiYXItdG9nZ2xlLnRoZW1lJztcbmltcG9ydCB7IE5hdmJhclRvZ2dsZVRoZW1lU2VydmljZSB9IGZyb20gJy4vbmF2YmFyLXRvZ2dsZS50aGVtZS5zZXJ2aWNlJztcbmltcG9ydCB7IE5hdmJhckNvbXBvbmVudCB9IGZyb20gJy4vbmF2YmFyLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIGluamVjdCwgbW9kZWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERvbVNhbml0aXplciB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmbG93Yml0ZS1uYXZiYXItdG9nZ2xlJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgSWNvbkNvbXBvbmVudF0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGZsb3diaXRlLWljb25cbiAgICAgIHN2Z0ljb249XCJmbG93Yml0ZS1hbmd1bGFyOmJhcnNcIlxuICAgICAgY2xhc3M9XCJ3LTUgaC01XCIgLz5cbiAgYCxcbiAgaG9zdDoge1xuICAgICcoY2xpY2spJzogJ29uQ2xpY2soKScsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIE5hdmJhclRvZ2dsZUNvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQ8TmF2YmFyVG9nZ2xlQ2xhc3M+IHtcbiAgcHVibGljIHJlYWRvbmx5IHRoZW1lU2VydmljZSA9IGluamVjdChOYXZiYXJUb2dnbGVUaGVtZVNlcnZpY2UpO1xuICBwdWJsaWMgcmVhZG9ubHkgbmF2YmFyQ29tcG9uZW50ID0gbW9kZWw8TmF2YmFyQ29tcG9uZW50PihpbmplY3QoTmF2YmFyQ29tcG9uZW50KSk7XG4gIHB1YmxpYyByZWFkb25seSBpY29uUmVnaXN0cnkgPSBpbmplY3QoSWNvblJlZ2lzdHJ5KTtcbiAgcHVibGljIHJlYWRvbmx5IGRvbVNhbml0aXplciA9IGluamVjdChEb21TYW5pdGl6ZXIpO1xuXG4gIC8vI3JlZ2lvbiBwcm9wZXJ0aWVzXG4gIHB1YmxpYyBjdXN0b21TdHlsZSA9IG1vZGVsPERlZXBQYXJ0aWFsPE5hdmJhclRvZ2dsZVRoZW1lPj4oe30pO1xuICAvLyNlbmRyZWdpb25cblxuICAvLyNyZWdpb24gQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRhdGlvblxuICBwdWJsaWMgb3ZlcnJpZGUgZmV0Y2hDbGFzcygpOiBOYXZiYXJUb2dnbGVDbGFzcyB7XG4gICAgcmV0dXJuIHRoaXMudGhlbWVTZXJ2aWNlLmdldENsYXNzZXMoe1xuICAgICAgY3VzdG9tU3R5bGU6IHRoaXMuY3VzdG9tU3R5bGUoKSxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBpbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaWNvblJlZ2lzdHJ5LmFkZFJhd1N2Z0ljb25Jbk5hbWVwc2FjZShcbiAgICAgICdmbG93Yml0ZS1hbmd1bGFyJyxcbiAgICAgICdiYXJzJyxcbiAgICAgIHRoaXMuZG9tU2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RIdG1sKEJBUlNfU1ZHX0lDT04pLFxuICAgICk7XG4gIH1cbiAgLy8jZW5kcmVnaW9uXG5cbiAgcHVibGljIG9uQ2xpY2soKTogdm9pZCB7XG4gICAgY29uc3QgaXNDb2xsYXBzZWQgPSB0aGlzLm5hdmJhckNvbXBvbmVudCgpLmlzT3BlbigpO1xuXG4gICAgdGhpcy5uYXZiYXJDb21wb25lbnQoKS5pc09wZW4uc2V0KCFpc0NvbGxhcHNlZCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,7 @@
1
+ import { createTheme } from '../../utils/theme/create-theme';
2
+ export const navbarToogleTheme = createTheme({
3
+ root: {
4
+ base: 'cursor-pointer inline-flex items-center p-2 w-10 h-10 justify-center text-sm text-gray-500 rounded-lg md:hidden hover:bg-gray-100 focus:outline-none focus:ring-2 focus:ring-gray-200 dark:text-gray-400 dark:hover:bg-gray-700 dark:focus:ring-gray-600',
5
+ },
6
+ });
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLXRvZ2dsZS50aGVtZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmxvd2JpdGUtYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvbmF2YmFyL25hdmJhci10b2dnbGUudGhlbWUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBWTdELE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFzQixXQUFXLENBQUM7SUFDOUQsSUFBSSxFQUFFO1FBQ0osSUFBSSxFQUFFLDBQQUEwUDtLQUNqUTtDQUNGLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRGVlcFBhcnRpYWwsIEZsb3diaXRlQ2xhc3MgfSBmcm9tICcuLi8uLi9jb21tb24nO1xuaW1wb3J0IHsgY3JlYXRlVGhlbWUgfSBmcm9tICcuLi8uLi91dGlscy90aGVtZS9jcmVhdGUtdGhlbWUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIE5hdmJhclRvZ2dsZVByb3BlcnRpZXMge1xuICBjdXN0b21TdHlsZTogRGVlcFBhcnRpYWw8TmF2YmFyVG9nZ2xlVGhlbWU+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5hdmJhclRvZ2dsZVRoZW1lIHtcbiAgcm9vdDoge1xuICAgIGJhc2U6IHN0cmluZztcbiAgfTtcbn1cblxuZXhwb3J0IGNvbnN0IG5hdmJhclRvb2dsZVRoZW1lOiBOYXZiYXJUb2dnbGVUaGVtZSA9IGNyZWF0ZVRoZW1lKHtcbiAgcm9vdDoge1xuICAgIGJhc2U6ICdjdXJzb3ItcG9pbnRlciBpbmxpbmUtZmxleCBpdGVtcy1jZW50ZXIgcC0yIHctMTAgaC0xMCBqdXN0aWZ5LWNlbnRlciB0ZXh0LXNtIHRleHQtZ3JheS01MDAgcm91bmRlZC1sZyBtZDpoaWRkZW4gaG92ZXI6YmctZ3JheS0xMDAgZm9jdXM6b3V0bGluZS1ub25lIGZvY3VzOnJpbmctMiBmb2N1czpyaW5nLWdyYXktMjAwIGRhcms6dGV4dC1ncmF5LTQwMCBkYXJrOmhvdmVyOmJnLWdyYXktNzAwIGRhcms6Zm9jdXM6cmluZy1ncmF5LTYwMCcsXG4gIH0sXG59KTtcblxuZXhwb3J0IHR5cGUgTmF2YmFyVG9nZ2xlQ2xhc3MgPSBGbG93Yml0ZUNsYXNzO1xuIl19
@@ -0,0 +1,17 @@
1
+ import { mergeTheme } from '../../utils/theme/merge-theme';
2
+ import { inject, InjectionToken } from '@angular/core';
3
+ import { twMerge } from 'tailwind-merge';
4
+ export const FLOWBITE_NAVBAR_TOGGLE_THEME_TOKEN = new InjectionToken('FLOWBITE_NAVBAR_TOGGLE_THEME_TOKEN');
5
+ export class NavbarToggleThemeService {
6
+ constructor() {
7
+ this.baseTheme = inject(FLOWBITE_NAVBAR_TOGGLE_THEME_TOKEN);
8
+ }
9
+ getClasses(properties) {
10
+ const theme = mergeTheme(this.baseTheme, properties.customStyle);
11
+ const output = {
12
+ rootClass: twMerge(theme.root.base),
13
+ };
14
+ return output;
15
+ }
16
+ }
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLXRvZ2dsZS50aGVtZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mbG93Yml0ZS1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9uYXZiYXIvbmF2YmFyLXRvZ2dsZS50aGVtZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUczRCxPQUFPLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFekMsTUFBTSxDQUFDLE1BQU0sa0NBQWtDLEdBQUcsSUFBSSxjQUFjLENBQ2xFLG9DQUFvQyxDQUNyQyxDQUFDO0FBRUYsTUFBTSxPQUFPLHdCQUF3QjtJQUFyQztRQUNtQixjQUFTLEdBQUcsTUFBTSxDQUFDLGtDQUFrQyxDQUFDLENBQUM7SUFXMUUsQ0FBQztJQVRRLFVBQVUsQ0FBQyxVQUFrQztRQUNsRCxNQUFNLEtBQUssR0FBc0IsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRXBGLE1BQU0sTUFBTSxHQUFzQjtZQUNoQyxTQUFTLEVBQUUsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1NBQ3BDLENBQUM7UUFFRixPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEZsb3diaXRlVGhlbWVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgbWVyZ2VUaGVtZSB9IGZyb20gJy4uLy4uL3V0aWxzL3RoZW1lL21lcmdlLXRoZW1lJztcbmltcG9ydCB0eXBlIHsgTmF2YmFyVG9nZ2xlQ2xhc3MsIE5hdmJhclRvZ2dsZVByb3BlcnRpZXMsIE5hdmJhclRvZ2dsZVRoZW1lIH0gZnJvbSAnLi9uYXZiYXItdG9nZ2xlLnRoZW1lJztcblxuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdHdNZXJnZSB9IGZyb20gJ3RhaWx3aW5kLW1lcmdlJztcblxuZXhwb3J0IGNvbnN0IEZMT1dCSVRFX05BVkJBUl9UT0dHTEVfVEhFTUVfVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48TmF2YmFyVG9nZ2xlVGhlbWU+KFxuICAnRkxPV0JJVEVfTkFWQkFSX1RPR0dMRV9USEVNRV9UT0tFTicsXG4pO1xuXG5leHBvcnQgY2xhc3MgTmF2YmFyVG9nZ2xlVGhlbWVTZXJ2aWNlIGltcGxlbWVudHMgRmxvd2JpdGVUaGVtZVNlcnZpY2U8TmF2YmFyVG9nZ2xlUHJvcGVydGllcz4ge1xuICBwcml2YXRlIHJlYWRvbmx5IGJhc2VUaGVtZSA9IGluamVjdChGTE9XQklURV9OQVZCQVJfVE9HR0xFX1RIRU1FX1RPS0VOKTtcblxuICBwdWJsaWMgZ2V0Q2xhc3Nlcyhwcm9wZXJ0aWVzOiBOYXZiYXJUb2dnbGVQcm9wZXJ0aWVzKTogTmF2YmFyVG9nZ2xlQ2xhc3Mge1xuICAgIGNvbnN0IHRoZW1lOiBOYXZiYXJUb2dnbGVUaGVtZSA9IG1lcmdlVGhlbWUodGhpcy5iYXNlVGhlbWUsIHByb3BlcnRpZXMuY3VzdG9tU3R5bGUpO1xuXG4gICAgY29uc3Qgb3V0cHV0OiBOYXZiYXJUb2dnbGVDbGFzcyA9IHtcbiAgICAgIHJvb3RDbGFzczogdHdNZXJnZSh0aGVtZS5yb290LmJhc2UpLFxuICAgIH07XG5cbiAgICByZXR1cm4gb3V0cHV0O1xuICB9XG59XG4iXX0=
@@ -0,0 +1,62 @@
1
+ import { booleanToFlowbiteBoolean } from '../../utils/boolean.util';
2
+ import { BaseComponent } from '../base-component.directive';
3
+ import { NavbarBrandComponent } from './navbar-brand.component';
4
+ import { NavbarContentComponent } from './navbar-content.component';
5
+ import { NavbarToggleComponent } from './navbar-toggle.component';
6
+ import { NavbarThemeService } from './navbar.theme.service';
7
+ import { NgClass } from '@angular/common';
8
+ import { Component, contentChild, inject, model, untracked } from '@angular/core';
9
+ import * as i0 from "@angular/core";
10
+ /**
11
+ * @see https://flowbite.com/docs/components/navbar/
12
+ */
13
+ export class NavbarComponent extends BaseComponent {
14
+ constructor() {
15
+ super(...arguments);
16
+ this.themeService = inject(NavbarThemeService);
17
+ this.navbarBrandChild = contentChild(NavbarBrandComponent);
18
+ this.navbarToggleChild = contentChild(NavbarToggleComponent);
19
+ this.navbarContentChild = contentChild(NavbarContentComponent);
20
+ //#region properties
21
+ this.color = model('primary');
22
+ this.isOpen = model(false);
23
+ this.isRounded = model(false);
24
+ this.hasBorder = model(false);
25
+ this.isFixed = model(false);
26
+ this.customStyle = model({});
27
+ }
28
+ //#endregion
29
+ //#region BaseComponent implementation
30
+ fetchClass() {
31
+ return this.themeService.getClasses({
32
+ hasBorder: booleanToFlowbiteBoolean(this.isRounded()),
33
+ isRounded: booleanToFlowbiteBoolean(this.hasBorder()),
34
+ isFixed: booleanToFlowbiteBoolean(this.isFixed()),
35
+ customStyle: this.customStyle(),
36
+ });
37
+ }
38
+ verify() {
39
+ if (this.navbarContentChild() === undefined) {
40
+ throw new Error('No NavbarContentComponent available');
41
+ }
42
+ }
43
+ //#endregion
44
+ toggleVisibility(isOpen) {
45
+ if (isOpen === undefined) {
46
+ isOpen = untracked(() => !this.isOpen());
47
+ }
48
+ this.isOpen.set(isOpen);
49
+ }
50
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: NavbarComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
51
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.5", type: NavbarComponent, isStandalone: true, selector: "flowbite-navbar", inputs: { color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, isOpen: { classPropertyName: "isOpen", publicName: "isOpen", isSignal: true, isRequired: false, transformFunction: null }, isRounded: { classPropertyName: "isRounded", publicName: "isRounded", isSignal: true, isRequired: false, transformFunction: null }, hasBorder: { classPropertyName: "hasBorder", publicName: "hasBorder", isSignal: true, isRequired: false, transformFunction: null }, isFixed: { classPropertyName: "isFixed", publicName: "isFixed", isSignal: true, isRequired: false, transformFunction: null }, customStyle: { classPropertyName: "customStyle", publicName: "customStyle", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { color: "colorChange", isOpen: "isOpenChange", isRounded: "isRoundedChange", hasBorder: "hasBorderChange", isFixed: "isFixedChange", customStyle: "customStyleChange" }, queries: [{ propertyName: "navbarBrandChild", first: true, predicate: NavbarBrandComponent, descendants: true, isSignal: true }, { propertyName: "navbarToggleChild", first: true, predicate: NavbarToggleComponent, descendants: true, isSignal: true }, { propertyName: "navbarContentChild", first: true, predicate: NavbarContentComponent, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: `<ng-content />`, isInline: true }); }
52
+ }
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: NavbarComponent, decorators: [{
54
+ type: Component,
55
+ args: [{
56
+ standalone: true,
57
+ imports: [NgClass],
58
+ selector: 'flowbite-navbar',
59
+ template: `<ng-content />`,
60
+ }]
61
+ }] });
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZmxvd2JpdGUtYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvbmF2YmFyL25hdmJhci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDcEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzVELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRWxFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRTVELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFbEY7O0dBRUc7QUFPSCxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxhQUEwQjtJQU4vRDs7UUFPa0IsaUJBQVksR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUMxQyxxQkFBZ0IsR0FBRyxZQUFZLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUN0RCxzQkFBaUIsR0FBRyxZQUFZLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUN4RCx1QkFBa0IsR0FBRyxZQUFZLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUUxRSxvQkFBb0I7UUFDYixVQUFLLEdBQUcsS0FBSyxDQUFxQixTQUFTLENBQUMsQ0FBQztRQUM3QyxXQUFNLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQy9CLGNBQVMsR0FBRyxLQUFLLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDbEMsY0FBUyxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUNsQyxZQUFPLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ2hDLGdCQUFXLEdBQUcsS0FBSyxDQUEyQixFQUFFLENBQUMsQ0FBQztLQTJCMUQ7SUExQkMsWUFBWTtJQUVaLHNDQUFzQztJQUN0QixVQUFVO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUM7WUFDbEMsU0FBUyxFQUFFLHdCQUF3QixDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNyRCxTQUFTLEVBQUUsd0JBQXdCLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3JELE9BQU8sRUFBRSx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDakQsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUU7U0FDaEMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVlLE1BQU07UUFDcEIsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUM1QyxNQUFNLElBQUksS0FBSyxDQUFDLHFDQUFxQyxDQUFDLENBQUM7UUFDekQsQ0FBQztJQUNILENBQUM7SUFDRCxZQUFZO0lBRUwsZ0JBQWdCLENBQUMsTUFBZ0I7UUFDdEMsSUFBSSxNQUFNLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDekIsTUFBTSxHQUFHLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO1FBQzNDLENBQUM7UUFFRCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMxQixDQUFDOzhHQXRDVSxlQUFlO2tHQUFmLGVBQWUsMmpDQUVzQixvQkFBb0Isb0dBQ25CLHFCQUFxQixxR0FDcEIsc0JBQXNCLHVGQU45RCxnQkFBZ0I7OzJGQUVmLGVBQWU7a0JBTjNCLFNBQVM7bUJBQUM7b0JBQ1QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQztvQkFDbEIsUUFBUSxFQUFFLGlCQUFpQjtvQkFDM0IsUUFBUSxFQUFFLGdCQUFnQjtpQkFDM0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IERlZXBQYXJ0aWFsIH0gZnJvbSAnLi4vLi4vY29tbW9uJztcbmltcG9ydCB7IGJvb2xlYW5Ub0Zsb3diaXRlQm9vbGVhbiB9IGZyb20gJy4uLy4uL3V0aWxzL2Jvb2xlYW4udXRpbCc7XG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi4vYmFzZS1jb21wb25lbnQuZGlyZWN0aXZlJztcbmltcG9ydCB7IE5hdmJhckJyYW5kQ29tcG9uZW50IH0gZnJvbSAnLi9uYXZiYXItYnJhbmQuY29tcG9uZW50JztcbmltcG9ydCB7IE5hdmJhckNvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuL25hdmJhci1jb250ZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOYXZiYXJUb2dnbGVDb21wb25lbnQgfSBmcm9tICcuL25hdmJhci10b2dnbGUuY29tcG9uZW50JztcbmltcG9ydCB0eXBlIHsgTmF2YmFyQ2xhc3MsIE5hdmJhckNvbG9ycywgTmF2YmFyVGhlbWUgfSBmcm9tICcuL25hdmJhci50aGVtZSc7XG5pbXBvcnQgeyBOYXZiYXJUaGVtZVNlcnZpY2UgfSBmcm9tICcuL25hdmJhci50aGVtZS5zZXJ2aWNlJztcblxuaW1wb3J0IHsgTmdDbGFzcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIGNvbnRlbnRDaGlsZCwgaW5qZWN0LCBtb2RlbCwgdW50cmFja2VkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogQHNlZSBodHRwczovL2Zsb3diaXRlLmNvbS9kb2NzL2NvbXBvbmVudHMvbmF2YmFyL1xuICovXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW05nQ2xhc3NdLFxuICBzZWxlY3RvcjogJ2Zsb3diaXRlLW5hdmJhcicsXG4gIHRlbXBsYXRlOiBgPG5nLWNvbnRlbnQgLz5gLFxufSlcbmV4cG9ydCBjbGFzcyBOYXZiYXJDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50PE5hdmJhckNsYXNzPiB7XG4gIHB1YmxpYyByZWFkb25seSB0aGVtZVNlcnZpY2UgPSBpbmplY3QoTmF2YmFyVGhlbWVTZXJ2aWNlKTtcbiAgcHVibGljIHJlYWRvbmx5IG5hdmJhckJyYW5kQ2hpbGQgPSBjb250ZW50Q2hpbGQoTmF2YmFyQnJhbmRDb21wb25lbnQpO1xuICBwdWJsaWMgcmVhZG9ubHkgbmF2YmFyVG9nZ2xlQ2hpbGQgPSBjb250ZW50Q2hpbGQoTmF2YmFyVG9nZ2xlQ29tcG9uZW50KTtcbiAgcHVibGljIHJlYWRvbmx5IG5hdmJhckNvbnRlbnRDaGlsZCA9IGNvbnRlbnRDaGlsZChOYXZiYXJDb250ZW50Q29tcG9uZW50KTtcblxuICAvLyNyZWdpb24gcHJvcGVydGllc1xuICBwdWJsaWMgY29sb3IgPSBtb2RlbDxrZXlvZiBOYXZiYXJDb2xvcnM+KCdwcmltYXJ5Jyk7XG4gIHB1YmxpYyBpc09wZW4gPSBtb2RlbDxib29sZWFuPihmYWxzZSk7XG4gIHB1YmxpYyBpc1JvdW5kZWQgPSBtb2RlbDxib29sZWFuPihmYWxzZSk7XG4gIHB1YmxpYyBoYXNCb3JkZXIgPSBtb2RlbDxib29sZWFuPihmYWxzZSk7XG4gIHB1YmxpYyBpc0ZpeGVkID0gbW9kZWw8Ym9vbGVhbj4oZmFsc2UpO1xuICBwdWJsaWMgY3VzdG9tU3R5bGUgPSBtb2RlbDxEZWVwUGFydGlhbDxOYXZiYXJUaGVtZT4+KHt9KTtcbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIEJhc2VDb21wb25lbnQgaW1wbGVtZW50YXRpb25cbiAgcHVibGljIG92ZXJyaWRlIGZldGNoQ2xhc3MoKTogTmF2YmFyQ2xhc3Mge1xuICAgIHJldHVybiB0aGlzLnRoZW1lU2VydmljZS5nZXRDbGFzc2VzKHtcbiAgICAgIGhhc0JvcmRlcjogYm9vbGVhblRvRmxvd2JpdGVCb29sZWFuKHRoaXMuaXNSb3VuZGVkKCkpLFxuICAgICAgaXNSb3VuZGVkOiBib29sZWFuVG9GbG93Yml0ZUJvb2xlYW4odGhpcy5oYXNCb3JkZXIoKSksXG4gICAgICBpc0ZpeGVkOiBib29sZWFuVG9GbG93Yml0ZUJvb2xlYW4odGhpcy5pc0ZpeGVkKCkpLFxuICAgICAgY3VzdG9tU3R5bGU6IHRoaXMuY3VzdG9tU3R5bGUoKSxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSB2ZXJpZnkoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubmF2YmFyQ29udGVudENoaWxkKCkgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdObyBOYXZiYXJDb250ZW50Q29tcG9uZW50IGF2YWlsYWJsZScpO1xuICAgIH1cbiAgfVxuICAvLyNlbmRyZWdpb25cblxuICBwdWJsaWMgdG9nZ2xlVmlzaWJpbGl0eShpc09wZW4/OiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKGlzT3BlbiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBpc09wZW4gPSB1bnRyYWNrZWQoKCkgPT4gIXRoaXMuaXNPcGVuKCkpO1xuICAgIH1cblxuICAgIHRoaXMuaXNPcGVuLnNldChpc09wZW4pO1xuICB9XG59XG4iXX0=