@7pmlabs/design-system 0.1.5 → 0.1.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 (610) hide show
  1. package/dist/design-system100.js +1 -1
  2. package/dist/design-system100.js.map +1 -1
  3. package/dist/design-system100.mjs +3 -9
  4. package/dist/design-system100.mjs.map +1 -1
  5. package/dist/design-system101.js +1 -1
  6. package/dist/design-system101.js.map +1 -1
  7. package/dist/design-system101.mjs +3 -5
  8. package/dist/design-system101.mjs.map +1 -1
  9. package/dist/design-system102.js +1 -1
  10. package/dist/design-system102.js.map +1 -1
  11. package/dist/design-system102.mjs +6 -5
  12. package/dist/design-system102.mjs.map +1 -1
  13. package/dist/design-system103.js +1 -1
  14. package/dist/design-system103.js.map +1 -1
  15. package/dist/design-system103.mjs +10 -4
  16. package/dist/design-system103.mjs.map +1 -1
  17. package/dist/design-system104.js +1 -1
  18. package/dist/design-system104.js.map +1 -1
  19. package/dist/design-system104.mjs +4 -3
  20. package/dist/design-system104.mjs.map +1 -1
  21. package/dist/design-system105.js +1 -1
  22. package/dist/design-system105.js.map +1 -1
  23. package/dist/design-system105.mjs +4 -7
  24. package/dist/design-system105.mjs.map +1 -1
  25. package/dist/design-system106.js +1 -1
  26. package/dist/design-system106.js.map +1 -1
  27. package/dist/design-system106.mjs +4 -5
  28. package/dist/design-system106.mjs.map +1 -1
  29. package/dist/design-system107.js +1 -1
  30. package/dist/design-system107.js.map +1 -1
  31. package/dist/design-system107.mjs +4 -6
  32. package/dist/design-system107.mjs.map +1 -1
  33. package/dist/design-system108.js +1 -1
  34. package/dist/design-system108.js.map +1 -1
  35. package/dist/design-system108.mjs +7 -6
  36. package/dist/design-system108.mjs.map +1 -1
  37. package/dist/design-system109.js +1 -1
  38. package/dist/design-system109.js.map +1 -1
  39. package/dist/design-system109.mjs +4 -5
  40. package/dist/design-system109.mjs.map +1 -1
  41. package/dist/design-system11.js +1 -1
  42. package/dist/design-system11.mjs +1 -1
  43. package/dist/design-system110.js +1 -1
  44. package/dist/design-system110.js.map +1 -1
  45. package/dist/design-system110.mjs +6 -10
  46. package/dist/design-system110.mjs.map +1 -1
  47. package/dist/design-system111.js +1 -1
  48. package/dist/design-system111.js.map +1 -1
  49. package/dist/design-system111.mjs +7 -6
  50. package/dist/design-system111.mjs.map +1 -1
  51. package/dist/design-system112.js +1 -1
  52. package/dist/design-system112.js.map +1 -1
  53. package/dist/design-system112.mjs +5 -6
  54. package/dist/design-system112.mjs.map +1 -1
  55. package/dist/design-system113.js +1 -1
  56. package/dist/design-system113.js.map +1 -1
  57. package/dist/design-system113.mjs +10 -6
  58. package/dist/design-system113.mjs.map +1 -1
  59. package/dist/design-system114.js +1 -1
  60. package/dist/design-system114.js.map +1 -1
  61. package/dist/design-system114.mjs +6 -10
  62. package/dist/design-system114.mjs.map +1 -1
  63. package/dist/design-system115.js +1 -1
  64. package/dist/design-system115.js.map +1 -1
  65. package/dist/design-system115.mjs +6 -6
  66. package/dist/design-system115.mjs.map +1 -1
  67. package/dist/design-system116.js +1 -1
  68. package/dist/design-system116.js.map +1 -1
  69. package/dist/design-system116.mjs +6 -18
  70. package/dist/design-system116.mjs.map +1 -1
  71. package/dist/design-system117.js +1 -1
  72. package/dist/design-system117.js.map +1 -1
  73. package/dist/design-system117.mjs +9 -11
  74. package/dist/design-system117.mjs.map +1 -1
  75. package/dist/design-system118.js +1 -1
  76. package/dist/design-system118.js.map +1 -1
  77. package/dist/design-system118.mjs +6 -6
  78. package/dist/design-system118.mjs.map +1 -1
  79. package/dist/design-system119.js +1 -1
  80. package/dist/design-system119.js.map +1 -1
  81. package/dist/design-system119.mjs +17 -12
  82. package/dist/design-system119.mjs.map +1 -1
  83. package/dist/design-system12.js +1 -1
  84. package/dist/design-system12.mjs +3 -3
  85. package/dist/design-system120.js +1 -1
  86. package/dist/design-system120.js.map +1 -1
  87. package/dist/design-system120.mjs +11 -3
  88. package/dist/design-system120.mjs.map +1 -1
  89. package/dist/design-system121.js +1 -1
  90. package/dist/design-system121.js.map +1 -1
  91. package/dist/design-system121.mjs +6 -11
  92. package/dist/design-system121.mjs.map +1 -1
  93. package/dist/design-system122.js +1 -1
  94. package/dist/design-system122.js.map +1 -1
  95. package/dist/design-system122.mjs +12 -7
  96. package/dist/design-system122.mjs.map +1 -1
  97. package/dist/design-system123.js +1 -1
  98. package/dist/design-system123.js.map +1 -1
  99. package/dist/design-system123.mjs +3 -9
  100. package/dist/design-system123.mjs.map +1 -1
  101. package/dist/design-system124.js +1 -1
  102. package/dist/design-system124.js.map +1 -1
  103. package/dist/design-system124.mjs +11 -5
  104. package/dist/design-system124.mjs.map +1 -1
  105. package/dist/design-system125.js +1 -1
  106. package/dist/design-system125.js.map +1 -1
  107. package/dist/design-system125.mjs +7 -5
  108. package/dist/design-system125.mjs.map +1 -1
  109. package/dist/design-system126.js +1 -1
  110. package/dist/design-system126.js.map +1 -1
  111. package/dist/design-system126.mjs +9 -9
  112. package/dist/design-system126.mjs.map +1 -1
  113. package/dist/design-system127.js +1 -1
  114. package/dist/design-system127.js.map +1 -1
  115. package/dist/design-system127.mjs +6 -2
  116. package/dist/design-system127.mjs.map +1 -1
  117. package/dist/design-system128.js +1 -1
  118. package/dist/design-system128.js.map +1 -1
  119. package/dist/design-system128.mjs +5 -15
  120. package/dist/design-system128.mjs.map +1 -1
  121. package/dist/design-system129.js +1 -1
  122. package/dist/design-system129.js.map +1 -1
  123. package/dist/design-system129.mjs +10 -6
  124. package/dist/design-system129.mjs.map +1 -1
  125. package/dist/design-system13.js +1 -1
  126. package/dist/design-system13.mjs +1 -1
  127. package/dist/design-system130.js +1 -1
  128. package/dist/design-system130.js.map +1 -1
  129. package/dist/design-system130.mjs +15 -5
  130. package/dist/design-system130.mjs.map +1 -1
  131. package/dist/design-system131.js +1 -1
  132. package/dist/design-system131.js.map +1 -1
  133. package/dist/design-system131.mjs +5 -8
  134. package/dist/design-system131.mjs.map +1 -1
  135. package/dist/design-system132.js +1 -1
  136. package/dist/design-system132.js.map +1 -1
  137. package/dist/design-system132.mjs +5 -6
  138. package/dist/design-system132.mjs.map +1 -1
  139. package/dist/design-system133.js +1 -1
  140. package/dist/design-system133.js.map +1 -1
  141. package/dist/design-system133.mjs +8 -5
  142. package/dist/design-system133.mjs.map +1 -1
  143. package/dist/design-system134.js +1 -1
  144. package/dist/design-system134.js.map +1 -1
  145. package/dist/design-system134.mjs +6 -5
  146. package/dist/design-system134.mjs.map +1 -1
  147. package/dist/design-system135.js +1 -1
  148. package/dist/design-system135.js.map +1 -1
  149. package/dist/design-system135.mjs +4 -5
  150. package/dist/design-system135.mjs.map +1 -1
  151. package/dist/design-system136.js +1 -1
  152. package/dist/design-system136.js.map +1 -1
  153. package/dist/design-system136.mjs +5 -6
  154. package/dist/design-system136.mjs.map +1 -1
  155. package/dist/design-system137.js +1 -1
  156. package/dist/design-system137.js.map +1 -1
  157. package/dist/design-system137.mjs +7 -27
  158. package/dist/design-system137.mjs.map +1 -1
  159. package/dist/design-system138.js +1 -1
  160. package/dist/design-system138.js.map +1 -1
  161. package/dist/design-system138.mjs +6 -5
  162. package/dist/design-system138.mjs.map +1 -1
  163. package/dist/design-system139.js +1 -1
  164. package/dist/design-system139.js.map +1 -1
  165. package/dist/design-system139.mjs +27 -40
  166. package/dist/design-system139.mjs.map +1 -1
  167. package/dist/design-system14.js +1 -1
  168. package/dist/design-system14.mjs +1 -1
  169. package/dist/design-system140.js +1 -1
  170. package/dist/design-system140.js.map +1 -1
  171. package/dist/design-system140.mjs +3 -4
  172. package/dist/design-system140.mjs.map +1 -1
  173. package/dist/design-system141.js +1 -1
  174. package/dist/design-system141.js.map +1 -1
  175. package/dist/design-system141.mjs +39 -5
  176. package/dist/design-system141.mjs.map +1 -1
  177. package/dist/design-system142.js +1 -1
  178. package/dist/design-system142.js.map +1 -1
  179. package/dist/design-system142.mjs +7 -16
  180. package/dist/design-system142.mjs.map +1 -1
  181. package/dist/design-system143.js +1 -1
  182. package/dist/design-system143.js.map +1 -1
  183. package/dist/design-system143.mjs +6 -2
  184. package/dist/design-system143.mjs.map +1 -1
  185. package/dist/design-system144.js +1 -1
  186. package/dist/design-system144.js.map +1 -1
  187. package/dist/design-system144.mjs +15 -7
  188. package/dist/design-system144.mjs.map +1 -1
  189. package/dist/design-system145.js +1 -1
  190. package/dist/design-system145.js.map +1 -1
  191. package/dist/design-system145.mjs +8 -3
  192. package/dist/design-system145.mjs.map +1 -1
  193. package/dist/design-system146.js +1 -1
  194. package/dist/design-system146.js.map +1 -1
  195. package/dist/design-system146.mjs +3 -4
  196. package/dist/design-system146.mjs.map +1 -1
  197. package/dist/design-system147.js +1 -1
  198. package/dist/design-system147.js.map +1 -1
  199. package/dist/design-system147.mjs +4 -13
  200. package/dist/design-system147.mjs.map +1 -1
  201. package/dist/design-system148.js +1 -1
  202. package/dist/design-system148.js.map +1 -1
  203. package/dist/design-system148.mjs +12 -4
  204. package/dist/design-system148.mjs.map +1 -1
  205. package/dist/design-system149.js +1 -1
  206. package/dist/design-system149.js.map +1 -1
  207. package/dist/design-system149.mjs +5 -4
  208. package/dist/design-system149.mjs.map +1 -1
  209. package/dist/design-system15.js +1 -1
  210. package/dist/design-system15.mjs +1 -1
  211. package/dist/design-system150.js +1 -1
  212. package/dist/design-system150.js.map +1 -1
  213. package/dist/design-system150.mjs +4 -5
  214. package/dist/design-system150.mjs.map +1 -1
  215. package/dist/design-system151.js +1 -1
  216. package/dist/design-system151.js.map +1 -1
  217. package/dist/design-system151.mjs +5 -5
  218. package/dist/design-system151.mjs.map +1 -1
  219. package/dist/design-system152.js +1 -1
  220. package/dist/design-system152.js.map +1 -1
  221. package/dist/design-system152.mjs +5 -5
  222. package/dist/design-system152.mjs.map +1 -1
  223. package/dist/design-system153.js +1 -1
  224. package/dist/design-system153.js.map +1 -1
  225. package/dist/design-system153.mjs +5 -5
  226. package/dist/design-system153.mjs.map +1 -1
  227. package/dist/design-system154.js +1 -1
  228. package/dist/design-system154.js.map +1 -1
  229. package/dist/design-system154.mjs +5 -5
  230. package/dist/design-system154.mjs.map +1 -1
  231. package/dist/design-system155.js +1 -1
  232. package/dist/design-system155.js.map +1 -1
  233. package/dist/design-system155.mjs +5 -15
  234. package/dist/design-system155.mjs.map +1 -1
  235. package/dist/design-system156.js +1 -1
  236. package/dist/design-system156.js.map +1 -1
  237. package/dist/design-system156.mjs +14 -13
  238. package/dist/design-system156.mjs.map +1 -1
  239. package/dist/design-system157.js +1 -1
  240. package/dist/design-system157.js.map +1 -1
  241. package/dist/design-system157.mjs +13 -8
  242. package/dist/design-system157.mjs.map +1 -1
  243. package/dist/design-system158.js +1 -1
  244. package/dist/design-system158.js.map +1 -1
  245. package/dist/design-system158.mjs +9 -4
  246. package/dist/design-system158.mjs.map +1 -1
  247. package/dist/design-system159.js +1 -1
  248. package/dist/design-system159.js.map +1 -1
  249. package/dist/design-system159.mjs +4 -6
  250. package/dist/design-system159.mjs.map +1 -1
  251. package/dist/design-system16.js +1 -1
  252. package/dist/design-system16.mjs +1 -1
  253. package/dist/design-system160.js +1 -1
  254. package/dist/design-system160.js.map +1 -1
  255. package/dist/design-system160.mjs +5 -5
  256. package/dist/design-system160.mjs.map +1 -1
  257. package/dist/design-system161.js +1 -1
  258. package/dist/design-system161.js.map +1 -1
  259. package/dist/design-system161.mjs +5 -5
  260. package/dist/design-system161.mjs.map +1 -1
  261. package/dist/design-system162.js +1 -1
  262. package/dist/design-system162.js.map +1 -1
  263. package/dist/design-system162.mjs +5 -7
  264. package/dist/design-system162.mjs.map +1 -1
  265. package/dist/design-system163.js +1 -1
  266. package/dist/design-system163.js.map +1 -1
  267. package/dist/design-system163.mjs +7 -17
  268. package/dist/design-system163.mjs.map +1 -1
  269. package/dist/design-system164.js +1 -1
  270. package/dist/design-system164.js.map +1 -1
  271. package/dist/design-system164.mjs +17 -10
  272. package/dist/design-system164.mjs.map +1 -1
  273. package/dist/design-system165.js +1 -1
  274. package/dist/design-system165.js.map +1 -1
  275. package/dist/design-system165.mjs +10 -5
  276. package/dist/design-system165.mjs.map +1 -1
  277. package/dist/design-system166.js +1 -1
  278. package/dist/design-system166.js.map +1 -1
  279. package/dist/design-system166.mjs +4 -3
  280. package/dist/design-system166.mjs.map +1 -1
  281. package/dist/design-system167.js +1 -1
  282. package/dist/design-system167.js.map +1 -1
  283. package/dist/design-system167.mjs +4 -4
  284. package/dist/design-system167.mjs.map +1 -1
  285. package/dist/design-system168.js +1 -1
  286. package/dist/design-system168.js.map +1 -1
  287. package/dist/design-system168.mjs +4 -5
  288. package/dist/design-system168.mjs.map +1 -1
  289. package/dist/design-system169.js +1 -1
  290. package/dist/design-system169.js.map +1 -1
  291. package/dist/design-system169.mjs +5 -6
  292. package/dist/design-system169.mjs.map +1 -1
  293. package/dist/design-system17.js +1 -1
  294. package/dist/design-system17.mjs +1 -1
  295. package/dist/design-system170.js +1 -1
  296. package/dist/design-system170.js.map +1 -1
  297. package/dist/design-system170.mjs +7 -11
  298. package/dist/design-system170.mjs.map +1 -1
  299. package/dist/design-system171.js +1 -1
  300. package/dist/design-system171.js.map +1 -1
  301. package/dist/design-system171.mjs +10 -6
  302. package/dist/design-system171.mjs.map +1 -1
  303. package/dist/design-system172.js +1 -1
  304. package/dist/design-system172.js.map +1 -1
  305. package/dist/design-system172.mjs +6 -17
  306. package/dist/design-system172.mjs.map +1 -1
  307. package/dist/design-system173.js +1 -1
  308. package/dist/design-system173.js.map +1 -1
  309. package/dist/design-system173.mjs +17 -4
  310. package/dist/design-system173.mjs.map +1 -1
  311. package/dist/design-system174.js +1 -1
  312. package/dist/design-system174.js.map +1 -1
  313. package/dist/design-system174.mjs +4 -4
  314. package/dist/design-system174.mjs.map +1 -1
  315. package/dist/design-system175.js +1 -1
  316. package/dist/design-system175.js.map +1 -1
  317. package/dist/design-system175.mjs +4 -3
  318. package/dist/design-system175.mjs.map +1 -1
  319. package/dist/design-system176.js +1 -1
  320. package/dist/design-system176.js.map +1 -1
  321. package/dist/design-system176.mjs +3 -3
  322. package/dist/design-system176.mjs.map +1 -1
  323. package/dist/design-system177.js +1 -1
  324. package/dist/design-system177.js.map +1 -1
  325. package/dist/design-system177.mjs +3 -14
  326. package/dist/design-system177.mjs.map +1 -1
  327. package/dist/design-system178.js +1 -1
  328. package/dist/design-system178.js.map +1 -1
  329. package/dist/design-system178.mjs +15 -9
  330. package/dist/design-system178.mjs.map +1 -1
  331. package/dist/design-system179.js +1 -1
  332. package/dist/design-system179.js.map +1 -1
  333. package/dist/design-system179.mjs +9 -6
  334. package/dist/design-system179.mjs.map +1 -1
  335. package/dist/design-system180.js +1 -1
  336. package/dist/design-system180.js.map +1 -1
  337. package/dist/design-system180.mjs +5 -5
  338. package/dist/design-system180.mjs.map +1 -1
  339. package/dist/design-system181.js +1 -1
  340. package/dist/design-system181.js.map +1 -1
  341. package/dist/design-system181.mjs +5 -5
  342. package/dist/design-system181.mjs.map +1 -1
  343. package/dist/design-system182.js +1 -1
  344. package/dist/design-system182.js.map +1 -1
  345. package/dist/design-system182.mjs +5 -5
  346. package/dist/design-system182.mjs.map +1 -1
  347. package/dist/design-system183.js +1 -1
  348. package/dist/design-system183.js.map +1 -1
  349. package/dist/design-system183.mjs +5 -5
  350. package/dist/design-system183.mjs.map +1 -1
  351. package/dist/design-system184.js +1 -1
  352. package/dist/design-system184.js.map +1 -1
  353. package/dist/design-system184.mjs +6 -2
  354. package/dist/design-system184.mjs.map +1 -1
  355. package/dist/design-system185.js +1 -1
  356. package/dist/design-system185.mjs +1 -1
  357. package/dist/design-system186.js +1 -1
  358. package/dist/design-system186.mjs +5 -5
  359. package/dist/design-system187.js +1 -1
  360. package/dist/design-system187.mjs +1 -1
  361. package/dist/design-system19.js +2 -2
  362. package/dist/design-system19.js.map +1 -1
  363. package/dist/design-system19.mjs +32 -32
  364. package/dist/design-system19.mjs.map +1 -1
  365. package/dist/design-system194.js +1 -1
  366. package/dist/design-system194.mjs +1 -1
  367. package/dist/design-system195.js +1 -1
  368. package/dist/design-system195.js.map +1 -1
  369. package/dist/design-system195.mjs +3 -3
  370. package/dist/design-system195.mjs.map +1 -1
  371. package/dist/design-system196.js +1 -1
  372. package/dist/design-system196.js.map +1 -1
  373. package/dist/design-system196.mjs +4 -4
  374. package/dist/design-system196.mjs.map +1 -1
  375. package/dist/design-system197.js +1 -1
  376. package/dist/design-system197.js.map +1 -1
  377. package/dist/design-system197.mjs +4 -10
  378. package/dist/design-system197.mjs.map +1 -1
  379. package/dist/design-system198.js +1 -1
  380. package/dist/design-system198.js.map +1 -1
  381. package/dist/design-system198.mjs +10 -6
  382. package/dist/design-system198.mjs.map +1 -1
  383. package/dist/design-system199.js +1 -1
  384. package/dist/design-system199.js.map +1 -1
  385. package/dist/design-system199.mjs +6 -6
  386. package/dist/design-system199.mjs.map +1 -1
  387. package/dist/design-system20.js +1 -1
  388. package/dist/design-system20.mjs +4 -4
  389. package/dist/design-system200.js +1 -1
  390. package/dist/design-system200.js.map +1 -1
  391. package/dist/design-system200.mjs +6 -4
  392. package/dist/design-system200.mjs.map +1 -1
  393. package/dist/design-system201.js +1 -1
  394. package/dist/design-system201.mjs +1 -1
  395. package/dist/design-system202.js +1 -1
  396. package/dist/design-system202.mjs +1 -1
  397. package/dist/design-system21.js +1 -1
  398. package/dist/design-system21.mjs +1 -1
  399. package/dist/design-system23.js +1 -1
  400. package/dist/design-system23.mjs +3 -3
  401. package/dist/design-system24.js +1 -1
  402. package/dist/design-system24.mjs +3 -3
  403. package/dist/design-system25.js +1 -1
  404. package/dist/design-system25.mjs +3 -3
  405. package/dist/design-system26.js +1 -1
  406. package/dist/design-system26.mjs +1 -1
  407. package/dist/design-system27.js +1 -1
  408. package/dist/design-system27.mjs +1 -1
  409. package/dist/design-system28.js +1 -1
  410. package/dist/design-system28.mjs +1 -1
  411. package/dist/design-system29.js +1 -1
  412. package/dist/design-system29.mjs +3 -3
  413. package/dist/design-system32.js +1 -1
  414. package/dist/design-system32.mjs +1 -1
  415. package/dist/design-system33.js +1 -1
  416. package/dist/design-system33.mjs +4 -4
  417. package/dist/design-system34.js +1 -1
  418. package/dist/design-system34.mjs +3 -3
  419. package/dist/design-system35.js +1 -1
  420. package/dist/design-system35.mjs +2 -2
  421. package/dist/design-system36.js +1 -1
  422. package/dist/design-system36.mjs +1 -1
  423. package/dist/design-system37.js +1 -1
  424. package/dist/design-system37.mjs +3 -3
  425. package/dist/design-system38.js +1 -1
  426. package/dist/design-system38.mjs +1 -1
  427. package/dist/design-system39.js +1 -1
  428. package/dist/design-system39.mjs +3 -3
  429. package/dist/design-system42.js +6 -1
  430. package/dist/design-system42.js.map +1 -1
  431. package/dist/design-system42.mjs +107 -2
  432. package/dist/design-system42.mjs.map +1 -1
  433. package/dist/design-system43.js +6 -1
  434. package/dist/design-system43.js.map +1 -1
  435. package/dist/design-system43.mjs +951 -2
  436. package/dist/design-system43.mjs.map +1 -1
  437. package/dist/design-system44.js +7 -1
  438. package/dist/design-system44.js.map +1 -1
  439. package/dist/design-system44.mjs +861 -2
  440. package/dist/design-system44.mjs.map +1 -1
  441. package/dist/design-system45.js +4 -1
  442. package/dist/design-system45.js.map +1 -1
  443. package/dist/design-system45.mjs +1364 -2
  444. package/dist/design-system45.mjs.map +1 -1
  445. package/dist/design-system46.js +1 -4
  446. package/dist/design-system46.js.map +1 -1
  447. package/dist/design-system46.mjs +2 -74
  448. package/dist/design-system46.mjs.map +1 -1
  449. package/dist/design-system47.js +1 -1
  450. package/dist/design-system47.mjs +2 -2
  451. package/dist/design-system48.js +1 -1
  452. package/dist/design-system48.mjs +2 -7
  453. package/dist/design-system48.mjs.map +1 -1
  454. package/dist/design-system49.js +1 -1
  455. package/dist/design-system49.js.map +1 -1
  456. package/dist/design-system49.mjs +2 -104
  457. package/dist/design-system49.mjs.map +1 -1
  458. package/dist/design-system50.js +4 -1
  459. package/dist/design-system50.js.map +1 -1
  460. package/dist/design-system50.mjs +74 -2
  461. package/dist/design-system50.mjs.map +1 -1
  462. package/dist/design-system52.js +1 -1
  463. package/dist/design-system52.mjs +7 -2
  464. package/dist/design-system52.mjs.map +1 -1
  465. package/dist/design-system53.js +1 -1
  466. package/dist/design-system53.js.map +1 -1
  467. package/dist/design-system53.mjs +104 -2
  468. package/dist/design-system53.mjs.map +1 -1
  469. package/dist/design-system54.js +1 -1
  470. package/dist/design-system54.mjs +2 -2
  471. package/dist/design-system55.js +1 -1
  472. package/dist/design-system55.mjs +2 -2
  473. package/dist/design-system56.js +1 -1
  474. package/dist/design-system56.mjs +2 -2
  475. package/dist/design-system57.js +1 -1
  476. package/dist/design-system57.mjs +1 -1
  477. package/dist/design-system58.js +1 -1
  478. package/dist/design-system58.js.map +1 -1
  479. package/dist/design-system58.mjs +2 -28
  480. package/dist/design-system58.mjs.map +1 -1
  481. package/dist/design-system59.js +1 -1
  482. package/dist/design-system59.mjs +2 -2
  483. package/dist/design-system60.js +1 -1
  484. package/dist/design-system60.mjs +1 -1
  485. package/dist/design-system61.js +1 -1
  486. package/dist/design-system61.mjs +1 -1
  487. package/dist/design-system62.js +1 -1
  488. package/dist/design-system62.js.map +1 -1
  489. package/dist/design-system62.mjs +28 -2
  490. package/dist/design-system62.mjs.map +1 -1
  491. package/dist/design-system63.js +1 -1
  492. package/dist/design-system63.mjs +2 -2
  493. package/dist/design-system64.js +1 -1
  494. package/dist/design-system64.mjs +1 -1
  495. package/dist/design-system65.js +1 -1
  496. package/dist/design-system65.js.map +1 -1
  497. package/dist/design-system65.mjs +2 -48
  498. package/dist/design-system65.mjs.map +1 -1
  499. package/dist/design-system66.js +1 -1
  500. package/dist/design-system66.mjs +2 -2
  501. package/dist/design-system67.js +1 -1
  502. package/dist/design-system67.mjs +2 -2
  503. package/dist/design-system68.js +1 -1
  504. package/dist/design-system68.js.map +1 -1
  505. package/dist/design-system68.mjs +2 -73
  506. package/dist/design-system68.mjs.map +1 -1
  507. package/dist/design-system69.js +1 -1
  508. package/dist/design-system69.js.map +1 -1
  509. package/dist/design-system69.mjs +48 -2
  510. package/dist/design-system69.mjs.map +1 -1
  511. package/dist/design-system71.js +1 -1
  512. package/dist/design-system71.js.map +1 -1
  513. package/dist/design-system71.mjs +2 -58
  514. package/dist/design-system71.mjs.map +1 -1
  515. package/dist/design-system72.js +1 -1
  516. package/dist/design-system72.js.map +1 -1
  517. package/dist/design-system72.mjs +73 -2
  518. package/dist/design-system72.mjs.map +1 -1
  519. package/dist/design-system73.js +1 -1
  520. package/dist/design-system73.mjs +2 -2
  521. package/dist/design-system74.js +1 -1
  522. package/dist/design-system74.mjs +2 -2
  523. package/dist/design-system75.js +1 -6
  524. package/dist/design-system75.js.map +1 -1
  525. package/dist/design-system75.mjs +57 -106
  526. package/dist/design-system75.mjs.map +1 -1
  527. package/dist/design-system76.js +1 -6
  528. package/dist/design-system76.js.map +1 -1
  529. package/dist/design-system76.mjs +2 -951
  530. package/dist/design-system76.mjs.map +1 -1
  531. package/dist/design-system77.js +1 -7
  532. package/dist/design-system77.js.map +1 -1
  533. package/dist/design-system77.mjs +2 -861
  534. package/dist/design-system77.mjs.map +1 -1
  535. package/dist/design-system78.js +1 -4
  536. package/dist/design-system78.js.map +1 -1
  537. package/dist/design-system78.mjs +2 -1364
  538. package/dist/design-system78.mjs.map +1 -1
  539. package/dist/design-system80.js +1 -1
  540. package/dist/design-system80.js.map +1 -1
  541. package/dist/design-system80.mjs +5 -16
  542. package/dist/design-system80.mjs.map +1 -1
  543. package/dist/design-system81.js +1 -1
  544. package/dist/design-system81.js.map +1 -1
  545. package/dist/design-system81.mjs +4 -75
  546. package/dist/design-system81.mjs.map +1 -1
  547. package/dist/design-system82.js +1 -1
  548. package/dist/design-system82.js.map +1 -1
  549. package/dist/design-system82.mjs +2 -6
  550. package/dist/design-system82.mjs.map +1 -1
  551. package/dist/design-system83.js +1 -1
  552. package/dist/design-system83.js.map +1 -1
  553. package/dist/design-system83.mjs +16 -66
  554. package/dist/design-system83.mjs.map +1 -1
  555. package/dist/design-system84.js +1 -1
  556. package/dist/design-system84.js.map +1 -1
  557. package/dist/design-system84.mjs +60 -2445
  558. package/dist/design-system84.mjs.map +1 -1
  559. package/dist/design-system85.js +1 -1
  560. package/dist/design-system85.js.map +1 -1
  561. package/dist/design-system85.mjs +2422 -1073
  562. package/dist/design-system85.mjs.map +1 -1
  563. package/dist/design-system86.js +1 -1
  564. package/dist/design-system86.js.map +1 -1
  565. package/dist/design-system86.mjs +1103 -6
  566. package/dist/design-system86.mjs.map +1 -1
  567. package/dist/design-system87.js +1 -1
  568. package/dist/design-system87.js.map +1 -1
  569. package/dist/design-system87.mjs +75 -4
  570. package/dist/design-system87.mjs.map +1 -1
  571. package/dist/design-system88.js +1 -1
  572. package/dist/design-system88.js.map +1 -1
  573. package/dist/design-system88.mjs +6 -2
  574. package/dist/design-system88.mjs.map +1 -1
  575. package/dist/design-system9.js +1 -1
  576. package/dist/design-system9.js.map +1 -1
  577. package/dist/design-system9.mjs +2 -2
  578. package/dist/design-system9.mjs.map +1 -1
  579. package/dist/design-system92.js +1 -1
  580. package/dist/design-system92.mjs +1 -1
  581. package/dist/design-system93.js +1 -1
  582. package/dist/design-system93.js.map +1 -1
  583. package/dist/design-system93.mjs +2 -63
  584. package/dist/design-system93.mjs.map +1 -1
  585. package/dist/design-system94.js +1 -1
  586. package/dist/design-system94.js.map +1 -1
  587. package/dist/design-system94.mjs +2 -4
  588. package/dist/design-system94.mjs.map +1 -1
  589. package/dist/design-system95.js +1 -1
  590. package/dist/design-system95.js.map +1 -1
  591. package/dist/design-system95.mjs +2 -9
  592. package/dist/design-system95.mjs.map +1 -1
  593. package/dist/design-system96.js +1 -1
  594. package/dist/design-system96.js.map +1 -1
  595. package/dist/design-system96.mjs +62 -6
  596. package/dist/design-system96.mjs.map +1 -1
  597. package/dist/design-system97.js +1 -1
  598. package/dist/design-system97.js.map +1 -1
  599. package/dist/design-system97.mjs +3 -3
  600. package/dist/design-system97.mjs.map +1 -1
  601. package/dist/design-system98.js +1 -1
  602. package/dist/design-system98.js.map +1 -1
  603. package/dist/design-system98.mjs +9 -3
  604. package/dist/design-system98.mjs.map +1 -1
  605. package/dist/design-system99.js +1 -1
  606. package/dist/design-system99.js.map +1 -1
  607. package/dist/design-system99.mjs +6 -5
  608. package/dist/design-system99.mjs.map +1 -1
  609. package/dist/style.css +1 -1
  610. package/package.json +1 -1
@@ -1,1106 +1,2455 @@
1
- import { getDefaultExportFromCjs as De, commonjsGlobal as ve } from "./design-system86.mjs";
2
- import { __module as ne } from "./design-system184.mjs";
3
- (function(re, fe) {
4
- (function(U, j) {
5
- re.exports = j();
6
- })(ve, function() {
7
- return function() {
8
- var U = { d: function(r, e) {
9
- for (var t in e)
10
- U.o(e, t) && !U.o(r, t) && Object.defineProperty(r, t, { enumerable: !0, get: e[t] });
11
- }, o: function(r, e) {
12
- return Object.prototype.hasOwnProperty.call(r, e);
13
- } }, j = {};
14
- U.d(j, { default: function() {
15
- return T;
16
- } });
17
- var l = { days: "days", months: "months", years: "years", day: "day", month: "month", year: "year", eventChangeViewDate: "changeViewDate", eventChangeCurrentView: "changeCurrentView", eventChangeFocusDate: "changeFocusDate", eventChangeSelectedDate: "changeSelectedDate", eventChangeTime: "changeTime", eventChangeLastSelectedDate: "changeLastSelectedDate", actionSelectDate: "selectDate", actionUnselectDate: "unselectDate", cssClassWeekend: "-weekend-" }, Q = { classes: "", inline: !1, locale: { days: ["Воскресенье", "Понедельник", "Вторник", "Среда", "Четверг", "Пятница", "Суббота"], daysShort: ["Вос", "Пон", "Вто", "Сре", "Чет", "Пят", "Суб"], daysMin: ["Вс", "Пн", "Вт", "Ср", "Чт", "Пт", "Сб"], months: ["Январь", "Февраль", "Март", "Апрель", "Май", "Июнь", "Июль", "Август", "Сентябрь", "Октябрь", "Ноябрь", "Декабрь"], monthsShort: ["Янв", "Фев", "Мар", "Апр", "Май", "Июн", "Июл", "Авг", "Сен", "Окт", "Ноя", "Дек"], today: "Сегодня", clear: "Очистить", dateFormat: "dd.MM.yyyy", timeFormat: "HH:mm", firstDay: 1 }, startDate: /* @__PURE__ */ new Date(), firstDay: "", weekends: [6, 0], dateFormat: "", altField: "", altFieldDateFormat: "T", toggleSelected: !0, keyboardNav: !0, selectedDates: !1, container: "", isMobile: !1, visible: !1, position: "bottom left", offset: 12, view: l.days, minView: l.days, showOtherMonths: !0, selectOtherMonths: !0, moveToOtherMonthsOnSelect: !0, showOtherYears: !0, selectOtherYears: !0, moveToOtherYearsOnSelect: !0, minDate: "", maxDate: "", disableNavWhenOutOfRange: !0, multipleDates: !1, multipleDatesSeparator: ", ", range: !1, dynamicRange: !0, buttons: !1, monthsField: "monthsShort", showEvent: "focus", autoClose: !1, prevHtml: '<svg><path d="M 17,12 l -5,5 l 5,5"></path></svg>', nextHtml: '<svg><path d="M 14,12 l 5,5 l -5,5"></path></svg>', navTitles: { days: "MMMM, <i>yyyy</i>", months: "yyyy", years: "yyyy1 - yyyy2" }, timepicker: !1, onlyTimepicker: !1, dateTimeSeparator: " ", timeFormat: "", minHours: 0, maxHours: 24, minMinutes: 0, maxMinutes: 59, hoursStep: 1, minutesStep: 1, onSelect: !1, onChangeViewDate: !1, onChangeView: !1, onRenderCell: !1, onShow: !1, onHide: !1, onClickDayName: !1 };
18
- function y(r) {
19
- let e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : document;
20
- return typeof r == "string" ? e.querySelector(r) : r;
21
- }
22
- function b() {
23
- let { tagName: r = "div", className: e = "", innerHtml: t = "", id: s = "", attrs: a = {} } = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, n = document.createElement(r);
24
- return e && n.classList.add(...e.split(" ")), s && (n.id = s), t && (n.innerHTML = t), a && q(n, a), n;
25
- }
26
- function q(r, e) {
27
- for (let [t, s] of Object.entries(e))
28
- s !== void 0 && r.setAttribute(t, s);
29
- return r;
30
- }
31
- function Z(r) {
32
- return new Date(r.getFullYear(), r.getMonth() + 1, 0).getDate();
33
- }
34
- function D(r) {
35
- let e = r.getHours(), t = e % 12 == 0 ? 12 : e % 12;
36
- return { year: r.getFullYear(), month: r.getMonth(), fullMonth: r.getMonth() + 1 < 10 ? "0" + (r.getMonth() + 1) : r.getMonth() + 1, date: r.getDate(), fullDate: r.getDate() < 10 ? "0" + r.getDate() : r.getDate(), day: r.getDay(), hours: e, fullHours: O(e), hours12: t, fullHours12: O(t), minutes: r.getMinutes(), fullMinutes: r.getMinutes() < 10 ? "0" + r.getMinutes() : r.getMinutes() };
37
- }
38
- function O(r) {
39
- return r < 10 ? "0" + r : r;
40
- }
41
- function F(r) {
42
- let e = 10 * Math.floor(r.getFullYear() / 10);
43
- return [e, e + 9];
44
- }
45
- function M() {
46
- let r = [];
47
- for (var e = arguments.length, t = new Array(e), s = 0; s < e; s++)
48
- t[s] = arguments[s];
49
- return t.forEach((a) => {
50
- if (typeof a == "object")
51
- for (let n in a)
52
- a[n] && r.push(n);
53
- else
54
- a && r.push(a);
55
- }), r.join(" ");
56
- }
57
- function v(r, e) {
58
- let t = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : l.days;
59
- if (!r || !e)
1
+ (function(g, k) {
2
+ typeof exports == "object" && typeof module < "u" ? k(exports) : typeof define == "function" && define.amd ? define(["exports"], k) : (g = typeof globalThis < "u" ? globalThis : g || self, k(g.IMask = {}));
3
+ })(globalThis, function(g) {
4
+ function k(a, t) {
5
+ if (a == null)
6
+ return {};
7
+ var e = {}, s = Object.keys(a), n, u;
8
+ for (u = 0; u < s.length; u++)
9
+ n = s[u], !(t.indexOf(n) >= 0) && (e[n] = a[n]);
10
+ return e;
11
+ }
12
+ function h(a) {
13
+ let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
14
+ return new h.InputMask(a, t);
15
+ }
16
+ class c {
17
+ /** Inserted symbols */
18
+ /** Can skip chars */
19
+ /** Additional offset if any changes occurred before tail */
20
+ /** Raw inserted is used by dynamic mask */
21
+ constructor(t) {
22
+ Object.assign(
23
+ this,
24
+ {
25
+ inserted: "",
26
+ rawInserted: "",
27
+ skip: !1,
28
+ tailShift: 0
29
+ },
30
+ t
31
+ );
32
+ }
33
+ /**
34
+ Aggregate changes
35
+ @returns {ChangeDetails} `this`
36
+ */
37
+ aggregate(t) {
38
+ return this.rawInserted += t.rawInserted, this.skip = this.skip || t.skip, this.inserted += t.inserted, this.tailShift += t.tailShift, this;
39
+ }
40
+ /** Total offset considering all changes */
41
+ get offset() {
42
+ return this.tailShift + this.inserted.length;
43
+ }
44
+ }
45
+ h.ChangeDetails = c;
46
+ function B(a) {
47
+ return typeof a == "string" || a instanceof String;
48
+ }
49
+ const o = {
50
+ NONE: "NONE",
51
+ LEFT: "LEFT",
52
+ FORCE_LEFT: "FORCE_LEFT",
53
+ RIGHT: "RIGHT",
54
+ FORCE_RIGHT: "FORCE_RIGHT"
55
+ };
56
+ function $(a) {
57
+ switch (a) {
58
+ case o.LEFT:
59
+ return o.FORCE_LEFT;
60
+ case o.RIGHT:
61
+ return o.FORCE_RIGHT;
62
+ default:
63
+ return a;
64
+ }
65
+ }
66
+ function R(a) {
67
+ return a.replace(/([.*+?^=!:${}()|[\]\/\\])/g, "\\$1");
68
+ }
69
+ function M(a) {
70
+ return Array.isArray(a) ? a : [a, new c()];
71
+ }
72
+ function I(a, t) {
73
+ if (t === a)
74
+ return !0;
75
+ var e = Array.isArray(t), s = Array.isArray(a), n;
76
+ if (e && s) {
77
+ if (t.length != a.length)
78
+ return !1;
79
+ for (n = 0; n < t.length; n++)
80
+ if (!I(t[n], a[n]))
60
81
  return !1;
61
- let s = D(r), a = D(e);
62
- return { [l.days]: s.date === a.date && s.month === a.month && s.year === a.year, [l.months]: s.month === a.month && s.year === a.year, [l.years]: s.year === a.year }[t];
63
- }
64
- function $(r, e, t) {
65
- let s = J(r, !1).getTime(), a = J(e, !1).getTime();
66
- return t ? s >= a : s > a;
67
- }
68
- function E(r, e) {
69
- return !$(r, e, !0);
70
- }
71
- function J(r) {
72
- let e = !(arguments.length > 1 && arguments[1] !== void 0) || arguments[1], t = new Date(r.getTime());
73
- return typeof e != "boolean" || e || he(t), t;
82
+ return !0;
83
+ }
84
+ if (e != s)
85
+ return !1;
86
+ if (t && a && typeof t == "object" && typeof a == "object") {
87
+ var u = t instanceof Date, i = a instanceof Date;
88
+ if (u && i)
89
+ return t.getTime() == a.getTime();
90
+ if (u != i)
91
+ return !1;
92
+ var r = t instanceof RegExp, l = a instanceof RegExp;
93
+ if (r && l)
94
+ return t.toString() == a.toString();
95
+ if (r != l)
96
+ return !1;
97
+ var d = Object.keys(t);
98
+ for (n = 0; n < d.length; n++)
99
+ if (!Object.prototype.hasOwnProperty.call(a, d[n]))
100
+ return !1;
101
+ for (n = 0; n < d.length; n++)
102
+ if (!I(a[d[n]], t[d[n]]))
103
+ return !1;
104
+ return !0;
105
+ } else if (t && a && typeof t == "function" && typeof a == "function")
106
+ return t.toString() === a.toString();
107
+ return !1;
108
+ }
109
+ class K {
110
+ /** Current input value */
111
+ /** Current cursor position */
112
+ /** Old input value */
113
+ /** Old selection */
114
+ constructor(t, e, s, n) {
115
+ for (this.value = t, this.cursorPos = e, this.oldValue = s, this.oldSelection = n; this.value.slice(0, this.startChangePos) !== this.oldValue.slice(0, this.startChangePos); )
116
+ --this.oldSelection.start;
117
+ }
118
+ /**
119
+ Start changing position
120
+ @readonly
121
+ */
122
+ get startChangePos() {
123
+ return Math.min(this.cursorPos, this.oldSelection.start);
124
+ }
125
+ /**
126
+ Inserted symbols count
127
+ @readonly
128
+ */
129
+ get insertedCount() {
130
+ return this.cursorPos - this.startChangePos;
131
+ }
132
+ /**
133
+ Inserted symbols
134
+ @readonly
135
+ */
136
+ get inserted() {
137
+ return this.value.substr(this.startChangePos, this.insertedCount);
138
+ }
139
+ /**
140
+ Removed symbols count
141
+ @readonly
142
+ */
143
+ get removedCount() {
144
+ return Math.max(
145
+ this.oldSelection.end - this.startChangePos || // for Delete
146
+ this.oldValue.length - this.value.length,
147
+ 0
148
+ );
149
+ }
150
+ /**
151
+ Removed symbols
152
+ @readonly
153
+ */
154
+ get removed() {
155
+ return this.oldValue.substr(this.startChangePos, this.removedCount);
156
+ }
157
+ /**
158
+ Unchanged head symbols
159
+ @readonly
160
+ */
161
+ get head() {
162
+ return this.value.substring(0, this.startChangePos);
163
+ }
164
+ /**
165
+ Unchanged tail symbols
166
+ @readonly
167
+ */
168
+ get tail() {
169
+ return this.value.substring(this.startChangePos + this.insertedCount);
170
+ }
171
+ /**
172
+ Remove direction
173
+ @readonly
174
+ */
175
+ get removeDirection() {
176
+ return !this.removedCount || this.insertedCount ? o.NONE : (this.oldSelection.end === this.cursorPos || this.oldSelection.start === this.cursorPos) && // if not range removed (event with backspace)
177
+ this.oldSelection.end === this.oldSelection.start ? o.RIGHT : o.LEFT;
178
+ }
179
+ }
180
+ class _ {
181
+ /** Tail value as string */
182
+ /** Tail start position */
183
+ /** Start position */
184
+ constructor() {
185
+ let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "", e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 0, s = arguments.length > 2 ? arguments[2] : void 0;
186
+ this.value = t, this.from = e, this.stop = s;
187
+ }
188
+ toString() {
189
+ return this.value;
190
+ }
191
+ extend(t) {
192
+ this.value += String(t);
193
+ }
194
+ appendTo(t) {
195
+ return t.append(this.toString(), {
196
+ tail: !0
197
+ }).aggregate(t._appendPlaceholder());
198
+ }
199
+ get state() {
200
+ return {
201
+ value: this.value,
202
+ from: this.from,
203
+ stop: this.stop
204
+ };
205
+ }
206
+ set state(t) {
207
+ Object.assign(this, t);
208
+ }
209
+ unshift(t) {
210
+ if (!this.value.length || t != null && this.from >= t)
211
+ return "";
212
+ const e = this.value[0];
213
+ return this.value = this.value.slice(1), e;
214
+ }
215
+ shift() {
216
+ if (!this.value.length)
217
+ return "";
218
+ const t = this.value[this.value.length - 1];
219
+ return this.value = this.value.slice(0, -1), t;
220
+ }
221
+ }
222
+ class p {
223
+ // $Shape<MaskedOptions>; TODO after fix https://github.com/facebook/flow/issues/4773
224
+ /** @type {Mask} */
225
+ /** */
226
+ // $FlowFixMe no ideas
227
+ /** Transforms value before mask processing */
228
+ /** Validates if value is acceptable */
229
+ /** Does additional processing in the end of editing */
230
+ /** Format typed value to string */
231
+ /** Parse strgin to get typed value */
232
+ /** Enable characters overwriting */
233
+ /** */
234
+ /** */
235
+ /** */
236
+ constructor(t) {
237
+ this._value = "", this._update(Object.assign({}, p.DEFAULTS, t)), this.isInitialized = !0;
238
+ }
239
+ /** Sets and applies new options */
240
+ updateOptions(t) {
241
+ Object.keys(t).length && this.withValueRefresh(this._update.bind(this, t));
242
+ }
243
+ /**
244
+ Sets new options
245
+ @protected
246
+ */
247
+ _update(t) {
248
+ Object.assign(this, t);
249
+ }
250
+ /** Mask state */
251
+ get state() {
252
+ return {
253
+ _value: this.value
254
+ };
255
+ }
256
+ set state(t) {
257
+ this._value = t._value;
258
+ }
259
+ /** Resets value */
260
+ reset() {
261
+ this._value = "";
262
+ }
263
+ /** */
264
+ get value() {
265
+ return this._value;
266
+ }
267
+ set value(t) {
268
+ this.resolve(t);
269
+ }
270
+ /** Resolve new value */
271
+ resolve(t) {
272
+ return this.reset(), this.append(
273
+ t,
274
+ {
275
+ input: !0
276
+ },
277
+ ""
278
+ ), this.doCommit(), this.value;
279
+ }
280
+ /** */
281
+ get unmaskedValue() {
282
+ return this.value;
283
+ }
284
+ set unmaskedValue(t) {
285
+ this.reset(), this.append(t, {}, ""), this.doCommit();
286
+ }
287
+ /** */
288
+ get typedValue() {
289
+ return this.doParse(this.value);
290
+ }
291
+ set typedValue(t) {
292
+ this.value = this.doFormat(t);
293
+ }
294
+ /** Value that includes raw user input */
295
+ get rawInputValue() {
296
+ return this.extractInput(0, this.value.length, {
297
+ raw: !0
298
+ });
299
+ }
300
+ set rawInputValue(t) {
301
+ this.reset(), this.append(
302
+ t,
303
+ {
304
+ raw: !0
305
+ },
306
+ ""
307
+ ), this.doCommit();
308
+ }
309
+ get displayValue() {
310
+ return this.value;
311
+ }
312
+ /** */
313
+ get isComplete() {
314
+ return !0;
315
+ }
316
+ /** */
317
+ get isFilled() {
318
+ return this.isComplete;
319
+ }
320
+ /** Finds nearest input position in direction */
321
+ nearestInputPos(t, e) {
322
+ return t;
323
+ }
324
+ totalInputPositions() {
325
+ let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0, e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : this.value.length;
326
+ return Math.min(this.value.length, e - t);
327
+ }
328
+ /** Extracts value in range considering flags */
329
+ extractInput() {
330
+ let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0, e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : this.value.length;
331
+ return this.value.slice(t, e);
332
+ }
333
+ /** Extracts tail in range */
334
+ extractTail() {
335
+ let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0, e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : this.value.length;
336
+ return new _(
337
+ this.extractInput(t, e),
338
+ t
339
+ );
340
+ }
341
+ /** Appends tail */
342
+ // $FlowFixMe no ideas
343
+ appendTail(t) {
344
+ return B(t) && (t = new _(String(t))), t.appendTo(this);
345
+ }
346
+ /** Appends char */
347
+ _appendCharRaw(t) {
348
+ return t ? (this._value += t, new c({
349
+ inserted: t,
350
+ rawInserted: t
351
+ })) : new c();
352
+ }
353
+ /** Appends char */
354
+ _appendChar(t) {
355
+ let e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, s = arguments.length > 2 ? arguments[2] : void 0;
356
+ const n = this.state;
357
+ let u;
358
+ if ([t, u] = M(this.doPrepare(t, e)), u = u.aggregate(this._appendCharRaw(t, e)), u.inserted) {
359
+ let i, r = this.doValidate(e) !== !1;
360
+ if (r && s != null) {
361
+ const l = this.state;
362
+ this.overwrite === !0 && (i = s.state, s.unshift(this.value.length - u.tailShift));
363
+ let d = this.appendTail(s);
364
+ r = d.rawInserted === s.toString(), !(r && d.inserted) && this.overwrite === "shift" && (this.state = l, i = s.state, s.shift(), d = this.appendTail(s), r = d.rawInserted === s.toString()), r && d.inserted && (this.state = l);
365
+ }
366
+ r || (u = new c(), this.state = n, s && i && (s.state = i));
74
367
  }
75
- function he(r) {
76
- return r.setHours(0, 0, 0, 0), r;
368
+ return u;
369
+ }
370
+ /** Appends optional placeholder at end */
371
+ _appendPlaceholder() {
372
+ return new c();
373
+ }
374
+ /** Appends optional eager placeholder at end */
375
+ _appendEager() {
376
+ return new c();
377
+ }
378
+ /** Appends symbols considering flags */
379
+ // $FlowFixMe no ideas
380
+ append(t, e, s) {
381
+ if (!B(t))
382
+ throw new Error("value should be string");
383
+ const n = new c(), u = B(s) ? new _(String(s)) : s;
384
+ e != null && e.tail && (e._beforeTailState = this.state);
385
+ for (let i = 0; i < t.length; ++i) {
386
+ const r = this._appendChar(t[i], e, u);
387
+ if (!r.rawInserted && !this.doSkipInvalid(t[i], e, u))
388
+ break;
389
+ n.aggregate(r);
77
390
  }
78
- function w(r, e, t) {
79
- r.length ? r.forEach((s) => {
80
- s.addEventListener(e, t);
81
- }) : r.addEventListener(e, t);
391
+ return u != null && (n.tailShift += this.appendTail(u).tailShift), (this.eager === !0 || this.eager === "append") && e !== null && e !== void 0 && e.input && t && n.aggregate(this._appendEager()), n;
392
+ }
393
+ /** */
394
+ remove() {
395
+ let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0, e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : this.value.length;
396
+ return this._value = this.value.slice(0, t) + this.value.slice(e), new c();
397
+ }
398
+ /** Calls function and reapplies current value */
399
+ withValueRefresh(t) {
400
+ if (this._refreshing || !this.isInitialized)
401
+ return t();
402
+ this._refreshing = !0;
403
+ const e = this.rawInputValue, s = this.value, n = t();
404
+ return this.rawInputValue = e, this.value && this.value !== s && s.indexOf(this.value) === 0 && this.append(s.slice(this.value.length), {}, ""), delete this._refreshing, n;
405
+ }
406
+ /** */
407
+ runIsolated(t) {
408
+ if (this._isolated || !this.isInitialized)
409
+ return t(this);
410
+ this._isolated = !0;
411
+ const e = this.state, s = t(this);
412
+ return this.state = e, delete this._isolated, s;
413
+ }
414
+ /** */
415
+ doSkipInvalid(t) {
416
+ return this.skipInvalid;
417
+ }
418
+ /**
419
+ Prepares string before mask processing
420
+ @protected
421
+ */
422
+ doPrepare(t) {
423
+ let e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
424
+ return this.prepare ? this.prepare(t, this, e) : t;
425
+ }
426
+ /**
427
+ Validates if value is acceptable
428
+ @protected
429
+ */
430
+ doValidate(t) {
431
+ return (!this.validate || this.validate(this.value, this, t)) && (!this.parent || this.parent.doValidate(t));
432
+ }
433
+ /**
434
+ Does additional processing in the end of editing
435
+ @protected
436
+ */
437
+ doCommit() {
438
+ this.commit && this.commit(this.value, this);
439
+ }
440
+ /** */
441
+ doFormat(t) {
442
+ return this.format ? this.format(t, this) : t;
443
+ }
444
+ /** */
445
+ doParse(t) {
446
+ return this.parse ? this.parse(t, this) : t;
447
+ }
448
+ /** */
449
+ splice(t, e, s, n) {
450
+ let u = arguments.length > 4 && arguments[4] !== void 0 ? arguments[4] : {
451
+ input: !0
452
+ };
453
+ const i = t + e, r = this.extractTail(i), l = this.eager === !0 || this.eager === "remove";
454
+ let d;
455
+ l && (n = $(n), d = this.extractInput(0, i, {
456
+ raw: !0
457
+ }));
458
+ let E = t;
459
+ const A = new c();
460
+ if (n !== o.NONE && (E = this.nearestInputPos(
461
+ t,
462
+ e > 1 && t !== 0 && !l ? o.NONE : n
463
+ ), A.tailShift = E - t), A.aggregate(this.remove(E)), l && n !== o.NONE && d === this.rawInputValue)
464
+ if (n === o.FORCE_LEFT) {
465
+ let V;
466
+ for (; d === this.rawInputValue && (V = this.value.length); )
467
+ A.aggregate(
468
+ new c({
469
+ tailShift: -1
470
+ })
471
+ ).aggregate(this.remove(V - 1));
472
+ } else
473
+ n === o.FORCE_RIGHT && r.unshift();
474
+ return A.aggregate(this.append(s, u, r));
475
+ }
476
+ maskEquals(t) {
477
+ return this.mask === t;
478
+ }
479
+ typedValueEquals(t) {
480
+ const e = this.typedValue;
481
+ return t === e || p.EMPTY_VALUES.includes(t) && p.EMPTY_VALUES.includes(e) || this.doFormat(t) === this.doFormat(this.typedValue);
482
+ }
483
+ }
484
+ p.DEFAULTS = {
485
+ format: String,
486
+ parse: (a) => a,
487
+ skipInvalid: !0
488
+ }, p.EMPTY_VALUES = [void 0, null, ""], h.Masked = p;
489
+ function L(a) {
490
+ if (a == null)
491
+ throw new Error("mask property should be defined");
492
+ return a instanceof RegExp ? h.MaskedRegExp : B(a) ? h.MaskedPattern : a instanceof Date || a === Date ? h.MaskedDate : a instanceof Number || typeof a == "number" || a === Number ? h.MaskedNumber : Array.isArray(a) || a === Array ? h.MaskedDynamic : h.Masked && a.prototype instanceof h.Masked ? a : a instanceof h.Masked ? a.constructor : a instanceof Function ? h.MaskedFunction : (console.warn("Mask not found for mask", a), h.Masked);
493
+ }
494
+ function v(a) {
495
+ if (h.Masked && a instanceof h.Masked)
496
+ return a;
497
+ a = Object.assign({}, a);
498
+ const t = a.mask;
499
+ if (h.Masked && t instanceof h.Masked)
500
+ return t;
501
+ const e = L(t);
502
+ if (!e)
503
+ throw new Error(
504
+ "Masked class is not found for provided mask, appropriate module needs to be import manually before creating mask."
505
+ );
506
+ return new e(a);
507
+ }
508
+ h.createMask = v;
509
+ const Z = [
510
+ "parent",
511
+ "isOptional",
512
+ "placeholderChar",
513
+ "displayChar",
514
+ "lazy",
515
+ "eager"
516
+ ], X = {
517
+ 0: /\d/,
518
+ a: /[\u0041-\u005A\u0061-\u007A\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/,
519
+ // http://stackoverflow.com/a/22075070
520
+ "*": /./
521
+ };
522
+ class N {
523
+ /** */
524
+ /** */
525
+ /** */
526
+ /** */
527
+ /** */
528
+ /** */
529
+ /** */
530
+ /** */
531
+ constructor(t) {
532
+ const { parent: e, isOptional: s, placeholderChar: n, displayChar: u, lazy: i, eager: r } = t, l = k(t, Z);
533
+ this.masked = v(l), Object.assign(this, {
534
+ parent: e,
535
+ isOptional: s,
536
+ placeholderChar: n,
537
+ displayChar: u,
538
+ lazy: i,
539
+ eager: r
540
+ });
541
+ }
542
+ reset() {
543
+ this.isFilled = !1, this.masked.reset();
544
+ }
545
+ remove() {
546
+ let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0, e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : this.value.length;
547
+ return t === 0 && e >= 1 ? (this.isFilled = !1, this.masked.remove(t, e)) : new c();
548
+ }
549
+ get value() {
550
+ return this.masked.value || (this.isFilled && !this.isOptional ? this.placeholderChar : "");
551
+ }
552
+ get unmaskedValue() {
553
+ return this.masked.unmaskedValue;
554
+ }
555
+ get displayValue() {
556
+ return this.masked.value && this.displayChar || this.value;
557
+ }
558
+ get isComplete() {
559
+ return !!this.masked.value || this.isOptional;
560
+ }
561
+ _appendChar(t) {
562
+ let e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
563
+ if (this.isFilled)
564
+ return new c();
565
+ const s = this.masked.state, n = this.masked._appendChar(t, e);
566
+ return n.inserted && this.doValidate(e) === !1 && (n.inserted = n.rawInserted = "", this.masked.state = s), !n.inserted && !this.isOptional && !this.lazy && !e.input && (n.inserted = this.placeholderChar), n.skip = !n.inserted && !this.isOptional, this.isFilled = !!n.inserted, n;
567
+ }
568
+ append() {
569
+ return this.masked.append(...arguments);
570
+ }
571
+ _appendPlaceholder() {
572
+ const t = new c();
573
+ return this.isFilled || this.isOptional || (this.isFilled = !0, t.inserted = this.placeholderChar), t;
574
+ }
575
+ _appendEager() {
576
+ return new c();
577
+ }
578
+ extractTail() {
579
+ return this.masked.extractTail(...arguments);
580
+ }
581
+ appendTail() {
582
+ return this.masked.appendTail(...arguments);
583
+ }
584
+ extractInput() {
585
+ let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0, e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : this.value.length, s = arguments.length > 2 ? arguments[2] : void 0;
586
+ return this.masked.extractInput(t, e, s);
587
+ }
588
+ nearestInputPos(t) {
589
+ let e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : o.NONE;
590
+ const s = 0, n = this.value.length, u = Math.min(Math.max(t, s), n);
591
+ switch (e) {
592
+ case o.LEFT:
593
+ case o.FORCE_LEFT:
594
+ return this.isComplete ? u : s;
595
+ case o.RIGHT:
596
+ case o.FORCE_RIGHT:
597
+ return this.isComplete ? u : n;
598
+ case o.NONE:
599
+ default:
600
+ return u;
82
601
  }
83
- function R(r, e) {
84
- return !(!r || r === document || r instanceof DocumentFragment) && (r.matches(e) ? r : R(r.parentNode, e));
602
+ }
603
+ totalInputPositions() {
604
+ let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0, e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : this.value.length;
605
+ return this.value.slice(t, e).length;
606
+ }
607
+ doValidate() {
608
+ return this.masked.doValidate(...arguments) && (!this.parent || this.parent.doValidate(...arguments));
609
+ }
610
+ doCommit() {
611
+ this.masked.doCommit();
612
+ }
613
+ get state() {
614
+ return {
615
+ masked: this.masked.state,
616
+ isFilled: this.isFilled
617
+ };
618
+ }
619
+ set state(t) {
620
+ this.masked.state = t.masked, this.isFilled = t.isFilled;
621
+ }
622
+ }
623
+ class j {
624
+ /** */
625
+ /** */
626
+ /** */
627
+ /** */
628
+ /** */
629
+ /** */
630
+ constructor(t) {
631
+ Object.assign(this, t), this._value = "", this.isFixed = !0;
632
+ }
633
+ get value() {
634
+ return this._value;
635
+ }
636
+ get unmaskedValue() {
637
+ return this.isUnmasking ? this.value : "";
638
+ }
639
+ get displayValue() {
640
+ return this.value;
641
+ }
642
+ reset() {
643
+ this._isRawInput = !1, this._value = "";
644
+ }
645
+ remove() {
646
+ let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0, e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : this._value.length;
647
+ return this._value = this._value.slice(0, t) + this._value.slice(e), this._value || (this._isRawInput = !1), new c();
648
+ }
649
+ nearestInputPos(t) {
650
+ let e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : o.NONE;
651
+ const s = 0, n = this._value.length;
652
+ switch (e) {
653
+ case o.LEFT:
654
+ case o.FORCE_LEFT:
655
+ return s;
656
+ case o.NONE:
657
+ case o.RIGHT:
658
+ case o.FORCE_RIGHT:
659
+ default:
660
+ return n;
85
661
  }
86
- function A(r, e, t) {
87
- return r > t ? t : r < e ? e : r;
662
+ }
663
+ totalInputPositions() {
664
+ let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0, e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : this._value.length;
665
+ return this._isRawInput ? e - t : 0;
666
+ }
667
+ extractInput() {
668
+ let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0, e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : this._value.length;
669
+ return (arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {}).raw && this._isRawInput && this._value.slice(t, e) || "";
670
+ }
671
+ get isComplete() {
672
+ return !0;
673
+ }
674
+ get isFilled() {
675
+ return !!this._value;
676
+ }
677
+ _appendChar(t) {
678
+ let e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
679
+ const s = new c();
680
+ if (this.isFilled)
681
+ return s;
682
+ const n = this.eager === !0 || this.eager === "append", i = this.char === t && (this.isUnmasking || e.input || e.raw) && (!e.raw || !n) && !e.tail;
683
+ return i && (s.rawInserted = this.char), this._value = s.inserted = this.char, this._isRawInput = i && (e.raw || e.input), s;
684
+ }
685
+ _appendEager() {
686
+ return this._appendChar(this.char, {
687
+ tail: !0
688
+ });
689
+ }
690
+ _appendPlaceholder() {
691
+ const t = new c();
692
+ return this.isFilled || (this._value = t.inserted = this.char), t;
693
+ }
694
+ extractTail() {
695
+ return arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : this.value.length, new _("");
696
+ }
697
+ // $FlowFixMe no ideas
698
+ appendTail(t) {
699
+ return B(t) && (t = new _(String(t))), t.appendTo(this);
700
+ }
701
+ append(t, e, s) {
702
+ const n = this._appendChar(t[0], e);
703
+ return s != null && (n.tailShift += this.appendTail(s).tailShift), n;
704
+ }
705
+ doCommit() {
706
+ }
707
+ get state() {
708
+ return {
709
+ _value: this._value,
710
+ _isRawInput: this._isRawInput
711
+ };
712
+ }
713
+ set state(t) {
714
+ Object.assign(this, t);
715
+ }
716
+ }
717
+ const W = ["chunks"];
718
+ class F {
719
+ /** */
720
+ constructor() {
721
+ let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : [], e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 0;
722
+ this.chunks = t, this.from = e;
723
+ }
724
+ toString() {
725
+ return this.chunks.map(String).join("");
726
+ }
727
+ // $FlowFixMe no ideas
728
+ extend(t) {
729
+ if (!String(t))
730
+ return;
731
+ B(t) && (t = new _(String(t)));
732
+ const e = this.chunks[this.chunks.length - 1], s = e && // if stops are same or tail has no stop
733
+ (e.stop === t.stop || t.stop == null) && // if tail chunk goes just after last chunk
734
+ t.from === e.from + e.toString().length;
735
+ if (t instanceof _)
736
+ s ? e.extend(t.toString()) : this.chunks.push(t);
737
+ else if (t instanceof F) {
738
+ if (t.stop == null) {
739
+ let n;
740
+ for (; t.chunks.length && t.chunks[0].stop == null; )
741
+ n = t.chunks.shift(), n.from += t.from, this.extend(n);
742
+ }
743
+ t.toString() && (t.stop = t.blockIndex, this.chunks.push(t));
88
744
  }
89
- function Y(r) {
90
- for (var e = arguments.length, t = new Array(e > 1 ? e - 1 : 0), s = 1; s < e; s++)
91
- t[s - 1] = arguments[s];
92
- return t.filter((a) => a).forEach((a) => {
93
- for (let [n, i] of Object.entries(a))
94
- if (i !== void 0 && i.toString() === "[object Object]") {
95
- let h = r[n] !== void 0 ? r[n].toString() : void 0, o = i.toString(), d = Array.isArray(i) ? [] : {};
96
- r[n] = r[n] ? h !== o ? d : r[n] : d, Y(r[n], i);
97
- } else
98
- r[n] = i;
99
- }), r;
745
+ }
746
+ appendTo(t) {
747
+ if (!(t instanceof h.MaskedPattern))
748
+ return new _(this.toString()).appendTo(t);
749
+ const e = new c();
750
+ for (let s = 0; s < this.chunks.length && !e.skip; ++s) {
751
+ const n = this.chunks[s], u = t._mapPosToBlock(t.value.length), i = n.stop;
752
+ let r;
753
+ if (i != null && // if block not found or stop is behind lastBlock
754
+ (!u || u.index <= i)) {
755
+ if (n instanceof F || // for continuous block also check if stop is exist
756
+ t._stops.indexOf(i) >= 0) {
757
+ const l = t._appendPlaceholder(i);
758
+ e.aggregate(l);
759
+ }
760
+ r = n instanceof F && t._blocks[i];
761
+ }
762
+ if (r) {
763
+ const l = r.appendTail(n);
764
+ l.skip = !1, e.aggregate(l), t._value += l.inserted;
765
+ const d = n.toString().slice(l.rawInserted.length);
766
+ d && e.aggregate(
767
+ t.append(d, {
768
+ tail: !0
769
+ })
770
+ );
771
+ } else
772
+ e.aggregate(
773
+ t.append(n.toString(), {
774
+ tail: !0
775
+ })
776
+ );
100
777
  }
101
- function C(r) {
102
- let e = r;
103
- return r instanceof Date || (e = new Date(r)), isNaN(e.getTime()) && (console.log('Unable to convert value "'.concat(r, '" to Date object')), e = !1), e;
778
+ return e;
779
+ }
780
+ get state() {
781
+ return {
782
+ chunks: this.chunks.map((t) => t.state),
783
+ from: this.from,
784
+ stop: this.stop,
785
+ blockIndex: this.blockIndex
786
+ };
787
+ }
788
+ set state(t) {
789
+ const { chunks: e } = t, s = k(t, W);
790
+ Object.assign(this, s), this.chunks = e.map((n) => {
791
+ const u = "chunks" in n ? new F() : new _();
792
+ return u.state = n, u;
793
+ });
794
+ }
795
+ unshift(t) {
796
+ if (!this.chunks.length || t != null && this.from >= t)
797
+ return "";
798
+ const e = t != null ? t - this.from : t;
799
+ let s = 0;
800
+ for (; s < this.chunks.length; ) {
801
+ const n = this.chunks[s], u = n.unshift(e);
802
+ if (n.toString()) {
803
+ if (!u)
804
+ break;
805
+ ++s;
806
+ } else
807
+ this.chunks.splice(s, 1);
808
+ if (u)
809
+ return u;
104
810
  }
105
- function G(r) {
106
- let e = "\\s|\\.|-|/|\\\\|,|\\$|\\!|\\?|:|;";
107
- return new RegExp("(^|>|" + e + ")(" + r + ")($|<|" + e + ")", "g");
811
+ return "";
812
+ }
813
+ shift() {
814
+ if (!this.chunks.length)
815
+ return "";
816
+ let t = this.chunks.length - 1;
817
+ for (; 0 <= t; ) {
818
+ const e = this.chunks[t], s = e.shift();
819
+ if (e.toString()) {
820
+ if (!s)
821
+ break;
822
+ --t;
823
+ } else
824
+ this.chunks.splice(t, 1);
825
+ if (s)
826
+ return s;
108
827
  }
109
- function V(r, e, t) {
110
- return e in r ? Object.defineProperty(r, e, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : r[e] = t, r;
828
+ return "";
829
+ }
830
+ }
831
+ class J {
832
+ constructor(t, e) {
833
+ this.masked = t, this._log = [];
834
+ const { offset: s, index: n } = t._mapPosToBlock(e) || (e < 0 ? (
835
+ // first
836
+ {
837
+ index: 0,
838
+ offset: 0
839
+ }
840
+ ) : (
841
+ // last
842
+ {
843
+ index: this.masked._blocks.length,
844
+ offset: 0
845
+ }
846
+ ));
847
+ this.offset = s, this.index = n, this.ok = !1;
848
+ }
849
+ get block() {
850
+ return this.masked._blocks[this.index];
851
+ }
852
+ get pos() {
853
+ return this.masked._blockStartPos(this.index) + this.offset;
854
+ }
855
+ get state() {
856
+ return {
857
+ index: this.index,
858
+ offset: this.offset,
859
+ ok: this.ok
860
+ };
861
+ }
862
+ set state(t) {
863
+ Object.assign(this, t);
864
+ }
865
+ pushState() {
866
+ this._log.push(this.state);
867
+ }
868
+ popState() {
869
+ const t = this._log.pop();
870
+ return this.state = t, t;
871
+ }
872
+ bindBlock() {
873
+ this.block || (this.index < 0 && (this.index = 0, this.offset = 0), this.index >= this.masked._blocks.length && (this.index = this.masked._blocks.length - 1, this.offset = this.block.value.length));
874
+ }
875
+ _pushLeft(t) {
876
+ for (this.pushState(), this.bindBlock(); 0 <= this.index; --this.index, this.offset = ((e = this.block) === null || e === void 0 ? void 0 : e.value.length) || 0) {
877
+ var e;
878
+ if (t())
879
+ return this.ok = !0;
111
880
  }
112
- class oe {
113
- constructor() {
114
- let { type: e, date: t, dp: s, opts: a, body: n } = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
115
- V(this, "focus", () => {
116
- this.$cell.classList.add("-focus-"), this.focused = !0;
117
- }), V(this, "removeFocus", () => {
118
- this.$cell.classList.remove("-focus-"), this.focused = !1;
119
- }), V(this, "select", () => {
120
- this.$cell.classList.add("-selected-"), this.selected = !0;
121
- }), V(this, "removeSelect", () => {
122
- this.$cell.classList.remove("-selected-", "-range-from-", "-range-to-"), this.selected = !1;
123
- }), V(this, "onChangeSelectedDate", () => {
124
- this.isDisabled || (this._handleSelectedStatus(), this.opts.range && this._handleRangeStatus());
125
- }), V(this, "onChangeFocusDate", (i) => {
126
- if (!i)
127
- return void (this.focused && this.removeFocus());
128
- let h = v(i, this.date, this.type);
129
- h ? this.focus() : !h && this.focused && this.removeFocus(), this.opts.range && this._handleRangeStatus();
130
- }), V(this, "render", () => (this.$cell.innerHTML = this._getHtml(), this.$cell.adpCell = this, this.$cell)), this.type = e, this.singleType = this.type.slice(0, -1), this.date = t, this.dp = s, this.opts = a, this.body = n, this.customData = !1, this.init();
131
- }
132
- init() {
133
- let { range: e, onRenderCell: t } = this.opts;
134
- t && (this.customData = t({ date: this.date, cellType: this.singleType, datepicker: this.dp })), this._createElement(), this._bindDatepickerEvents(), this._handleInitialFocusStatus(), this.dp.hasSelectedDates && (this._handleSelectedStatus(), e && this._handleRangeStatus());
135
- }
136
- _bindDatepickerEvents() {
137
- this.dp.on(l.eventChangeSelectedDate, this.onChangeSelectedDate), this.dp.on(l.eventChangeFocusDate, this.onChangeFocusDate);
138
- }
139
- unbindDatepickerEvents() {
140
- this.dp.off(l.eventChangeSelectedDate, this.onChangeSelectedDate), this.dp.off(l.eventChangeFocusDate, this.onChangeFocusDate);
141
- }
142
- _createElement() {
143
- var e;
144
- let { year: t, month: s, date: a } = D(this.date), n = ((e = this.customData) === null || e === void 0 ? void 0 : e.attrs) || {};
145
- this.$cell = b({ className: this._getClassName(), attrs: { "data-year": t, "data-month": s, "data-date": a, ...n } });
146
- }
147
- _getClassName() {
148
- var e, t;
149
- let s = /* @__PURE__ */ new Date(), { selectOtherMonths: a, selectOtherYears: n } = this.opts, { minDate: i, maxDate: h } = this.dp, { day: o } = D(this.date), d = this._isOutOfMinMaxRange(), c = (e = this.customData) === null || e === void 0 ? void 0 : e.disabled, u = M("air-datepicker-cell", "-".concat(this.singleType, "-"), { "-current-": v(s, this.date, this.type), "-min-date-": i && v(i, this.date, this.type), "-max-date-": h && v(h, this.date, this.type) }), p = "";
150
- switch (this.type) {
151
- case l.days:
152
- p = M({ "-weekend-": this.dp.isWeekend(o), "-other-month-": this.isOtherMonth, "-disabled-": this.isOtherMonth && !a || d || c });
153
- break;
154
- case l.months:
155
- p = M({ "-disabled-": d || c });
156
- break;
157
- case l.years:
158
- p = M({ "-other-decade-": this.isOtherDecade, "-disabled-": d || this.isOtherDecade && !n || c });
159
- }
160
- return M(u, p, (t = this.customData) === null || t === void 0 ? void 0 : t.classes);
161
- }
162
- _getHtml() {
163
- var e;
164
- let { year: t, month: s, date: a } = D(this.date), { showOtherMonths: n, showOtherYears: i } = this.opts;
165
- if ((e = this.customData) !== null && e !== void 0 && e.html)
166
- return this.customData.html;
167
- switch (this.type) {
168
- case l.days:
169
- return !n && this.isOtherMonth ? "" : a;
170
- case l.months:
171
- return this.dp.locale[this.opts.monthsField][s];
172
- case l.years:
173
- return !i && this.isOtherDecade ? "" : t;
881
+ return this.ok = !1;
882
+ }
883
+ _pushRight(t) {
884
+ for (this.pushState(), this.bindBlock(); this.index < this.masked._blocks.length; ++this.index, this.offset = 0)
885
+ if (t())
886
+ return this.ok = !0;
887
+ return this.ok = !1;
888
+ }
889
+ pushLeftBeforeFilled() {
890
+ return this._pushLeft(() => {
891
+ if (!(this.block.isFixed || !this.block.value) && (this.offset = this.block.nearestInputPos(
892
+ this.offset,
893
+ o.FORCE_LEFT
894
+ ), this.offset !== 0))
895
+ return !0;
896
+ });
897
+ }
898
+ pushLeftBeforeInput() {
899
+ return this._pushLeft(() => {
900
+ if (!this.block.isFixed)
901
+ return this.offset = this.block.nearestInputPos(this.offset, o.LEFT), !0;
902
+ });
903
+ }
904
+ pushLeftBeforeRequired() {
905
+ return this._pushLeft(() => {
906
+ if (!(this.block.isFixed || this.block.isOptional && !this.block.value))
907
+ return this.offset = this.block.nearestInputPos(this.offset, o.LEFT), !0;
908
+ });
909
+ }
910
+ pushRightBeforeFilled() {
911
+ return this._pushRight(() => {
912
+ if (!(this.block.isFixed || !this.block.value) && (this.offset = this.block.nearestInputPos(
913
+ this.offset,
914
+ o.FORCE_RIGHT
915
+ ), this.offset !== this.block.value.length))
916
+ return !0;
917
+ });
918
+ }
919
+ pushRightBeforeInput() {
920
+ return this._pushRight(() => {
921
+ if (!this.block.isFixed)
922
+ return this.offset = this.block.nearestInputPos(this.offset, o.NONE), !0;
923
+ });
924
+ }
925
+ pushRightBeforeRequired() {
926
+ return this._pushRight(() => {
927
+ if (!(this.block.isFixed || this.block.isOptional && !this.block.value))
928
+ return this.offset = this.block.nearestInputPos(this.offset, o.NONE), !0;
929
+ });
930
+ }
931
+ }
932
+ class U extends p {
933
+ /**
934
+ @override
935
+ @param {Object} opts
936
+ */
937
+ _update(t) {
938
+ t.mask && (t.validate = (e) => e.search(t.mask) >= 0), super._update(t);
939
+ }
940
+ }
941
+ h.MaskedRegExp = U;
942
+ const Q = ["_blocks"];
943
+ class f extends p {
944
+ /** */
945
+ /** */
946
+ /** Single char for empty input */
947
+ /** Single char for filled input */
948
+ /** Show placeholder only when needed */
949
+ constructor() {
950
+ let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
951
+ t.definitions = Object.assign(
952
+ {},
953
+ X,
954
+ t.definitions
955
+ ), super(Object.assign({}, f.DEFAULTS, t));
956
+ }
957
+ /**
958
+ @override
959
+ @param {Object} opts
960
+ */
961
+ _update() {
962
+ let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
963
+ t.definitions = Object.assign({}, this.definitions, t.definitions), super._update(t), this._rebuildMask();
964
+ }
965
+ /** */
966
+ _rebuildMask() {
967
+ const t = this.definitions;
968
+ this._blocks = [], this._stops = [], this._maskedBlocks = {};
969
+ let e = this.mask;
970
+ if (!e || !t)
971
+ return;
972
+ let s = !1, n = !1;
973
+ for (let r = 0; r < e.length; ++r) {
974
+ var u, i;
975
+ if (this.blocks) {
976
+ const V = e.slice(r), Y = Object.keys(this.blocks).filter(
977
+ (D) => V.indexOf(D) === 0
978
+ );
979
+ Y.sort((D, nt) => nt.length - D.length);
980
+ const b = Y[0];
981
+ if (b) {
982
+ const D = v(
983
+ Object.assign(
984
+ {
985
+ parent: this,
986
+ lazy: this.lazy,
987
+ eager: this.eager,
988
+ placeholderChar: this.placeholderChar,
989
+ displayChar: this.displayChar,
990
+ overwrite: this.overwrite
991
+ },
992
+ this.blocks[b]
993
+ )
994
+ );
995
+ D && (this._blocks.push(D), this._maskedBlocks[b] || (this._maskedBlocks[b] = []), this._maskedBlocks[b].push(this._blocks.length - 1)), r += b.length - 1;
996
+ continue;
174
997
  }
175
998
  }
176
- _isOutOfMinMaxRange() {
177
- let { minDate: e, maxDate: t } = this.dp, { type: s, date: a } = this, { month: n, year: i, date: h } = D(a), o = s === l.days, d = s === l.years, c = !!e && new Date(i, d ? e.getMonth() : n, o ? h : e.getDate()), u = !!t && new Date(i, d ? t.getMonth() : n, o ? h : t.getDate());
178
- return e && t ? E(c, e) || $(u, t) : e ? E(c, e) : t ? $(u, t) : void 0;
179
- }
180
- destroy() {
181
- this.unbindDatepickerEvents();
182
- }
183
- _handleRangeStatus() {
184
- let { rangeDateFrom: e, rangeDateTo: t } = this.dp, s = M({ "-in-range-": e && t && (a = this.date, n = e, i = t, $(a, n) && E(a, i)), "-range-from-": e && v(this.date, e, this.type), "-range-to-": t && v(this.date, t, this.type) });
185
- var a, n, i;
186
- this.$cell.classList.remove("-range-from-", "-range-to-", "-in-range-"), s && this.$cell.classList.add(...s.split(" "));
187
- }
188
- _handleSelectedStatus() {
189
- let e = this.dp._checkIfDateIsSelected(this.date, this.type);
190
- e ? this.select() : !e && this.selected && this.removeSelect();
191
- }
192
- _handleInitialFocusStatus() {
193
- v(this.dp.focusDate, this.date, this.type) && this.focus();
194
- }
195
- get isDisabled() {
196
- return this.$cell.matches(".-disabled-");
197
- }
198
- get isOtherMonth() {
199
- return this.dp.isOtherMonth(this.date);
200
- }
201
- get isOtherDecade() {
202
- return this.dp.isOtherDecade(this.date);
203
- }
999
+ let l = e[r], d = l in t;
1000
+ if (l === f.STOP_CHAR) {
1001
+ this._stops.push(this._blocks.length);
1002
+ continue;
1003
+ }
1004
+ if (l === "{" || l === "}") {
1005
+ s = !s;
1006
+ continue;
1007
+ }
1008
+ if (l === "[" || l === "]") {
1009
+ n = !n;
1010
+ continue;
1011
+ }
1012
+ if (l === f.ESCAPE_CHAR) {
1013
+ if (++r, l = e[r], !l)
1014
+ break;
1015
+ d = !1;
1016
+ }
1017
+ const E = (u = t[l]) !== null && u !== void 0 && u.mask && !(((i = t[l]) === null || i === void 0 ? void 0 : i.mask.prototype) instanceof h.Masked) ? t[l] : {
1018
+ mask: t[l]
1019
+ }, A = d ? new N(
1020
+ Object.assign(
1021
+ {
1022
+ parent: this,
1023
+ isOptional: n,
1024
+ lazy: this.lazy,
1025
+ eager: this.eager,
1026
+ placeholderChar: this.placeholderChar,
1027
+ displayChar: this.displayChar
1028
+ },
1029
+ E
1030
+ )
1031
+ ) : new j({
1032
+ char: l,
1033
+ eager: this.eager,
1034
+ isUnmasking: s
1035
+ });
1036
+ this._blocks.push(A);
204
1037
  }
205
- function k(r, e, t) {
206
- return e in r ? Object.defineProperty(r, e, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : r[e] = t, r;
1038
+ }
1039
+ /**
1040
+ @override
1041
+ */
1042
+ get state() {
1043
+ return Object.assign({}, super.state, {
1044
+ _blocks: this._blocks.map((t) => t.state)
1045
+ });
1046
+ }
1047
+ set state(t) {
1048
+ const { _blocks: e } = t, s = k(t, Q);
1049
+ this._blocks.forEach((n, u) => n.state = e[u]), super.state = s;
1050
+ }
1051
+ /**
1052
+ @override
1053
+ */
1054
+ reset() {
1055
+ super.reset(), this._blocks.forEach((t) => t.reset());
1056
+ }
1057
+ /**
1058
+ @override
1059
+ */
1060
+ get isComplete() {
1061
+ return this._blocks.every((t) => t.isComplete);
1062
+ }
1063
+ /**
1064
+ @override
1065
+ */
1066
+ get isFilled() {
1067
+ return this._blocks.every((t) => t.isFilled);
1068
+ }
1069
+ get isFixed() {
1070
+ return this._blocks.every((t) => t.isFixed);
1071
+ }
1072
+ get isOptional() {
1073
+ return this._blocks.every((t) => t.isOptional);
1074
+ }
1075
+ /**
1076
+ @override
1077
+ */
1078
+ doCommit() {
1079
+ this._blocks.forEach((t) => t.doCommit()), super.doCommit();
1080
+ }
1081
+ /**
1082
+ @override
1083
+ */
1084
+ get unmaskedValue() {
1085
+ return this._blocks.reduce((t, e) => t += e.unmaskedValue, "");
1086
+ }
1087
+ set unmaskedValue(t) {
1088
+ super.unmaskedValue = t;
1089
+ }
1090
+ /**
1091
+ @override
1092
+ */
1093
+ get value() {
1094
+ return this._blocks.reduce((t, e) => t += e.value, "");
1095
+ }
1096
+ set value(t) {
1097
+ super.value = t;
1098
+ }
1099
+ get displayValue() {
1100
+ return this._blocks.reduce((t, e) => t += e.displayValue, "");
1101
+ }
1102
+ /**
1103
+ @override
1104
+ */
1105
+ appendTail(t) {
1106
+ return super.appendTail(t).aggregate(this._appendPlaceholder());
1107
+ }
1108
+ /**
1109
+ @override
1110
+ */
1111
+ _appendEager() {
1112
+ var t;
1113
+ const e = new c();
1114
+ let s = (t = this._mapPosToBlock(this.value.length)) === null || t === void 0 ? void 0 : t.index;
1115
+ if (s == null)
1116
+ return e;
1117
+ this._blocks[s].isFilled && ++s;
1118
+ for (let n = s; n < this._blocks.length; ++n) {
1119
+ const u = this._blocks[n]._appendEager();
1120
+ if (!u.inserted)
1121
+ break;
1122
+ e.aggregate(u);
207
1123
  }
208
- let le = { [l.days]: '<div class="air-datepicker-body--day-names"></div>' + '<div class="air-datepicker-body--cells -'.concat(l.days, '-"></div>'), [l.months]: '<div class="air-datepicker-body--cells -'.concat(l.months, '-"></div>'), [l.years]: '<div class="air-datepicker-body--cells -'.concat(l.years, '-"></div>') };
209
- const P = ".air-datepicker-cell";
210
- class ee {
211
- constructor(e) {
212
- let { dp: t, type: s, opts: a } = e;
213
- k(this, "handleClick", (n) => {
214
- let i = n.target.closest(P).adpCell;
215
- if (i.isDisabled)
216
- return;
217
- if (!this.dp.isMinViewReached)
218
- return void this.dp.down();
219
- let h = this.dp._checkIfDateIsSelected(i.date, i.type);
220
- h ? this.dp._handleAlreadySelectedDates(h, i.date) : this.dp.selectDate(i.date);
221
- }), k(this, "handleDayNameClick", (n) => {
222
- let i = n.target.getAttribute("data-day-index");
223
- this.opts.onClickDayName({ dayIndex: Number(i), datepicker: this.dp });
224
- }), k(this, "onChangeCurrentView", (n) => {
225
- n !== this.type ? this.hide() : (this.show(), this.render());
226
- }), k(this, "onMouseOverCell", (n) => {
227
- let i = R(n.target, P);
228
- this.dp.setFocusDate(!!i && i.adpCell.date);
229
- }), k(this, "onMouseOutCell", () => {
230
- this.dp.setFocusDate(!1);
231
- }), k(this, "onClickBody", (n) => {
232
- let { onClickDayName: i } = this.opts, h = n.target;
233
- h.closest(P) && this.handleClick(n), i && h.closest(".air-datepicker-body--day-name") && this.handleDayNameClick(n);
234
- }), k(this, "onMouseDown", (n) => {
235
- this.pressed = !0;
236
- let i = R(n.target, P), h = i && i.adpCell;
237
- v(h.date, this.dp.rangeDateFrom) && (this.rangeFromFocused = !0), v(h.date, this.dp.rangeDateTo) && (this.rangeToFocused = !0);
238
- }), k(this, "onMouseMove", (n) => {
239
- if (!this.pressed || !this.dp.isMinViewReached)
240
- return;
241
- n.preventDefault();
242
- let i = R(n.target, P), h = i && i.adpCell, { selectedDates: o, rangeDateTo: d, rangeDateFrom: c } = this.dp;
243
- if (!h || h.isDisabled)
244
- return;
245
- let { date: u } = h;
246
- if (o.length === 2) {
247
- if (this.rangeFromFocused && !$(u, d)) {
248
- let { hours: p, minutes: g } = D(c);
249
- u.setHours(p), u.setMinutes(g), this.dp.rangeDateFrom = u, this.dp.replaceDate(c, u);
250
- }
251
- if (this.rangeToFocused && !E(u, c)) {
252
- let { hours: p, minutes: g } = D(d);
253
- u.setHours(p), u.setMinutes(g), this.dp.rangeDateTo = u, this.dp.replaceDate(d, u);
254
- }
255
- }
256
- }), k(this, "onMouseUp", () => {
257
- this.pressed = !1, this.rangeFromFocused = !1, this.rangeToFocused = !1;
258
- }), k(this, "onChangeViewDate", (n, i) => {
259
- if (!this.isVisible)
260
- return;
261
- let h = F(n), o = F(i);
262
- switch (this.dp.currentView) {
263
- case l.days:
264
- if (v(n, i, l.months))
265
- return;
266
- break;
267
- case l.months:
268
- if (v(n, i, l.years))
269
- return;
270
- break;
271
- case l.years:
272
- if (h[0] === o[0] && h[1] === o[1])
273
- return;
274
- }
275
- this.render();
276
- }), k(this, "render", () => {
277
- this.destroyCells(), this._generateCells(), this.cells.forEach((n) => {
278
- this.$cells.appendChild(n.render());
279
- });
280
- }), this.dp = t, this.type = s, this.opts = a, this.cells = [], this.$el = "", this.pressed = !1, this.isVisible = !0, this.init();
281
- }
282
- init() {
283
- this._buildBaseHtml(), this.type === l.days && this.renderDayNames(), this.render(), this._bindEvents(), this._bindDatepickerEvents();
284
- }
285
- _bindEvents() {
286
- let { range: e, dynamicRange: t } = this.opts;
287
- w(this.$el, "mouseover", this.onMouseOverCell), w(this.$el, "mouseout", this.onMouseOutCell), w(this.$el, "click", this.onClickBody), e && t && (w(this.$el, "mousedown", this.onMouseDown), w(this.$el, "mousemove", this.onMouseMove), w(window.document, "mouseup", this.onMouseUp));
288
- }
289
- _bindDatepickerEvents() {
290
- this.dp.on(l.eventChangeViewDate, this.onChangeViewDate), this.dp.on(l.eventChangeCurrentView, this.onChangeCurrentView);
291
- }
292
- _buildBaseHtml() {
293
- this.$el = b({ className: "air-datepicker-body -".concat(this.type, "-"), innerHtml: le[this.type] }), this.$names = y(".air-datepicker-body--day-names", this.$el), this.$cells = y(".air-datepicker-body--cells", this.$el);
294
- }
295
- _getDayNamesHtml() {
296
- let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : this.dp.locale.firstDay, t = "", s = this.dp.isWeekend, { onClickDayName: a } = this.opts, n = e, i = 0;
297
- for (; i < 7; ) {
298
- let h = n % 7, o = M("air-datepicker-body--day-name", { [l.cssClassWeekend]: s(h), "-clickable-": !!a }), d = this.dp.locale.daysMin[h];
299
- t += '<div class="'.concat(o, `" data-day-index='`).concat(h, "'>").concat(d, "</div>"), i++, n++;
300
- }
301
- return t;
302
- }
303
- _getDaysCells() {
304
- let { viewDate: e, locale: { firstDay: t } } = this.dp, s = Z(e), { year: a, month: n } = D(e), i = new Date(a, n, 1), h = new Date(a, n, s), o = i.getDay() - t, d = 6 - h.getDay() + t;
305
- o = o < 0 ? o + 7 : o, d = d > 6 ? d - 7 : d;
306
- let c = function(N, B) {
307
- let { year: K, month: I, date: z } = D(N);
308
- return new Date(K, I, z - B);
309
- }(i, o), u = s + o + d, p = c.getDate(), { year: g, month: f } = D(c), _ = 0;
310
- for (; _ < u; ) {
311
- let N = new Date(g, f, p + _);
312
- this._generateCell(N), _++;
313
- }
314
- }
315
- _generateCell(e) {
316
- let { type: t, dp: s, opts: a } = this, n = new oe({ type: t, dp: s, opts: a, date: e, body: this });
317
- return this.cells.push(n), n;
318
- }
319
- _generateDayCells() {
320
- this._getDaysCells();
321
- }
322
- _generateMonthCells() {
323
- let { year: e } = this.dp.parsedViewDate, t = 0;
324
- for (; t < 12; )
325
- this.cells.push(this._generateCell(new Date(e, t))), t++;
326
- }
327
- _generateYearCells() {
328
- let e = F(this.dp.viewDate), t = e[0] - 1, s = e[1] + 1, a = t;
329
- for (; a <= s; )
330
- this.cells.push(this._generateCell(new Date(a, 0))), a++;
331
- }
332
- renderDayNames() {
333
- this.$names.innerHTML = this._getDayNamesHtml();
334
- }
335
- _generateCells() {
336
- switch (this.type) {
337
- case l.days:
338
- this._generateDayCells();
339
- break;
340
- case l.months:
341
- this._generateMonthCells();
342
- break;
343
- case l.years:
344
- this._generateYearCells();
345
- }
346
- }
347
- show() {
348
- this.isVisible = !0, this.$el.classList.remove("-hidden-");
349
- }
350
- hide() {
351
- this.isVisible = !1, this.$el.classList.add("-hidden-");
352
- }
353
- destroyCells() {
354
- this.cells.forEach((e) => e.destroy()), this.cells = [], this.$cells.innerHTML = "";
355
- }
356
- destroy() {
357
- this.destroyCells(), this.dp.off(l.eventChangeViewDate, this.onChangeViewDate), this.dp.off(l.eventChangeCurrentView, this.onChangeCurrentView);
358
- }
1124
+ return e;
1125
+ }
1126
+ /**
1127
+ @override
1128
+ */
1129
+ _appendCharRaw(t) {
1130
+ let e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
1131
+ const s = this._mapPosToBlock(this.value.length), n = new c();
1132
+ if (!s)
1133
+ return n;
1134
+ for (let r = s.index; ; ++r) {
1135
+ var u, i;
1136
+ const l = this._blocks[r];
1137
+ if (!l)
1138
+ break;
1139
+ const d = l._appendChar(
1140
+ t,
1141
+ Object.assign({}, e, {
1142
+ _beforeTailState: (u = e._beforeTailState) === null || u === void 0 || (i = u._blocks) === null || i === void 0 ? void 0 : i[r]
1143
+ })
1144
+ ), E = d.skip;
1145
+ if (n.aggregate(d), E || d.rawInserted)
1146
+ break;
359
1147
  }
360
- function x(r, e, t) {
361
- return e in r ? Object.defineProperty(r, e, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : r[e] = t, r;
1148
+ return n;
1149
+ }
1150
+ /**
1151
+ @override
1152
+ */
1153
+ extractTail() {
1154
+ let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0, e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : this.value.length;
1155
+ const s = new F();
1156
+ return t === e || this._forEachBlocksInRange(t, e, (n, u, i, r) => {
1157
+ const l = n.extractTail(i, r);
1158
+ l.stop = this._findStopBefore(u), l.from = this._blockStartPos(u), l instanceof F && (l.blockIndex = u), s.extend(l);
1159
+ }), s;
1160
+ }
1161
+ /**
1162
+ @override
1163
+ */
1164
+ extractInput() {
1165
+ let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0, e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : this.value.length, s = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
1166
+ if (t === e)
1167
+ return "";
1168
+ let n = "";
1169
+ return this._forEachBlocksInRange(t, e, (u, i, r, l) => {
1170
+ n += u.extractInput(r, l, s);
1171
+ }), n;
1172
+ }
1173
+ _findStopBefore(t) {
1174
+ let e;
1175
+ for (let s = 0; s < this._stops.length; ++s) {
1176
+ const n = this._stops[s];
1177
+ if (n <= t)
1178
+ e = n;
1179
+ else
1180
+ break;
362
1181
  }
363
- class de {
364
- constructor(e) {
365
- let { dp: t, opts: s } = e;
366
- x(this, "onClickNav", (a) => {
367
- let n = R(a.target, ".air-datepicker-nav--action");
368
- if (!n)
369
- return;
370
- let i = n.dataset.action;
371
- this.dp[i]();
372
- }), x(this, "onChangeViewDate", () => {
373
- this.render(), this._resetNavStatus(), this.handleNavStatus();
374
- }), x(this, "onChangeCurrentView", () => {
375
- this.render(), this._resetNavStatus(), this.handleNavStatus();
376
- }), x(this, "onClickNavTitle", () => {
377
- this.dp.isFinalView || this.dp.up();
378
- }), x(this, "update", () => {
379
- let { prevHtml: a, nextHtml: n } = this.opts;
380
- this.$prev.innerHTML = a, this.$next.innerHTML = n, this._resetNavStatus(), this.render(), this.handleNavStatus();
381
- }), x(this, "renderDelay", () => {
382
- setTimeout(this.render);
383
- }), x(this, "render", () => {
384
- this.$title.innerHTML = this._getTitle(), function(a, n) {
385
- for (let i in n)
386
- n[i] ? a.classList.add(i) : a.classList.remove(i);
387
- }(this.$title, { "-disabled-": this.dp.isFinalView });
388
- }), this.dp = t, this.opts = s, this.init();
389
- }
390
- init() {
391
- this._createElement(), this._buildBaseHtml(), this._defineDOM(), this.render(), this.handleNavStatus(), this._bindEvents(), this._bindDatepickerEvents();
392
- }
393
- _defineDOM() {
394
- this.$title = y(".air-datepicker-nav--title", this.$el), this.$prev = y('[data-action="prev"]', this.$el), this.$next = y('[data-action="next"]', this.$el);
395
- }
396
- _bindEvents() {
397
- this.$el.addEventListener("click", this.onClickNav), this.$title.addEventListener("click", this.onClickNavTitle);
398
- }
399
- _bindDatepickerEvents() {
400
- this.dp.on(l.eventChangeViewDate, this.onChangeViewDate), this.dp.on(l.eventChangeCurrentView, this.onChangeCurrentView), this.isNavIsFunction && (this.dp.on(l.eventChangeSelectedDate, this.renderDelay), this.dp.opts.timepicker && this.dp.on(l.eventChangeTime, this.render));
401
- }
402
- destroy() {
403
- this.dp.off(l.eventChangeViewDate, this.onChangeViewDate), this.dp.off(l.eventChangeCurrentView, this.onChangeCurrentView), this.isNavIsFunction && (this.dp.off(l.eventChangeSelectedDate, this.renderDelay), this.dp.opts.timepicker && this.dp.off(l.eventChangeTime, this.render));
404
- }
405
- _createElement() {
406
- this.$el = b({ tagName: "nav", className: "air-datepicker-nav" });
407
- }
408
- _getTitle() {
409
- let { dp: e, opts: t } = this, s = t.navTitles[e.currentView];
410
- return typeof s == "function" ? s(e) : e.formatDate(e.viewDate, s);
411
- }
412
- handleNavStatus() {
413
- let { disableNavWhenOutOfRange: e } = this.opts, { minDate: t, maxDate: s } = this.dp;
414
- if (!t && !s || !e)
415
- return;
416
- let { year: a, month: n } = this.dp.parsedViewDate, i = !!t && D(t), h = !!s && D(s);
417
- switch (this.dp.currentView) {
418
- case l.days:
419
- t && i.month >= n && i.year >= a && this._disableNav("prev"), s && h.month <= n && h.year <= a && this._disableNav("next");
420
- break;
421
- case l.months:
422
- t && i.year >= a && this._disableNav("prev"), s && h.year <= a && this._disableNav("next");
423
- break;
424
- case l.years: {
425
- let o = F(this.dp.viewDate);
426
- t && i.year >= o[0] && this._disableNav("prev"), s && h.year <= o[1] && this._disableNav("next");
427
- break;
428
- }
429
- }
430
- }
431
- _disableNav(e) {
432
- y('[data-action="' + e + '"]', this.$el).classList.add("-disabled-");
433
- }
434
- _resetNavStatus() {
435
- (function(e) {
436
- for (var t = arguments.length, s = new Array(t > 1 ? t - 1 : 0), a = 1; a < t; a++)
437
- s[a - 1] = arguments[a];
438
- e.length ? e.forEach((n) => {
439
- n.classList.remove(...s);
440
- }) : e.classList.remove(...s);
441
- })(this.$el.querySelectorAll(".air-datepicker-nav--action"), "-disabled-");
442
- }
443
- _buildBaseHtml() {
444
- let { prevHtml: e, nextHtml: t } = this.opts;
445
- this.$el.innerHTML = '<div class="air-datepicker-nav--action" data-action="prev">'.concat(e, "</div>") + '<div class="air-datepicker-nav--title"></div>' + '<div class="air-datepicker-nav--action" data-action="next">'.concat(t, "</div>");
446
- }
447
- get isNavIsFunction() {
448
- let { navTitles: e } = this.opts;
449
- return Object.keys(e).find((t) => typeof e[t] == "function");
450
- }
1182
+ return e;
1183
+ }
1184
+ /** Appends placeholder depending on laziness */
1185
+ _appendPlaceholder(t) {
1186
+ const e = new c();
1187
+ if (this.lazy && t == null)
1188
+ return e;
1189
+ const s = this._mapPosToBlock(this.value.length);
1190
+ if (!s)
1191
+ return e;
1192
+ const n = s.index, u = t ?? this._blocks.length;
1193
+ return this._blocks.slice(n, u).forEach((i) => {
1194
+ if (!i.lazy || t != null) {
1195
+ const r = i._blocks != null ? [i._blocks.length] : [], l = i._appendPlaceholder(...r);
1196
+ this._value += l.inserted, e.aggregate(l);
1197
+ }
1198
+ }), e;
1199
+ }
1200
+ /** Finds block in pos */
1201
+ _mapPosToBlock(t) {
1202
+ let e = "";
1203
+ for (let s = 0; s < this._blocks.length; ++s) {
1204
+ const n = this._blocks[s], u = e.length;
1205
+ if (e += n.value, t <= e.length)
1206
+ return {
1207
+ index: s,
1208
+ offset: t - u
1209
+ };
451
1210
  }
452
- var te = { today: { content: (r) => r.locale.today, onClick: (r) => r.setViewDate(/* @__PURE__ */ new Date()) }, clear: { content: (r) => r.locale.clear, onClick: (r) => r.clear() } };
453
- class ce {
454
- constructor(e) {
455
- let { dp: t, opts: s } = e;
456
- this.dp = t, this.opts = s, this.init();
457
- }
458
- init() {
459
- this.createElement(), this.render();
460
- }
461
- createElement() {
462
- this.$el = b({ className: "air-datepicker-buttons" });
463
- }
464
- destroy() {
465
- this.$el.parentNode.removeChild(this.$el);
466
- }
467
- clearHtml() {
468
- return this.$el.innerHTML = "", this;
469
- }
470
- generateButtons() {
471
- let { buttons: e } = this.opts;
472
- Array.isArray(e) || (e = [e]), e.forEach((t) => {
473
- let s = t;
474
- typeof t == "string" && te[t] && (s = te[t]);
475
- let a = this.createButton(s);
476
- s.onClick && this.attachEventToButton(a, s.onClick), this.$el.appendChild(a);
477
- });
478
- }
479
- attachEventToButton(e, t) {
480
- e.addEventListener("click", () => {
481
- t(this.dp);
482
- });
483
- }
484
- createButton(e) {
485
- let { content: t, className: s, tagName: a = "button", attrs: n = {} } = e, i = typeof t == "function" ? t(this.dp) : t;
486
- return b({ tagName: a, innerHtml: "<span tabindex='-1'>".concat(i, "</span>"), className: M("air-datepicker-button", s), attrs: n });
487
- }
488
- render() {
489
- this.generateButtons();
1211
+ }
1212
+ /** */
1213
+ _blockStartPos(t) {
1214
+ return this._blocks.slice(0, t).reduce((e, s) => e += s.value.length, 0);
1215
+ }
1216
+ /** */
1217
+ _forEachBlocksInRange(t) {
1218
+ let e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : this.value.length, s = arguments.length > 2 ? arguments[2] : void 0;
1219
+ const n = this._mapPosToBlock(t);
1220
+ if (n) {
1221
+ const u = this._mapPosToBlock(e), i = u && n.index === u.index, r = n.offset, l = u && i ? u.offset : this._blocks[n.index].value.length;
1222
+ if (s(
1223
+ this._blocks[n.index],
1224
+ n.index,
1225
+ r,
1226
+ l
1227
+ ), u && !i) {
1228
+ for (let d = n.index + 1; d < u.index; ++d)
1229
+ s(this._blocks[d], d, 0, this._blocks[d].value.length);
1230
+ s(
1231
+ this._blocks[u.index],
1232
+ u.index,
1233
+ 0,
1234
+ u.offset
1235
+ );
490
1236
  }
491
1237
  }
492
- function H(r, e, t) {
493
- return e in r ? Object.defineProperty(r, e, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : r[e] = t, r;
1238
+ }
1239
+ /**
1240
+ @override
1241
+ */
1242
+ remove() {
1243
+ let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0, e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : this.value.length;
1244
+ const s = super.remove(t, e);
1245
+ return this._forEachBlocksInRange(t, e, (n, u, i, r) => {
1246
+ s.aggregate(n.remove(i, r));
1247
+ }), s;
1248
+ }
1249
+ /**
1250
+ @override
1251
+ */
1252
+ nearestInputPos(t) {
1253
+ let e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : o.NONE;
1254
+ if (!this._blocks.length)
1255
+ return 0;
1256
+ const s = new J(this, t);
1257
+ if (e === o.NONE)
1258
+ return s.pushRightBeforeInput() || (s.popState(), s.pushLeftBeforeInput()) ? s.pos : this.value.length;
1259
+ if (e === o.LEFT || e === o.FORCE_LEFT) {
1260
+ if (e === o.LEFT) {
1261
+ if (s.pushRightBeforeFilled(), s.ok && s.pos === t)
1262
+ return t;
1263
+ s.popState();
1264
+ }
1265
+ if (s.pushLeftBeforeInput(), s.pushLeftBeforeRequired(), s.pushLeftBeforeFilled(), e === o.LEFT) {
1266
+ if (s.pushRightBeforeInput(), s.pushRightBeforeRequired(), s.ok && s.pos <= t || (s.popState(), s.ok && s.pos <= t))
1267
+ return s.pos;
1268
+ s.popState();
1269
+ }
1270
+ return s.ok ? s.pos : e === o.FORCE_LEFT ? 0 : (s.popState(), s.ok || (s.popState(), s.ok) ? s.pos : 0);
494
1271
  }
495
- class ue {
496
- constructor() {
497
- let { opts: e, dp: t } = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
498
- H(this, "toggleTimepickerIsActive", (a) => {
499
- this.dp.timepickerIsActive = a;
500
- }), H(this, "onChangeSelectedDate", (a) => {
501
- let { date: n, updateTime: i = !1 } = a;
502
- n && (this.setMinMaxTime(n), this.setCurrentTime(!!i && n), this.addTimeToDate(n));
503
- }), H(this, "onChangeLastSelectedDate", (a) => {
504
- a && (this.setTime(a), this.render());
505
- }), H(this, "onChangeInputRange", (a) => {
506
- let n = a.target;
507
- this[n.getAttribute("name")] = n.value, this.updateText(), this.dp.trigger(l.eventChangeTime, { hours: this.hours, minutes: this.minutes });
508
- }), H(this, "onMouseEnterLeave", (a) => {
509
- let n = a.target.getAttribute("name"), i = this.$minutesText;
510
- n === "hours" && (i = this.$hoursText), i.classList.toggle("-focus-");
511
- }), H(this, "onFocus", () => {
512
- this.toggleTimepickerIsActive(!0);
513
- }), H(this, "onBlur", () => {
514
- this.toggleTimepickerIsActive(!1);
515
- }), this.opts = e, this.dp = t;
516
- let { timeFormat: s } = this.dp.locale;
517
- s && (s.match(G("h")) || s.match(G("hh"))) && (this.ampm = !0), this.init();
518
- }
519
- init() {
520
- this.setTime(this.dp.lastSelectedDate || this.dp.viewDate), this.createElement(), this.buildHtml(), this.defineDOM(), this.render(), this.bindDatepickerEvents(), this.bindDOMEvents();
521
- }
522
- bindDatepickerEvents() {
523
- this.dp.on(l.eventChangeSelectedDate, this.onChangeSelectedDate), this.dp.on(l.eventChangeLastSelectedDate, this.onChangeLastSelectedDate);
524
- }
525
- bindDOMEvents() {
526
- let e = "input";
527
- navigator.userAgent.match(/trident/gi) && (e = "change"), w(this.$ranges, e, this.onChangeInputRange), w(this.$ranges, "mouseenter", this.onMouseEnterLeave), w(this.$ranges, "mouseleave", this.onMouseEnterLeave), w(this.$ranges, "focus", this.onFocus), w(this.$ranges, "mousedown", this.onFocus), w(this.$ranges, "blur", this.onBlur);
528
- }
529
- createElement() {
530
- this.$el = b({ className: M("air-datepicker-time", { "-am-pm-": this.dp.ampm }) });
531
- }
532
- destroy() {
533
- this.dp.off(l.eventChangeSelectedDate, this.onChangeSelectedDate), this.dp.off(l.eventChangeLastSelectedDate, this.onChangeLastSelectedDate), this.$el.parentNode.removeChild(this.$el);
534
- }
535
- buildHtml() {
536
- let { ampm: e, hours: t, displayHours: s, minutes: a, minHours: n, minMinutes: i, maxHours: h, maxMinutes: o, dayPeriod: d, opts: { hoursStep: c, minutesStep: u } } = this;
537
- this.$el.innerHTML = '<div class="air-datepicker-time--current">' + ' <span class="air-datepicker-time--current-hours">'.concat(O(s), "</span>") + ' <span class="air-datepicker-time--current-colon">:</span>' + ' <span class="air-datepicker-time--current-minutes">'.concat(O(a), "</span>") + " ".concat(e ? "<span class='air-datepicker-time--current-ampm'>".concat(d, "</span>") : "") + '</div><div class="air-datepicker-time--sliders"> <div class="air-datepicker-time--row">' + ' <input type="range" name="hours" value="'.concat(t, '" min="').concat(n, '" max="').concat(h, '" step="').concat(c, '"/>') + ' </div> <div class="air-datepicker-time--row">' + ' <input type="range" name="minutes" value="'.concat(a, '" min="').concat(i, '" max="').concat(o, '" step="').concat(u, '"/>') + " </div></div>";
538
- }
539
- defineDOM() {
540
- let e = (t) => y(t, this.$el);
541
- this.$ranges = this.$el.querySelectorAll('[type="range"]'), this.$hours = e('[name="hours"]'), this.$minutes = e('[name="minutes"]'), this.$hoursText = e(".air-datepicker-time--current-hours"), this.$minutesText = e(".air-datepicker-time--current-minutes"), this.$ampm = e(".air-datepicker-time--current-ampm");
542
- }
543
- setTime(e) {
544
- this.setMinMaxTime(e), this.setCurrentTime(e);
545
- }
546
- addTimeToDate(e) {
547
- e && (e.setHours(this.hours), e.setMinutes(this.minutes));
548
- }
549
- setMinMaxTime(e) {
550
- if (this.setMinMaxTimeFromOptions(), e) {
551
- let { minDate: t, maxDate: s } = this.dp;
552
- t && v(e, t) && this.setMinTimeFromMinDate(t), s && v(e, s) && this.setMaxTimeFromMaxDate(s);
553
- }
554
- }
555
- setCurrentTime(e) {
556
- let { hours: t, minutes: s } = e ? D(e) : this;
557
- this.hours = A(t, this.minHours, this.maxHours), this.minutes = A(s, this.minMinutes, this.maxMinutes);
558
- }
559
- setMinMaxTimeFromOptions() {
560
- let { minHours: e, minMinutes: t, maxHours: s, maxMinutes: a } = this.opts;
561
- this.minHours = A(e, 0, 23), this.minMinutes = A(t, 0, 59), this.maxHours = A(s, 0, 23), this.maxMinutes = A(a, 0, 59);
562
- }
563
- setMinTimeFromMinDate(e) {
564
- let { lastSelectedDate: t } = this.dp;
565
- this.minHours = e.getHours(), t && t.getHours() > e.getHours() ? this.minMinutes = this.opts.minMinutes : this.minMinutes = e.getMinutes();
566
- }
567
- setMaxTimeFromMaxDate(e) {
568
- let { lastSelectedDate: t } = this.dp;
569
- this.maxHours = e.getHours(), t && t.getHours() < e.getHours() ? this.maxMinutes = this.opts.maxMinutes : this.maxMinutes = e.getMinutes();
570
- }
571
- getDayPeriod(e, t) {
572
- let s = e, a = Number(e);
573
- e instanceof Date && (s = D(e), a = Number(s.hours));
574
- let n = "am";
575
- if (t || this.ampm) {
576
- switch (!0) {
577
- case a === 12:
578
- case a > 11:
579
- n = "pm";
580
- }
581
- a = a % 12 == 0 ? 12 : a % 12;
582
- }
583
- return { hours: a, dayPeriod: n };
584
- }
585
- updateSliders() {
586
- q(this.$hours, { min: this.minHours, max: this.maxHours }).value = this.hours, q(this.$minutes, { min: this.minMinutes, max: this.maxMinutes }).value = this.minutes;
587
- }
588
- updateText() {
589
- this.$hoursText.innerHTML = O(this.displayHours), this.$minutesText.innerHTML = O(this.minutes), this.ampm && (this.$ampm.innerHTML = this.dayPeriod);
590
- }
591
- set hours(e) {
592
- this._hours = e;
593
- let { hours: t, dayPeriod: s } = this.getDayPeriod(e);
594
- this.displayHours = t, this.dayPeriod = s;
595
- }
596
- get hours() {
597
- return this._hours;
598
- }
599
- render() {
600
- this.updateSliders(), this.updateText();
601
- }
1272
+ return e === o.RIGHT || e === o.FORCE_RIGHT ? (s.pushRightBeforeInput(), s.pushRightBeforeRequired(), s.pushRightBeforeFilled() ? s.pos : e === o.FORCE_RIGHT ? this.value.length : (s.popState(), s.ok || (s.popState(), s.ok) ? s.pos : this.nearestInputPos(t, o.LEFT))) : t;
1273
+ }
1274
+ /**
1275
+ @override
1276
+ */
1277
+ totalInputPositions() {
1278
+ let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0, e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : this.value.length, s = 0;
1279
+ return this._forEachBlocksInRange(t, e, (n, u, i, r) => {
1280
+ s += n.totalInputPositions(i, r);
1281
+ }), s;
1282
+ }
1283
+ /** Get block by name */
1284
+ maskedBlock(t) {
1285
+ return this.maskedBlocks(t)[0];
1286
+ }
1287
+ /** Get all blocks by name */
1288
+ maskedBlocks(t) {
1289
+ const e = this._maskedBlocks[t];
1290
+ return e ? e.map((s) => this._blocks[s]) : [];
1291
+ }
1292
+ }
1293
+ f.DEFAULTS = {
1294
+ lazy: !0,
1295
+ placeholderChar: "_"
1296
+ }, f.STOP_CHAR = "`", f.ESCAPE_CHAR = "\\", f.InputDefinition = N, f.FixedDefinition = j, h.MaskedPattern = f;
1297
+ class T extends f {
1298
+ /**
1299
+ Optionally sets max length of pattern.
1300
+ Used when pattern length is longer then `to` param length. Pads zeros at start in this case.
1301
+ */
1302
+ /** Min bound */
1303
+ /** Max bound */
1304
+ /** */
1305
+ get _matchFrom() {
1306
+ return this.maxLength - String(this.from).length;
1307
+ }
1308
+ /**
1309
+ @override
1310
+ */
1311
+ _update(t) {
1312
+ t = Object.assign(
1313
+ {
1314
+ to: this.to || 0,
1315
+ from: this.from || 0,
1316
+ maxLength: this.maxLength || 0
1317
+ },
1318
+ t
1319
+ );
1320
+ let e = String(t.to).length;
1321
+ t.maxLength != null && (e = Math.max(e, t.maxLength)), t.maxLength = e;
1322
+ const s = String(t.from).padStart(e, "0"), n = String(t.to).padStart(e, "0");
1323
+ let u = 0;
1324
+ for (; u < n.length && n[u] === s[u]; )
1325
+ ++u;
1326
+ t.mask = n.slice(0, u).replace(/0/g, "\\0") + "0".repeat(e - u), super._update(t);
1327
+ }
1328
+ /**
1329
+ @override
1330
+ */
1331
+ get isComplete() {
1332
+ return super.isComplete && !!this.value;
1333
+ }
1334
+ boundaries(t) {
1335
+ let e = "", s = "";
1336
+ const [, n, u] = t.match(/^(\D*)(\d*)(\D*)/) || [];
1337
+ return u && (e = "0".repeat(n.length) + u, s = "9".repeat(n.length) + u), e = e.padEnd(this.maxLength, "0"), s = s.padEnd(this.maxLength, "9"), [e, s];
1338
+ }
1339
+ // TODO str is a single char everytime
1340
+ /**
1341
+ @override
1342
+ */
1343
+ doPrepare(t) {
1344
+ let e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, s;
1345
+ if ([t, s] = M(
1346
+ super.doPrepare(t.replace(/\D/g, ""), e)
1347
+ ), !this.autofix || !t)
1348
+ return t;
1349
+ const n = String(this.from).padStart(this.maxLength, "0"), u = String(this.to).padStart(this.maxLength, "0");
1350
+ let i = this.value + t;
1351
+ if (i.length > this.maxLength)
1352
+ return "";
1353
+ const [r, l] = this.boundaries(i);
1354
+ return Number(l) < this.from ? n[i.length - 1] : Number(r) > this.to ? this.autofix === "pad" && i.length < this.maxLength ? [
1355
+ "",
1356
+ s.aggregate(
1357
+ this.append(n[i.length - 1] + t, e)
1358
+ )
1359
+ ] : u[i.length - 1] : t;
1360
+ }
1361
+ /**
1362
+ @override
1363
+ */
1364
+ doValidate() {
1365
+ const t = this.value;
1366
+ if (t.search(/[^0]/) === -1 && t.length <= this._matchFrom)
1367
+ return !0;
1368
+ const [s, n] = this.boundaries(t);
1369
+ return this.from <= Number(n) && Number(s) <= this.to && super.doValidate(...arguments);
1370
+ }
1371
+ }
1372
+ h.MaskedRange = T;
1373
+ class C extends f {
1374
+ /** Pattern mask for date according to {@link MaskedDate#format} */
1375
+ /** Start date */
1376
+ /** End date */
1377
+ /** */
1378
+ /**
1379
+ @param {Object} opts
1380
+ */
1381
+ constructor(t) {
1382
+ super(Object.assign({}, C.DEFAULTS, t));
1383
+ }
1384
+ /**
1385
+ @override
1386
+ */
1387
+ _update(t) {
1388
+ t.mask === Date && delete t.mask, t.pattern && (t.mask = t.pattern);
1389
+ const e = t.blocks;
1390
+ t.blocks = Object.assign({}, C.GET_DEFAULT_BLOCKS()), t.min && (t.blocks.Y.from = t.min.getFullYear()), t.max && (t.blocks.Y.to = t.max.getFullYear()), t.min && t.max && t.blocks.Y.from === t.blocks.Y.to && (t.blocks.m.from = t.min.getMonth() + 1, t.blocks.m.to = t.max.getMonth() + 1, t.blocks.m.from === t.blocks.m.to && (t.blocks.d.from = t.min.getDate(), t.blocks.d.to = t.max.getDate())), Object.assign(t.blocks, this.blocks, e), Object.keys(t.blocks).forEach((s) => {
1391
+ const n = t.blocks[s];
1392
+ !("autofix" in n) && "autofix" in t && (n.autofix = t.autofix);
1393
+ }), super._update(t);
1394
+ }
1395
+ /**
1396
+ @override
1397
+ */
1398
+ doValidate() {
1399
+ const t = this.date;
1400
+ return super.doValidate(...arguments) && (!this.isComplete || this.isDateExist(this.value) && t != null && (this.min == null || this.min <= t) && (this.max == null || t <= this.max));
1401
+ }
1402
+ /** Checks if date is exists */
1403
+ isDateExist(t) {
1404
+ return this.format(this.parse(t, this), this).indexOf(t) >= 0;
1405
+ }
1406
+ /** Parsed Date */
1407
+ get date() {
1408
+ return this.typedValue;
1409
+ }
1410
+ set date(t) {
1411
+ this.typedValue = t;
1412
+ }
1413
+ /**
1414
+ @override
1415
+ */
1416
+ get typedValue() {
1417
+ return this.isComplete ? super.typedValue : null;
1418
+ }
1419
+ set typedValue(t) {
1420
+ super.typedValue = t;
1421
+ }
1422
+ /**
1423
+ @override
1424
+ */
1425
+ maskEquals(t) {
1426
+ return t === Date || super.maskEquals(t);
1427
+ }
1428
+ }
1429
+ C.DEFAULTS = {
1430
+ pattern: "d{.}`m{.}`Y",
1431
+ format: (a) => {
1432
+ if (!a)
1433
+ return "";
1434
+ const t = String(a.getDate()).padStart(2, "0"), e = String(a.getMonth() + 1).padStart(2, "0"), s = a.getFullYear();
1435
+ return [t, e, s].join(".");
1436
+ },
1437
+ parse: (a) => {
1438
+ const [t, e, s] = a.split(".");
1439
+ return new Date(s, e - 1, t);
1440
+ }
1441
+ }, C.GET_DEFAULT_BLOCKS = () => ({
1442
+ d: {
1443
+ mask: T,
1444
+ from: 1,
1445
+ to: 31,
1446
+ maxLength: 2
1447
+ },
1448
+ m: {
1449
+ mask: T,
1450
+ from: 1,
1451
+ to: 12,
1452
+ maxLength: 2
1453
+ },
1454
+ Y: {
1455
+ mask: T,
1456
+ from: 1900,
1457
+ to: 9999
1458
+ }
1459
+ }), h.MaskedDate = C;
1460
+ class P {
1461
+ /** */
1462
+ /** */
1463
+ /** */
1464
+ /** Safely returns selection start */
1465
+ get selectionStart() {
1466
+ let t;
1467
+ try {
1468
+ t = this._unsafeSelectionStart;
1469
+ } catch {
602
1470
  }
603
- function L(r, e, t) {
604
- return e in r ? Object.defineProperty(r, e, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : r[e] = t, r;
1471
+ return t ?? this.value.length;
1472
+ }
1473
+ /** Safely returns selection end */
1474
+ get selectionEnd() {
1475
+ let t;
1476
+ try {
1477
+ t = this._unsafeSelectionEnd;
1478
+ } catch {
605
1479
  }
606
- class pe {
607
- constructor(e) {
608
- let { dp: t, opts: s } = e;
609
- L(this, "pressedKeys", /* @__PURE__ */ new Set()), L(this, "hotKeys", /* @__PURE__ */ new Map([[[["Control", "ArrowRight"], ["Control", "ArrowUp"]], (a) => a.month++], [[["Control", "ArrowLeft"], ["Control", "ArrowDown"]], (a) => a.month--], [[["Shift", "ArrowRight"], ["Shift", "ArrowUp"]], (a) => a.year++], [[["Shift", "ArrowLeft"], ["Shift", "ArrowDown"]], (a) => a.year--], [[["Alt", "ArrowRight"], ["Alt", "ArrowUp"]], (a) => a.year += 10], [[["Alt", "ArrowLeft"], ["Alt", "ArrowDown"]], (a) => a.year -= 10], [["Control", "Shift", "ArrowUp"], (a, n) => n.up()]])), L(this, "handleHotKey", (a) => {
610
- let n = this.hotKeys.get(a), i = D(this.getInitialFocusDate());
611
- n(i, this.dp);
612
- let { year: h, month: o, date: d } = i, c = Z(new Date(h, o));
613
- c < d && (d = c);
614
- let u = this.dp.getClampedDate(new Date(h, o, d));
615
- this.dp.setFocusDate(u, { viewDateTransition: !0 });
616
- }), L(this, "isHotKeyPressed", () => {
617
- let a = !1, n = this.pressedKeys.size, i = (h) => this.pressedKeys.has(h);
618
- for (let [h] of this.hotKeys) {
619
- if (a)
620
- break;
621
- if (Array.isArray(h[0]))
622
- h.forEach((o) => {
623
- a || n !== o.length || (a = o.every(i) && h);
624
- });
625
- else {
626
- if (n !== h.length)
627
- continue;
628
- a = h.every(i) && h;
629
- }
630
- }
631
- return a;
632
- }), L(this, "isArrow", (a) => a >= 37 && a <= 40), L(this, "onKeyDown", (a) => {
633
- let { key: n, which: i } = a, { dp: h, dp: { focusDate: o }, opts: d } = this;
634
- this.registerKey(n);
635
- let c = this.isHotKeyPressed();
636
- if (c)
637
- return a.preventDefault(), void this.handleHotKey(c);
638
- if (this.isArrow(i))
639
- return a.preventDefault(), void this.focusNextCell(n);
640
- if (n === "Enter") {
641
- if (h.currentView !== d.minView)
642
- return void h.down();
643
- if (o) {
644
- let u = h._checkIfDateIsSelected(o);
645
- return void (u ? h._handleAlreadySelectedDates(u, o) : h.selectDate(o));
646
- }
647
- }
648
- n === "Escape" && this.dp.hide();
649
- }), L(this, "onKeyUp", (a) => {
650
- this.removeKey(a.key);
651
- }), this.dp = t, this.opts = s, this.init();
652
- }
653
- init() {
654
- this.bindKeyboardEvents();
655
- }
656
- bindKeyboardEvents() {
657
- let { $el: e } = this.dp;
658
- e.addEventListener("keydown", this.onKeyDown), e.addEventListener("keyup", this.onKeyUp);
659
- }
660
- destroy() {
661
- let { $el: e } = this.dp;
662
- e.removeEventListener("keydown", this.onKeyDown), e.removeEventListener("keyup", this.onKeyUp), this.hotKeys = null, this.pressedKeys = null;
663
- }
664
- getInitialFocusDate() {
665
- let { focusDate: e, currentView: t, selectedDates: s, parsedViewDate: { year: a, month: n } } = this.dp, i = e || s[s.length - 1];
666
- if (!i)
667
- switch (t) {
668
- case l.days:
669
- i = new Date(a, n, (/* @__PURE__ */ new Date()).getDate());
670
- break;
671
- case l.months:
672
- i = new Date(a, n, 1);
673
- break;
674
- case l.years:
675
- i = new Date(a, 0, 1);
676
- }
677
- return i;
678
- }
679
- focusNextCell(e) {
680
- let t = this.getInitialFocusDate(), { currentView: s } = this.dp, { days: a, months: n, years: i } = l, h = D(t), o = h.year, d = h.month, c = h.date;
681
- switch (e) {
682
- case "ArrowLeft":
683
- s === a && (c -= 1), s === n && (d -= 1), s === i && (o -= 1);
684
- break;
685
- case "ArrowUp":
686
- s === a && (c -= 7), s === n && (d -= 3), s === i && (o -= 4);
687
- break;
688
- case "ArrowRight":
689
- s === a && (c += 1), s === n && (d += 1), s === i && (o += 1);
690
- break;
691
- case "ArrowDown":
692
- s === a && (c += 7), s === n && (d += 3), s === i && (o += 4);
693
- }
694
- let u = this.dp.getClampedDate(new Date(o, d, c));
695
- this.dp.setFocusDate(u, { viewDateTransition: !0 });
696
- }
697
- registerKey(e) {
698
- this.pressedKeys.add(e);
699
- }
700
- removeKey(e) {
701
- this.pressedKeys.delete(e);
702
- }
703
- }
704
- let me = { on(r, e) {
705
- this.__events || (this.__events = {}), this.__events[r] ? this.__events[r].push(e) : this.__events[r] = [e];
706
- }, off(r, e) {
707
- this.__events && this.__events[r] && (this.__events[r] = this.__events[r].filter((t) => t !== e));
708
- }, removeAllEvents() {
709
- this.__events = {};
710
- }, trigger(r) {
711
- for (var e = arguments.length, t = new Array(e > 1 ? e - 1 : 0), s = 1; s < e; s++)
712
- t[s - 1] = arguments[s];
713
- this.__events && this.__events[r] && this.__events[r].forEach((a) => {
714
- a(...t);
1480
+ return t ?? this.value.length;
1481
+ }
1482
+ /** Safely sets element selection */
1483
+ select(t, e) {
1484
+ if (!(t == null || e == null || t === this.selectionStart && e === this.selectionEnd))
1485
+ try {
1486
+ this._unsafeSelect(t, e);
1487
+ } catch {
1488
+ }
1489
+ }
1490
+ /** Should be overriden in subclasses */
1491
+ _unsafeSelect(t, e) {
1492
+ }
1493
+ /** Should be overriden in subclasses */
1494
+ get isActive() {
1495
+ return !1;
1496
+ }
1497
+ /** Should be overriden in subclasses */
1498
+ bindEvents(t) {
1499
+ }
1500
+ /** Should be overriden in subclasses */
1501
+ unbindEvents() {
1502
+ }
1503
+ }
1504
+ h.MaskElement = P;
1505
+ class S extends P {
1506
+ /** Mapping between HTMLElement events and mask internal events */
1507
+ /** HTMLElement to use mask on */
1508
+ /**
1509
+ @param {HTMLInputElement|HTMLTextAreaElement} input
1510
+ */
1511
+ constructor(t) {
1512
+ super(), this.input = t, this._handlers = {};
1513
+ }
1514
+ /** */
1515
+ // $FlowFixMe https://github.com/facebook/flow/issues/2839
1516
+ get rootElement() {
1517
+ var t, e, s;
1518
+ return (t = (e = (s = this.input).getRootNode) === null || e === void 0 ? void 0 : e.call(s)) !== null && t !== void 0 ? t : document;
1519
+ }
1520
+ /**
1521
+ Is element in focus
1522
+ @readonly
1523
+ */
1524
+ get isActive() {
1525
+ return this.input === this.rootElement.activeElement;
1526
+ }
1527
+ /**
1528
+ Returns HTMLElement selection start
1529
+ @override
1530
+ */
1531
+ get _unsafeSelectionStart() {
1532
+ return this.input.selectionStart;
1533
+ }
1534
+ /**
1535
+ Returns HTMLElement selection end
1536
+ @override
1537
+ */
1538
+ get _unsafeSelectionEnd() {
1539
+ return this.input.selectionEnd;
1540
+ }
1541
+ /**
1542
+ Sets HTMLElement selection
1543
+ @override
1544
+ */
1545
+ _unsafeSelect(t, e) {
1546
+ this.input.setSelectionRange(t, e);
1547
+ }
1548
+ /**
1549
+ HTMLElement value
1550
+ @override
1551
+ */
1552
+ get value() {
1553
+ return this.input.value;
1554
+ }
1555
+ set value(t) {
1556
+ this.input.value = t;
1557
+ }
1558
+ /**
1559
+ Binds HTMLElement events to mask internal events
1560
+ @override
1561
+ */
1562
+ bindEvents(t) {
1563
+ Object.keys(t).forEach(
1564
+ (e) => this._toggleEventHandler(
1565
+ S.EVENTS_MAP[e],
1566
+ t[e]
1567
+ )
1568
+ );
1569
+ }
1570
+ /**
1571
+ Unbinds HTMLElement events to mask internal events
1572
+ @override
1573
+ */
1574
+ unbindEvents() {
1575
+ Object.keys(this._handlers).forEach(
1576
+ (t) => this._toggleEventHandler(t)
1577
+ );
1578
+ }
1579
+ /** */
1580
+ _toggleEventHandler(t, e) {
1581
+ this._handlers[t] && (this.input.removeEventListener(t, this._handlers[t]), delete this._handlers[t]), e && (this.input.addEventListener(t, e), this._handlers[t] = e);
1582
+ }
1583
+ }
1584
+ S.EVENTS_MAP = {
1585
+ selectionChange: "keydown",
1586
+ input: "input",
1587
+ drop: "drop",
1588
+ click: "click",
1589
+ focus: "focus",
1590
+ commit: "blur"
1591
+ }, h.HTMLMaskElement = S;
1592
+ class y extends S {
1593
+ /**
1594
+ Returns HTMLElement selection start
1595
+ @override
1596
+ */
1597
+ get _unsafeSelectionStart() {
1598
+ const t = this.rootElement, e = t.getSelection && t.getSelection(), s = e && e.anchorOffset, n = e && e.focusOffset;
1599
+ return n == null || s == null || s < n ? s : n;
1600
+ }
1601
+ /**
1602
+ Returns HTMLElement selection end
1603
+ @override
1604
+ */
1605
+ get _unsafeSelectionEnd() {
1606
+ const t = this.rootElement, e = t.getSelection && t.getSelection(), s = e && e.anchorOffset, n = e && e.focusOffset;
1607
+ return n == null || s == null || s > n ? s : n;
1608
+ }
1609
+ /**
1610
+ Sets HTMLElement selection
1611
+ @override
1612
+ */
1613
+ _unsafeSelect(t, e) {
1614
+ if (!this.rootElement.createRange)
1615
+ return;
1616
+ const s = this.rootElement.createRange();
1617
+ s.setStart(this.input.firstChild || this.input, t), s.setEnd(this.input.lastChild || this.input, e);
1618
+ const n = this.rootElement, u = n.getSelection && n.getSelection();
1619
+ u && (u.removeAllRanges(), u.addRange(s));
1620
+ }
1621
+ /**
1622
+ HTMLElement value
1623
+ @override
1624
+ */
1625
+ get value() {
1626
+ return this.input.textContent;
1627
+ }
1628
+ set value(t) {
1629
+ this.input.textContent = t;
1630
+ }
1631
+ }
1632
+ h.HTMLContenteditableMaskElement = y;
1633
+ const tt = ["mask"];
1634
+ class H {
1635
+ /**
1636
+ View element
1637
+ @readonly
1638
+ */
1639
+ /**
1640
+ Internal {@link Masked} model
1641
+ @readonly
1642
+ */
1643
+ /**
1644
+ @param {MaskElement|HTMLInputElement|HTMLTextAreaElement} el
1645
+ @param {Object} opts
1646
+ */
1647
+ constructor(t, e) {
1648
+ this.el = t instanceof P ? t : t.isContentEditable && t.tagName !== "INPUT" && t.tagName !== "TEXTAREA" ? new y(t) : new S(t), this.masked = v(e), this._listeners = {}, this._value = "", this._unmaskedValue = "", this._saveSelection = this._saveSelection.bind(this), this._onInput = this._onInput.bind(this), this._onChange = this._onChange.bind(this), this._onDrop = this._onDrop.bind(this), this._onFocus = this._onFocus.bind(this), this._onClick = this._onClick.bind(this), this.alignCursor = this.alignCursor.bind(this), this.alignCursorFriendly = this.alignCursorFriendly.bind(this), this._bindEvents(), this.updateValue(), this._onChange();
1649
+ }
1650
+ /** Read or update mask */
1651
+ get mask() {
1652
+ return this.masked.mask;
1653
+ }
1654
+ maskEquals(t) {
1655
+ var e;
1656
+ return t == null || ((e = this.masked) === null || e === void 0 ? void 0 : e.maskEquals(t));
1657
+ }
1658
+ set mask(t) {
1659
+ if (this.maskEquals(t))
1660
+ return;
1661
+ if (!(t instanceof h.Masked) && this.masked.constructor === L(t)) {
1662
+ this.masked.updateOptions({
1663
+ mask: t
715
1664
  });
716
- } };
717
- function m(r, e, t) {
718
- return e in r ? Object.defineProperty(r, e, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : r[e] = t, r;
1665
+ return;
719
1666
  }
720
- let X = "", W = "", S = "", se = !1;
721
- class T {
722
- constructor(e, t) {
723
- var s = this;
724
- if (m(this, "viewIndexes", [l.days, l.months, l.years]), m(this, "next", () => {
725
- let { year: i, month: h } = this.parsedViewDate;
726
- switch (this.currentView) {
727
- case l.days:
728
- this.setViewDate(new Date(i, h + 1, 1));
729
- break;
730
- case l.months:
731
- this.setViewDate(new Date(i + 1, h, 1));
732
- break;
733
- case l.years:
734
- this.setViewDate(new Date(i + 10, 0, 1));
735
- }
736
- }), m(this, "prev", () => {
737
- let { year: i, month: h } = this.parsedViewDate;
738
- switch (this.currentView) {
739
- case l.days:
740
- this.setViewDate(new Date(i, h - 1, 1));
741
- break;
742
- case l.months:
743
- this.setViewDate(new Date(i - 1, h, 1));
744
- break;
745
- case l.years:
746
- this.setViewDate(new Date(i - 10, 0, 1));
747
- }
748
- }), m(this, "_finishHide", () => {
749
- this.hideAnimation = !1, this._destroyComponents(), this.$container.removeChild(this.$datepicker);
750
- }), m(this, "setPosition", function(i) {
751
- let h = arguments.length > 1 && arguments[1] !== void 0 && arguments[1];
752
- if (typeof (i = i || s.opts.position) == "function")
753
- return void (s.customHide = i({ $datepicker: s.$datepicker, $target: s.$el, $pointer: s.$pointer, isViewChange: h, done: s._finishHide }));
754
- let o, d, { isMobile: c } = s.opts, u = s.$el.getBoundingClientRect(), p = s.$el.getBoundingClientRect(), g = s.$datepicker.offsetParent, f = s.$el.offsetParent, _ = s.$datepicker.getBoundingClientRect(), N = i.split(" "), B = window.scrollY, K = window.scrollX, I = s.opts.offset, z = N[0], ge = N[1];
755
- if (c)
756
- s.$datepicker.style.cssText = "left: 50%; top: 50%";
757
- else {
758
- if (g === f && g !== document.body && (p = { top: s.$el.offsetTop, left: s.$el.offsetLeft, width: u.width, height: s.$el.offsetHeight }, B = 0, K = 0), g !== f && g !== document.body) {
759
- let ae = g.getBoundingClientRect();
760
- p = { top: u.top - ae.top, left: u.left - ae.left, width: u.width, height: u.height }, B = 0, K = 0;
761
- }
762
- switch (z) {
763
- case "top":
764
- o = p.top - _.height - I;
765
- break;
766
- case "right":
767
- d = p.left + p.width + I;
768
- break;
769
- case "bottom":
770
- o = p.top + p.height + I;
771
- break;
772
- case "left":
773
- d = p.left - _.width - I;
774
- }
775
- switch (ge) {
776
- case "top":
777
- o = p.top;
778
- break;
779
- case "right":
780
- d = p.left + p.width - _.width;
781
- break;
782
- case "bottom":
783
- o = p.top + p.height - _.height;
784
- break;
785
- case "left":
786
- d = p.left;
787
- break;
788
- case "center":
789
- /left|right/.test(z) ? o = p.top + p.height / 2 - _.height / 2 : d = p.left + p.width / 2 - _.width / 2;
790
- }
791
- s.$datepicker.style.cssText = "left: ".concat(d + K, "px; top: ").concat(o + B, "px");
792
- }
793
- }), m(this, "_setInputValue", () => {
794
- let { opts: i, $altField: h, locale: { dateFormat: o } } = this, { altFieldDateFormat: d, altField: c } = i;
795
- c && h && (h.value = this._getInputValue(d)), this.$el.value = this._getInputValue(o);
796
- }), m(this, "_getInputValue", (i) => {
797
- let { selectedDates: h, opts: o } = this, { multipleDates: d, multipleDatesSeparator: c } = o;
798
- if (!h.length)
799
- return "";
800
- let u = typeof i == "function", p = u ? i(d ? h : h[0]) : h.map((g) => this.formatDate(g, i));
801
- return p = u ? p : p.join(c), p;
802
- }), m(this, "_checkIfDateIsSelected", function(i) {
803
- let h = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : l.days, o = !1;
804
- return s.selectedDates.some((d) => {
805
- let c = v(i, d, h);
806
- return o = c && d, c;
807
- }), o;
808
- }), m(this, "_scheduleCallAfterTransition", (i) => {
809
- this._cancelScheduledCall(), i && i(!1), this._onTransitionEnd = () => {
810
- i && i(!0);
811
- }, this.$datepicker.addEventListener("transitionend", this._onTransitionEnd, { once: !0 });
812
- }), m(this, "_cancelScheduledCall", () => {
813
- this.$datepicker.removeEventListener("transitionend", this._onTransitionEnd);
814
- }), m(this, "setViewDate", (i) => {
815
- if (!((i = C(i)) instanceof Date) || v(i, this.viewDate))
816
- return;
817
- let h = this.viewDate;
818
- this.viewDate = i;
819
- let { onChangeViewDate: o } = this.opts;
820
- if (o) {
821
- let { month: d, year: c } = this.parsedViewDate;
822
- o({ month: d, year: c, decade: this.curDecade });
823
- }
824
- this.trigger(l.eventChangeViewDate, i, h);
825
- }), m(this, "setFocusDate", function(i) {
826
- let h = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
827
- (!i || (i = C(i)) instanceof Date) && (s.focusDate = i, s.opts.range && i && s._handleRangeOnFocus(), s.trigger(l.eventChangeFocusDate, i, h));
828
- }), m(this, "setCurrentView", (i) => {
829
- if (this.viewIndexes.includes(i)) {
830
- if (this.currentView = i, this.elIsInput && this.visible && this.setPosition(void 0, !0), this.trigger(l.eventChangeCurrentView, i), !this.views[i]) {
831
- let h = this.views[i] = new ee({ dp: this, opts: this.opts, type: i });
832
- this.shouldUpdateDOM && this.$content.appendChild(h.$el);
833
- }
834
- this.opts.onChangeView && this.opts.onChangeView(i);
835
- }
836
- }), m(this, "_updateLastSelectedDate", (i) => {
837
- this.lastSelectedDate = i, this.trigger(l.eventChangeLastSelectedDate, i);
838
- }), m(this, "destroy", () => {
839
- let { showEvent: i, isMobile: h } = this.opts, o = this.$datepicker.parentNode;
840
- o && o.removeChild(this.$datepicker), this.$el.removeEventListener(i, this._onFocus), this.$el.removeEventListener("blur", this._onBlur), window.removeEventListener("resize", this._onResize), h && this._removeMobileAttributes(), this.keyboardNav && this.keyboardNav.destroy(), this.views = null, this.nav = null, this.$datepicker = null, this.opts = null, this.$customContainer = null, this.viewDate = null, this.focusDate = null, this.selectedDates = null, this.rangeDateFrom = null, this.rangeDateTo = null;
841
- }), m(this, "update", (i) => {
842
- let h = Y({}, this.opts);
843
- Y(this.opts, i);
844
- let { timepicker: o, buttons: d, range: c, selectedDates: u, isMobile: p } = this.opts, g = this.visible || this.treatAsInline;
845
- this._createMinMaxDates(), this._limitViewDateByMaxMinDates(), this._handleLocale(), !h.selectedDates && u && this.selectDate(u), i.view && this.setCurrentView(i.view), this._setInputValue(), h.range && !c ? (this.rangeDateTo = !1, this.rangeDateFrom = !1) : !h.range && c && this.selectedDates.length && (this.rangeDateFrom = this.selectedDates[0], this.rangeDateTo = this.selectedDates[1]), h.timepicker && !o ? (g && this.timepicker.destroy(), this.timepicker = !1, this.$timepicker.parentNode.removeChild(this.$timepicker)) : !h.timepicker && o && this._addTimepicker(), !h.buttons && d ? this._addButtons() : h.buttons && !d ? (this.buttons.destroy(), this.$buttons.parentNode.removeChild(this.$buttons)) : g && h.buttons && d && this.buttons.clearHtml().render(), !h.isMobile && p ? (this.treatAsInline || S || this._createMobileOverlay(), this._addMobileAttributes(), this.visible && this._showMobileOverlay()) : h.isMobile && !p && (this._removeMobileAttributes(), this.visible && (S.classList.remove("-active-"), typeof this.opts.position != "function" && this.setPosition())), g && (this.nav.update(), this.views[this.currentView].render(), this.currentView === l.days && this.views[this.currentView].renderDayNames());
846
- }), m(this, "isOtherMonth", (i) => {
847
- let { month: h } = D(i);
848
- return h !== this.parsedViewDate.month;
849
- }), m(this, "isOtherYear", (i) => {
850
- let { year: h } = D(i);
851
- return h !== this.parsedViewDate.year;
852
- }), m(this, "isOtherDecade", (i) => {
853
- let { year: h } = D(i), [o, d] = F(this.viewDate);
854
- return h < o || h > d;
855
- }), m(this, "_onChangeSelectedDate", (i) => {
856
- let { silent: h } = i;
857
- setTimeout(() => {
858
- this._setInputValue(), this.opts.onSelect && !h && this._triggerOnSelect();
859
- });
860
- }), m(this, "_onChangeFocusedDate", function(i) {
861
- let { viewDateTransition: h } = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
862
- if (!i)
863
- return;
864
- let o = !1;
865
- h && (o = s.isOtherMonth(i) || s.isOtherYear(i) || s.isOtherDecade(i)), o && s.setViewDate(i);
866
- }), m(this, "_onChangeTime", (i) => {
867
- let { hours: h, minutes: o } = i, d = /* @__PURE__ */ new Date(), { lastSelectedDate: c, opts: { onSelect: u } } = this, p = c;
868
- c || (p = d);
869
- let g = this.getCell(p, this.currentViewSingular), f = g && g.adpCell;
870
- f && f.isDisabled || (p.setHours(h), p.setMinutes(o), c ? (this._setInputValue(), u && this._triggerOnSelect()) : this.selectDate(p));
871
- }), m(this, "_onFocus", (i) => {
872
- this.visible || this.show();
873
- }), m(this, "_onBlur", (i) => {
874
- this.inFocus || !this.visible || this.opts.isMobile || this.hide();
875
- }), m(this, "_onMouseDown", (i) => {
876
- this.inFocus = !0;
877
- }), m(this, "_onMouseUp", (i) => {
878
- this.inFocus = !1, this.$el.focus();
879
- }), m(this, "_onResize", () => {
880
- this.visible && typeof this.opts.position != "function" && this.setPosition();
881
- }), m(this, "_onClickOverlay", () => {
882
- this.visible && this.hide();
883
- }), m(this, "isWeekend", (i) => this.opts.weekends.includes(i)), m(this, "getClampedDate", (i) => {
884
- let { minDate: h, maxDate: o } = this, d = i;
885
- return o && $(i, o) ? d = o : h && E(i, h) && (d = h), d;
886
- }), this.$el = y(e), !this.$el)
887
- return;
888
- this.$datepicker = b({ className: "air-datepicker" }), this.opts = Y({}, Q, t), this.$customContainer = !!this.opts.container && y(this.opts.container), this.$altField = y(this.opts.altField || !1), X || (X = y("body"));
889
- let { view: a, startDate: n } = this.opts;
890
- n || (this.opts.startDate = /* @__PURE__ */ new Date()), this.$el.nodeName === "INPUT" && (this.elIsInput = !0), this.inited = !1, this.visible = !1, this.viewDate = C(this.opts.startDate), this.focusDate = !1, this.initialReadonly = this.$el.getAttribute("readonly"), this.customHide = !1, this.currentView = a, this.selectedDates = [], this.views = {}, this.keys = [], this.rangeDateFrom = "", this.rangeDateTo = "", this.timepickerIsActive = !1, this.treatAsInline = this.opts.inline || !this.elIsInput, this.init();
891
- }
892
- init() {
893
- let { opts: e, treatAsInline: t, opts: { inline: s, isMobile: a, selectedDates: n, keyboardNav: i, onlyTimepicker: h } } = this;
894
- var o;
895
- se || s || !this.elIsInput || (se = !0, W = b({ className: o = T.defaultContainerId, id: o }), X.appendChild(W)), !a || S || t || this._createMobileOverlay(), this._handleLocale(), this._bindSubEvents(), this._createMinMaxDates(), this._limitViewDateByMaxMinDates(), this.elIsInput && (s || this._bindEvents(), i && !h && (this.keyboardNav = new pe({ dp: this, opts: e }))), n && this.selectDate(n, { silent: !0 }), this.opts.visible && !t && this.show(), a && !t && this.$el.setAttribute("readonly", !0), t && this._createComponents();
896
- }
897
- _createMobileOverlay() {
898
- S = b({ className: "air-datepicker-overlay" }), W.appendChild(S);
899
- }
900
- _createComponents() {
901
- let { opts: e, treatAsInline: t, opts: { inline: s, buttons: a, timepicker: n, position: i, classes: h, onlyTimepicker: o, isMobile: d } } = this;
902
- this._buildBaseHtml(), this.elIsInput && (s || this._setPositionClasses(i)), !s && this.elIsInput || this.$datepicker.classList.add("-inline-"), h && this.$datepicker.classList.add(...h.split(" ")), o && this.$datepicker.classList.add("-only-timepicker-"), d && !t && this._addMobileAttributes(), this.views[this.currentView] = new ee({ dp: this, type: this.currentView, opts: e }), this.nav = new de({ dp: this, opts: e }), n && this._addTimepicker(), a && this._addButtons(), this.$content.appendChild(this.views[this.currentView].$el), this.$nav.appendChild(this.nav.$el);
903
- }
904
- _destroyComponents() {
905
- for (let e in this.views)
906
- this.views[e].destroy();
907
- this.views = {}, this.nav.destroy(), this.timepicker && this.timepicker.destroy();
908
- }
909
- _addMobileAttributes() {
910
- S.addEventListener("click", this._onClickOverlay), this.$datepicker.classList.add("-is-mobile-"), this.$el.setAttribute("readonly", !0);
911
- }
912
- _removeMobileAttributes() {
913
- S.removeEventListener("click", this._onClickOverlay), this.$datepicker.classList.remove("-is-mobile-"), this.initialReadonly || this.initialReadonly === "" || this.$el.removeAttribute("readonly");
914
- }
915
- _createMinMaxDates() {
916
- let { minDate: e, maxDate: t } = this.opts;
917
- this.minDate = !!e && C(e), this.maxDate = !!t && C(t);
918
- }
919
- _addTimepicker() {
920
- this.$timepicker = b({ className: "air-datepicker--time" }), this.$datepicker.appendChild(this.$timepicker), this.timepicker = new ue({ dp: this, opts: this.opts }), this.$timepicker.appendChild(this.timepicker.$el);
921
- }
922
- _addButtons() {
923
- this.$buttons = b({ className: "air-datepicker--buttons" }), this.$datepicker.appendChild(this.$buttons), this.buttons = new ce({ dp: this, opts: this.opts }), this.$buttons.appendChild(this.buttons.$el);
924
- }
925
- _bindSubEvents() {
926
- this.on(l.eventChangeSelectedDate, this._onChangeSelectedDate), this.on(l.eventChangeFocusDate, this._onChangeFocusedDate), this.on(l.eventChangeTime, this._onChangeTime);
927
- }
928
- _buildBaseHtml() {
929
- let { inline: e } = this.opts;
930
- var t, s;
931
- this.elIsInput ? e ? (t = this.$datepicker, (s = this.$el).parentNode.insertBefore(t, s.nextSibling)) : this.$container.appendChild(this.$datepicker) : this.$el.appendChild(this.$datepicker), this.$datepicker.innerHTML = '<i class="air-datepicker--pointer"></i><div class="air-datepicker--navigation"></div><div class="air-datepicker--content"></div>', this.$content = y(".air-datepicker--content", this.$datepicker), this.$pointer = y(".air-datepicker--pointer", this.$datepicker), this.$nav = y(".air-datepicker--navigation", this.$datepicker);
932
- }
933
- _handleLocale() {
934
- let { locale: e, dateFormat: t, firstDay: s, timepicker: a, onlyTimepicker: n, timeFormat: i, dateTimeSeparator: h } = this.opts;
935
- var o;
936
- this.locale = (o = e, JSON.parse(JSON.stringify(o))), t && (this.locale.dateFormat = t), i !== void 0 && i !== "" && (this.locale.timeFormat = i);
937
- let { timeFormat: d } = this.locale;
938
- if (s !== "" && (this.locale.firstDay = s), a && typeof t != "function") {
939
- let c = d ? h : "";
940
- this.locale.dateFormat = [this.locale.dateFormat, d || ""].join(c);
941
- }
942
- n && typeof t != "function" && (this.locale.dateFormat = this.locale.timeFormat);
943
- }
944
- _setPositionClasses(e) {
945
- if (typeof e == "function")
946
- return void this.$datepicker.classList.add("-custom-position-");
947
- let t = (e = e.split(" "))[0], s = e[1], a = "air-datepicker -".concat(t, "-").concat(s, "- -from-").concat(t, "-");
948
- this.$datepicker.classList.add(...a.split(" "));
949
- }
950
- _bindEvents() {
951
- this.$el.addEventListener(this.opts.showEvent, this._onFocus), this.$el.addEventListener("blur", this._onBlur), this.$datepicker.addEventListener("mousedown", this._onMouseDown), this.$datepicker.addEventListener("mouseup", this._onMouseUp), window.addEventListener("resize", this._onResize);
952
- }
953
- _limitViewDateByMaxMinDates() {
954
- let { viewDate: e, minDate: t, maxDate: s } = this;
955
- s && $(e, s) && this.setViewDate(s), t && E(e, t) && this.setViewDate(t);
956
- }
957
- formatDate() {
958
- let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : this.viewDate, t = arguments.length > 1 ? arguments[1] : void 0;
959
- if (e = C(e), !(e instanceof Date))
960
- return;
961
- let s = t, a = this.locale, n = D(e), i = F(e), h = T.replacer, o = "am";
962
- this.opts.timepicker && this.timepicker && (o = this.timepicker.getDayPeriod(e).dayPeriod);
963
- let d = { T: e.getTime(), m: n.minutes, mm: n.fullMinutes, h: n.hours12, hh: n.fullHours12, H: n.hours, HH: n.fullHours, aa: o, AA: o.toUpperCase(), E: a.daysShort[n.day], EEEE: a.days[n.day], d: n.date, dd: n.fullDate, M: n.month + 1, MM: n.fullMonth, MMM: a.monthsShort[n.month], MMMM: a.months[n.month], yy: n.year.toString().slice(-2), yyyy: n.year, yyyy1: i[0], yyyy2: i[1] };
964
- for (let [c, u] of Object.entries(d))
965
- s = h(s, G(c), u);
1667
+ const e = v({
1668
+ mask: t
1669
+ });
1670
+ e.unmaskedValue = this.masked.unmaskedValue, this.masked = e;
1671
+ }
1672
+ /** Raw value */
1673
+ get value() {
1674
+ return this._value;
1675
+ }
1676
+ set value(t) {
1677
+ this.value !== t && (this.masked.value = t, this.updateControl(), this.alignCursor());
1678
+ }
1679
+ /** Unmasked value */
1680
+ get unmaskedValue() {
1681
+ return this._unmaskedValue;
1682
+ }
1683
+ set unmaskedValue(t) {
1684
+ this.unmaskedValue !== t && (this.masked.unmaskedValue = t, this.updateControl(), this.alignCursor());
1685
+ }
1686
+ /** Typed unmasked value */
1687
+ get typedValue() {
1688
+ return this.masked.typedValue;
1689
+ }
1690
+ set typedValue(t) {
1691
+ this.masked.typedValueEquals(t) || (this.masked.typedValue = t, this.updateControl(), this.alignCursor());
1692
+ }
1693
+ /** Display value */
1694
+ get displayValue() {
1695
+ return this.masked.displayValue;
1696
+ }
1697
+ /**
1698
+ Starts listening to element events
1699
+ @protected
1700
+ */
1701
+ _bindEvents() {
1702
+ this.el.bindEvents({
1703
+ selectionChange: this._saveSelection,
1704
+ input: this._onInput,
1705
+ drop: this._onDrop,
1706
+ click: this._onClick,
1707
+ focus: this._onFocus,
1708
+ commit: this._onChange
1709
+ });
1710
+ }
1711
+ /**
1712
+ Stops listening to element events
1713
+ @protected
1714
+ */
1715
+ _unbindEvents() {
1716
+ this.el && this.el.unbindEvents();
1717
+ }
1718
+ /**
1719
+ Fires custom event
1720
+ @protected
1721
+ */
1722
+ _fireEvent(t) {
1723
+ for (var e = arguments.length, s = new Array(e > 1 ? e - 1 : 0), n = 1; n < e; n++)
1724
+ s[n - 1] = arguments[n];
1725
+ const u = this._listeners[t];
1726
+ u && u.forEach((i) => i(...s));
1727
+ }
1728
+ /**
1729
+ Current selection start
1730
+ @readonly
1731
+ */
1732
+ get selectionStart() {
1733
+ return this._cursorChanging ? this._changingCursorPos : this.el.selectionStart;
1734
+ }
1735
+ /** Current cursor position */
1736
+ get cursorPos() {
1737
+ return this._cursorChanging ? this._changingCursorPos : this.el.selectionEnd;
1738
+ }
1739
+ set cursorPos(t) {
1740
+ !this.el || !this.el.isActive || (this.el.select(t, t), this._saveSelection());
1741
+ }
1742
+ /**
1743
+ Stores current selection
1744
+ @protected
1745
+ */
1746
+ _saveSelection() {
1747
+ this.displayValue !== this.el.value && console.warn(
1748
+ "Element value was changed outside of mask. Syncronize mask using `mask.updateValue()` to work properly."
1749
+ ), this._selection = {
1750
+ start: this.selectionStart,
1751
+ end: this.cursorPos
1752
+ };
1753
+ }
1754
+ /** Syncronizes model value from view */
1755
+ updateValue() {
1756
+ this.masked.value = this.el.value, this._value = this.masked.value;
1757
+ }
1758
+ /** Syncronizes view from model value, fires change events */
1759
+ updateControl() {
1760
+ const t = this.masked.unmaskedValue, e = this.masked.value, s = this.displayValue, n = this.unmaskedValue !== t || this.value !== e;
1761
+ this._unmaskedValue = t, this._value = e, this.el.value !== s && (this.el.value = s), n && this._fireChangeEvents();
1762
+ }
1763
+ /** Updates options with deep equal check, recreates @{link Masked} model if mask type changes */
1764
+ updateOptions(t) {
1765
+ const { mask: e } = t, s = k(t, tt), n = !this.maskEquals(e), u = !I(this.masked, s);
1766
+ n && (this.mask = e), u && this.masked.updateOptions(s), (n || u) && this.updateControl();
1767
+ }
1768
+ /** Updates cursor */
1769
+ updateCursor(t) {
1770
+ t != null && (this.cursorPos = t, this._delayUpdateCursor(t));
1771
+ }
1772
+ /**
1773
+ Delays cursor update to support mobile browsers
1774
+ @private
1775
+ */
1776
+ _delayUpdateCursor(t) {
1777
+ this._abortUpdateCursor(), this._changingCursorPos = t, this._cursorChanging = setTimeout(() => {
1778
+ this.el && (this.cursorPos = this._changingCursorPos, this._abortUpdateCursor());
1779
+ }, 10);
1780
+ }
1781
+ /**
1782
+ Fires custom events
1783
+ @protected
1784
+ */
1785
+ _fireChangeEvents() {
1786
+ this._fireEvent("accept", this._inputEvent), this.masked.isComplete && this._fireEvent("complete", this._inputEvent);
1787
+ }
1788
+ /**
1789
+ Aborts delayed cursor update
1790
+ @private
1791
+ */
1792
+ _abortUpdateCursor() {
1793
+ this._cursorChanging && (clearTimeout(this._cursorChanging), delete this._cursorChanging);
1794
+ }
1795
+ /** Aligns cursor to nearest available position */
1796
+ alignCursor() {
1797
+ this.cursorPos = this.masked.nearestInputPos(
1798
+ this.masked.nearestInputPos(this.cursorPos, o.LEFT)
1799
+ );
1800
+ }
1801
+ /** Aligns cursor only if selection is empty */
1802
+ alignCursorFriendly() {
1803
+ this.selectionStart === this.cursorPos && this.alignCursor();
1804
+ }
1805
+ /** Adds listener on custom event */
1806
+ on(t, e) {
1807
+ return this._listeners[t] || (this._listeners[t] = []), this._listeners[t].push(e), this;
1808
+ }
1809
+ /** Removes custom event listener */
1810
+ off(t, e) {
1811
+ if (!this._listeners[t])
1812
+ return this;
1813
+ if (!e)
1814
+ return delete this._listeners[t], this;
1815
+ const s = this._listeners[t].indexOf(e);
1816
+ return s >= 0 && this._listeners[t].splice(s, 1), this;
1817
+ }
1818
+ /** Handles view input event */
1819
+ _onInput(t) {
1820
+ if (this._inputEvent = t, this._abortUpdateCursor(), !this._selection)
1821
+ return this.updateValue();
1822
+ const e = new K(
1823
+ // new state
1824
+ this.el.value,
1825
+ this.cursorPos,
1826
+ // old state
1827
+ this.displayValue,
1828
+ this._selection
1829
+ ), s = this.masked.rawInputValue, n = this.masked.splice(
1830
+ e.startChangePos,
1831
+ e.removed.length,
1832
+ e.inserted,
1833
+ e.removeDirection,
1834
+ {
1835
+ input: !0,
1836
+ raw: !0
1837
+ }
1838
+ ).offset, u = s === this.masked.rawInputValue ? e.removeDirection : o.NONE;
1839
+ let i = this.masked.nearestInputPos(
1840
+ e.startChangePos + n,
1841
+ u
1842
+ );
1843
+ u !== o.NONE && (i = this.masked.nearestInputPos(i, o.NONE)), this.updateControl(), this.updateCursor(i), delete this._inputEvent;
1844
+ }
1845
+ /** Handles view change event and commits model value */
1846
+ _onChange() {
1847
+ this.displayValue !== this.el.value && this.updateValue(), this.masked.doCommit(), this.updateControl(), this._saveSelection();
1848
+ }
1849
+ /** Handles view drop event, prevents by default */
1850
+ _onDrop(t) {
1851
+ t.preventDefault(), t.stopPropagation();
1852
+ }
1853
+ /** Restore last selection on focus */
1854
+ _onFocus(t) {
1855
+ this.alignCursorFriendly();
1856
+ }
1857
+ /** Restore last selection on focus */
1858
+ _onClick(t) {
1859
+ this.alignCursorFriendly();
1860
+ }
1861
+ /** Unbind view events and removes element reference */
1862
+ destroy() {
1863
+ this._unbindEvents(), this._listeners.length = 0, delete this.el;
1864
+ }
1865
+ }
1866
+ h.InputMask = H;
1867
+ class z extends f {
1868
+ /**
1869
+ @override
1870
+ @param {Object} opts
1871
+ */
1872
+ _update(t) {
1873
+ t.enum && (t.mask = "*".repeat(t.enum[0].length)), super._update(t);
1874
+ }
1875
+ /**
1876
+ @override
1877
+ */
1878
+ doValidate() {
1879
+ return this.enum.some((t) => t.indexOf(this.unmaskedValue) >= 0) && super.doValidate(...arguments);
1880
+ }
1881
+ }
1882
+ h.MaskedEnum = z;
1883
+ class m extends p {
1884
+ /** Single char */
1885
+ /** Single char */
1886
+ /** Array of single chars */
1887
+ /** */
1888
+ /** */
1889
+ /** Digits after point */
1890
+ /** */
1891
+ /** Flag to remove leading and trailing zeros in the end of editing */
1892
+ /** Flag to pad trailing zeros after point in the end of editing */
1893
+ constructor(t) {
1894
+ super(Object.assign({}, m.DEFAULTS, t));
1895
+ }
1896
+ /**
1897
+ @override
1898
+ */
1899
+ _update(t) {
1900
+ super._update(t), this._updateRegExps();
1901
+ }
1902
+ /** */
1903
+ _updateRegExps() {
1904
+ let t = "^" + (this.allowNegative ? "[+|\\-]?" : ""), e = "\\d*", s = (this.scale ? "(".concat(R(this.radix), "\\d{0,").concat(this.scale, "})?") : "") + "$";
1905
+ this._numberRegExp = new RegExp(t + e + s), this._mapToRadixRegExp = new RegExp(
1906
+ "[".concat(this.mapToRadix.map(R).join(""), "]"),
1907
+ "g"
1908
+ ), this._thousandsSeparatorRegExp = new RegExp(
1909
+ R(this.thousandsSeparator),
1910
+ "g"
1911
+ );
1912
+ }
1913
+ /** */
1914
+ _removeThousandsSeparators(t) {
1915
+ return t.replace(this._thousandsSeparatorRegExp, "");
1916
+ }
1917
+ /** */
1918
+ _insertThousandsSeparators(t) {
1919
+ const e = t.split(this.radix);
1920
+ return e[0] = e[0].replace(
1921
+ /\B(?=(\d{3})+(?!\d))/g,
1922
+ this.thousandsSeparator
1923
+ ), e.join(this.radix);
1924
+ }
1925
+ /**
1926
+ @override
1927
+ */
1928
+ doPrepare(t) {
1929
+ let e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
1930
+ t = this._removeThousandsSeparators(
1931
+ this.scale && this.mapToRadix.length && /*
1932
+ radix should be mapped when
1933
+ 1) input is done from keyboard = flags.input && flags.raw
1934
+ 2) unmasked value is set = !flags.input && !flags.raw
1935
+ and should not be mapped when
1936
+ 1) value is set = flags.input && !flags.raw
1937
+ 2) raw value is set = !flags.input && flags.raw
1938
+ */
1939
+ (e.input && e.raw || !e.input && !e.raw) ? t.replace(this._mapToRadixRegExp, this.radix) : t
1940
+ );
1941
+ const [s, n] = M(super.doPrepare(t, e));
1942
+ return t && !s && (n.skip = !0), [s, n];
1943
+ }
1944
+ /** */
1945
+ _separatorsCount(t) {
1946
+ let e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !1, s = 0;
1947
+ for (let n = 0; n < t; ++n)
1948
+ this._value.indexOf(this.thousandsSeparator, n) === n && (++s, e && (t += this.thousandsSeparator.length));
1949
+ return s;
1950
+ }
1951
+ /** */
1952
+ _separatorsCountFromSlice() {
1953
+ let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : this._value;
1954
+ return this._separatorsCount(
1955
+ this._removeThousandsSeparators(t).length,
1956
+ !0
1957
+ );
1958
+ }
1959
+ /**
1960
+ @override
1961
+ */
1962
+ extractInput() {
1963
+ let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0, e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : this.value.length, s = arguments.length > 2 ? arguments[2] : void 0;
1964
+ return [t, e] = this._adjustRangeWithSeparators(t, e), this._removeThousandsSeparators(
1965
+ super.extractInput(t, e, s)
1966
+ );
1967
+ }
1968
+ /**
1969
+ @override
1970
+ */
1971
+ _appendCharRaw(t) {
1972
+ let e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
1973
+ if (!this.thousandsSeparator)
1974
+ return super._appendCharRaw(t, e);
1975
+ const s = e.tail && e._beforeTailState ? e._beforeTailState._value : this._value, n = this._separatorsCountFromSlice(s);
1976
+ this._value = this._removeThousandsSeparators(this.value);
1977
+ const u = super._appendCharRaw(t, e);
1978
+ this._value = this._insertThousandsSeparators(this._value);
1979
+ const i = e.tail && e._beforeTailState ? e._beforeTailState._value : this._value, r = this._separatorsCountFromSlice(i);
1980
+ return u.tailShift += (r - n) * this.thousandsSeparator.length, u.skip = !u.rawInserted && t === this.thousandsSeparator, u;
1981
+ }
1982
+ /** */
1983
+ _findSeparatorAround(t) {
1984
+ if (this.thousandsSeparator) {
1985
+ const e = t - this.thousandsSeparator.length + 1, s = this.value.indexOf(
1986
+ this.thousandsSeparator,
1987
+ e
1988
+ );
1989
+ if (s <= t)
966
1990
  return s;
1991
+ }
1992
+ return -1;
1993
+ }
1994
+ _adjustRangeWithSeparators(t, e) {
1995
+ const s = this._findSeparatorAround(t);
1996
+ s >= 0 && (t = s);
1997
+ const n = this._findSeparatorAround(e);
1998
+ return n >= 0 && (e = n + this.thousandsSeparator.length), [t, e];
1999
+ }
2000
+ /**
2001
+ @override
2002
+ */
2003
+ remove() {
2004
+ let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0, e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : this.value.length;
2005
+ [t, e] = this._adjustRangeWithSeparators(t, e);
2006
+ const s = this.value.slice(0, t), n = this.value.slice(e), u = this._separatorsCount(
2007
+ s.length
2008
+ );
2009
+ this._value = this._insertThousandsSeparators(
2010
+ this._removeThousandsSeparators(s + n)
2011
+ );
2012
+ const i = this._separatorsCountFromSlice(s);
2013
+ return new c({
2014
+ tailShift: (i - u) * this.thousandsSeparator.length
2015
+ });
2016
+ }
2017
+ /**
2018
+ @override
2019
+ */
2020
+ nearestInputPos(t, e) {
2021
+ if (!this.thousandsSeparator)
2022
+ return t;
2023
+ switch (e) {
2024
+ case o.NONE:
2025
+ case o.LEFT:
2026
+ case o.FORCE_LEFT: {
2027
+ const s = this._findSeparatorAround(t - 1);
2028
+ if (s >= 0) {
2029
+ const n = s + this.thousandsSeparator.length;
2030
+ if (t < n || this.value.length <= n || e === o.FORCE_LEFT)
2031
+ return s;
2032
+ }
2033
+ break;
967
2034
  }
968
- down(e) {
969
- this._handleUpDownActions(e, "down");
970
- }
971
- up(e) {
972
- this._handleUpDownActions(e, "up");
2035
+ case o.RIGHT:
2036
+ case o.FORCE_RIGHT: {
2037
+ const s = this._findSeparatorAround(t);
2038
+ if (s >= 0)
2039
+ return s + this.thousandsSeparator.length;
973
2040
  }
974
- selectDate(e) {
975
- let t, s = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, { currentView: a, parsedViewDate: n, selectedDates: i } = this, { updateTime: h } = s, { moveToOtherMonthsOnSelect: o, moveToOtherYearsOnSelect: d, multipleDates: c, range: u, autoClose: p } = this.opts, g = i.length;
976
- if (Array.isArray(e))
977
- return e.forEach((f) => {
978
- this.selectDate(f, s);
979
- }), new Promise((f) => {
980
- setTimeout(f);
981
- });
982
- if ((e = C(e)) instanceof Date) {
983
- if (a === l.days && e.getMonth() !== n.month && o && (t = new Date(e.getFullYear(), e.getMonth(), 1)), a === l.years && e.getFullYear() !== n.year && d && (t = new Date(e.getFullYear(), 0, 1)), t && this.setViewDate(t), c && !u) {
984
- if (g === c)
985
- return;
986
- this._checkIfDateIsSelected(e) || i.push(e);
987
- } else if (u)
988
- switch (g) {
989
- case 1:
990
- i.push(e), this.rangeDateTo || (this.rangeDateTo = e), $(this.rangeDateFrom, this.rangeDateTo) && (this.rangeDateTo = this.rangeDateFrom, this.rangeDateFrom = e), this.selectedDates = [this.rangeDateFrom, this.rangeDateTo];
991
- break;
992
- case 2:
993
- this.selectedDates = [e], this.rangeDateFrom = e, this.rangeDateTo = "";
994
- break;
995
- default:
996
- this.selectedDates = [e], this.rangeDateFrom = e;
997
- }
998
- else
999
- this.selectedDates = [e];
1000
- return this.trigger(l.eventChangeSelectedDate, { action: l.actionSelectDate, silent: s == null ? void 0 : s.silent, date: e, updateTime: h }), this._updateLastSelectedDate(e), p && !this.timepickerIsActive && this.visible && (c || u ? u && g === 1 && this.hide() : this.hide()), new Promise((f) => {
1001
- setTimeout(f);
2041
+ }
2042
+ return t;
2043
+ }
2044
+ /**
2045
+ @override
2046
+ */
2047
+ doValidate(t) {
2048
+ let e = !!this._removeThousandsSeparators(this.value).match(this._numberRegExp);
2049
+ if (e) {
2050
+ const s = this.number;
2051
+ e = e && !isNaN(s) && // check min bound for negative values
2052
+ (this.min == null || this.min >= 0 || this.min <= this.number) && // check max bound for positive values
2053
+ (this.max == null || this.max <= 0 || this.number <= this.max);
2054
+ }
2055
+ return e && super.doValidate(t);
2056
+ }
2057
+ /**
2058
+ @override
2059
+ */
2060
+ doCommit() {
2061
+ if (this.value) {
2062
+ const t = this.number;
2063
+ let e = t;
2064
+ this.min != null && (e = Math.max(e, this.min)), this.max != null && (e = Math.min(e, this.max)), e !== t && (this.unmaskedValue = this.doFormat(e));
2065
+ let s = this.value;
2066
+ this.normalizeZeros && (s = this._normalizeZeros(s)), this.padFractionalZeros && this.scale > 0 && (s = this._padFractionalZeros(s)), this._value = s;
2067
+ }
2068
+ super.doCommit();
2069
+ }
2070
+ /** */
2071
+ _normalizeZeros(t) {
2072
+ const e = this._removeThousandsSeparators(t).split(this.radix);
2073
+ return e[0] = e[0].replace(
2074
+ /^(\D*)(0*)(\d*)/,
2075
+ (s, n, u, i) => n + i
2076
+ ), t.length && !/\d$/.test(e[0]) && (e[0] = e[0] + "0"), e.length > 1 && (e[1] = e[1].replace(/0*$/, ""), e[1].length || (e.length = 1)), this._insertThousandsSeparators(e.join(this.radix));
2077
+ }
2078
+ /** */
2079
+ _padFractionalZeros(t) {
2080
+ if (!t)
2081
+ return t;
2082
+ const e = t.split(this.radix);
2083
+ return e.length < 2 && e.push(""), e[1] = e[1].padEnd(this.scale, "0"), e.join(this.radix);
2084
+ }
2085
+ /** */
2086
+ doSkipInvalid(t) {
2087
+ let e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, s = arguments.length > 2 ? arguments[2] : void 0;
2088
+ const n = this.scale === 0 && t !== this.thousandsSeparator && (t === this.radix || t === m.UNMASKED_RADIX || this.mapToRadix.includes(t));
2089
+ return super.doSkipInvalid(t, e, s) && !n;
2090
+ }
2091
+ /**
2092
+ @override
2093
+ */
2094
+ get unmaskedValue() {
2095
+ return this._removeThousandsSeparators(
2096
+ this._normalizeZeros(this.value)
2097
+ ).replace(this.radix, m.UNMASKED_RADIX);
2098
+ }
2099
+ set unmaskedValue(t) {
2100
+ super.unmaskedValue = t;
2101
+ }
2102
+ /**
2103
+ @override
2104
+ */
2105
+ get typedValue() {
2106
+ return this.doParse(this.unmaskedValue);
2107
+ }
2108
+ set typedValue(t) {
2109
+ this.rawInputValue = this.doFormat(t).replace(
2110
+ m.UNMASKED_RADIX,
2111
+ this.radix
2112
+ );
2113
+ }
2114
+ /** Parsed Number */
2115
+ get number() {
2116
+ return this.typedValue;
2117
+ }
2118
+ set number(t) {
2119
+ this.typedValue = t;
2120
+ }
2121
+ /**
2122
+ Is negative allowed
2123
+ @readonly
2124
+ */
2125
+ get allowNegative() {
2126
+ return this.signed || this.min != null && this.min < 0 || this.max != null && this.max < 0;
2127
+ }
2128
+ /**
2129
+ @override
2130
+ */
2131
+ typedValueEquals(t) {
2132
+ return (super.typedValueEquals(t) || m.EMPTY_VALUES.includes(t) && m.EMPTY_VALUES.includes(this.typedValue)) && !(t === 0 && this.value === "");
2133
+ }
2134
+ }
2135
+ m.UNMASKED_RADIX = ".", m.DEFAULTS = {
2136
+ radix: ",",
2137
+ thousandsSeparator: "",
2138
+ mapToRadix: [m.UNMASKED_RADIX],
2139
+ scale: 2,
2140
+ signed: !1,
2141
+ normalizeZeros: !0,
2142
+ padFractionalZeros: !1,
2143
+ parse: Number,
2144
+ format: (a) => a.toLocaleString("en-US", {
2145
+ useGrouping: !1,
2146
+ maximumFractionDigits: 20
2147
+ })
2148
+ }, m.EMPTY_VALUES = [...p.EMPTY_VALUES, 0], h.MaskedNumber = m;
2149
+ class G extends p {
2150
+ /**
2151
+ @override
2152
+ @param {Object} opts
2153
+ */
2154
+ _update(t) {
2155
+ t.mask && (t.validate = t.mask), super._update(t);
2156
+ }
2157
+ }
2158
+ h.MaskedFunction = G;
2159
+ const et = ["compiledMasks", "currentMaskRef", "currentMask"], st = ["mask"];
2160
+ class x extends p {
2161
+ /** Currently chosen mask */
2162
+ /** Compliled {@link Masked} options */
2163
+ /** Chooses {@link Masked} depending on input value */
2164
+ /**
2165
+ @param {Object} opts
2166
+ */
2167
+ constructor(t) {
2168
+ super(Object.assign({}, x.DEFAULTS, t)), this.currentMask = null;
2169
+ }
2170
+ /**
2171
+ @override
2172
+ */
2173
+ _update(t) {
2174
+ super._update(t), "mask" in t && (this.compiledMasks = Array.isArray(t.mask) ? t.mask.map((e) => v(e)) : []);
2175
+ }
2176
+ /**
2177
+ @override
2178
+ */
2179
+ _appendCharRaw(t) {
2180
+ let e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
2181
+ const s = this._applyDispatch(t, e);
2182
+ return this.currentMask && s.aggregate(
2183
+ this.currentMask._appendChar(t, this.currentMaskFlags(e))
2184
+ ), s;
2185
+ }
2186
+ _applyDispatch() {
2187
+ let t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : "", e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, s = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : "";
2188
+ const n = e.tail && e._beforeTailState != null ? e._beforeTailState._value : this.value, u = this.rawInputValue, i = e.tail && e._beforeTailState != null ? (
2189
+ // $FlowFixMe - tired to fight with type system
2190
+ e._beforeTailState._rawInputValue
2191
+ ) : u, r = u.slice(i.length), l = this.currentMask, d = new c(), E = l == null ? void 0 : l.state;
2192
+ if (this.currentMask = this.doDispatch(
2193
+ t,
2194
+ Object.assign({}, e),
2195
+ s
2196
+ ), this.currentMask)
2197
+ if (this.currentMask !== l) {
2198
+ if (this.currentMask.reset(), i) {
2199
+ const A = this.currentMask.append(i, {
2200
+ raw: !0
1002
2201
  });
2202
+ d.tailShift = A.inserted.length - n.length;
1003
2203
  }
1004
- }
1005
- unselectDate(e) {
1006
- let t = this.selectedDates, s = this;
1007
- if ((e = C(e)) instanceof Date)
1008
- return t.some((a, n) => {
1009
- if (v(a, e))
1010
- return t.splice(n, 1), s.selectedDates.length ? s._updateLastSelectedDate(s.selectedDates[s.selectedDates.length - 1]) : (s.rangeDateFrom = "", s.rangeDateTo = "", s._updateLastSelectedDate(!1)), this.trigger(l.eventChangeSelectedDate, { action: l.actionUnselectDate, date: e }), !0;
1011
- });
1012
- }
1013
- replaceDate(e, t) {
1014
- let s = this.selectedDates.find((n) => v(n, e, this.currentView)), a = this.selectedDates.indexOf(s);
1015
- a < 0 || v(this.selectedDates[a], t, this.currentView) || (this.selectedDates[a] = t, this.trigger(l.eventChangeSelectedDate, { action: l.actionSelectDate, date: t, updateTime: !0 }), this._updateLastSelectedDate(t));
1016
- }
1017
- clear() {
1018
- let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
1019
- return this.selectedDates = [], this.rangeDateFrom = !1, this.rangeDateTo = !1, this.trigger(l.eventChangeSelectedDate, { action: l.actionUnselectDate, silent: e.silent }), new Promise((t) => {
1020
- setTimeout(t);
1021
- });
1022
- }
1023
- show() {
1024
- let { onShow: e, isMobile: t } = this.opts;
1025
- this._cancelScheduledCall(), this.visible || this.hideAnimation || this._createComponents(), this.setPosition(this.opts.position), this.$datepicker.classList.add("-active-"), this.visible = !0, e && this._scheduleCallAfterTransition(e), t && this._showMobileOverlay();
1026
- }
1027
- hide() {
1028
- let { onHide: e, isMobile: t } = this.opts, s = this._hasTransition();
1029
- this.visible = !1, this.hideAnimation = !0, this.$datepicker.classList.remove("-active-"), this.customHide && this.customHide(), this.elIsInput && this.$el.blur(), this._scheduleCallAfterTransition((a) => {
1030
- !this.customHide && (a && s || !a && !s) && this._finishHide(), e && e(a);
1031
- }), t && S.classList.remove("-active-");
1032
- }
1033
- _triggerOnSelect() {
1034
- let e = [], t = [], { selectedDates: s, locale: a, opts: { onSelect: n, multipleDates: i, range: h } } = this, o = i || h, d = typeof a.dateFormat == "function";
1035
- s.length && (e = s.map(J), t = d ? i ? a.dateFormat(e) : e.map((c) => a.dateFormat(c)) : e.map((c) => this.formatDate(c, a.dateFormat))), n({ date: o ? e : e[0], formattedDate: o ? t : t[0], datepicker: this });
1036
- }
1037
- _handleAlreadySelectedDates(e, t) {
1038
- let { range: s, toggleSelected: a } = this.opts;
1039
- s ? a ? this.unselectDate(t) : this.selectedDates.length !== 2 && this.selectDate(t) : a && this.unselectDate(t), a || this._updateLastSelectedDate(e);
1040
- }
1041
- _handleUpDownActions(e, t) {
1042
- if (!((e = C(e || this.focusDate || this.viewDate)) instanceof Date))
1043
- return;
1044
- let s = t === "up" ? this.viewIndex + 1 : this.viewIndex - 1;
1045
- s > 2 && (s = 2), s < 0 && (s = 0), this.setViewDate(new Date(e.getFullYear(), e.getMonth(), 1)), this.setCurrentView(this.viewIndexes[s]);
1046
- }
1047
- _handleRangeOnFocus() {
1048
- this.selectedDates.length === 1 && ($(this.selectedDates[0], this.focusDate) ? (this.rangeDateTo = this.selectedDates[0], this.rangeDateFrom = this.focusDate) : (this.rangeDateTo = this.focusDate, this.rangeDateFrom = this.selectedDates[0]));
1049
- }
1050
- getCell(e) {
1051
- let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : l.day;
1052
- if (!((e = C(e)) instanceof Date))
1053
- return;
1054
- let { year: s, month: a, date: n } = D(e), i = '[data-year="'.concat(s, '"]'), h = '[data-month="'.concat(a, '"]'), o = '[data-date="'.concat(n, '"]'), d = { [l.day]: "".concat(i).concat(h).concat(o), [l.month]: "".concat(i).concat(h), [l.year]: "".concat(i) };
1055
- return this.views[this.currentView].$el.querySelector(d[t]);
1056
- }
1057
- _showMobileOverlay() {
1058
- S.classList.add("-active-");
1059
- }
1060
- _hasTransition() {
1061
- return window.getComputedStyle(this.$datepicker).getPropertyValue("transition-duration").split(", ").reduce((e, t) => parseFloat(t) + e, 0) > 0;
1062
- }
1063
- get shouldUpdateDOM() {
1064
- return this.visible || this.treatAsInline;
1065
- }
1066
- get parsedViewDate() {
1067
- return D(this.viewDate);
1068
- }
1069
- get currentViewSingular() {
1070
- return this.currentView.slice(0, -1);
1071
- }
1072
- get curDecade() {
1073
- return F(this.viewDate);
1074
- }
1075
- get viewIndex() {
1076
- return this.viewIndexes.indexOf(this.currentView);
1077
- }
1078
- get isFinalView() {
1079
- return this.currentView === l.years;
1080
- }
1081
- get hasSelectedDates() {
1082
- return this.selectedDates.length > 0;
1083
- }
1084
- get isMinViewReached() {
1085
- return this.currentView === this.opts.minView || this.currentView === l.days;
1086
- }
1087
- get $container() {
1088
- return this.$customContainer || W;
1089
- }
1090
- static replacer(e, t, s) {
1091
- return e.replace(t, function(a, n, i, h) {
1092
- return n + s + h;
1093
- });
1094
- }
2204
+ r && (d.tailShift += this.currentMask.append(r, {
2205
+ raw: !0,
2206
+ tail: !0
2207
+ }).tailShift);
2208
+ } else
2209
+ this.currentMask.state = E;
2210
+ return d;
2211
+ }
2212
+ _appendPlaceholder() {
2213
+ const t = this._applyDispatch(...arguments);
2214
+ return this.currentMask && t.aggregate(this.currentMask._appendPlaceholder()), t;
2215
+ }
2216
+ /**
2217
+ @override
2218
+ */
2219
+ _appendEager() {
2220
+ const t = this._applyDispatch(...arguments);
2221
+ return this.currentMask && t.aggregate(this.currentMask._appendEager()), t;
2222
+ }
2223
+ appendTail(t) {
2224
+ const e = new c();
2225
+ return t && e.aggregate(this._applyDispatch("", {}, t)), e.aggregate(
2226
+ this.currentMask ? this.currentMask.appendTail(t) : super.appendTail(t)
2227
+ );
2228
+ }
2229
+ currentMaskFlags(t) {
2230
+ var e, s;
2231
+ return Object.assign({}, t, {
2232
+ _beforeTailState: ((e = t._beforeTailState) === null || e === void 0 ? void 0 : e.currentMaskRef) === this.currentMask && ((s = t._beforeTailState) === null || s === void 0 ? void 0 : s.currentMask) || t._beforeTailState
2233
+ });
2234
+ }
2235
+ /**
2236
+ @override
2237
+ */
2238
+ doDispatch(t) {
2239
+ let e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, s = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : "";
2240
+ return this.dispatch(t, this, e, s);
2241
+ }
2242
+ /**
2243
+ @override
2244
+ */
2245
+ doValidate(t) {
2246
+ return super.doValidate(t) && (!this.currentMask || this.currentMask.doValidate(this.currentMaskFlags(t)));
2247
+ }
2248
+ /**
2249
+ @override
2250
+ */
2251
+ doPrepare(t) {
2252
+ let e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, [s, n] = M(super.doPrepare(t, e));
2253
+ if (this.currentMask) {
2254
+ let u;
2255
+ [s, u] = M(
2256
+ super.doPrepare(s, this.currentMaskFlags(e))
2257
+ ), n = n.aggregate(u);
1095
2258
  }
1096
- var ie;
1097
- return m(T, "defaults", Q), m(T, "version", "3.3.0"), m(T, "defaultContainerId", "air-datepicker-global-container"), ie = T.prototype, Object.assign(ie, me), j.default;
1098
- }();
1099
- });
1100
- })(ne);
1101
- var ye = ne.exports;
1102
- const ke = /* @__PURE__ */ De(ye);
2259
+ return [s, n];
2260
+ }
2261
+ /**
2262
+ @override
2263
+ */
2264
+ reset() {
2265
+ var t;
2266
+ (t = this.currentMask) === null || t === void 0 || t.reset(), this.compiledMasks.forEach((e) => e.reset());
2267
+ }
2268
+ /**
2269
+ @override
2270
+ */
2271
+ get value() {
2272
+ return this.currentMask ? this.currentMask.value : "";
2273
+ }
2274
+ set value(t) {
2275
+ super.value = t;
2276
+ }
2277
+ /**
2278
+ @override
2279
+ */
2280
+ get unmaskedValue() {
2281
+ return this.currentMask ? this.currentMask.unmaskedValue : "";
2282
+ }
2283
+ set unmaskedValue(t) {
2284
+ super.unmaskedValue = t;
2285
+ }
2286
+ /**
2287
+ @override
2288
+ */
2289
+ get typedValue() {
2290
+ return this.currentMask ? this.currentMask.typedValue : "";
2291
+ }
2292
+ // probably typedValue should not be used with dynamic
2293
+ set typedValue(t) {
2294
+ let e = String(t);
2295
+ this.currentMask && (this.currentMask.typedValue = t, e = this.currentMask.unmaskedValue), this.unmaskedValue = e;
2296
+ }
2297
+ get displayValue() {
2298
+ return this.currentMask ? this.currentMask.displayValue : "";
2299
+ }
2300
+ /**
2301
+ @override
2302
+ */
2303
+ get isComplete() {
2304
+ var t;
2305
+ return !!(!((t = this.currentMask) === null || t === void 0) && t.isComplete);
2306
+ }
2307
+ /**
2308
+ @override
2309
+ */
2310
+ get isFilled() {
2311
+ var t;
2312
+ return !!(!((t = this.currentMask) === null || t === void 0) && t.isFilled);
2313
+ }
2314
+ /**
2315
+ @override
2316
+ */
2317
+ remove() {
2318
+ const t = new c();
2319
+ return this.currentMask && t.aggregate(this.currentMask.remove(...arguments)).aggregate(this._applyDispatch()), t;
2320
+ }
2321
+ /**
2322
+ @override
2323
+ */
2324
+ get state() {
2325
+ var t;
2326
+ return Object.assign({}, super.state, {
2327
+ _rawInputValue: this.rawInputValue,
2328
+ compiledMasks: this.compiledMasks.map((e) => e.state),
2329
+ currentMaskRef: this.currentMask,
2330
+ currentMask: (t = this.currentMask) === null || t === void 0 ? void 0 : t.state
2331
+ });
2332
+ }
2333
+ set state(t) {
2334
+ const { compiledMasks: e, currentMaskRef: s, currentMask: n } = t, u = k(t, et);
2335
+ this.compiledMasks.forEach((i, r) => i.state = e[r]), s != null && (this.currentMask = s, this.currentMask.state = n), super.state = u;
2336
+ }
2337
+ /**
2338
+ @override
2339
+ */
2340
+ extractInput() {
2341
+ return this.currentMask ? this.currentMask.extractInput(...arguments) : "";
2342
+ }
2343
+ /**
2344
+ @override
2345
+ */
2346
+ extractTail() {
2347
+ return this.currentMask ? this.currentMask.extractTail(...arguments) : super.extractTail(...arguments);
2348
+ }
2349
+ /**
2350
+ @override
2351
+ */
2352
+ doCommit() {
2353
+ this.currentMask && this.currentMask.doCommit(), super.doCommit();
2354
+ }
2355
+ /**
2356
+ @override
2357
+ */
2358
+ nearestInputPos() {
2359
+ return this.currentMask ? this.currentMask.nearestInputPos(...arguments) : super.nearestInputPos(...arguments);
2360
+ }
2361
+ get overwrite() {
2362
+ return this.currentMask ? this.currentMask.overwrite : super.overwrite;
2363
+ }
2364
+ set overwrite(t) {
2365
+ console.warn(
2366
+ '"overwrite" option is not available in dynamic mask, use this option in siblings'
2367
+ );
2368
+ }
2369
+ get eager() {
2370
+ return this.currentMask ? this.currentMask.eager : super.eager;
2371
+ }
2372
+ set eager(t) {
2373
+ console.warn(
2374
+ '"eager" option is not available in dynamic mask, use this option in siblings'
2375
+ );
2376
+ }
2377
+ get skipInvalid() {
2378
+ return this.currentMask ? this.currentMask.skipInvalid : super.skipInvalid;
2379
+ }
2380
+ set skipInvalid(t) {
2381
+ (this.isInitialized || t !== p.DEFAULTS.skipInvalid) && console.warn(
2382
+ '"skipInvalid" option is not available in dynamic mask, use this option in siblings'
2383
+ );
2384
+ }
2385
+ /**
2386
+ @override
2387
+ */
2388
+ maskEquals(t) {
2389
+ return Array.isArray(t) && this.compiledMasks.every((e, s) => {
2390
+ if (!t[s])
2391
+ return;
2392
+ const n = t[s], { mask: u } = n, i = k(n, st);
2393
+ return I(e, i) && e.maskEquals(u);
2394
+ });
2395
+ }
2396
+ /**
2397
+ @override
2398
+ */
2399
+ typedValueEquals(t) {
2400
+ var e;
2401
+ return !!(!((e = this.currentMask) === null || e === void 0) && e.typedValueEquals(t));
2402
+ }
2403
+ }
2404
+ x.DEFAULTS = {
2405
+ dispatch: (a, t, e, s) => {
2406
+ if (!t.compiledMasks.length)
2407
+ return;
2408
+ const n = t.rawInputValue, u = t.compiledMasks.map((i, r) => {
2409
+ const l = t.currentMask === i, d = l ? i.value.length : i.nearestInputPos(i.value.length, o.FORCE_LEFT);
2410
+ return i.rawInputValue !== n ? (i.reset(), i.append(n, {
2411
+ raw: !0
2412
+ })) : l || i.remove(d), i.append(a, t.currentMaskFlags(e)), i.appendTail(s), {
2413
+ index: r,
2414
+ weight: i.rawInputValue.length,
2415
+ totalInputPositions: i.totalInputPositions(
2416
+ 0,
2417
+ Math.max(
2418
+ d,
2419
+ i.nearestInputPos(i.value.length, o.FORCE_LEFT)
2420
+ )
2421
+ )
2422
+ };
2423
+ });
2424
+ return u.sort(
2425
+ (i, r) => r.weight - i.weight || r.totalInputPositions - i.totalInputPositions
2426
+ ), t.compiledMasks[u[0].index];
2427
+ }
2428
+ }, h.MaskedDynamic = x;
2429
+ const w = {
2430
+ MASKED: "value",
2431
+ UNMASKED: "unmaskedValue",
2432
+ TYPED: "typedValue"
2433
+ };
2434
+ function O(a) {
2435
+ let t = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : w.MASKED, e = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : w.MASKED;
2436
+ const s = v(a);
2437
+ return (n) => s.runIsolated((u) => (u[t] = n, u[e]));
2438
+ }
2439
+ function q(a) {
2440
+ for (var t = arguments.length, e = new Array(t > 1 ? t - 1 : 0), s = 1; s < t; s++)
2441
+ e[s - 1] = arguments[s];
2442
+ return O(...e)(a);
2443
+ }
2444
+ h.PIPE_TYPE = w, h.createPipe = O, h.pipe = q;
2445
+ try {
2446
+ globalThis.IMask = h;
2447
+ } catch {
2448
+ }
2449
+ g.ChangeDetails = c, g.HTMLContenteditableMaskElement = y, g.HTMLMaskElement = S, g.InputMask = H, g.MaskElement = P, g.Masked = p, g.MaskedDate = C, g.MaskedDynamic = x, g.MaskedEnum = z, g.MaskedFunction = G, g.MaskedNumber = m, g.MaskedPattern = f, g.MaskedRange = T, g.MaskedRegExp = U, g.PIPE_TYPE = w, g.createMask = v, g.createPipe = O, g.default = h, g.pipe = q, Object.defineProperty(g, "__esModule", { value: !0 });
2450
+ });
2451
+ const ut = IMask;
1103
2452
  export {
1104
- ke as default
2453
+ ut as default
1105
2454
  };
1106
2455
  //# sourceMappingURL=design-system85.mjs.map