@magmonium/one 0.0.4 → 0.0.7

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 (632) hide show
  1. package/assets/README.md +38 -0
  2. package/assets/accordion_groups/small_gap.json +1 -0
  3. package/assets/accordions/fixed_allocation.json +6 -0
  4. package/assets/accordions/general_settings.json +6 -0
  5. package/assets/badges/danger_absolute.json +4 -0
  6. package/assets/badges/danger_static.json +4 -0
  7. package/assets/badges/filter_badge.json +3 -0
  8. package/assets/button_groups/comment_edit_actions.json +9 -0
  9. package/assets/button_groups/date_header.json +8 -0
  10. package/assets/button_groups/form-actions.json +6 -0
  11. package/assets/button_groups/nav_footer_button_group.json +16 -0
  12. package/assets/button_groups/nav_main_button_group.json +22 -0
  13. package/assets/button_groups/nav_user_actions.json +9 -0
  14. package/assets/button_groups/notification_actions.json +15 -0
  15. package/assets/button_groups/notification_filter.json +20 -0
  16. package/assets/button_groups/profile_modal_actions.json +10 -0
  17. package/assets/button_groups/reply_actions.json +9 -0
  18. package/assets/button_groups/showcase_nav.json +7 -0
  19. package/assets/buttons/accordion_chevron.json +4 -0
  20. package/assets/buttons/all.json +4 -0
  21. package/assets/buttons/app_open_arrow.json +7 -0
  22. package/assets/buttons/apps.json +6 -0
  23. package/assets/buttons/back_icon.json +5 -0
  24. package/assets/buttons/cancel_profile.json +5 -0
  25. package/assets/buttons/close-icon-only.json +6 -0
  26. package/assets/buttons/comment_cancel.json +4 -0
  27. package/assets/buttons/comment_hide_replies.json +5 -0
  28. package/assets/buttons/comment_reply.json +5 -0
  29. package/assets/buttons/comment_save.json +5 -0
  30. package/assets/buttons/comment_view_replies.json +5 -0
  31. package/assets/buttons/current_lang.json +5 -0
  32. package/assets/buttons/date_header_back.json +4 -0
  33. package/assets/buttons/date_header_next.json +4 -0
  34. package/assets/buttons/date_header_title.json +3 -0
  35. package/assets/buttons/decline_notification.json +4 -0
  36. package/assets/buttons/edit_profile.json +5 -0
  37. package/assets/buttons/eye.json +5 -0
  38. package/assets/buttons/eye_close.json +5 -0
  39. package/assets/buttons/filter_toggle.json +6 -0
  40. package/assets/buttons/language.json +6 -0
  41. package/assets/buttons/login_icon_only.json +6 -0
  42. package/assets/buttons/logout.json +5 -0
  43. package/assets/buttons/mark_all_read.json +4 -0
  44. package/assets/buttons/menu.json +5 -0
  45. package/assets/buttons/nav_back.json +5 -0
  46. package/assets/buttons/nav_trail_next.json +6 -0
  47. package/assets/buttons/nav_user_logout.json +5 -0
  48. package/assets/buttons/nav_user_settings.json +5 -0
  49. package/assets/buttons/next.json +7 -0
  50. package/assets/buttons/no.json +6 -0
  51. package/assets/buttons/notification.json +6 -0
  52. package/assets/buttons/ok.json +5 -0
  53. package/assets/buttons/okay.json +5 -0
  54. package/assets/buttons/pagination_first.json +4 -0
  55. package/assets/buttons/pagination_last.json +4 -0
  56. package/assets/buttons/pagination_next.json +4 -0
  57. package/assets/buttons/pagination_prev.json +4 -0
  58. package/assets/buttons/post.json +6 -0
  59. package/assets/buttons/remove_allocation.json +5 -0
  60. package/assets/buttons/resend.json +4 -0
  61. package/assets/buttons/reset.json +4 -0
  62. package/assets/buttons/save_allocation.json +5 -0
  63. package/assets/buttons/save_general.json +5 -0
  64. package/assets/buttons/save_profile.json +5 -0
  65. package/assets/buttons/search.json +7 -0
  66. package/assets/buttons/search_clear.json +5 -0
  67. package/assets/buttons/search_toggle.json +6 -0
  68. package/assets/buttons/select_user.json +5 -0
  69. package/assets/buttons/send_comment.json +4 -0
  70. package/assets/buttons/settings.json +7 -0
  71. package/assets/buttons/settings_icon_only.json +6 -0
  72. package/assets/buttons/showcase_back.json +6 -0
  73. package/assets/buttons/showcase_back_to_home.json +6 -0
  74. package/assets/buttons/sign_in.json +5 -0
  75. package/assets/buttons/sort_asc.json +3 -0
  76. package/assets/buttons/sort_desc.json +3 -0
  77. package/assets/buttons/stepper_next.json +6 -0
  78. package/assets/buttons/stepper_prev.json +5 -0
  79. package/assets/buttons/submit.json +8 -0
  80. package/assets/buttons/terms.json +5 -0
  81. package/assets/buttons/theme.json +6 -0
  82. package/assets/buttons/theme_icon_only.json +6 -0
  83. package/assets/buttons/unread.json +4 -0
  84. package/assets/buttons/upload_image.json +4 -0
  85. package/assets/buttons/user.json +6 -0
  86. package/assets/buttons/x.json +5 -0
  87. package/assets/buttons/yes.json +5 -0
  88. package/assets/cards/beautiful.json +4 -0
  89. package/assets/cards/featured.json +5 -0
  90. package/assets/cards/no_border.json +4 -0
  91. package/assets/carousel/sample.json +24 -0
  92. package/assets/charts/default.json +7 -0
  93. package/assets/charts/dual_area.json +7 -0
  94. package/assets/fields/allocation_pct.json +8 -0
  95. package/assets/fields/backgroundColor.json +5 -0
  96. package/assets/fields/bevel.json +4 -0
  97. package/assets/fields/butt.json +4 -0
  98. package/assets/fields/canInteract.json +5 -0
  99. package/assets/fields/comment_edit_textarea.json +6 -0
  100. package/assets/fields/confirm_password.json +4 -0
  101. package/assets/fields/dob.json +4 -0
  102. package/assets/fields/edgeSensitivity.json +7 -0
  103. package/assets/fields/email.json +15 -0
  104. package/assets/fields/female.json +4 -0
  105. package/assets/fields/first_name.json +5 -0
  106. package/assets/fields/identity.json +7 -0
  107. package/assets/fields/invertSvg.json +5 -0
  108. package/assets/fields/last_name.json +5 -0
  109. package/assets/fields/last_name_search.json +7 -0
  110. package/assets/fields/lineColor.json +5 -0
  111. package/assets/fields/lineSmoothing.json +7 -0
  112. package/assets/fields/linecap.json +11 -0
  113. package/assets/fields/linejoin.json +11 -0
  114. package/assets/fields/male.json +4 -0
  115. package/assets/fields/miter.json +4 -0
  116. package/assets/fields/nearestPoint.json +7 -0
  117. package/assets/fields/new_password.json +4 -0
  118. package/assets/fields/noiseReduction.json +7 -0
  119. package/assets/fields/other.json +4 -0
  120. package/assets/fields/otp.json +5 -0
  121. package/assets/fields/password.json +4 -0
  122. package/assets/fields/playground_format.json +17 -0
  123. package/assets/fields/re_password.json +4 -0
  124. package/assets/fields/round.json +4 -0
  125. package/assets/fields/search_input.json +8 -0
  126. package/assets/fields/service_agreement.json +4 -0
  127. package/assets/fields/sex.json +9 -0
  128. package/assets/fields/square.json +4 -0
  129. package/assets/fields/strokeWidth.json +7 -0
  130. package/assets/fields/table_page_size.json +6 -0
  131. package/assets/fields/table_search.json +6 -0
  132. package/assets/fields/threshold.json +7 -0
  133. package/assets/fields/username_email_mobile.json +5 -0
  134. package/assets/forms/allocation_row.json +12 -0
  135. package/assets/forms/check_username.json +7 -0
  136. package/assets/forms/companies_search.json +12 -0
  137. package/assets/forms/contact.json +9 -0
  138. package/assets/forms/create_user.json +21 -0
  139. package/assets/forms/reset_password.json +13 -0
  140. package/assets/forms/select_identity.json +7 -0
  141. package/assets/forms/service_agreement.json +7 -0
  142. package/assets/forms/settings_general.json +18 -0
  143. package/assets/forms/svg_edit.json +25 -0
  144. package/assets/forms/svg_tuning.json +19 -0
  145. package/assets/forms/user_search.json +8 -0
  146. package/assets/forms/verify_otp.json +7 -0
  147. package/assets/forms/verify_password.json +7 -0
  148. package/assets/graphs/animated-graphs.json +8 -0
  149. package/assets/i18n/(Note.json +3 -0
  150. package/assets/i18n/af.json +525 -0
  151. package/assets/i18n/al.json +23 -0
  152. package/assets/i18n/am.json +525 -0
  153. package/assets/i18n/ar.json +525 -0
  154. package/assets/i18n/as.json +525 -0
  155. package/assets/i18n/az.json +525 -0
  156. package/assets/i18n/ba.json +525 -0
  157. package/assets/i18n/be.json +525 -0
  158. package/assets/i18n/bg.json +525 -0
  159. package/assets/i18n/bn.json +525 -0
  160. package/assets/i18n/br.json +525 -0
  161. package/assets/i18n/brx.json +498 -0
  162. package/assets/i18n/bs.json +525 -0
  163. package/assets/i18n/ca.json +525 -0
  164. package/assets/i18n/ceb.json +523 -0
  165. package/assets/i18n/cnr.json +525 -0
  166. package/assets/i18n/co.json +523 -0
  167. package/assets/i18n/country-AF.json +4 -0
  168. package/assets/i18n/country-AL.json +3 -0
  169. package/assets/i18n/country-AM.json +4 -0
  170. package/assets/i18n/country-AO.json +3 -0
  171. package/assets/i18n/country-AR.json +3 -0
  172. package/assets/i18n/country-AZ.json +3 -0
  173. package/assets/i18n/country-BA.json +3 -0
  174. package/assets/i18n/country-BD.json +3 -0
  175. package/assets/i18n/country-BE.json +5 -0
  176. package/assets/i18n/country-BF.json +3 -0
  177. package/assets/i18n/country-BG.json +3 -0
  178. package/assets/i18n/country-BI.json +4 -0
  179. package/assets/i18n/country-BJ.json +4 -0
  180. package/assets/i18n/country-BN.json +4 -0
  181. package/assets/i18n/country-BR.json +3 -0
  182. package/assets/i18n/country-BT.json +4 -0
  183. package/assets/i18n/country-BW.json +4 -0
  184. package/assets/i18n/country-BY.json +3 -0
  185. package/assets/i18n/country-CA.json +4 -0
  186. package/assets/i18n/country-CD.json +5 -0
  187. package/assets/i18n/country-CF.json +4 -0
  188. package/assets/i18n/country-CG.json +3 -0
  189. package/assets/i18n/country-CH.json +6 -0
  190. package/assets/i18n/country-CI.json +3 -0
  191. package/assets/i18n/country-CM.json +4 -0
  192. package/assets/i18n/country-CN.json +3 -0
  193. package/assets/i18n/country-CO.json +3 -0
  194. package/assets/i18n/country-CR.json +3 -0
  195. package/assets/i18n/country-CU.json +3 -0
  196. package/assets/i18n/country-CV.json +3 -0
  197. package/assets/i18n/country-CZ.json +3 -0
  198. package/assets/i18n/country-DE.json +3 -0
  199. package/assets/i18n/country-DJ.json +5 -0
  200. package/assets/i18n/country-DK.json +3 -0
  201. package/assets/i18n/country-DO.json +3 -0
  202. package/assets/i18n/country-DZ.json +5 -0
  203. package/assets/i18n/country-EC.json +4 -0
  204. package/assets/i18n/country-EE.json +3 -0
  205. package/assets/i18n/country-EG.json +3 -0
  206. package/assets/i18n/country-ER.json +5 -0
  207. package/assets/i18n/country-ES.json +6 -0
  208. package/assets/i18n/country-ET.json +5 -0
  209. package/assets/i18n/country-FI.json +3 -0
  210. package/assets/i18n/country-FJ.json +5 -0
  211. package/assets/i18n/country-FR.json +4 -0
  212. package/assets/i18n/country-GA.json +3 -0
  213. package/assets/i18n/country-GB.json +5 -0
  214. package/assets/i18n/country-GE.json +3 -0
  215. package/assets/i18n/country-GH.json +4 -0
  216. package/assets/i18n/country-GM.json +3 -0
  217. package/assets/i18n/country-GN.json +3 -0
  218. package/assets/i18n/country-GQ.json +5 -0
  219. package/assets/i18n/country-GR.json +3 -0
  220. package/assets/i18n/country-GT.json +3 -0
  221. package/assets/i18n/country-GW.json +3 -0
  222. package/assets/i18n/country-GY.json +3 -0
  223. package/assets/i18n/country-HK.json +4 -0
  224. package/assets/i18n/country-HN.json +3 -0
  225. package/assets/i18n/country-HR.json +3 -0
  226. package/assets/i18n/country-HT.json +4 -0
  227. package/assets/i18n/country-HU.json +3 -0
  228. package/assets/i18n/country-ID.json +3 -0
  229. package/assets/i18n/country-IE.json +4 -0
  230. package/assets/i18n/country-IL.json +4 -0
  231. package/assets/i18n/country-IN.json +26 -0
  232. package/assets/i18n/country-IR.json +4 -0
  233. package/assets/i18n/country-IS.json +3 -0
  234. package/assets/i18n/country-IT.json +3 -0
  235. package/assets/i18n/country-JM.json +3 -0
  236. package/assets/i18n/country-JO.json +3 -0
  237. package/assets/i18n/country-JP.json +4 -0
  238. package/assets/i18n/country-KE.json +4 -0
  239. package/assets/i18n/country-KG.json +4 -0
  240. package/assets/i18n/country-KH.json +3 -0
  241. package/assets/i18n/country-KM.json +5 -0
  242. package/assets/i18n/country-KP.json +3 -0
  243. package/assets/i18n/country-KR.json +3 -0
  244. package/assets/i18n/country-KW.json +3 -0
  245. package/assets/i18n/country-KZ.json +4 -0
  246. package/assets/i18n/country-LA.json +3 -0
  247. package/assets/i18n/country-LB.json +4 -0
  248. package/assets/i18n/country-LK.json +5 -0
  249. package/assets/i18n/country-LR.json +3 -0
  250. package/assets/i18n/country-LS.json +4 -0
  251. package/assets/i18n/country-LT.json +4 -0
  252. package/assets/i18n/country-LU.json +5 -0
  253. package/assets/i18n/country-LV.json +4 -0
  254. package/assets/i18n/country-LY.json +3 -0
  255. package/assets/i18n/country-MA.json +5 -0
  256. package/assets/i18n/country-MC.json +3 -0
  257. package/assets/i18n/country-MD.json +4 -0
  258. package/assets/i18n/country-ME.json +3 -0
  259. package/assets/i18n/country-MG.json +4 -0
  260. package/assets/i18n/country-MK.json +3 -0
  261. package/assets/i18n/country-ML.json +4 -0
  262. package/assets/i18n/country-MM.json +3 -0
  263. package/assets/i18n/country-MN.json +3 -0
  264. package/assets/i18n/country-MR.json +4 -0
  265. package/assets/i18n/country-MT.json +4 -0
  266. package/assets/i18n/country-MU.json +5 -0
  267. package/assets/i18n/country-MV.json +3 -0
  268. package/assets/i18n/country-MW.json +4 -0
  269. package/assets/i18n/country-MX.json +3 -0
  270. package/assets/i18n/country-MY.json +6 -0
  271. package/assets/i18n/country-MZ.json +3 -0
  272. package/assets/i18n/country-NA.json +4 -0
  273. package/assets/i18n/country-NC.json +3 -0
  274. package/assets/i18n/country-NE.json +3 -0
  275. package/assets/i18n/country-NG.json +6 -0
  276. package/assets/i18n/country-NI.json +3 -0
  277. package/assets/i18n/country-NL.json +4 -0
  278. package/assets/i18n/country-NO.json +4 -0
  279. package/assets/i18n/country-NP.json +3 -0
  280. package/assets/i18n/country-NZ.json +4 -0
  281. package/assets/i18n/country-OM.json +3 -0
  282. package/assets/i18n/country-PA.json +3 -0
  283. package/assets/i18n/country-PE.json +5 -0
  284. package/assets/i18n/country-PF.json +4 -0
  285. package/assets/i18n/country-PG.json +5 -0
  286. package/assets/i18n/country-PH.json +4 -0
  287. package/assets/i18n/country-PK.json +4 -0
  288. package/assets/i18n/country-PL.json +3 -0
  289. package/assets/i18n/country-PR.json +4 -0
  290. package/assets/i18n/country-PT.json +3 -0
  291. package/assets/i18n/country-PY.json +4 -0
  292. package/assets/i18n/country-QA.json +3 -0
  293. package/assets/i18n/country-RO.json +4 -0
  294. package/assets/i18n/country-RS.json +3 -0
  295. package/assets/i18n/country-RU.json +3 -0
  296. package/assets/i18n/country-RW.json +5 -0
  297. package/assets/i18n/country-SA.json +3 -0
  298. package/assets/i18n/country-SC.json +5 -0
  299. package/assets/i18n/country-SD.json +4 -0
  300. package/assets/i18n/country-SE.json +4 -0
  301. package/assets/i18n/country-SG.json +6 -0
  302. package/assets/i18n/country-SI.json +3 -0
  303. package/assets/i18n/country-SK.json +4 -0
  304. package/assets/i18n/country-SL.json +4 -0
  305. package/assets/i18n/country-SN.json +4 -0
  306. package/assets/i18n/country-SO.json +4 -0
  307. package/assets/i18n/country-SR.json +4 -0
  308. package/assets/i18n/country-SS.json +4 -0
  309. package/assets/i18n/country-SV.json +3 -0
  310. package/assets/i18n/country-SY.json +3 -0
  311. package/assets/i18n/country-TD.json +4 -0
  312. package/assets/i18n/country-TG.json +4 -0
  313. package/assets/i18n/country-TH.json +3 -0
  314. package/assets/i18n/country-TJ.json +4 -0
  315. package/assets/i18n/country-TM.json +4 -0
  316. package/assets/i18n/country-TN.json +4 -0
  317. package/assets/i18n/country-TR.json +3 -0
  318. package/assets/i18n/country-TT.json +4 -0
  319. package/assets/i18n/country-TW.json +4 -0
  320. package/assets/i18n/country-TZ.json +4 -0
  321. package/assets/i18n/country-UA.json +4 -0
  322. package/assets/i18n/country-UG.json +4 -0
  323. package/assets/i18n/country-US.json +3 -0
  324. package/assets/i18n/country-UY.json +3 -0
  325. package/assets/i18n/country-UZ.json +4 -0
  326. package/assets/i18n/country-VA.json +4 -0
  327. package/assets/i18n/country-VE.json +3 -0
  328. package/assets/i18n/country-VN.json +3 -0
  329. package/assets/i18n/country-VU.json +5 -0
  330. package/assets/i18n/country-WS.json +4 -0
  331. package/assets/i18n/country-YE.json +4 -0
  332. package/assets/i18n/country-YT.json +4 -0
  333. package/assets/i18n/country-ZA.json +6 -0
  334. package/assets/i18n/country-ZM.json +4 -0
  335. package/assets/i18n/country-ZW.json +4 -0
  336. package/assets/i18n/cs.json +525 -0
  337. package/assets/i18n/cy.json +525 -0
  338. package/assets/i18n/da.json +524 -0
  339. package/assets/i18n/de.json +525 -0
  340. package/assets/i18n/doi.json +525 -0
  341. package/assets/i18n/el.json +525 -0
  342. package/assets/i18n/en.json +525 -0
  343. package/assets/i18n/eo.json +525 -0
  344. package/assets/i18n/es.json +525 -0
  345. package/assets/i18n/et.json +525 -0
  346. package/assets/i18n/eu.json +525 -0
  347. package/assets/i18n/fa.json +525 -0
  348. package/assets/i18n/fi.json +525 -0
  349. package/assets/i18n/fr.json +524 -0
  350. package/assets/i18n/fy.json +521 -0
  351. package/assets/i18n/ga.json +525 -0
  352. package/assets/i18n/gd.json +525 -0
  353. package/assets/i18n/gl.json +525 -0
  354. package/assets/i18n/gu.json +525 -0
  355. package/assets/i18n/ha.json +524 -0
  356. package/assets/i18n/haw.json +524 -0
  357. package/assets/i18n/he.json +525 -0
  358. package/assets/i18n/hi.json +525 -0
  359. package/assets/i18n/hmn.json +524 -0
  360. package/assets/i18n/hr.json +525 -0
  361. package/assets/i18n/hu.json +525 -0
  362. package/assets/i18n/hy.json +525 -0
  363. package/assets/i18n/id.json +525 -0
  364. package/assets/i18n/ie.json +500 -0
  365. package/assets/i18n/ig.json +525 -0
  366. package/assets/i18n/ilo.json +525 -0
  367. package/assets/i18n/is.json +525 -0
  368. package/assets/i18n/it.json +525 -0
  369. package/assets/i18n/iw.json +525 -0
  370. package/assets/i18n/ja.json +525 -0
  371. package/assets/i18n/jw.json +525 -0
  372. package/assets/i18n/ka.json +525 -0
  373. package/assets/i18n/kk.json +525 -0
  374. package/assets/i18n/km.json +525 -0
  375. package/assets/i18n/kn.json +525 -0
  376. package/assets/i18n/ko.json +525 -0
  377. package/assets/i18n/kok.json +525 -0
  378. package/assets/i18n/ks.json +499 -0
  379. package/assets/i18n/ku.json +525 -0
  380. package/assets/i18n/ky.json +525 -0
  381. package/assets/i18n/la.json +522 -0
  382. package/assets/i18n/lang.json +109 -0
  383. package/assets/i18n/lb.json +524 -0
  384. package/assets/i18n/links.json +6 -0
  385. package/assets/i18n/lo.json +525 -0
  386. package/assets/i18n/lt.json +525 -0
  387. package/assets/i18n/lv.json +525 -0
  388. package/assets/i18n/ma.json +500 -0
  389. package/assets/i18n/mai.json +525 -0
  390. package/assets/i18n/me.json +497 -0
  391. package/assets/i18n/mg.json +522 -0
  392. package/assets/i18n/mi.json +525 -0
  393. package/assets/i18n/mk.json +525 -0
  394. package/assets/i18n/ml.json +525 -0
  395. package/assets/i18n/mn.json +525 -0
  396. package/assets/i18n/mni.json +497 -0
  397. package/assets/i18n/mr.json +525 -0
  398. package/assets/i18n/ms.json +525 -0
  399. package/assets/i18n/mt.json +524 -0
  400. package/assets/i18n/my.json +525 -0
  401. package/assets/i18n/ne.json +525 -0
  402. package/assets/i18n/nl.json +525 -0
  403. package/assets/i18n/no.json +525 -0
  404. package/assets/i18n/ny.json +525 -0
  405. package/assets/i18n/or.json +525 -0
  406. package/assets/i18n/pa.json +525 -0
  407. package/assets/i18n/pl.json +525 -0
  408. package/assets/i18n/ps.json +525 -0
  409. package/assets/i18n/pt.json +525 -0
  410. package/assets/i18n/rm.json +500 -0
  411. package/assets/i18n/ro.json +525 -0
  412. package/assets/i18n/ru.json +525 -0
  413. package/assets/i18n/sa.json +525 -0
  414. package/assets/i18n/sat.json +525 -0
  415. package/assets/i18n/sc.json +500 -0
  416. package/assets/i18n/sd.json +525 -0
  417. package/assets/i18n/si.json +525 -0
  418. package/assets/i18n/sk.json +525 -0
  419. package/assets/i18n/sl.json +524 -0
  420. package/assets/i18n/sm.json +525 -0
  421. package/assets/i18n/sn.json +519 -0
  422. package/assets/i18n/so.json +525 -0
  423. package/assets/i18n/sq.json +525 -0
  424. package/assets/i18n/sr.json +525 -0
  425. package/assets/i18n/st.json +524 -0
  426. package/assets/i18n/su.json +524 -0
  427. package/assets/i18n/sv.json +524 -0
  428. package/assets/i18n/sw.json +525 -0
  429. package/assets/i18n/ta.json +525 -0
  430. package/assets/i18n/te.json +525 -0
  431. package/assets/i18n/tg.json +525 -0
  432. package/assets/i18n/th.json +525 -0
  433. package/assets/i18n/tl.json +524 -0
  434. package/assets/i18n/tr.json +525 -0
  435. package/assets/i18n/uk.json +525 -0
  436. package/assets/i18n/ur.json +525 -0
  437. package/assets/i18n/uz.json +525 -0
  438. package/assets/i18n/vi.json +525 -0
  439. package/assets/i18n/xh.json +525 -0
  440. package/assets/i18n/yi.json +525 -0
  441. package/assets/i18n/yo.json +525 -0
  442. package/assets/i18n/zh.json +525 -0
  443. package/assets/i18n/zu.json +525 -0
  444. package/assets/icons/accordion_chevron.svg +3 -0
  445. package/assets/icons/account_balance_wallet.svg +1 -0
  446. package/assets/icons/activity.svg +3 -0
  447. package/assets/icons/add-image.svg +7 -0
  448. package/assets/icons/adjust.svg +11 -0
  449. package/assets/icons/alert-circle.svg +1 -0
  450. package/assets/icons/analytics.svg +5 -0
  451. package/assets/icons/apps.svg +7 -0
  452. package/assets/icons/arrow-down.svg +4 -0
  453. package/assets/icons/arrow-left-right.svg +3 -0
  454. package/assets/icons/arrow-left.svg +4 -0
  455. package/assets/icons/arrow-right.svg +4 -0
  456. package/assets/icons/arrow-up.svg +4 -0
  457. package/assets/icons/arrow_back.svg +4 -0
  458. package/assets/icons/bell.svg +4 -0
  459. package/assets/icons/books.svg +6 -0
  460. package/assets/icons/calendar-open.svg +4 -0
  461. package/assets/icons/calendar.svg +14 -0
  462. package/assets/icons/camera.svg +4 -0
  463. package/assets/icons/chat.svg +3 -0
  464. package/assets/icons/check.svg +3 -0
  465. package/assets/icons/chevron-down.svg +4 -0
  466. package/assets/icons/chevron-left.svg +3 -0
  467. package/assets/icons/chevron-right.svg +4 -0
  468. package/assets/icons/chevron-up.svg +4 -0
  469. package/assets/icons/chevron_left.svg +3 -0
  470. package/assets/icons/chevrons-down.svg +4 -0
  471. package/assets/icons/chevrons-left.svg +4 -0
  472. package/assets/icons/chevrons-right.svg +5 -0
  473. package/assets/icons/chevrons-up.svg +5 -0
  474. package/assets/icons/clipboard.svg +4 -0
  475. package/assets/icons/coins.svg +7 -0
  476. package/assets/icons/color-picker.svg +4 -0
  477. package/assets/icons/copy.svg +4 -0
  478. package/assets/icons/copyright.svg +4 -0
  479. package/assets/icons/currency_exchange.svg +1 -0
  480. package/assets/icons/dot.svg +3 -0
  481. package/assets/icons/ellipsis-vertical.svg +5 -0
  482. package/assets/icons/exclamation-triangle.svg +5 -0
  483. package/assets/icons/eye.svg +5 -0
  484. package/assets/icons/eye_close.svg +5 -0
  485. package/assets/icons/fixed.svg +4 -0
  486. package/assets/icons/flower.svg +14 -0
  487. package/assets/icons/folder.svg +3 -0
  488. package/assets/icons/games.svg +6 -0
  489. package/assets/icons/gear.svg +6 -0
  490. package/assets/icons/heart.svg +3 -0
  491. package/assets/icons/heart_filled.svg +3 -0
  492. package/assets/icons/help.svg +5 -0
  493. package/assets/icons/hero.svg +6 -0
  494. package/assets/icons/info.svg +3 -0
  495. package/assets/icons/install.svg +6 -0
  496. package/assets/icons/instrument.svg +5 -0
  497. package/assets/icons/investments.svg +4 -0
  498. package/assets/icons/language.svg +3 -0
  499. package/assets/icons/layers.svg +1 -0
  500. package/assets/icons/layouts.svg +5 -0
  501. package/assets/icons/location.svg +4 -0
  502. package/assets/icons/lock.svg +5 -0
  503. package/assets/icons/logo.svg +10 -0
  504. package/assets/icons/magazines.svg +8 -0
  505. package/assets/icons/mail.svg +1 -0
  506. package/assets/icons/menu.svg +6 -0
  507. package/assets/icons/mic.svg +6 -0
  508. package/assets/icons/monitor.svg +5 -0
  509. package/assets/icons/more.svg +5 -0
  510. package/assets/icons/notification.svg +5 -0
  511. package/assets/icons/notification_off.svg +6 -0
  512. package/assets/icons/open.svg +6 -0
  513. package/assets/icons/pause.svg +1 -0
  514. package/assets/icons/pencil.svg +3 -0
  515. package/assets/icons/play.svg +3 -0
  516. package/assets/icons/plus.svg +4 -0
  517. package/assets/icons/posts.svg +8 -0
  518. package/assets/icons/reset.svg +4 -0
  519. package/assets/icons/save.svg +5 -0
  520. package/assets/icons/scissors.svg +7 -0
  521. package/assets/icons/search.svg +5 -0
  522. package/assets/icons/section.svg +5 -0
  523. package/assets/icons/security.svg +3 -0
  524. package/assets/icons/settings.svg +4 -0
  525. package/assets/icons/shield.svg +3 -0
  526. package/assets/icons/smartphone.svg +4 -0
  527. package/assets/icons/sort-alpha-asc.svg +8 -0
  528. package/assets/icons/sort-alpha-desc.svg +8 -0
  529. package/assets/icons/square.svg +1 -0
  530. package/assets/icons/star.svg +6 -0
  531. package/assets/icons/store.svg +13 -0
  532. package/assets/icons/strategies.svg +5 -0
  533. package/assets/icons/sun.svg +11 -0
  534. package/assets/icons/svg.json +107 -0
  535. package/assets/icons/tablet.svg +4 -0
  536. package/assets/icons/target.svg +5 -0
  537. package/assets/icons/theme.svg +3 -0
  538. package/assets/icons/trash-2.svg +7 -0
  539. package/assets/icons/trash.svg +5 -0
  540. package/assets/icons/trending-down.svg +4 -0
  541. package/assets/icons/trending-up.svg +4 -0
  542. package/assets/icons/user.svg +5 -0
  543. package/assets/icons/users.svg +6 -0
  544. package/assets/icons/wallet_manager.svg +6 -0
  545. package/assets/icons/wallet_owner.svg +6 -0
  546. package/assets/icons/wallet_shareholder.svg +7 -0
  547. package/assets/icons/wifi.svg +6 -0
  548. package/assets/icons/x.svg +4 -0
  549. package/assets/icons/zap.svg +3 -0
  550. package/assets/index.json +1 -0
  551. package/assets/login/illustration.png +0 -0
  552. package/assets/menu/comment_actions.json +20 -0
  553. package/assets/menu/user_header.json +27 -0
  554. package/assets/modal/authenticate.json +8 -0
  555. package/assets/modal/bottom.json +5 -0
  556. package/assets/modal/center.json +5 -0
  557. package/assets/modal/fullscreen.json +4 -0
  558. package/assets/options/countries.json +1249 -0
  559. package/assets/options/language_options.json +514 -0
  560. package/assets/options/sample-options.json +20 -0
  561. package/assets/pagination/default.json +5 -0
  562. package/assets/settings/user.json +39 -0
  563. package/assets/sort/default.json +6 -0
  564. package/assets/theme/dark.json +64 -0
  565. package/assets/theme/default.json +62 -0
  566. package/assets/theme/light.json +64 -0
  567. package/assets/theme/theme.json +19 -0
  568. package/fesm2022/magmonium-one-magmonium-one-CCzzYU2z.mjs +29621 -0
  569. package/fesm2022/magmonium-one-magmonium-one-CCzzYU2z.mjs.map +1 -0
  570. package/fesm2022/magmonium-one-otp-2KL7aM-S.mjs +171 -0
  571. package/fesm2022/{magmonium-one-otp-D-gA4qT1.mjs.map → magmonium-one-otp-2KL7aM-S.mjs.map} +1 -1
  572. package/fesm2022/magmonium-one-password-a-Le8Z1I.mjs +87 -0
  573. package/fesm2022/{magmonium-one-password-BOsM6-nh.mjs.map → magmonium-one-password-a-Le8Z1I.mjs.map} +1 -1
  574. package/fesm2022/magmonium-one-toggle-B7q3Vvpg.mjs +62 -0
  575. package/fesm2022/{magmonium-one-toggle-DVSWH4qB.mjs.map → magmonium-one-toggle-B7q3Vvpg.mjs.map} +1 -1
  576. package/fesm2022/magmonium-one.mjs +1 -1
  577. package/package.json +2 -1
  578. package/sass/_index.sass +50 -0
  579. package/sass/_overlay-hosts.sass +78 -0
  580. package/sass/_reset.sass +35 -0
  581. package/sass/animations/_index.sass +13 -0
  582. package/sass/animations/_registry.sass +51 -0
  583. package/sass/animations/background/_energy.sass +91 -0
  584. package/sass/animations/background/_gradient.sass +104 -0
  585. package/sass/animations/background/_index.sass +9 -0
  586. package/sass/animations/background/_nature.sass +110 -0
  587. package/sass/animations/background/_new-effects.sass +292 -0
  588. package/sass/animations/background/_particle.sass +122 -0
  589. package/sass/animations/background/_tech.sass +124 -0
  590. package/sass/functions/_functions.sass +107 -0
  591. package/sass/mixins/_backdrops.sass +230 -0
  592. package/sass/mixins/_backgrounds.sass +214 -0
  593. package/sass/mixins/_borders.sass +93 -0
  594. package/sass/mixins/_breakpoints.sass +68 -0
  595. package/sass/mixins/_button.sass +46 -0
  596. package/sass/mixins/_checkbox.sass +128 -0
  597. package/sass/mixins/_colors.sass +121 -0
  598. package/sass/mixins/_control.sass +13 -0
  599. package/sass/mixins/_device.sass +22 -0
  600. package/sass/mixins/_display.sass +210 -0
  601. package/sass/mixins/_flex.sass +104 -0
  602. package/sass/mixins/_form.sass +68 -0
  603. package/sass/mixins/_grid.sass +273 -0
  604. package/sass/mixins/_header.sass +71 -0
  605. package/sass/mixins/_index.sass +29 -0
  606. package/sass/mixins/_input.sass +132 -0
  607. package/sass/mixins/_interactive.sass +19 -0
  608. package/sass/mixins/_label.sass +25 -0
  609. package/sass/mixins/_layout.sass +251 -0
  610. package/sass/mixins/_links.sass +85 -0
  611. package/sass/mixins/_lists.sass +377 -0
  612. package/sass/mixins/_overflow.sass +121 -0
  613. package/sass/mixins/_position.sass +181 -0
  614. package/sass/mixins/_radio.sass +205 -0
  615. package/sass/mixins/_sizing.sass +181 -0
  616. package/sass/mixins/_spacing.sass +59 -0
  617. package/sass/mixins/_text.sass +159 -0
  618. package/sass/mixins/_toggle.sass +240 -0
  619. package/sass/mixins/_typography.sass +6 -0
  620. package/sass/mixins/_utilities.sass +70 -0
  621. package/sass/variables/_animations.sass +5 -0
  622. package/sass/variables/_borders.sass +25 -0
  623. package/sass/variables/_colors.sass +93 -0
  624. package/sass/variables/_index.sass +6 -0
  625. package/sass/variables/_number.sass +1 -0
  626. package/sass/variables/_spacing.sass +28 -0
  627. package/sass/variables/_typography.sass +40 -0
  628. package/fesm2022/magmonium-one-magmonium-one-Bc6ZjJKk.mjs +0 -29631
  629. package/fesm2022/magmonium-one-magmonium-one-Bc6ZjJKk.mjs.map +0 -1
  630. package/fesm2022/magmonium-one-otp-D-gA4qT1.mjs +0 -171
  631. package/fesm2022/magmonium-one-password-BOsM6-nh.mjs +0 -87
  632. package/fesm2022/magmonium-one-toggle-DVSWH4qB.mjs +0 -62
@@ -0,0 +1,171 @@
1
+ import * as i0 from '@angular/core';
2
+ import { signal, viewChildren, computed, effect, ChangeDetectionStrategy, Component } from '@angular/core';
3
+ import { a as BaseTextInputComponent, L as LabelComponent, E as ErrorsComponent } from './magmonium-one-magmonium-one-CCzzYU2z.mjs';
4
+ import { CommonModule } from '@angular/common';
5
+
6
+ class OtpInputComponent extends BaseTextInputComponent {
7
+ otpValues = signal([], ...(ngDevMode ? [{ debugName: "otpValues" }] : /* istanbul ignore next */ []));
8
+ otpInputs = viewChildren('otpInput', ...(ngDevMode ? [{ debugName: "otpInputs" }] : /* istanbul ignore next */ []));
9
+ otpConfig = computed(() => this.config(), ...(ngDevMode ? [{ debugName: "otpConfig" }] : /* istanbul ignore next */ []));
10
+ otpArray = computed(() => {
11
+ const length = this.otpConfig()?.length || 6;
12
+ return Array(length).fill(0);
13
+ }, ...(ngDevMode ? [{ debugName: "otpArray" }] : /* istanbul ignore next */ []));
14
+ constructor() {
15
+ super();
16
+ effect(() => {
17
+ const length = this.otpConfig()?.length || 6;
18
+ this.otpValues.set(Array(length).fill(''));
19
+ });
20
+ effect(() => {
21
+ const inputs = this.otpInputs();
22
+ if (inputs.length > 0) {
23
+ setTimeout(() => {
24
+ inputs[0].nativeElement.focus();
25
+ }, 0);
26
+ }
27
+ });
28
+ }
29
+ onInput(event, index) {
30
+ const input = event.target;
31
+ let value = input.value;
32
+ value = value.replace(/[^a-zA-Z0-9]/g, '');
33
+ if (value.length > 1) {
34
+ value = value.slice(-1);
35
+ }
36
+ input.value = value.toUpperCase();
37
+ const newValues = [...this.otpValues()];
38
+ newValues[index] = value.toUpperCase();
39
+ this.otpValues.set(newValues);
40
+ const length = this.otpConfig()?.length || 6;
41
+ if (value && index < length - 1) {
42
+ this.focusInput(index + 1);
43
+ }
44
+ this.updateValue();
45
+ }
46
+ onKeyDown(event, index) {
47
+ const input = event.target;
48
+ const length = this.otpConfig()?.length || 6;
49
+ const isAlphaNumeric = /^[a-zA-Z0-9]$/.test(event.key);
50
+ const isControlKey = [
51
+ 'Backspace',
52
+ 'Delete',
53
+ 'ArrowLeft',
54
+ 'ArrowRight',
55
+ 'Tab',
56
+ ].includes(event.key);
57
+ if (!isAlphaNumeric && !isControlKey) {
58
+ event.preventDefault();
59
+ return;
60
+ }
61
+ if (event.key === 'Backspace') {
62
+ if (!input.value && index > 0) {
63
+ this.focusInput(index - 1);
64
+ }
65
+ }
66
+ if (event.key === 'ArrowLeft' && index > 0) {
67
+ event.preventDefault();
68
+ this.focusInput(index - 1);
69
+ }
70
+ if (event.key === 'ArrowRight' && index < length - 1) {
71
+ event.preventDefault();
72
+ this.focusInput(index + 1);
73
+ }
74
+ }
75
+ onPaste(event) {
76
+ event.preventDefault();
77
+ event.stopPropagation();
78
+ const length = this.otpConfig()?.length || 6;
79
+ const pastedData = event.clipboardData?.getData('text') || '';
80
+ const alphanumeric = pastedData
81
+ .replace(/[^a-zA-Z0-9]/g, '')
82
+ .slice(0, length);
83
+ if (alphanumeric.length > 0) {
84
+ const newValues = Array(length).fill('');
85
+ alphanumeric.split('').forEach((char, index) => {
86
+ if (index < length) {
87
+ newValues[index] = char.toUpperCase();
88
+ }
89
+ });
90
+ this.otpValues.set(newValues);
91
+ this.updateValue();
92
+ const focusIndex = Math.min(alphanumeric.length, length - 1);
93
+ setTimeout(() => this.focusInput(focusIndex), 0);
94
+ }
95
+ }
96
+ focusInput(index) {
97
+ const inputs = this.otpInputs();
98
+ if (inputs[index]) {
99
+ inputs[index].nativeElement.focus();
100
+ }
101
+ }
102
+ updateValue() {
103
+ const otpValue = this.otpValues().join('');
104
+ this.setValue(otpValue);
105
+ }
106
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: OtpInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
107
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: OtpInputComponent, isStandalone: true, selector: "m-otp-input", viewQueries: [{ propertyName: "otpInputs", predicate: ["otpInput"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: `
108
+ @if (otpConfig(); as otp) {
109
+ <m-label
110
+ [for]="otp.name"
111
+ [placeholder]="otp.label"
112
+ [required]="required()"
113
+ [disabled]="disabled()"
114
+ />
115
+ <div class="otp-container">
116
+ @for (item of otpArray(); track $index) {
117
+ <input
118
+ [id]="$index === 0 ? (otp.name ?? '') : ''"
119
+ #otpInput
120
+ type="text"
121
+ maxlength="1"
122
+ [class.error]="showErrors()"
123
+ [disabled]="disabled()"
124
+ [value]="otpValues()[$index] || ''"
125
+ (input)="onInput($event, $index)"
126
+ (keydown)="onKeyDown($event, $index)"
127
+ (paste)="onPaste($event)"
128
+ />
129
+ }
130
+ </div>
131
+ @if (showErrors()) {
132
+ <m-input-errors [errors]="errors()" />
133
+ }
134
+ }
135
+ `, isInline: true, styles: ["@keyframes toggle-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes thumb-slide{0%{transform:translate(0) scale(1)}50%{transform:translate(.3em) scale(.9)}to{transform:translate(.6em) scale(1)}}:host{display:contents}.otp-container{display:flex;gap:.375em;padding:2px;margin:-2px}.otp-container input{box-sizing:border-box;width:1.4em;height:2em;text-align:center;font-size:.9rem;font-weight:600;border:max(1px,1em * .0625) solid var(--m-input-color, var(--m-mm));border-radius:.4em;transition:border-color .2s ease,box-shadow .2s ease;text-transform:uppercase;background:transparent;color:var(--m-text)}.otp-container input:focus{outline:none;border-color:var(--m-text-input-focus-border, var(--m-focus));box-shadow:none}.otp-container input.error{border-color:var(--m-error);box-shadow:none}.otp-container input:disabled{background-color:var(--m-frame);cursor:not-allowed;color:var(--m-text-tertiary);border-color:var(--m-border);opacity:.6}\n"], dependencies: [{ kind: "component", type: LabelComponent, selector: "m-label", inputs: ["for", "placeholder", "required", "disabled", "color"] }, { kind: "component", type: ErrorsComponent, selector: "m-input-errors", inputs: ["errors"] }, { kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
136
+ }
137
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: OtpInputComponent, decorators: [{
138
+ type: Component,
139
+ args: [{ selector: 'm-otp-input', template: `
140
+ @if (otpConfig(); as otp) {
141
+ <m-label
142
+ [for]="otp.name"
143
+ [placeholder]="otp.label"
144
+ [required]="required()"
145
+ [disabled]="disabled()"
146
+ />
147
+ <div class="otp-container">
148
+ @for (item of otpArray(); track $index) {
149
+ <input
150
+ [id]="$index === 0 ? (otp.name ?? '') : ''"
151
+ #otpInput
152
+ type="text"
153
+ maxlength="1"
154
+ [class.error]="showErrors()"
155
+ [disabled]="disabled()"
156
+ [value]="otpValues()[$index] || ''"
157
+ (input)="onInput($event, $index)"
158
+ (keydown)="onKeyDown($event, $index)"
159
+ (paste)="onPaste($event)"
160
+ />
161
+ }
162
+ </div>
163
+ @if (showErrors()) {
164
+ <m-input-errors [errors]="errors()" />
165
+ }
166
+ }
167
+ `, imports: [LabelComponent, ErrorsComponent, CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, styles: ["@keyframes toggle-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes thumb-slide{0%{transform:translate(0) scale(1)}50%{transform:translate(.3em) scale(.9)}to{transform:translate(.6em) scale(1)}}:host{display:contents}.otp-container{display:flex;gap:.375em;padding:2px;margin:-2px}.otp-container input{box-sizing:border-box;width:1.4em;height:2em;text-align:center;font-size:.9rem;font-weight:600;border:max(1px,1em * .0625) solid var(--m-input-color, var(--m-mm));border-radius:.4em;transition:border-color .2s ease,box-shadow .2s ease;text-transform:uppercase;background:transparent;color:var(--m-text)}.otp-container input:focus{outline:none;border-color:var(--m-text-input-focus-border, var(--m-focus));box-shadow:none}.otp-container input.error{border-color:var(--m-error);box-shadow:none}.otp-container input:disabled{background-color:var(--m-frame);cursor:not-allowed;color:var(--m-text-tertiary);border-color:var(--m-border);opacity:.6}\n"] }]
168
+ }], ctorParameters: () => [], propDecorators: { otpInputs: [{ type: i0.ViewChildren, args: ['otpInput', { isSignal: true }] }] } });
169
+
170
+ export { OtpInputComponent };
171
+ //# sourceMappingURL=magmonium-one-otp-2KL7aM-S.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"magmonium-one-otp-D-gA4qT1.mjs","sources":["../../../../libs/one/src/lib/shared/ui/input/ui/text/otp.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n computed,\n effect,\n ElementRef,\n signal,\n viewChildren,\n} from '@angular/core';\nimport { LabelComponent } from '../label';\nimport { ErrorsComponent } from '../errors';\nimport { BaseTextInputComponent } from './base-text';\nimport { CommonModule } from '@angular/common';\nimport { OtpInput } from '../../model/input';\n\n@Component({\n selector: 'm-otp-input',\n template: `\n @if (otpConfig(); as otp) {\n <m-label\n [for]=\"otp.name\"\n [placeholder]=\"otp.label\"\n [required]=\"required()\"\n [disabled]=\"disabled()\"\n />\n <div class=\"otp-container\">\n @for (item of otpArray(); track $index) {\n <input\n [id]=\"$index === 0 ? (otp.name ?? '') : ''\"\n #otpInput\n type=\"text\"\n maxlength=\"1\"\n [class.error]=\"showErrors()\"\n [disabled]=\"disabled()\"\n [value]=\"otpValues()[$index] || ''\"\n (input)=\"onInput($event, $index)\"\n (keydown)=\"onKeyDown($event, $index)\"\n (paste)=\"onPaste($event)\"\n />\n }\n </div>\n @if (showErrors()) {\n <m-input-errors [errors]=\"errors()\" />\n }\n }\n `,\n styleUrl: './otp.sass',\n imports: [LabelComponent, ErrorsComponent, CommonModule],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class OtpInputComponent extends BaseTextInputComponent<OtpInput> {\n otpValues = signal<string[]>([]);\n otpInputs = viewChildren<ElementRef<HTMLInputElement>>('otpInput');\n protected readonly otpConfig = computed(() => this.config() as OtpInput);\n otpArray = computed(() => {\n const length = this.otpConfig()?.length || 6;\n return Array(length).fill(0);\n });\n\n constructor() {\n super();\n effect(() => {\n const length = this.otpConfig()?.length || 6;\n this.otpValues.set(Array(length).fill(''));\n });\n effect(() => {\n const inputs = this.otpInputs();\n if (inputs.length > 0) {\n setTimeout(() => {\n inputs[0].nativeElement.focus();\n }, 0);\n }\n });\n }\n\n onInput(event: Event, index: number): void {\n const input = event.target as HTMLInputElement;\n let value = input.value;\n\n value = value.replace(/[^a-zA-Z0-9]/g, '');\n\n if (value.length > 1) {\n value = value.slice(-1);\n }\n\n input.value = value.toUpperCase();\n\n const newValues = [...this.otpValues()];\n newValues[index] = value.toUpperCase();\n this.otpValues.set(newValues);\n\n const length = this.otpConfig()?.length || 6;\n if (value && index < length - 1) {\n this.focusInput(index + 1);\n }\n this.updateValue();\n }\n\n onKeyDown(event: KeyboardEvent, index: number): void {\n const input = event.target as HTMLInputElement;\n const length = this.otpConfig()?.length || 6;\n\n const isAlphaNumeric = /^[a-zA-Z0-9]$/.test(event.key);\n const isControlKey = [\n 'Backspace',\n 'Delete',\n 'ArrowLeft',\n 'ArrowRight',\n 'Tab',\n ].includes(event.key);\n\n if (!isAlphaNumeric && !isControlKey) {\n event.preventDefault();\n return;\n }\n\n if (event.key === 'Backspace') {\n if (!input.value && index > 0) {\n this.focusInput(index - 1);\n }\n }\n if (event.key === 'ArrowLeft' && index > 0) {\n event.preventDefault();\n this.focusInput(index - 1);\n }\n if (event.key === 'ArrowRight' && index < length - 1) {\n event.preventDefault();\n this.focusInput(index + 1);\n }\n }\n\n onPaste(event: ClipboardEvent): void {\n event.preventDefault();\n event.stopPropagation();\n\n const length = this.otpConfig()?.length || 6;\n const pastedData = event.clipboardData?.getData('text') || '';\n\n const alphanumeric = pastedData\n .replace(/[^a-zA-Z0-9]/g, '')\n .slice(0, length);\n\n if (alphanumeric.length > 0) {\n const newValues = Array(length).fill('');\n alphanumeric.split('').forEach((char, index) => {\n if (index < length) {\n newValues[index] = char.toUpperCase();\n }\n });\n\n this.otpValues.set(newValues);\n this.updateValue();\n\n const focusIndex = Math.min(alphanumeric.length, length - 1);\n setTimeout(() => this.focusInput(focusIndex), 0);\n }\n }\n\n private focusInput(index: number): void {\n const inputs = this.otpInputs();\n if (inputs[index]) {\n inputs[index].nativeElement.focus();\n }\n }\n\n private updateValue(): void {\n const otpValue = this.otpValues().join('');\n this.setValue(otpValue);\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"magmonium-one-otp-2KL7aM-S.mjs","sources":["../../../../libs/one/src/lib/shared/ui/input/ui/text/otp.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n computed,\n effect,\n ElementRef,\n signal,\n viewChildren,\n} from '@angular/core';\nimport { LabelComponent } from '../label';\nimport { ErrorsComponent } from '../errors';\nimport { BaseTextInputComponent } from './base-text';\nimport { CommonModule } from '@angular/common';\nimport { OtpInput } from '../../model/input';\n\n@Component({\n selector: 'm-otp-input',\n template: `\n @if (otpConfig(); as otp) {\n <m-label\n [for]=\"otp.name\"\n [placeholder]=\"otp.label\"\n [required]=\"required()\"\n [disabled]=\"disabled()\"\n />\n <div class=\"otp-container\">\n @for (item of otpArray(); track $index) {\n <input\n [id]=\"$index === 0 ? (otp.name ?? '') : ''\"\n #otpInput\n type=\"text\"\n maxlength=\"1\"\n [class.error]=\"showErrors()\"\n [disabled]=\"disabled()\"\n [value]=\"otpValues()[$index] || ''\"\n (input)=\"onInput($event, $index)\"\n (keydown)=\"onKeyDown($event, $index)\"\n (paste)=\"onPaste($event)\"\n />\n }\n </div>\n @if (showErrors()) {\n <m-input-errors [errors]=\"errors()\" />\n }\n }\n `,\n styleUrl: './otp.sass',\n imports: [LabelComponent, ErrorsComponent, CommonModule],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class OtpInputComponent extends BaseTextInputComponent<OtpInput> {\n otpValues = signal<string[]>([]);\n otpInputs = viewChildren<ElementRef<HTMLInputElement>>('otpInput');\n protected readonly otpConfig = computed(() => this.config() as OtpInput);\n otpArray = computed(() => {\n const length = this.otpConfig()?.length || 6;\n return Array(length).fill(0);\n });\n\n constructor() {\n super();\n effect(() => {\n const length = this.otpConfig()?.length || 6;\n this.otpValues.set(Array(length).fill(''));\n });\n effect(() => {\n const inputs = this.otpInputs();\n if (inputs.length > 0) {\n setTimeout(() => {\n inputs[0].nativeElement.focus();\n }, 0);\n }\n });\n }\n\n onInput(event: Event, index: number): void {\n const input = event.target as HTMLInputElement;\n let value = input.value;\n\n value = value.replace(/[^a-zA-Z0-9]/g, '');\n\n if (value.length > 1) {\n value = value.slice(-1);\n }\n\n input.value = value.toUpperCase();\n\n const newValues = [...this.otpValues()];\n newValues[index] = value.toUpperCase();\n this.otpValues.set(newValues);\n\n const length = this.otpConfig()?.length || 6;\n if (value && index < length - 1) {\n this.focusInput(index + 1);\n }\n this.updateValue();\n }\n\n onKeyDown(event: KeyboardEvent, index: number): void {\n const input = event.target as HTMLInputElement;\n const length = this.otpConfig()?.length || 6;\n\n const isAlphaNumeric = /^[a-zA-Z0-9]$/.test(event.key);\n const isControlKey = [\n 'Backspace',\n 'Delete',\n 'ArrowLeft',\n 'ArrowRight',\n 'Tab',\n ].includes(event.key);\n\n if (!isAlphaNumeric && !isControlKey) {\n event.preventDefault();\n return;\n }\n\n if (event.key === 'Backspace') {\n if (!input.value && index > 0) {\n this.focusInput(index - 1);\n }\n }\n if (event.key === 'ArrowLeft' && index > 0) {\n event.preventDefault();\n this.focusInput(index - 1);\n }\n if (event.key === 'ArrowRight' && index < length - 1) {\n event.preventDefault();\n this.focusInput(index + 1);\n }\n }\n\n onPaste(event: ClipboardEvent): void {\n event.preventDefault();\n event.stopPropagation();\n\n const length = this.otpConfig()?.length || 6;\n const pastedData = event.clipboardData?.getData('text') || '';\n\n const alphanumeric = pastedData\n .replace(/[^a-zA-Z0-9]/g, '')\n .slice(0, length);\n\n if (alphanumeric.length > 0) {\n const newValues = Array(length).fill('');\n alphanumeric.split('').forEach((char, index) => {\n if (index < length) {\n newValues[index] = char.toUpperCase();\n }\n });\n\n this.otpValues.set(newValues);\n this.updateValue();\n\n const focusIndex = Math.min(alphanumeric.length, length - 1);\n setTimeout(() => this.focusInput(focusIndex), 0);\n }\n }\n\n private focusInput(index: number): void {\n const inputs = this.otpInputs();\n if (inputs[index]) {\n inputs[index].nativeElement.focus();\n }\n }\n\n private updateValue(): void {\n const otpValue = this.otpValues().join('');\n this.setValue(otpValue);\n }\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,87 @@
1
+ import * as i0 from '@angular/core';
2
+ import { signal, computed, ChangeDetectionStrategy, Component } from '@angular/core';
3
+ import { a as BaseTextInputComponent, L as LabelComponent, E as ErrorsComponent, b as ButtonComponent } from './magmonium-one-magmonium-one-CCzzYU2z.mjs';
4
+
5
+ class PasswordInputComponent extends BaseTextInputComponent {
6
+ isPassword = signal(true, ...(ngDevMode ? [{ debugName: "isPassword" }] : /* istanbul ignore next */ []));
7
+ type = computed(() => (this.isPassword() ? 'password' : 'text'), ...(ngDevMode ? [{ debugName: "type" }] : /* istanbul ignore next */ []));
8
+ button = computed(() => (!this.isPassword() ? 'eye' : 'eye_close'), ...(ngDevMode ? [{ debugName: "button" }] : /* istanbul ignore next */ []));
9
+ toggleType() {
10
+ this.isPassword.update((now) => !now);
11
+ }
12
+ onInput(event) {
13
+ const target = event.target;
14
+ this.setValue(target?.value ?? '');
15
+ }
16
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: PasswordInputComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
17
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: PasswordInputComponent, isStandalone: true, selector: "m-password-input", usesInheritance: true, ngImport: i0, template: `
18
+ @if (config(); as text) {
19
+ <m-label
20
+ [for]="text.name"
21
+ [placeholder]="text.label"
22
+ [required]="required()"
23
+ [disabled]="disabled()"
24
+ />
25
+ <div class="input-wrapper">
26
+ <input
27
+ [id]="text.name ?? ''"
28
+ [value]="value()"
29
+ #inputElement
30
+ [class.error]="showErrors()"
31
+ [disabled]="disabled()"
32
+ (input)="onInput($event)"
33
+ (focus)="isFocused.set(true)"
34
+ (blur)="isFocused.set(false); touched.set(true)"
35
+ [type]="type()"
36
+ />
37
+ <m-one-button
38
+ [disabled]="disabled()"
39
+ [name]="button()"
40
+ [color]="iconColor()"
41
+ (clicked)="toggleType()"
42
+ />
43
+ </div>
44
+ @if (showErrors()) {
45
+ <m-input-errors [errors]="errors()" />
46
+ }
47
+ }
48
+ `, isInline: true, styles: ["@keyframes toggle-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes thumb-slide{0%{transform:translate(0) scale(1)}50%{transform:translate(.3em) scale(.9)}to{transform:translate(.6em) scale(1)}}:host{display:block;width:100%}.input-wrapper{display:flex;align-items:center;background:var(--m-background);height:calc(var(--input-size, 1em) * 2);min-height:calc(var(--input-size, 1em) * 2);border-width:max(1px,var(--input-size, 1em) * .0625);border-radius:calc(var(--input-size, 1em) * .4);padding:calc(var(--input-size, 1em) * .5) calc(var(--input-size, 1em) * .5);gap:calc(var(--input-size, 1em) * .375);font-size:var(--input-size, 1em);border-width:var(--m-input-border-width, 2px);border-radius:var(--m-input-radius, 4px);height:calc(var(--input-size, 1em) * 2.25);min-height:calc(var(--input-size, 1em) * 2.25);padding-top:0;padding-bottom:0;border-color:var(--m-input-color, var(--m-mm));transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease,opacity .2s ease}.input-wrapper:hover:not(:disabled){background-color:color-mix(in srgb,var(--m-input-color, var(--m-mm)) 6%,transparent)}.input-wrapper:focus-visible:not(:disabled),.input-wrapper:focus-within:not(:disabled){box-shadow:0 0 0 2px color-mix(in srgb,var(--m-input-color, var(--m-mm)) 20%,transparent)}.input-wrapper:disabled{opacity:.6;cursor:not-allowed}.input-wrapper{border-style:solid;backdrop-filter:var(--m-text-input-backdrop-filter, none);-webkit-backdrop-filter:var(--m-text-input-backdrop-filter, none);box-shadow:var(--m-text-input-shadow, none)}.input-wrapper:has(>m-one-button,>m-button,>.input-indicator,>.input-suffix,>m-icon:last-child){padding-right:0}.input-wrapper:focus-visible:not(:disabled),.input-wrapper:focus-within:not(:disabled){border-color:var(--m-text-input-focus-border, var(--m-focus));box-shadow:var(--m-text-input-shadow, none)}.input-wrapper:has(.error){border-color:var(--m-error);box-shadow:none}.input-wrapper:has(.error):focus-within{border-color:var(--m-error);box-shadow:none}.input-wrapper input,.input-wrapper textarea{flex:1;border:none;outline:none;background:transparent;color:var(--m-text);font-family:inherit;font-size:inherit;padding:0}.input-wrapper input:focus,.input-wrapper textarea:focus{border-color:transparent;box-shadow:none}.input-wrapper{width:100%;background:var(--m-password-input-background, var(--m-background));border-color:var(--m-password-input-border, var(--m-input-color, var(--m-mm)))}.input-wrapper:hover{border-color:var(--m-password-input-hover-border, color-mix(in srgb, var(--m-input-color, var(--m-mm)) 45%, rgba(0, 0, 0, .12)))}.input-wrapper .m-icon{--m-icon-size: 1.1em !important}.input-wrapper input{appearance:none;font-size:1em}.input-wrapper .m-one-button{height:100%;display:flex;align-items:center;justify-content:center;--m-button-size: 1em !important}\n"], dependencies: [{ kind: "component", type: LabelComponent, selector: "m-label", inputs: ["for", "placeholder", "required", "disabled", "color"] }, { kind: "component", type: ErrorsComponent, selector: "m-input-errors", inputs: ["errors"] }, { kind: "component", type: ButtonComponent, selector: "m-button,m-one-button", inputs: ["config", "color", "labelClass", "fullWidth", "url", "murl", "disabled", "variant", "name", "baseUrl", "one", "remote", "label", "noTranslate", "icon", "isRightIcon", "iconOnly", "stacked", "imgSrc", "nonClickable", "inverted", "type"], outputs: ["configChange", "clicked"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
49
+ }
50
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: PasswordInputComponent, decorators: [{
51
+ type: Component,
52
+ args: [{ selector: 'm-password-input', template: `
53
+ @if (config(); as text) {
54
+ <m-label
55
+ [for]="text.name"
56
+ [placeholder]="text.label"
57
+ [required]="required()"
58
+ [disabled]="disabled()"
59
+ />
60
+ <div class="input-wrapper">
61
+ <input
62
+ [id]="text.name ?? ''"
63
+ [value]="value()"
64
+ #inputElement
65
+ [class.error]="showErrors()"
66
+ [disabled]="disabled()"
67
+ (input)="onInput($event)"
68
+ (focus)="isFocused.set(true)"
69
+ (blur)="isFocused.set(false); touched.set(true)"
70
+ [type]="type()"
71
+ />
72
+ <m-one-button
73
+ [disabled]="disabled()"
74
+ [name]="button()"
75
+ [color]="iconColor()"
76
+ (clicked)="toggleType()"
77
+ />
78
+ </div>
79
+ @if (showErrors()) {
80
+ <m-input-errors [errors]="errors()" />
81
+ }
82
+ }
83
+ `, imports: [LabelComponent, ErrorsComponent, ButtonComponent], changeDetection: ChangeDetectionStrategy.OnPush, styles: ["@keyframes toggle-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes thumb-slide{0%{transform:translate(0) scale(1)}50%{transform:translate(.3em) scale(.9)}to{transform:translate(.6em) scale(1)}}:host{display:block;width:100%}.input-wrapper{display:flex;align-items:center;background:var(--m-background);height:calc(var(--input-size, 1em) * 2);min-height:calc(var(--input-size, 1em) * 2);border-width:max(1px,var(--input-size, 1em) * .0625);border-radius:calc(var(--input-size, 1em) * .4);padding:calc(var(--input-size, 1em) * .5) calc(var(--input-size, 1em) * .5);gap:calc(var(--input-size, 1em) * .375);font-size:var(--input-size, 1em);border-width:var(--m-input-border-width, 2px);border-radius:var(--m-input-radius, 4px);height:calc(var(--input-size, 1em) * 2.25);min-height:calc(var(--input-size, 1em) * 2.25);padding-top:0;padding-bottom:0;border-color:var(--m-input-color, var(--m-mm));transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease,opacity .2s ease}.input-wrapper:hover:not(:disabled){background-color:color-mix(in srgb,var(--m-input-color, var(--m-mm)) 6%,transparent)}.input-wrapper:focus-visible:not(:disabled),.input-wrapper:focus-within:not(:disabled){box-shadow:0 0 0 2px color-mix(in srgb,var(--m-input-color, var(--m-mm)) 20%,transparent)}.input-wrapper:disabled{opacity:.6;cursor:not-allowed}.input-wrapper{border-style:solid;backdrop-filter:var(--m-text-input-backdrop-filter, none);-webkit-backdrop-filter:var(--m-text-input-backdrop-filter, none);box-shadow:var(--m-text-input-shadow, none)}.input-wrapper:has(>m-one-button,>m-button,>.input-indicator,>.input-suffix,>m-icon:last-child){padding-right:0}.input-wrapper:focus-visible:not(:disabled),.input-wrapper:focus-within:not(:disabled){border-color:var(--m-text-input-focus-border, var(--m-focus));box-shadow:var(--m-text-input-shadow, none)}.input-wrapper:has(.error){border-color:var(--m-error);box-shadow:none}.input-wrapper:has(.error):focus-within{border-color:var(--m-error);box-shadow:none}.input-wrapper input,.input-wrapper textarea{flex:1;border:none;outline:none;background:transparent;color:var(--m-text);font-family:inherit;font-size:inherit;padding:0}.input-wrapper input:focus,.input-wrapper textarea:focus{border-color:transparent;box-shadow:none}.input-wrapper{width:100%;background:var(--m-password-input-background, var(--m-background));border-color:var(--m-password-input-border, var(--m-input-color, var(--m-mm)))}.input-wrapper:hover{border-color:var(--m-password-input-hover-border, color-mix(in srgb, var(--m-input-color, var(--m-mm)) 45%, rgba(0, 0, 0, .12)))}.input-wrapper .m-icon{--m-icon-size: 1.1em !important}.input-wrapper input{appearance:none;font-size:1em}.input-wrapper .m-one-button{height:100%;display:flex;align-items:center;justify-content:center;--m-button-size: 1em !important}\n"] }]
84
+ }] });
85
+
86
+ export { PasswordInputComponent };
87
+ //# sourceMappingURL=magmonium-one-password-a-Le8Z1I.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"magmonium-one-password-BOsM6-nh.mjs","sources":["../../../../libs/one/src/lib/shared/ui/input/ui/text/password.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n computed,\n signal,\n} from '@angular/core';\nimport { LabelComponent } from '../label';\nimport { ErrorsComponent } from '../errors';\nimport { BaseTextInputComponent } from './base-text';\nimport { ButtonComponent } from '../../../button/ui/button';\n\n@Component({\n selector: 'm-password-input',\n template: `\n @if (config(); as text) {\n <m-label\n [for]=\"text.name\"\n [placeholder]=\"text.label\"\n [required]=\"required()\"\n [disabled]=\"disabled()\"\n />\n <div class=\"input-wrapper\">\n <input\n [id]=\"text.name ?? ''\"\n [value]=\"value()\"\n #inputElement\n [class.error]=\"showErrors()\"\n [disabled]=\"disabled()\"\n (input)=\"onInput($event)\"\n (focus)=\"isFocused.set(true)\"\n (blur)=\"isFocused.set(false); touched.set(true)\"\n [type]=\"type()\"\n />\n <m-one-button\n [disabled]=\"disabled()\"\n [name]=\"button()\"\n [color]=\"iconColor()\"\n (clicked)=\"toggleType()\"\n />\n </div>\n @if (showErrors()) {\n <m-input-errors [errors]=\"errors()\" />\n }\n }\n `,\n imports: [LabelComponent, ErrorsComponent, ButtonComponent],\n styleUrl: './password.sass',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PasswordInputComponent extends BaseTextInputComponent {\n isPassword = signal<boolean>(true);\n type = computed(() => (this.isPassword() ? 'password' : 'text'));\n button = computed(() => (!this.isPassword() ? 'eye' : 'eye_close'));\n\n protected toggleType() {\n this.isPassword.update((now) => !now);\n }\n\n protected onInput(event: Event): void {\n const target = event.target as HTMLInputElement;\n this.setValue(target?.value ?? '');\n }\n}\n"],"names":[],"mappings":";;;;AAiDM,MAAO,sBAAuB,SAAQ,sBAAsB,CAAA;AAChE,IAAA,UAAU,GAAG,MAAM,CAAU,IAAI,iFAAC;IAClC,IAAI,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,UAAU,EAAE,GAAG,UAAU,GAAG,MAAM,CAAC,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;IAChE,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,KAAK,GAAG,WAAW,CAAC,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,QAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;IAEzD,UAAU,GAAA;AAClB,QAAA,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC;IACvC;AAEU,IAAA,OAAO,CAAC,KAAY,EAAA;AAC5B,QAAA,MAAM,MAAM,GAAG,KAAK,CAAC,MAA0B;QAC/C,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC;IACpC;uGAZW,sBAAsB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAtB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EApCvB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,mjUAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACS,cAAc,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,KAAA,EAAA,aAAA,EAAA,UAAA,EAAA,UAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,eAAe,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,eAAe,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,OAAA,EAAA,YAAA,EAAA,WAAA,EAAA,KAAA,EAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,MAAA,EAAA,SAAA,EAAA,KAAA,EAAA,QAAA,EAAA,OAAA,EAAA,aAAA,EAAA,MAAA,EAAA,aAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,cAAA,EAAA,UAAA,EAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAI/C,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAtClC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,kBAAkB,EAAA,QAAA,EAClB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BT,EAAA,OAAA,EACQ,CAAC,cAAc,EAAE,eAAe,EAAE,eAAe,CAAC,EAAA,eAAA,EAE1C,uBAAuB,CAAC,MAAM,EAAA,MAAA,EAAA,CAAA,mjUAAA,CAAA,EAAA;;;;;"}
1
+ {"version":3,"file":"magmonium-one-password-a-Le8Z1I.mjs","sources":["../../../../libs/one/src/lib/shared/ui/input/ui/text/password.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n computed,\n signal,\n} from '@angular/core';\nimport { LabelComponent } from '../label';\nimport { ErrorsComponent } from '../errors';\nimport { BaseTextInputComponent } from './base-text';\nimport { ButtonComponent } from '../../../button/ui/button';\n\n@Component({\n selector: 'm-password-input',\n template: `\n @if (config(); as text) {\n <m-label\n [for]=\"text.name\"\n [placeholder]=\"text.label\"\n [required]=\"required()\"\n [disabled]=\"disabled()\"\n />\n <div class=\"input-wrapper\">\n <input\n [id]=\"text.name ?? ''\"\n [value]=\"value()\"\n #inputElement\n [class.error]=\"showErrors()\"\n [disabled]=\"disabled()\"\n (input)=\"onInput($event)\"\n (focus)=\"isFocused.set(true)\"\n (blur)=\"isFocused.set(false); touched.set(true)\"\n [type]=\"type()\"\n />\n <m-one-button\n [disabled]=\"disabled()\"\n [name]=\"button()\"\n [color]=\"iconColor()\"\n (clicked)=\"toggleType()\"\n />\n </div>\n @if (showErrors()) {\n <m-input-errors [errors]=\"errors()\" />\n }\n }\n `,\n imports: [LabelComponent, ErrorsComponent, ButtonComponent],\n styleUrl: './password.sass',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PasswordInputComponent extends BaseTextInputComponent {\n isPassword = signal<boolean>(true);\n type = computed(() => (this.isPassword() ? 'password' : 'text'));\n button = computed(() => (!this.isPassword() ? 'eye' : 'eye_close'));\n\n protected toggleType() {\n this.isPassword.update((now) => !now);\n }\n\n protected onInput(event: Event): void {\n const target = event.target as HTMLInputElement;\n this.setValue(target?.value ?? '');\n }\n}\n"],"names":[],"mappings":";;;;AAiDM,MAAO,sBAAuB,SAAQ,sBAAsB,CAAA;AAChE,IAAA,UAAU,GAAG,MAAM,CAAU,IAAI,iFAAC;IAClC,IAAI,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,UAAU,EAAE,GAAG,UAAU,GAAG,MAAM,CAAC,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;IAChE,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,KAAK,GAAG,WAAW,CAAC,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,QAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;IAEzD,UAAU,GAAA;AAClB,QAAA,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC;IACvC;AAEU,IAAA,OAAO,CAAC,KAAY,EAAA;AAC5B,QAAA,MAAM,MAAM,GAAG,KAAK,CAAC,MAA0B;QAC/C,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC;IACpC;uGAZW,sBAAsB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAtB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EApCvB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,+xFAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACS,cAAc,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,KAAA,EAAA,aAAA,EAAA,UAAA,EAAA,UAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,eAAe,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,eAAe,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,OAAA,EAAA,YAAA,EAAA,WAAA,EAAA,KAAA,EAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,MAAA,EAAA,SAAA,EAAA,KAAA,EAAA,QAAA,EAAA,OAAA,EAAA,aAAA,EAAA,MAAA,EAAA,aAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,cAAA,EAAA,UAAA,EAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAI/C,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAtClC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,kBAAkB,EAAA,QAAA,EAClB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BT,EAAA,OAAA,EACQ,CAAC,cAAc,EAAE,eAAe,EAAE,eAAe,CAAC,EAAA,eAAA,EAE1C,uBAAuB,CAAC,MAAM,EAAA,MAAA,EAAA,CAAA,+xFAAA,CAAA,EAAA;;;;;"}
@@ -0,0 +1,62 @@
1
+ import * as i0 from '@angular/core';
2
+ import { model, input, computed, ChangeDetectionStrategy, Component } from '@angular/core';
3
+ import { B as BaseInputComponent, T as TranslatePipe } from './magmonium-one-magmonium-one-CCzzYU2z.mjs';
4
+
5
+ class ToggleInputComponent extends BaseInputComponent {
6
+ value = undefined;
7
+ checked = model(false);
8
+ config = input(...(ngDevMode ? [undefined, { debugName: "config" }] : /* istanbul ignore next */ []));
9
+ required = input(false, ...(ngDevMode ? [{ debugName: "required" }] : /* istanbul ignore next */ []));
10
+ disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled" }] : /* istanbul ignore next */ []));
11
+ invalid = input(false, ...(ngDevMode ? [{ debugName: "invalid" }] : /* istanbul ignore next */ []));
12
+ touched = model(false, ...(ngDevMode ? [{ debugName: "touched" }] : /* istanbul ignore next */ []));
13
+ focused = input(false, ...(ngDevMode ? [{ debugName: "focused" }] : /* istanbul ignore next */ []));
14
+ errors = input([], ...(ngDevMode ? [{ debugName: "errors" }] : /* istanbul ignore next */ []));
15
+ showErrors = computed(() => this.touched() && this.invalid(), ...(ngDevMode ? [{ debugName: "showErrors" }] : /* istanbul ignore next */ []));
16
+ /** Required by FormCheckboxControl interface */
17
+ // public readonly checked: ModelSignal<boolean> = this.value; // Already defined above
18
+ constructor() {
19
+ super();
20
+ }
21
+ onChange(event) {
22
+ const target = event.target;
23
+ this.checked.set(target?.checked ?? false);
24
+ }
25
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: ToggleInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
26
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: ToggleInputComponent, isStandalone: true, selector: "m-toggle-input", inputs: { checked: { classPropertyName: "checked", publicName: "checked", isSignal: true, isRequired: false, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, invalid: { classPropertyName: "invalid", publicName: "invalid", isSignal: true, isRequired: false, transformFunction: null }, touched: { classPropertyName: "touched", publicName: "touched", isSignal: true, isRequired: false, transformFunction: null }, focused: { classPropertyName: "focused", publicName: "focused", isSignal: true, isRequired: false, transformFunction: null }, errors: { classPropertyName: "errors", publicName: "errors", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { checked: "checkedChange", touched: "touchedChange" }, usesInheritance: true, ngImport: i0, template: `
27
+ @if (config(); as toggle) {
28
+ <div class="toggle">
29
+ <input
30
+ [id]="toggle.name ?? ''"
31
+ [checked]="checked()"
32
+ (change)="onChange($event)"
33
+ type="checkbox"
34
+ />
35
+ <label [attr.for]="toggle.name || null">{{
36
+ toggle.label | translate
37
+ }}</label>
38
+ </div>
39
+ }
40
+ `, isInline: true, styles: ["@keyframes toggle-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes thumb-slide{0%{transform:translate(0) scale(1)}50%{transform:translate(.3em) scale(.9)}to{transform:translate(.6em) scale(1)}}:host{display:inline-block}.toggle{display:inline-flex;align-items:center;gap:.375em;cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.toggle input[type=checkbox]{appearance:none;-webkit-appearance:none;-moz-appearance:none;position:relative;width:1.6em;height:1em;background-color:color-mix(in srgb,var(--m-toggle-input-color, #4169e1) 15%,transparent 85%);border-radius:.5em;border:max(1px,1em * .0625) solid color-mix(in srgb,var(--m-toggle-input-color, #4169e1) 20%,transparent 80%);cursor:pointer;outline:none;box-sizing:content-box;flex-shrink:0;margin:0;transition:background-color .25s cubic-bezier(.4,0,.2,1),box-shadow .25s cubic-bezier(.4,0,.2,1),border-color .2s ease;will-change:background-color,box-shadow}.toggle input[type=checkbox]:after{content:\"\";position:absolute;top:.125em;left:.125em;width:.75em;height:.75em;background-color:var(--m-toggle-input-color-contrast, #ffffff);border-radius:50%;transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .15s ease;will-change:transform;box-shadow:0 .1em .1666666667em #0003,0 .05em .0833333333em #0000001a}.toggle label{font-size:.8em;line-height:1.2;cursor:pointer;margin:0;color:color-mix(in srgb,var(--m-toggle-input-color, #4169e1) 70%,black 30%);transition:color .2s ease,font-weight .15s ease}.toggle input[type=checkbox]:hover:not(:disabled){background-color:color-mix(in srgb,var(--m-toggle-input-color, #4169e1) 25%,transparent 75%);border-color:color-mix(in srgb,var(--m-toggle-input-color, #4169e1) 40%,transparent 60%)}.toggle input[type=checkbox]:hover:not(:disabled):after{box-shadow:0 .125em .2em #00000040,0 .0625em .1em #00000026}.toggle input[type=checkbox]:focus{box-shadow:0 0 0 .2em color-mix(in srgb,var(--m-toggle-input-color, #4169e1) 20%,transparent 80%);outline:none}.toggle input[type=checkbox]:active:not(:disabled):after{transform:scaleX(1.15)}.toggle input[type=checkbox]:checked{background-color:var(--m-toggle-input-color, #4169e1);border-color:var(--m-toggle-input-color, #4169e1)}.toggle input[type=checkbox]:checked:after{transform:translate(.6em);background-color:var(--m-toggle-input-color-contrast, #ffffff)}.toggle input[type=checkbox]:checked:hover:not(:disabled){background-color:color-mix(in srgb,var(--m-toggle-input-color, #4169e1) 90%,black 10%);border-color:color-mix(in srgb,var(--m-toggle-input-color, #4169e1) 90%,black 10%)}.toggle input[type=checkbox]:checked:active:not(:disabled):after{transform:translate(.6em) scaleX(1.15)}.toggle input[type=checkbox]:checked:focus{box-shadow:0 0 0 .2em color-mix(in srgb,var(--m-toggle-input-color, #4169e1) 25%,transparent 75%)}.toggle input[type=checkbox]:checked+label{color:var(--m-toggle-input-color, #4169e1)}.toggle input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed;background-color:color-mix(in srgb,var(--m-toggle-input-color, #4169e1) 10%,transparent 90%);border-color:color-mix(in srgb,var(--m-toggle-input-color, #4169e1) 15%,transparent 85%)}.toggle input[type=checkbox]:disabled+label{opacity:.5;cursor:not-allowed}.toggle input[type=checkbox]:disabled:checked{background-color:color-mix(in srgb,var(--m-toggle-input-color, #4169e1) 50%,transparent 50%)}.toggle{min-height:1em}.toggle--row{flex-direction:row}\n"], dependencies: [{ kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
41
+ }
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: ToggleInputComponent, decorators: [{
43
+ type: Component,
44
+ args: [{ selector: 'm-toggle-input', template: `
45
+ @if (config(); as toggle) {
46
+ <div class="toggle">
47
+ <input
48
+ [id]="toggle.name ?? ''"
49
+ [checked]="checked()"
50
+ (change)="onChange($event)"
51
+ type="checkbox"
52
+ />
53
+ <label [attr.for]="toggle.name || null">{{
54
+ toggle.label | translate
55
+ }}</label>
56
+ </div>
57
+ }
58
+ `, imports: [TranslatePipe], changeDetection: ChangeDetectionStrategy.OnPush, styles: ["@keyframes toggle-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes thumb-slide{0%{transform:translate(0) scale(1)}50%{transform:translate(.3em) scale(.9)}to{transform:translate(.6em) scale(1)}}:host{display:inline-block}.toggle{display:inline-flex;align-items:center;gap:.375em;cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.toggle input[type=checkbox]{appearance:none;-webkit-appearance:none;-moz-appearance:none;position:relative;width:1.6em;height:1em;background-color:color-mix(in srgb,var(--m-toggle-input-color, #4169e1) 15%,transparent 85%);border-radius:.5em;border:max(1px,1em * .0625) solid color-mix(in srgb,var(--m-toggle-input-color, #4169e1) 20%,transparent 80%);cursor:pointer;outline:none;box-sizing:content-box;flex-shrink:0;margin:0;transition:background-color .25s cubic-bezier(.4,0,.2,1),box-shadow .25s cubic-bezier(.4,0,.2,1),border-color .2s ease;will-change:background-color,box-shadow}.toggle input[type=checkbox]:after{content:\"\";position:absolute;top:.125em;left:.125em;width:.75em;height:.75em;background-color:var(--m-toggle-input-color-contrast, #ffffff);border-radius:50%;transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .15s ease;will-change:transform;box-shadow:0 .1em .1666666667em #0003,0 .05em .0833333333em #0000001a}.toggle label{font-size:.8em;line-height:1.2;cursor:pointer;margin:0;color:color-mix(in srgb,var(--m-toggle-input-color, #4169e1) 70%,black 30%);transition:color .2s ease,font-weight .15s ease}.toggle input[type=checkbox]:hover:not(:disabled){background-color:color-mix(in srgb,var(--m-toggle-input-color, #4169e1) 25%,transparent 75%);border-color:color-mix(in srgb,var(--m-toggle-input-color, #4169e1) 40%,transparent 60%)}.toggle input[type=checkbox]:hover:not(:disabled):after{box-shadow:0 .125em .2em #00000040,0 .0625em .1em #00000026}.toggle input[type=checkbox]:focus{box-shadow:0 0 0 .2em color-mix(in srgb,var(--m-toggle-input-color, #4169e1) 20%,transparent 80%);outline:none}.toggle input[type=checkbox]:active:not(:disabled):after{transform:scaleX(1.15)}.toggle input[type=checkbox]:checked{background-color:var(--m-toggle-input-color, #4169e1);border-color:var(--m-toggle-input-color, #4169e1)}.toggle input[type=checkbox]:checked:after{transform:translate(.6em);background-color:var(--m-toggle-input-color-contrast, #ffffff)}.toggle input[type=checkbox]:checked:hover:not(:disabled){background-color:color-mix(in srgb,var(--m-toggle-input-color, #4169e1) 90%,black 10%);border-color:color-mix(in srgb,var(--m-toggle-input-color, #4169e1) 90%,black 10%)}.toggle input[type=checkbox]:checked:active:not(:disabled):after{transform:translate(.6em) scaleX(1.15)}.toggle input[type=checkbox]:checked:focus{box-shadow:0 0 0 .2em color-mix(in srgb,var(--m-toggle-input-color, #4169e1) 25%,transparent 75%)}.toggle input[type=checkbox]:checked+label{color:var(--m-toggle-input-color, #4169e1)}.toggle input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed;background-color:color-mix(in srgb,var(--m-toggle-input-color, #4169e1) 10%,transparent 90%);border-color:color-mix(in srgb,var(--m-toggle-input-color, #4169e1) 15%,transparent 85%)}.toggle input[type=checkbox]:disabled+label{opacity:.5;cursor:not-allowed}.toggle input[type=checkbox]:disabled:checked{background-color:color-mix(in srgb,var(--m-toggle-input-color, #4169e1) 50%,transparent 50%)}.toggle{min-height:1em}.toggle--row{flex-direction:row}\n"] }]
59
+ }], ctorParameters: () => [], propDecorators: { checked: [{ type: i0.Input, args: [{ isSignal: true, alias: "checked", required: false }] }, { type: i0.Output, args: ["checkedChange"] }], config: [{ type: i0.Input, args: [{ isSignal: true, alias: "config", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], invalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "invalid", required: false }] }], touched: [{ type: i0.Input, args: [{ isSignal: true, alias: "touched", required: false }] }, { type: i0.Output, args: ["touchedChange"] }], focused: [{ type: i0.Input, args: [{ isSignal: true, alias: "focused", required: false }] }], errors: [{ type: i0.Input, args: [{ isSignal: true, alias: "errors", required: false }] }] } });
60
+
61
+ export { ToggleInputComponent };
62
+ //# sourceMappingURL=magmonium-one-toggle-B7q3Vvpg.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"magmonium-one-toggle-DVSWH4qB.mjs","sources":["../../../../libs/one/src/lib/shared/ui/input/ui/toggle/toggle.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n computed,\n input,\n model,\n ModelSignal,\n} from '@angular/core';\nimport { ToggleInput } from '../../model/input';\nimport { TranslatePipe } from '../../../../pipe/translate';\nimport {\n FormCheckboxControl,\n ValidationError,\n WithOptionalField,\n} from '@angular/forms/signals';\nimport { BaseInputComponent } from '../../lib/base-input';\n\n@Component({\n selector: 'm-toggle-input',\n template: `\n @if (config(); as toggle) {\n <div class=\"toggle\">\n <input\n [id]=\"toggle.name ?? ''\"\n [checked]=\"checked()\"\n (change)=\"onChange($event)\"\n type=\"checkbox\"\n />\n <label [attr.for]=\"toggle.name || null\">{{\n toggle.label | translate\n }}</label>\n </div>\n }\n `,\n imports: [TranslatePipe],\n styleUrl: './toggle.sass',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ToggleInputComponent\n extends BaseInputComponent<ToggleInput>\n implements FormCheckboxControl\n{\n public value = undefined;\n public checked = model<boolean>(false) as ModelSignal<boolean>;\n public override config = input<Partial<ToggleInput> | undefined>();\n public override required = input<boolean>(false);\n public override disabled = input<boolean>(false);\n public override invalid = input<boolean>(false);\n public override touched = model<boolean>(false);\n public override focused = input<boolean>(false);\n public override errors = input<readonly WithOptionalField<ValidationError>[]>(\n []\n );\n public override showErrors = computed(() => this.touched() && this.invalid());\n\n /** Required by FormCheckboxControl interface */\n // public readonly checked: ModelSignal<boolean> = this.value; // Already defined above\n\n constructor() {\n super();\n }\n\n protected onChange(event: Event): void {\n const target = event.target as HTMLInputElement;\n this.checked.set(target?.checked ?? false);\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"magmonium-one-toggle-B7q3Vvpg.mjs","sources":["../../../../libs/one/src/lib/shared/ui/input/ui/toggle/toggle.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n computed,\n input,\n model,\n ModelSignal,\n} from '@angular/core';\nimport { ToggleInput } from '../../model/input';\nimport { TranslatePipe } from '../../../../pipe/translate';\nimport {\n FormCheckboxControl,\n ValidationError,\n WithOptionalField,\n} from '@angular/forms/signals';\nimport { BaseInputComponent } from '../../lib/base-input';\n\n@Component({\n selector: 'm-toggle-input',\n template: `\n @if (config(); as toggle) {\n <div class=\"toggle\">\n <input\n [id]=\"toggle.name ?? ''\"\n [checked]=\"checked()\"\n (change)=\"onChange($event)\"\n type=\"checkbox\"\n />\n <label [attr.for]=\"toggle.name || null\">{{\n toggle.label | translate\n }}</label>\n </div>\n }\n `,\n imports: [TranslatePipe],\n styleUrl: './toggle.sass',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ToggleInputComponent\n extends BaseInputComponent<ToggleInput>\n implements FormCheckboxControl\n{\n public value = undefined;\n public checked = model<boolean>(false) as ModelSignal<boolean>;\n public override config = input<Partial<ToggleInput> | undefined>();\n public override required = input<boolean>(false);\n public override disabled = input<boolean>(false);\n public override invalid = input<boolean>(false);\n public override touched = model<boolean>(false);\n public override focused = input<boolean>(false);\n public override errors = input<readonly WithOptionalField<ValidationError>[]>(\n []\n );\n public override showErrors = computed(() => this.touched() && this.invalid());\n\n /** Required by FormCheckboxControl interface */\n // public readonly checked: ModelSignal<boolean> = this.value; // Already defined above\n\n constructor() {\n super();\n }\n\n protected onChange(event: Event): void {\n const target = event.target as HTMLInputElement;\n this.checked.set(target?.checked ?? false);\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export { A as APP_CONTEXT_REF, c as ASSET_BASE_URL, d as AccordionBodyDirective, e as AccordionComponent, f as AccordionGroupComponent, g as ActionComponent, h as AnimatedGraphsComponent, i as AppCardComponent, j as AppRelationType, k as AppTileComponent, l as AssetStore, m as AssetUrlPipe, n as Assets, o as AutosizeDirective, p as BadgeComponent, q as BandingComponent, r as BaseArrayInputComponent, s as BaseRootWebComponent, t as BaseWebComponent, b as ButtonComponent, u as ButtonGroupComponent, C as COLOR_SCHEMES, v as COMPONENT_INPUT_REGISTRY, w as CardComponent, x as CardWrapperComponent, y as CarouselComponent, z as ChartComponent, D as CheckboxInputComponent, F as ClearableInputComponent, G as ColComponent, H as ColorPickerInputComponent, I as CommentItemComponent, J as CommentsApiService, K as CommentsComponent, M as CommentsStore, N as ComponentInputComponent, O as ComponentStepperComponent, P as ConfigComponent, Q as ConfirmComponent, R as ContextMenuComponent, S as CustomIconClass, U as CustomIconEditComponent, V as DEFAULT_SIZE, W as DashboardCardComponent, X as DateInputComponent, Y as DatePickerComponent, Z as DeviceService, _ as DomService, $ as Domain, a0 as DotGridComponent, a1 as DragListDirective, a2 as DragListItemDirective, a3 as DraggableDirective, a4 as DropdownInputComponent, a5 as FLEX_VARIANTS, a6 as FOLDER_PICK_LISTENER, a7 as FORM_ASSET_FOLDER, a8 as FileService, a9 as FileUploadDirective, aa as FileUploadInputComponent, ab as FlexComponent, ac as FlexItemComponent, ad as FormGroupComponent, ae as FrameComponent, af as FreezeService, ag as GEN_NAV_DISPLAY_ORDER, ah as GRID_BREAKPOINTS, ai as GetNavService, aj as HeaderComponent, ak as HighlightDirective, al as HttpService, am as ICON_SOURCE, an as IS_DESIGN_MODE, ao as IS_SIDE_PANEL, ap as IconComponent, aq as ImgComponent, ar as InputType, as as InstrumentScoreComponent, at as InterceptorObservables, au as JumbotronComponent, av as KeyValueComponent, aw as LAYOUT_ASSET_FOLDER, ax as LOGIN_COMPONENT, ay as LOGIN_FORM_GROUP, az as LOGIN_PROCESS, aA as LOGIN_STORE, aB as LanguageComponent, aC as LoginDataService, aD as LoginOneComponent, aE as LoginStore, aF as LogoComponent, aG as MAG_SOCKET_EVENT, aH as MHeroColorDirective, aI as MHeroComponent, aJ as MODAL_REF, aK as MODAL_STORE_REF, aL as MRefDirective, aM as MStepComponent, aN as ManifestEnrichmentService, aO as MenuComponent, aP as ModalDirective, aQ as ModalRef, aR as ModalStore, aS as MoneyPipe, aT as MultiRangeInputComponent, aU as NAV_DEFAULT_MURL, aV as NAV_DISPLAY_ORDER, aW as NAV_MAIN_BUTTONS, aX as NAV_STORE_REF, aY as NAV_WC_COMPONENTS, aZ as NAV_WIDGET_MAP, a_ as NavComponent, a$ as NavDetailsComponent, b0 as NavMenuComponent, b1 as NavStore, b2 as NavTrailComponent, b3 as NothingComponent, b4 as NotificationElementComponent, b5 as NotificationGroupComponent, b6 as NotificationPopupComponent, b7 as NotificationService, b8 as NotificationStore, b9 as NotificationType, ba as NotificationWidgetComponent, bb as ONE_ASSET_BASE_URL, bc as OPTIONS_SOURCE, bd as OneApp, be as OptionsSourceDirective, bf as OverlayBodyComponent, bg as OverlayRef, bh as OverlayService, bi as PaginationComponent, bj as PanelComponent, bk as PlaygroundComponent, bl as PositionDirective, bm as PwaInstallComponent, bn as ROOT_NAV, bo as RadioGroupComponent, bp as RadioInputComponent, bq as RangeInputComponent, br as RatingInputComponent, bs as ReactiveElementComponent, bt as RemoteComponent, bu as RemoteLoaderService, bv as ResizeElementComponent, bw as RouteContainer, bx as RowComponent, by as SEARCH_QUERY, bz as SEARCH_RESULTS_EVENT, bA as SECTION_ACCORDION_GROUP, bB as SECTION_FORM_CONTEXT, bC as SHARED_ICONS, bD as SIZE_CONTEXT, bE as ScoreComponent, bF as ScrollComponent, bG as ScrollService, bH as SearchPanelComponent, bI as SearchStore, bJ as SearchUserPanelComponent, bK as SectionAccordionDirective, bL as SectionAccordionGroupDirective, bM as SectionBackComponent, bN as SectionBadgesComponent, bO as SectionButtonGroupComponent, bP as SectionCardComponent, bQ as SectionComponent, bR as SectionFilterComponent, bS as SectionFooterComponent, bT as SectionFormComponent, bU as SectionFormItemComponent, bV as SectionHeaderComponent, bW as SectionSearchComponent, bX as SectionStepperComponent, bY as SectionTabsComponent, bZ as SectionToggleComponent, b_ as SectionToggleItemDirective, b$ as SelectableCardInputComponent, c0 as SelectorDirective, c1 as SettingsSearchBarComponent, c2 as SettingsSearchService, c3 as Sex, c4 as ShapeComponent, c5 as SharedStoreRegistry, c6 as SidePanelDirective, c7 as Size, c8 as SocketStore, c9 as SortComponent, ca as StepComponent, cb as StepperComponent, cc as StepsComponent, cd as StorageService, ce as StrokeLinecap, cf as StrokeLinejoin, cg as SummaryComponent, ch as SvgGeneratorComponent, ci as SvgGeneratorService, cj as SvgService, ck as TOTAL_COLUMNS, cl as TRANSLATION_SOURCE, cm as TableComponent, cn as TechnicalMeterComponent, co as TextInputComponent, cp as TextOutputComponent, cq as TextareaInputComponent, cr as ThemeComponent, cs as ThemeService, ct as ThemeStore, cu as TimeAgoPipe, cv as TimelineComponent, cw as ToggleButtonComponent, cx as ToggleInputComponent, cy as ToggleRadioInputComponent, cz as ToolTipDirective, cA as TooltipComponent, T as TranslatePipe, cB as TranslateService, cC as USER_STORE_REF, cD as USER_TAB_MAP, cE as UlComponent, cF as UniverseComponent, cG as UserApiService, cH as UserAvatarComponent, cI as UserComponent, cJ as UserNavComponent, cK as UserSettingsComponent, cL as UserStore, cM as WC_ROUTE_CHANGED_EVENT, cN as WC_SEARCH_GROUPS, cO as WIN_USER_TAB_HOOK, cP as WIN_USER_TAB_KEY, cQ as WatermarkComponent, cR as WcRouterStore, cS as WrapperInputComponent, cT as applyColorsToElement, cU as authGuard, cV as bootstrapMagApp, cW as bootstrapPwaInstall, cX as buildWcBaseUrl, cY as calculateLuminance, cZ as calculateRanks, c_ as checkFilterCondition, c$ as classListSignal, d0 as createMap, d1 as deriveAvatarGradient, d2 as deriveContrastColor, d3 as deriveOppositeColor, d4 as derivePropertyName, d5 as emailValidation, d6 as evaluate, d7 as evaluateBool, d8 as formatBadgeCount, d9 as fullName, da as generateClipPath, db as generateTransform, dc as getClassList, dd as getProperty, de as getScrollParent, df as getTierFromPreviewPath, dg as getUniqueId, dh as getValue, di as hasErrorComputed, dj as hexToRgb, dk as hslToRgb, dl as initMagmoniumApp, dm as initialNotificationState, dn as initials, dp as injectAuthenticate, dq as injectInstallApp, dr as injectParentSize, ds as injectScrollSticky, dt as isButtonName, du as isCancelledComputed, dv as isJson, dw as isLoadingComputed, dx as isLocalhost, dy as isSize, dz as isTierPreview, dA as isUrlLocalhost, dB as isWebComponent, dC as linkToId, dD as linkToNav, dE as loadingActions, dF as loginState, dG as mInterceptor, dH as manualValidation, dI as matchFieldValidation, dJ as maxLengthValidation, dK as maxValidation, dL as mergeUnique, dM as mergeUniqueBy, dN as mergeUniqueWith, dO as minAgeValidation, dP as minLengthValidation, dQ as minValidation, dR as miniMarkToHtml, dS as navToId, dT as parseColor, dU as patternValidation, dV as privateGuard, dW as processImageToSvg, dX as provideAppContext, dY as provideMagAppConfig, dZ as provideMagWcConfig, d_ as provideMagWcRoutes, d$ as provideModalComponents, e0 as provideNavWidgets, e1 as provideSearch, e2 as provideSizeContext, e3 as provideUserTabs, e4 as publicGuard, e5 as requiredValidation, e6 as resolveConfigAsset, e7 as resolvePallet, e8 as resolveSize, e9 as rgbToHex, ea as rgbToHsl, eb as setProperty, ec as settingsWidgets, ed as shouldShowBadge, ee as stringToColor, ef as toAttrBool, eg as toAttrNumber, eh as toCssLength, ei as toLength, ej as urlValidation } from './magmonium-one-magmonium-one-Bc6ZjJKk.mjs';
1
+ export { A as APP_CONTEXT_REF, c as ASSET_BASE_URL, d as AccordionBodyDirective, e as AccordionComponent, f as AccordionGroupComponent, g as ActionComponent, h as AnimatedGraphsComponent, i as AppCardComponent, j as AppRelationType, k as AppTileComponent, l as AssetStore, m as AssetUrlPipe, n as Assets, o as AutosizeDirective, p as BadgeComponent, q as BandingComponent, r as BaseArrayInputComponent, s as BaseRootWebComponent, t as BaseWebComponent, b as ButtonComponent, u as ButtonGroupComponent, C as COLOR_SCHEMES, v as COMPONENT_INPUT_REGISTRY, w as CardComponent, x as CardWrapperComponent, y as CarouselComponent, z as ChartComponent, D as CheckboxInputComponent, F as ClearableInputComponent, G as ColComponent, H as ColorPickerInputComponent, I as CommentItemComponent, J as CommentsApiService, K as CommentsComponent, M as CommentsStore, N as ComponentInputComponent, O as ComponentStepperComponent, P as ConfigComponent, Q as ConfirmComponent, R as ContextMenuComponent, S as CustomIconClass, U as CustomIconEditComponent, V as DEFAULT_SIZE, W as DashboardCardComponent, X as DateInputComponent, Y as DatePickerComponent, Z as DeviceService, _ as DomService, $ as Domain, a0 as DotGridComponent, a1 as DragListDirective, a2 as DragListItemDirective, a3 as DraggableDirective, a4 as DropdownInputComponent, a5 as FLEX_VARIANTS, a6 as FOLDER_PICK_LISTENER, a7 as FORM_ASSET_FOLDER, a8 as FileService, a9 as FileUploadDirective, aa as FileUploadInputComponent, ab as FlexComponent, ac as FlexItemComponent, ad as FormGroupComponent, ae as FrameComponent, af as FreezeService, ag as GEN_NAV_DISPLAY_ORDER, ah as GRID_BREAKPOINTS, ai as GetNavService, aj as HeaderComponent, ak as HighlightDirective, al as HttpService, am as ICON_SOURCE, an as IS_DESIGN_MODE, ao as IS_SIDE_PANEL, ap as IconComponent, aq as ImgComponent, ar as InputType, as as InstrumentScoreComponent, at as InterceptorObservables, au as JumbotronComponent, av as KeyValueComponent, aw as LAYOUT_ASSET_FOLDER, ax as LOGIN_COMPONENT, ay as LOGIN_FORM_GROUP, az as LOGIN_PROCESS, aA as LOGIN_STORE, aB as LanguageComponent, aC as LoginDataService, aD as LoginOneComponent, aE as LoginStore, aF as LogoComponent, aG as MAG_SOCKET_EVENT, aH as MHeroColorDirective, aI as MHeroComponent, aJ as MODAL_REF, aK as MODAL_STORE_REF, aL as MRefDirective, aM as MStepComponent, aN as ManifestEnrichmentService, aO as MenuComponent, aP as ModalDirective, aQ as ModalRef, aR as ModalStore, aS as MoneyPipe, aT as MultiRangeInputComponent, aU as NAV_DEFAULT_MURL, aV as NAV_DISPLAY_ORDER, aW as NAV_MAIN_BUTTONS, aX as NAV_STORE_REF, aY as NAV_WC_COMPONENTS, aZ as NAV_WIDGET_MAP, a_ as NavComponent, a$ as NavDetailsComponent, b0 as NavMenuComponent, b1 as NavStore, b2 as NavTrailComponent, b3 as NothingComponent, b4 as NotificationElementComponent, b5 as NotificationGroupComponent, b6 as NotificationPopupComponent, b7 as NotificationService, b8 as NotificationStore, b9 as NotificationType, ba as NotificationWidgetComponent, bb as ONE_ASSET_BASE_URL, bc as OPTIONS_SOURCE, bd as OneApp, be as OptionsSourceDirective, bf as OverlayBodyComponent, bg as OverlayRef, bh as OverlayService, bi as PaginationComponent, bj as PanelComponent, bk as PlaygroundComponent, bl as PositionDirective, bm as PwaInstallComponent, bn as ROOT_NAV, bo as RadioGroupComponent, bp as RadioInputComponent, bq as RangeInputComponent, br as RatingInputComponent, bs as ReactiveElementComponent, bt as RemoteComponent, bu as RemoteLoaderService, bv as ResizeElementComponent, bw as RouteContainer, bx as RowComponent, by as SEARCH_QUERY, bz as SEARCH_RESULTS_EVENT, bA as SECTION_ACCORDION_GROUP, bB as SECTION_FORM_CONTEXT, bC as SHARED_ICONS, bD as SIZE_CONTEXT, bE as ScoreComponent, bF as ScrollComponent, bG as ScrollService, bH as SearchPanelComponent, bI as SearchStore, bJ as SearchUserPanelComponent, bK as SectionAccordionDirective, bL as SectionAccordionGroupDirective, bM as SectionBackComponent, bN as SectionBadgesComponent, bO as SectionButtonGroupComponent, bP as SectionCardComponent, bQ as SectionComponent, bR as SectionFilterComponent, bS as SectionFooterComponent, bT as SectionFormComponent, bU as SectionFormItemComponent, bV as SectionHeaderComponent, bW as SectionSearchComponent, bX as SectionStepperComponent, bY as SectionTabsComponent, bZ as SectionToggleComponent, b_ as SectionToggleItemDirective, b$ as SelectableCardInputComponent, c0 as SelectorDirective, c1 as SettingsSearchBarComponent, c2 as SettingsSearchService, c3 as Sex, c4 as ShapeComponent, c5 as SharedStoreRegistry, c6 as SidePanelDirective, c7 as Size, c8 as SocketStore, c9 as SortComponent, ca as StepComponent, cb as StepperComponent, cc as StepsComponent, cd as StorageService, ce as StrokeLinecap, cf as StrokeLinejoin, cg as SummaryComponent, ch as SvgGeneratorComponent, ci as SvgGeneratorService, cj as SvgService, ck as TOTAL_COLUMNS, cl as TRANSLATION_SOURCE, cm as TableComponent, cn as TechnicalMeterComponent, co as TextInputComponent, cp as TextOutputComponent, cq as TextareaInputComponent, cr as ThemeComponent, cs as ThemeService, ct as ThemeStore, cu as TimeAgoPipe, cv as TimelineComponent, cw as ToggleButtonComponent, cx as ToggleInputComponent, cy as ToggleRadioInputComponent, cz as ToolTipDirective, cA as TooltipComponent, T as TranslatePipe, cB as TranslateService, cC as USER_STORE_REF, cD as USER_TAB_MAP, cE as UlComponent, cF as UniverseComponent, cG as UserApiService, cH as UserAvatarComponent, cI as UserComponent, cJ as UserNavComponent, cK as UserSettingsComponent, cL as UserStore, cM as WC_ROUTE_CHANGED_EVENT, cN as WC_SEARCH_GROUPS, cO as WIN_USER_TAB_HOOK, cP as WIN_USER_TAB_KEY, cQ as WatermarkComponent, cR as WcRouterStore, cS as WrapperInputComponent, cT as applyColorsToElement, cU as authGuard, cV as bootstrapMagApp, cW as bootstrapPwaInstall, cX as buildWcBaseUrl, cY as calculateLuminance, cZ as calculateRanks, c_ as checkFilterCondition, c$ as classListSignal, d0 as createMap, d1 as deriveAvatarGradient, d2 as deriveContrastColor, d3 as deriveOppositeColor, d4 as derivePropertyName, d5 as emailValidation, d6 as evaluate, d7 as evaluateBool, d8 as formatBadgeCount, d9 as fullName, da as generateClipPath, db as generateTransform, dc as getClassList, dd as getProperty, de as getScrollParent, df as getTierFromPreviewPath, dg as getUniqueId, dh as getValue, di as hasErrorComputed, dj as hexToRgb, dk as hslToRgb, dl as initMagmoniumApp, dm as initialNotificationState, dn as initials, dp as injectAuthenticate, dq as injectInstallApp, dr as injectParentSize, ds as injectScrollSticky, dt as isButtonName, du as isCancelledComputed, dv as isJson, dw as isLoadingComputed, dx as isLocalhost, dy as isSize, dz as isTierPreview, dA as isUrlLocalhost, dB as isWebComponent, dC as linkToId, dD as linkToNav, dE as loadingActions, dF as loginState, dG as mInterceptor, dH as manualValidation, dI as matchFieldValidation, dJ as maxLengthValidation, dK as maxValidation, dL as mergeUnique, dM as mergeUniqueBy, dN as mergeUniqueWith, dO as minAgeValidation, dP as minLengthValidation, dQ as minValidation, dR as miniMarkToHtml, dS as navToId, dT as parseColor, dU as patternValidation, dV as privateGuard, dW as processImageToSvg, dX as provideAppContext, dY as provideMagAppConfig, dZ as provideMagWcConfig, d_ as provideMagWcRoutes, d$ as provideModalComponents, e0 as provideNavWidgets, e1 as provideSearch, e2 as provideSizeContext, e3 as provideUserTabs, e4 as publicGuard, e5 as requiredValidation, e6 as resolveConfigAsset, e7 as resolvePallet, e8 as resolveSize, e9 as rgbToHex, ea as rgbToHsl, eb as setProperty, ec as settingsWidgets, ed as shouldShowBadge, ee as stringToColor, ef as toAttrBool, eg as toAttrNumber, eh as toCssLength, ei as toLength, ej as urlValidation } from './magmonium-one-magmonium-one-CCzzYU2z.mjs';
2
2
  //# sourceMappingURL=magmonium-one.mjs.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@magmonium/one",
3
- "version": "0.0.4",
3
+ "version": "0.0.7",
4
4
  "description": "Magmonium One — Angular design-system primitives for mm Apps",
5
5
  "author": "magmonium",
6
6
  "license": "MIT",
@@ -16,6 +16,7 @@
16
16
  "fesm2022",
17
17
  "types",
18
18
  "assets",
19
+ "sass",
19
20
  "README.md"
20
21
  ],
21
22
  "peerDependencies": {
@@ -0,0 +1,50 @@
1
+ // @magmonium/sass — public kernel for apps and library compile.
2
+ // TokenAliases, functions, and cross-cutting mixins. Component look lives on
3
+ // Angular styleUrls; animations are imported by Jumbotron only.
4
+
5
+ @forward 'variables'
6
+ @forward 'functions/functions'
7
+
8
+ // Cross-cutting mixins apps and shared layout still call via `@use 'index' as m`.
9
+ @forward 'mixins/breakpoints'
10
+ @forward 'mixins/device'
11
+ @forward 'mixins/layout'
12
+ @forward 'mixins/grid'
13
+ @forward 'mixins/spacing'
14
+ @forward 'mixins/borders'
15
+ @forward 'mixins/flex'
16
+ @forward 'mixins/position'
17
+ @forward 'mixins/sizing'
18
+ @forward 'mixins/display'
19
+ @forward 'mixins/colors'
20
+ @forward 'mixins/backgrounds'
21
+ @forward 'mixins/backdrops'
22
+ @forward 'mixins/overflow'
23
+ @forward 'mixins/text'
24
+ @forward 'mixins/typography'
25
+ @forward 'mixins/utilities'
26
+ @forward 'mixins/interactive'
27
+ @forward 'mixins/links'
28
+ @forward 'mixins/lists'
29
+ @forward 'mixins/header'
30
+ @forward 'mixins/control'
31
+ // Used by library component styleUrls (not by app styles.sass). Zero CSS until @included.
32
+ @forward 'mixins/button'
33
+ @forward 'mixins/toggle'
34
+ @forward 'mixins/checkbox'
35
+ @forward 'mixins/radio'
36
+ @forward 'mixins/input'
37
+ @forward 'mixins/form'
38
+ @forward 'mixins/label'
39
+
40
+ // Prefixed re-exports kept for existing app `@include m.colors-*` / spacing call sites.
41
+ @forward 'variables/colors' as colors-*
42
+ @forward 'variables/spacing' as spacing-*
43
+ @forward 'variables/typography' as typography-*
44
+ @forward 'variables/borders' as borders-*
45
+ @forward 'functions/functions' as functions-*
46
+ @forward 'mixins/breakpoints' as breakpoints-*
47
+ @forward 'mixins/utilities' as utilities-*
48
+ @forward 'mixins/borders' as borders-*
49
+ @forward 'mixins/layout' as layout-*
50
+ @forward 'mixins/grid' as grid-*
@@ -0,0 +1,78 @@
1
+ // Portal host chrome — DOM service mounts `.modals` / `.m-selector-box` on body,
2
+ // outside any component encapsulation. Positioning only; look stays on components.
3
+ @use 'variables/number' as n
4
+ @use 'variables/colors' as c
5
+ @use 'mixins/backdrops' as backdrops
6
+
7
+ .m-selector-box
8
+ position: fixed
9
+ top: 0
10
+ left: 0
11
+ right: 0
12
+ bottom: 0
13
+ z-index: n.$base-z-index * 10000
14
+ pointer-events: none
15
+
16
+ > *
17
+ pointer-events: auto
18
+ position: absolute
19
+
20
+ .m-context-menu,
21
+ .m-dropdown-input,
22
+ .m-color-picker,
23
+ .m-date-input
24
+ position: fixed
25
+
26
+ .m-color-picker
27
+ .color-picker-box
28
+ background: c.$background-color
29
+ border: var(--m-input-border-width, 2px) solid var(--m-text-input-border, var(--m-input-color, var(--m-mm, #4169e1)))
30
+ border-radius: var(--m-input-radius, 4px)
31
+ box-shadow: none
32
+
33
+ .m-date-input
34
+ .date-picker
35
+ background: c.$background-color
36
+ border: var(--m-input-border-width, 2px) solid var(--m-text-input-border, var(--m-input-color, var(--m-mm, #4169e1)))
37
+ border-radius: var(--m-input-radius, 8px)
38
+ box-shadow: none
39
+ padding: 0.75rem
40
+ animation: date-picker-in 200ms ease-out
41
+ --m-button-size: 0.75rem
42
+
43
+ @keyframes date-picker-in
44
+ from
45
+ opacity: 0
46
+ transform: scale(0.95) translateY(-4px)
47
+ to
48
+ opacity: 1
49
+ transform: scale(1) translateY(0)
50
+
51
+ .modals
52
+ position: fixed
53
+ top: 0
54
+ left: 0
55
+ right: 0
56
+ bottom: 0
57
+ z-index: n.$base-z-index * 1000
58
+
59
+ .modal
60
+ position: absolute
61
+ top: 0
62
+ left: 0
63
+ right: 0
64
+ bottom: 0
65
+ overflow: auto
66
+ @include backdrops.premium-backdrop
67
+ animation: backdropFadeIn 0.5s cubic-bezier(0.16, 1, 0.3, 1) forwards
68
+
69
+ .m-context-menu-box
70
+ width: 100% !important
71
+
72
+ @keyframes backdropFadeIn
73
+ from
74
+ opacity: 0
75
+ backdrop-filter: blur(0px)
76
+ to
77
+ opacity: 1
78
+ backdrop-filter: blur(24px)