@soyfri/template 1.0.0 → 1.0.3

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 (477) hide show
  1. package/dist/assets/fonticon/fonticon.css +282 -0
  2. package/dist/assets/fonticon/fonticon.eot +0 -0
  3. package/dist/assets/fonticon/fonticon.scss +362 -0
  4. package/dist/assets/fonticon/fonticon.svg +273 -0
  5. package/dist/assets/fonticon/fonticon.ttf +0 -0
  6. package/dist/assets/fonticon/fonticon.woff +0 -0
  7. package/dist/assets/fonticon/fonticon.woff2 +0 -0
  8. package/dist/assets/keenicons/duotone/Read Me.txt +7 -0
  9. package/dist/assets/keenicons/duotone/demo-files/demo.css +152 -0
  10. package/dist/assets/keenicons/duotone/demo-files/demo.js +30 -0
  11. package/dist/assets/keenicons/duotone/demo.html +8060 -0
  12. package/dist/assets/keenicons/duotone/fonts/keenicons-duotone.eot +0 -0
  13. package/dist/assets/keenicons/duotone/fonts/keenicons-duotone.svg +1720 -0
  14. package/dist/assets/keenicons/duotone/fonts/keenicons-duotone.ttf +0 -0
  15. package/dist/assets/keenicons/duotone/fonts/keenicons-duotone.woff +0 -0
  16. package/dist/assets/keenicons/duotone/selection.json +1 -0
  17. package/dist/assets/keenicons/duotone/style.css +8678 -0
  18. package/dist/assets/keenicons/outline/Read Me.txt +7 -0
  19. package/dist/assets/keenicons/outline/demo-files/demo.css +152 -0
  20. package/dist/assets/keenicons/outline/demo-files/demo.js +30 -0
  21. package/dist/assets/keenicons/outline/demo.html +8060 -0
  22. package/dist/assets/keenicons/outline/fonts/keenicons-outline.eot +0 -0
  23. package/dist/assets/keenicons/outline/fonts/keenicons-outline.svg +583 -0
  24. package/dist/assets/keenicons/outline/fonts/keenicons-outline.ttf +0 -0
  25. package/dist/assets/keenicons/outline/fonts/keenicons-outline.woff +0 -0
  26. package/dist/assets/keenicons/outline/selection.json +1 -0
  27. package/dist/assets/keenicons/outline/style.css +1746 -0
  28. package/dist/assets/keenicons/solid/Read Me.txt +7 -0
  29. package/dist/assets/keenicons/solid/demo-files/demo.css +152 -0
  30. package/dist/assets/keenicons/solid/demo-files/demo.js +30 -0
  31. package/dist/assets/keenicons/solid/demo.html +8060 -0
  32. package/dist/assets/keenicons/solid/fonts/keenicons-solid.eot +0 -0
  33. package/dist/assets/keenicons/solid/fonts/keenicons-solid.svg +583 -0
  34. package/dist/assets/keenicons/solid/fonts/keenicons-solid.ttf +0 -0
  35. package/dist/assets/keenicons/solid/fonts/keenicons-solid.woff +0 -0
  36. package/dist/assets/keenicons/solid/selection.json +1 -0
  37. package/dist/assets/keenicons/solid/style.css +1746 -0
  38. package/dist/assets/sass/_init.scss +32 -0
  39. package/dist/assets/sass/components/_btn-secondary.scss +36 -0
  40. package/dist/assets/sass/components/_landing.scss +136 -0
  41. package/dist/assets/sass/components/_variables.custom.scss +6 -0
  42. package/dist/assets/sass/components/_variables.override.scss +15 -0
  43. package/dist/assets/sass/components/components.scss +8 -0
  44. package/dist/assets/sass/components/stepper/_multistep.scss +42 -0
  45. package/dist/assets/sass/core/base/_functions.scss +10 -0
  46. package/dist/assets/sass/core/base/_mixins.scss +11 -0
  47. package/dist/assets/sass/core/base/functions/_get.scss +82 -0
  48. package/dist/assets/sass/core/base/functions/_math.scss +15 -0
  49. package/dist/assets/sass/core/base/functions/_set.scss +43 -0
  50. package/dist/assets/sass/core/base/functions/_theme-colors.scss +15 -0
  51. package/dist/assets/sass/core/base/functions/_valueif.scss +13 -0
  52. package/dist/assets/sass/core/base/mixins/_breakpoints.scss +25 -0
  53. package/dist/assets/sass/core/base/mixins/_browsers.scss +23 -0
  54. package/dist/assets/sass/core/base/mixins/_fixes.scss +15 -0
  55. package/dist/assets/sass/core/base/mixins/_placeholder.scss +16 -0
  56. package/dist/assets/sass/core/base/mixins/_property.scss +9 -0
  57. package/dist/assets/sass/core/base/mixins/_reset.scss +23 -0
  58. package/dist/assets/sass/core/components/_accordion.scss +107 -0
  59. package/dist/assets/sass/core/components/_alert.scss +15 -0
  60. package/dist/assets/sass/core/components/_anchor.scss +37 -0
  61. package/dist/assets/sass/core/components/_animation.scss +81 -0
  62. package/dist/assets/sass/core/components/_badge.scss +85 -0
  63. package/dist/assets/sass/core/components/_blockui.scss +53 -0
  64. package/dist/assets/sass/core/components/_bootstrap-icon.scss +22 -0
  65. package/dist/assets/sass/core/components/_breadcrumb.scss +69 -0
  66. package/dist/assets/sass/core/components/_bullet.scss +33 -0
  67. package/dist/assets/sass/core/components/_buttons.scss +7 -0
  68. package/dist/assets/sass/core/components/_card.scss +327 -0
  69. package/dist/assets/sass/core/components/_carousel.scss +130 -0
  70. package/dist/assets/sass/core/components/_code.scss +24 -0
  71. package/dist/assets/sass/core/components/_cookiealert.scss +8 -0
  72. package/dist/assets/sass/core/components/_drawer.scss +78 -0
  73. package/dist/assets/sass/core/components/_dropdown.scss +35 -0
  74. package/dist/assets/sass/core/components/_engage.scss +118 -0
  75. package/dist/assets/sass/core/components/_explore.scss +104 -0
  76. package/dist/assets/sass/core/components/_fixed.scss +18 -0
  77. package/dist/assets/sass/core/components/_forms.scss +13 -0
  78. package/dist/assets/sass/core/components/_helpers.scss +12 -0
  79. package/dist/assets/sass/core/components/_hover.scss +53 -0
  80. package/dist/assets/sass/core/components/_image-input.scss +111 -0
  81. package/dist/assets/sass/core/components/_image.scss +17 -0
  82. package/dist/assets/sass/core/components/_indicator.scss +17 -0
  83. package/dist/assets/sass/core/components/_menu.scss +7 -0
  84. package/dist/assets/sass/core/components/_mixins.scss +13 -0
  85. package/dist/assets/sass/core/components/_modal.scss +7 -0
  86. package/dist/assets/sass/core/components/_nav-line-tabs.scss +68 -0
  87. package/dist/assets/sass/core/components/_nav-pills-custom.scss +91 -0
  88. package/dist/assets/sass/core/components/_nav.scss +99 -0
  89. package/dist/assets/sass/core/components/_offcanvas.scss +6 -0
  90. package/dist/assets/sass/core/components/_overlay.scss +35 -0
  91. package/dist/assets/sass/core/components/_page-loader.scss +28 -0
  92. package/dist/assets/sass/core/components/_pagination.scss +176 -0
  93. package/dist/assets/sass/core/components/_popover.scss +58 -0
  94. package/dist/assets/sass/core/components/_print.scss +34 -0
  95. package/dist/assets/sass/core/components/_progress.scss +27 -0
  96. package/dist/assets/sass/core/components/_pulse.scss +39 -0
  97. package/dist/assets/sass/core/components/_rating.scss +62 -0
  98. package/dist/assets/sass/core/components/_reboot.scss +7 -0
  99. package/dist/assets/sass/core/components/_ribbon.scss +195 -0
  100. package/dist/assets/sass/core/components/_root.scss +332 -0
  101. package/dist/assets/sass/core/components/_rotate.scss +47 -0
  102. package/dist/assets/sass/core/components/_scroll.scss +119 -0
  103. package/dist/assets/sass/core/components/_scrolltop.scss +69 -0
  104. package/dist/assets/sass/core/components/_separator.scss +66 -0
  105. package/dist/assets/sass/core/components/_shape.scss +13 -0
  106. package/dist/assets/sass/core/components/_stepper.scss +8 -0
  107. package/dist/assets/sass/core/components/_svg-icon.scss +30 -0
  108. package/dist/assets/sass/core/components/_symbol.scss +133 -0
  109. package/dist/assets/sass/core/components/_tables.scss +269 -0
  110. package/dist/assets/sass/core/components/_testimonials-slider.scss +65 -0
  111. package/dist/assets/sass/core/components/_theme-mode.scss +38 -0
  112. package/dist/assets/sass/core/components/_timeline-label.scss +59 -0
  113. package/dist/assets/sass/core/components/_timeline.scss +96 -0
  114. package/dist/assets/sass/core/components/_title-reports.scss +81 -0
  115. package/dist/assets/sass/core/components/_toasts.scss +17 -0
  116. package/dist/assets/sass/core/components/_toggle.scss +19 -0
  117. package/dist/assets/sass/core/components/_tooltip.scss +32 -0
  118. package/dist/assets/sass/core/components/_tree.scss +92 -0
  119. package/dist/assets/sass/core/components/_type.scss +9 -0
  120. package/dist/assets/sass/core/components/_utilities.scss +134 -0
  121. package/dist/assets/sass/core/components/_variables-dark.scss +333 -0
  122. package/dist/assets/sass/core/components/_variables.scss +1313 -0
  123. package/dist/assets/sass/core/components/buttons/_base.scss +129 -0
  124. package/dist/assets/sass/core/components/buttons/_theme.scss +307 -0
  125. package/dist/assets/sass/core/components/buttons_new/_base.scss +74 -0
  126. package/dist/assets/sass/core/components/buttons_new/_theme.scss +21 -0
  127. package/dist/assets/sass/core/components/components.scss +72 -0
  128. package/dist/assets/sass/core/components/forms/_floating-labels.scss +20 -0
  129. package/dist/assets/sass/core/components/forms/_form-check.scss +193 -0
  130. package/dist/assets/sass/core/components/forms/_form-control.scss +70 -0
  131. package/dist/assets/sass/core/components/forms/_form-select.scss +68 -0
  132. package/dist/assets/sass/core/components/forms/_input-group.scss +36 -0
  133. package/dist/assets/sass/core/components/forms/_labels.scss +8 -0
  134. package/dist/assets/sass/core/components/forms/_required.scss +14 -0
  135. package/dist/assets/sass/core/components/helpers/_background.scss +269 -0
  136. package/dist/assets/sass/core/components/helpers/_borders.scss +123 -0
  137. package/dist/assets/sass/core/components/helpers/_flex.scss +57 -0
  138. package/dist/assets/sass/core/components/helpers/_opacity.scss +18 -0
  139. package/dist/assets/sass/core/components/helpers/_shadow.scss +19 -0
  140. package/dist/assets/sass/core/components/helpers/_text.scss +146 -0
  141. package/dist/assets/sass/core/components/helpers/_transform.scss +8 -0
  142. package/dist/assets/sass/core/components/menu/_base.scss +316 -0
  143. package/dist/assets/sass/core/components/menu/_theme.scss +519 -0
  144. package/dist/assets/sass/core/components/mixins/_buttons.scss +84 -0
  145. package/dist/assets/sass/core/components/mixins/_ki.scss +18 -0
  146. package/dist/assets/sass/core/components/mixins/_menu.scss +301 -0
  147. package/dist/assets/sass/core/components/mixins/_scroll.scss +34 -0
  148. package/dist/assets/sass/core/components/mixins/_shape.scss +29 -0
  149. package/dist/assets/sass/core/components/mixins/_svg-bg-icon.scss +68 -0
  150. package/dist/assets/sass/core/components/mixins/_svg-icon.scss +11 -0
  151. package/dist/assets/sass/core/components/mixins/_symbol.scss +42 -0
  152. package/dist/assets/sass/core/components/stepper/_base.scss +112 -0
  153. package/dist/assets/sass/core/components/stepper/_links.scss +57 -0
  154. package/dist/assets/sass/core/components/stepper/_pills.scss +201 -0
  155. package/dist/assets/sass/core/components/wizard/wizard.scss +47 -0
  156. package/dist/assets/sass/core/components/wizard.scss +6 -0
  157. package/dist/assets/sass/core/layout/_base.scss +50 -0
  158. package/dist/assets/sass/core/layout/base/_container.scss +30 -0
  159. package/dist/assets/sass/core/layout/base/_content.scss +24 -0
  160. package/dist/assets/sass/core/layout/base/_footer.scss +99 -0
  161. package/dist/assets/sass/core/layout/base/_hero.scss +13 -0
  162. package/dist/assets/sass/core/layout/base/_layout-builder.scss +19 -0
  163. package/dist/assets/sass/core/layout/base/_layout.scss +29 -0
  164. package/dist/assets/sass/core/layout/base/_main.scss +96 -0
  165. package/dist/assets/sass/core/layout/base/_navbar.scss +19 -0
  166. package/dist/assets/sass/core/layout/base/_page-loader.scss +31 -0
  167. package/dist/assets/sass/core/layout/base/_page.scss +7 -0
  168. package/dist/assets/sass/core/layout/base/_print.scss +34 -0
  169. package/dist/assets/sass/core/layout/base/_reboot.scss +65 -0
  170. package/dist/assets/sass/core/layout/base/_root.scss +368 -0
  171. package/dist/assets/sass/core/layout/base/_toolbar.scss +171 -0
  172. package/dist/assets/sass/core/layout/base/_variables.scss +615 -0
  173. package/dist/assets/sass/core/layout/base/_wrapper.scss +100 -0
  174. package/dist/assets/sass/core/layout/base/aside/_aside.scss +275 -0
  175. package/dist/assets/sass/core/layout/base/header/_header-primary.scss +135 -0
  176. package/dist/assets/sass/core/layout/base/header/_header-secondary.scss +139 -0
  177. package/dist/assets/sass/core/layout/base/header/_header-tertiary.scss +138 -0
  178. package/dist/assets/sass/core/layout/base/header/_header.scss +239 -0
  179. package/dist/assets/sass/core/layout/base/mixins/_layout-minimize.scss +41 -0
  180. package/dist/assets/sass/core/layout/base/mixins/_layout-transition.scss +7 -0
  181. package/dist/assets/sass/core/layout/base/sidebar/_sidebar-panel.scss +281 -0
  182. package/dist/assets/sass/core/layout/base/sidebar/_sidebar-primary.scss +230 -0
  183. package/dist/assets/sass/core/layout/base/sidebar/_sidebar-secondary.scss +274 -0
  184. package/dist/assets/sass/core/layout/base/sidebar/_sidebar.scss +284 -0
  185. package/dist/assets/sass/core/vendors/plugins/_apexcharts.scss +129 -0
  186. package/dist/assets/sass/core/vendors/plugins/_bootstrap-maxlength.scss +16 -0
  187. package/dist/assets/sass/core/vendors/plugins/_ckeditor.scss +54 -0
  188. package/dist/assets/sass/core/vendors/plugins/_datatables.scss +292 -0
  189. package/dist/assets/sass/core/vendors/plugins/_daterangepicker.scss +272 -0
  190. package/dist/assets/sass/core/vendors/plugins/_draggable.scss +28 -0
  191. package/dist/assets/sass/core/vendors/plugins/_dropzone.scss +188 -0
  192. package/dist/assets/sass/core/vendors/plugins/_flatpickr.scss +407 -0
  193. package/dist/assets/sass/core/vendors/plugins/_formvalidation.scss +20 -0
  194. package/dist/assets/sass/core/vendors/plugins/_fslightbox.scss +11 -0
  195. package/dist/assets/sass/core/vendors/plugins/_fullcalendar.scss +297 -0
  196. package/dist/assets/sass/core/vendors/plugins/_gmaps.scss +18 -0
  197. package/dist/assets/sass/core/vendors/plugins/_jkanban.scss +94 -0
  198. package/dist/assets/sass/core/vendors/plugins/_jstree.scss +150 -0
  199. package/dist/assets/sass/core/vendors/plugins/_keenicons.scss +12 -0
  200. package/dist/assets/sass/core/vendors/plugins/_leaflet.scss +23 -0
  201. package/dist/assets/sass/core/vendors/plugins/_mixins.scss +5 -0
  202. package/dist/assets/sass/core/vendors/plugins/_nouislider.scss +103 -0
  203. package/dist/assets/sass/core/vendors/plugins/_plugins.angular.scss +12 -0
  204. package/dist/assets/sass/core/vendors/plugins/_plugins.react.scss +12 -0
  205. package/dist/assets/sass/core/vendors/plugins/_plugins.scss +34 -0
  206. package/dist/assets/sass/core/vendors/plugins/_plugins.vue.scss +12 -0
  207. package/dist/assets/sass/core/vendors/plugins/_prismjs.scss +84 -0
  208. package/dist/assets/sass/core/vendors/plugins/_quill.scss +196 -0
  209. package/dist/assets/sass/core/vendors/plugins/_recaptcha.scss +32 -0
  210. package/dist/assets/sass/core/vendors/plugins/_root.scss +36 -0
  211. package/dist/assets/sass/core/vendors/plugins/_select2.scss +418 -0
  212. package/dist/assets/sass/core/vendors/plugins/_sweetalert2.scss +112 -0
  213. package/dist/assets/sass/core/vendors/plugins/_tagify.scss +222 -0
  214. package/dist/assets/sass/core/vendors/plugins/_tempus-dominus.scss +163 -0
  215. package/dist/assets/sass/core/vendors/plugins/_tiny-slider.scss +141 -0
  216. package/dist/assets/sass/core/vendors/plugins/_tinymce.scss +13 -0
  217. package/dist/assets/sass/core/vendors/plugins/_toastr.scss +87 -0
  218. package/dist/assets/sass/core/vendors/plugins/_variables-dark.scss +18 -0
  219. package/dist/assets/sass/core/vendors/plugins/_variables.scss +27 -0
  220. package/dist/assets/sass/core/vendors/plugins/_vis-timeline.scss +131 -0
  221. package/dist/assets/sass/core/vendors/plugins/mixins/_nouislider.scss +13 -0
  222. package/dist/assets/sass/layout/_aside.scss +22 -0
  223. package/dist/assets/sass/layout/_content.scss +22 -0
  224. package/dist/assets/sass/layout/_layout.scss +17 -0
  225. package/dist/assets/sass/layout/_main.scss +21 -0
  226. package/dist/assets/sass/layout/_page-title.scss +14 -0
  227. package/dist/assets/sass/layout/_root.scss +49 -0
  228. package/dist/assets/sass/layout/_toolbar.scss +42 -0
  229. package/dist/assets/sass/layout/_variables.custom.scss +132 -0
  230. package/dist/assets/sass/layout/header/_header-dark.scss +77 -0
  231. package/dist/assets/sass/layout/header/_header-sidebar-light.scss +56 -0
  232. package/dist/assets/sass/layout/header/_header.scss +170 -0
  233. package/dist/assets/sass/layout/sidebar/_sidebar-dark.scss +105 -0
  234. package/dist/assets/sass/layout/sidebar/_sidebar-light.scss +105 -0
  235. package/dist/assets/sass/layout/sidebar/_sidebar-minimize.scss +64 -0
  236. package/dist/assets/sass/layout/sidebar/_sidebar.scss +53 -0
  237. package/dist/assets/sass/style.react.scss +28 -0
  238. package/dist/assets/sass/style.scss +14 -0
  239. package/dist/assets/sass/vendors/react-select.scss +199 -0
  240. package/dist/assets/ts/_utils/DomHelpers.js +68 -100
  241. package/dist/assets/ts/_utils/DomHelpers.ts +478 -0
  242. package/dist/assets/ts/_utils/ElementAnimateUtil.js +38 -46
  243. package/dist/assets/ts/_utils/ElementAnimateUtil.ts +111 -0
  244. package/dist/assets/ts/_utils/EventHandlerUtil.js +44 -52
  245. package/dist/assets/ts/_utils/EventHandlerUtil.ts +144 -0
  246. package/dist/assets/ts/_utils/_DOMEventHandlerUtil.js +16 -23
  247. package/dist/assets/ts/_utils/_DOMEventHandlerUtil.ts +60 -0
  248. package/dist/assets/ts/_utils/_DataUtil.js +26 -33
  249. package/dist/assets/ts/_utils/_DataUtil.ts +72 -0
  250. package/dist/assets/ts/_utils/_ElementStyleUtil.js +8 -15
  251. package/dist/assets/ts/_utils/_ElementStyleUtil.ts +17 -0
  252. package/dist/assets/ts/_utils/_TypesHelpers.js +8 -14
  253. package/dist/assets/ts/_utils/_TypesHelpers.ts +54 -0
  254. package/dist/assets/ts/_utils/index.js +9 -25
  255. package/dist/assets/ts/_utils/index.ts +12 -0
  256. package/dist/assets/ts/_utils/models/OffsetModel.js +1 -2
  257. package/dist/assets/ts/_utils/models/OffsetModel.ts +4 -0
  258. package/dist/assets/ts/_utils/models/ViewPortModel.js +1 -2
  259. package/dist/assets/ts/_utils/models/ViewPortModel.ts +4 -0
  260. package/dist/assets/ts/components/MenuComponent.js +687 -691
  261. package/dist/assets/ts/components/MenuComponent.ts +1090 -0
  262. package/dist/assets/ts/components/SearchComponent.js +248 -249
  263. package/dist/assets/ts/components/SearchComponent.ts +478 -0
  264. package/dist/assets/ts/components/_CookieComponent.js +17 -31
  265. package/dist/assets/ts/components/_CookieComponent.ts +60 -0
  266. package/dist/assets/ts/components/_DrawerComponent.js +250 -259
  267. package/dist/assets/ts/components/_DrawerComponent.ts +388 -0
  268. package/dist/assets/ts/components/_FeedbackComponent.js +92 -96
  269. package/dist/assets/ts/components/_FeedbackComponent.ts +152 -0
  270. package/dist/assets/ts/components/_ImageInputComponent.js +110 -117
  271. package/dist/assets/ts/components/_ImageInputComponent.ts +229 -0
  272. package/dist/assets/ts/components/_PasswordMeterComponent.js +82 -92
  273. package/dist/assets/ts/components/_PasswordMeterComponent.ts +271 -0
  274. package/dist/assets/ts/components/_ScrollComponent.js +215 -223
  275. package/dist/assets/ts/components/_ScrollComponent.ts +312 -0
  276. package/dist/assets/ts/components/_ScrollTopComponent.js +79 -83
  277. package/dist/assets/ts/components/_ScrollTopComponent.ts +148 -0
  278. package/dist/assets/ts/components/_StepperComponent.js +210 -213
  279. package/dist/assets/ts/components/_StepperComponent.ts +332 -0
  280. package/dist/assets/ts/components/_StickyComponent.js +193 -196
  281. package/dist/assets/ts/components/_StickyComponent.ts +297 -0
  282. package/dist/assets/ts/components/_SwapperComponent.js +79 -97
  283. package/dist/assets/ts/components/_SwapperComponent.ts +210 -0
  284. package/dist/assets/ts/components/_ToggleComponent.js +125 -130
  285. package/dist/assets/ts/components/_ToggleComponent.ts +200 -0
  286. package/dist/assets/ts/components/index.js +13 -29
  287. package/dist/assets/ts/components/index.ts +14 -0
  288. package/dist/assets/ts/index.js +2 -28
  289. package/dist/assets/ts/index.ts +43 -0
  290. package/dist/assets/ts/layout/ThemeMode.js +164 -176
  291. package/dist/assets/ts/layout/ThemeMode.ts +211 -0
  292. package/dist/assets/ts/layout/index.js +1 -17
  293. package/dist/assets/ts/layout/index.ts +1 -0
  294. package/dist/helpers/AssetHelpers.js +9 -17
  295. package/dist/helpers/RouterHelpers.js +3 -8
  296. package/dist/helpers/components/KTCard.js +7 -13
  297. package/dist/helpers/components/KTCardBody.js +7 -13
  298. package/dist/helpers/components/KTIcon.js +9 -26
  299. package/dist/helpers/components/KTSVG.js +3 -11
  300. package/dist/helpers/crud-helper/consts.js +2 -5
  301. package/dist/helpers/crud-helper/helpers.js +22 -45
  302. package/dist/helpers/crud-helper/models.js +10 -13
  303. package/dist/helpers/dataExamples.js +6 -13
  304. package/dist/helpers/icons-config/icons.js +2 -4
  305. package/dist/helpers/index.js +11 -27
  306. package/dist/helpers/react18MigrationHelpers.js +5 -8
  307. package/dist/i18n/Metronici18n.js +13 -42
  308. package/dist/i18n/i18nProvider.js +16 -23
  309. package/dist/i18n/index.d.ts +2 -0
  310. package/dist/i18n/index.js +11 -0
  311. package/dist/index.d.ts +3 -0
  312. package/dist/index.js +10 -23
  313. package/dist/layout/MasterInit.js +23 -30
  314. package/dist/layout/MasterLayout.js +32 -38
  315. package/dist/layout/components/content/Content.js +15 -23
  316. package/dist/layout/components/content/index.js +1 -17
  317. package/dist/layout/components/footer/Footer.js +21 -28
  318. package/dist/layout/components/footer/FooterWrapper.js +10 -17
  319. package/dist/layout/components/footer/index.js +1 -17
  320. package/dist/layout/components/header/Header.js +26 -53
  321. package/dist/layout/components/header/HeaderWrapper.js +30 -38
  322. package/dist/layout/components/header/Navbar.js +35 -42
  323. package/dist/layout/components/header/header-menus/MegaMenu.js +67 -73
  324. package/dist/layout/components/header/header-menus/MenuInner.js +42 -49
  325. package/dist/layout/components/header/header-menus/MenuInnerWithSub.js +21 -51
  326. package/dist/layout/components/header/header-menus/MenuItem.js +19 -26
  327. package/dist/layout/components/header/header-menus/index.js +1 -17
  328. package/dist/layout/components/header/index.js +1 -17
  329. package/dist/layout/components/scroll-top/ScrollTop.js +23 -30
  330. package/dist/layout/components/scroll-top/index.js +1 -17
  331. package/dist/layout/components/sidebar/Sidebar.js +54 -85
  332. package/dist/layout/components/sidebar/SidebarFooter.js +9 -15
  333. package/dist/layout/components/sidebar/SidebarLogo.js +27 -34
  334. package/dist/layout/components/sidebar/index.js +1 -17
  335. package/dist/layout/components/sidebar/sidebar-menu/SidebarMenu.js +8 -14
  336. package/dist/layout/components/sidebar/sidebar-menu/SidebarMenuItem.js +20 -28
  337. package/dist/layout/components/sidebar/sidebar-menu/SidebarMenuItemWithSub.js +21 -29
  338. package/dist/layout/components/sidebar/sidebar-menu/SidebarMenuMain.js +51 -57
  339. package/dist/layout/components/toolbar/Toolbar.js +39 -47
  340. package/dist/layout/components/toolbar/ToolbarWrapper.js +19 -26
  341. package/dist/layout/components/toolbar/index.js +1 -17
  342. package/dist/layout/components/toolbar/page-title/PageTitle.js +21 -28
  343. package/dist/layout/components/toolbar/page-title/PageTitleWrapper.js +8 -15
  344. package/dist/layout/components/toolbar/page-title/index.js +1 -17
  345. package/dist/layout/components/toolbar/toolbars/ToolbarAccounting.js +39 -65
  346. package/dist/layout/components/toolbar/toolbars/ToolbarClassic.js +22 -29
  347. package/dist/layout/components/toolbar/toolbars/ToolbarExtended.js +44 -70
  348. package/dist/layout/components/toolbar/toolbars/ToolbarReports.js +30 -56
  349. package/dist/layout/components/toolbar/toolbars/ToolbarSaas.js +30 -56
  350. package/dist/layout/components/toolbar/toolbars/index.js +5 -21
  351. package/dist/layout/core/MetronicSplashScreen.js +18 -47
  352. package/dist/layout/core/PageData.js +33 -65
  353. package/dist/layout/core/_LayoutConfig.js +1 -4
  354. package/dist/layout/core/_LayoutProvider.js +48 -89
  355. package/dist/layout/core/_LayoutSetup.js +86 -100
  356. package/dist/layout/core/_Models.js +1 -2
  357. package/dist/layout/core/index.js +6 -22
  358. package/dist/layout/index.js +12 -28
  359. package/dist/partials/chat/ChatInner.js +48 -89
  360. package/dist/partials/content/activity/Item1.js +43 -49
  361. package/dist/partials/content/activity/Item2.js +16 -22
  362. package/dist/partials/content/activity/Item3.js +33 -39
  363. package/dist/partials/content/activity/Item4.js +18 -24
  364. package/dist/partials/content/activity/Item5.js +33 -39
  365. package/dist/partials/content/activity/Item6.js +17 -23
  366. package/dist/partials/content/activity/Item7.js +24 -30
  367. package/dist/partials/content/activity/Item8.js +16 -22
  368. package/dist/partials/content/activity/index.js +8 -24
  369. package/dist/partials/content/cards/Card1.js +20 -27
  370. package/dist/partials/content/cards/Card2.js +26 -31
  371. package/dist/partials/content/cards/Card3.js +21 -28
  372. package/dist/partials/content/cards/Card4.js +11 -18
  373. package/dist/partials/content/cards/Card5.js +25 -32
  374. package/dist/partials/content/code-highlight/CodeBlock.js +20 -59
  375. package/dist/partials/content/dropdown/Dropdown1.js +33 -40
  376. package/dist/partials/content/dropdown/Dropdown2.js +28 -34
  377. package/dist/partials/content/dropdown/Dropdown3.js +32 -38
  378. package/dist/partials/content/editor/EditorToolbar.js +1 -4
  379. package/dist/partials/content/portal/Portal.js +8 -12
  380. package/dist/partials/index.js +22 -38
  381. package/dist/partials/layout/InboxCompose.js +67 -94
  382. package/dist/partials/layout/RightToolbar.js +11 -17
  383. package/dist/partials/layout/SearchModal.js +50 -57
  384. package/dist/partials/layout/activity-drawer/ActivityDrawer.js +33 -39
  385. package/dist/partials/layout/create-app/CreateApp.js +4 -10
  386. package/dist/partials/layout/drawer-messenger/DrawerMessenger.js +20 -26
  387. package/dist/partials/layout/header-menus/HeaderNotificationsMenu.js +48 -54
  388. package/dist/partials/layout/header-menus/HeaderUserMenu.js +50 -56
  389. package/dist/partials/layout/header-menus/Languages.js +27 -33
  390. package/dist/partials/layout/help-drawer/HelpDrawer.js +53 -59
  391. package/dist/partials/layout/help-drawer/ToggleHelpDrawer.js +3 -9
  392. package/dist/partials/layout/purchase/PurchaseButton.js +4 -10
  393. package/dist/partials/layout/quick-links/QuicLinks.js +32 -38
  394. package/dist/partials/layout/search/Search.js +265 -291
  395. package/dist/partials/layout/search/SearchInner.js +10 -36
  396. package/dist/partials/layout/theme-mode/ThemeModeProvider.js +34 -66
  397. package/dist/partials/layout/theme-mode/ThemeModeSwitcher.js +31 -38
  398. package/dist/partials/modals/create-app-stepper/CreateAppModal.js +96 -134
  399. package/dist/partials/modals/create-app-stepper/IAppModels.js +1 -4
  400. package/dist/partials/modals/create-app-stepper/steps/Step1.js +68 -83
  401. package/dist/partials/modals/create-app-stepper/steps/Step2.js +49 -56
  402. package/dist/partials/modals/create-app-stepper/steps/Step3.js +65 -80
  403. package/dist/partials/modals/create-app-stepper/steps/Step4.js +39 -46
  404. package/dist/partials/modals/create-app-stepper/steps/Step5.js +11 -17
  405. package/dist/partials/modals/invite-users/InviteUsers.js +45 -51
  406. package/dist/partials/modals/select-location/SelectLocationModal.js +22 -49
  407. package/dist/partials/modals/upgrade-plan/UpgradePlan.js +63 -89
  408. package/dist/partials/widgets/_new/cards/CardsWidget17.js +48 -78
  409. package/dist/partials/widgets/_new/cards/CardsWidget20.js +17 -26
  410. package/dist/partials/widgets/_new/cards/CardsWidget7.js +22 -31
  411. package/dist/partials/widgets/_new/engage/EngageWidget10.js +22 -31
  412. package/dist/partials/widgets/_new/lists/ListsWidget26.js +14 -43
  413. package/dist/partials/widgets/charts/ChartsWidget1.js +31 -61
  414. package/dist/partials/widgets/charts/ChartsWidget2.js +29 -59
  415. package/dist/partials/widgets/charts/ChartsWidget3.js +28 -58
  416. package/dist/partials/widgets/charts/ChartsWidget4.js +31 -61
  417. package/dist/partials/widgets/charts/ChartsWidget5.js +29 -59
  418. package/dist/partials/widgets/charts/ChartsWidget6.js +29 -59
  419. package/dist/partials/widgets/charts/ChartsWidget7.js +34 -64
  420. package/dist/partials/widgets/charts/ChartsWidget8.js +34 -64
  421. package/dist/partials/widgets/engage/EngageWidget1.js +15 -22
  422. package/dist/partials/widgets/engage/EngageWidget2.js +12 -19
  423. package/dist/partials/widgets/engage/EngageWidget3.js +31 -38
  424. package/dist/partials/widgets/feeds/FeedsWidget2.js +33 -40
  425. package/dist/partials/widgets/feeds/FeedsWidget3.js +52 -59
  426. package/dist/partials/widgets/feeds/FeedsWidget4.js +33 -40
  427. package/dist/partials/widgets/feeds/FeedsWidget5.js +35 -42
  428. package/dist/partials/widgets/feeds/FeedsWidget6.js +35 -42
  429. package/dist/partials/widgets/index.js +71 -87
  430. package/dist/partials/widgets/lists/ListsWidget1.js +50 -57
  431. package/dist/partials/widgets/lists/ListsWidget2.js +43 -50
  432. package/dist/partials/widgets/lists/ListsWidget3.js +61 -68
  433. package/dist/partials/widgets/lists/ListsWidget4.js +69 -76
  434. package/dist/partials/widgets/lists/ListsWidget5.js +60 -67
  435. package/dist/partials/widgets/lists/ListsWidget6.js +41 -47
  436. package/dist/partials/widgets/lists/ListsWidget7.js +47 -53
  437. package/dist/partials/widgets/lists/ListsWidget8.js +67 -73
  438. package/dist/partials/widgets/lists/ListsWidget9.js +76 -83
  439. package/dist/partials/widgets/mixed/MixedWidget1.js +62 -69
  440. package/dist/partials/widgets/mixed/MixedWidget10.js +27 -57
  441. package/dist/partials/widgets/mixed/MixedWidget11.js +26 -56
  442. package/dist/partials/widgets/mixed/MixedWidget13.js +25 -55
  443. package/dist/partials/widgets/mixed/MixedWidget14.js +22 -52
  444. package/dist/partials/widgets/mixed/MixedWidget15.js +40 -49
  445. package/dist/partials/widgets/mixed/MixedWidget2.js +43 -73
  446. package/dist/partials/widgets/mixed/MixedWidget3.js +43 -73
  447. package/dist/partials/widgets/mixed/MixedWidget4.js +35 -42
  448. package/dist/partials/widgets/mixed/MixedWidget5.js +21 -28
  449. package/dist/partials/widgets/mixed/MixedWidget6.js +50 -80
  450. package/dist/partials/widgets/mixed/MixedWidget7.js +36 -66
  451. package/dist/partials/widgets/mixed/MixedWidget8.js +59 -89
  452. package/dist/partials/widgets/mixed/MixedWidget9.js +66 -96
  453. package/dist/partials/widgets/statistics/StatisticsWidget1.js +10 -17
  454. package/dist/partials/widgets/statistics/StatisticsWidget2.js +10 -17
  455. package/dist/partials/widgets/statistics/StatisticsWidget3.js +27 -57
  456. package/dist/partials/widgets/statistics/StatisticsWidget4.js +29 -59
  457. package/dist/partials/widgets/statistics/StatisticsWidget5.js +9 -16
  458. package/dist/partials/widgets/statistics/StatisticsWidget6.js +11 -18
  459. package/dist/partials/widgets/tables/TablesWidget1.js +109 -116
  460. package/dist/partials/widgets/tables/TablesWidget10.js +165 -172
  461. package/dist/partials/widgets/tables/TablesWidget11.js +154 -161
  462. package/dist/partials/widgets/tables/TablesWidget12.js +219 -226
  463. package/dist/partials/widgets/tables/TablesWidget13.js +178 -185
  464. package/dist/partials/widgets/tables/TablesWidget2.js +105 -112
  465. package/dist/partials/widgets/tables/TablesWidget3.js +75 -82
  466. package/dist/partials/widgets/tables/TablesWidget4.js +349 -356
  467. package/dist/partials/widgets/tables/TablesWidget5.js +220 -227
  468. package/dist/partials/widgets/tables/TablesWidget6.js +241 -248
  469. package/dist/partials/widgets/tables/TablesWidget7.js +241 -248
  470. package/dist/partials/widgets/tables/TablesWidget8.js +214 -221
  471. package/dist/partials/widgets/tables/TablesWidget9.js +165 -172
  472. package/dist/partials/widgets/tiles/TilesWidget1.js +9 -16
  473. package/dist/partials/widgets/tiles/TilesWidget2.js +12 -19
  474. package/dist/partials/widgets/tiles/TilesWidget3.js +11 -18
  475. package/dist/partials/widgets/tiles/TilesWidget4.js +10 -17
  476. package/dist/partials/widgets/tiles/TilesWidget5.js +12 -18
  477. package/package.json +5 -3
@@ -0,0 +1,152 @@
1
+ import {
2
+ DataUtil,
3
+ ElementStyleUtil,
4
+ EventHandlerUtil,
5
+ getUniqueIdWithPrefix,
6
+ getAttributeValueByBreakpoint,
7
+ } from '../_utils/index'
8
+
9
+ export interface FeedbackOptions {
10
+ width?: number
11
+ placement?: string
12
+ content?: string
13
+ type?: string
14
+ }
15
+
16
+ const defaultFeedbackOptions: FeedbackOptions = {
17
+ width: 100,
18
+ placement: 'top-center',
19
+ content: '',
20
+ type: 'popup',
21
+ }
22
+
23
+ class FeedbackComponent {
24
+ element: HTMLElement
25
+ options: FeedbackOptions
26
+ instanceUid: string
27
+ shown: boolean
28
+
29
+ constructor(_element: HTMLElement, options: FeedbackOptions) {
30
+ this.element = _element
31
+ this.options = Object.assign(defaultFeedbackOptions, options)
32
+ this.instanceUid = getUniqueIdWithPrefix('feedback')
33
+ this.shown = false
34
+
35
+ // Event handlers
36
+ this._handlers() // will add in the show popup
37
+ DataUtil.set(this.element, 'feedback', this)
38
+ }
39
+
40
+ private _handlers = () => {
41
+ this.element.addEventListener('click', (e: Event) => {
42
+ e.preventDefault()
43
+ this._go()
44
+ })
45
+ }
46
+
47
+ private _go = () => {}
48
+
49
+ private showPopup = () => {
50
+ this.element = document.createElement('DIV')
51
+
52
+ this.element.classList.add('feedback feedback-popup')
53
+ this.element.innerHTML = this.options.content || ''
54
+
55
+ if (this.options.placement === 'top-center') {
56
+ this.setPopupTopCenterPosition()
57
+ }
58
+
59
+ document.body.appendChild(this.element)
60
+ this.element.classList.add('feedback-shown')
61
+ this.shown = true
62
+ }
63
+
64
+ private setPopupTopCenterPosition = () => {
65
+ const width = getAttributeValueByBreakpoint(this.options.width?.toString() || '0')
66
+ const height = ElementStyleUtil.get(this.element, 'height')
67
+ this.element.classList.add('feedback-top-center')
68
+ ElementStyleUtil.set(this.element, 'width', width)
69
+ ElementStyleUtil.set(this.element, 'left', '50%')
70
+ ElementStyleUtil.set(this.element, 'top', '-' + height)
71
+ }
72
+
73
+ private hidePopup = () => {
74
+ this.element.remove()
75
+ }
76
+
77
+ ///////////////////////
78
+ // ** Public API ** //
79
+ ///////////////////////
80
+ public show = () => {
81
+ if (EventHandlerUtil.trigger(this.element, 'kt.feedback.show') === false) {
82
+ return
83
+ }
84
+
85
+ if (this.options.type === 'popup') {
86
+ this.showPopup()
87
+ }
88
+
89
+ EventHandlerUtil.trigger(this.element, 'kt.feedback.shown')
90
+
91
+ return this
92
+ }
93
+
94
+ public hide = () => {
95
+ if (EventHandlerUtil.trigger(this.element, 'kt.feedback.hide') === false) {
96
+ return
97
+ }
98
+
99
+ if (this.options.type === 'popup') {
100
+ this.hidePopup()
101
+ }
102
+
103
+ this.shown = false
104
+ EventHandlerUtil.trigger(this.element, 'kt.feedback.hidden')
105
+ return this
106
+ }
107
+
108
+ public isShown = () => {
109
+ return this.isShown
110
+ }
111
+
112
+ public getElement = () => {
113
+ return this.element
114
+ }
115
+
116
+ // Event API
117
+ public on = (name: string, handler: Function) => {
118
+ return EventHandlerUtil.on(this.element, name, handler)
119
+ }
120
+
121
+ public one = (name: string, handler: Function) => {
122
+ return EventHandlerUtil.one(this.element, name, handler)
123
+ }
124
+
125
+ public off = (name: string, handerId: string) => {
126
+ return EventHandlerUtil.off(this.element, name, handerId)
127
+ }
128
+
129
+ public trigger = (name: string, event: Event) => {
130
+ return EventHandlerUtil.trigger(this.element, name, event)
131
+ }
132
+
133
+ // Create Instances
134
+ public static createInstances(selector: string) {
135
+ throw new Error('not implemented')
136
+ }
137
+
138
+ // Static methods
139
+ public static hasInstace(element: HTMLElement) {
140
+ throw new Error('not implemented')
141
+ }
142
+
143
+ public static getInstance(element: HTMLElement) {
144
+ throw new Error('not implemented')
145
+ }
146
+
147
+ public static bootstrap(attr: string = '[data-Feedback]') {
148
+ throw new Error('not implemented')
149
+ }
150
+ }
151
+
152
+ export {FeedbackComponent, defaultFeedbackOptions}
@@ -1,10 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.defaultImageInputQueires = exports.defaultImageInputOptions = exports.ImageInputComponent = void 0;
4
- var index_1 = require("../_utils/index");
5
- var defaultImageInputOptions = {};
6
- exports.defaultImageInputOptions = defaultImageInputOptions;
7
- var defaultImageInputQueires = {
1
+ import { EventHandlerUtil, DataUtil, getUniqueIdWithPrefix, getCSS } from '../_utils/index';
2
+ const defaultImageInputOptions = {};
3
+ const defaultImageInputQueires = {
8
4
  componentName: 'image-input',
9
5
  instanseQuery: '[data-kt-image-input]',
10
6
  inputQuery: 'input[type="file"]',
@@ -13,88 +9,23 @@ var defaultImageInputQueires = {
13
9
  removeQuery: '[data-kt-image-input-action="remove"]',
14
10
  hiddenQuery: 'input[type="hidden"]',
15
11
  };
16
- exports.defaultImageInputQueires = defaultImageInputQueires;
17
- var ImageInputComponent = /** @class */ (function () {
18
- function ImageInputComponent(_element, _options, _queries) {
19
- var _this = this;
20
- this.src = '';
21
- this.value = '';
22
- // Event Handlers
23
- this._change = function (e) {
24
- e.preventDefault();
25
- if (_this.inputElement !== null && _this.inputElement.files && _this.inputElement.files[0]) {
26
- // Fire change event
27
- if (index_1.EventHandlerUtil.trigger(_this.element, 'kt.imageinput.change', e) === false) {
28
- return;
29
- }
30
- var reader = new FileReader();
31
- reader.onload = function (e) {
32
- if (_this.wrapperElement && e.target) {
33
- _this.wrapperElement.style.setProperty('background-image', "url('".concat(e.target.result, "')"));
34
- }
35
- };
36
- reader.readAsDataURL(_this.inputElement.files[0]);
37
- _this.element.classList.add('image-input-changed');
38
- _this.element.classList.remove('image-input-empty');
39
- // Fire removed event
40
- index_1.EventHandlerUtil.trigger(_this.element, 'kt.imageinput.changed', e);
41
- }
42
- };
43
- this._cancel = function (e) {
44
- e.preventDefault();
45
- // Fire cancel event
46
- if (index_1.EventHandlerUtil.trigger(_this.element, 'kt.imageinput.cancel', e) === false) {
47
- return;
48
- }
49
- _this.element.classList.remove('image-input-changed');
50
- _this.element.classList.remove('image-input-empty');
51
- _this.element.style.setProperty('background-image', _this.src);
52
- if (_this.inputElement) {
53
- _this.inputElement.value = '';
54
- }
55
- if (_this.hiddenElement !== null) {
56
- _this.hiddenElement.value = '0';
57
- }
58
- // Fire canceled event
59
- index_1.EventHandlerUtil.trigger(_this.element, 'kt.imageinput.canceled', e);
60
- };
61
- this._remove = function (e) {
62
- e.preventDefault();
63
- // Fire remove event
64
- if (index_1.EventHandlerUtil.trigger(_this.element, 'kt.imageinput.remove', e) === false) {
65
- return;
66
- }
67
- _this.element.classList.remove('image-input-changed');
68
- _this.element.classList.add('image-input-empty');
69
- if (_this.wrapperElement) {
70
- _this.wrapperElement.style.setProperty('background-image', 'none');
71
- }
72
- if (_this.inputElement) {
73
- _this.inputElement.value = '';
74
- }
75
- if (_this.hiddenElement !== null) {
76
- _this.hiddenElement.value = '1';
77
- }
78
- // Fire removed event
79
- index_1.EventHandlerUtil.trigger(_this.element, 'kt.imageinput.removed', e);
80
- };
81
- // Event API
82
- this.on = function (name, handler) {
83
- return index_1.EventHandlerUtil.on(_this.element, name, handler);
84
- };
85
- this.one = function (name, handler) {
86
- return index_1.EventHandlerUtil.one(_this.element, name, handler);
87
- };
88
- this.off = function (name, handlerId) {
89
- return index_1.EventHandlerUtil.off(_this.element, name, handlerId);
90
- };
91
- this.trigger = function (name, event) {
92
- return index_1.EventHandlerUtil.trigger(_this.element, name, event);
93
- };
12
+ class ImageInputComponent {
13
+ element;
14
+ inputElement;
15
+ wrapperElement;
16
+ cancelElement;
17
+ removeElement;
18
+ hiddenElement;
19
+ src = '';
20
+ options;
21
+ queries;
22
+ uid;
23
+ value = '';
24
+ constructor(_element, _options, _queries) {
94
25
  // Variables
95
26
  this.options = Object.assign(defaultImageInputOptions, _options);
96
27
  this.queries = _queries;
97
- this.uid = (0, index_1.getUniqueIdWithPrefix)(this.queries.componentName);
28
+ this.uid = getUniqueIdWithPrefix(this.queries.componentName);
98
29
  // Elements
99
30
  this.element = _element;
100
31
  this.inputElement = this.element.querySelector(this.queries.inputQuery);
@@ -103,13 +34,13 @@ var ImageInputComponent = /** @class */ (function () {
103
34
  this.removeElement = this.element.querySelector(this.queries.removeQuery);
104
35
  this.hiddenElement = this.element.querySelector(this.queries.hiddenQuery);
105
36
  if (this.wrapperElement) {
106
- this.src = (0, index_1.getCSS)(this.wrapperElement, 'backgroundImage');
37
+ this.src = getCSS(this.wrapperElement, 'backgroundImage');
107
38
  }
108
39
  // Event Handlers
109
40
  this.handlers();
110
- index_1.DataUtil.set(this.element, this.queries.componentName, this);
41
+ DataUtil.set(this.element, this.queries.componentName, this);
111
42
  }
112
- ImageInputComponent.prototype.handlers = function () {
43
+ handlers() {
113
44
  this.element.addEventListener('change', this._change);
114
45
  if (this.cancelElement) {
115
46
  this.cancelElement.addEventListener('click', this._cancel);
@@ -117,60 +48,122 @@ var ImageInputComponent = /** @class */ (function () {
117
48
  if (this.removeElement) {
118
49
  this.removeElement.addEventListener('click', this._cancel);
119
50
  }
51
+ }
52
+ // Event Handlers
53
+ _change = (e) => {
54
+ e.preventDefault();
55
+ if (this.inputElement !== null && this.inputElement.files && this.inputElement.files[0]) {
56
+ // Fire change event
57
+ if (EventHandlerUtil.trigger(this.element, 'kt.imageinput.change', e) === false) {
58
+ return;
59
+ }
60
+ const reader = new FileReader();
61
+ reader.onload = (e) => {
62
+ if (this.wrapperElement && e.target) {
63
+ this.wrapperElement.style.setProperty('background-image', `url('${e.target.result}')`);
64
+ }
65
+ };
66
+ reader.readAsDataURL(this.inputElement.files[0]);
67
+ this.element.classList.add('image-input-changed');
68
+ this.element.classList.remove('image-input-empty');
69
+ // Fire removed event
70
+ EventHandlerUtil.trigger(this.element, 'kt.imageinput.changed', e);
71
+ }
72
+ };
73
+ _cancel = (e) => {
74
+ e.preventDefault();
75
+ // Fire cancel event
76
+ if (EventHandlerUtil.trigger(this.element, 'kt.imageinput.cancel', e) === false) {
77
+ return;
78
+ }
79
+ this.element.classList.remove('image-input-changed');
80
+ this.element.classList.remove('image-input-empty');
81
+ this.element.style.setProperty('background-image', this.src);
82
+ if (this.inputElement) {
83
+ this.inputElement.value = '';
84
+ }
85
+ if (this.hiddenElement !== null) {
86
+ this.hiddenElement.value = '0';
87
+ }
88
+ // Fire canceled event
89
+ EventHandlerUtil.trigger(this.element, 'kt.imageinput.canceled', e);
90
+ };
91
+ _remove = (e) => {
92
+ e.preventDefault();
93
+ // Fire remove event
94
+ if (EventHandlerUtil.trigger(this.element, 'kt.imageinput.remove', e) === false) {
95
+ return;
96
+ }
97
+ this.element.classList.remove('image-input-changed');
98
+ this.element.classList.add('image-input-empty');
99
+ if (this.wrapperElement) {
100
+ this.wrapperElement.style.setProperty('background-image', 'none');
101
+ }
102
+ if (this.inputElement) {
103
+ this.inputElement.value = '';
104
+ }
105
+ if (this.hiddenElement !== null) {
106
+ this.hiddenElement.value = '1';
107
+ }
108
+ // Fire removed event
109
+ EventHandlerUtil.trigger(this.element, 'kt.imageinput.removed', e);
120
110
  };
121
111
  ///////////////////////
122
112
  // ** Public API ** //
123
113
  ///////////////////////
124
- ImageInputComponent.prototype.getInputElement = function () {
114
+ getInputElement() {
125
115
  return this.inputElement;
126
- };
127
- ImageInputComponent.prototype.getElement = function () {
116
+ }
117
+ getElement() {
128
118
  return this.element;
119
+ }
120
+ // Event API
121
+ on = (name, handler) => {
122
+ return EventHandlerUtil.on(this.element, name, handler);
123
+ };
124
+ one = (name, handler) => {
125
+ return EventHandlerUtil.one(this.element, name, handler);
126
+ };
127
+ off = (name, handlerId) => {
128
+ return EventHandlerUtil.off(this.element, name, handlerId);
129
+ };
130
+ trigger = (name, event) => {
131
+ return EventHandlerUtil.trigger(this.element, name, event);
129
132
  };
130
133
  // Static methods
131
- ImageInputComponent.getInstance = function (el, componentName) {
132
- if (componentName === void 0) { componentName = defaultImageInputQueires.componentName; }
133
- var ImageInput = index_1.DataUtil.get(el, componentName);
134
+ static getInstance = (el, componentName = defaultImageInputQueires.componentName) => {
135
+ const ImageInput = DataUtil.get(el, componentName);
134
136
  if (ImageInput) {
135
137
  return ImageInput;
136
138
  }
137
139
  };
138
- ImageInputComponent.createInstances = function (selector, options, queries) {
139
- if (selector === void 0) { selector = defaultImageInputQueires.instanseQuery; }
140
- if (options === void 0) { options = defaultImageInputOptions; }
141
- if (queries === void 0) { queries = defaultImageInputQueires; }
142
- var elements = document.body.querySelectorAll(selector);
143
- elements.forEach(function (el) {
144
- var item = el;
145
- var ImageInput = ImageInputComponent.getInstance(item);
140
+ static createInstances = (selector = defaultImageInputQueires.instanseQuery, options = defaultImageInputOptions, queries = defaultImageInputQueires) => {
141
+ const elements = document.body.querySelectorAll(selector);
142
+ elements.forEach((el) => {
143
+ const item = el;
144
+ let ImageInput = ImageInputComponent.getInstance(item);
146
145
  if (!ImageInput) {
147
146
  ImageInput = new ImageInputComponent(item, options, queries);
148
147
  }
149
148
  });
150
149
  };
151
- ImageInputComponent.createInsance = function (selector, options, queries) {
152
- if (selector === void 0) { selector = defaultImageInputQueires.instanseQuery; }
153
- if (options === void 0) { options = defaultImageInputOptions; }
154
- if (queries === void 0) { queries = defaultImageInputQueires; }
155
- var element = document.body.querySelector(selector);
150
+ static createInsance = (selector = defaultImageInputQueires.instanseQuery, options = defaultImageInputOptions, queries = defaultImageInputQueires) => {
151
+ const element = document.body.querySelector(selector);
156
152
  if (!element) {
157
153
  return;
158
154
  }
159
- var item = element;
160
- var ImageInput = ImageInputComponent.getInstance(item);
155
+ const item = element;
156
+ let ImageInput = ImageInputComponent.getInstance(item);
161
157
  if (!ImageInput) {
162
158
  ImageInput = new ImageInputComponent(item, options, queries);
163
159
  }
164
160
  return ImageInput;
165
161
  };
166
- ImageInputComponent.bootstrap = function (selector) {
167
- if (selector === void 0) { selector = defaultImageInputQueires.instanseQuery; }
162
+ static bootstrap = (selector = defaultImageInputQueires.instanseQuery) => {
168
163
  ImageInputComponent.createInstances(selector);
169
164
  };
170
- ImageInputComponent.reinitialization = function (selector) {
171
- if (selector === void 0) { selector = defaultImageInputQueires.instanseQuery; }
165
+ static reinitialization = (selector = defaultImageInputQueires.instanseQuery) => {
172
166
  ImageInputComponent.createInstances(selector);
173
167
  };
174
- return ImageInputComponent;
175
- }());
176
- exports.ImageInputComponent = ImageInputComponent;
168
+ }
169
+ export { ImageInputComponent, defaultImageInputOptions, defaultImageInputQueires };
@@ -0,0 +1,229 @@
1
+ import {EventHandlerUtil, DataUtil, getUniqueIdWithPrefix, getCSS} from '../_utils/index'
2
+
3
+ export interface IImageInputOptions {}
4
+
5
+ export interface IImageInputQueries {
6
+ componentName: string
7
+ instanseQuery: string
8
+ inputQuery: string
9
+ wrapperQuery: string
10
+ cancelQuery: string
11
+ removeQuery: string
12
+ hiddenQuery: string
13
+ }
14
+
15
+ const defaultImageInputOptions = {}
16
+
17
+ const defaultImageInputQueires: IImageInputQueries = {
18
+ componentName: 'image-input',
19
+ instanseQuery: '[data-kt-image-input]',
20
+ inputQuery: 'input[type="file"]',
21
+ wrapperQuery: '.image-input-wrapper',
22
+ cancelQuery: '[data-kt-image-input-action="cancel"]',
23
+ removeQuery: '[data-kt-image-input-action="remove"]',
24
+ hiddenQuery: 'input[type="hidden"]',
25
+ }
26
+
27
+ class ImageInputComponent {
28
+ element: HTMLElement
29
+ inputElement: HTMLInputElement | null
30
+ wrapperElement: HTMLElement | null
31
+ cancelElement: HTMLElement | null
32
+ removeElement: HTMLElement | null
33
+ hiddenElement: HTMLInputElement | null
34
+ src: string = ''
35
+ options: IImageInputOptions
36
+ queries: IImageInputQueries
37
+ uid: string
38
+ value: string = ''
39
+
40
+ constructor(_element: HTMLElement, _options: IImageInputOptions, _queries: IImageInputQueries) {
41
+ // Variables
42
+ this.options = Object.assign(defaultImageInputOptions, _options)
43
+ this.queries = _queries
44
+ this.uid = getUniqueIdWithPrefix(this.queries.componentName)
45
+
46
+ // Elements
47
+ this.element = _element
48
+ this.inputElement = this.element.querySelector(this.queries.inputQuery)
49
+ this.wrapperElement = this.element.querySelector(this.queries.wrapperQuery)
50
+ this.cancelElement = this.element.querySelector(this.queries.cancelQuery)
51
+ this.removeElement = this.element.querySelector(this.queries.removeQuery)
52
+ this.hiddenElement = this.element.querySelector(this.queries.hiddenQuery)
53
+ if (this.wrapperElement) {
54
+ this.src = getCSS(this.wrapperElement, 'backgroundImage')
55
+ }
56
+
57
+ // Event Handlers
58
+ this.handlers()
59
+
60
+ DataUtil.set(this.element, this.queries.componentName, this)
61
+ }
62
+
63
+ private handlers(): void {
64
+ this.element.addEventListener('change', this._change)
65
+ if (this.cancelElement) {
66
+ this.cancelElement.addEventListener('click', this._cancel)
67
+ }
68
+
69
+ if (this.removeElement) {
70
+ this.removeElement.addEventListener('click', this._cancel)
71
+ }
72
+ }
73
+
74
+ // Event Handlers
75
+ private _change = (e: Event) => {
76
+ e.preventDefault()
77
+
78
+ if (this.inputElement !== null && this.inputElement.files && this.inputElement.files[0]) {
79
+ // Fire change event
80
+ if (EventHandlerUtil.trigger(this.element, 'kt.imageinput.change', e) === false) {
81
+ return
82
+ }
83
+
84
+ const reader = new FileReader()
85
+
86
+ reader.onload = (e: ProgressEvent<FileReader>) => {
87
+ if (this.wrapperElement && e.target) {
88
+ this.wrapperElement.style.setProperty('background-image', `url('${e.target.result}')`)
89
+ }
90
+ }
91
+
92
+ reader.readAsDataURL(this.inputElement.files[0])
93
+ this.element.classList.add('image-input-changed')
94
+ this.element.classList.remove('image-input-empty')
95
+
96
+ // Fire removed event
97
+ EventHandlerUtil.trigger(this.element, 'kt.imageinput.changed', e)
98
+ }
99
+ }
100
+
101
+ private _cancel = (e: Event) => {
102
+ e.preventDefault()
103
+
104
+ // Fire cancel event
105
+ if (EventHandlerUtil.trigger(this.element, 'kt.imageinput.cancel', e) === false) {
106
+ return
107
+ }
108
+
109
+ this.element.classList.remove('image-input-changed')
110
+ this.element.classList.remove('image-input-empty')
111
+ this.element.style.setProperty('background-image', this.src)
112
+ if (this.inputElement) {
113
+ this.inputElement.value = ''
114
+ }
115
+
116
+ if (this.hiddenElement !== null) {
117
+ this.hiddenElement.value = '0'
118
+ }
119
+
120
+ // Fire canceled event
121
+ EventHandlerUtil.trigger(this.element, 'kt.imageinput.canceled', e)
122
+ }
123
+
124
+ private _remove = (e: Event) => {
125
+ e.preventDefault()
126
+
127
+ // Fire remove event
128
+ if (EventHandlerUtil.trigger(this.element, 'kt.imageinput.remove', e) === false) {
129
+ return
130
+ }
131
+
132
+ this.element.classList.remove('image-input-changed')
133
+ this.element.classList.add('image-input-empty')
134
+ if (this.wrapperElement) {
135
+ this.wrapperElement.style.setProperty('background-image', 'none')
136
+ }
137
+
138
+ if (this.inputElement) {
139
+ this.inputElement.value = ''
140
+ }
141
+
142
+ if (this.hiddenElement !== null) {
143
+ this.hiddenElement.value = '1'
144
+ }
145
+
146
+ // Fire removed event
147
+ EventHandlerUtil.trigger(this.element, 'kt.imageinput.removed', e)
148
+ }
149
+
150
+ ///////////////////////
151
+ // ** Public API ** //
152
+ ///////////////////////
153
+ public getInputElement(): HTMLInputElement | null {
154
+ return this.inputElement
155
+ }
156
+
157
+ public getElement(): HTMLElement {
158
+ return this.element
159
+ }
160
+
161
+ // Event API
162
+ public on = (name: string, handler: Function) => {
163
+ return EventHandlerUtil.on(this.element, name, handler)
164
+ }
165
+
166
+ public one = (name: string, handler: Function) => {
167
+ return EventHandlerUtil.one(this.element, name, handler)
168
+ }
169
+
170
+ public off = (name: string, handlerId: string) => {
171
+ return EventHandlerUtil.off(this.element, name, handlerId)
172
+ }
173
+
174
+ public trigger = (name: string, event: Event) => {
175
+ return EventHandlerUtil.trigger(this.element, name, event)
176
+ }
177
+
178
+ // Static methods
179
+ public static getInstance = (
180
+ el: HTMLElement,
181
+ componentName: string = defaultImageInputQueires.componentName
182
+ ): ImageInputComponent | undefined => {
183
+ const ImageInput = DataUtil.get(el, componentName)
184
+ if (ImageInput) {
185
+ return ImageInput as ImageInputComponent
186
+ }
187
+ }
188
+
189
+ public static createInstances = (
190
+ selector: string = defaultImageInputQueires.instanseQuery,
191
+ options: IImageInputOptions = defaultImageInputOptions,
192
+ queries: IImageInputQueries = defaultImageInputQueires
193
+ ) => {
194
+ const elements = document.body.querySelectorAll(selector)
195
+ elements.forEach((el) => {
196
+ const item = el as HTMLElement
197
+ let ImageInput = ImageInputComponent.getInstance(item)
198
+ if (!ImageInput) {
199
+ ImageInput = new ImageInputComponent(item, options, queries)
200
+ }
201
+ })
202
+ }
203
+
204
+ public static createInsance = (
205
+ selector: string = defaultImageInputQueires.instanseQuery,
206
+ options: IImageInputOptions = defaultImageInputOptions,
207
+ queries: IImageInputQueries = defaultImageInputQueires
208
+ ): ImageInputComponent | undefined => {
209
+ const element = document.body.querySelector(selector)
210
+ if (!element) {
211
+ return
212
+ }
213
+ const item = element as HTMLElement
214
+ let ImageInput = ImageInputComponent.getInstance(item)
215
+ if (!ImageInput) {
216
+ ImageInput = new ImageInputComponent(item, options, queries)
217
+ }
218
+ return ImageInput
219
+ }
220
+
221
+ public static bootstrap = (selector: string = defaultImageInputQueires.instanseQuery) => {
222
+ ImageInputComponent.createInstances(selector)
223
+ }
224
+
225
+ public static reinitialization = (selector: string = defaultImageInputQueires.instanseQuery) => {
226
+ ImageInputComponent.createInstances(selector)
227
+ }
228
+ }
229
+ export {ImageInputComponent, defaultImageInputOptions, defaultImageInputQueires}