@epic-web/workshop-app 5.1.0 → 5.1.2

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 (2187) hide show
  1. package/build/client/assets/_-CWSCXcBv.js +2 -0
  2. package/build/client/assets/_-CWSCXcBv.js.map +1 -0
  3. package/build/client/assets/_exerciseNumber-DarnXgbX.js +2 -0
  4. package/build/client/assets/_exerciseNumber-DarnXgbX.js.map +1 -0
  5. package/build/client/assets/_exerciseNumber_._stepNumber-BA2Xhzqs.js +2 -0
  6. package/build/client/assets/_exerciseNumber_._stepNumber-BA2Xhzqs.js.map +1 -0
  7. package/build/client/assets/_exerciseNumber_.finished-DEzaS_Ji.js +2 -0
  8. package/build/client/assets/_exerciseNumber_.finished-DEzaS_Ji.js.map +1 -0
  9. package/build/client/assets/_layout-88n0To1b.js +2 -0
  10. package/build/client/assets/_layout-88n0To1b.js.map +1 -0
  11. package/build/client/assets/_layout-BTrPWpBz.js +2 -0
  12. package/build/client/assets/_layout-BTrPWpBz.js.map +1 -0
  13. package/build/client/assets/_layout-T2hZtl0D.js +6 -0
  14. package/build/client/assets/_layout-T2hZtl0D.js.map +1 -0
  15. package/build/client/assets/_layout-gyrNluke.js +2 -0
  16. package/build/client/assets/_layout-gyrNluke.js.map +1 -0
  17. package/build/client/assets/accordion-DC885Li1.js +2 -0
  18. package/build/client/assets/accordion-DC885Li1.js.map +1 -0
  19. package/build/client/assets/account-CPFwPYf1.js +2 -0
  20. package/build/client/assets/account-CPFwPYf1.js.map +1 -0
  21. package/build/client/assets/app-CM8yuYni.js +2 -0
  22. package/build/client/assets/app-CM8yuYni.js.map +1 -0
  23. package/build/client/assets/button-DQ001ob0.js +2 -0
  24. package/build/client/assets/button-DQ001ob0.js.map +1 -0
  25. package/build/client/assets/components-9EGYHTc_.js +158 -0
  26. package/build/client/assets/components-9EGYHTc_.js.map +1 -0
  27. package/build/client/assets/diff-assn_bSK.js +2 -0
  28. package/build/client/assets/diff-assn_bSK.js.map +1 -0
  29. package/build/client/assets/diff-jlCv3hv0.js +2 -0
  30. package/build/client/assets/diff-jlCv3hv0.js.map +1 -0
  31. package/build/client/assets/discord-CHsbqaqM.js +2 -0
  32. package/build/client/assets/discord-CHsbqaqM.js.map +1 -0
  33. package/build/client/assets/discord-DoeazikD.js +2 -0
  34. package/build/client/assets/discord-DoeazikD.js.map +1 -0
  35. package/build/client/assets/entry.client-BTYTUpFV.js +44 -0
  36. package/build/client/assets/entry.client-BTYTUpFV.js.map +1 -0
  37. package/build/client/assets/epic-video-GDpD7_Qt.js +3053 -0
  38. package/build/client/assets/epic-video-GDpD7_Qt.js.map +1 -0
  39. package/build/client/assets/error-boundary-1-dmC941.js +2 -0
  40. package/build/client/assets/error-boundary-1-dmC941.js.map +1 -0
  41. package/build/client/assets/finished-DVV0zwmP.js +2 -0
  42. package/build/client/assets/finished-DVV0zwmP.js.map +1 -0
  43. package/build/client/assets/index-BCxBKsqT.js +2 -0
  44. package/build/client/assets/index-BCxBKsqT.js.map +1 -0
  45. package/build/client/assets/index-BFGhCX_U.js +38 -0
  46. package/build/client/assets/index-BFGhCX_U.js.map +1 -0
  47. package/build/client/assets/index-BuA_RWlU.js +2 -0
  48. package/build/client/assets/index-BuA_RWlU.js.map +1 -0
  49. package/build/client/assets/index-BuoaxPEj.js +42 -0
  50. package/build/client/assets/index-BuoaxPEj.js.map +1 -0
  51. package/build/client/assets/index-DJF1fiZI.js +2 -0
  52. package/build/client/assets/index-DJF1fiZI.js.map +1 -0
  53. package/build/client/assets/index-DRH72MzK.js +3 -0
  54. package/build/client/assets/index-DRH72MzK.js.map +1 -0
  55. package/build/client/assets/index-KgMLc41c.js +2 -0
  56. package/build/client/assets/index-KgMLc41c.js.map +1 -0
  57. package/build/client/assets/index-_J-F_Dnc.js +36 -0
  58. package/build/client/assets/index-_J-F_Dnc.js.map +1 -0
  59. package/build/client/assets/loading-Dk0n07O3.js +2 -0
  60. package/build/client/assets/loading-Dk0n07O3.js.map +1 -0
  61. package/build/client/assets/login-pZYDEC_l.js +2 -0
  62. package/build/client/assets/login-pZYDEC_l.js.map +1 -0
  63. package/build/client/assets/manifest-3338a6ab.js +1 -0
  64. package/build/client/assets/mdx-hW1uYjc1.js +2 -0
  65. package/build/client/assets/mdx-hW1uYjc1.js.map +1 -0
  66. package/build/client/assets/misc-BJtHv_Jh.js +2 -0
  67. package/build/client/assets/misc-BJtHv_Jh.js.map +1 -0
  68. package/build/client/assets/nav-chevrons-CgbSMLeb.js +2 -0
  69. package/build/client/assets/nav-chevrons-CgbSMLeb.js.map +1 -0
  70. package/build/client/assets/onboarding-DCuSqnkZ.js +2 -0
  71. package/build/client/assets/onboarding-DCuSqnkZ.js.map +1 -0
  72. package/build/client/assets/pe-ChIwTk8v.js +2 -0
  73. package/build/client/assets/pe-ChIwTk8v.js.map +1 -0
  74. package/build/client/assets/presence-CdyMdOKk.js +28 -0
  75. package/build/client/assets/presence-CdyMdOKk.js.map +1 -0
  76. package/build/client/assets/preview-CW_12I0i.js +2 -0
  77. package/build/client/assets/preview-CW_12I0i.js.map +1 -0
  78. package/build/client/assets/product-C1ynnrN_.js +2 -0
  79. package/build/client/assets/product-C1ynnrN_.js.map +1 -0
  80. package/build/client/assets/progress-DAB3nDa2.js +2 -0
  81. package/build/client/assets/progress-DAB3nDa2.js.map +1 -0
  82. package/build/client/assets/progress-bar-Cj5R4Zk7.js +2 -0
  83. package/build/client/assets/progress-bar-Cj5R4Zk7.js.map +1 -0
  84. package/build/client/assets/request-info-DCIQLE6H.js +2 -0
  85. package/build/client/assets/request-info-DCIQLE6H.js.map +1 -0
  86. package/build/client/assets/revalidation-ws-DU-PzW-_.js +2 -0
  87. package/build/client/assets/revalidation-ws-DU-PzW-_.js.map +1 -0
  88. package/build/client/assets/root-DojjHZlY.js +11 -0
  89. package/build/client/assets/root-DojjHZlY.js.map +1 -0
  90. package/build/client/assets/set-playground-DgnOJqFN.js +2 -0
  91. package/build/client/assets/set-playground-DgnOJqFN.js.map +1 -0
  92. package/build/client/assets/support-BNS-kEhc.js +2 -0
  93. package/build/client/assets/support-BNS-kEhc.js.map +1 -0
  94. package/build/client/assets/tailwind-B5AAMtGC.css +1 -0
  95. package/build/client/assets/test-DJ7oeeeg.js +2 -0
  96. package/build/client/assets/test-DJ7oeeeg.js.map +1 -0
  97. package/build/client/assets/tests-Bw1rCopV.js +4 -0
  98. package/build/client/assets/tests-Bw1rCopV.js.map +1 -0
  99. package/build/client/assets/tooltip-BgynKV2c.js +2 -0
  100. package/build/client/assets/tooltip-BgynKV2c.js.map +1 -0
  101. package/build/client/assets/use-event-source-x59d4R2Z.js +2 -0
  102. package/build/client/assets/use-event-source-x59d4R2Z.js.map +1 -0
  103. package/build/client/assets/user-BBryXlM_.js +2 -0
  104. package/build/client/assets/user-BBryXlM_.js.map +1 -0
  105. package/build/client/assets/workshop-config-DJY2cXU_.js +2 -0
  106. package/build/client/assets/workshop-config-DJY2cXU_.js.map +1 -0
  107. package/build/server/index.js +110 -2346
  108. package/build/server/index.js.map +1 -1
  109. package/dist/server/index.js +7 -12
  110. package/package.json +68 -95
  111. package/build/client/assets/_-ZHCWB__B.js +0 -2
  112. package/build/client/assets/_-ZHCWB__B.js.map +0 -1
  113. package/build/client/assets/_exerciseNumber-BFTlBdr4.js +0 -2
  114. package/build/client/assets/_exerciseNumber-BFTlBdr4.js.map +0 -1
  115. package/build/client/assets/_exerciseNumber_._stepNumber-_687iGFh.js +0 -2
  116. package/build/client/assets/_exerciseNumber_._stepNumber-_687iGFh.js.map +0 -1
  117. package/build/client/assets/_exerciseNumber_.finished-BEfn-nJi.js +0 -2
  118. package/build/client/assets/_exerciseNumber_.finished-BEfn-nJi.js.map +0 -1
  119. package/build/client/assets/_layout-BLJr2x2F.js +0 -2
  120. package/build/client/assets/_layout-BLJr2x2F.js.map +0 -1
  121. package/build/client/assets/_layout-BriOqd2R.js +0 -2
  122. package/build/client/assets/_layout-BriOqd2R.js.map +0 -1
  123. package/build/client/assets/_layout-Cfbi6StB.js +0 -2
  124. package/build/client/assets/_layout-Cfbi6StB.js.map +0 -1
  125. package/build/client/assets/_layout-frPHZWgR.js +0 -6
  126. package/build/client/assets/_layout-frPHZWgR.js.map +0 -1
  127. package/build/client/assets/accordion-DuE9VejZ.js +0 -2
  128. package/build/client/assets/accordion-DuE9VejZ.js.map +0 -1
  129. package/build/client/assets/account-DDuV9rZX.js +0 -2
  130. package/build/client/assets/account-DDuV9rZX.js.map +0 -1
  131. package/build/client/assets/app-wbMCZEiv.js +0 -2
  132. package/build/client/assets/app-wbMCZEiv.js.map +0 -1
  133. package/build/client/assets/button-CMkJ8p0a.js +0 -2
  134. package/build/client/assets/button-CMkJ8p0a.js.map +0 -1
  135. package/build/client/assets/components-DZ8XIeZ3.js +0 -166
  136. package/build/client/assets/components-DZ8XIeZ3.js.map +0 -1
  137. package/build/client/assets/diff-B6thd_Sf.js +0 -2
  138. package/build/client/assets/diff-B6thd_Sf.js.map +0 -1
  139. package/build/client/assets/diff-BEk79KPK.js +0 -2
  140. package/build/client/assets/diff-BEk79KPK.js.map +0 -1
  141. package/build/client/assets/discord-C9bVfiZ6.js +0 -2
  142. package/build/client/assets/discord-C9bVfiZ6.js.map +0 -1
  143. package/build/client/assets/discord-DYeU0QX6.js +0 -2
  144. package/build/client/assets/discord-DYeU0QX6.js.map +0 -1
  145. package/build/client/assets/entry.client-CW5CUf_W.js +0 -43
  146. package/build/client/assets/entry.client-CW5CUf_W.js.map +0 -1
  147. package/build/client/assets/epic-video-bs7WmhbC.js +0 -2988
  148. package/build/client/assets/epic-video-bs7WmhbC.js.map +0 -1
  149. package/build/client/assets/error-boundary-BcGxKpte.js +0 -2
  150. package/build/client/assets/error-boundary-BcGxKpte.js.map +0 -1
  151. package/build/client/assets/finished-C2dgX1d-.js +0 -2
  152. package/build/client/assets/finished-C2dgX1d-.js.map +0 -1
  153. package/build/client/assets/index-BczhSZ3e.js +0 -2
  154. package/build/client/assets/index-BczhSZ3e.js.map +0 -1
  155. package/build/client/assets/index-BjNhezSK.js +0 -42
  156. package/build/client/assets/index-BjNhezSK.js.map +0 -1
  157. package/build/client/assets/index-BvihEwfB.js +0 -36
  158. package/build/client/assets/index-BvihEwfB.js.map +0 -1
  159. package/build/client/assets/index-C2yr7Uiu.js +0 -2
  160. package/build/client/assets/index-C2yr7Uiu.js.map +0 -1
  161. package/build/client/assets/index-CuV1bRbu.js +0 -2
  162. package/build/client/assets/index-CuV1bRbu.js.map +0 -1
  163. package/build/client/assets/index-DBrRQJxF.js +0 -2
  164. package/build/client/assets/index-DBrRQJxF.js.map +0 -1
  165. package/build/client/assets/index-DF_XBInP.js +0 -37
  166. package/build/client/assets/index-DF_XBInP.js.map +0 -1
  167. package/build/client/assets/index-YtpQLUzj.js +0 -3
  168. package/build/client/assets/index-YtpQLUzj.js.map +0 -1
  169. package/build/client/assets/loading-Br41_Pbf.js +0 -2
  170. package/build/client/assets/loading-Br41_Pbf.js.map +0 -1
  171. package/build/client/assets/login-kjV7hrVt.js +0 -2
  172. package/build/client/assets/login-kjV7hrVt.js.map +0 -1
  173. package/build/client/assets/manifest-77ab30ae.js +0 -1
  174. package/build/client/assets/mdx-CRxPouxB.js +0 -2
  175. package/build/client/assets/mdx-CRxPouxB.js.map +0 -1
  176. package/build/client/assets/misc-BE75ioh8.js +0 -2
  177. package/build/client/assets/misc-BE75ioh8.js.map +0 -1
  178. package/build/client/assets/nav-chevrons-DYiI8EMU.js +0 -2
  179. package/build/client/assets/nav-chevrons-DYiI8EMU.js.map +0 -1
  180. package/build/client/assets/onboarding-B4Z_yevk.js +0 -2
  181. package/build/client/assets/onboarding-B4Z_yevk.js.map +0 -1
  182. package/build/client/assets/pe-CvPIToj6.js +0 -2
  183. package/build/client/assets/pe-CvPIToj6.js.map +0 -1
  184. package/build/client/assets/presence-Dd98AJ_5.js +0 -28
  185. package/build/client/assets/presence-Dd98AJ_5.js.map +0 -1
  186. package/build/client/assets/preview-DZcdG4kw.js +0 -2
  187. package/build/client/assets/preview-DZcdG4kw.js.map +0 -1
  188. package/build/client/assets/product-mjsTrqXs.js +0 -2
  189. package/build/client/assets/product-mjsTrqXs.js.map +0 -1
  190. package/build/client/assets/progress-Co-59mG2.js +0 -2
  191. package/build/client/assets/progress-Co-59mG2.js.map +0 -1
  192. package/build/client/assets/progress-bar-F8_2mvYp.js +0 -2
  193. package/build/client/assets/progress-bar-F8_2mvYp.js.map +0 -1
  194. package/build/client/assets/request-info-DGnmXtfj.js +0 -2
  195. package/build/client/assets/request-info-DGnmXtfj.js.map +0 -1
  196. package/build/client/assets/revalidation-ws-DcvYvzyj.js +0 -2
  197. package/build/client/assets/revalidation-ws-DcvYvzyj.js.map +0 -1
  198. package/build/client/assets/root-Cl86OUog.js +0 -11
  199. package/build/client/assets/root-Cl86OUog.js.map +0 -1
  200. package/build/client/assets/set-playground-pMKmtPtz.js +0 -2
  201. package/build/client/assets/set-playground-pMKmtPtz.js.map +0 -1
  202. package/build/client/assets/support-B0E_F4Zh.js +0 -2
  203. package/build/client/assets/support-B0E_F4Zh.js.map +0 -1
  204. package/build/client/assets/tailwind-B9pSujyx.css +0 -1
  205. package/build/client/assets/test-B6zIK2V6.js +0 -2
  206. package/build/client/assets/test-B6zIK2V6.js.map +0 -1
  207. package/build/client/assets/tests-BeAEgPAw.js +0 -4
  208. package/build/client/assets/tests-BeAEgPAw.js.map +0 -1
  209. package/build/client/assets/tooltip-6-WS-Xux.js +0 -2
  210. package/build/client/assets/tooltip-6-WS-Xux.js.map +0 -1
  211. package/build/client/assets/use-event-source-CCGBLG92.js +0 -2
  212. package/build/client/assets/use-event-source-CCGBLG92.js.map +0 -1
  213. package/build/client/assets/user-Boua6jiU.js +0 -2
  214. package/build/client/assets/user-Boua6jiU.js.map +0 -1
  215. package/build/client/assets/workshop-config-Ce9sSc3I.js +0 -2
  216. package/build/client/assets/workshop-config-Ce9sSc3I.js.map +0 -1
  217. package/node_modules/@babel/runtime/LICENSE +0 -22
  218. package/node_modules/@babel/runtime/README.md +0 -19
  219. package/node_modules/@babel/runtime/helpers/AwaitValue.js +0 -4
  220. package/node_modules/@babel/runtime/helpers/OverloadYield.js +0 -4
  221. package/node_modules/@babel/runtime/helpers/applyDecoratedDescriptor.js +0 -9
  222. package/node_modules/@babel/runtime/helpers/applyDecs.js +0 -236
  223. package/node_modules/@babel/runtime/helpers/applyDecs2203.js +0 -184
  224. package/node_modules/@babel/runtime/helpers/applyDecs2203R.js +0 -191
  225. package/node_modules/@babel/runtime/helpers/applyDecs2301.js +0 -222
  226. package/node_modules/@babel/runtime/helpers/applyDecs2305.js +0 -133
  227. package/node_modules/@babel/runtime/helpers/applyDecs2311.js +0 -124
  228. package/node_modules/@babel/runtime/helpers/arrayLikeToArray.js +0 -6
  229. package/node_modules/@babel/runtime/helpers/arrayWithHoles.js +0 -4
  230. package/node_modules/@babel/runtime/helpers/arrayWithoutHoles.js +0 -5
  231. package/node_modules/@babel/runtime/helpers/assertClassBrand.js +0 -5
  232. package/node_modules/@babel/runtime/helpers/assertThisInitialized.js +0 -5
  233. package/node_modules/@babel/runtime/helpers/asyncGeneratorDelegate.js +0 -24
  234. package/node_modules/@babel/runtime/helpers/asyncIterator.js +0 -45
  235. package/node_modules/@babel/runtime/helpers/asyncToGenerator.js +0 -26
  236. package/node_modules/@babel/runtime/helpers/awaitAsyncGenerator.js +0 -5
  237. package/node_modules/@babel/runtime/helpers/callSuper.js +0 -7
  238. package/node_modules/@babel/runtime/helpers/checkInRHS.js +0 -6
  239. package/node_modules/@babel/runtime/helpers/checkPrivateRedeclaration.js +0 -4
  240. package/node_modules/@babel/runtime/helpers/classApplyDescriptorDestructureSet.js +0 -10
  241. package/node_modules/@babel/runtime/helpers/classApplyDescriptorGet.js +0 -4
  242. package/node_modules/@babel/runtime/helpers/classApplyDescriptorSet.js +0 -7
  243. package/node_modules/@babel/runtime/helpers/classCallCheck.js +0 -4
  244. package/node_modules/@babel/runtime/helpers/classCheckPrivateStaticAccess.js +0 -5
  245. package/node_modules/@babel/runtime/helpers/classCheckPrivateStaticFieldDescriptor.js +0 -4
  246. package/node_modules/@babel/runtime/helpers/classExtractFieldDescriptor.js +0 -5
  247. package/node_modules/@babel/runtime/helpers/classNameTDZError.js +0 -4
  248. package/node_modules/@babel/runtime/helpers/classPrivateFieldDestructureSet.js +0 -7
  249. package/node_modules/@babel/runtime/helpers/classPrivateFieldGet.js +0 -7
  250. package/node_modules/@babel/runtime/helpers/classPrivateFieldGet2.js +0 -5
  251. package/node_modules/@babel/runtime/helpers/classPrivateFieldInitSpec.js +0 -5
  252. package/node_modules/@babel/runtime/helpers/classPrivateFieldLooseBase.js +0 -5
  253. package/node_modules/@babel/runtime/helpers/classPrivateFieldLooseKey.js +0 -5
  254. package/node_modules/@babel/runtime/helpers/classPrivateFieldSet.js +0 -7
  255. package/node_modules/@babel/runtime/helpers/classPrivateFieldSet2.js +0 -5
  256. package/node_modules/@babel/runtime/helpers/classPrivateGetter.js +0 -5
  257. package/node_modules/@babel/runtime/helpers/classPrivateMethodGet.js +0 -5
  258. package/node_modules/@babel/runtime/helpers/classPrivateMethodInitSpec.js +0 -5
  259. package/node_modules/@babel/runtime/helpers/classPrivateMethodSet.js +0 -4
  260. package/node_modules/@babel/runtime/helpers/classPrivateSetter.js +0 -5
  261. package/node_modules/@babel/runtime/helpers/classStaticPrivateFieldDestructureSet.js +0 -7
  262. package/node_modules/@babel/runtime/helpers/classStaticPrivateFieldSpecGet.js +0 -7
  263. package/node_modules/@babel/runtime/helpers/classStaticPrivateFieldSpecSet.js +0 -7
  264. package/node_modules/@babel/runtime/helpers/classStaticPrivateMethodGet.js +0 -5
  265. package/node_modules/@babel/runtime/helpers/classStaticPrivateMethodSet.js +0 -4
  266. package/node_modules/@babel/runtime/helpers/construct.js +0 -10
  267. package/node_modules/@babel/runtime/helpers/createClass.js +0 -13
  268. package/node_modules/@babel/runtime/helpers/createForOfIteratorHelper.js +0 -50
  269. package/node_modules/@babel/runtime/helpers/createForOfIteratorHelperLoose.js +0 -19
  270. package/node_modules/@babel/runtime/helpers/createSuper.js +0 -16
  271. package/node_modules/@babel/runtime/helpers/decorate.js +0 -250
  272. package/node_modules/@babel/runtime/helpers/defaults.js +0 -9
  273. package/node_modules/@babel/runtime/helpers/defineAccessor.js +0 -8
  274. package/node_modules/@babel/runtime/helpers/defineEnumerableProperties.js +0 -12
  275. package/node_modules/@babel/runtime/helpers/defineProperty.js +0 -10
  276. package/node_modules/@babel/runtime/helpers/dispose.js +0 -28
  277. package/node_modules/@babel/runtime/helpers/esm/AwaitValue.js +0 -4
  278. package/node_modules/@babel/runtime/helpers/esm/OverloadYield.js +0 -4
  279. package/node_modules/@babel/runtime/helpers/esm/applyDecoratedDescriptor.js +0 -9
  280. package/node_modules/@babel/runtime/helpers/esm/applyDecs.js +0 -236
  281. package/node_modules/@babel/runtime/helpers/esm/applyDecs2203.js +0 -184
  282. package/node_modules/@babel/runtime/helpers/esm/applyDecs2203R.js +0 -191
  283. package/node_modules/@babel/runtime/helpers/esm/applyDecs2301.js +0 -222
  284. package/node_modules/@babel/runtime/helpers/esm/applyDecs2305.js +0 -133
  285. package/node_modules/@babel/runtime/helpers/esm/applyDecs2311.js +0 -124
  286. package/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js +0 -6
  287. package/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js +0 -4
  288. package/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js +0 -5
  289. package/node_modules/@babel/runtime/helpers/esm/assertClassBrand.js +0 -5
  290. package/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js +0 -5
  291. package/node_modules/@babel/runtime/helpers/esm/asyncGeneratorDelegate.js +0 -24
  292. package/node_modules/@babel/runtime/helpers/esm/asyncIterator.js +0 -45
  293. package/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js +0 -26
  294. package/node_modules/@babel/runtime/helpers/esm/awaitAsyncGenerator.js +0 -5
  295. package/node_modules/@babel/runtime/helpers/esm/callSuper.js +0 -7
  296. package/node_modules/@babel/runtime/helpers/esm/checkInRHS.js +0 -6
  297. package/node_modules/@babel/runtime/helpers/esm/checkPrivateRedeclaration.js +0 -4
  298. package/node_modules/@babel/runtime/helpers/esm/classApplyDescriptorDestructureSet.js +0 -10
  299. package/node_modules/@babel/runtime/helpers/esm/classApplyDescriptorGet.js +0 -4
  300. package/node_modules/@babel/runtime/helpers/esm/classApplyDescriptorSet.js +0 -7
  301. package/node_modules/@babel/runtime/helpers/esm/classCallCheck.js +0 -4
  302. package/node_modules/@babel/runtime/helpers/esm/classCheckPrivateStaticAccess.js +0 -5
  303. package/node_modules/@babel/runtime/helpers/esm/classCheckPrivateStaticFieldDescriptor.js +0 -4
  304. package/node_modules/@babel/runtime/helpers/esm/classExtractFieldDescriptor.js +0 -5
  305. package/node_modules/@babel/runtime/helpers/esm/classNameTDZError.js +0 -4
  306. package/node_modules/@babel/runtime/helpers/esm/classPrivateFieldDestructureSet.js +0 -7
  307. package/node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet.js +0 -7
  308. package/node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet2.js +0 -5
  309. package/node_modules/@babel/runtime/helpers/esm/classPrivateFieldInitSpec.js +0 -5
  310. package/node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseBase.js +0 -5
  311. package/node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseKey.js +0 -5
  312. package/node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet.js +0 -7
  313. package/node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet2.js +0 -5
  314. package/node_modules/@babel/runtime/helpers/esm/classPrivateGetter.js +0 -5
  315. package/node_modules/@babel/runtime/helpers/esm/classPrivateMethodGet.js +0 -5
  316. package/node_modules/@babel/runtime/helpers/esm/classPrivateMethodInitSpec.js +0 -5
  317. package/node_modules/@babel/runtime/helpers/esm/classPrivateMethodSet.js +0 -4
  318. package/node_modules/@babel/runtime/helpers/esm/classPrivateSetter.js +0 -5
  319. package/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldDestructureSet.js +0 -7
  320. package/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldSpecGet.js +0 -7
  321. package/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldSpecSet.js +0 -7
  322. package/node_modules/@babel/runtime/helpers/esm/classStaticPrivateMethodGet.js +0 -5
  323. package/node_modules/@babel/runtime/helpers/esm/classStaticPrivateMethodSet.js +0 -4
  324. package/node_modules/@babel/runtime/helpers/esm/construct.js +0 -10
  325. package/node_modules/@babel/runtime/helpers/esm/createClass.js +0 -13
  326. package/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js +0 -50
  327. package/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelperLoose.js +0 -19
  328. package/node_modules/@babel/runtime/helpers/esm/createSuper.js +0 -16
  329. package/node_modules/@babel/runtime/helpers/esm/decorate.js +0 -250
  330. package/node_modules/@babel/runtime/helpers/esm/defaults.js +0 -9
  331. package/node_modules/@babel/runtime/helpers/esm/defineAccessor.js +0 -8
  332. package/node_modules/@babel/runtime/helpers/esm/defineEnumerableProperties.js +0 -12
  333. package/node_modules/@babel/runtime/helpers/esm/defineProperty.js +0 -10
  334. package/node_modules/@babel/runtime/helpers/esm/dispose.js +0 -28
  335. package/node_modules/@babel/runtime/helpers/esm/extends.js +0 -10
  336. package/node_modules/@babel/runtime/helpers/esm/get.js +0 -11
  337. package/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js +0 -6
  338. package/node_modules/@babel/runtime/helpers/esm/identity.js +0 -4
  339. package/node_modules/@babel/runtime/helpers/esm/importDeferProxy.js +0 -27
  340. package/node_modules/@babel/runtime/helpers/esm/inherits.js +0 -14
  341. package/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js +0 -5
  342. package/node_modules/@babel/runtime/helpers/esm/initializerDefineProperty.js +0 -9
  343. package/node_modules/@babel/runtime/helpers/esm/initializerWarningHelper.js +0 -4
  344. package/node_modules/@babel/runtime/helpers/esm/instanceof.js +0 -4
  345. package/node_modules/@babel/runtime/helpers/esm/interopRequireDefault.js +0 -6
  346. package/node_modules/@babel/runtime/helpers/esm/interopRequireWildcard.js +0 -27
  347. package/node_modules/@babel/runtime/helpers/esm/isNativeFunction.js +0 -8
  348. package/node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js +0 -9
  349. package/node_modules/@babel/runtime/helpers/esm/iterableToArray.js +0 -4
  350. package/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js +0 -28
  351. package/node_modules/@babel/runtime/helpers/esm/jsx.js +0 -22
  352. package/node_modules/@babel/runtime/helpers/esm/maybeArrayLike.js +0 -9
  353. package/node_modules/@babel/runtime/helpers/esm/newArrowCheck.js +0 -4
  354. package/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js +0 -4
  355. package/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js +0 -4
  356. package/node_modules/@babel/runtime/helpers/esm/nullishReceiverError.js +0 -4
  357. package/node_modules/@babel/runtime/helpers/esm/objectDestructuringEmpty.js +0 -4
  358. package/node_modules/@babel/runtime/helpers/esm/objectSpread.js +0 -14
  359. package/node_modules/@babel/runtime/helpers/esm/objectSpread2.js +0 -23
  360. package/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js +0 -13
  361. package/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js +0 -10
  362. package/node_modules/@babel/runtime/helpers/esm/package.json +0 -3
  363. package/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js +0 -8
  364. package/node_modules/@babel/runtime/helpers/esm/readOnlyError.js +0 -4
  365. package/node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js +0 -304
  366. package/node_modules/@babel/runtime/helpers/esm/set.js +0 -22
  367. package/node_modules/@babel/runtime/helpers/esm/setFunctionName.js +0 -12
  368. package/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js +0 -6
  369. package/node_modules/@babel/runtime/helpers/esm/skipFirstGeneratorNext.js +0 -7
  370. package/node_modules/@babel/runtime/helpers/esm/slicedToArray.js +0 -8
  371. package/node_modules/@babel/runtime/helpers/esm/superPropBase.js +0 -6
  372. package/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteral.js +0 -8
  373. package/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteralLoose.js +0 -4
  374. package/node_modules/@babel/runtime/helpers/esm/tdz.js +0 -4
  375. package/node_modules/@babel/runtime/helpers/esm/temporalRef.js +0 -6
  376. package/node_modules/@babel/runtime/helpers/esm/temporalUndefined.js +0 -2
  377. package/node_modules/@babel/runtime/helpers/esm/toArray.js +0 -8
  378. package/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js +0 -8
  379. package/node_modules/@babel/runtime/helpers/esm/toPrimitive.js +0 -12
  380. package/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js +0 -7
  381. package/node_modules/@babel/runtime/helpers/esm/toSetter.js +0 -10
  382. package/node_modules/@babel/runtime/helpers/esm/typeof.js +0 -10
  383. package/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js +0 -9
  384. package/node_modules/@babel/runtime/helpers/esm/using.js +0 -12
  385. package/node_modules/@babel/runtime/helpers/esm/usingCtx.js +0 -47
  386. package/node_modules/@babel/runtime/helpers/esm/wrapAsyncGenerator.js +0 -69
  387. package/node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js +0 -27
  388. package/node_modules/@babel/runtime/helpers/esm/wrapRegExp.js +0 -51
  389. package/node_modules/@babel/runtime/helpers/esm/writeOnlyError.js +0 -4
  390. package/node_modules/@babel/runtime/helpers/extends.js +0 -10
  391. package/node_modules/@babel/runtime/helpers/get.js +0 -11
  392. package/node_modules/@babel/runtime/helpers/getPrototypeOf.js +0 -6
  393. package/node_modules/@babel/runtime/helpers/identity.js +0 -4
  394. package/node_modules/@babel/runtime/helpers/importDeferProxy.js +0 -27
  395. package/node_modules/@babel/runtime/helpers/inherits.js +0 -14
  396. package/node_modules/@babel/runtime/helpers/inheritsLoose.js +0 -5
  397. package/node_modules/@babel/runtime/helpers/initializerDefineProperty.js +0 -9
  398. package/node_modules/@babel/runtime/helpers/initializerWarningHelper.js +0 -4
  399. package/node_modules/@babel/runtime/helpers/instanceof.js +0 -4
  400. package/node_modules/@babel/runtime/helpers/interopRequireDefault.js +0 -6
  401. package/node_modules/@babel/runtime/helpers/interopRequireWildcard.js +0 -27
  402. package/node_modules/@babel/runtime/helpers/isNativeFunction.js +0 -8
  403. package/node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js +0 -9
  404. package/node_modules/@babel/runtime/helpers/iterableToArray.js +0 -4
  405. package/node_modules/@babel/runtime/helpers/iterableToArrayLimit.js +0 -28
  406. package/node_modules/@babel/runtime/helpers/jsx.js +0 -22
  407. package/node_modules/@babel/runtime/helpers/maybeArrayLike.js +0 -9
  408. package/node_modules/@babel/runtime/helpers/newArrowCheck.js +0 -4
  409. package/node_modules/@babel/runtime/helpers/nonIterableRest.js +0 -4
  410. package/node_modules/@babel/runtime/helpers/nonIterableSpread.js +0 -4
  411. package/node_modules/@babel/runtime/helpers/nullishReceiverError.js +0 -4
  412. package/node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js +0 -4
  413. package/node_modules/@babel/runtime/helpers/objectSpread.js +0 -14
  414. package/node_modules/@babel/runtime/helpers/objectSpread2.js +0 -23
  415. package/node_modules/@babel/runtime/helpers/objectWithoutProperties.js +0 -13
  416. package/node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js +0 -10
  417. package/node_modules/@babel/runtime/helpers/possibleConstructorReturn.js +0 -8
  418. package/node_modules/@babel/runtime/helpers/readOnlyError.js +0 -4
  419. package/node_modules/@babel/runtime/helpers/regeneratorRuntime.js +0 -304
  420. package/node_modules/@babel/runtime/helpers/set.js +0 -22
  421. package/node_modules/@babel/runtime/helpers/setFunctionName.js +0 -12
  422. package/node_modules/@babel/runtime/helpers/setPrototypeOf.js +0 -6
  423. package/node_modules/@babel/runtime/helpers/skipFirstGeneratorNext.js +0 -7
  424. package/node_modules/@babel/runtime/helpers/slicedToArray.js +0 -8
  425. package/node_modules/@babel/runtime/helpers/superPropBase.js +0 -6
  426. package/node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js +0 -8
  427. package/node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js +0 -4
  428. package/node_modules/@babel/runtime/helpers/tdz.js +0 -4
  429. package/node_modules/@babel/runtime/helpers/temporalRef.js +0 -6
  430. package/node_modules/@babel/runtime/helpers/temporalUndefined.js +0 -2
  431. package/node_modules/@babel/runtime/helpers/toArray.js +0 -8
  432. package/node_modules/@babel/runtime/helpers/toConsumableArray.js +0 -8
  433. package/node_modules/@babel/runtime/helpers/toPrimitive.js +0 -12
  434. package/node_modules/@babel/runtime/helpers/toPropertyKey.js +0 -7
  435. package/node_modules/@babel/runtime/helpers/toSetter.js +0 -10
  436. package/node_modules/@babel/runtime/helpers/typeof.js +0 -10
  437. package/node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js +0 -9
  438. package/node_modules/@babel/runtime/helpers/using.js +0 -12
  439. package/node_modules/@babel/runtime/helpers/usingCtx.js +0 -47
  440. package/node_modules/@babel/runtime/helpers/wrapAsyncGenerator.js +0 -69
  441. package/node_modules/@babel/runtime/helpers/wrapNativeSuper.js +0 -27
  442. package/node_modules/@babel/runtime/helpers/wrapRegExp.js +0 -51
  443. package/node_modules/@babel/runtime/helpers/writeOnlyError.js +0 -4
  444. package/node_modules/@babel/runtime/package.json +0 -1038
  445. package/node_modules/@babel/runtime/regenerator/index.js +0 -15
  446. package/node_modules/@conform-to/dom/LICENSE +0 -21
  447. package/node_modules/@conform-to/dom/README +0 -37
  448. package/node_modules/@conform-to/dom/_virtual/_rollupPluginBabelHelpers.js +0 -58
  449. package/node_modules/@conform-to/dom/_virtual/_rollupPluginBabelHelpers.mjs +0 -51
  450. package/node_modules/@conform-to/dom/dom.d.ts +0 -55
  451. package/node_modules/@conform-to/dom/dom.js +0 -104
  452. package/node_modules/@conform-to/dom/dom.mjs +0 -95
  453. package/node_modules/@conform-to/dom/form.d.ts +0 -246
  454. package/node_modules/@conform-to/dom/form.js +0 -582
  455. package/node_modules/@conform-to/dom/form.mjs +0 -578
  456. package/node_modules/@conform-to/dom/formdata.d.ts +0 -61
  457. package/node_modules/@conform-to/dom/formdata.js +0 -214
  458. package/node_modules/@conform-to/dom/formdata.mjs +0 -200
  459. package/node_modules/@conform-to/dom/index.d.ts +0 -26
  460. package/node_modules/@conform-to/dom/index.js +0 -20
  461. package/node_modules/@conform-to/dom/index.mjs +0 -4
  462. package/node_modules/@conform-to/dom/intent.d.ts +0 -114
  463. package/node_modules/@conform-to/dom/intent.js +0 -136
  464. package/node_modules/@conform-to/dom/intent.mjs +0 -126
  465. package/node_modules/@conform-to/dom/package.json +0 -59
  466. package/node_modules/@conform-to/dom/parse.d.ts +0 -50
  467. package/node_modules/@conform-to/dom/parse.js +0 -43
  468. package/node_modules/@conform-to/dom/parse.mjs +0 -37
  469. package/node_modules/@conform-to/dom/submission.d.ts +0 -135
  470. package/node_modules/@conform-to/dom/submission.js +0 -305
  471. package/node_modules/@conform-to/dom/submission.mjs +0 -288
  472. package/node_modules/@conform-to/dom/types.d.ts +0 -23
  473. package/node_modules/@conform-to/dom/util.d.ts +0 -6
  474. package/node_modules/@conform-to/dom/util.js +0 -19
  475. package/node_modules/@conform-to/dom/util.mjs +0 -13
  476. package/node_modules/@conform-to/react/LICENSE +0 -21
  477. package/node_modules/@conform-to/react/README +0 -37
  478. package/node_modules/@conform-to/react/_virtual/_rollupPluginBabelHelpers.js +0 -87
  479. package/node_modules/@conform-to/react/_virtual/_rollupPluginBabelHelpers.mjs +0 -78
  480. package/node_modules/@conform-to/react/context.d.ts +0 -200
  481. package/node_modules/@conform-to/react/context.js +0 -256
  482. package/node_modules/@conform-to/react/context.mjs +0 -241
  483. package/node_modules/@conform-to/react/experimental.d.ts +0 -0
  484. package/node_modules/@conform-to/react/helpers.d.ts +0 -208
  485. package/node_modules/@conform-to/react/helpers.js +0 -222
  486. package/node_modules/@conform-to/react/helpers.mjs +0 -211
  487. package/node_modules/@conform-to/react/hooks.d.ts +0 -63
  488. package/node_modules/@conform-to/react/hooks.js +0 -88
  489. package/node_modules/@conform-to/react/hooks.mjs +0 -79
  490. package/node_modules/@conform-to/react/index.d.ts +0 -29
  491. package/node_modules/@conform-to/react/index.js +0 -30
  492. package/node_modules/@conform-to/react/index.mjs +0 -5
  493. package/node_modules/@conform-to/react/integrations.d.ts +0 -45
  494. package/node_modules/@conform-to/react/integrations.js +0 -298
  495. package/node_modules/@conform-to/react/integrations.mjs +0 -284
  496. package/node_modules/@conform-to/react/package.json +0 -69
  497. package/node_modules/@conform-to/zod/LICENSE +0 -21
  498. package/node_modules/@conform-to/zod/README +0 -37
  499. package/node_modules/@conform-to/zod/_virtual/_rollupPluginBabelHelpers.js +0 -58
  500. package/node_modules/@conform-to/zod/_virtual/_rollupPluginBabelHelpers.mjs +0 -51
  501. package/node_modules/@conform-to/zod/coercion.d.ts +0 -37
  502. package/node_modules/@conform-to/zod/coercion.js +0 -171
  503. package/node_modules/@conform-to/zod/coercion.mjs +0 -164
  504. package/node_modules/@conform-to/zod/constraint.d.ts +0 -5
  505. package/node_modules/@conform-to/zod/constraint.js +0 -103
  506. package/node_modules/@conform-to/zod/constraint.mjs +0 -99
  507. package/node_modules/@conform-to/zod/index.d.ts +0 -2
  508. package/node_modules/@conform-to/zod/index.js +0 -12
  509. package/node_modules/@conform-to/zod/index.mjs +0 -2
  510. package/node_modules/@conform-to/zod/package.json +0 -61
  511. package/node_modules/@conform-to/zod/parse.d.ts +0 -46
  512. package/node_modules/@conform-to/zod/parse.js +0 -64
  513. package/node_modules/@conform-to/zod/parse.mjs +0 -59
  514. package/node_modules/@epic-web/client-hints/README.md +0 -221
  515. package/node_modules/@epic-web/client-hints/dist/color-scheme.d.ts +0 -12
  516. package/node_modules/@epic-web/client-hints/dist/color-scheme.js +0 -25
  517. package/node_modules/@epic-web/client-hints/dist/index.d.ts +0 -6
  518. package/node_modules/@epic-web/client-hints/dist/index.js +0 -79
  519. package/node_modules/@epic-web/client-hints/dist/reduced-motion.d.ts +0 -12
  520. package/node_modules/@epic-web/client-hints/dist/reduced-motion.js +0 -25
  521. package/node_modules/@epic-web/client-hints/dist/time-zone.d.ts +0 -5
  522. package/node_modules/@epic-web/client-hints/dist/time-zone.js +0 -5
  523. package/node_modules/@epic-web/client-hints/dist/utils.d.ts +0 -9
  524. package/node_modules/@epic-web/client-hints/dist/utils.js +0 -1
  525. package/node_modules/@epic-web/client-hints/package.json +0 -71
  526. package/node_modules/@epic-web/restore-scroll/README.md +0 -108
  527. package/node_modules/@epic-web/restore-scroll/dist/index.d.ts +0 -7
  528. package/node_modules/@epic-web/restore-scroll/dist/index.js +0 -85
  529. package/node_modules/@epic-web/restore-scroll/package.json +0 -64
  530. package/node_modules/@floating-ui/core/LICENSE +0 -20
  531. package/node_modules/@floating-ui/core/README.md +0 -4
  532. package/node_modules/@floating-ui/core/dist/floating-ui.core.browser.min.mjs +0 -1
  533. package/node_modules/@floating-ui/core/dist/floating-ui.core.browser.mjs +0 -1164
  534. package/node_modules/@floating-ui/core/dist/floating-ui.core.d.mts +0 -521
  535. package/node_modules/@floating-ui/core/dist/floating-ui.core.d.ts +0 -521
  536. package/node_modules/@floating-ui/core/dist/floating-ui.core.esm.js +0 -1036
  537. package/node_modules/@floating-ui/core/dist/floating-ui.core.mjs +0 -1036
  538. package/node_modules/@floating-ui/core/dist/floating-ui.core.umd.js +0 -1183
  539. package/node_modules/@floating-ui/core/dist/floating-ui.core.umd.min.js +0 -1
  540. package/node_modules/@floating-ui/core/package.json +0 -63
  541. package/node_modules/@floating-ui/dom/LICENSE +0 -20
  542. package/node_modules/@floating-ui/dom/README.md +0 -4
  543. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.browser.min.mjs +0 -1
  544. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.browser.mjs +0 -853
  545. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.d.mts +0 -356
  546. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.d.ts +0 -356
  547. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.esm.js +0 -704
  548. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs +0 -704
  549. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.umd.js +0 -872
  550. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.umd.min.js +0 -1
  551. package/node_modules/@floating-ui/dom/package.json +0 -71
  552. package/node_modules/@floating-ui/react-dom/LICENSE +0 -20
  553. package/node_modules/@floating-ui/react-dom/README.md +0 -3
  554. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.d.mts +0 -307
  555. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.d.ts +0 -307
  556. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.esm.js +0 -363
  557. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.mjs +0 -363
  558. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.umd.js +0 -414
  559. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.umd.min.js +0 -1
  560. package/node_modules/@floating-ui/react-dom/package.json +0 -77
  561. package/node_modules/@floating-ui/utils/LICENSE +0 -20
  562. package/node_modules/@floating-ui/utils/README.md +0 -4
  563. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.d.mts +0 -103
  564. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.d.ts +0 -103
  565. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.d.mts +0 -45
  566. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.d.ts +0 -45
  567. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.esm.js +0 -139
  568. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs +0 -139
  569. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.umd.js +0 -165
  570. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.umd.min.js +0 -1
  571. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.esm.js +0 -138
  572. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs +0 -138
  573. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.umd.js +0 -169
  574. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.umd.min.js +0 -1
  575. package/node_modules/@floating-ui/utils/dom/floating-ui.utils.dom.d.ts +0 -45
  576. package/node_modules/@floating-ui/utils/dom/floating-ui.utils.dom.esm.js +0 -139
  577. package/node_modules/@floating-ui/utils/dom/floating-ui.utils.dom.umd.js +0 -165
  578. package/node_modules/@floating-ui/utils/dom/package.json +0 -6
  579. package/node_modules/@floating-ui/utils/package.json +0 -70
  580. package/node_modules/@radix-ui/number/README.md +0 -13
  581. package/node_modules/@radix-ui/number/dist/index.d.mts +0 -3
  582. package/node_modules/@radix-ui/number/dist/index.d.ts +0 -3
  583. package/node_modules/@radix-ui/number/dist/index.js +0 -31
  584. package/node_modules/@radix-ui/number/dist/index.js.map +0 -7
  585. package/node_modules/@radix-ui/number/dist/index.mjs +0 -8
  586. package/node_modules/@radix-ui/number/dist/index.mjs.map +0 -7
  587. package/node_modules/@radix-ui/number/package.json +0 -38
  588. package/node_modules/@radix-ui/primitive/README.md +0 -13
  589. package/node_modules/@radix-ui/primitive/dist/index.d.mts +0 -5
  590. package/node_modules/@radix-ui/primitive/dist/index.d.ts +0 -5
  591. package/node_modules/@radix-ui/primitive/dist/index.js +0 -36
  592. package/node_modules/@radix-ui/primitive/dist/index.js.map +0 -7
  593. package/node_modules/@radix-ui/primitive/dist/index.mjs +0 -13
  594. package/node_modules/@radix-ui/primitive/dist/index.mjs.map +0 -7
  595. package/node_modules/@radix-ui/primitive/package.json +0 -38
  596. package/node_modules/@radix-ui/react-accordion/README.md +0 -13
  597. package/node_modules/@radix-ui/react-accordion/dist/index.d.mts +0 -125
  598. package/node_modules/@radix-ui/react-accordion/dist/index.d.ts +0 -125
  599. package/node_modules/@radix-ui/react-accordion/dist/index.js +0 -350
  600. package/node_modules/@radix-ui/react-accordion/dist/index.js.map +0 -7
  601. package/node_modules/@radix-ui/react-accordion/dist/index.mjs +0 -318
  602. package/node_modules/@radix-ui/react-accordion/dist/index.mjs.map +0 -7
  603. package/node_modules/@radix-ui/react-accordion/package.json +0 -63
  604. package/node_modules/@radix-ui/react-arrow/README.md +0 -13
  605. package/node_modules/@radix-ui/react-arrow/dist/index.d.mts +0 -10
  606. package/node_modules/@radix-ui/react-arrow/dist/index.d.ts +0 -10
  607. package/node_modules/@radix-ui/react-arrow/dist/index.js +0 -60
  608. package/node_modules/@radix-ui/react-arrow/dist/index.js.map +0 -7
  609. package/node_modules/@radix-ui/react-arrow/dist/index.mjs +0 -27
  610. package/node_modules/@radix-ui/react-arrow/dist/index.mjs.map +0 -7
  611. package/node_modules/@radix-ui/react-arrow/package.json +0 -55
  612. package/node_modules/@radix-ui/react-collapsible/README.md +0 -13
  613. package/node_modules/@radix-ui/react-collapsible/dist/index.d.mts +0 -43
  614. package/node_modules/@radix-ui/react-collapsible/dist/index.d.ts +0 -43
  615. package/node_modules/@radix-ui/react-collapsible/dist/index.js +0 -186
  616. package/node_modules/@radix-ui/react-collapsible/dist/index.js.map +0 -7
  617. package/node_modules/@radix-ui/react-collapsible/dist/index.mjs +0 -154
  618. package/node_modules/@radix-ui/react-collapsible/dist/index.mjs.map +0 -7
  619. package/node_modules/@radix-ui/react-collapsible/package.json +0 -62
  620. package/node_modules/@radix-ui/react-collection/README.md +0 -13
  621. package/node_modules/@radix-ui/react-collection/dist/index.d.mts +0 -34
  622. package/node_modules/@radix-ui/react-collection/dist/index.d.ts +0 -34
  623. package/node_modules/@radix-ui/react-collection/dist/index.js +0 -104
  624. package/node_modules/@radix-ui/react-collection/dist/index.js.map +0 -7
  625. package/node_modules/@radix-ui/react-collection/dist/index.mjs +0 -72
  626. package/node_modules/@radix-ui/react-collection/dist/index.mjs.map +0 -7
  627. package/node_modules/@radix-ui/react-collection/package.json +0 -58
  628. package/node_modules/@radix-ui/react-compose-refs/README.md +0 -13
  629. package/node_modules/@radix-ui/react-compose-refs/dist/index.d.mts +0 -15
  630. package/node_modules/@radix-ui/react-compose-refs/dist/index.d.ts +0 -15
  631. package/node_modules/@radix-ui/react-compose-refs/dist/index.js +0 -53
  632. package/node_modules/@radix-ui/react-compose-refs/dist/index.js.map +0 -7
  633. package/node_modules/@radix-ui/react-compose-refs/dist/index.mjs +0 -20
  634. package/node_modules/@radix-ui/react-compose-refs/dist/index.mjs.map +0 -7
  635. package/node_modules/@radix-ui/react-compose-refs/package.json +0 -47
  636. package/node_modules/@radix-ui/react-context/README.md +0 -13
  637. package/node_modules/@radix-ui/react-context/dist/index.d.mts +0 -28
  638. package/node_modules/@radix-ui/react-context/dist/index.d.ts +0 -28
  639. package/node_modules/@radix-ui/react-context/dist/index.js +0 -114
  640. package/node_modules/@radix-ui/react-context/dist/index.js.map +0 -7
  641. package/node_modules/@radix-ui/react-context/dist/index.mjs +0 -81
  642. package/node_modules/@radix-ui/react-context/dist/index.mjs.map +0 -7
  643. package/node_modules/@radix-ui/react-context/package.json +0 -47
  644. package/node_modules/@radix-ui/react-direction/README.md +0 -13
  645. package/node_modules/@radix-ui/react-direction/dist/index.d.mts +0 -12
  646. package/node_modules/@radix-ui/react-direction/dist/index.d.ts +0 -12
  647. package/node_modules/@radix-ui/react-direction/dist/index.js +0 -52
  648. package/node_modules/@radix-ui/react-direction/dist/index.js.map +0 -7
  649. package/node_modules/@radix-ui/react-direction/dist/index.mjs +0 -19
  650. package/node_modules/@radix-ui/react-direction/dist/index.mjs.map +0 -7
  651. package/node_modules/@radix-ui/react-direction/package.json +0 -47
  652. package/node_modules/@radix-ui/react-dismissable-layer/README.md +0 -13
  653. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.d.mts +0 -51
  654. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.d.ts +0 -51
  655. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.js +0 -253
  656. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.js.map +0 -7
  657. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs +0 -221
  658. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs.map +0 -7
  659. package/node_modules/@radix-ui/react-dismissable-layer/package.json +0 -62
  660. package/node_modules/@radix-ui/react-focus-guards/README.md +0 -13
  661. package/node_modules/@radix-ui/react-focus-guards/dist/index.d.mts +0 -9
  662. package/node_modules/@radix-ui/react-focus-guards/dist/index.d.ts +0 -9
  663. package/node_modules/@radix-ui/react-focus-guards/dist/index.js +0 -69
  664. package/node_modules/@radix-ui/react-focus-guards/dist/index.js.map +0 -7
  665. package/node_modules/@radix-ui/react-focus-guards/dist/index.mjs +0 -37
  666. package/node_modules/@radix-ui/react-focus-guards/dist/index.mjs.map +0 -7
  667. package/node_modules/@radix-ui/react-focus-guards/package.json +0 -47
  668. package/node_modules/@radix-ui/react-focus-scope/README.md +0 -13
  669. package/node_modules/@radix-ui/react-focus-scope/dist/index.d.mts +0 -32
  670. package/node_modules/@radix-ui/react-focus-scope/dist/index.d.ts +0 -32
  671. package/node_modules/@radix-ui/react-focus-scope/dist/index.js +0 -246
  672. package/node_modules/@radix-ui/react-focus-scope/dist/index.js.map +0 -7
  673. package/node_modules/@radix-ui/react-focus-scope/dist/index.mjs +0 -214
  674. package/node_modules/@radix-ui/react-focus-scope/dist/index.mjs.map +0 -7
  675. package/node_modules/@radix-ui/react-focus-scope/package.json +0 -57
  676. package/node_modules/@radix-ui/react-id/README.md +0 -13
  677. package/node_modules/@radix-ui/react-id/dist/index.d.mts +0 -3
  678. package/node_modules/@radix-ui/react-id/dist/index.d.ts +0 -3
  679. package/node_modules/@radix-ui/react-id/dist/index.js +0 -49
  680. package/node_modules/@radix-ui/react-id/dist/index.js.map +0 -7
  681. package/node_modules/@radix-ui/react-id/dist/index.mjs +0 -16
  682. package/node_modules/@radix-ui/react-id/dist/index.mjs.map +0 -7
  683. package/node_modules/@radix-ui/react-id/package.json +0 -50
  684. package/node_modules/@radix-ui/react-popover/README.md +0 -13
  685. package/node_modules/@radix-ui/react-popover/dist/index.d.mts +0 -95
  686. package/node_modules/@radix-ui/react-popover/dist/index.d.ts +0 -95
  687. package/node_modules/@radix-ui/react-popover/dist/index.js +0 -350
  688. package/node_modules/@radix-ui/react-popover/dist/index.js.map +0 -7
  689. package/node_modules/@radix-ui/react-popover/dist/index.mjs +0 -318
  690. package/node_modules/@radix-ui/react-popover/dist/index.mjs.map +0 -7
  691. package/node_modules/@radix-ui/react-popover/package.json +0 -69
  692. package/node_modules/@radix-ui/react-popper/README.md +0 -13
  693. package/node_modules/@radix-ui/react-popper/dist/index.d.mts +0 -56
  694. package/node_modules/@radix-ui/react-popper/dist/index.d.ts +0 -56
  695. package/node_modules/@radix-ui/react-popper/dist/index.js +0 -325
  696. package/node_modules/@radix-ui/react-popper/dist/index.js.map +0 -7
  697. package/node_modules/@radix-ui/react-popper/dist/index.mjs +0 -303
  698. package/node_modules/@radix-ui/react-popper/dist/index.mjs.map +0 -7
  699. package/node_modules/@radix-ui/react-popper/package.json +0 -64
  700. package/node_modules/@radix-ui/react-portal/README.md +0 -13
  701. package/node_modules/@radix-ui/react-portal/dist/index.d.mts +0 -14
  702. package/node_modules/@radix-ui/react-portal/dist/index.d.ts +0 -14
  703. package/node_modules/@radix-ui/react-portal/dist/index.js +0 -55
  704. package/node_modules/@radix-ui/react-portal/dist/index.js.map +0 -7
  705. package/node_modules/@radix-ui/react-portal/dist/index.mjs +0 -23
  706. package/node_modules/@radix-ui/react-portal/dist/index.mjs.map +0 -7
  707. package/node_modules/@radix-ui/react-portal/package.json +0 -56
  708. package/node_modules/@radix-ui/react-presence/README.md +0 -13
  709. package/node_modules/@radix-ui/react-presence/dist/index.d.mts +0 -11
  710. package/node_modules/@radix-ui/react-presence/dist/index.d.ts +0 -11
  711. package/node_modules/@radix-ui/react-presence/dist/index.js +0 -158
  712. package/node_modules/@radix-ui/react-presence/dist/index.js.map +0 -7
  713. package/node_modules/@radix-ui/react-presence/dist/index.mjs +0 -126
  714. package/node_modules/@radix-ui/react-presence/dist/index.mjs.map +0 -7
  715. package/node_modules/@radix-ui/react-presence/package.json +0 -56
  716. package/node_modules/@radix-ui/react-primitive/README.md +0 -13
  717. package/node_modules/@radix-ui/react-primitive/dist/index.d.mts +0 -52
  718. package/node_modules/@radix-ui/react-primitive/dist/index.d.ts +0 -52
  719. package/node_modules/@radix-ui/react-primitive/dist/index.js +0 -78
  720. package/node_modules/@radix-ui/react-primitive/dist/index.js.map +0 -7
  721. package/node_modules/@radix-ui/react-primitive/dist/index.mjs +0 -45
  722. package/node_modules/@radix-ui/react-primitive/dist/index.mjs.map +0 -7
  723. package/node_modules/@radix-ui/react-primitive/package.json +0 -58
  724. package/node_modules/@radix-ui/react-roving-focus/README.md +0 -13
  725. package/node_modules/@radix-ui/react-roving-focus/dist/index.d.mts +0 -55
  726. package/node_modules/@radix-ui/react-roving-focus/dist/index.d.ts +0 -55
  727. package/node_modules/@radix-ui/react-roving-focus/dist/index.js +0 -260
  728. package/node_modules/@radix-ui/react-roving-focus/dist/index.js.map +0 -7
  729. package/node_modules/@radix-ui/react-roving-focus/dist/index.mjs +0 -228
  730. package/node_modules/@radix-ui/react-roving-focus/dist/index.mjs.map +0 -7
  731. package/node_modules/@radix-ui/react-roving-focus/package.json +0 -63
  732. package/node_modules/@radix-ui/react-select/README.md +0 -13
  733. package/node_modules/@radix-ui/react-select/dist/index.d.mts +0 -144
  734. package/node_modules/@radix-ui/react-select/dist/index.d.ts +0 -144
  735. package/node_modules/@radix-ui/react-select/dist/index.js +0 -1182
  736. package/node_modules/@radix-ui/react-select/dist/index.js.map +0 -7
  737. package/node_modules/@radix-ui/react-select/dist/index.mjs +0 -1150
  738. package/node_modules/@radix-ui/react-select/dist/index.mjs.map +0 -7
  739. package/node_modules/@radix-ui/react-select/package.json +0 -75
  740. package/node_modules/@radix-ui/react-slot/README.md +0 -13
  741. package/node_modules/@radix-ui/react-slot/dist/index.d.mts +0 -13
  742. package/node_modules/@radix-ui/react-slot/dist/index.d.ts +0 -13
  743. package/node_modules/@radix-ui/react-slot/dist/index.js +0 -118
  744. package/node_modules/@radix-ui/react-slot/dist/index.js.map +0 -7
  745. package/node_modules/@radix-ui/react-slot/dist/index.mjs +0 -85
  746. package/node_modules/@radix-ui/react-slot/dist/index.mjs.map +0 -7
  747. package/node_modules/@radix-ui/react-slot/package.json +0 -50
  748. package/node_modules/@radix-ui/react-tabs/README.md +0 -13
  749. package/node_modules/@radix-ui/react-tabs/dist/index.d.mts +0 -66
  750. package/node_modules/@radix-ui/react-tabs/dist/index.d.ts +0 -66
  751. package/node_modules/@radix-ui/react-tabs/dist/index.js +0 -231
  752. package/node_modules/@radix-ui/react-tabs/dist/index.js.map +0 -7
  753. package/node_modules/@radix-ui/react-tabs/dist/index.mjs +0 -199
  754. package/node_modules/@radix-ui/react-tabs/dist/index.mjs.map +0 -7
  755. package/node_modules/@radix-ui/react-tabs/package.json +0 -62
  756. package/node_modules/@radix-ui/react-toast/README.md +0 -13
  757. package/node_modules/@radix-ui/react-toast/dist/index.d.mts +0 -130
  758. package/node_modules/@radix-ui/react-toast/dist/index.d.ts +0 -130
  759. package/node_modules/@radix-ui/react-toast/dist/index.js +0 -681
  760. package/node_modules/@radix-ui/react-toast/dist/index.js.map +0 -7
  761. package/node_modules/@radix-ui/react-toast/dist/index.mjs +0 -649
  762. package/node_modules/@radix-ui/react-toast/dist/index.mjs.map +0 -7
  763. package/node_modules/@radix-ui/react-toast/package.json +0 -66
  764. package/node_modules/@radix-ui/react-use-callback-ref/README.md +0 -13
  765. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.d.mts +0 -7
  766. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.d.ts +0 -7
  767. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.js +0 -46
  768. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.js.map +0 -7
  769. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs +0 -13
  770. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs.map +0 -7
  771. package/node_modules/@radix-ui/react-use-callback-ref/package.json +0 -47
  772. package/node_modules/@radix-ui/react-use-controllable-state/README.md +0 -13
  773. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.d.mts +0 -10
  774. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.d.ts +0 -10
  775. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.js +0 -80
  776. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.js.map +0 -7
  777. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs +0 -47
  778. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs.map +0 -7
  779. package/node_modules/@radix-ui/react-use-controllable-state/package.json +0 -50
  780. package/node_modules/@radix-ui/react-use-escape-keydown/README.md +0 -13
  781. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.d.mts +0 -6
  782. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.d.ts +0 -6
  783. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.js +0 -52
  784. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.js.map +0 -7
  785. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.mjs +0 -19
  786. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.mjs.map +0 -7
  787. package/node_modules/@radix-ui/react-use-escape-keydown/package.json +0 -50
  788. package/node_modules/@radix-ui/react-use-layout-effect/README.md +0 -13
  789. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.d.mts +0 -12
  790. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.d.ts +0 -12
  791. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.js +0 -41
  792. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.js.map +0 -7
  793. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs +0 -8
  794. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs.map +0 -7
  795. package/node_modules/@radix-ui/react-use-layout-effect/package.json +0 -47
  796. package/node_modules/@radix-ui/react-use-previous/README.md +0 -13
  797. package/node_modules/@radix-ui/react-use-previous/dist/index.d.mts +0 -3
  798. package/node_modules/@radix-ui/react-use-previous/dist/index.d.ts +0 -3
  799. package/node_modules/@radix-ui/react-use-previous/dist/index.js +0 -49
  800. package/node_modules/@radix-ui/react-use-previous/dist/index.js.map +0 -7
  801. package/node_modules/@radix-ui/react-use-previous/dist/index.mjs +0 -16
  802. package/node_modules/@radix-ui/react-use-previous/dist/index.mjs.map +0 -7
  803. package/node_modules/@radix-ui/react-use-previous/package.json +0 -47
  804. package/node_modules/@radix-ui/react-use-rect/README.md +0 -13
  805. package/node_modules/@radix-ui/react-use-rect/dist/index.d.mts +0 -9
  806. package/node_modules/@radix-ui/react-use-rect/dist/index.d.ts +0 -9
  807. package/node_modules/@radix-ui/react-use-rect/dist/index.js +0 -54
  808. package/node_modules/@radix-ui/react-use-rect/dist/index.js.map +0 -7
  809. package/node_modules/@radix-ui/react-use-rect/dist/index.mjs +0 -21
  810. package/node_modules/@radix-ui/react-use-rect/dist/index.mjs.map +0 -7
  811. package/node_modules/@radix-ui/react-use-rect/package.json +0 -50
  812. package/node_modules/@radix-ui/react-use-size/README.md +0 -13
  813. package/node_modules/@radix-ui/react-use-size/dist/index.d.mts +0 -6
  814. package/node_modules/@radix-ui/react-use-size/dist/index.d.ts +0 -6
  815. package/node_modules/@radix-ui/react-use-size/dist/index.js +0 -74
  816. package/node_modules/@radix-ui/react-use-size/dist/index.js.map +0 -7
  817. package/node_modules/@radix-ui/react-use-size/dist/index.mjs +0 -41
  818. package/node_modules/@radix-ui/react-use-size/dist/index.mjs.map +0 -7
  819. package/node_modules/@radix-ui/react-use-size/package.json +0 -53
  820. package/node_modules/@radix-ui/react-visually-hidden/README.md +0 -13
  821. package/node_modules/@radix-ui/react-visually-hidden/dist/index.d.mts +0 -10
  822. package/node_modules/@radix-ui/react-visually-hidden/dist/index.d.ts +0 -10
  823. package/node_modules/@radix-ui/react-visually-hidden/dist/index.js +0 -70
  824. package/node_modules/@radix-ui/react-visually-hidden/dist/index.js.map +0 -7
  825. package/node_modules/@radix-ui/react-visually-hidden/dist/index.mjs +0 -37
  826. package/node_modules/@radix-ui/react-visually-hidden/dist/index.mjs.map +0 -7
  827. package/node_modules/@radix-ui/react-visually-hidden/package.json +0 -55
  828. package/node_modules/@radix-ui/rect/README.md +0 -13
  829. package/node_modules/@radix-ui/rect/dist/index.d.mts +0 -16
  830. package/node_modules/@radix-ui/rect/dist/index.d.ts +0 -16
  831. package/node_modules/@radix-ui/rect/dist/index.js +0 -73
  832. package/node_modules/@radix-ui/rect/dist/index.js.map +0 -7
  833. package/node_modules/@radix-ui/rect/dist/index.mjs +0 -50
  834. package/node_modules/@radix-ui/rect/dist/index.mjs.map +0 -7
  835. package/node_modules/@radix-ui/rect/package.json +0 -38
  836. package/node_modules/@remix-run/react/CHANGELOG.md +0 -964
  837. package/node_modules/@remix-run/react/LICENSE.md +0 -22
  838. package/node_modules/@remix-run/react/README.md +0 -13
  839. package/node_modules/@remix-run/react/dist/_virtual/_rollupPluginBabelHelpers.js +0 -30
  840. package/node_modules/@remix-run/react/dist/browser.d.ts +0 -37
  841. package/node_modules/@remix-run/react/dist/browser.js +0 -268
  842. package/node_modules/@remix-run/react/dist/components.d.ts +0 -137
  843. package/node_modules/@remix-run/react/dist/components.js +0 -911
  844. package/node_modules/@remix-run/react/dist/data.d.ts +0 -15
  845. package/node_modules/@remix-run/react/dist/data.js +0 -280
  846. package/node_modules/@remix-run/react/dist/entry.d.ts +0 -51
  847. package/node_modules/@remix-run/react/dist/errorBoundaries.d.ts +0 -36
  848. package/node_modules/@remix-run/react/dist/errorBoundaries.js +0 -186
  849. package/node_modules/@remix-run/react/dist/errors.d.ts +0 -2
  850. package/node_modules/@remix-run/react/dist/errors.js +0 -53
  851. package/node_modules/@remix-run/react/dist/esm/_virtual/_rollupPluginBabelHelpers.js +0 -26
  852. package/node_modules/@remix-run/react/dist/esm/browser.js +0 -308
  853. package/node_modules/@remix-run/react/dist/esm/components.js +0 -878
  854. package/node_modules/@remix-run/react/dist/esm/data.js +0 -267
  855. package/node_modules/@remix-run/react/dist/esm/errorBoundaries.js +0 -160
  856. package/node_modules/@remix-run/react/dist/esm/errors.js +0 -49
  857. package/node_modules/@remix-run/react/dist/esm/fallback.js +0 -35
  858. package/node_modules/@remix-run/react/dist/esm/fog-of-war.js +0 -226
  859. package/node_modules/@remix-run/react/dist/esm/index.js +0 -17
  860. package/node_modules/@remix-run/react/dist/esm/invariant.js +0 -17
  861. package/node_modules/@remix-run/react/dist/esm/links.js +0 -258
  862. package/node_modules/@remix-run/react/dist/esm/markup.js +0 -34
  863. package/node_modules/@remix-run/react/dist/esm/routeModules.js +0 -89
  864. package/node_modules/@remix-run/react/dist/esm/routes.js +0 -411
  865. package/node_modules/@remix-run/react/dist/esm/scroll-restoration.js +0 -84
  866. package/node_modules/@remix-run/react/dist/esm/server.js +0 -93
  867. package/node_modules/@remix-run/react/dist/esm/single-fetch.js +0 -309
  868. package/node_modules/@remix-run/react/dist/fallback.d.ts +0 -2
  869. package/node_modules/@remix-run/react/dist/fallback.js +0 -59
  870. package/node_modules/@remix-run/react/dist/fog-of-war.d.ts +0 -37
  871. package/node_modules/@remix-run/react/dist/fog-of-war.js +0 -254
  872. package/node_modules/@remix-run/react/dist/index.d.ts +0 -16
  873. package/node_modules/@remix-run/react/dist/index.js +0 -227
  874. package/node_modules/@remix-run/react/dist/invariant.d.ts +0 -2
  875. package/node_modules/@remix-run/react/dist/invariant.js +0 -19
  876. package/node_modules/@remix-run/react/dist/links.d.ts +0 -128
  877. package/node_modules/@remix-run/react/dist/links.js +0 -268
  878. package/node_modules/@remix-run/react/dist/markup.d.ts +0 -5
  879. package/node_modules/@remix-run/react/dist/markup.js +0 -39
  880. package/node_modules/@remix-run/react/dist/routeModules.d.ts +0 -132
  881. package/node_modules/@remix-run/react/dist/routeModules.js +0 -111
  882. package/node_modules/@remix-run/react/dist/routes.d.ts +0 -32
  883. package/node_modules/@remix-run/react/dist/routes.js +0 -438
  884. package/node_modules/@remix-run/react/dist/scroll-restoration.d.ts +0 -12
  885. package/node_modules/@remix-run/react/dist/scroll-restoration.js +0 -108
  886. package/node_modules/@remix-run/react/dist/server.d.ts +0 -14
  887. package/node_modules/@remix-run/react/dist/server.js +0 -117
  888. package/node_modules/@remix-run/react/dist/single-fetch.d.ts +0 -34
  889. package/node_modules/@remix-run/react/dist/single-fetch.js +0 -339
  890. package/node_modules/@remix-run/react/dist/warnings.d.ts +0 -1
  891. package/node_modules/@remix-run/react/future/single-fetch.d.ts +0 -73
  892. package/node_modules/@remix-run/react/package.json +0 -59
  893. package/node_modules/@remix-run/router/CHANGELOG.md +0 -747
  894. package/node_modules/@remix-run/router/LICENSE.md +0 -23
  895. package/node_modules/@remix-run/router/README.md +0 -135
  896. package/node_modules/@remix-run/router/dist/history.d.ts +0 -250
  897. package/node_modules/@remix-run/router/dist/index.d.ts +0 -9
  898. package/node_modules/@remix-run/router/dist/router.cjs.js +0 -5407
  899. package/node_modules/@remix-run/router/dist/router.cjs.js.map +0 -1
  900. package/node_modules/@remix-run/router/dist/router.d.ts +0 -523
  901. package/node_modules/@remix-run/router/dist/router.js +0 -4856
  902. package/node_modules/@remix-run/router/dist/router.js.map +0 -1
  903. package/node_modules/@remix-run/router/dist/router.umd.js +0 -5413
  904. package/node_modules/@remix-run/router/dist/router.umd.js.map +0 -1
  905. package/node_modules/@remix-run/router/dist/router.umd.min.js +0 -12
  906. package/node_modules/@remix-run/router/dist/router.umd.min.js.map +0 -1
  907. package/node_modules/@remix-run/router/dist/utils.d.ts +0 -528
  908. package/node_modules/@remix-run/router/history.ts +0 -746
  909. package/node_modules/@remix-run/router/index.ts +0 -101
  910. package/node_modules/@remix-run/router/package.json +0 -33
  911. package/node_modules/@remix-run/router/router.ts +0 -5760
  912. package/node_modules/@remix-run/router/utils.ts +0 -1673
  913. package/node_modules/@remix-run/server-runtime/CHANGELOG.md +0 -1023
  914. package/node_modules/@remix-run/server-runtime/LICENSE.md +0 -22
  915. package/node_modules/@remix-run/server-runtime/README.md +0 -26
  916. package/node_modules/@remix-run/server-runtime/dist/build.d.ts +0 -39
  917. package/node_modules/@remix-run/server-runtime/dist/cookies.d.ts +0 -69
  918. package/node_modules/@remix-run/server-runtime/dist/cookies.js +0 -173
  919. package/node_modules/@remix-run/server-runtime/dist/crypto.d.ts +0 -2
  920. package/node_modules/@remix-run/server-runtime/dist/data.d.ts +0 -33
  921. package/node_modules/@remix-run/server-runtime/dist/data.js +0 -138
  922. package/node_modules/@remix-run/server-runtime/dist/deprecations.d.ts +0 -1
  923. package/node_modules/@remix-run/server-runtime/dist/deprecations.js +0 -19
  924. package/node_modules/@remix-run/server-runtime/dist/dev.d.ts +0 -10
  925. package/node_modules/@remix-run/server-runtime/dist/dev.js +0 -53
  926. package/node_modules/@remix-run/server-runtime/dist/entry.d.ts +0 -43
  927. package/node_modules/@remix-run/server-runtime/dist/entry.js +0 -22
  928. package/node_modules/@remix-run/server-runtime/dist/errors.d.ts +0 -51
  929. package/node_modules/@remix-run/server-runtime/dist/errors.js +0 -122
  930. package/node_modules/@remix-run/server-runtime/dist/esm/cookies.js +0 -168
  931. package/node_modules/@remix-run/server-runtime/dist/esm/data.js +0 -133
  932. package/node_modules/@remix-run/server-runtime/dist/esm/deprecations.js +0 -15
  933. package/node_modules/@remix-run/server-runtime/dist/esm/dev.js +0 -46
  934. package/node_modules/@remix-run/server-runtime/dist/esm/entry.js +0 -18
  935. package/node_modules/@remix-run/server-runtime/dist/esm/errors.js +0 -115
  936. package/node_modules/@remix-run/server-runtime/dist/esm/formData.js +0 -55
  937. package/node_modules/@remix-run/server-runtime/dist/esm/headers.js +0 -90
  938. package/node_modules/@remix-run/server-runtime/dist/esm/index.js +0 -21
  939. package/node_modules/@remix-run/server-runtime/dist/esm/invariant.js +0 -18
  940. package/node_modules/@remix-run/server-runtime/dist/esm/markup.js +0 -29
  941. package/node_modules/@remix-run/server-runtime/dist/esm/mode.js +0 -24
  942. package/node_modules/@remix-run/server-runtime/dist/esm/responses.js +0 -123
  943. package/node_modules/@remix-run/server-runtime/dist/esm/routeMatching.js +0 -23
  944. package/node_modules/@remix-run/server-runtime/dist/esm/routes.js +0 -81
  945. package/node_modules/@remix-run/server-runtime/dist/esm/server.js +0 -524
  946. package/node_modules/@remix-run/server-runtime/dist/esm/serverHandoff.js +0 -20
  947. package/node_modules/@remix-run/server-runtime/dist/esm/sessions/cookieStorage.js +0 -51
  948. package/node_modules/@remix-run/server-runtime/dist/esm/sessions/memoryStorage.js +0 -61
  949. package/node_modules/@remix-run/server-runtime/dist/esm/sessions.js +0 -145
  950. package/node_modules/@remix-run/server-runtime/dist/esm/single-fetch.js +0 -450
  951. package/node_modules/@remix-run/server-runtime/dist/esm/upload/errors.js +0 -19
  952. package/node_modules/@remix-run/server-runtime/dist/esm/upload/memoryUploadHandler.js +0 -50
  953. package/node_modules/@remix-run/server-runtime/dist/esm/warnings.js +0 -19
  954. package/node_modules/@remix-run/server-runtime/dist/formData.d.ts +0 -15
  955. package/node_modules/@remix-run/server-runtime/dist/formData.js +0 -60
  956. package/node_modules/@remix-run/server-runtime/dist/headers.d.ts +0 -3
  957. package/node_modules/@remix-run/server-runtime/dist/headers.js +0 -94
  958. package/node_modules/@remix-run/server-runtime/dist/index.d.ts +0 -14
  959. package/node_modules/@remix-run/server-runtime/dist/index.js +0 -50
  960. package/node_modules/@remix-run/server-runtime/dist/interface.d.ts +0 -6
  961. package/node_modules/@remix-run/server-runtime/dist/invariant.d.ts +0 -2
  962. package/node_modules/@remix-run/server-runtime/dist/invariant.js +0 -22
  963. package/node_modules/@remix-run/server-runtime/dist/jsonify.d.ts +0 -33
  964. package/node_modules/@remix-run/server-runtime/dist/links.d.ts +0 -104
  965. package/node_modules/@remix-run/server-runtime/dist/markup.d.ts +0 -1
  966. package/node_modules/@remix-run/server-runtime/dist/markup.js +0 -33
  967. package/node_modules/@remix-run/server-runtime/dist/mode.d.ts +0 -9
  968. package/node_modules/@remix-run/server-runtime/dist/mode.js +0 -29
  969. package/node_modules/@remix-run/server-runtime/dist/reexport.d.ts +0 -14
  970. package/node_modules/@remix-run/server-runtime/dist/responses.d.ts +0 -47
  971. package/node_modules/@remix-run/server-runtime/dist/responses.js +0 -135
  972. package/node_modules/@remix-run/server-runtime/dist/routeMatching.d.ts +0 -8
  973. package/node_modules/@remix-run/server-runtime/dist/routeMatching.js +0 -27
  974. package/node_modules/@remix-run/server-runtime/dist/routeModules.d.ts +0 -214
  975. package/node_modules/@remix-run/server-runtime/dist/routes.d.ts +0 -31
  976. package/node_modules/@remix-run/server-runtime/dist/routes.js +0 -86
  977. package/node_modules/@remix-run/server-runtime/dist/serialize.d.ts +0 -25
  978. package/node_modules/@remix-run/server-runtime/dist/server.d.ts +0 -5
  979. package/node_modules/@remix-run/server-runtime/dist/server.js +0 -528
  980. package/node_modules/@remix-run/server-runtime/dist/serverHandoff.d.ts +0 -12
  981. package/node_modules/@remix-run/server-runtime/dist/serverHandoff.js +0 -24
  982. package/node_modules/@remix-run/server-runtime/dist/sessions/cookieStorage.d.ts +0 -23
  983. package/node_modules/@remix-run/server-runtime/dist/sessions/cookieStorage.js +0 -55
  984. package/node_modules/@remix-run/server-runtime/dist/sessions/memoryStorage.d.ts +0 -20
  985. package/node_modules/@remix-run/server-runtime/dist/sessions/memoryStorage.js +0 -65
  986. package/node_modules/@remix-run/server-runtime/dist/sessions.d.ts +0 -143
  987. package/node_modules/@remix-run/server-runtime/dist/sessions.js +0 -152
  988. package/node_modules/@remix-run/server-runtime/dist/single-fetch.d.ts +0 -90
  989. package/node_modules/@remix-run/server-runtime/dist/single-fetch.js +0 -468
  990. package/node_modules/@remix-run/server-runtime/dist/typecheck.d.ts +0 -4
  991. package/node_modules/@remix-run/server-runtime/dist/upload/errors.d.ts +0 -5
  992. package/node_modules/@remix-run/server-runtime/dist/upload/errors.js +0 -23
  993. package/node_modules/@remix-run/server-runtime/dist/upload/memoryUploadHandler.d.ts +0 -21
  994. package/node_modules/@remix-run/server-runtime/dist/upload/memoryUploadHandler.js +0 -54
  995. package/node_modules/@remix-run/server-runtime/dist/warnings.d.ts +0 -1
  996. package/node_modules/@remix-run/server-runtime/dist/warnings.js +0 -23
  997. package/node_modules/@remix-run/server-runtime/package.json +0 -51
  998. package/node_modules/@types/cookie/LICENSE +0 -21
  999. package/node_modules/@types/cookie/README.md +0 -15
  1000. package/node_modules/@types/cookie/index.d.ts +0 -154
  1001. package/node_modules/@types/cookie/package.json +0 -30
  1002. package/node_modules/@web3-storage/multipart-parser/README.md +0 -37
  1003. package/node_modules/@web3-storage/multipart-parser/cjs/src/index.js +0 -218
  1004. package/node_modules/@web3-storage/multipart-parser/cjs/src/search.js +0 -269
  1005. package/node_modules/@web3-storage/multipart-parser/cjs/src/utils.js +0 -37
  1006. package/node_modules/@web3-storage/multipart-parser/esm/package.json +0 -4
  1007. package/node_modules/@web3-storage/multipart-parser/esm/src/index.js +0 -219
  1008. package/node_modules/@web3-storage/multipart-parser/esm/src/search.js +0 -269
  1009. package/node_modules/@web3-storage/multipart-parser/esm/src/utils.js +0 -28
  1010. package/node_modules/@web3-storage/multipart-parser/index.js +0 -1
  1011. package/node_modules/@web3-storage/multipart-parser/package.json +0 -44
  1012. package/node_modules/@web3-storage/multipart-parser/src/index.js +0 -257
  1013. package/node_modules/@web3-storage/multipart-parser/src/search.js +0 -329
  1014. package/node_modules/@web3-storage/multipart-parser/src/utils.js +0 -43
  1015. package/node_modules/@web3-storage/multipart-parser/test/test.spec.js +0 -65
  1016. package/node_modules/@web3-storage/multipart-parser/tsconfig.json +0 -41
  1017. package/node_modules/@web3-storage/multipart-parser/types/index.d.ts +0 -15
  1018. package/node_modules/@web3-storage/multipart-parser/types/index.d.ts.map +0 -1
  1019. package/node_modules/@web3-storage/multipart-parser/types/search.d.ts +0 -36
  1020. package/node_modules/@web3-storage/multipart-parser/types/search.d.ts.map +0 -1
  1021. package/node_modules/@web3-storage/multipart-parser/types/utils.d.ts +0 -18
  1022. package/node_modules/@web3-storage/multipart-parser/types/utils.d.ts.map +0 -1
  1023. package/node_modules/aria-hidden/LICENSE +0 -21
  1024. package/node_modules/aria-hidden/README.md +0 -99
  1025. package/node_modules/aria-hidden/dist/es2015/index.d.ts +0 -29
  1026. package/node_modules/aria-hidden/dist/es2015/index.js +0 -166
  1027. package/node_modules/aria-hidden/dist/es2019/index.d.ts +0 -29
  1028. package/node_modules/aria-hidden/dist/es2019/index.js +0 -155
  1029. package/node_modules/aria-hidden/dist/es5/index.d.ts +0 -29
  1030. package/node_modules/aria-hidden/dist/es5/index.js +0 -173
  1031. package/node_modules/aria-hidden/package.json +0 -70
  1032. package/node_modules/assertion-error/LICENSE +0 -21
  1033. package/node_modules/assertion-error/README.md +0 -68
  1034. package/node_modules/assertion-error/index.d.ts +0 -27
  1035. package/node_modules/assertion-error/index.js +0 -60
  1036. package/node_modules/assertion-error/package.json +0 -32
  1037. package/node_modules/chai/CODEOWNERS +0 -1
  1038. package/node_modules/chai/CODE_OF_CONDUCT.md +0 -58
  1039. package/node_modules/chai/CONTRIBUTING.md +0 -218
  1040. package/node_modules/chai/History.md +0 -1059
  1041. package/node_modules/chai/LICENSE +0 -21
  1042. package/node_modules/chai/README.md +0 -154
  1043. package/node_modules/chai/ReleaseNotes.md +0 -737
  1044. package/node_modules/chai/chai.js +0 -4018
  1045. package/node_modules/chai/eslint.config.js +0 -12
  1046. package/node_modules/chai/index.js +0 -1
  1047. package/node_modules/chai/lib/chai/assertion.js +0 -164
  1048. package/node_modules/chai/lib/chai/config.js +0 -114
  1049. package/node_modules/chai/lib/chai/core/assertions.js +0 -3933
  1050. package/node_modules/chai/lib/chai/interface/assert.js +0 -3012
  1051. package/node_modules/chai/lib/chai/interface/expect.js +0 -55
  1052. package/node_modules/chai/lib/chai/interface/should.js +0 -221
  1053. package/node_modules/chai/lib/chai/utils/addChainableMethod.js +0 -147
  1054. package/node_modules/chai/lib/chai/utils/addLengthGuard.js +0 -60
  1055. package/node_modules/chai/lib/chai/utils/addMethod.js +0 -67
  1056. package/node_modules/chai/lib/chai/utils/addProperty.js +0 -71
  1057. package/node_modules/chai/lib/chai/utils/compareByInspect.js +0 -26
  1058. package/node_modules/chai/lib/chai/utils/expectTypes.js +0 -50
  1059. package/node_modules/chai/lib/chai/utils/flag.js +0 -33
  1060. package/node_modules/chai/lib/chai/utils/getActual.js +0 -20
  1061. package/node_modules/chai/lib/chai/utils/getEnumerableProperties.js +0 -25
  1062. package/node_modules/chai/lib/chai/utils/getMessage.js +0 -46
  1063. package/node_modules/chai/lib/chai/utils/getOperator.js +0 -58
  1064. package/node_modules/chai/lib/chai/utils/getOwnEnumerableProperties.js +0 -24
  1065. package/node_modules/chai/lib/chai/utils/getOwnEnumerablePropertySymbols.js +0 -26
  1066. package/node_modules/chai/lib/chai/utils/getProperties.js +0 -38
  1067. package/node_modules/chai/lib/chai/utils/index.js +0 -107
  1068. package/node_modules/chai/lib/chai/utils/inspect.js +0 -31
  1069. package/node_modules/chai/lib/chai/utils/isNaN.js +0 -26
  1070. package/node_modules/chai/lib/chai/utils/isProxyEnabled.js +0 -24
  1071. package/node_modules/chai/lib/chai/utils/objDisplay.js +0 -46
  1072. package/node_modules/chai/lib/chai/utils/overwriteChainableMethod.js +0 -68
  1073. package/node_modules/chai/lib/chai/utils/overwriteMethod.js +0 -91
  1074. package/node_modules/chai/lib/chai/utils/overwriteProperty.js +0 -90
  1075. package/node_modules/chai/lib/chai/utils/proxify.js +0 -147
  1076. package/node_modules/chai/lib/chai/utils/test.js +0 -24
  1077. package/node_modules/chai/lib/chai/utils/transferFlags.js +0 -43
  1078. package/node_modules/chai/lib/chai/utils/type-detect.js +0 -20
  1079. package/node_modules/chai/lib/chai.js +0 -65
  1080. package/node_modules/chai/package.json +0 -61
  1081. package/node_modules/chai/register-assert.cjs +0 -3
  1082. package/node_modules/chai/register-assert.js +0 -3
  1083. package/node_modules/chai/register-expect.cjs +0 -3
  1084. package/node_modules/chai/register-expect.js +0 -3
  1085. package/node_modules/chai/register-should.cjs +0 -3
  1086. package/node_modules/chai/register-should.js +0 -3
  1087. package/node_modules/chai/web-test-runner.config.js +0 -20
  1088. package/node_modules/chai-dom/.eslintrc +0 -22
  1089. package/node_modules/chai-dom/.travis.yml +0 -15
  1090. package/node_modules/chai-dom/LICENSE +0 -24
  1091. package/node_modules/chai-dom/README.md +0 -267
  1092. package/node_modules/chai-dom/bower.json +0 -31
  1093. package/node_modules/chai-dom/chai-dom.js +0 -429
  1094. package/node_modules/chai-dom/package.json +0 -44
  1095. package/node_modules/chai-dom/test/.eslintrc +0 -12
  1096. package/node_modules/chai-dom/test/index.html +0 -27
  1097. package/node_modules/chai-dom/test/tests.js +0 -1124
  1098. package/node_modules/chai-dom/testem.js +0 -31
  1099. package/node_modules/check-error/LICENSE +0 -19
  1100. package/node_modules/check-error/README.md +0 -144
  1101. package/node_modules/check-error/index.js +0 -135
  1102. package/node_modules/check-error/package.json +0 -66
  1103. package/node_modules/clsx/clsx.d.mts +0 -6
  1104. package/node_modules/clsx/clsx.d.ts +0 -10
  1105. package/node_modules/clsx/dist/clsx.js +0 -1
  1106. package/node_modules/clsx/dist/clsx.min.js +0 -1
  1107. package/node_modules/clsx/dist/clsx.mjs +0 -1
  1108. package/node_modules/clsx/dist/lite.js +0 -1
  1109. package/node_modules/clsx/dist/lite.mjs +0 -1
  1110. package/node_modules/clsx/license +0 -9
  1111. package/node_modules/clsx/package.json +0 -60
  1112. package/node_modules/clsx/readme.md +0 -154
  1113. package/node_modules/cookie/HISTORY.md +0 -147
  1114. package/node_modules/cookie/LICENSE +0 -24
  1115. package/node_modules/cookie/README.md +0 -317
  1116. package/node_modules/cookie/SECURITY.md +0 -25
  1117. package/node_modules/cookie/index.js +0 -274
  1118. package/node_modules/cookie/package.json +0 -44
  1119. package/node_modules/deep-eql/LICENSE +0 -19
  1120. package/node_modules/deep-eql/README.md +0 -93
  1121. package/node_modules/deep-eql/index.js +0 -513
  1122. package/node_modules/deep-eql/package.json +0 -73
  1123. package/node_modules/detect-node-es/LICENSE +0 -21
  1124. package/node_modules/detect-node-es/Readme.md +0 -39
  1125. package/node_modules/detect-node-es/es5/browser.js +0 -2
  1126. package/node_modules/detect-node-es/es5/node.d.ts +0 -4
  1127. package/node_modules/detect-node-es/es5/node.js +0 -2
  1128. package/node_modules/detect-node-es/esm/browser.js +0 -2
  1129. package/node_modules/detect-node-es/esm/node.js +0 -2
  1130. package/node_modules/detect-node-es/package.json +0 -29
  1131. package/node_modules/framer-motion/LICENSE.md +0 -21
  1132. package/node_modules/framer-motion/README.md +0 -105
  1133. package/node_modules/framer-motion/dist/cjs/dom-entry-GDJJhIpT.js +0 -5959
  1134. package/node_modules/framer-motion/dist/cjs/dom-entry.js +0 -53
  1135. package/node_modules/framer-motion/dist/cjs/index.js +0 -6566
  1136. package/node_modules/framer-motion/dist/dom-entry.d.ts +0 -964
  1137. package/node_modules/framer-motion/dist/dom.js +0 -1
  1138. package/node_modules/framer-motion/dist/es/animation/GroupPlaybackControls.mjs +0 -80
  1139. package/node_modules/framer-motion/dist/es/animation/animate.mjs +0 -83
  1140. package/node_modules/framer-motion/dist/es/animation/animators/AcceleratedAnimation.mjs +0 -295
  1141. package/node_modules/framer-motion/dist/es/animation/animators/BaseAnimation.mjs +0 -84
  1142. package/node_modules/framer-motion/dist/es/animation/animators/MainThreadAnimation.mjs +0 -382
  1143. package/node_modules/framer-motion/dist/es/animation/animators/drivers/driver-frameloop.mjs +0 -17
  1144. package/node_modules/framer-motion/dist/es/animation/animators/utils/can-animate.mjs +0 -40
  1145. package/node_modules/framer-motion/dist/es/animation/animators/waapi/easing.mjs +0 -40
  1146. package/node_modules/framer-motion/dist/es/animation/animators/waapi/index.mjs +0 -23
  1147. package/node_modules/framer-motion/dist/es/animation/animators/waapi/utils/get-final-keyframe.mjs +0 -12
  1148. package/node_modules/framer-motion/dist/es/animation/generators/inertia.mjs +0 -87
  1149. package/node_modules/framer-motion/dist/es/animation/generators/keyframes.mjs +0 -51
  1150. package/node_modules/framer-motion/dist/es/animation/generators/spring/find.mjs +0 -89
  1151. package/node_modules/framer-motion/dist/es/animation/generators/spring/index.mjs +0 -131
  1152. package/node_modules/framer-motion/dist/es/animation/generators/utils/calc-duration.mjs +0 -17
  1153. package/node_modules/framer-motion/dist/es/animation/generators/utils/velocity.mjs +0 -9
  1154. package/node_modules/framer-motion/dist/es/animation/hooks/animation-controls.mjs +0 -80
  1155. package/node_modules/framer-motion/dist/es/animation/hooks/use-animate.mjs +0 -17
  1156. package/node_modules/framer-motion/dist/es/animation/hooks/use-animated-state.mjs +0 -62
  1157. package/node_modules/framer-motion/dist/es/animation/hooks/use-animation.mjs +0 -41
  1158. package/node_modules/framer-motion/dist/es/animation/interfaces/motion-value.mjs +0 -112
  1159. package/node_modules/framer-motion/dist/es/animation/interfaces/single-value.mjs +0 -11
  1160. package/node_modules/framer-motion/dist/es/animation/interfaces/visual-element-target.mjs +0 -80
  1161. package/node_modules/framer-motion/dist/es/animation/interfaces/visual-element-variant.mjs +0 -66
  1162. package/node_modules/framer-motion/dist/es/animation/interfaces/visual-element.mjs +0 -29
  1163. package/node_modules/framer-motion/dist/es/animation/optimized-appear/data-id.mjs +0 -6
  1164. package/node_modules/framer-motion/dist/es/animation/optimized-appear/get-appear-id.mjs +0 -7
  1165. package/node_modules/framer-motion/dist/es/animation/optimized-appear/handoff.mjs +0 -83
  1166. package/node_modules/framer-motion/dist/es/animation/optimized-appear/start.mjs +0 -80
  1167. package/node_modules/framer-motion/dist/es/animation/optimized-appear/store-id.mjs +0 -3
  1168. package/node_modules/framer-motion/dist/es/animation/optimized-appear/store.mjs +0 -3
  1169. package/node_modules/framer-motion/dist/es/animation/sequence/create.mjs +0 -230
  1170. package/node_modules/framer-motion/dist/es/animation/sequence/utils/calc-time.mjs +0 -21
  1171. package/node_modules/framer-motion/dist/es/animation/sequence/utils/edit.mjs +0 -31
  1172. package/node_modules/framer-motion/dist/es/animation/sequence/utils/sort.mjs +0 -14
  1173. package/node_modules/framer-motion/dist/es/animation/utils/create-visual-element.mjs +0 -32
  1174. package/node_modules/framer-motion/dist/es/animation/utils/default-transitions.mjs +0 -40
  1175. package/node_modules/framer-motion/dist/es/animation/utils/is-animatable.mjs +0 -30
  1176. package/node_modules/framer-motion/dist/es/animation/utils/is-animation-controls.mjs +0 -7
  1177. package/node_modules/framer-motion/dist/es/animation/utils/is-dom-keyframes.mjs +0 -5
  1178. package/node_modules/framer-motion/dist/es/animation/utils/is-keyframes-target.mjs +0 -5
  1179. package/node_modules/framer-motion/dist/es/animation/utils/is-none.mjs +0 -15
  1180. package/node_modules/framer-motion/dist/es/animation/utils/stagger.mjs +0 -26
  1181. package/node_modules/framer-motion/dist/es/animation/utils/transitions.mjs +0 -15
  1182. package/node_modules/framer-motion/dist/es/components/AnimatePresence/PopChild.mjs +0 -76
  1183. package/node_modules/framer-motion/dist/es/components/AnimatePresence/PresenceChild.mjs +0 -57
  1184. package/node_modules/framer-motion/dist/es/components/AnimatePresence/index.mjs +0 -169
  1185. package/node_modules/framer-motion/dist/es/components/AnimatePresence/use-presence.mjs +0 -66
  1186. package/node_modules/framer-motion/dist/es/components/AnimateSharedLayout.mjs +0 -15
  1187. package/node_modules/framer-motion/dist/es/components/LayoutGroup/index.mjs +0 -31
  1188. package/node_modules/framer-motion/dist/es/components/LazyMotion/index.mjs +0 -67
  1189. package/node_modules/framer-motion/dist/es/components/MotionConfig/index.mjs +0 -43
  1190. package/node_modules/framer-motion/dist/es/components/Reorder/Group.mjs +0 -52
  1191. package/node_modules/framer-motion/dist/es/components/Reorder/Item.mjs +0 -33
  1192. package/node_modules/framer-motion/dist/es/components/Reorder/index.mjs +0 -9
  1193. package/node_modules/framer-motion/dist/es/components/Reorder/utils/check-reorder.mjs +0 -24
  1194. package/node_modules/framer-motion/dist/es/context/DeprecatedLayoutGroupContext.mjs +0 -10
  1195. package/node_modules/framer-motion/dist/es/context/LayoutGroupContext.mjs +0 -5
  1196. package/node_modules/framer-motion/dist/es/context/LazyContext.mjs +0 -5
  1197. package/node_modules/framer-motion/dist/es/context/MotionConfigContext.mjs +0 -12
  1198. package/node_modules/framer-motion/dist/es/context/MotionContext/create.mjs +0 -13
  1199. package/node_modules/framer-motion/dist/es/context/MotionContext/index.mjs +0 -5
  1200. package/node_modules/framer-motion/dist/es/context/MotionContext/utils.mjs +0 -17
  1201. package/node_modules/framer-motion/dist/es/context/PresenceContext.mjs +0 -8
  1202. package/node_modules/framer-motion/dist/es/context/ReorderContext.mjs +0 -5
  1203. package/node_modules/framer-motion/dist/es/context/SwitchLayoutGroupContext.mjs +0 -8
  1204. package/node_modules/framer-motion/dist/es/debug/record.mjs +0 -7
  1205. package/node_modules/framer-motion/dist/es/dom-entry.mjs +0 -25
  1206. package/node_modules/framer-motion/dist/es/easing/anticipate.mjs +0 -5
  1207. package/node_modules/framer-motion/dist/es/easing/back.mjs +0 -9
  1208. package/node_modules/framer-motion/dist/es/easing/circ.mjs +0 -8
  1209. package/node_modules/framer-motion/dist/es/easing/cubic-bezier.mjs +0 -51
  1210. package/node_modules/framer-motion/dist/es/easing/ease.mjs +0 -7
  1211. package/node_modules/framer-motion/dist/es/easing/modifiers/mirror.mjs +0 -5
  1212. package/node_modules/framer-motion/dist/es/easing/modifiers/reverse.mjs +0 -5
  1213. package/node_modules/framer-motion/dist/es/easing/utils/create-generator-easing.mjs +0 -18
  1214. package/node_modules/framer-motion/dist/es/easing/utils/get-easing-for-segment.mjs +0 -8
  1215. package/node_modules/framer-motion/dist/es/easing/utils/is-bezier-definition.mjs +0 -3
  1216. package/node_modules/framer-motion/dist/es/easing/utils/is-easing-array.mjs +0 -5
  1217. package/node_modules/framer-motion/dist/es/easing/utils/map.mjs +0 -37
  1218. package/node_modules/framer-motion/dist/es/events/add-dom-event.mjs +0 -6
  1219. package/node_modules/framer-motion/dist/es/events/add-pointer-event.mjs +0 -8
  1220. package/node_modules/framer-motion/dist/es/events/event-info.mjs +0 -15
  1221. package/node_modules/framer-motion/dist/es/events/use-dom-event.mjs +0 -34
  1222. package/node_modules/framer-motion/dist/es/events/utils/is-primary-pointer.mjs +0 -18
  1223. package/node_modules/framer-motion/dist/es/frameloop/batcher.mjs +0 -65
  1224. package/node_modules/framer-motion/dist/es/frameloop/frame.mjs +0 -6
  1225. package/node_modules/framer-motion/dist/es/frameloop/index-legacy.mjs +0 -20
  1226. package/node_modules/framer-motion/dist/es/frameloop/microtask.mjs +0 -5
  1227. package/node_modules/framer-motion/dist/es/frameloop/render-step.mjs +0 -104
  1228. package/node_modules/framer-motion/dist/es/frameloop/sync-time.mjs +0 -31
  1229. package/node_modules/framer-motion/dist/es/gestures/drag/VisualElementDragControls.mjs +0 -484
  1230. package/node_modules/framer-motion/dist/es/gestures/drag/index.mjs +0 -27
  1231. package/node_modules/framer-motion/dist/es/gestures/drag/use-drag-controls.mjs +0 -88
  1232. package/node_modules/framer-motion/dist/es/gestures/drag/utils/constraints.mjs +0 -129
  1233. package/node_modules/framer-motion/dist/es/gestures/drag/utils/lock.mjs +0 -53
  1234. package/node_modules/framer-motion/dist/es/gestures/focus.mjs +0 -41
  1235. package/node_modules/framer-motion/dist/es/gestures/hover.mjs +0 -33
  1236. package/node_modules/framer-motion/dist/es/gestures/pan/PanSession.mjs +0 -156
  1237. package/node_modules/framer-motion/dist/es/gestures/pan/index.mjs +0 -50
  1238. package/node_modules/framer-motion/dist/es/gestures/press.mjs +0 -130
  1239. package/node_modules/framer-motion/dist/es/gestures/utils/is-node-or-child.mjs +0 -20
  1240. package/node_modules/framer-motion/dist/es/index.mjs +0 -101
  1241. package/node_modules/framer-motion/dist/es/motion/features/Feature.mjs +0 -9
  1242. package/node_modules/framer-motion/dist/es/motion/features/animation/exit.mjs +0 -31
  1243. package/node_modules/framer-motion/dist/es/motion/features/animation/index.mjs +0 -41
  1244. package/node_modules/framer-motion/dist/es/motion/features/animations.mjs +0 -13
  1245. package/node_modules/framer-motion/dist/es/motion/features/definitions.mjs +0 -28
  1246. package/node_modules/framer-motion/dist/es/motion/features/drag.mjs +0 -17
  1247. package/node_modules/framer-motion/dist/es/motion/features/gestures.mjs +0 -21
  1248. package/node_modules/framer-motion/dist/es/motion/features/layout/MeasureLayout.mjs +0 -133
  1249. package/node_modules/framer-motion/dist/es/motion/features/layout.mjs +0 -11
  1250. package/node_modules/framer-motion/dist/es/motion/features/load-features.mjs +0 -12
  1251. package/node_modules/framer-motion/dist/es/motion/features/viewport/index.mjs +0 -72
  1252. package/node_modules/framer-motion/dist/es/motion/features/viewport/observers.mjs +0 -49
  1253. package/node_modules/framer-motion/dist/es/motion/index.mjs +0 -97
  1254. package/node_modules/framer-motion/dist/es/motion/utils/is-forced-motion-value.mjs +0 -11
  1255. package/node_modules/framer-motion/dist/es/motion/utils/is-motion-component.mjs +0 -12
  1256. package/node_modules/framer-motion/dist/es/motion/utils/symbol.mjs +0 -3
  1257. package/node_modules/framer-motion/dist/es/motion/utils/unwrap-motion-component.mjs +0 -17
  1258. package/node_modules/framer-motion/dist/es/motion/utils/use-motion-ref.mjs +0 -36
  1259. package/node_modules/framer-motion/dist/es/motion/utils/use-visual-element.mjs +0 -127
  1260. package/node_modules/framer-motion/dist/es/motion/utils/use-visual-state.mjs +0 -81
  1261. package/node_modules/framer-motion/dist/es/motion/utils/valid-prop.mjs +0 -57
  1262. package/node_modules/framer-motion/dist/es/projection/animation/mix-values.mjs +0 -93
  1263. package/node_modules/framer-motion/dist/es/projection/geometry/conversion.mjs +0 -33
  1264. package/node_modules/framer-motion/dist/es/projection/geometry/copy.mjs +0 -20
  1265. package/node_modules/framer-motion/dist/es/projection/geometry/delta-apply.mjs +0 -122
  1266. package/node_modules/framer-motion/dist/es/projection/geometry/delta-calc.mjs +0 -41
  1267. package/node_modules/framer-motion/dist/es/projection/geometry/delta-remove.mjs +0 -54
  1268. package/node_modules/framer-motion/dist/es/projection/geometry/models.mjs +0 -17
  1269. package/node_modules/framer-motion/dist/es/projection/geometry/utils.mjs +0 -25
  1270. package/node_modules/framer-motion/dist/es/projection/node/DocumentProjectionNode.mjs +0 -13
  1271. package/node_modules/framer-motion/dist/es/projection/node/HTMLProjectionNode.mjs +0 -27
  1272. package/node_modules/framer-motion/dist/es/projection/node/create-projection-node.mjs +0 -1562
  1273. package/node_modules/framer-motion/dist/es/projection/node/group.mjs +0 -24
  1274. package/node_modules/framer-motion/dist/es/projection/node/state.mjs +0 -19
  1275. package/node_modules/framer-motion/dist/es/projection/shared/stack.mjs +0 -112
  1276. package/node_modules/framer-motion/dist/es/projection/styles/scale-border-radius.mjs +0 -41
  1277. package/node_modules/framer-motion/dist/es/projection/styles/scale-box-shadow.mjs +0 -35
  1278. package/node_modules/framer-motion/dist/es/projection/styles/scale-correction.mjs +0 -6
  1279. package/node_modules/framer-motion/dist/es/projection/styles/transform.mjs +0 -49
  1280. package/node_modules/framer-motion/dist/es/projection/use-instant-layout-transition.mjs +0 -14
  1281. package/node_modules/framer-motion/dist/es/projection/use-reset-projection.mjs +0 -14
  1282. package/node_modules/framer-motion/dist/es/projection/utils/each-axis.mjs +0 -5
  1283. package/node_modules/framer-motion/dist/es/projection/utils/has-transform.mjs +0 -26
  1284. package/node_modules/framer-motion/dist/es/projection/utils/measure.mjs +0 -17
  1285. package/node_modules/framer-motion/dist/es/projection-entry.mjs +0 -11
  1286. package/node_modules/framer-motion/dist/es/render/VisualElement.mjs +0 -496
  1287. package/node_modules/framer-motion/dist/es/render/dom/DOMKeyframesResolver.mjs +0 -130
  1288. package/node_modules/framer-motion/dist/es/render/dom/DOMVisualElement.mjs +0 -28
  1289. package/node_modules/framer-motion/dist/es/render/dom/create-visual-element.mjs +0 -15
  1290. package/node_modules/framer-motion/dist/es/render/dom/features-animation.mjs +0 -14
  1291. package/node_modules/framer-motion/dist/es/render/dom/features-max.mjs +0 -14
  1292. package/node_modules/framer-motion/dist/es/render/dom/motion-minimal.mjs +0 -9
  1293. package/node_modules/framer-motion/dist/es/render/dom/motion-proxy.mjs +0 -47
  1294. package/node_modules/framer-motion/dist/es/render/dom/motion.mjs +0 -42
  1295. package/node_modules/framer-motion/dist/es/render/dom/resize/handle-element.mjs +0 -64
  1296. package/node_modules/framer-motion/dist/es/render/dom/resize/handle-window.mjs +0 -30
  1297. package/node_modules/framer-motion/dist/es/render/dom/resize/index.mjs +0 -8
  1298. package/node_modules/framer-motion/dist/es/render/dom/scroll/index.mjs +0 -36
  1299. package/node_modules/framer-motion/dist/es/render/dom/scroll/info.mjs +0 -56
  1300. package/node_modules/framer-motion/dist/es/render/dom/scroll/observe.mjs +0 -18
  1301. package/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/edge.mjs +0 -45
  1302. package/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/index.mjs +0 -59
  1303. package/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/inset.mjs +0 -45
  1304. package/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/offset.mjs +0 -35
  1305. package/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/presets.mjs +0 -20
  1306. package/node_modules/framer-motion/dist/es/render/dom/scroll/on-scroll-handler.mjs +0 -48
  1307. package/node_modules/framer-motion/dist/es/render/dom/scroll/supports.mjs +0 -5
  1308. package/node_modules/framer-motion/dist/es/render/dom/scroll/track.mjs +0 -84
  1309. package/node_modules/framer-motion/dist/es/render/dom/use-render.mjs +0 -33
  1310. package/node_modules/framer-motion/dist/es/render/dom/utils/camel-to-dash.mjs +0 -6
  1311. package/node_modules/framer-motion/dist/es/render/dom/utils/create-config.mjs +0 -19
  1312. package/node_modules/framer-motion/dist/es/render/dom/utils/css-variables-conversion.mjs +0 -42
  1313. package/node_modules/framer-motion/dist/es/render/dom/utils/filter-props.mjs +0 -59
  1314. package/node_modules/framer-motion/dist/es/render/dom/utils/is-css-variable.mjs +0 -13
  1315. package/node_modules/framer-motion/dist/es/render/dom/utils/is-svg-component.mjs +0 -30
  1316. package/node_modules/framer-motion/dist/es/render/dom/utils/is-svg-element.mjs +0 -5
  1317. package/node_modules/framer-motion/dist/es/render/dom/utils/resolve-element.mjs +0 -28
  1318. package/node_modules/framer-motion/dist/es/render/dom/utils/unit-conversion.mjs +0 -65
  1319. package/node_modules/framer-motion/dist/es/render/dom/value-types/animatable-none.mjs +0 -15
  1320. package/node_modules/framer-motion/dist/es/render/dom/value-types/defaults.mjs +0 -30
  1321. package/node_modules/framer-motion/dist/es/render/dom/value-types/dimensions.mjs +0 -15
  1322. package/node_modules/framer-motion/dist/es/render/dom/value-types/find.mjs +0 -15
  1323. package/node_modules/framer-motion/dist/es/render/dom/value-types/get-as-type.mjs +0 -10
  1324. package/node_modules/framer-motion/dist/es/render/dom/value-types/number.mjs +0 -74
  1325. package/node_modules/framer-motion/dist/es/render/dom/value-types/test.mjs +0 -6
  1326. package/node_modules/framer-motion/dist/es/render/dom/value-types/type-auto.mjs +0 -9
  1327. package/node_modules/framer-motion/dist/es/render/dom/value-types/type-int.mjs +0 -8
  1328. package/node_modules/framer-motion/dist/es/render/dom/viewport/index.mjs +0 -43
  1329. package/node_modules/framer-motion/dist/es/render/html/HTMLVisualElement.mjs +0 -59
  1330. package/node_modules/framer-motion/dist/es/render/html/config-motion.mjs +0 -12
  1331. package/node_modules/framer-motion/dist/es/render/html/use-props.mjs +0 -57
  1332. package/node_modules/framer-motion/dist/es/render/html/utils/build-styles.mjs +0 -74
  1333. package/node_modules/framer-motion/dist/es/render/html/utils/build-transform.mjs +0 -45
  1334. package/node_modules/framer-motion/dist/es/render/html/utils/create-render-state.mjs +0 -8
  1335. package/node_modules/framer-motion/dist/es/render/html/utils/make-none-animatable.mjs +0 -30
  1336. package/node_modules/framer-motion/dist/es/render/html/utils/render.mjs +0 -9
  1337. package/node_modules/framer-motion/dist/es/render/html/utils/scrape-motion-values.mjs +0 -20
  1338. package/node_modules/framer-motion/dist/es/render/html/utils/transform.mjs +0 -28
  1339. package/node_modules/framer-motion/dist/es/render/store.mjs +0 -3
  1340. package/node_modules/framer-motion/dist/es/render/svg/SVGVisualElement.mjs +0 -47
  1341. package/node_modules/framer-motion/dist/es/render/svg/config-motion.mjs +0 -40
  1342. package/node_modules/framer-motion/dist/es/render/svg/lowercase-elements.mjs +0 -33
  1343. package/node_modules/framer-motion/dist/es/render/svg/use-props.mjs +0 -24
  1344. package/node_modules/framer-motion/dist/es/render/svg/utils/build-attrs.mjs +0 -52
  1345. package/node_modules/framer-motion/dist/es/render/svg/utils/camel-case-attrs.mjs +0 -30
  1346. package/node_modules/framer-motion/dist/es/render/svg/utils/create-render-state.mjs +0 -8
  1347. package/node_modules/framer-motion/dist/es/render/svg/utils/is-svg-tag.mjs +0 -3
  1348. package/node_modules/framer-motion/dist/es/render/svg/utils/path.mjs +0 -32
  1349. package/node_modules/framer-motion/dist/es/render/svg/utils/render.mjs +0 -12
  1350. package/node_modules/framer-motion/dist/es/render/svg/utils/scrape-motion-values.mjs +0 -19
  1351. package/node_modules/framer-motion/dist/es/render/svg/utils/transform-origin.mjs +0 -18
  1352. package/node_modules/framer-motion/dist/es/render/utils/KeyframesResolver.mjs +0 -164
  1353. package/node_modules/framer-motion/dist/es/render/utils/animation-state.mjs +0 -328
  1354. package/node_modules/framer-motion/dist/es/render/utils/compare-by-depth.mjs +0 -3
  1355. package/node_modules/framer-motion/dist/es/render/utils/flat-tree.mjs +0 -24
  1356. package/node_modules/framer-motion/dist/es/render/utils/is-controlling-variants.mjs +0 -13
  1357. package/node_modules/framer-motion/dist/es/render/utils/is-variant-label.mjs +0 -8
  1358. package/node_modules/framer-motion/dist/es/render/utils/motion-values.mjs +0 -67
  1359. package/node_modules/framer-motion/dist/es/render/utils/resolve-dynamic-variants.mjs +0 -8
  1360. package/node_modules/framer-motion/dist/es/render/utils/resolve-variants.mjs +0 -36
  1361. package/node_modules/framer-motion/dist/es/render/utils/setters.mjs +0 -27
  1362. package/node_modules/framer-motion/dist/es/render/utils/variant-props.mjs +0 -12
  1363. package/node_modules/framer-motion/dist/es/utils/GlobalConfig.mjs +0 -6
  1364. package/node_modules/framer-motion/dist/es/utils/array.mjs +0 -21
  1365. package/node_modules/framer-motion/dist/es/utils/clamp.mjs +0 -9
  1366. package/node_modules/framer-motion/dist/es/utils/delay.mjs +0 -20
  1367. package/node_modules/framer-motion/dist/es/utils/distance.mjs +0 -9
  1368. package/node_modules/framer-motion/dist/es/utils/errors.mjs +0 -18
  1369. package/node_modules/framer-motion/dist/es/utils/get-context-window.mjs +0 -6
  1370. package/node_modules/framer-motion/dist/es/utils/hsla-to-rgba.mjs +0 -42
  1371. package/node_modules/framer-motion/dist/es/utils/interpolate.mjs +0 -75
  1372. package/node_modules/framer-motion/dist/es/utils/is-browser.mjs +0 -3
  1373. package/node_modules/framer-motion/dist/es/utils/is-numerical-string.mjs +0 -6
  1374. package/node_modules/framer-motion/dist/es/utils/is-ref-object.mjs +0 -7
  1375. package/node_modules/framer-motion/dist/es/utils/is-zero-value-string.mjs +0 -6
  1376. package/node_modules/framer-motion/dist/es/utils/memo.mjs +0 -10
  1377. package/node_modules/framer-motion/dist/es/utils/mix/color.mjs +0 -47
  1378. package/node_modules/framer-motion/dist/es/utils/mix/complex.mjs +0 -94
  1379. package/node_modules/framer-motion/dist/es/utils/mix/immediate.mjs +0 -5
  1380. package/node_modules/framer-motion/dist/es/utils/mix/index.mjs +0 -14
  1381. package/node_modules/framer-motion/dist/es/utils/mix/number.mjs +0 -26
  1382. package/node_modules/framer-motion/dist/es/utils/mix/visibility.mjs +0 -16
  1383. package/node_modules/framer-motion/dist/es/utils/noop.mjs +0 -3
  1384. package/node_modules/framer-motion/dist/es/utils/offsets/default.mjs +0 -9
  1385. package/node_modules/framer-motion/dist/es/utils/offsets/fill.mjs +0 -12
  1386. package/node_modules/framer-motion/dist/es/utils/offsets/time.mjs +0 -5
  1387. package/node_modules/framer-motion/dist/es/utils/pipe.mjs +0 -11
  1388. package/node_modules/framer-motion/dist/es/utils/progress.mjs +0 -18
  1389. package/node_modules/framer-motion/dist/es/utils/reduced-motion/index.mjs +0 -19
  1390. package/node_modules/framer-motion/dist/es/utils/reduced-motion/state.mjs +0 -5
  1391. package/node_modules/framer-motion/dist/es/utils/reduced-motion/use-reduced-motion-config.mjs +0 -19
  1392. package/node_modules/framer-motion/dist/es/utils/reduced-motion/use-reduced-motion.mjs +0 -47
  1393. package/node_modules/framer-motion/dist/es/utils/resolve-value.mjs +0 -11
  1394. package/node_modules/framer-motion/dist/es/utils/shallow-compare.mjs +0 -14
  1395. package/node_modules/framer-motion/dist/es/utils/subscription-manager.mjs +0 -40
  1396. package/node_modules/framer-motion/dist/es/utils/time-conversion.mjs +0 -10
  1397. package/node_modules/framer-motion/dist/es/utils/transform.mjs +0 -21
  1398. package/node_modules/framer-motion/dist/es/utils/use-animation-frame.mjs +0 -21
  1399. package/node_modules/framer-motion/dist/es/utils/use-constant.mjs +0 -18
  1400. package/node_modules/framer-motion/dist/es/utils/use-cycle.mjs +0 -47
  1401. package/node_modules/framer-motion/dist/es/utils/use-force-update.mjs +0 -19
  1402. package/node_modules/framer-motion/dist/es/utils/use-in-view.mjs +0 -23
  1403. package/node_modules/framer-motion/dist/es/utils/use-instant-transition-state.mjs +0 -5
  1404. package/node_modules/framer-motion/dist/es/utils/use-instant-transition.mjs +0 -41
  1405. package/node_modules/framer-motion/dist/es/utils/use-is-mounted.mjs +0 -15
  1406. package/node_modules/framer-motion/dist/es/utils/use-isomorphic-effect.mjs +0 -6
  1407. package/node_modules/framer-motion/dist/es/utils/use-motion-value-event.mjs +0 -13
  1408. package/node_modules/framer-motion/dist/es/utils/use-unmount-effect.mjs +0 -7
  1409. package/node_modules/framer-motion/dist/es/utils/velocity-per-second.mjs +0 -11
  1410. package/node_modules/framer-motion/dist/es/utils/warn-once.mjs +0 -11
  1411. package/node_modules/framer-motion/dist/es/utils/wrap.mjs +0 -6
  1412. package/node_modules/framer-motion/dist/es/value/index.mjs +0 -319
  1413. package/node_modules/framer-motion/dist/es/value/scroll/use-element-scroll.mjs +0 -14
  1414. package/node_modules/framer-motion/dist/es/value/scroll/use-viewport-scroll.mjs +0 -14
  1415. package/node_modules/framer-motion/dist/es/value/types/color/hex.mjs +0 -40
  1416. package/node_modules/framer-motion/dist/es/value/types/color/hsla.mjs +0 -22
  1417. package/node_modules/framer-motion/dist/es/value/types/color/index.mjs +0 -28
  1418. package/node_modules/framer-motion/dist/es/value/types/color/rgba.mjs +0 -25
  1419. package/node_modules/framer-motion/dist/es/value/types/color/utils.mjs +0 -23
  1420. package/node_modules/framer-motion/dist/es/value/types/complex/filter.mjs +0 -30
  1421. package/node_modules/framer-motion/dist/es/value/types/complex/index.mjs +0 -90
  1422. package/node_modules/framer-motion/dist/es/value/types/numbers/index.mjs +0 -17
  1423. package/node_modules/framer-motion/dist/es/value/types/numbers/units.mjs +0 -19
  1424. package/node_modules/framer-motion/dist/es/value/types/utils.mjs +0 -15
  1425. package/node_modules/framer-motion/dist/es/value/use-combine-values.mjs +0 -37
  1426. package/node_modules/framer-motion/dist/es/value/use-computed.mjs +0 -19
  1427. package/node_modules/framer-motion/dist/es/value/use-inverted-scale.mjs +0 -52
  1428. package/node_modules/framer-motion/dist/es/value/use-motion-template.mjs +0 -45
  1429. package/node_modules/framer-motion/dist/es/value/use-motion-value.mjs +0 -38
  1430. package/node_modules/framer-motion/dist/es/value/use-scroll.mjs +0 -39
  1431. package/node_modules/framer-motion/dist/es/value/use-spring.mjs +0 -80
  1432. package/node_modules/framer-motion/dist/es/value/use-time.mjs +0 -10
  1433. package/node_modules/framer-motion/dist/es/value/use-transform.mjs +0 -29
  1434. package/node_modules/framer-motion/dist/es/value/use-velocity.mjs +0 -35
  1435. package/node_modules/framer-motion/dist/es/value/use-will-change/index.mjs +0 -50
  1436. package/node_modules/framer-motion/dist/es/value/use-will-change/is.mjs +0 -7
  1437. package/node_modules/framer-motion/dist/es/value/utils/is-motion-value.mjs +0 -3
  1438. package/node_modules/framer-motion/dist/es/value/utils/resolve-motion-value.mjs +0 -16
  1439. package/node_modules/framer-motion/dist/framer-motion.dev.js +0 -12433
  1440. package/node_modules/framer-motion/dist/framer-motion.js +0 -1
  1441. package/node_modules/framer-motion/dist/index.d.ts +0 -5278
  1442. package/node_modules/framer-motion/dist/three-entry.d.ts +0 -2954
  1443. package/node_modules/framer-motion/dom/README.md +0 -1
  1444. package/node_modules/framer-motion/dom/package.json +0 -6
  1445. package/node_modules/framer-motion/package.json +0 -108
  1446. package/node_modules/get-func-name/LICENSE +0 -19
  1447. package/node_modules/get-func-name/README.md +0 -123
  1448. package/node_modules/get-func-name/get-func-name.js +0 -1
  1449. package/node_modules/get-func-name/index.js +0 -52
  1450. package/node_modules/get-func-name/package.json +0 -85
  1451. package/node_modules/get-nonce/LICENSE +0 -21
  1452. package/node_modules/get-nonce/README.md +0 -54
  1453. package/node_modules/get-nonce/dist/es2015/index.d.ts +0 -2
  1454. package/node_modules/get-nonce/dist/es2015/index.js +0 -13
  1455. package/node_modules/get-nonce/dist/es5/index.d.ts +0 -2
  1456. package/node_modules/get-nonce/dist/es5/index.js +0 -15
  1457. package/node_modules/get-nonce/package.json +0 -68
  1458. package/node_modules/invariant/LICENSE +0 -21
  1459. package/node_modules/invariant/README.md +0 -37
  1460. package/node_modules/invariant/browser.js +0 -49
  1461. package/node_modules/invariant/invariant.js +0 -51
  1462. package/node_modules/invariant/invariant.js.flow +0 -7
  1463. package/node_modules/invariant/package.json +0 -35
  1464. package/node_modules/js-tokens/LICENSE +0 -21
  1465. package/node_modules/js-tokens/README.md +0 -240
  1466. package/node_modules/js-tokens/index.js +0 -23
  1467. package/node_modules/js-tokens/package.json +0 -30
  1468. package/node_modules/loose-envify/LICENSE +0 -21
  1469. package/node_modules/loose-envify/README.md +0 -45
  1470. package/node_modules/loose-envify/cli.js +0 -16
  1471. package/node_modules/loose-envify/custom.js +0 -4
  1472. package/node_modules/loose-envify/index.js +0 -3
  1473. package/node_modules/loose-envify/loose-envify.js +0 -36
  1474. package/node_modules/loose-envify/package.json +0 -36
  1475. package/node_modules/loose-envify/replace.js +0 -65
  1476. package/node_modules/loupe/LICENSE +0 -9
  1477. package/node_modules/loupe/README.md +0 -63
  1478. package/node_modules/loupe/lib/arguments.d.ts +0 -3
  1479. package/node_modules/loupe/lib/arguments.d.ts.map +0 -1
  1480. package/node_modules/loupe/lib/arguments.js +0 -7
  1481. package/node_modules/loupe/lib/array.d.ts +0 -3
  1482. package/node_modules/loupe/lib/array.d.ts.map +0 -1
  1483. package/node_modules/loupe/lib/array.js +0 -16
  1484. package/node_modules/loupe/lib/bigint.d.ts +0 -3
  1485. package/node_modules/loupe/lib/bigint.d.ts.map +0 -1
  1486. package/node_modules/loupe/lib/bigint.js +0 -7
  1487. package/node_modules/loupe/lib/class.d.ts +0 -5
  1488. package/node_modules/loupe/lib/class.d.ts.map +0 -1
  1489. package/node_modules/loupe/lib/class.js +0 -15
  1490. package/node_modules/loupe/lib/date.d.ts +0 -3
  1491. package/node_modules/loupe/lib/date.d.ts.map +0 -1
  1492. package/node_modules/loupe/lib/date.js +0 -11
  1493. package/node_modules/loupe/lib/error.d.ts +0 -3
  1494. package/node_modules/loupe/lib/error.d.ts.map +0 -1
  1495. package/node_modules/loupe/lib/error.js +0 -29
  1496. package/node_modules/loupe/lib/function.d.ts +0 -7
  1497. package/node_modules/loupe/lib/function.d.ts.map +0 -1
  1498. package/node_modules/loupe/lib/function.js +0 -9
  1499. package/node_modules/loupe/lib/helpers.d.ts +0 -7
  1500. package/node_modules/loupe/lib/helpers.d.ts.map +0 -1
  1501. package/node_modules/loupe/lib/helpers.js +0 -159
  1502. package/node_modules/loupe/lib/html.d.ts +0 -5
  1503. package/node_modules/loupe/lib/html.d.ts.map +0 -1
  1504. package/node_modules/loupe/lib/html.js +0 -34
  1505. package/node_modules/loupe/lib/index.d.ts +0 -7
  1506. package/node_modules/loupe/lib/index.d.ts.map +0 -1
  1507. package/node_modules/loupe/lib/index.js +0 -161
  1508. package/node_modules/loupe/lib/map.d.ts +0 -3
  1509. package/node_modules/loupe/lib/map.d.ts.map +0 -1
  1510. package/node_modules/loupe/lib/map.js +0 -24
  1511. package/node_modules/loupe/lib/number.d.ts +0 -3
  1512. package/node_modules/loupe/lib/number.d.ts.map +0 -1
  1513. package/node_modules/loupe/lib/number.js +0 -17
  1514. package/node_modules/loupe/lib/object.d.ts +0 -3
  1515. package/node_modules/loupe/lib/object.d.ts.map +0 -1
  1516. package/node_modules/loupe/lib/object.js +0 -22
  1517. package/node_modules/loupe/lib/promise.d.ts +0 -5
  1518. package/node_modules/loupe/lib/promise.d.ts.map +0 -1
  1519. package/node_modules/loupe/lib/promise.js +0 -18
  1520. package/node_modules/loupe/lib/regexp.d.ts +0 -3
  1521. package/node_modules/loupe/lib/regexp.d.ts.map +0 -1
  1522. package/node_modules/loupe/lib/regexp.js +0 -7
  1523. package/node_modules/loupe/lib/set.d.ts +0 -3
  1524. package/node_modules/loupe/lib/set.d.ts.map +0 -1
  1525. package/node_modules/loupe/lib/set.js +0 -15
  1526. package/node_modules/loupe/lib/string.d.ts +0 -3
  1527. package/node_modules/loupe/lib/string.d.ts.map +0 -1
  1528. package/node_modules/loupe/lib/string.js +0 -24
  1529. package/node_modules/loupe/lib/symbol.d.ts +0 -2
  1530. package/node_modules/loupe/lib/symbol.d.ts.map +0 -1
  1531. package/node_modules/loupe/lib/symbol.js +0 -6
  1532. package/node_modules/loupe/lib/typedarray.d.ts +0 -5
  1533. package/node_modules/loupe/lib/typedarray.d.ts.map +0 -1
  1534. package/node_modules/loupe/lib/typedarray.js +0 -38
  1535. package/node_modules/loupe/lib/types.d.ts +0 -15
  1536. package/node_modules/loupe/lib/types.d.ts.map +0 -1
  1537. package/node_modules/loupe/lib/types.js +0 -1
  1538. package/node_modules/loupe/loupe.js +0 -644
  1539. package/node_modules/loupe/package.json +0 -126
  1540. package/node_modules/pathval/LICENSE +0 -16
  1541. package/node_modules/pathval/README.md +0 -147
  1542. package/node_modules/pathval/index.js +0 -292
  1543. package/node_modules/pathval/package.json +0 -73
  1544. package/node_modules/pathval/pathval.js +0 -1
  1545. package/node_modules/react-remove-scroll/LICENSE +0 -21
  1546. package/node_modules/react-remove-scroll/README.md +0 -152
  1547. package/node_modules/react-remove-scroll/UI/UI.d.ts +0 -1
  1548. package/node_modules/react-remove-scroll/UI/package.json +0 -8
  1549. package/node_modules/react-remove-scroll/dist/es2015/Combination.d.ts +0 -3
  1550. package/node_modules/react-remove-scroll/dist/es2015/Combination.js +0 -7
  1551. package/node_modules/react-remove-scroll/dist/es2015/SideEffect.d.ts +0 -5
  1552. package/node_modules/react-remove-scroll/dist/es2015/SideEffect.js +0 -157
  1553. package/node_modules/react-remove-scroll/dist/es2015/UI.d.ts +0 -7
  1554. package/node_modules/react-remove-scroll/dist/es2015/UI.js +0 -36
  1555. package/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.d.ts +0 -3
  1556. package/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js +0 -19
  1557. package/node_modules/react-remove-scroll/dist/es2015/handleScroll.d.ts +0 -3
  1558. package/node_modules/react-remove-scroll/dist/es2015/handleScroll.js +0 -104
  1559. package/node_modules/react-remove-scroll/dist/es2015/index.d.ts +0 -2
  1560. package/node_modules/react-remove-scroll/dist/es2015/index.js +0 -2
  1561. package/node_modules/react-remove-scroll/dist/es2015/medium.d.ts +0 -2
  1562. package/node_modules/react-remove-scroll/dist/es2015/medium.js +0 -2
  1563. package/node_modules/react-remove-scroll/dist/es2015/pinchAndZoom.d.ts +0 -8
  1564. package/node_modules/react-remove-scroll/dist/es2015/pinchAndZoom.js +0 -33
  1565. package/node_modules/react-remove-scroll/dist/es2015/sidecar.d.ts +0 -2
  1566. package/node_modules/react-remove-scroll/dist/es2015/sidecar.js +0 -4
  1567. package/node_modules/react-remove-scroll/dist/es2015/types.d.ts +0 -98
  1568. package/node_modules/react-remove-scroll/dist/es2015/types.js +0 -1
  1569. package/node_modules/react-remove-scroll/dist/es2019/Combination.d.ts +0 -3
  1570. package/node_modules/react-remove-scroll/dist/es2019/Combination.js +0 -6
  1571. package/node_modules/react-remove-scroll/dist/es2019/SideEffect.d.ts +0 -5
  1572. package/node_modules/react-remove-scroll/dist/es2019/SideEffect.js +0 -155
  1573. package/node_modules/react-remove-scroll/dist/es2019/UI.d.ts +0 -7
  1574. package/node_modules/react-remove-scroll/dist/es2019/UI.js +0 -41
  1575. package/node_modules/react-remove-scroll/dist/es2019/aggresiveCapture.d.ts +0 -3
  1576. package/node_modules/react-remove-scroll/dist/es2019/aggresiveCapture.js +0 -19
  1577. package/node_modules/react-remove-scroll/dist/es2019/handleScroll.d.ts +0 -3
  1578. package/node_modules/react-remove-scroll/dist/es2019/handleScroll.js +0 -92
  1579. package/node_modules/react-remove-scroll/dist/es2019/index.d.ts +0 -2
  1580. package/node_modules/react-remove-scroll/dist/es2019/index.js +0 -2
  1581. package/node_modules/react-remove-scroll/dist/es2019/medium.d.ts +0 -2
  1582. package/node_modules/react-remove-scroll/dist/es2019/medium.js +0 -2
  1583. package/node_modules/react-remove-scroll/dist/es2019/pinchAndZoom.d.ts +0 -8
  1584. package/node_modules/react-remove-scroll/dist/es2019/pinchAndZoom.js +0 -33
  1585. package/node_modules/react-remove-scroll/dist/es2019/sidecar.d.ts +0 -2
  1586. package/node_modules/react-remove-scroll/dist/es2019/sidecar.js +0 -4
  1587. package/node_modules/react-remove-scroll/dist/es2019/types.d.ts +0 -98
  1588. package/node_modules/react-remove-scroll/dist/es2019/types.js +0 -1
  1589. package/node_modules/react-remove-scroll/dist/es5/Combination.d.ts +0 -3
  1590. package/node_modules/react-remove-scroll/dist/es5/Combination.js +0 -9
  1591. package/node_modules/react-remove-scroll/dist/es5/SideEffect.d.ts +0 -5
  1592. package/node_modules/react-remove-scroll/dist/es5/SideEffect.js +0 -163
  1593. package/node_modules/react-remove-scroll/dist/es5/UI.d.ts +0 -7
  1594. package/node_modules/react-remove-scroll/dist/es5/UI.js +0 -39
  1595. package/node_modules/react-remove-scroll/dist/es5/aggresiveCapture.d.ts +0 -3
  1596. package/node_modules/react-remove-scroll/dist/es5/aggresiveCapture.js +0 -22
  1597. package/node_modules/react-remove-scroll/dist/es5/handleScroll.d.ts +0 -3
  1598. package/node_modules/react-remove-scroll/dist/es5/handleScroll.js +0 -109
  1599. package/node_modules/react-remove-scroll/dist/es5/index.d.ts +0 -2
  1600. package/node_modules/react-remove-scroll/dist/es5/index.js +0 -6
  1601. package/node_modules/react-remove-scroll/dist/es5/medium.d.ts +0 -2
  1602. package/node_modules/react-remove-scroll/dist/es5/medium.js +0 -5
  1603. package/node_modules/react-remove-scroll/dist/es5/pinchAndZoom.d.ts +0 -8
  1604. package/node_modules/react-remove-scroll/dist/es5/pinchAndZoom.js +0 -37
  1605. package/node_modules/react-remove-scroll/dist/es5/sidecar.d.ts +0 -2
  1606. package/node_modules/react-remove-scroll/dist/es5/sidecar.js +0 -6
  1607. package/node_modules/react-remove-scroll/dist/es5/types.d.ts +0 -98
  1608. package/node_modules/react-remove-scroll/dist/es5/types.js +0 -2
  1609. package/node_modules/react-remove-scroll/dist/index.js +0 -93
  1610. package/node_modules/react-remove-scroll/package.json +0 -97
  1611. package/node_modules/react-remove-scroll/sidecar/package.json +0 -7
  1612. package/node_modules/react-remove-scroll/sidecar/sidecar.d.ts +0 -5
  1613. package/node_modules/react-remove-scroll-bar/README.md +0 -52
  1614. package/node_modules/react-remove-scroll-bar/constants/package.json +0 -8
  1615. package/node_modules/react-remove-scroll-bar/dist/es2015/component.d.ts +0 -13
  1616. package/node_modules/react-remove-scroll-bar/dist/es2015/component.js +0 -53
  1617. package/node_modules/react-remove-scroll-bar/dist/es2015/constants.d.ts +0 -8
  1618. package/node_modules/react-remove-scroll-bar/dist/es2015/constants.js +0 -8
  1619. package/node_modules/react-remove-scroll-bar/dist/es2015/index.d.ts +0 -4
  1620. package/node_modules/react-remove-scroll-bar/dist/es2015/index.js +0 -4
  1621. package/node_modules/react-remove-scroll-bar/dist/es2015/utils.d.ts +0 -14
  1622. package/node_modules/react-remove-scroll-bar/dist/es2015/utils.js +0 -29
  1623. package/node_modules/react-remove-scroll-bar/dist/es2019/component.d.ts +0 -13
  1624. package/node_modules/react-remove-scroll-bar/dist/es2019/component.js +0 -85
  1625. package/node_modules/react-remove-scroll-bar/dist/es2019/constants.d.ts +0 -8
  1626. package/node_modules/react-remove-scroll-bar/dist/es2019/constants.js +0 -8
  1627. package/node_modules/react-remove-scroll-bar/dist/es2019/index.d.ts +0 -4
  1628. package/node_modules/react-remove-scroll-bar/dist/es2019/index.js +0 -4
  1629. package/node_modules/react-remove-scroll-bar/dist/es2019/utils.d.ts +0 -14
  1630. package/node_modules/react-remove-scroll-bar/dist/es2019/utils.js +0 -28
  1631. package/node_modules/react-remove-scroll-bar/dist/es5/component.d.ts +0 -13
  1632. package/node_modules/react-remove-scroll-bar/dist/es5/component.js +0 -59
  1633. package/node_modules/react-remove-scroll-bar/dist/es5/constants.d.ts +0 -8
  1634. package/node_modules/react-remove-scroll-bar/dist/es5/constants.js +0 -11
  1635. package/node_modules/react-remove-scroll-bar/dist/es5/index.d.ts +0 -4
  1636. package/node_modules/react-remove-scroll-bar/dist/es5/index.js +0 -12
  1637. package/node_modules/react-remove-scroll-bar/dist/es5/utils.d.ts +0 -14
  1638. package/node_modules/react-remove-scroll-bar/dist/es5/utils.js +0 -33
  1639. package/node_modules/react-remove-scroll-bar/package.json +0 -85
  1640. package/node_modules/react-router/CHANGELOG.md +0 -723
  1641. package/node_modules/react-router/LICENSE.md +0 -23
  1642. package/node_modules/react-router/README.md +0 -16
  1643. package/node_modules/react-router/dist/index.d.ts +0 -29
  1644. package/node_modules/react-router/dist/index.js +0 -1456
  1645. package/node_modules/react-router/dist/index.js.map +0 -1
  1646. package/node_modules/react-router/dist/lib/components.d.ts +0 -157
  1647. package/node_modules/react-router/dist/lib/context.d.ts +0 -102
  1648. package/node_modules/react-router/dist/lib/hooks.d.ts +0 -181
  1649. package/node_modules/react-router/dist/main.js +0 -19
  1650. package/node_modules/react-router/dist/react-router.development.js +0 -1352
  1651. package/node_modules/react-router/dist/react-router.development.js.map +0 -1
  1652. package/node_modules/react-router/dist/react-router.production.min.js +0 -12
  1653. package/node_modules/react-router/dist/react-router.production.min.js.map +0 -1
  1654. package/node_modules/react-router/dist/umd/react-router.development.js +0 -1574
  1655. package/node_modules/react-router/dist/umd/react-router.development.js.map +0 -1
  1656. package/node_modules/react-router/dist/umd/react-router.production.min.js +0 -12
  1657. package/node_modules/react-router/dist/umd/react-router.production.min.js.map +0 -1
  1658. package/node_modules/react-router/package.json +0 -44
  1659. package/node_modules/react-router-dom/CHANGELOG.md +0 -866
  1660. package/node_modules/react-router-dom/LICENSE.md +0 -23
  1661. package/node_modules/react-router-dom/README.md +0 -5
  1662. package/node_modules/react-router-dom/dist/dom.d.ts +0 -117
  1663. package/node_modules/react-router-dom/dist/index.d.ts +0 -331
  1664. package/node_modules/react-router-dom/dist/index.js +0 -1447
  1665. package/node_modules/react-router-dom/dist/index.js.map +0 -1
  1666. package/node_modules/react-router-dom/dist/main.js +0 -19
  1667. package/node_modules/react-router-dom/dist/react-router-dom.development.js +0 -1514
  1668. package/node_modules/react-router-dom/dist/react-router-dom.development.js.map +0 -1
  1669. package/node_modules/react-router-dom/dist/react-router-dom.production.min.js +0 -12
  1670. package/node_modules/react-router-dom/dist/react-router-dom.production.min.js.map +0 -1
  1671. package/node_modules/react-router-dom/dist/server.d.ts +0 -31
  1672. package/node_modules/react-router-dom/dist/server.js +0 -322
  1673. package/node_modules/react-router-dom/dist/server.mjs +0 -297
  1674. package/node_modules/react-router-dom/dist/umd/react-router-dom.development.js +0 -1813
  1675. package/node_modules/react-router-dom/dist/umd/react-router-dom.development.js.map +0 -1
  1676. package/node_modules/react-router-dom/dist/umd/react-router-dom.production.min.js +0 -12
  1677. package/node_modules/react-router-dom/dist/umd/react-router-dom.production.min.js.map +0 -1
  1678. package/node_modules/react-router-dom/package.json +0 -49
  1679. package/node_modules/react-router-dom/server.d.ts +0 -31
  1680. package/node_modules/react-router-dom/server.js +0 -322
  1681. package/node_modules/react-router-dom/server.mjs +0 -297
  1682. package/node_modules/react-style-singleton/README.md +0 -41
  1683. package/node_modules/react-style-singleton/dist/es2015/component.d.ts +0 -21
  1684. package/node_modules/react-style-singleton/dist/es2015/component.js +0 -16
  1685. package/node_modules/react-style-singleton/dist/es2015/hook.d.ts +0 -23
  1686. package/node_modules/react-style-singleton/dist/es2015/hook.js +0 -22
  1687. package/node_modules/react-style-singleton/dist/es2015/index.d.ts +0 -3
  1688. package/node_modules/react-style-singleton/dist/es2015/index.js +0 -3
  1689. package/node_modules/react-style-singleton/dist/es2015/singleton.d.ts +0 -4
  1690. package/node_modules/react-style-singleton/dist/es2015/singleton.js +0 -48
  1691. package/node_modules/react-style-singleton/dist/es2019/component.d.ts +0 -21
  1692. package/node_modules/react-style-singleton/dist/es2019/component.js +0 -15
  1693. package/node_modules/react-style-singleton/dist/es2019/hook.d.ts +0 -23
  1694. package/node_modules/react-style-singleton/dist/es2019/hook.js +0 -22
  1695. package/node_modules/react-style-singleton/dist/es2019/index.d.ts +0 -3
  1696. package/node_modules/react-style-singleton/dist/es2019/index.js +0 -3
  1697. package/node_modules/react-style-singleton/dist/es2019/singleton.d.ts +0 -4
  1698. package/node_modules/react-style-singleton/dist/es2019/singleton.js +0 -48
  1699. package/node_modules/react-style-singleton/dist/es5/component.d.ts +0 -21
  1700. package/node_modules/react-style-singleton/dist/es5/component.js +0 -20
  1701. package/node_modules/react-style-singleton/dist/es5/hook.d.ts +0 -23
  1702. package/node_modules/react-style-singleton/dist/es5/hook.js +0 -27
  1703. package/node_modules/react-style-singleton/dist/es5/index.d.ts +0 -3
  1704. package/node_modules/react-style-singleton/dist/es5/index.js +0 -9
  1705. package/node_modules/react-style-singleton/dist/es5/singleton.d.ts +0 -4
  1706. package/node_modules/react-style-singleton/dist/es5/singleton.js +0 -52
  1707. package/node_modules/react-style-singleton/dist/index.js +0 -1
  1708. package/node_modules/react-style-singleton/package.json +0 -87
  1709. package/node_modules/regenerator-runtime/LICENSE +0 -21
  1710. package/node_modules/regenerator-runtime/README.md +0 -31
  1711. package/node_modules/regenerator-runtime/package.json +0 -19
  1712. package/node_modules/regenerator-runtime/path.js +0 -11
  1713. package/node_modules/regenerator-runtime/runtime.js +0 -761
  1714. package/node_modules/remix-utils/.eslintrc.cjs +0 -54
  1715. package/node_modules/remix-utils/LICENSE +0 -21
  1716. package/node_modules/remix-utils/README.md +0 -2149
  1717. package/node_modules/remix-utils/build/client/cache-assets.d.ts +0 -22
  1718. package/node_modules/remix-utils/build/client/cache-assets.js +0 -66
  1719. package/node_modules/remix-utils/build/common/promise.d.ts +0 -87
  1720. package/node_modules/remix-utils/build/common/promise.js +0 -112
  1721. package/node_modules/remix-utils/build/common/timers.d.ts +0 -27
  1722. package/node_modules/remix-utils/build/common/timers.js +0 -47
  1723. package/node_modules/remix-utils/build/react/authenticity-token.d.ts +0 -50
  1724. package/node_modules/remix-utils/build/react/authenticity-token.js +0 -54
  1725. package/node_modules/remix-utils/build/react/client-only.d.ts +0 -27
  1726. package/node_modules/remix-utils/build/react/client-only.js +0 -20
  1727. package/node_modules/remix-utils/build/react/existing-search-params.d.ts +0 -34
  1728. package/node_modules/remix-utils/build/react/existing-search-params.js +0 -32
  1729. package/node_modules/remix-utils/build/react/external-scripts.d.ts +0 -91
  1730. package/node_modules/remix-utils/build/react/external-scripts.js +0 -106
  1731. package/node_modules/remix-utils/build/react/fetcher-type.d.ts +0 -31
  1732. package/node_modules/remix-utils/build/react/fetcher-type.js +0 -53
  1733. package/node_modules/remix-utils/build/react/handle-conventions.d.ts +0 -10
  1734. package/node_modules/remix-utils/build/react/handle-conventions.js +0 -1
  1735. package/node_modules/remix-utils/build/react/honeypot.d.ts +0 -11
  1736. package/node_modules/remix-utils/build/react/honeypot.js +0 -16
  1737. package/node_modules/remix-utils/build/react/server-only.d.ts +0 -25
  1738. package/node_modules/remix-utils/build/react/server-only.js +0 -18
  1739. package/node_modules/remix-utils/build/react/use-debounce-fetcher.d.ts +0 -28
  1740. package/node_modules/remix-utils/build/react/use-debounce-fetcher.js +0 -27
  1741. package/node_modules/remix-utils/build/react/use-debounce-submit.d.ts +0 -7
  1742. package/node_modules/remix-utils/build/react/use-debounce-submit.js +0 -41
  1743. package/node_modules/remix-utils/build/react/use-delegated-anchors.d.ts +0 -6
  1744. package/node_modules/remix-utils/build/react/use-delegated-anchors.js +0 -69
  1745. package/node_modules/remix-utils/build/react/use-event-source.d.ts +0 -17
  1746. package/node_modules/remix-utils/build/react/use-event-source.js +0 -37
  1747. package/node_modules/remix-utils/build/react/use-global-navigation-state.d.ts +0 -33
  1748. package/node_modules/remix-utils/build/react/use-global-navigation-state.js +0 -67
  1749. package/node_modules/remix-utils/build/react/use-hydrated.d.ts +0 -18
  1750. package/node_modules/remix-utils/build/react/use-hydrated.js +0 -24
  1751. package/node_modules/remix-utils/build/react/use-locales.d.ts +0 -24
  1752. package/node_modules/remix-utils/build/react/use-locales.js +0 -56
  1753. package/node_modules/remix-utils/build/react/use-should-hydrate.d.ts +0 -21
  1754. package/node_modules/remix-utils/build/react/use-should-hydrate.js +0 -44
  1755. package/node_modules/remix-utils/build/server/cors.d.ts +0 -101
  1756. package/node_modules/remix-utils/build/server/cors.js +0 -179
  1757. package/node_modules/remix-utils/build/server/csrf.d.ts +0 -85
  1758. package/node_modules/remix-utils/build/server/csrf.js +0 -121
  1759. package/node_modules/remix-utils/build/server/event-stream.d.ts +0 -27
  1760. package/node_modules/remix-utils/build/server/event-stream.js +0 -44
  1761. package/node_modules/remix-utils/build/server/get-client-ip-address.d.ts +0 -29
  1762. package/node_modules/remix-utils/build/server/get-client-ip-address.js +0 -51
  1763. package/node_modules/remix-utils/build/server/get-client-locales.d.ts +0 -18
  1764. package/node_modules/remix-utils/build/server/get-client-locales.js +0 -18
  1765. package/node_modules/remix-utils/build/server/get-headers.d.ts +0 -6
  1766. package/node_modules/remix-utils/build/server/get-headers.js +0 -11
  1767. package/node_modules/remix-utils/build/server/honeypot.d.ts +0 -32
  1768. package/node_modules/remix-utils/build/server/honeypot.js +0 -96
  1769. package/node_modules/remix-utils/build/server/is-prefetch.d.ts +0 -16
  1770. package/node_modules/remix-utils/build/server/is-prefetch.js +0 -11
  1771. package/node_modules/remix-utils/build/server/json-hash.d.ts +0 -6
  1772. package/node_modules/remix-utils/build/server/json-hash.js +0 -16
  1773. package/node_modules/remix-utils/build/server/named-action.d.ts +0 -19
  1774. package/node_modules/remix-utils/build/server/named-action.js +0 -62
  1775. package/node_modules/remix-utils/build/server/parse-accept-header.d.ts +0 -12
  1776. package/node_modules/remix-utils/build/server/parse-accept-header.js +0 -17
  1777. package/node_modules/remix-utils/build/server/preload-route-assets.d.ts +0 -80
  1778. package/node_modules/remix-utils/build/server/preload-route-assets.js +0 -120
  1779. package/node_modules/remix-utils/build/server/redirect-back.d.ts +0 -18
  1780. package/node_modules/remix-utils/build/server/redirect-back.js +0 -29
  1781. package/node_modules/remix-utils/build/server/respond-to.d.ts +0 -40
  1782. package/node_modules/remix-utils/build/server/respond-to.js +0 -22
  1783. package/node_modules/remix-utils/build/server/responses.d.ts +0 -100
  1784. package/node_modules/remix-utils/build/server/responses.js +0 -167
  1785. package/node_modules/remix-utils/build/server/rolling-cookie.d.ts +0 -4
  1786. package/node_modules/remix-utils/build/server/rolling-cookie.js +0 -9
  1787. package/node_modules/remix-utils/build/server/safe-redirect.d.ts +0 -10
  1788. package/node_modules/remix-utils/build/server/safe-redirect.js +0 -22
  1789. package/node_modules/remix-utils/build/server/sec-fetch.d.ts +0 -43
  1790. package/node_modules/remix-utils/build/server/sec-fetch.js +0 -67
  1791. package/node_modules/remix-utils/build/server/typed-cookie.d.ts +0 -17
  1792. package/node_modules/remix-utils/build/server/typed-cookie.js +0 -58
  1793. package/node_modules/remix-utils/build/server/typed-session.d.ts +0 -59
  1794. package/node_modules/remix-utils/build/server/typed-session.js +0 -88
  1795. package/node_modules/remix-utils/package.json +0 -182
  1796. package/node_modules/remix-utils/scripts/check-pkg-exports.ts +0 -61
  1797. package/node_modules/set-cookie-parser/LICENSE +0 -21
  1798. package/node_modules/set-cookie-parser/README.md +0 -199
  1799. package/node_modules/set-cookie-parser/lib/set-cookie.js +0 -226
  1800. package/node_modules/set-cookie-parser/package.json +0 -43
  1801. package/node_modules/source-map/LICENSE +0 -28
  1802. package/node_modules/source-map/README.md +0 -742
  1803. package/node_modules/source-map/dist/source-map.debug.js +0 -3234
  1804. package/node_modules/source-map/dist/source-map.js +0 -3233
  1805. package/node_modules/source-map/dist/source-map.min.js +0 -2
  1806. package/node_modules/source-map/dist/source-map.min.js.map +0 -1
  1807. package/node_modules/source-map/lib/array-set.js +0 -121
  1808. package/node_modules/source-map/lib/base64-vlq.js +0 -140
  1809. package/node_modules/source-map/lib/base64.js +0 -67
  1810. package/node_modules/source-map/lib/binary-search.js +0 -111
  1811. package/node_modules/source-map/lib/mapping-list.js +0 -79
  1812. package/node_modules/source-map/lib/mappings.wasm +0 -0
  1813. package/node_modules/source-map/lib/quick-sort.js +0 -114
  1814. package/node_modules/source-map/lib/read-wasm.js +0 -49
  1815. package/node_modules/source-map/lib/source-map-consumer.js +0 -1145
  1816. package/node_modules/source-map/lib/source-map-generator.js +0 -425
  1817. package/node_modules/source-map/lib/source-node.js +0 -413
  1818. package/node_modules/source-map/lib/util.js +0 -488
  1819. package/node_modules/source-map/lib/wasm.js +0 -107
  1820. package/node_modules/source-map/package.json +0 -73
  1821. package/node_modules/source-map/source-map.d.ts +0 -98
  1822. package/node_modules/source-map/source-map.js +0 -8
  1823. package/node_modules/tailwind-merge/LICENSE.md +0 -21
  1824. package/node_modules/tailwind-merge/README.md +0 -38
  1825. package/node_modules/tailwind-merge/dist/bundle-cjs.js +0 -2595
  1826. package/node_modules/tailwind-merge/dist/bundle-cjs.js.map +0 -1
  1827. package/node_modules/tailwind-merge/dist/bundle-mjs.mjs +0 -2583
  1828. package/node_modules/tailwind-merge/dist/bundle-mjs.mjs.map +0 -1
  1829. package/node_modules/tailwind-merge/dist/es5/bundle-cjs.js +0 -2645
  1830. package/node_modules/tailwind-merge/dist/es5/bundle-cjs.js.map +0 -1
  1831. package/node_modules/tailwind-merge/dist/es5/bundle-mjs.mjs +0 -2633
  1832. package/node_modules/tailwind-merge/dist/es5/bundle-mjs.mjs.map +0 -1
  1833. package/node_modules/tailwind-merge/dist/types.d.ts +0 -2143
  1834. package/node_modules/tailwind-merge/package.json +0 -95
  1835. package/node_modules/tailwind-merge/src/index.ts +0 -14
  1836. package/node_modules/tailwind-merge/src/lib/class-utils.ts +0 -215
  1837. package/node_modules/tailwind-merge/src/lib/config-utils.ts +0 -14
  1838. package/node_modules/tailwind-merge/src/lib/create-tailwind-merge.ts +0 -50
  1839. package/node_modules/tailwind-merge/src/lib/default-config.ts +0 -1865
  1840. package/node_modules/tailwind-merge/src/lib/extend-tailwind-merge.ts +0 -26
  1841. package/node_modules/tailwind-merge/src/lib/from-theme.ts +0 -13
  1842. package/node_modules/tailwind-merge/src/lib/lru-cache.ts +0 -52
  1843. package/node_modules/tailwind-merge/src/lib/merge-classlist.ts +0 -99
  1844. package/node_modules/tailwind-merge/src/lib/merge-configs.ts +0 -72
  1845. package/node_modules/tailwind-merge/src/lib/modifier-utils.ts +0 -95
  1846. package/node_modules/tailwind-merge/src/lib/tw-join.ts +0 -50
  1847. package/node_modules/tailwind-merge/src/lib/tw-merge.ts +0 -4
  1848. package/node_modules/tailwind-merge/src/lib/types.ts +0 -412
  1849. package/node_modules/tailwind-merge/src/lib/validators.ts +0 -104
  1850. package/node_modules/tslib/CopyrightNotice.txt +0 -15
  1851. package/node_modules/tslib/LICENSE.txt +0 -12
  1852. package/node_modules/tslib/README.md +0 -164
  1853. package/node_modules/tslib/SECURITY.md +0 -41
  1854. package/node_modules/tslib/modules/index.d.ts +0 -37
  1855. package/node_modules/tslib/modules/index.js +0 -68
  1856. package/node_modules/tslib/modules/package.json +0 -3
  1857. package/node_modules/tslib/package.json +0 -47
  1858. package/node_modules/tslib/tslib.d.ts +0 -453
  1859. package/node_modules/tslib/tslib.es6.html +0 -1
  1860. package/node_modules/tslib/tslib.es6.js +0 -374
  1861. package/node_modules/tslib/tslib.es6.mjs +0 -373
  1862. package/node_modules/tslib/tslib.html +0 -1
  1863. package/node_modules/tslib/tslib.js +0 -424
  1864. package/node_modules/turbo-stream/LICENSE +0 -7
  1865. package/node_modules/turbo-stream/README.md +0 -31
  1866. package/node_modules/turbo-stream/dist/flatten.d.ts +0 -2
  1867. package/node_modules/turbo-stream/dist/flatten.js +0 -172
  1868. package/node_modules/turbo-stream/dist/turbo-stream.d.ts +0 -12
  1869. package/node_modules/turbo-stream/dist/turbo-stream.js +0 -202
  1870. package/node_modules/turbo-stream/dist/turbo-stream.mjs +0 -530
  1871. package/node_modules/turbo-stream/dist/unflatten.d.ts +0 -2
  1872. package/node_modules/turbo-stream/dist/unflatten.js +0 -127
  1873. package/node_modules/turbo-stream/dist/utils.d.ts +0 -43
  1874. package/node_modules/turbo-stream/dist/utils.js +0 -55
  1875. package/node_modules/turbo-stream/package.json +0 -50
  1876. package/node_modules/type-fest/index.d.ts +0 -160
  1877. package/node_modules/type-fest/package.json +0 -72
  1878. package/node_modules/type-fest/readme.md +0 -992
  1879. package/node_modules/type-fest/source/and.d.ts +0 -25
  1880. package/node_modules/type-fest/source/array-indices.d.ts +0 -23
  1881. package/node_modules/type-fest/source/array-slice.d.ts +0 -107
  1882. package/node_modules/type-fest/source/array-splice.d.ts +0 -97
  1883. package/node_modules/type-fest/source/array-values.d.ts +0 -22
  1884. package/node_modules/type-fest/source/async-return-type.d.ts +0 -23
  1885. package/node_modules/type-fest/source/asyncify.d.ts +0 -32
  1886. package/node_modules/type-fest/source/basic.d.ts +0 -68
  1887. package/node_modules/type-fest/source/camel-case.d.ts +0 -80
  1888. package/node_modules/type-fest/source/camel-cased-properties-deep.d.ts +0 -87
  1889. package/node_modules/type-fest/source/camel-cased-properties.d.ts +0 -36
  1890. package/node_modules/type-fest/source/conditional-except.d.ts +0 -45
  1891. package/node_modules/type-fest/source/conditional-keys.d.ts +0 -47
  1892. package/node_modules/type-fest/source/conditional-pick-deep.d.ts +0 -104
  1893. package/node_modules/type-fest/source/conditional-pick.d.ts +0 -44
  1894. package/node_modules/type-fest/source/conditional-simplify.d.ts +0 -32
  1895. package/node_modules/type-fest/source/delimiter-case.d.ts +0 -99
  1896. package/node_modules/type-fest/source/delimiter-cased-properties-deep.d.ts +0 -84
  1897. package/node_modules/type-fest/source/delimiter-cased-properties.d.ts +0 -37
  1898. package/node_modules/type-fest/source/distributed-omit.d.ts +0 -89
  1899. package/node_modules/type-fest/source/distributed-pick.d.ts +0 -85
  1900. package/node_modules/type-fest/source/empty-object.d.ts +0 -46
  1901. package/node_modules/type-fest/source/enforce-optional.d.ts +0 -47
  1902. package/node_modules/type-fest/source/entries.d.ts +0 -62
  1903. package/node_modules/type-fest/source/entry.d.ts +0 -65
  1904. package/node_modules/type-fest/source/exact.d.ts +0 -63
  1905. package/node_modules/type-fest/source/except.d.ts +0 -80
  1906. package/node_modules/type-fest/source/fixed-length-array.d.ts +0 -43
  1907. package/node_modules/type-fest/source/get.d.ts +0 -191
  1908. package/node_modules/type-fest/source/global-this.d.ts +0 -21
  1909. package/node_modules/type-fest/source/greater-than-or-equal.d.ts +0 -22
  1910. package/node_modules/type-fest/source/greater-than.d.ts +0 -51
  1911. package/node_modules/type-fest/source/has-optional-keys.d.ts +0 -21
  1912. package/node_modules/type-fest/source/has-readonly-keys.d.ts +0 -21
  1913. package/node_modules/type-fest/source/has-required-keys.d.ts +0 -59
  1914. package/node_modules/type-fest/source/has-writable-keys.d.ts +0 -21
  1915. package/node_modules/type-fest/source/if-any.d.ts +0 -24
  1916. package/node_modules/type-fest/source/if-empty-object.d.ts +0 -26
  1917. package/node_modules/type-fest/source/if-never.d.ts +0 -24
  1918. package/node_modules/type-fest/source/if-null.d.ts +0 -24
  1919. package/node_modules/type-fest/source/if-unknown.d.ts +0 -24
  1920. package/node_modules/type-fest/source/includes.d.ts +0 -22
  1921. package/node_modules/type-fest/source/int-range.d.ts +0 -53
  1922. package/node_modules/type-fest/source/internal.d.ts +0 -783
  1923. package/node_modules/type-fest/source/invariant-of.d.ts +0 -78
  1924. package/node_modules/type-fest/source/is-any.d.ts +0 -29
  1925. package/node_modules/type-fest/source/is-equal.d.ts +0 -31
  1926. package/node_modules/type-fest/source/is-float.d.ts +0 -33
  1927. package/node_modules/type-fest/source/is-integer.d.ts +0 -48
  1928. package/node_modules/type-fest/source/is-literal.d.ts +0 -258
  1929. package/node_modules/type-fest/source/is-never.d.ts +0 -42
  1930. package/node_modules/type-fest/source/is-null.d.ts +0 -20
  1931. package/node_modules/type-fest/source/is-unknown.d.ts +0 -52
  1932. package/node_modules/type-fest/source/iterable-element.d.ts +0 -54
  1933. package/node_modules/type-fest/source/join.d.ts +0 -68
  1934. package/node_modules/type-fest/source/jsonifiable.d.ts +0 -37
  1935. package/node_modules/type-fest/source/jsonify.d.ts +0 -121
  1936. package/node_modules/type-fest/source/kebab-case.d.ts +0 -38
  1937. package/node_modules/type-fest/source/kebab-cased-properties-deep.d.ts +0 -47
  1938. package/node_modules/type-fest/source/kebab-cased-properties.d.ts +0 -30
  1939. package/node_modules/type-fest/source/keys-of-union.d.ts +0 -40
  1940. package/node_modules/type-fest/source/last-array-element.d.ts +0 -38
  1941. package/node_modules/type-fest/source/less-than-or-equal.d.ts +0 -22
  1942. package/node_modules/type-fest/source/less-than.d.ts +0 -22
  1943. package/node_modules/type-fest/source/literal-to-primitive-deep.d.ts +0 -36
  1944. package/node_modules/type-fest/source/literal-to-primitive.d.ts +0 -36
  1945. package/node_modules/type-fest/source/literal-union.d.ts +0 -35
  1946. package/node_modules/type-fest/source/merge-deep.d.ts +0 -486
  1947. package/node_modules/type-fest/source/merge-exclusive.d.ts +0 -41
  1948. package/node_modules/type-fest/source/merge.d.ts +0 -48
  1949. package/node_modules/type-fest/source/multidimensional-array.d.ts +0 -44
  1950. package/node_modules/type-fest/source/multidimensional-readonly-array.d.ts +0 -48
  1951. package/node_modules/type-fest/source/non-empty-object.d.ts +0 -35
  1952. package/node_modules/type-fest/source/numeric.d.ts +0 -222
  1953. package/node_modules/type-fest/source/observable-like.d.ts +0 -63
  1954. package/node_modules/type-fest/source/omit-deep.d.ts +0 -140
  1955. package/node_modules/type-fest/source/omit-index-signature.d.ts +0 -107
  1956. package/node_modules/type-fest/source/opaque.d.ts +0 -252
  1957. package/node_modules/type-fest/source/optional-keys-of.d.ts +0 -38
  1958. package/node_modules/type-fest/source/or.d.ts +0 -25
  1959. package/node_modules/type-fest/source/override-properties.d.ts +0 -36
  1960. package/node_modules/type-fest/source/package-json.d.ts +0 -676
  1961. package/node_modules/type-fest/source/partial-deep.d.ts +0 -109
  1962. package/node_modules/type-fest/source/partial-on-undefined-deep.d.ts +0 -71
  1963. package/node_modules/type-fest/source/pascal-case.d.ts +0 -38
  1964. package/node_modules/type-fest/source/pascal-cased-properties-deep.d.ts +0 -55
  1965. package/node_modules/type-fest/source/pascal-cased-properties.d.ts +0 -35
  1966. package/node_modules/type-fest/source/paths.d.ts +0 -85
  1967. package/node_modules/type-fest/source/pick-deep.d.ts +0 -149
  1968. package/node_modules/type-fest/source/pick-index-signature.d.ts +0 -102
  1969. package/node_modules/type-fest/source/primitive.d.ts +0 -13
  1970. package/node_modules/type-fest/source/promisable.d.ts +0 -25
  1971. package/node_modules/type-fest/source/readonly-deep.d.ts +0 -81
  1972. package/node_modules/type-fest/source/readonly-keys-of.d.ts +0 -29
  1973. package/node_modules/type-fest/source/readonly-tuple.d.ts +0 -41
  1974. package/node_modules/type-fest/source/replace.d.ts +0 -67
  1975. package/node_modules/type-fest/source/require-all-or-none.d.ts +0 -42
  1976. package/node_modules/type-fest/source/require-at-least-one.d.ts +0 -34
  1977. package/node_modules/type-fest/source/require-exactly-one.d.ts +0 -34
  1978. package/node_modules/type-fest/source/require-one-or-none.d.ts +0 -37
  1979. package/node_modules/type-fest/source/required-deep.d.ts +0 -78
  1980. package/node_modules/type-fest/source/required-keys-of.d.ts +0 -29
  1981. package/node_modules/type-fest/source/schema.d.ts +0 -71
  1982. package/node_modules/type-fest/source/screaming-snake-case.d.ts +0 -33
  1983. package/node_modules/type-fest/source/set-field-type.d.ts +0 -37
  1984. package/node_modules/type-fest/source/set-non-nullable.d.ts +0 -39
  1985. package/node_modules/type-fest/source/set-optional.d.ts +0 -35
  1986. package/node_modules/type-fest/source/set-parameter-type.d.ts +0 -117
  1987. package/node_modules/type-fest/source/set-readonly.d.ts +0 -38
  1988. package/node_modules/type-fest/source/set-required.d.ts +0 -40
  1989. package/node_modules/type-fest/source/set-return-type.d.ts +0 -29
  1990. package/node_modules/type-fest/source/shared-union-fields-deep.d.ts +0 -168
  1991. package/node_modules/type-fest/source/simplify-deep.d.ts +0 -115
  1992. package/node_modules/type-fest/source/simplify.d.ts +0 -58
  1993. package/node_modules/type-fest/source/single-key-object.d.ts +0 -29
  1994. package/node_modules/type-fest/source/snake-case.d.ts +0 -38
  1995. package/node_modules/type-fest/source/snake-cased-properties-deep.d.ts +0 -47
  1996. package/node_modules/type-fest/source/snake-cased-properties.d.ts +0 -30
  1997. package/node_modules/type-fest/source/split-words.d.ts +0 -57
  1998. package/node_modules/type-fest/source/split.d.ts +0 -29
  1999. package/node_modules/type-fest/source/spread.d.ts +0 -85
  2000. package/node_modules/type-fest/source/string-key-of.d.ts +0 -25
  2001. package/node_modules/type-fest/source/string-slice.d.ts +0 -37
  2002. package/node_modules/type-fest/source/stringified.d.ts +0 -23
  2003. package/node_modules/type-fest/source/subtract.d.ts +0 -70
  2004. package/node_modules/type-fest/source/sum.d.ts +0 -70
  2005. package/node_modules/type-fest/source/tagged-union.d.ts +0 -51
  2006. package/node_modules/type-fest/source/trim.d.ts +0 -27
  2007. package/node_modules/type-fest/source/tsconfig-json.d.ts +0 -1198
  2008. package/node_modules/type-fest/source/tuple-to-union.d.ts +0 -51
  2009. package/node_modules/type-fest/source/typed-array.d.ts +0 -17
  2010. package/node_modules/type-fest/source/undefined-on-partial-deep.d.ts +0 -81
  2011. package/node_modules/type-fest/source/union-to-intersection.d.ts +0 -61
  2012. package/node_modules/type-fest/source/unknown-array.d.ts +0 -25
  2013. package/node_modules/type-fest/source/unknown-record.d.ts +0 -31
  2014. package/node_modules/type-fest/source/value-of.d.ts +0 -42
  2015. package/node_modules/type-fest/source/writable-deep.d.ts +0 -83
  2016. package/node_modules/type-fest/source/writable-keys-of.d.ts +0 -30
  2017. package/node_modules/type-fest/source/writable.d.ts +0 -68
  2018. package/node_modules/use-callback-ref/LICENSE +0 -21
  2019. package/node_modules/use-callback-ref/README.md +0 -170
  2020. package/node_modules/use-callback-ref/dist/es2015/assignRef.d.ts +0 -15
  2021. package/node_modules/use-callback-ref/dist/es2015/assignRef.js +0 -22
  2022. package/node_modules/use-callback-ref/dist/es2015/createRef.d.ts +0 -10
  2023. package/node_modules/use-callback-ref/dist/es2015/createRef.js +0 -23
  2024. package/node_modules/use-callback-ref/dist/es2015/index.d.ts +0 -8
  2025. package/node_modules/use-callback-ref/dist/es2015/index.js +0 -12
  2026. package/node_modules/use-callback-ref/dist/es2015/mergeRef.d.ts +0 -16
  2027. package/node_modules/use-callback-ref/dist/es2015/mergeRef.js +0 -18
  2028. package/node_modules/use-callback-ref/dist/es2015/refToCallback.d.ts +0 -24
  2029. package/node_modules/use-callback-ref/dist/es2015/refToCallback.js +0 -48
  2030. package/node_modules/use-callback-ref/dist/es2015/transformRef.d.ts +0 -11
  2031. package/node_modules/use-callback-ref/dist/es2015/transformRef.js +0 -14
  2032. package/node_modules/use-callback-ref/dist/es2015/types.d.ts +0 -5
  2033. package/node_modules/use-callback-ref/dist/es2015/types.js +0 -1
  2034. package/node_modules/use-callback-ref/dist/es2015/useMergeRef.d.ts +0 -17
  2035. package/node_modules/use-callback-ref/dist/es2015/useMergeRef.js +0 -45
  2036. package/node_modules/use-callback-ref/dist/es2015/useRef.d.ts +0 -16
  2037. package/node_modules/use-callback-ref/dist/es2015/useRef.js +0 -39
  2038. package/node_modules/use-callback-ref/dist/es2015/useTransformRef.d.ts +0 -15
  2039. package/node_modules/use-callback-ref/dist/es2015/useTransformRef.js +0 -18
  2040. package/node_modules/use-callback-ref/dist/es2019/assignRef.d.ts +0 -15
  2041. package/node_modules/use-callback-ref/dist/es2019/assignRef.js +0 -22
  2042. package/node_modules/use-callback-ref/dist/es2019/createRef.d.ts +0 -10
  2043. package/node_modules/use-callback-ref/dist/es2019/createRef.js +0 -23
  2044. package/node_modules/use-callback-ref/dist/es2019/index.d.ts +0 -8
  2045. package/node_modules/use-callback-ref/dist/es2019/index.js +0 -12
  2046. package/node_modules/use-callback-ref/dist/es2019/mergeRef.d.ts +0 -16
  2047. package/node_modules/use-callback-ref/dist/es2019/mergeRef.js +0 -18
  2048. package/node_modules/use-callback-ref/dist/es2019/refToCallback.d.ts +0 -24
  2049. package/node_modules/use-callback-ref/dist/es2019/refToCallback.js +0 -48
  2050. package/node_modules/use-callback-ref/dist/es2019/transformRef.d.ts +0 -11
  2051. package/node_modules/use-callback-ref/dist/es2019/transformRef.js +0 -14
  2052. package/node_modules/use-callback-ref/dist/es2019/types.d.ts +0 -5
  2053. package/node_modules/use-callback-ref/dist/es2019/types.js +0 -1
  2054. package/node_modules/use-callback-ref/dist/es2019/useMergeRef.d.ts +0 -17
  2055. package/node_modules/use-callback-ref/dist/es2019/useMergeRef.js +0 -43
  2056. package/node_modules/use-callback-ref/dist/es2019/useRef.d.ts +0 -16
  2057. package/node_modules/use-callback-ref/dist/es2019/useRef.js +0 -39
  2058. package/node_modules/use-callback-ref/dist/es2019/useTransformRef.d.ts +0 -15
  2059. package/node_modules/use-callback-ref/dist/es2019/useTransformRef.js +0 -18
  2060. package/node_modules/use-callback-ref/dist/es5/assignRef.d.ts +0 -15
  2061. package/node_modules/use-callback-ref/dist/es5/assignRef.js +0 -26
  2062. package/node_modules/use-callback-ref/dist/es5/createRef.d.ts +0 -10
  2063. package/node_modules/use-callback-ref/dist/es5/createRef.js +0 -27
  2064. package/node_modules/use-callback-ref/dist/es5/index.d.ts +0 -8
  2065. package/node_modules/use-callback-ref/dist/es5/index.js +0 -24
  2066. package/node_modules/use-callback-ref/dist/es5/mergeRef.d.ts +0 -16
  2067. package/node_modules/use-callback-ref/dist/es5/mergeRef.js +0 -22
  2068. package/node_modules/use-callback-ref/dist/es5/refToCallback.d.ts +0 -24
  2069. package/node_modules/use-callback-ref/dist/es5/refToCallback.js +0 -53
  2070. package/node_modules/use-callback-ref/dist/es5/transformRef.d.ts +0 -11
  2071. package/node_modules/use-callback-ref/dist/es5/transformRef.js +0 -18
  2072. package/node_modules/use-callback-ref/dist/es5/types.d.ts +0 -5
  2073. package/node_modules/use-callback-ref/dist/es5/types.js +0 -2
  2074. package/node_modules/use-callback-ref/dist/es5/useMergeRef.d.ts +0 -17
  2075. package/node_modules/use-callback-ref/dist/es5/useMergeRef.js +0 -50
  2076. package/node_modules/use-callback-ref/dist/es5/useRef.d.ts +0 -16
  2077. package/node_modules/use-callback-ref/dist/es5/useRef.js +0 -43
  2078. package/node_modules/use-callback-ref/dist/es5/useTransformRef.d.ts +0 -15
  2079. package/node_modules/use-callback-ref/dist/es5/useTransformRef.js +0 -22
  2080. package/node_modules/use-callback-ref/package.json +0 -84
  2081. package/node_modules/use-sidecar/LICENSE +0 -21
  2082. package/node_modules/use-sidecar/README.md +0 -349
  2083. package/node_modules/use-sidecar/dist/es2015/config.d.ts +0 -5
  2084. package/node_modules/use-sidecar/dist/es2015/config.js +0 -6
  2085. package/node_modules/use-sidecar/dist/es2015/env.d.ts +0 -4
  2086. package/node_modules/use-sidecar/dist/es2015/env.js +0 -5
  2087. package/node_modules/use-sidecar/dist/es2015/exports.d.ts +0 -3
  2088. package/node_modules/use-sidecar/dist/es2015/exports.js +0 -18
  2089. package/node_modules/use-sidecar/dist/es2015/hoc.d.ts +0 -3
  2090. package/node_modules/use-sidecar/dist/es2015/hoc.js +0 -15
  2091. package/node_modules/use-sidecar/dist/es2015/hook.d.ts +0 -2
  2092. package/node_modules/use-sidecar/dist/es2015/hook.js +0 -41
  2093. package/node_modules/use-sidecar/dist/es2015/index.d.ts +0 -7
  2094. package/node_modules/use-sidecar/dist/es2015/index.js +0 -6
  2095. package/node_modules/use-sidecar/dist/es2015/medium.d.ts +0 -3
  2096. package/node_modules/use-sidecar/dist/es2015/medium.js +0 -78
  2097. package/node_modules/use-sidecar/dist/es2015/renderProp.d.ts +0 -8
  2098. package/node_modules/use-sidecar/dist/es2015/renderProp.js +0 -35
  2099. package/node_modules/use-sidecar/dist/es2015/types.d.ts +0 -47
  2100. package/node_modules/use-sidecar/dist/es2015/types.js +0 -1
  2101. package/node_modules/use-sidecar/dist/es2019/config.d.ts +0 -5
  2102. package/node_modules/use-sidecar/dist/es2019/config.js +0 -6
  2103. package/node_modules/use-sidecar/dist/es2019/env.d.ts +0 -4
  2104. package/node_modules/use-sidecar/dist/es2019/env.js +0 -5
  2105. package/node_modules/use-sidecar/dist/es2019/exports.d.ts +0 -3
  2106. package/node_modules/use-sidecar/dist/es2019/exports.js +0 -16
  2107. package/node_modules/use-sidecar/dist/es2019/hoc.d.ts +0 -3
  2108. package/node_modules/use-sidecar/dist/es2019/hoc.js +0 -14
  2109. package/node_modules/use-sidecar/dist/es2019/hook.d.ts +0 -2
  2110. package/node_modules/use-sidecar/dist/es2019/hook.js +0 -41
  2111. package/node_modules/use-sidecar/dist/es2019/index.d.ts +0 -7
  2112. package/node_modules/use-sidecar/dist/es2019/index.js +0 -6
  2113. package/node_modules/use-sidecar/dist/es2019/medium.d.ts +0 -3
  2114. package/node_modules/use-sidecar/dist/es2019/medium.js +0 -78
  2115. package/node_modules/use-sidecar/dist/es2019/renderProp.d.ts +0 -8
  2116. package/node_modules/use-sidecar/dist/es2019/renderProp.js +0 -28
  2117. package/node_modules/use-sidecar/dist/es2019/types.d.ts +0 -47
  2118. package/node_modules/use-sidecar/dist/es2019/types.js +0 -1
  2119. package/node_modules/use-sidecar/dist/es5/config.d.ts +0 -5
  2120. package/node_modules/use-sidecar/dist/es5/config.js +0 -10
  2121. package/node_modules/use-sidecar/dist/es5/env.d.ts +0 -4
  2122. package/node_modules/use-sidecar/dist/es5/env.js +0 -8
  2123. package/node_modules/use-sidecar/dist/es5/exports.d.ts +0 -3
  2124. package/node_modules/use-sidecar/dist/es5/exports.js +0 -22
  2125. package/node_modules/use-sidecar/dist/es5/hoc.d.ts +0 -3
  2126. package/node_modules/use-sidecar/dist/es5/hoc.js +0 -19
  2127. package/node_modules/use-sidecar/dist/es5/hook.d.ts +0 -2
  2128. package/node_modules/use-sidecar/dist/es5/hook.js +0 -45
  2129. package/node_modules/use-sidecar/dist/es5/index.d.ts +0 -7
  2130. package/node_modules/use-sidecar/dist/es5/index.js +0 -16
  2131. package/node_modules/use-sidecar/dist/es5/medium.d.ts +0 -3
  2132. package/node_modules/use-sidecar/dist/es5/medium.js +0 -83
  2133. package/node_modules/use-sidecar/dist/es5/renderProp.d.ts +0 -8
  2134. package/node_modules/use-sidecar/dist/es5/renderProp.js +0 -39
  2135. package/node_modules/use-sidecar/dist/es5/types.d.ts +0 -47
  2136. package/node_modules/use-sidecar/dist/es5/types.js +0 -2
  2137. package/node_modules/use-sidecar/package.json +0 -89
  2138. package/node_modules/zod/LICENSE +0 -21
  2139. package/node_modules/zod/README.md +0 -2876
  2140. package/node_modules/zod/index.d.ts +0 -2
  2141. package/node_modules/zod/lib/ZodError.d.ts +0 -164
  2142. package/node_modules/zod/lib/ZodError.js +0 -137
  2143. package/node_modules/zod/lib/__tests__/Mocker.d.ts +0 -17
  2144. package/node_modules/zod/lib/__tests__/Mocker.js +0 -57
  2145. package/node_modules/zod/lib/benchmarks/datetime.d.ts +0 -5
  2146. package/node_modules/zod/lib/benchmarks/datetime.js +0 -54
  2147. package/node_modules/zod/lib/benchmarks/discriminatedUnion.d.ts +0 -5
  2148. package/node_modules/zod/lib/benchmarks/discriminatedUnion.js +0 -79
  2149. package/node_modules/zod/lib/benchmarks/index.d.ts +0 -1
  2150. package/node_modules/zod/lib/benchmarks/index.js +0 -59
  2151. package/node_modules/zod/lib/benchmarks/ipv4.d.ts +0 -5
  2152. package/node_modules/zod/lib/benchmarks/ipv4.js +0 -54
  2153. package/node_modules/zod/lib/benchmarks/object.d.ts +0 -5
  2154. package/node_modules/zod/lib/benchmarks/object.js +0 -70
  2155. package/node_modules/zod/lib/benchmarks/primitives.d.ts +0 -5
  2156. package/node_modules/zod/lib/benchmarks/primitives.js +0 -170
  2157. package/node_modules/zod/lib/benchmarks/realworld.d.ts +0 -5
  2158. package/node_modules/zod/lib/benchmarks/realworld.js +0 -56
  2159. package/node_modules/zod/lib/benchmarks/string.d.ts +0 -5
  2160. package/node_modules/zod/lib/benchmarks/string.js +0 -55
  2161. package/node_modules/zod/lib/benchmarks/union.d.ts +0 -5
  2162. package/node_modules/zod/lib/benchmarks/union.js +0 -79
  2163. package/node_modules/zod/lib/errors.d.ts +0 -5
  2164. package/node_modules/zod/lib/errors.js +0 -17
  2165. package/node_modules/zod/lib/external.d.ts +0 -6
  2166. package/node_modules/zod/lib/external.js +0 -18
  2167. package/node_modules/zod/lib/helpers/enumUtil.d.ts +0 -8
  2168. package/node_modules/zod/lib/helpers/enumUtil.js +0 -2
  2169. package/node_modules/zod/lib/helpers/errorUtil.d.ts +0 -9
  2170. package/node_modules/zod/lib/helpers/errorUtil.js +0 -8
  2171. package/node_modules/zod/lib/helpers/parseUtil.d.ts +0 -78
  2172. package/node_modules/zod/lib/helpers/parseUtil.js +0 -125
  2173. package/node_modules/zod/lib/helpers/partialUtil.d.ts +0 -8
  2174. package/node_modules/zod/lib/helpers/partialUtil.js +0 -2
  2175. package/node_modules/zod/lib/helpers/typeAliases.d.ts +0 -2
  2176. package/node_modules/zod/lib/helpers/typeAliases.js +0 -2
  2177. package/node_modules/zod/lib/helpers/util.d.ts +0 -82
  2178. package/node_modules/zod/lib/helpers/util.js +0 -142
  2179. package/node_modules/zod/lib/index.d.ts +0 -4
  2180. package/node_modules/zod/lib/index.js +0 -29
  2181. package/node_modules/zod/lib/index.mjs +0 -4236
  2182. package/node_modules/zod/lib/index.umd.js +0 -4351
  2183. package/node_modules/zod/lib/locales/en.d.ts +0 -3
  2184. package/node_modules/zod/lib/locales/en.js +0 -129
  2185. package/node_modules/zod/lib/types.d.ts +0 -1127
  2186. package/node_modules/zod/lib/types.js +0 -3677
  2187. package/node_modules/zod/package.json +0 -119
@@ -1,3933 +0,0 @@
1
- /*!
2
- * chai
3
- * http://chaijs.com
4
- * Copyright(c) 2011-2014 Jake Luer <jake@alogicalparadox.com>
5
- * MIT Licensed
6
- */
7
-
8
- import {Assertion} from '../assertion.js';
9
- import {AssertionError} from 'assertion-error';
10
- import * as _ from '../utils/index.js';
11
-
12
- const {flag} = _;
13
-
14
- /**
15
- * ### Language Chains
16
- *
17
- * The following are provided as chainable getters to improve the readability
18
- * of your assertions.
19
- *
20
- * **Chains**
21
- *
22
- * - to
23
- * - be
24
- * - been
25
- * - is
26
- * - that
27
- * - which
28
- * - and
29
- * - has
30
- * - have
31
- * - with
32
- * - at
33
- * - of
34
- * - same
35
- * - but
36
- * - does
37
- * - still
38
- * - also
39
- *
40
- * @name language chains
41
- * @namespace BDD
42
- * @public
43
- */
44
-
45
- [ 'to', 'be', 'been', 'is'
46
- , 'and', 'has', 'have', 'with'
47
- , 'that', 'which', 'at', 'of'
48
- , 'same', 'but', 'does', 'still', "also" ].forEach(function (chain) {
49
- Assertion.addProperty(chain);
50
- });
51
-
52
- /**
53
- * ### .not
54
- *
55
- * Negates all assertions that follow in the chain.
56
- *
57
- * expect(function () {}).to.not.throw();
58
- * expect({a: 1}).to.not.have.property('b');
59
- * expect([1, 2]).to.be.an('array').that.does.not.include(3);
60
- *
61
- * Just because you can negate any assertion with `.not` doesn't mean you
62
- * should. With great power comes great responsibility. It's often best to
63
- * assert that the one expected output was produced, rather than asserting
64
- * that one of countless unexpected outputs wasn't produced. See individual
65
- * assertions for specific guidance.
66
- *
67
- * expect(2).to.equal(2); // Recommended
68
- * expect(2).to.not.equal(1); // Not recommended
69
- *
70
- * @name not
71
- * @namespace BDD
72
- * @public
73
- */
74
-
75
- Assertion.addProperty('not', function () {
76
- flag(this, 'negate', true);
77
- });
78
-
79
- /**
80
- * ### .deep
81
- *
82
- * Causes all `.equal`, `.include`, `.members`, `.keys`, and `.property`
83
- * assertions that follow in the chain to use deep equality instead of strict
84
- * (`===`) equality. See the `deep-eql` project page for info on the deep
85
- * equality algorithm: https://github.com/chaijs/deep-eql.
86
- *
87
- * // Target object deeply (but not strictly) equals `{a: 1}`
88
- * expect({a: 1}).to.deep.equal({a: 1});
89
- * expect({a: 1}).to.not.equal({a: 1});
90
- *
91
- * // Target array deeply (but not strictly) includes `{a: 1}`
92
- * expect([{a: 1}]).to.deep.include({a: 1});
93
- * expect([{a: 1}]).to.not.include({a: 1});
94
- *
95
- * // Target object deeply (but not strictly) includes `x: {a: 1}`
96
- * expect({x: {a: 1}}).to.deep.include({x: {a: 1}});
97
- * expect({x: {a: 1}}).to.not.include({x: {a: 1}});
98
- *
99
- * // Target array deeply (but not strictly) has member `{a: 1}`
100
- * expect([{a: 1}]).to.have.deep.members([{a: 1}]);
101
- * expect([{a: 1}]).to.not.have.members([{a: 1}]);
102
- *
103
- * // Target set deeply (but not strictly) has key `{a: 1}`
104
- * expect(new Set([{a: 1}])).to.have.deep.keys([{a: 1}]);
105
- * expect(new Set([{a: 1}])).to.not.have.keys([{a: 1}]);
106
- *
107
- * // Target object deeply (but not strictly) has property `x: {a: 1}`
108
- * expect({x: {a: 1}}).to.have.deep.property('x', {a: 1});
109
- * expect({x: {a: 1}}).to.not.have.property('x', {a: 1});
110
- *
111
- * @name deep
112
- * @namespace BDD
113
- * @public
114
- */
115
-
116
- Assertion.addProperty('deep', function () {
117
- flag(this, 'deep', true);
118
- });
119
-
120
- /**
121
- * ### .nested
122
- *
123
- * Enables dot- and bracket-notation in all `.property` and `.include`
124
- * assertions that follow in the chain.
125
- *
126
- * expect({a: {b: ['x', 'y']}}).to.have.nested.property('a.b[1]');
127
- * expect({a: {b: ['x', 'y']}}).to.nested.include({'a.b[1]': 'y'});
128
- *
129
- * If `.` or `[]` are part of an actual property name, they can be escaped by
130
- * adding two backslashes before them.
131
- *
132
- * expect({'.a': {'[b]': 'x'}}).to.have.nested.property('\\.a.\\[b\\]');
133
- * expect({'.a': {'[b]': 'x'}}).to.nested.include({'\\.a.\\[b\\]': 'x'});
134
- *
135
- * `.nested` cannot be combined with `.own`.
136
- *
137
- * @name nested
138
- * @namespace BDD
139
- * @public
140
- */
141
-
142
- Assertion.addProperty('nested', function () {
143
- flag(this, 'nested', true);
144
- });
145
-
146
- /**
147
- * ### .own
148
- *
149
- * Causes all `.property` and `.include` assertions that follow in the chain
150
- * to ignore inherited properties.
151
- *
152
- * Object.prototype.b = 2;
153
- *
154
- * expect({a: 1}).to.have.own.property('a');
155
- * expect({a: 1}).to.have.property('b');
156
- * expect({a: 1}).to.not.have.own.property('b');
157
- *
158
- * expect({a: 1}).to.own.include({a: 1});
159
- * expect({a: 1}).to.include({b: 2}).but.not.own.include({b: 2});
160
- *
161
- * `.own` cannot be combined with `.nested`.
162
- *
163
- * @name own
164
- * @namespace BDD
165
- * @public
166
- */
167
-
168
- Assertion.addProperty('own', function () {
169
- flag(this, 'own', true);
170
- });
171
-
172
- /**
173
- * ### .ordered
174
- *
175
- * Causes all `.members` assertions that follow in the chain to require that
176
- * members be in the same order.
177
- *
178
- * expect([1, 2]).to.have.ordered.members([1, 2])
179
- * .but.not.have.ordered.members([2, 1]);
180
- *
181
- * When `.include` and `.ordered` are combined, the ordering begins at the
182
- * start of both arrays.
183
- *
184
- * expect([1, 2, 3]).to.include.ordered.members([1, 2])
185
- * .but.not.include.ordered.members([2, 3]);
186
- *
187
- * @name ordered
188
- * @namespace BDD
189
- * @public
190
- */
191
-
192
- Assertion.addProperty('ordered', function () {
193
- flag(this, 'ordered', true);
194
- });
195
-
196
- /**
197
- * ### .any
198
- *
199
- * Causes all `.keys` assertions that follow in the chain to only require that
200
- * the target have at least one of the given keys. This is the opposite of
201
- * `.all`, which requires that the target have all of the given keys.
202
- *
203
- * expect({a: 1, b: 2}).to.not.have.any.keys('c', 'd');
204
- *
205
- * See the `.keys` doc for guidance on when to use `.any` or `.all`.
206
- *
207
- * @name any
208
- * @namespace BDD
209
- * @public
210
- */
211
-
212
- Assertion.addProperty('any', function () {
213
- flag(this, 'any', true);
214
- flag(this, 'all', false);
215
- });
216
-
217
- /**
218
- * ### .all
219
- *
220
- * Causes all `.keys` assertions that follow in the chain to require that the
221
- * target have all of the given keys. This is the opposite of `.any`, which
222
- * only requires that the target have at least one of the given keys.
223
- *
224
- * expect({a: 1, b: 2}).to.have.all.keys('a', 'b');
225
- *
226
- * Note that `.all` is used by default when neither `.all` nor `.any` are
227
- * added earlier in the chain. However, it's often best to add `.all` anyway
228
- * because it improves readability.
229
- *
230
- * See the `.keys` doc for guidance on when to use `.any` or `.all`.
231
- *
232
- * @name all
233
- * @namespace BDD
234
- * @public
235
- */
236
-
237
- Assertion.addProperty('all', function () {
238
- flag(this, 'all', true);
239
- flag(this, 'any', false);
240
- });
241
-
242
- const functionTypes = {
243
- 'function': ['function', 'asyncfunction', 'generatorfunction', 'asyncgeneratorfunction'],
244
- 'asyncfunction': ['asyncfunction', 'asyncgeneratorfunction'],
245
- 'generatorfunction': ['generatorfunction', 'asyncgeneratorfunction'],
246
- 'asyncgeneratorfunction': ['asyncgeneratorfunction']
247
- }
248
-
249
- /**
250
- * ### .a(type[, msg])
251
- *
252
- * Asserts that the target's type is equal to the given string `type`. Types
253
- * are case insensitive. See the utility file `./type-detect.js` for info on the
254
- * type detection algorithm.
255
- *
256
- * expect('foo').to.be.a('string');
257
- * expect({a: 1}).to.be.an('object');
258
- * expect(null).to.be.a('null');
259
- * expect(undefined).to.be.an('undefined');
260
- * expect(new Error).to.be.an('error');
261
- * expect(Promise.resolve()).to.be.a('promise');
262
- * expect(new Float32Array).to.be.a('float32array');
263
- * expect(Symbol()).to.be.a('symbol');
264
- *
265
- * `.a` supports objects that have a custom type set via `Symbol.toStringTag`.
266
- *
267
- * var myObj = {
268
- * [Symbol.toStringTag]: 'myCustomType'
269
- * };
270
- *
271
- * expect(myObj).to.be.a('myCustomType').but.not.an('object');
272
- *
273
- * It's often best to use `.a` to check a target's type before making more
274
- * assertions on the same target. That way, you avoid unexpected behavior from
275
- * any assertion that does different things based on the target's type.
276
- *
277
- * expect([1, 2, 3]).to.be.an('array').that.includes(2);
278
- * expect([]).to.be.an('array').that.is.empty;
279
- *
280
- * Add `.not` earlier in the chain to negate `.a`. However, it's often best to
281
- * assert that the target is the expected type, rather than asserting that it
282
- * isn't one of many unexpected types.
283
- *
284
- * expect('foo').to.be.a('string'); // Recommended
285
- * expect('foo').to.not.be.an('array'); // Not recommended
286
- *
287
- * `.a` accepts an optional `msg` argument which is a custom error message to
288
- * show when the assertion fails. The message can also be given as the second
289
- * argument to `expect`.
290
- *
291
- * expect(1).to.be.a('string', 'nooo why fail??');
292
- * expect(1, 'nooo why fail??').to.be.a('string');
293
- *
294
- * `.a` can also be used as a language chain to improve the readability of
295
- * your assertions.
296
- *
297
- * expect({b: 2}).to.have.a.property('b');
298
- *
299
- * The alias `.an` can be used interchangeably with `.a`.
300
- *
301
- * @name a
302
- * @alias an
303
- * @param {string} type
304
- * @param {string} msg _optional_
305
- * @namespace BDD
306
- * @public
307
- */
308
- function an (type, msg) {
309
- if (msg) flag(this, 'message', msg);
310
- type = type.toLowerCase();
311
- var obj = flag(this, 'object')
312
- , article = ~[ 'a', 'e', 'i', 'o', 'u' ].indexOf(type.charAt(0)) ? 'an ' : 'a ';
313
-
314
- const detectedType = _.type(obj).toLowerCase();
315
-
316
- if (functionTypes['function'].includes(type)) {
317
- this.assert(
318
- functionTypes[type].includes(detectedType)
319
- , 'expected #{this} to be ' + article + type
320
- , 'expected #{this} not to be ' + article + type
321
- );
322
- } else {
323
- this.assert(
324
- type === detectedType
325
- , 'expected #{this} to be ' + article + type
326
- , 'expected #{this} not to be ' + article + type
327
- );
328
- }
329
- }
330
-
331
- Assertion.addChainableMethod('an', an);
332
- Assertion.addChainableMethod('a', an);
333
-
334
- /**
335
- *
336
- * @param {unknown} a
337
- * @param {unknown} b
338
- * @returns {boolean}
339
- */
340
- function SameValueZero(a, b) {
341
- return (_.isNaN(a) && _.isNaN(b)) || a === b;
342
- }
343
-
344
- /**
345
- *
346
- */
347
- function includeChainingBehavior () {
348
- flag(this, 'contains', true);
349
- }
350
-
351
- /**
352
- * ### .include(val[, msg])
353
- *
354
- * When the target is a string, `.include` asserts that the given string `val`
355
- * is a substring of the target.
356
- *
357
- * expect('foobar').to.include('foo');
358
- *
359
- * When the target is an array, `.include` asserts that the given `val` is a
360
- * member of the target.
361
- *
362
- * expect([1, 2, 3]).to.include(2);
363
- *
364
- * When the target is an object, `.include` asserts that the given object
365
- * `val`'s properties are a subset of the target's properties.
366
- *
367
- * expect({a: 1, b: 2, c: 3}).to.include({a: 1, b: 2});
368
- *
369
- * When the target is a Set or WeakSet, `.include` asserts that the given `val` is a
370
- * member of the target. SameValueZero equality algorithm is used.
371
- *
372
- * expect(new Set([1, 2])).to.include(2);
373
- *
374
- * When the target is a Map, `.include` asserts that the given `val` is one of
375
- * the values of the target. SameValueZero equality algorithm is used.
376
- *
377
- * expect(new Map([['a', 1], ['b', 2]])).to.include(2);
378
- *
379
- * Because `.include` does different things based on the target's type, it's
380
- * important to check the target's type before using `.include`. See the `.a`
381
- * doc for info on testing a target's type.
382
- *
383
- * expect([1, 2, 3]).to.be.an('array').that.includes(2);
384
- *
385
- * By default, strict (`===`) equality is used to compare array members and
386
- * object properties. Add `.deep` earlier in the chain to use deep equality
387
- * instead (WeakSet targets are not supported). See the `deep-eql` project
388
- * page for info on the deep equality algorithm: https://github.com/chaijs/deep-eql.
389
- *
390
- * // Target array deeply (but not strictly) includes `{a: 1}`
391
- * expect([{a: 1}]).to.deep.include({a: 1});
392
- * expect([{a: 1}]).to.not.include({a: 1});
393
- *
394
- * // Target object deeply (but not strictly) includes `x: {a: 1}`
395
- * expect({x: {a: 1}}).to.deep.include({x: {a: 1}});
396
- * expect({x: {a: 1}}).to.not.include({x: {a: 1}});
397
- *
398
- * By default, all of the target's properties are searched when working with
399
- * objects. This includes properties that are inherited and/or non-enumerable.
400
- * Add `.own` earlier in the chain to exclude the target's inherited
401
- * properties from the search.
402
- *
403
- * Object.prototype.b = 2;
404
- *
405
- * expect({a: 1}).to.own.include({a: 1});
406
- * expect({a: 1}).to.include({b: 2}).but.not.own.include({b: 2});
407
- *
408
- * Note that a target object is always only searched for `val`'s own
409
- * enumerable properties.
410
- *
411
- * `.deep` and `.own` can be combined.
412
- *
413
- * expect({a: {b: 2}}).to.deep.own.include({a: {b: 2}});
414
- *
415
- * Add `.nested` earlier in the chain to enable dot- and bracket-notation when
416
- * referencing nested properties.
417
- *
418
- * expect({a: {b: ['x', 'y']}}).to.nested.include({'a.b[1]': 'y'});
419
- *
420
- * If `.` or `[]` are part of an actual property name, they can be escaped by
421
- * adding two backslashes before them.
422
- *
423
- * expect({'.a': {'[b]': 2}}).to.nested.include({'\\.a.\\[b\\]': 2});
424
- *
425
- * `.deep` and `.nested` can be combined.
426
- *
427
- * expect({a: {b: [{c: 3}]}}).to.deep.nested.include({'a.b[0]': {c: 3}});
428
- *
429
- * `.own` and `.nested` cannot be combined.
430
- *
431
- * Add `.not` earlier in the chain to negate `.include`.
432
- *
433
- * expect('foobar').to.not.include('taco');
434
- * expect([1, 2, 3]).to.not.include(4);
435
- *
436
- * However, it's dangerous to negate `.include` when the target is an object.
437
- * The problem is that it creates uncertain expectations by asserting that the
438
- * target object doesn't have all of `val`'s key/value pairs but may or may
439
- * not have some of them. It's often best to identify the exact output that's
440
- * expected, and then write an assertion that only accepts that exact output.
441
- *
442
- * When the target object isn't even expected to have `val`'s keys, it's
443
- * often best to assert exactly that.
444
- *
445
- * expect({c: 3}).to.not.have.any.keys('a', 'b'); // Recommended
446
- * expect({c: 3}).to.not.include({a: 1, b: 2}); // Not recommended
447
- *
448
- * When the target object is expected to have `val`'s keys, it's often best to
449
- * assert that each of the properties has its expected value, rather than
450
- * asserting that each property doesn't have one of many unexpected values.
451
- *
452
- * expect({a: 3, b: 4}).to.include({a: 3, b: 4}); // Recommended
453
- * expect({a: 3, b: 4}).to.not.include({a: 1, b: 2}); // Not recommended
454
- *
455
- * `.include` accepts an optional `msg` argument which is a custom error
456
- * message to show when the assertion fails. The message can also be given as
457
- * the second argument to `expect`.
458
- *
459
- * expect([1, 2, 3]).to.include(4, 'nooo why fail??');
460
- * expect([1, 2, 3], 'nooo why fail??').to.include(4);
461
- *
462
- * `.include` can also be used as a language chain, causing all `.members` and
463
- * `.keys` assertions that follow in the chain to require the target to be a
464
- * superset of the expected set, rather than an identical set. Note that
465
- * `.members` ignores duplicates in the subset when `.include` is added.
466
- *
467
- * // Target object's keys are a superset of ['a', 'b'] but not identical
468
- * expect({a: 1, b: 2, c: 3}).to.include.all.keys('a', 'b');
469
- * expect({a: 1, b: 2, c: 3}).to.not.have.all.keys('a', 'b');
470
- *
471
- * // Target array is a superset of [1, 2] but not identical
472
- * expect([1, 2, 3]).to.include.members([1, 2]);
473
- * expect([1, 2, 3]).to.not.have.members([1, 2]);
474
- *
475
- * // Duplicates in the subset are ignored
476
- * expect([1, 2, 3]).to.include.members([1, 2, 2, 2]);
477
- *
478
- * Note that adding `.any` earlier in the chain causes the `.keys` assertion
479
- * to ignore `.include`.
480
- *
481
- * // Both assertions are identical
482
- * expect({a: 1}).to.include.any.keys('a', 'b');
483
- * expect({a: 1}).to.have.any.keys('a', 'b');
484
- *
485
- * The aliases `.includes`, `.contain`, and `.contains` can be used
486
- * interchangeably with `.include`.
487
- *
488
- * @name include
489
- * @alias contain
490
- * @alias includes
491
- * @alias contains
492
- * @param {unknown} val
493
- * @param {string} msg _optional_
494
- * @namespace BDD
495
- * @public
496
- */
497
- function include (val, msg) {
498
- if (msg) flag(this, 'message', msg);
499
-
500
- var obj = flag(this, 'object')
501
- , objType = _.type(obj).toLowerCase()
502
- , flagMsg = flag(this, 'message')
503
- , negate = flag(this, 'negate')
504
- , ssfi = flag(this, 'ssfi')
505
- , isDeep = flag(this, 'deep')
506
- , descriptor = isDeep ? 'deep ' : ''
507
- , isEql = isDeep ? flag(this, 'eql') : SameValueZero;
508
-
509
- flagMsg = flagMsg ? flagMsg + ': ' : '';
510
-
511
- var included = false;
512
-
513
- switch (objType) {
514
- case 'string':
515
- included = obj.indexOf(val) !== -1;
516
- break;
517
-
518
- case 'weakset':
519
- if (isDeep) {
520
- throw new AssertionError(
521
- flagMsg + 'unable to use .deep.include with WeakSet',
522
- undefined,
523
- ssfi
524
- );
525
- }
526
-
527
- included = obj.has(val);
528
- break;
529
-
530
- case 'map':
531
- obj.forEach(function (item) {
532
- included = included || isEql(item, val);
533
- });
534
- break;
535
-
536
- case 'set':
537
- if (isDeep) {
538
- obj.forEach(function (item) {
539
- included = included || isEql(item, val);
540
- });
541
- } else {
542
- included = obj.has(val);
543
- }
544
- break;
545
-
546
- case 'array':
547
- if (isDeep) {
548
- included = obj.some(function (item) {
549
- return isEql(item, val);
550
- })
551
- } else {
552
- included = obj.indexOf(val) !== -1;
553
- }
554
- break;
555
-
556
- default:
557
- // This block is for asserting a subset of properties in an object.
558
- // `_.expectTypes` isn't used here because `.include` should work with
559
- // objects with a custom `@@toStringTag`.
560
- if (val !== Object(val)) {
561
- throw new AssertionError(
562
- flagMsg + 'the given combination of arguments ('
563
- + objType + ' and '
564
- + _.type(val).toLowerCase() + ')'
565
- + ' is invalid for this assertion. '
566
- + 'You can use an array, a map, an object, a set, a string, '
567
- + 'or a weakset instead of a '
568
- + _.type(val).toLowerCase(),
569
- undefined,
570
- ssfi
571
- );
572
- }
573
-
574
- var props = Object.keys(val)
575
- , firstErr = null
576
- , numErrs = 0;
577
-
578
- props.forEach(function (prop) {
579
- var propAssertion = new Assertion(obj);
580
- _.transferFlags(this, propAssertion, true);
581
- flag(propAssertion, 'lockSsfi', true);
582
-
583
- if (!negate || props.length === 1) {
584
- propAssertion.property(prop, val[prop]);
585
- return;
586
- }
587
-
588
- try {
589
- propAssertion.property(prop, val[prop]);
590
- } catch (err) {
591
- if (!_.checkError.compatibleConstructor(err, AssertionError)) {
592
- throw err;
593
- }
594
- if (firstErr === null) firstErr = err;
595
- numErrs++;
596
- }
597
- }, this);
598
-
599
- // When validating .not.include with multiple properties, we only want
600
- // to throw an assertion error if all of the properties are included,
601
- // in which case we throw the first property assertion error that we
602
- // encountered.
603
- if (negate && props.length > 1 && numErrs === props.length) {
604
- throw firstErr;
605
- }
606
- return;
607
- }
608
-
609
- // Assert inclusion in collection or substring in a string.
610
- this.assert(
611
- included
612
- , 'expected #{this} to ' + descriptor + 'include ' + _.inspect(val)
613
- , 'expected #{this} to not ' + descriptor + 'include ' + _.inspect(val));
614
- }
615
-
616
- Assertion.addChainableMethod('include', include, includeChainingBehavior);
617
- Assertion.addChainableMethod('contain', include, includeChainingBehavior);
618
- Assertion.addChainableMethod('contains', include, includeChainingBehavior);
619
- Assertion.addChainableMethod('includes', include, includeChainingBehavior);
620
-
621
- /**
622
- * ### .ok
623
- *
624
- * Asserts that the target is a truthy value (considered `true` in boolean context).
625
- * However, it's often best to assert that the target is strictly (`===`) or
626
- * deeply equal to its expected value.
627
- *
628
- * expect(1).to.equal(1); // Recommended
629
- * expect(1).to.be.ok; // Not recommended
630
- *
631
- * expect(true).to.be.true; // Recommended
632
- * expect(true).to.be.ok; // Not recommended
633
- *
634
- * Add `.not` earlier in the chain to negate `.ok`.
635
- *
636
- * expect(0).to.equal(0); // Recommended
637
- * expect(0).to.not.be.ok; // Not recommended
638
- *
639
- * expect(false).to.be.false; // Recommended
640
- * expect(false).to.not.be.ok; // Not recommended
641
- *
642
- * expect(null).to.be.null; // Recommended
643
- * expect(null).to.not.be.ok; // Not recommended
644
- *
645
- * expect(undefined).to.be.undefined; // Recommended
646
- * expect(undefined).to.not.be.ok; // Not recommended
647
- *
648
- * A custom error message can be given as the second argument to `expect`.
649
- *
650
- * expect(false, 'nooo why fail??').to.be.ok;
651
- *
652
- * @name ok
653
- * @namespace BDD
654
- * @public
655
- */
656
- Assertion.addProperty('ok', function () {
657
- this.assert(
658
- flag(this, 'object')
659
- , 'expected #{this} to be truthy'
660
- , 'expected #{this} to be falsy');
661
- });
662
-
663
- /**
664
- * ### .true
665
- *
666
- * Asserts that the target is strictly (`===`) equal to `true`.
667
- *
668
- * expect(true).to.be.true;
669
- *
670
- * Add `.not` earlier in the chain to negate `.true`. However, it's often best
671
- * to assert that the target is equal to its expected value, rather than not
672
- * equal to `true`.
673
- *
674
- * expect(false).to.be.false; // Recommended
675
- * expect(false).to.not.be.true; // Not recommended
676
- *
677
- * expect(1).to.equal(1); // Recommended
678
- * expect(1).to.not.be.true; // Not recommended
679
- *
680
- * A custom error message can be given as the second argument to `expect`.
681
- *
682
- * expect(false, 'nooo why fail??').to.be.true;
683
- *
684
- * @name true
685
- * @namespace BDD
686
- * @public
687
- */
688
- Assertion.addProperty('true', function () {
689
- this.assert(
690
- true === flag(this, 'object')
691
- , 'expected #{this} to be true'
692
- , 'expected #{this} to be false'
693
- , flag(this, 'negate') ? false : true
694
- );
695
- });
696
-
697
- /**
698
- * ### .callable
699
- *
700
- * Asserts that the target a callable function.
701
- *
702
- * expect(console.log).to.be.callable;
703
- *
704
- * A custom error message can be given as the second argument to `expect`.
705
- *
706
- * expect('not a function', 'nooo why fail??').to.be.callable;
707
- *
708
- * @name callable
709
- * @namespace BDD
710
- * @public
711
- */
712
- Assertion.addProperty('callable', function () {
713
- const val = flag(this, 'object')
714
- const ssfi = flag(this, 'ssfi')
715
- const message = flag(this, 'message')
716
- const msg = message ? `${message}: ` : ''
717
- const negate = flag(this, 'negate');
718
-
719
- const assertionMessage = negate ?
720
- `${msg}expected ${_.inspect(val)} not to be a callable function` :
721
- `${msg}expected ${_.inspect(val)} to be a callable function`;
722
-
723
- const isCallable = ['Function', 'AsyncFunction', 'GeneratorFunction', 'AsyncGeneratorFunction'].includes(_.type(val));
724
-
725
- if ((isCallable && negate) || (!isCallable && !negate)) {
726
- throw new AssertionError(
727
- assertionMessage,
728
- undefined,
729
- ssfi
730
- );
731
- }
732
- });
733
-
734
- /**
735
- * ### .false
736
- *
737
- * Asserts that the target is strictly (`===`) equal to `false`.
738
- *
739
- * expect(false).to.be.false;
740
- *
741
- * Add `.not` earlier in the chain to negate `.false`. However, it's often
742
- * best to assert that the target is equal to its expected value, rather than
743
- * not equal to `false`.
744
- *
745
- * expect(true).to.be.true; // Recommended
746
- * expect(true).to.not.be.false; // Not recommended
747
- *
748
- * expect(1).to.equal(1); // Recommended
749
- * expect(1).to.not.be.false; // Not recommended
750
- *
751
- * A custom error message can be given as the second argument to `expect`.
752
- *
753
- * expect(true, 'nooo why fail??').to.be.false;
754
- *
755
- * @name false
756
- * @namespace BDD
757
- * @public
758
- */
759
- Assertion.addProperty('false', function () {
760
- this.assert(
761
- false === flag(this, 'object')
762
- , 'expected #{this} to be false'
763
- , 'expected #{this} to be true'
764
- , flag(this, 'negate') ? true : false
765
- );
766
- });
767
-
768
- /**
769
- * ### .null
770
- *
771
- * Asserts that the target is strictly (`===`) equal to `null`.
772
- *
773
- * expect(null).to.be.null;
774
- *
775
- * Add `.not` earlier in the chain to negate `.null`. However, it's often best
776
- * to assert that the target is equal to its expected value, rather than not
777
- * equal to `null`.
778
- *
779
- * expect(1).to.equal(1); // Recommended
780
- * expect(1).to.not.be.null; // Not recommended
781
- *
782
- * A custom error message can be given as the second argument to `expect`.
783
- *
784
- * expect(42, 'nooo why fail??').to.be.null;
785
- *
786
- * @name null
787
- * @namespace BDD
788
- * @public
789
- */
790
- Assertion.addProperty('null', function () {
791
- this.assert(
792
- null === flag(this, 'object')
793
- , 'expected #{this} to be null'
794
- , 'expected #{this} not to be null'
795
- );
796
- });
797
-
798
- /**
799
- * ### .undefined
800
- *
801
- * Asserts that the target is strictly (`===`) equal to `undefined`.
802
- *
803
- * expect(undefined).to.be.undefined;
804
- *
805
- * Add `.not` earlier in the chain to negate `.undefined`. However, it's often
806
- * best to assert that the target is equal to its expected value, rather than
807
- * not equal to `undefined`.
808
- *
809
- * expect(1).to.equal(1); // Recommended
810
- * expect(1).to.not.be.undefined; // Not recommended
811
- *
812
- * A custom error message can be given as the second argument to `expect`.
813
- *
814
- * expect(42, 'nooo why fail??').to.be.undefined;
815
- *
816
- * @name undefined
817
- * @namespace BDD
818
- * @public
819
- */
820
- Assertion.addProperty('undefined', function () {
821
- this.assert(
822
- undefined === flag(this, 'object')
823
- , 'expected #{this} to be undefined'
824
- , 'expected #{this} not to be undefined'
825
- );
826
- });
827
-
828
- /**
829
- * ### .NaN
830
- *
831
- * Asserts that the target is exactly `NaN`.
832
- *
833
- * expect(NaN).to.be.NaN;
834
- *
835
- * Add `.not` earlier in the chain to negate `.NaN`. However, it's often best
836
- * to assert that the target is equal to its expected value, rather than not
837
- * equal to `NaN`.
838
- *
839
- * expect('foo').to.equal('foo'); // Recommended
840
- * expect('foo').to.not.be.NaN; // Not recommended
841
- *
842
- * A custom error message can be given as the second argument to `expect`.
843
- *
844
- * expect(42, 'nooo why fail??').to.be.NaN;
845
- *
846
- * @name NaN
847
- * @namespace BDD
848
- * @public
849
- */
850
- Assertion.addProperty('NaN', function () {
851
- this.assert(
852
- _.isNaN(flag(this, 'object'))
853
- , 'expected #{this} to be NaN'
854
- , 'expected #{this} not to be NaN'
855
- );
856
- });
857
-
858
- /**
859
- * ### .exist
860
- *
861
- * Asserts that the target is not strictly (`===`) equal to either `null` or
862
- * `undefined`. However, it's often best to assert that the target is equal to
863
- * its expected value.
864
- *
865
- * expect(1).to.equal(1); // Recommended
866
- * expect(1).to.exist; // Not recommended
867
- *
868
- * expect(0).to.equal(0); // Recommended
869
- * expect(0).to.exist; // Not recommended
870
- *
871
- * Add `.not` earlier in the chain to negate `.exist`.
872
- *
873
- * expect(null).to.be.null; // Recommended
874
- * expect(null).to.not.exist; // Not recommended
875
- *
876
- * expect(undefined).to.be.undefined; // Recommended
877
- * expect(undefined).to.not.exist; // Not recommended
878
- *
879
- * A custom error message can be given as the second argument to `expect`.
880
- *
881
- * expect(null, 'nooo why fail??').to.exist;
882
- *
883
- * The alias `.exists` can be used interchangeably with `.exist`.
884
- *
885
- * @name exist
886
- * @alias exists
887
- * @namespace BDD
888
- * @public
889
- */
890
- function assertExist () {
891
- var val = flag(this, 'object');
892
- this.assert(
893
- val !== null && val !== undefined
894
- , 'expected #{this} to exist'
895
- , 'expected #{this} to not exist'
896
- );
897
- }
898
-
899
- Assertion.addProperty('exist', assertExist);
900
- Assertion.addProperty('exists', assertExist);
901
-
902
- /**
903
- * ### .empty
904
- *
905
- * When the target is a string or array, `.empty` asserts that the target's
906
- * `length` property is strictly (`===`) equal to `0`.
907
- *
908
- * expect([]).to.be.empty;
909
- * expect('').to.be.empty;
910
- *
911
- * When the target is a map or set, `.empty` asserts that the target's `size`
912
- * property is strictly equal to `0`.
913
- *
914
- * expect(new Set()).to.be.empty;
915
- * expect(new Map()).to.be.empty;
916
- *
917
- * When the target is a non-function object, `.empty` asserts that the target
918
- * doesn't have any own enumerable properties. Properties with Symbol-based
919
- * keys are excluded from the count.
920
- *
921
- * expect({}).to.be.empty;
922
- *
923
- * Because `.empty` does different things based on the target's type, it's
924
- * important to check the target's type before using `.empty`. See the `.a`
925
- * doc for info on testing a target's type.
926
- *
927
- * expect([]).to.be.an('array').that.is.empty;
928
- *
929
- * Add `.not` earlier in the chain to negate `.empty`. However, it's often
930
- * best to assert that the target contains its expected number of values,
931
- * rather than asserting that it's not empty.
932
- *
933
- * expect([1, 2, 3]).to.have.lengthOf(3); // Recommended
934
- * expect([1, 2, 3]).to.not.be.empty; // Not recommended
935
- *
936
- * expect(new Set([1, 2, 3])).to.have.property('size', 3); // Recommended
937
- * expect(new Set([1, 2, 3])).to.not.be.empty; // Not recommended
938
- *
939
- * expect(Object.keys({a: 1})).to.have.lengthOf(1); // Recommended
940
- * expect({a: 1}).to.not.be.empty; // Not recommended
941
- *
942
- * A custom error message can be given as the second argument to `expect`.
943
- *
944
- * expect([1, 2, 3], 'nooo why fail??').to.be.empty;
945
- *
946
- * @name empty
947
- * @namespace BDD
948
- * @public
949
- */
950
- Assertion.addProperty('empty', function () {
951
- var val = flag(this, 'object')
952
- , ssfi = flag(this, 'ssfi')
953
- , flagMsg = flag(this, 'message')
954
- , itemsCount;
955
-
956
- flagMsg = flagMsg ? flagMsg + ': ' : '';
957
-
958
- switch (_.type(val).toLowerCase()) {
959
- case 'array':
960
- case 'string':
961
- itemsCount = val.length;
962
- break;
963
- case 'map':
964
- case 'set':
965
- itemsCount = val.size;
966
- break;
967
- case 'weakmap':
968
- case 'weakset':
969
- throw new AssertionError(
970
- flagMsg + '.empty was passed a weak collection',
971
- undefined,
972
- ssfi
973
- );
974
- case 'function':
975
- var msg = flagMsg + '.empty was passed a function ' + _.getName(val);
976
- throw new AssertionError(msg.trim(), undefined, ssfi);
977
- default:
978
- if (val !== Object(val)) {
979
- throw new AssertionError(
980
- flagMsg + '.empty was passed non-string primitive ' + _.inspect(val),
981
- undefined,
982
- ssfi
983
- );
984
- }
985
- itemsCount = Object.keys(val).length;
986
- }
987
-
988
- this.assert(
989
- 0 === itemsCount
990
- , 'expected #{this} to be empty'
991
- , 'expected #{this} not to be empty'
992
- );
993
- });
994
-
995
- /**
996
- * ### .arguments
997
- *
998
- * Asserts that the target is an `arguments` object.
999
- *
1000
- * function test () {
1001
- * expect(arguments).to.be.arguments;
1002
- * }
1003
- *
1004
- * test();
1005
- *
1006
- * Add `.not` earlier in the chain to negate `.arguments`. However, it's often
1007
- * best to assert which type the target is expected to be, rather than
1008
- * asserting that it’s not an `arguments` object.
1009
- *
1010
- * expect('foo').to.be.a('string'); // Recommended
1011
- * expect('foo').to.not.be.arguments; // Not recommended
1012
- *
1013
- * A custom error message can be given as the second argument to `expect`.
1014
- *
1015
- * expect({}, 'nooo why fail??').to.be.arguments;
1016
- *
1017
- * The alias `.Arguments` can be used interchangeably with `.arguments`.
1018
- *
1019
- * @name arguments
1020
- * @alias Arguments
1021
- * @namespace BDD
1022
- * @public
1023
- */
1024
- function checkArguments () {
1025
- var obj = flag(this, 'object')
1026
- , type = _.type(obj);
1027
- this.assert(
1028
- 'Arguments' === type
1029
- , 'expected #{this} to be arguments but got ' + type
1030
- , 'expected #{this} to not be arguments'
1031
- );
1032
- }
1033
-
1034
- Assertion.addProperty('arguments', checkArguments);
1035
- Assertion.addProperty('Arguments', checkArguments);
1036
-
1037
- /**
1038
- * ### .equal(val[, msg])
1039
- *
1040
- * Asserts that the target is strictly (`===`) equal to the given `val`.
1041
- *
1042
- * expect(1).to.equal(1);
1043
- * expect('foo').to.equal('foo');
1044
- *
1045
- * Add `.deep` earlier in the chain to use deep equality instead. See the
1046
- * `deep-eql` project page for info on the deep equality algorithm:
1047
- * https://github.com/chaijs/deep-eql.
1048
- *
1049
- * // Target object deeply (but not strictly) equals `{a: 1}`
1050
- * expect({a: 1}).to.deep.equal({a: 1});
1051
- * expect({a: 1}).to.not.equal({a: 1});
1052
- *
1053
- * // Target array deeply (but not strictly) equals `[1, 2]`
1054
- * expect([1, 2]).to.deep.equal([1, 2]);
1055
- * expect([1, 2]).to.not.equal([1, 2]);
1056
- *
1057
- * Add `.not` earlier in the chain to negate `.equal`. However, it's often
1058
- * best to assert that the target is equal to its expected value, rather than
1059
- * not equal to one of countless unexpected values.
1060
- *
1061
- * expect(1).to.equal(1); // Recommended
1062
- * expect(1).to.not.equal(2); // Not recommended
1063
- *
1064
- * `.equal` accepts an optional `msg` argument which is a custom error message
1065
- * to show when the assertion fails. The message can also be given as the
1066
- * second argument to `expect`.
1067
- *
1068
- * expect(1).to.equal(2, 'nooo why fail??');
1069
- * expect(1, 'nooo why fail??').to.equal(2);
1070
- *
1071
- * The aliases `.equals` and `eq` can be used interchangeably with `.equal`.
1072
- *
1073
- * @name equal
1074
- * @alias equals
1075
- * @alias eq
1076
- * @param {unknown} val
1077
- * @param {string} msg _optional_
1078
- * @namespace BDD
1079
- * @public
1080
- */
1081
- function assertEqual (val, msg) {
1082
- if (msg) flag(this, 'message', msg);
1083
- var obj = flag(this, 'object');
1084
- if (flag(this, 'deep')) {
1085
- var prevLockSsfi = flag(this, 'lockSsfi');
1086
- flag(this, 'lockSsfi', true);
1087
- this.eql(val);
1088
- flag(this, 'lockSsfi', prevLockSsfi);
1089
- } else {
1090
- this.assert(
1091
- val === obj
1092
- , 'expected #{this} to equal #{exp}'
1093
- , 'expected #{this} to not equal #{exp}'
1094
- , val
1095
- , this._obj
1096
- , true
1097
- );
1098
- }
1099
- }
1100
-
1101
- Assertion.addMethod('equal', assertEqual);
1102
- Assertion.addMethod('equals', assertEqual);
1103
- Assertion.addMethod('eq', assertEqual);
1104
-
1105
- /**
1106
- * ### .eql(obj[, msg])
1107
- *
1108
- * Asserts that the target is deeply equal to the given `obj`. See the
1109
- * `deep-eql` project page for info on the deep equality algorithm:
1110
- * https://github.com/chaijs/deep-eql.
1111
- *
1112
- * // Target object is deeply (but not strictly) equal to {a: 1}
1113
- * expect({a: 1}).to.eql({a: 1}).but.not.equal({a: 1});
1114
- *
1115
- * // Target array is deeply (but not strictly) equal to [1, 2]
1116
- * expect([1, 2]).to.eql([1, 2]).but.not.equal([1, 2]);
1117
- *
1118
- * Add `.not` earlier in the chain to negate `.eql`. However, it's often best
1119
- * to assert that the target is deeply equal to its expected value, rather
1120
- * than not deeply equal to one of countless unexpected values.
1121
- *
1122
- * expect({a: 1}).to.eql({a: 1}); // Recommended
1123
- * expect({a: 1}).to.not.eql({b: 2}); // Not recommended
1124
- *
1125
- * `.eql` accepts an optional `msg` argument which is a custom error message
1126
- * to show when the assertion fails. The message can also be given as the
1127
- * second argument to `expect`.
1128
- *
1129
- * expect({a: 1}).to.eql({b: 2}, 'nooo why fail??');
1130
- * expect({a: 1}, 'nooo why fail??').to.eql({b: 2});
1131
- *
1132
- * The alias `.eqls` can be used interchangeably with `.eql`.
1133
- *
1134
- * The `.deep.equal` assertion is almost identical to `.eql` but with one
1135
- * difference: `.deep.equal` causes deep equality comparisons to also be used
1136
- * for any other assertions that follow in the chain.
1137
- *
1138
- * @name eql
1139
- * @alias eqls
1140
- * @param {unknown} obj
1141
- * @param {string} msg _optional_
1142
- * @namespace BDD
1143
- * @public
1144
- */
1145
- function assertEql(obj, msg) {
1146
- if (msg) flag(this, 'message', msg);
1147
- var eql = flag(this, 'eql');
1148
- this.assert(
1149
- eql(obj, flag(this, 'object'))
1150
- , 'expected #{this} to deeply equal #{exp}'
1151
- , 'expected #{this} to not deeply equal #{exp}'
1152
- , obj
1153
- , this._obj
1154
- , true
1155
- );
1156
- }
1157
-
1158
- Assertion.addMethod('eql', assertEql);
1159
- Assertion.addMethod('eqls', assertEql);
1160
-
1161
- /**
1162
- * ### .above(n[, msg])
1163
- *
1164
- * Asserts that the target is a number or a date greater than the given number or date `n` respectively.
1165
- * However, it's often best to assert that the target is equal to its expected
1166
- * value.
1167
- *
1168
- * expect(2).to.equal(2); // Recommended
1169
- * expect(2).to.be.above(1); // Not recommended
1170
- *
1171
- * Add `.lengthOf` earlier in the chain to assert that the target's `length`
1172
- * or `size` is greater than the given number `n`.
1173
- *
1174
- * expect('foo').to.have.lengthOf(3); // Recommended
1175
- * expect('foo').to.have.lengthOf.above(2); // Not recommended
1176
- *
1177
- * expect([1, 2, 3]).to.have.lengthOf(3); // Recommended
1178
- * expect([1, 2, 3]).to.have.lengthOf.above(2); // Not recommended
1179
- *
1180
- * Add `.not` earlier in the chain to negate `.above`.
1181
- *
1182
- * expect(2).to.equal(2); // Recommended
1183
- * expect(1).to.not.be.above(2); // Not recommended
1184
- *
1185
- * `.above` accepts an optional `msg` argument which is a custom error message
1186
- * to show when the assertion fails. The message can also be given as the
1187
- * second argument to `expect`.
1188
- *
1189
- * expect(1).to.be.above(2, 'nooo why fail??');
1190
- * expect(1, 'nooo why fail??').to.be.above(2);
1191
- *
1192
- * The aliases `.gt` and `.greaterThan` can be used interchangeably with
1193
- * `.above`.
1194
- *
1195
- * @name above
1196
- * @alias gt
1197
- * @alias greaterThan
1198
- * @param {number} n
1199
- * @param {string} msg _optional_
1200
- * @namespace BDD
1201
- * @public
1202
- */
1203
- function assertAbove (n, msg) {
1204
- if (msg) flag(this, 'message', msg);
1205
- var obj = flag(this, 'object')
1206
- , doLength = flag(this, 'doLength')
1207
- , flagMsg = flag(this, 'message')
1208
- , msgPrefix = ((flagMsg) ? flagMsg + ': ' : '')
1209
- , ssfi = flag(this, 'ssfi')
1210
- , objType = _.type(obj).toLowerCase()
1211
- , nType = _.type(n).toLowerCase()
1212
- , errorMessage
1213
- , shouldThrow = true;
1214
-
1215
- if (doLength && objType !== 'map' && objType !== 'set') {
1216
- new Assertion(obj, flagMsg, ssfi, true).to.have.property('length');
1217
- }
1218
-
1219
- if (!doLength && (objType === 'date' && nType !== 'date')) {
1220
- errorMessage = msgPrefix + 'the argument to above must be a date';
1221
- } else if (nType !== 'number' && (doLength || objType === 'number')) {
1222
- errorMessage = msgPrefix + 'the argument to above must be a number';
1223
- } else if (!doLength && (objType !== 'date' && objType !== 'number')) {
1224
- var printObj = (objType === 'string') ? "'" + obj + "'" : obj;
1225
- errorMessage = msgPrefix + 'expected ' + printObj + ' to be a number or a date';
1226
- } else {
1227
- shouldThrow = false;
1228
- }
1229
-
1230
- if (shouldThrow) {
1231
- throw new AssertionError(errorMessage, undefined, ssfi);
1232
- }
1233
-
1234
- if (doLength) {
1235
- var descriptor = 'length'
1236
- , itemsCount;
1237
- if (objType === 'map' || objType === 'set') {
1238
- descriptor = 'size';
1239
- itemsCount = obj.size;
1240
- } else {
1241
- itemsCount = obj.length;
1242
- }
1243
- this.assert(
1244
- itemsCount > n
1245
- , 'expected #{this} to have a ' + descriptor + ' above #{exp} but got #{act}'
1246
- , 'expected #{this} to not have a ' + descriptor + ' above #{exp}'
1247
- , n
1248
- , itemsCount
1249
- );
1250
- } else {
1251
- this.assert(
1252
- obj > n
1253
- , 'expected #{this} to be above #{exp}'
1254
- , 'expected #{this} to be at most #{exp}'
1255
- , n
1256
- );
1257
- }
1258
- }
1259
-
1260
- Assertion.addMethod('above', assertAbove);
1261
- Assertion.addMethod('gt', assertAbove);
1262
- Assertion.addMethod('greaterThan', assertAbove);
1263
-
1264
- /**
1265
- * ### .least(n[, msg])
1266
- *
1267
- * Asserts that the target is a number or a date greater than or equal to the given
1268
- * number or date `n` respectively. However, it's often best to assert that the target is equal to
1269
- * its expected value.
1270
- *
1271
- * expect(2).to.equal(2); // Recommended
1272
- * expect(2).to.be.at.least(1); // Not recommended
1273
- * expect(2).to.be.at.least(2); // Not recommended
1274
- *
1275
- * Add `.lengthOf` earlier in the chain to assert that the target's `length`
1276
- * or `size` is greater than or equal to the given number `n`.
1277
- *
1278
- * expect('foo').to.have.lengthOf(3); // Recommended
1279
- * expect('foo').to.have.lengthOf.at.least(2); // Not recommended
1280
- *
1281
- * expect([1, 2, 3]).to.have.lengthOf(3); // Recommended
1282
- * expect([1, 2, 3]).to.have.lengthOf.at.least(2); // Not recommended
1283
- *
1284
- * Add `.not` earlier in the chain to negate `.least`.
1285
- *
1286
- * expect(1).to.equal(1); // Recommended
1287
- * expect(1).to.not.be.at.least(2); // Not recommended
1288
- *
1289
- * `.least` accepts an optional `msg` argument which is a custom error message
1290
- * to show when the assertion fails. The message can also be given as the
1291
- * second argument to `expect`.
1292
- *
1293
- * expect(1).to.be.at.least(2, 'nooo why fail??');
1294
- * expect(1, 'nooo why fail??').to.be.at.least(2);
1295
- *
1296
- * The aliases `.gte` and `.greaterThanOrEqual` can be used interchangeably with
1297
- * `.least`.
1298
- *
1299
- * @name least
1300
- * @alias gte
1301
- * @alias greaterThanOrEqual
1302
- * @param {number} n
1303
- * @param {string} msg _optional_
1304
- * @namespace BDD
1305
- * @public
1306
- */
1307
- function assertLeast (n, msg) {
1308
- if (msg) flag(this, 'message', msg);
1309
- var obj = flag(this, 'object')
1310
- , doLength = flag(this, 'doLength')
1311
- , flagMsg = flag(this, 'message')
1312
- , msgPrefix = ((flagMsg) ? flagMsg + ': ' : '')
1313
- , ssfi = flag(this, 'ssfi')
1314
- , objType = _.type(obj).toLowerCase()
1315
- , nType = _.type(n).toLowerCase()
1316
- , errorMessage
1317
- , shouldThrow = true;
1318
-
1319
- if (doLength && objType !== 'map' && objType !== 'set') {
1320
- new Assertion(obj, flagMsg, ssfi, true).to.have.property('length');
1321
- }
1322
-
1323
- if (!doLength && (objType === 'date' && nType !== 'date')) {
1324
- errorMessage = msgPrefix + 'the argument to least must be a date';
1325
- } else if (nType !== 'number' && (doLength || objType === 'number')) {
1326
- errorMessage = msgPrefix + 'the argument to least must be a number';
1327
- } else if (!doLength && (objType !== 'date' && objType !== 'number')) {
1328
- var printObj = (objType === 'string') ? "'" + obj + "'" : obj;
1329
- errorMessage = msgPrefix + 'expected ' + printObj + ' to be a number or a date';
1330
- } else {
1331
- shouldThrow = false;
1332
- }
1333
-
1334
- if (shouldThrow) {
1335
- throw new AssertionError(errorMessage, undefined, ssfi);
1336
- }
1337
-
1338
- if (doLength) {
1339
- var descriptor = 'length'
1340
- , itemsCount;
1341
- if (objType === 'map' || objType === 'set') {
1342
- descriptor = 'size';
1343
- itemsCount = obj.size;
1344
- } else {
1345
- itemsCount = obj.length;
1346
- }
1347
- this.assert(
1348
- itemsCount >= n
1349
- , 'expected #{this} to have a ' + descriptor + ' at least #{exp} but got #{act}'
1350
- , 'expected #{this} to have a ' + descriptor + ' below #{exp}'
1351
- , n
1352
- , itemsCount
1353
- );
1354
- } else {
1355
- this.assert(
1356
- obj >= n
1357
- , 'expected #{this} to be at least #{exp}'
1358
- , 'expected #{this} to be below #{exp}'
1359
- , n
1360
- );
1361
- }
1362
- }
1363
-
1364
- Assertion.addMethod('least', assertLeast);
1365
- Assertion.addMethod('gte', assertLeast);
1366
- Assertion.addMethod('greaterThanOrEqual', assertLeast);
1367
-
1368
- /**
1369
- * ### .below(n[, msg])
1370
- *
1371
- * Asserts that the target is a number or a date less than the given number or date `n` respectively.
1372
- * However, it's often best to assert that the target is equal to its expected
1373
- * value.
1374
- *
1375
- * expect(1).to.equal(1); // Recommended
1376
- * expect(1).to.be.below(2); // Not recommended
1377
- *
1378
- * Add `.lengthOf` earlier in the chain to assert that the target's `length`
1379
- * or `size` is less than the given number `n`.
1380
- *
1381
- * expect('foo').to.have.lengthOf(3); // Recommended
1382
- * expect('foo').to.have.lengthOf.below(4); // Not recommended
1383
- *
1384
- * expect([1, 2, 3]).to.have.length(3); // Recommended
1385
- * expect([1, 2, 3]).to.have.lengthOf.below(4); // Not recommended
1386
- *
1387
- * Add `.not` earlier in the chain to negate `.below`.
1388
- *
1389
- * expect(2).to.equal(2); // Recommended
1390
- * expect(2).to.not.be.below(1); // Not recommended
1391
- *
1392
- * `.below` accepts an optional `msg` argument which is a custom error message
1393
- * to show when the assertion fails. The message can also be given as the
1394
- * second argument to `expect`.
1395
- *
1396
- * expect(2).to.be.below(1, 'nooo why fail??');
1397
- * expect(2, 'nooo why fail??').to.be.below(1);
1398
- *
1399
- * The aliases `.lt` and `.lessThan` can be used interchangeably with
1400
- * `.below`.
1401
- *
1402
- * @name below
1403
- * @alias lt
1404
- * @alias lessThan
1405
- * @param {number} n
1406
- * @param {string} msg _optional_
1407
- * @namespace BDD
1408
- * @public
1409
- */
1410
- function assertBelow (n, msg) {
1411
- if (msg) flag(this, 'message', msg);
1412
- var obj = flag(this, 'object')
1413
- , doLength = flag(this, 'doLength')
1414
- , flagMsg = flag(this, 'message')
1415
- , msgPrefix = ((flagMsg) ? flagMsg + ': ' : '')
1416
- , ssfi = flag(this, 'ssfi')
1417
- , objType = _.type(obj).toLowerCase()
1418
- , nType = _.type(n).toLowerCase()
1419
- , errorMessage
1420
- , shouldThrow = true;
1421
-
1422
- if (doLength && objType !== 'map' && objType !== 'set') {
1423
- new Assertion(obj, flagMsg, ssfi, true).to.have.property('length');
1424
- }
1425
-
1426
- if (!doLength && (objType === 'date' && nType !== 'date')) {
1427
- errorMessage = msgPrefix + 'the argument to below must be a date';
1428
- } else if (nType !== 'number' && (doLength || objType === 'number')) {
1429
- errorMessage = msgPrefix + 'the argument to below must be a number';
1430
- } else if (!doLength && (objType !== 'date' && objType !== 'number')) {
1431
- var printObj = (objType === 'string') ? "'" + obj + "'" : obj;
1432
- errorMessage = msgPrefix + 'expected ' + printObj + ' to be a number or a date';
1433
- } else {
1434
- shouldThrow = false;
1435
- }
1436
-
1437
- if (shouldThrow) {
1438
- throw new AssertionError(errorMessage, undefined, ssfi);
1439
- }
1440
-
1441
- if (doLength) {
1442
- var descriptor = 'length'
1443
- , itemsCount;
1444
- if (objType === 'map' || objType === 'set') {
1445
- descriptor = 'size';
1446
- itemsCount = obj.size;
1447
- } else {
1448
- itemsCount = obj.length;
1449
- }
1450
- this.assert(
1451
- itemsCount < n
1452
- , 'expected #{this} to have a ' + descriptor + ' below #{exp} but got #{act}'
1453
- , 'expected #{this} to not have a ' + descriptor + ' below #{exp}'
1454
- , n
1455
- , itemsCount
1456
- );
1457
- } else {
1458
- this.assert(
1459
- obj < n
1460
- , 'expected #{this} to be below #{exp}'
1461
- , 'expected #{this} to be at least #{exp}'
1462
- , n
1463
- );
1464
- }
1465
- }
1466
-
1467
- Assertion.addMethod('below', assertBelow);
1468
- Assertion.addMethod('lt', assertBelow);
1469
- Assertion.addMethod('lessThan', assertBelow);
1470
-
1471
- /**
1472
- * ### .most(n[, msg])
1473
- *
1474
- * Asserts that the target is a number or a date less than or equal to the given number
1475
- * or date `n` respectively. However, it's often best to assert that the target is equal to its
1476
- * expected value.
1477
- *
1478
- * expect(1).to.equal(1); // Recommended
1479
- * expect(1).to.be.at.most(2); // Not recommended
1480
- * expect(1).to.be.at.most(1); // Not recommended
1481
- *
1482
- * Add `.lengthOf` earlier in the chain to assert that the target's `length`
1483
- * or `size` is less than or equal to the given number `n`.
1484
- *
1485
- * expect('foo').to.have.lengthOf(3); // Recommended
1486
- * expect('foo').to.have.lengthOf.at.most(4); // Not recommended
1487
- *
1488
- * expect([1, 2, 3]).to.have.lengthOf(3); // Recommended
1489
- * expect([1, 2, 3]).to.have.lengthOf.at.most(4); // Not recommended
1490
- *
1491
- * Add `.not` earlier in the chain to negate `.most`.
1492
- *
1493
- * expect(2).to.equal(2); // Recommended
1494
- * expect(2).to.not.be.at.most(1); // Not recommended
1495
- *
1496
- * `.most` accepts an optional `msg` argument which is a custom error message
1497
- * to show when the assertion fails. The message can also be given as the
1498
- * second argument to `expect`.
1499
- *
1500
- * expect(2).to.be.at.most(1, 'nooo why fail??');
1501
- * expect(2, 'nooo why fail??').to.be.at.most(1);
1502
- *
1503
- * The aliases `.lte` and `.lessThanOrEqual` can be used interchangeably with
1504
- * `.most`.
1505
- *
1506
- * @name most
1507
- * @alias lte
1508
- * @alias lessThanOrEqual
1509
- * @param {number} n
1510
- * @param {string} msg _optional_
1511
- * @namespace BDD
1512
- * @public
1513
- */
1514
- function assertMost (n, msg) {
1515
- if (msg) flag(this, 'message', msg);
1516
- var obj = flag(this, 'object')
1517
- , doLength = flag(this, 'doLength')
1518
- , flagMsg = flag(this, 'message')
1519
- , msgPrefix = ((flagMsg) ? flagMsg + ': ' : '')
1520
- , ssfi = flag(this, 'ssfi')
1521
- , objType = _.type(obj).toLowerCase()
1522
- , nType = _.type(n).toLowerCase()
1523
- , errorMessage
1524
- , shouldThrow = true;
1525
-
1526
- if (doLength && objType !== 'map' && objType !== 'set') {
1527
- new Assertion(obj, flagMsg, ssfi, true).to.have.property('length');
1528
- }
1529
-
1530
- if (!doLength && (objType === 'date' && nType !== 'date')) {
1531
- errorMessage = msgPrefix + 'the argument to most must be a date';
1532
- } else if (nType !== 'number' && (doLength || objType === 'number')) {
1533
- errorMessage = msgPrefix + 'the argument to most must be a number';
1534
- } else if (!doLength && (objType !== 'date' && objType !== 'number')) {
1535
- var printObj = (objType === 'string') ? "'" + obj + "'" : obj;
1536
- errorMessage = msgPrefix + 'expected ' + printObj + ' to be a number or a date';
1537
- } else {
1538
- shouldThrow = false;
1539
- }
1540
-
1541
- if (shouldThrow) {
1542
- throw new AssertionError(errorMessage, undefined, ssfi);
1543
- }
1544
-
1545
- if (doLength) {
1546
- var descriptor = 'length'
1547
- , itemsCount;
1548
- if (objType === 'map' || objType === 'set') {
1549
- descriptor = 'size';
1550
- itemsCount = obj.size;
1551
- } else {
1552
- itemsCount = obj.length;
1553
- }
1554
- this.assert(
1555
- itemsCount <= n
1556
- , 'expected #{this} to have a ' + descriptor + ' at most #{exp} but got #{act}'
1557
- , 'expected #{this} to have a ' + descriptor + ' above #{exp}'
1558
- , n
1559
- , itemsCount
1560
- );
1561
- } else {
1562
- this.assert(
1563
- obj <= n
1564
- , 'expected #{this} to be at most #{exp}'
1565
- , 'expected #{this} to be above #{exp}'
1566
- , n
1567
- );
1568
- }
1569
- }
1570
-
1571
- Assertion.addMethod('most', assertMost);
1572
- Assertion.addMethod('lte', assertMost);
1573
- Assertion.addMethod('lessThanOrEqual', assertMost);
1574
-
1575
- /**
1576
- * ### .within(start, finish[, msg])
1577
- *
1578
- * Asserts that the target is a number or a date greater than or equal to the given
1579
- * number or date `start`, and less than or equal to the given number or date `finish` respectively.
1580
- * However, it's often best to assert that the target is equal to its expected
1581
- * value.
1582
- *
1583
- * expect(2).to.equal(2); // Recommended
1584
- * expect(2).to.be.within(1, 3); // Not recommended
1585
- * expect(2).to.be.within(2, 3); // Not recommended
1586
- * expect(2).to.be.within(1, 2); // Not recommended
1587
- *
1588
- * Add `.lengthOf` earlier in the chain to assert that the target's `length`
1589
- * or `size` is greater than or equal to the given number `start`, and less
1590
- * than or equal to the given number `finish`.
1591
- *
1592
- * expect('foo').to.have.lengthOf(3); // Recommended
1593
- * expect('foo').to.have.lengthOf.within(2, 4); // Not recommended
1594
- *
1595
- * expect([1, 2, 3]).to.have.lengthOf(3); // Recommended
1596
- * expect([1, 2, 3]).to.have.lengthOf.within(2, 4); // Not recommended
1597
- *
1598
- * Add `.not` earlier in the chain to negate `.within`.
1599
- *
1600
- * expect(1).to.equal(1); // Recommended
1601
- * expect(1).to.not.be.within(2, 4); // Not recommended
1602
- *
1603
- * `.within` accepts an optional `msg` argument which is a custom error
1604
- * message to show when the assertion fails. The message can also be given as
1605
- * the second argument to `expect`.
1606
- *
1607
- * expect(4).to.be.within(1, 3, 'nooo why fail??');
1608
- * expect(4, 'nooo why fail??').to.be.within(1, 3);
1609
- *
1610
- * @name within
1611
- * @param {number} start lower bound inclusive
1612
- * @param {number} finish upper bound inclusive
1613
- * @param {string} msg _optional_
1614
- * @namespace BDD
1615
- * @public
1616
- */
1617
- Assertion.addMethod('within', function (start, finish, msg) {
1618
- if (msg) flag(this, 'message', msg);
1619
- var obj = flag(this, 'object')
1620
- , doLength = flag(this, 'doLength')
1621
- , flagMsg = flag(this, 'message')
1622
- , msgPrefix = ((flagMsg) ? flagMsg + ': ' : '')
1623
- , ssfi = flag(this, 'ssfi')
1624
- , objType = _.type(obj).toLowerCase()
1625
- , startType = _.type(start).toLowerCase()
1626
- , finishType = _.type(finish).toLowerCase()
1627
- , errorMessage
1628
- , shouldThrow = true
1629
- , range = (startType === 'date' && finishType === 'date')
1630
- ? start.toISOString() + '..' + finish.toISOString()
1631
- : start + '..' + finish;
1632
-
1633
- if (doLength && objType !== 'map' && objType !== 'set') {
1634
- new Assertion(obj, flagMsg, ssfi, true).to.have.property('length');
1635
- }
1636
-
1637
- if (!doLength && (objType === 'date' && (startType !== 'date' || finishType !== 'date'))) {
1638
- errorMessage = msgPrefix + 'the arguments to within must be dates';
1639
- } else if ((startType !== 'number' || finishType !== 'number') && (doLength || objType === 'number')) {
1640
- errorMessage = msgPrefix + 'the arguments to within must be numbers';
1641
- } else if (!doLength && (objType !== 'date' && objType !== 'number')) {
1642
- var printObj = (objType === 'string') ? "'" + obj + "'" : obj;
1643
- errorMessage = msgPrefix + 'expected ' + printObj + ' to be a number or a date';
1644
- } else {
1645
- shouldThrow = false;
1646
- }
1647
-
1648
- if (shouldThrow) {
1649
- throw new AssertionError(errorMessage, undefined, ssfi);
1650
- }
1651
-
1652
- if (doLength) {
1653
- var descriptor = 'length'
1654
- , itemsCount;
1655
- if (objType === 'map' || objType === 'set') {
1656
- descriptor = 'size';
1657
- itemsCount = obj.size;
1658
- } else {
1659
- itemsCount = obj.length;
1660
- }
1661
- this.assert(
1662
- itemsCount >= start && itemsCount <= finish
1663
- , 'expected #{this} to have a ' + descriptor + ' within ' + range
1664
- , 'expected #{this} to not have a ' + descriptor + ' within ' + range
1665
- );
1666
- } else {
1667
- this.assert(
1668
- obj >= start && obj <= finish
1669
- , 'expected #{this} to be within ' + range
1670
- , 'expected #{this} to not be within ' + range
1671
- );
1672
- }
1673
- });
1674
-
1675
- /**
1676
- * ### .instanceof(constructor[, msg])
1677
- *
1678
- * Asserts that the target is an instance of the given `constructor`.
1679
- *
1680
- * function Cat () { }
1681
- *
1682
- * expect(new Cat()).to.be.an.instanceof(Cat);
1683
- * expect([1, 2]).to.be.an.instanceof(Array);
1684
- *
1685
- * Add `.not` earlier in the chain to negate `.instanceof`.
1686
- *
1687
- * expect({a: 1}).to.not.be.an.instanceof(Array);
1688
- *
1689
- * `.instanceof` accepts an optional `msg` argument which is a custom error
1690
- * message to show when the assertion fails. The message can also be given as
1691
- * the second argument to `expect`.
1692
- *
1693
- * expect(1).to.be.an.instanceof(Array, 'nooo why fail??');
1694
- * expect(1, 'nooo why fail??').to.be.an.instanceof(Array);
1695
- *
1696
- * Due to limitations in ES5, `.instanceof` may not always work as expected
1697
- * when using a transpiler such as Babel or TypeScript. In particular, it may
1698
- * produce unexpected results when subclassing built-in object such as
1699
- * `Array`, `Error`, and `Map`. See your transpiler's docs for details:
1700
- *
1701
- * - ([Babel](https://babeljs.io/docs/usage/caveats/#classes))
1702
- * - ([TypeScript](https://github.com/Microsoft/TypeScript/wiki/Breaking-Changes#extending-built-ins-like-error-array-and-map-may-no-longer-work))
1703
- *
1704
- * The alias `.instanceOf` can be used interchangeably with `.instanceof`.
1705
- *
1706
- * @name instanceof
1707
- * @param {unknown} constructor
1708
- * @param {string} msg _optional_
1709
- * @alias instanceOf
1710
- * @namespace BDD
1711
- * @public
1712
- */
1713
- function assertInstanceOf (constructor, msg) {
1714
- if (msg) flag(this, 'message', msg);
1715
-
1716
- var target = flag(this, 'object')
1717
- var ssfi = flag(this, 'ssfi');
1718
- var flagMsg = flag(this, 'message');
1719
-
1720
- try {
1721
- var isInstanceOf = target instanceof constructor;
1722
- } catch (err) {
1723
- if (err instanceof TypeError) {
1724
- flagMsg = flagMsg ? flagMsg + ': ' : '';
1725
- throw new AssertionError(
1726
- flagMsg + 'The instanceof assertion needs a constructor but '
1727
- + _.type(constructor) + ' was given.',
1728
- undefined,
1729
- ssfi
1730
- );
1731
- }
1732
- throw err;
1733
- }
1734
-
1735
- var name = _.getName(constructor);
1736
- if (name == null) {
1737
- name = 'an unnamed constructor';
1738
- }
1739
-
1740
- this.assert(
1741
- isInstanceOf
1742
- , 'expected #{this} to be an instance of ' + name
1743
- , 'expected #{this} to not be an instance of ' + name
1744
- );
1745
- };
1746
-
1747
- Assertion.addMethod('instanceof', assertInstanceOf);
1748
- Assertion.addMethod('instanceOf', assertInstanceOf);
1749
-
1750
- /**
1751
- * ### .property(name[, val[, msg]])
1752
- *
1753
- * Asserts that the target has a property with the given key `name`.
1754
- *
1755
- * expect({a: 1}).to.have.property('a');
1756
- *
1757
- * When `val` is provided, `.property` also asserts that the property's value
1758
- * is equal to the given `val`.
1759
- *
1760
- * expect({a: 1}).to.have.property('a', 1);
1761
- *
1762
- * By default, strict (`===`) equality is used. Add `.deep` earlier in the
1763
- * chain to use deep equality instead. See the `deep-eql` project page for
1764
- * info on the deep equality algorithm: https://github.com/chaijs/deep-eql.
1765
- *
1766
- * // Target object deeply (but not strictly) has property `x: {a: 1}`
1767
- * expect({x: {a: 1}}).to.have.deep.property('x', {a: 1});
1768
- * expect({x: {a: 1}}).to.not.have.property('x', {a: 1});
1769
- *
1770
- * The target's enumerable and non-enumerable properties are always included
1771
- * in the search. By default, both own and inherited properties are included.
1772
- * Add `.own` earlier in the chain to exclude inherited properties from the
1773
- * search.
1774
- *
1775
- * Object.prototype.b = 2;
1776
- *
1777
- * expect({a: 1}).to.have.own.property('a');
1778
- * expect({a: 1}).to.have.own.property('a', 1);
1779
- * expect({a: 1}).to.have.property('b');
1780
- * expect({a: 1}).to.not.have.own.property('b');
1781
- *
1782
- * `.deep` and `.own` can be combined.
1783
- *
1784
- * expect({x: {a: 1}}).to.have.deep.own.property('x', {a: 1});
1785
- *
1786
- * Add `.nested` earlier in the chain to enable dot- and bracket-notation when
1787
- * referencing nested properties.
1788
- *
1789
- * expect({a: {b: ['x', 'y']}}).to.have.nested.property('a.b[1]');
1790
- * expect({a: {b: ['x', 'y']}}).to.have.nested.property('a.b[1]', 'y');
1791
- *
1792
- * If `.` or `[]` are part of an actual property name, they can be escaped by
1793
- * adding two backslashes before them.
1794
- *
1795
- * expect({'.a': {'[b]': 'x'}}).to.have.nested.property('\\.a.\\[b\\]');
1796
- *
1797
- * `.deep` and `.nested` can be combined.
1798
- *
1799
- * expect({a: {b: [{c: 3}]}})
1800
- * .to.have.deep.nested.property('a.b[0]', {c: 3});
1801
- *
1802
- * `.own` and `.nested` cannot be combined.
1803
- *
1804
- * Add `.not` earlier in the chain to negate `.property`.
1805
- *
1806
- * expect({a: 1}).to.not.have.property('b');
1807
- *
1808
- * However, it's dangerous to negate `.property` when providing `val`. The
1809
- * problem is that it creates uncertain expectations by asserting that the
1810
- * target either doesn't have a property with the given key `name`, or that it
1811
- * does have a property with the given key `name` but its value isn't equal to
1812
- * the given `val`. It's often best to identify the exact output that's
1813
- * expected, and then write an assertion that only accepts that exact output.
1814
- *
1815
- * When the target isn't expected to have a property with the given key
1816
- * `name`, it's often best to assert exactly that.
1817
- *
1818
- * expect({b: 2}).to.not.have.property('a'); // Recommended
1819
- * expect({b: 2}).to.not.have.property('a', 1); // Not recommended
1820
- *
1821
- * When the target is expected to have a property with the given key `name`,
1822
- * it's often best to assert that the property has its expected value, rather
1823
- * than asserting that it doesn't have one of many unexpected values.
1824
- *
1825
- * expect({a: 3}).to.have.property('a', 3); // Recommended
1826
- * expect({a: 3}).to.not.have.property('a', 1); // Not recommended
1827
- *
1828
- * `.property` changes the target of any assertions that follow in the chain
1829
- * to be the value of the property from the original target object.
1830
- *
1831
- * expect({a: 1}).to.have.property('a').that.is.a('number');
1832
- *
1833
- * `.property` accepts an optional `msg` argument which is a custom error
1834
- * message to show when the assertion fails. The message can also be given as
1835
- * the second argument to `expect`. When not providing `val`, only use the
1836
- * second form.
1837
- *
1838
- * // Recommended
1839
- * expect({a: 1}).to.have.property('a', 2, 'nooo why fail??');
1840
- * expect({a: 1}, 'nooo why fail??').to.have.property('a', 2);
1841
- * expect({a: 1}, 'nooo why fail??').to.have.property('b');
1842
- *
1843
- * // Not recommended
1844
- * expect({a: 1}).to.have.property('b', undefined, 'nooo why fail??');
1845
- *
1846
- * The above assertion isn't the same thing as not providing `val`. Instead,
1847
- * it's asserting that the target object has a `b` property that's equal to
1848
- * `undefined`.
1849
- *
1850
- * The assertions `.ownProperty` and `.haveOwnProperty` can be used
1851
- * interchangeably with `.own.property`.
1852
- *
1853
- * @name property
1854
- * @param {string} name
1855
- * @param {unknown} val (optional)
1856
- * @param {string} msg _optional_
1857
- * @namespace BDD
1858
- * @public
1859
- */
1860
- function assertProperty (name, val, msg) {
1861
- if (msg) flag(this, 'message', msg);
1862
-
1863
- var isNested = flag(this, 'nested')
1864
- , isOwn = flag(this, 'own')
1865
- , flagMsg = flag(this, 'message')
1866
- , obj = flag(this, 'object')
1867
- , ssfi = flag(this, 'ssfi')
1868
- , nameType = typeof name;
1869
-
1870
- flagMsg = flagMsg ? flagMsg + ': ' : '';
1871
-
1872
- if (isNested) {
1873
- if (nameType !== 'string') {
1874
- throw new AssertionError(
1875
- flagMsg + 'the argument to property must be a string when using nested syntax',
1876
- undefined,
1877
- ssfi
1878
- );
1879
- }
1880
- } else {
1881
- if (nameType !== 'string' && nameType !== 'number' && nameType !== 'symbol') {
1882
- throw new AssertionError(
1883
- flagMsg + 'the argument to property must be a string, number, or symbol',
1884
- undefined,
1885
- ssfi
1886
- );
1887
- }
1888
- }
1889
-
1890
- if (isNested && isOwn) {
1891
- throw new AssertionError(
1892
- flagMsg + 'The "nested" and "own" flags cannot be combined.',
1893
- undefined,
1894
- ssfi
1895
- );
1896
- }
1897
-
1898
- if (obj === null || obj === undefined) {
1899
- throw new AssertionError(
1900
- flagMsg + 'Target cannot be null or undefined.',
1901
- undefined,
1902
- ssfi
1903
- );
1904
- }
1905
-
1906
- var isDeep = flag(this, 'deep')
1907
- , negate = flag(this, 'negate')
1908
- , pathInfo = isNested ? _.getPathInfo(obj, name) : null
1909
- , value = isNested ? pathInfo.value : obj[name]
1910
- , isEql = isDeep ? flag(this, 'eql') : (val1, val2) => val1 === val2;
1911
-
1912
- var descriptor = '';
1913
- if (isDeep) descriptor += 'deep ';
1914
- if (isOwn) descriptor += 'own ';
1915
- if (isNested) descriptor += 'nested ';
1916
- descriptor += 'property ';
1917
-
1918
- var hasProperty;
1919
- if (isOwn) hasProperty = Object.prototype.hasOwnProperty.call(obj, name);
1920
- else if (isNested) hasProperty = pathInfo.exists;
1921
- else hasProperty = _.hasProperty(obj, name);
1922
-
1923
- // When performing a negated assertion for both name and val, merely having
1924
- // a property with the given name isn't enough to cause the assertion to
1925
- // fail. It must both have a property with the given name, and the value of
1926
- // that property must equal the given val. Therefore, skip this assertion in
1927
- // favor of the next.
1928
- if (!negate || arguments.length === 1) {
1929
- this.assert(
1930
- hasProperty
1931
- , 'expected #{this} to have ' + descriptor + _.inspect(name)
1932
- , 'expected #{this} to not have ' + descriptor + _.inspect(name));
1933
- }
1934
-
1935
- if (arguments.length > 1) {
1936
- this.assert(
1937
- hasProperty && isEql(val, value)
1938
- , 'expected #{this} to have ' + descriptor + _.inspect(name) + ' of #{exp}, but got #{act}'
1939
- , 'expected #{this} to not have ' + descriptor + _.inspect(name) + ' of #{act}'
1940
- , val
1941
- , value
1942
- );
1943
- }
1944
-
1945
- flag(this, 'object', value);
1946
- }
1947
-
1948
- Assertion.addMethod('property', assertProperty);
1949
-
1950
- /**
1951
- *
1952
- * @param {unknown} name
1953
- * @param {unknown} value
1954
- * @param {string} msg
1955
- */
1956
- function assertOwnProperty (name, value, msg) {
1957
- flag(this, 'own', true);
1958
- assertProperty.apply(this, arguments);
1959
- }
1960
-
1961
- Assertion.addMethod('ownProperty', assertOwnProperty);
1962
- Assertion.addMethod('haveOwnProperty', assertOwnProperty);
1963
-
1964
- /**
1965
- * ### .ownPropertyDescriptor(name[, descriptor[, msg]])
1966
- *
1967
- * Asserts that the target has its own property descriptor with the given key
1968
- * `name`. Enumerable and non-enumerable properties are included in the
1969
- * search.
1970
- *
1971
- * expect({a: 1}).to.have.ownPropertyDescriptor('a');
1972
- *
1973
- * When `descriptor` is provided, `.ownPropertyDescriptor` also asserts that
1974
- * the property's descriptor is deeply equal to the given `descriptor`. See
1975
- * the `deep-eql` project page for info on the deep equality algorithm:
1976
- * https://github.com/chaijs/deep-eql.
1977
- *
1978
- * expect({a: 1}).to.have.ownPropertyDescriptor('a', {
1979
- * configurable: true,
1980
- * enumerable: true,
1981
- * writable: true,
1982
- * value: 1,
1983
- * });
1984
- *
1985
- * Add `.not` earlier in the chain to negate `.ownPropertyDescriptor`.
1986
- *
1987
- * expect({a: 1}).to.not.have.ownPropertyDescriptor('b');
1988
- *
1989
- * However, it's dangerous to negate `.ownPropertyDescriptor` when providing
1990
- * a `descriptor`. The problem is that it creates uncertain expectations by
1991
- * asserting that the target either doesn't have a property descriptor with
1992
- * the given key `name`, or that it does have a property descriptor with the
1993
- * given key `name` but it’s not deeply equal to the given `descriptor`. It's
1994
- * often best to identify the exact output that's expected, and then write an
1995
- * assertion that only accepts that exact output.
1996
- *
1997
- * When the target isn't expected to have a property descriptor with the given
1998
- * key `name`, it's often best to assert exactly that.
1999
- *
2000
- * // Recommended
2001
- * expect({b: 2}).to.not.have.ownPropertyDescriptor('a');
2002
- *
2003
- * // Not recommended
2004
- * expect({b: 2}).to.not.have.ownPropertyDescriptor('a', {
2005
- * configurable: true,
2006
- * enumerable: true,
2007
- * writable: true,
2008
- * value: 1,
2009
- * });
2010
- *
2011
- * When the target is expected to have a property descriptor with the given
2012
- * key `name`, it's often best to assert that the property has its expected
2013
- * descriptor, rather than asserting that it doesn't have one of many
2014
- * unexpected descriptors.
2015
- *
2016
- * // Recommended
2017
- * expect({a: 3}).to.have.ownPropertyDescriptor('a', {
2018
- * configurable: true,
2019
- * enumerable: true,
2020
- * writable: true,
2021
- * value: 3,
2022
- * });
2023
- *
2024
- * // Not recommended
2025
- * expect({a: 3}).to.not.have.ownPropertyDescriptor('a', {
2026
- * configurable: true,
2027
- * enumerable: true,
2028
- * writable: true,
2029
- * value: 1,
2030
- * });
2031
- *
2032
- * `.ownPropertyDescriptor` changes the target of any assertions that follow
2033
- * in the chain to be the value of the property descriptor from the original
2034
- * target object.
2035
- *
2036
- * expect({a: 1}).to.have.ownPropertyDescriptor('a')
2037
- * .that.has.property('enumerable', true);
2038
- *
2039
- * `.ownPropertyDescriptor` accepts an optional `msg` argument which is a
2040
- * custom error message to show when the assertion fails. The message can also
2041
- * be given as the second argument to `expect`. When not providing
2042
- * `descriptor`, only use the second form.
2043
- *
2044
- * // Recommended
2045
- * expect({a: 1}).to.have.ownPropertyDescriptor('a', {
2046
- * configurable: true,
2047
- * enumerable: true,
2048
- * writable: true,
2049
- * value: 2,
2050
- * }, 'nooo why fail??');
2051
- *
2052
- * // Recommended
2053
- * expect({a: 1}, 'nooo why fail??').to.have.ownPropertyDescriptor('a', {
2054
- * configurable: true,
2055
- * enumerable: true,
2056
- * writable: true,
2057
- * value: 2,
2058
- * });
2059
- *
2060
- * // Recommended
2061
- * expect({a: 1}, 'nooo why fail??').to.have.ownPropertyDescriptor('b');
2062
- *
2063
- * // Not recommended
2064
- * expect({a: 1})
2065
- * .to.have.ownPropertyDescriptor('b', undefined, 'nooo why fail??');
2066
- *
2067
- * The above assertion isn't the same thing as not providing `descriptor`.
2068
- * Instead, it's asserting that the target object has a `b` property
2069
- * descriptor that's deeply equal to `undefined`.
2070
- *
2071
- * The alias `.haveOwnPropertyDescriptor` can be used interchangeably with
2072
- * `.ownPropertyDescriptor`.
2073
- *
2074
- * @name ownPropertyDescriptor
2075
- * @alias haveOwnPropertyDescriptor
2076
- * @param {string} name
2077
- * @param {object} descriptor _optional_
2078
- * @param {string} msg _optional_
2079
- * @namespace BDD
2080
- * @public
2081
- */
2082
- function assertOwnPropertyDescriptor (name, descriptor, msg) {
2083
- if (typeof descriptor === 'string') {
2084
- msg = descriptor;
2085
- descriptor = null;
2086
- }
2087
- if (msg) flag(this, 'message', msg);
2088
- var obj = flag(this, 'object');
2089
- var actualDescriptor = Object.getOwnPropertyDescriptor(Object(obj), name);
2090
- var eql = flag(this, 'eql');
2091
- if (actualDescriptor && descriptor) {
2092
- this.assert(
2093
- eql(descriptor, actualDescriptor)
2094
- , 'expected the own property descriptor for ' + _.inspect(name) + ' on #{this} to match ' + _.inspect(descriptor) + ', got ' + _.inspect(actualDescriptor)
2095
- , 'expected the own property descriptor for ' + _.inspect(name) + ' on #{this} to not match ' + _.inspect(descriptor)
2096
- , descriptor
2097
- , actualDescriptor
2098
- , true
2099
- );
2100
- } else {
2101
- this.assert(
2102
- actualDescriptor
2103
- , 'expected #{this} to have an own property descriptor for ' + _.inspect(name)
2104
- , 'expected #{this} to not have an own property descriptor for ' + _.inspect(name)
2105
- );
2106
- }
2107
- flag(this, 'object', actualDescriptor);
2108
- }
2109
-
2110
- Assertion.addMethod('ownPropertyDescriptor', assertOwnPropertyDescriptor);
2111
- Assertion.addMethod('haveOwnPropertyDescriptor', assertOwnPropertyDescriptor);
2112
-
2113
- /**
2114
- *
2115
- */
2116
- function assertLengthChain () {
2117
- flag(this, 'doLength', true);
2118
- }
2119
-
2120
- /**
2121
- * ### .lengthOf(n[, msg])
2122
- *
2123
- * Asserts that the target's `length` or `size` is equal to the given number
2124
- * `n`.
2125
- *
2126
- * expect([1, 2, 3]).to.have.lengthOf(3);
2127
- * expect('foo').to.have.lengthOf(3);
2128
- * expect(new Set([1, 2, 3])).to.have.lengthOf(3);
2129
- * expect(new Map([['a', 1], ['b', 2], ['c', 3]])).to.have.lengthOf(3);
2130
- *
2131
- * Add `.not` earlier in the chain to negate `.lengthOf`. However, it's often
2132
- * best to assert that the target's `length` property is equal to its expected
2133
- * value, rather than not equal to one of many unexpected values.
2134
- *
2135
- * expect('foo').to.have.lengthOf(3); // Recommended
2136
- * expect('foo').to.not.have.lengthOf(4); // Not recommended
2137
- *
2138
- * `.lengthOf` accepts an optional `msg` argument which is a custom error
2139
- * message to show when the assertion fails. The message can also be given as
2140
- * the second argument to `expect`.
2141
- *
2142
- * expect([1, 2, 3]).to.have.lengthOf(2, 'nooo why fail??');
2143
- * expect([1, 2, 3], 'nooo why fail??').to.have.lengthOf(2);
2144
- *
2145
- * `.lengthOf` can also be used as a language chain, causing all `.above`,
2146
- * `.below`, `.least`, `.most`, and `.within` assertions that follow in the
2147
- * chain to use the target's `length` property as the target. However, it's
2148
- * often best to assert that the target's `length` property is equal to its
2149
- * expected length, rather than asserting that its `length` property falls
2150
- * within some range of values.
2151
- *
2152
- * // Recommended
2153
- * expect([1, 2, 3]).to.have.lengthOf(3);
2154
- *
2155
- * // Not recommended
2156
- * expect([1, 2, 3]).to.have.lengthOf.above(2);
2157
- * expect([1, 2, 3]).to.have.lengthOf.below(4);
2158
- * expect([1, 2, 3]).to.have.lengthOf.at.least(3);
2159
- * expect([1, 2, 3]).to.have.lengthOf.at.most(3);
2160
- * expect([1, 2, 3]).to.have.lengthOf.within(2,4);
2161
- *
2162
- * Due to a compatibility issue, the alias `.length` can't be chained directly
2163
- * off of an uninvoked method such as `.a`. Therefore, `.length` can't be used
2164
- * interchangeably with `.lengthOf` in every situation. It's recommended to
2165
- * always use `.lengthOf` instead of `.length`.
2166
- *
2167
- * expect([1, 2, 3]).to.have.a.length(3); // incompatible; throws error
2168
- * expect([1, 2, 3]).to.have.a.lengthOf(3); // passes as expected
2169
- *
2170
- * @name lengthOf
2171
- * @alias length
2172
- * @param {number} n
2173
- * @param {string} msg _optional_
2174
- * @namespace BDD
2175
- * @public
2176
- */
2177
- function assertLength (n, msg) {
2178
- if (msg) flag(this, 'message', msg);
2179
- var obj = flag(this, 'object')
2180
- , objType = _.type(obj).toLowerCase()
2181
- , flagMsg = flag(this, 'message')
2182
- , ssfi = flag(this, 'ssfi')
2183
- , descriptor = 'length'
2184
- , itemsCount;
2185
-
2186
- switch (objType) {
2187
- case 'map':
2188
- case 'set':
2189
- descriptor = 'size';
2190
- itemsCount = obj.size;
2191
- break;
2192
- default:
2193
- new Assertion(obj, flagMsg, ssfi, true).to.have.property('length');
2194
- itemsCount = obj.length;
2195
- }
2196
-
2197
- this.assert(
2198
- itemsCount == n
2199
- , 'expected #{this} to have a ' + descriptor + ' of #{exp} but got #{act}'
2200
- , 'expected #{this} to not have a ' + descriptor + ' of #{act}'
2201
- , n
2202
- , itemsCount
2203
- );
2204
- }
2205
-
2206
- Assertion.addChainableMethod('length', assertLength, assertLengthChain);
2207
- Assertion.addChainableMethod('lengthOf', assertLength, assertLengthChain);
2208
-
2209
- /**
2210
- * ### .match(re[, msg])
2211
- *
2212
- * Asserts that the target matches the given regular expression `re`.
2213
- *
2214
- * expect('foobar').to.match(/^foo/);
2215
- *
2216
- * Add `.not` earlier in the chain to negate `.match`.
2217
- *
2218
- * expect('foobar').to.not.match(/taco/);
2219
- *
2220
- * `.match` accepts an optional `msg` argument which is a custom error message
2221
- * to show when the assertion fails. The message can also be given as the
2222
- * second argument to `expect`.
2223
- *
2224
- * expect('foobar').to.match(/taco/, 'nooo why fail??');
2225
- * expect('foobar', 'nooo why fail??').to.match(/taco/);
2226
- *
2227
- * The alias `.matches` can be used interchangeably with `.match`.
2228
- *
2229
- * @name match
2230
- * @alias matches
2231
- * @param {RegExp} re
2232
- * @param {string} msg _optional_
2233
- * @namespace BDD
2234
- * @public
2235
- */
2236
- function assertMatch(re, msg) {
2237
- if (msg) flag(this, 'message', msg);
2238
- var obj = flag(this, 'object');
2239
- this.assert(
2240
- re.exec(obj)
2241
- , 'expected #{this} to match ' + re
2242
- , 'expected #{this} not to match ' + re
2243
- );
2244
- }
2245
-
2246
- Assertion.addMethod('match', assertMatch);
2247
- Assertion.addMethod('matches', assertMatch);
2248
-
2249
- /**
2250
- * ### .string(str[, msg])
2251
- *
2252
- * Asserts that the target string contains the given substring `str`.
2253
- *
2254
- * expect('foobar').to.have.string('bar');
2255
- *
2256
- * Add `.not` earlier in the chain to negate `.string`.
2257
- *
2258
- * expect('foobar').to.not.have.string('taco');
2259
- *
2260
- * `.string` accepts an optional `msg` argument which is a custom error
2261
- * message to show when the assertion fails. The message can also be given as
2262
- * the second argument to `expect`.
2263
- *
2264
- * expect('foobar').to.have.string('taco', 'nooo why fail??');
2265
- * expect('foobar', 'nooo why fail??').to.have.string('taco');
2266
- *
2267
- * @name string
2268
- * @param {string} str
2269
- * @param {string} msg _optional_
2270
- * @namespace BDD
2271
- * @public
2272
- */
2273
- Assertion.addMethod('string', function (str, msg) {
2274
- if (msg) flag(this, 'message', msg);
2275
- var obj = flag(this, 'object')
2276
- , flagMsg = flag(this, 'message')
2277
- , ssfi = flag(this, 'ssfi');
2278
- new Assertion(obj, flagMsg, ssfi, true).is.a('string');
2279
-
2280
- this.assert(
2281
- ~obj.indexOf(str)
2282
- , 'expected #{this} to contain ' + _.inspect(str)
2283
- , 'expected #{this} to not contain ' + _.inspect(str)
2284
- );
2285
- });
2286
-
2287
- /**
2288
- * ### .keys(key1[, key2[, ...]])
2289
- *
2290
- * Asserts that the target object, array, map, or set has the given keys. Only
2291
- * the target's own inherited properties are included in the search.
2292
- *
2293
- * When the target is an object or array, keys can be provided as one or more
2294
- * string arguments, a single array argument, or a single object argument. In
2295
- * the latter case, only the keys in the given object matter; the values are
2296
- * ignored.
2297
- *
2298
- * expect({a: 1, b: 2}).to.have.all.keys('a', 'b');
2299
- * expect(['x', 'y']).to.have.all.keys(0, 1);
2300
- *
2301
- * expect({a: 1, b: 2}).to.have.all.keys(['a', 'b']);
2302
- * expect(['x', 'y']).to.have.all.keys([0, 1]);
2303
- *
2304
- * expect({a: 1, b: 2}).to.have.all.keys({a: 4, b: 5}); // ignore 4 and 5
2305
- * expect(['x', 'y']).to.have.all.keys({0: 4, 1: 5}); // ignore 4 and 5
2306
- *
2307
- * When the target is a map or set, each key must be provided as a separate
2308
- * argument.
2309
- *
2310
- * expect(new Map([['a', 1], ['b', 2]])).to.have.all.keys('a', 'b');
2311
- * expect(new Set(['a', 'b'])).to.have.all.keys('a', 'b');
2312
- *
2313
- * Because `.keys` does different things based on the target's type, it's
2314
- * important to check the target's type before using `.keys`. See the `.a` doc
2315
- * for info on testing a target's type.
2316
- *
2317
- * expect({a: 1, b: 2}).to.be.an('object').that.has.all.keys('a', 'b');
2318
- *
2319
- * By default, strict (`===`) equality is used to compare keys of maps and
2320
- * sets. Add `.deep` earlier in the chain to use deep equality instead. See
2321
- * the `deep-eql` project page for info on the deep equality algorithm:
2322
- * https://github.com/chaijs/deep-eql.
2323
- *
2324
- * // Target set deeply (but not strictly) has key `{a: 1}`
2325
- * expect(new Set([{a: 1}])).to.have.all.deep.keys([{a: 1}]);
2326
- * expect(new Set([{a: 1}])).to.not.have.all.keys([{a: 1}]);
2327
- *
2328
- * By default, the target must have all of the given keys and no more. Add
2329
- * `.any` earlier in the chain to only require that the target have at least
2330
- * one of the given keys. Also, add `.not` earlier in the chain to negate
2331
- * `.keys`. It's often best to add `.any` when negating `.keys`, and to use
2332
- * `.all` when asserting `.keys` without negation.
2333
- *
2334
- * When negating `.keys`, `.any` is preferred because `.not.any.keys` asserts
2335
- * exactly what's expected of the output, whereas `.not.all.keys` creates
2336
- * uncertain expectations.
2337
- *
2338
- * // Recommended; asserts that target doesn't have any of the given keys
2339
- * expect({a: 1, b: 2}).to.not.have.any.keys('c', 'd');
2340
- *
2341
- * // Not recommended; asserts that target doesn't have all of the given
2342
- * // keys but may or may not have some of them
2343
- * expect({a: 1, b: 2}).to.not.have.all.keys('c', 'd');
2344
- *
2345
- * When asserting `.keys` without negation, `.all` is preferred because
2346
- * `.all.keys` asserts exactly what's expected of the output, whereas
2347
- * `.any.keys` creates uncertain expectations.
2348
- *
2349
- * // Recommended; asserts that target has all the given keys
2350
- * expect({a: 1, b: 2}).to.have.all.keys('a', 'b');
2351
- *
2352
- * // Not recommended; asserts that target has at least one of the given
2353
- * // keys but may or may not have more of them
2354
- * expect({a: 1, b: 2}).to.have.any.keys('a', 'b');
2355
- *
2356
- * Note that `.all` is used by default when neither `.all` nor `.any` appear
2357
- * earlier in the chain. However, it's often best to add `.all` anyway because
2358
- * it improves readability.
2359
- *
2360
- * // Both assertions are identical
2361
- * expect({a: 1, b: 2}).to.have.all.keys('a', 'b'); // Recommended
2362
- * expect({a: 1, b: 2}).to.have.keys('a', 'b'); // Not recommended
2363
- *
2364
- * Add `.include` earlier in the chain to require that the target's keys be a
2365
- * superset of the expected keys, rather than identical sets.
2366
- *
2367
- * // Target object's keys are a superset of ['a', 'b'] but not identical
2368
- * expect({a: 1, b: 2, c: 3}).to.include.all.keys('a', 'b');
2369
- * expect({a: 1, b: 2, c: 3}).to.not.have.all.keys('a', 'b');
2370
- *
2371
- * However, if `.any` and `.include` are combined, only the `.any` takes
2372
- * effect. The `.include` is ignored in this case.
2373
- *
2374
- * // Both assertions are identical
2375
- * expect({a: 1}).to.have.any.keys('a', 'b');
2376
- * expect({a: 1}).to.include.any.keys('a', 'b');
2377
- *
2378
- * A custom error message can be given as the second argument to `expect`.
2379
- *
2380
- * expect({a: 1}, 'nooo why fail??').to.have.key('b');
2381
- *
2382
- * The alias `.key` can be used interchangeably with `.keys`.
2383
- *
2384
- * @name keys
2385
- * @alias key
2386
- * @param {...string | Array | object} keys
2387
- * @namespace BDD
2388
- * @public
2389
- */
2390
- function assertKeys (keys) {
2391
- var obj = flag(this, 'object')
2392
- , objType = _.type(obj)
2393
- , keysType = _.type(keys)
2394
- , ssfi = flag(this, 'ssfi')
2395
- , isDeep = flag(this, 'deep')
2396
- , str
2397
- , deepStr = ''
2398
- , actual
2399
- , ok = true
2400
- , flagMsg = flag(this, 'message');
2401
-
2402
- flagMsg = flagMsg ? flagMsg + ': ' : '';
2403
- var mixedArgsMsg = flagMsg + 'when testing keys against an object or an array you must give a single Array|Object|String argument or multiple String arguments';
2404
-
2405
- if (objType === 'Map' || objType === 'Set') {
2406
- deepStr = isDeep ? 'deeply ' : '';
2407
- actual = [];
2408
-
2409
- // Map and Set '.keys' aren't supported in IE 11. Therefore, use .forEach.
2410
- obj.forEach(function (val, key) { actual.push(key) });
2411
-
2412
- if (keysType !== 'Array') {
2413
- keys = Array.prototype.slice.call(arguments);
2414
- }
2415
- } else {
2416
- actual = _.getOwnEnumerableProperties(obj);
2417
-
2418
- switch (keysType) {
2419
- case 'Array':
2420
- if (arguments.length > 1) {
2421
- throw new AssertionError(mixedArgsMsg, undefined, ssfi);
2422
- }
2423
- break;
2424
- case 'Object':
2425
- if (arguments.length > 1) {
2426
- throw new AssertionError(mixedArgsMsg, undefined, ssfi);
2427
- }
2428
- keys = Object.keys(keys);
2429
- break;
2430
- default:
2431
- keys = Array.prototype.slice.call(arguments);
2432
- }
2433
-
2434
- // Only stringify non-Symbols because Symbols would become "Symbol()"
2435
- keys = keys.map(function (val) {
2436
- return typeof val === 'symbol' ? val : String(val);
2437
- });
2438
- }
2439
-
2440
- if (!keys.length) {
2441
- throw new AssertionError(flagMsg + 'keys required', undefined, ssfi);
2442
- }
2443
-
2444
- var len = keys.length
2445
- , any = flag(this, 'any')
2446
- , all = flag(this, 'all')
2447
- , expected = keys
2448
- , isEql = isDeep ? flag(this, 'eql') : (val1, val2) => val1 === val2;
2449
-
2450
- if (!any && !all) {
2451
- all = true;
2452
- }
2453
-
2454
- // Has any
2455
- if (any) {
2456
- ok = expected.some(function(expectedKey) {
2457
- return actual.some(function(actualKey) {
2458
- return isEql(expectedKey, actualKey);
2459
- });
2460
- });
2461
- }
2462
-
2463
- // Has all
2464
- if (all) {
2465
- ok = expected.every(function(expectedKey) {
2466
- return actual.some(function(actualKey) {
2467
- return isEql(expectedKey, actualKey);
2468
- });
2469
- });
2470
-
2471
- if (!flag(this, 'contains')) {
2472
- ok = ok && keys.length == actual.length;
2473
- }
2474
- }
2475
-
2476
- // Key string
2477
- if (len > 1) {
2478
- keys = keys.map(function(key) {
2479
- return _.inspect(key);
2480
- });
2481
- var last = keys.pop();
2482
- if (all) {
2483
- str = keys.join(', ') + ', and ' + last;
2484
- }
2485
- if (any) {
2486
- str = keys.join(', ') + ', or ' + last;
2487
- }
2488
- } else {
2489
- str = _.inspect(keys[0]);
2490
- }
2491
-
2492
- // Form
2493
- str = (len > 1 ? 'keys ' : 'key ') + str;
2494
-
2495
- // Have / include
2496
- str = (flag(this, 'contains') ? 'contain ' : 'have ') + str;
2497
-
2498
- // Assertion
2499
- this.assert(
2500
- ok
2501
- , 'expected #{this} to ' + deepStr + str
2502
- , 'expected #{this} to not ' + deepStr + str
2503
- , expected.slice(0).sort(_.compareByInspect)
2504
- , actual.sort(_.compareByInspect)
2505
- , true
2506
- );
2507
- }
2508
-
2509
- Assertion.addMethod('keys', assertKeys);
2510
- Assertion.addMethod('key', assertKeys);
2511
-
2512
- /**
2513
- * ### .throw([errorLike], [errMsgMatcher], [msg])
2514
- *
2515
- * When no arguments are provided, `.throw` invokes the target function and
2516
- * asserts that an error is thrown.
2517
- *
2518
- * var badFn = function () { throw new TypeError('Illegal salmon!'); };
2519
- * expect(badFn).to.throw();
2520
- *
2521
- * When one argument is provided, and it's an error constructor, `.throw`
2522
- * invokes the target function and asserts that an error is thrown that's an
2523
- * instance of that error constructor.
2524
- *
2525
- * var badFn = function () { throw new TypeError('Illegal salmon!'); };
2526
- * expect(badFn).to.throw(TypeError);
2527
- *
2528
- * When one argument is provided, and it's an error instance, `.throw` invokes
2529
- * the target function and asserts that an error is thrown that's strictly
2530
- * (`===`) equal to that error instance.
2531
- *
2532
- * var err = new TypeError('Illegal salmon!');
2533
- * var badFn = function () { throw err; };
2534
- *
2535
- * expect(badFn).to.throw(err);
2536
- *
2537
- * When one argument is provided, and it's a string, `.throw` invokes the
2538
- * target function and asserts that an error is thrown with a message that
2539
- * contains that string.
2540
- *
2541
- * var badFn = function () { throw new TypeError('Illegal salmon!'); };
2542
- * expect(badFn).to.throw('salmon');
2543
- *
2544
- * When one argument is provided, and it's a regular expression, `.throw`
2545
- * invokes the target function and asserts that an error is thrown with a
2546
- * message that matches that regular expression.
2547
- *
2548
- * var badFn = function () { throw new TypeError('Illegal salmon!'); };
2549
- * expect(badFn).to.throw(/salmon/);
2550
- *
2551
- * When two arguments are provided, and the first is an error instance or
2552
- * constructor, and the second is a string or regular expression, `.throw`
2553
- * invokes the function and asserts that an error is thrown that fulfills both
2554
- * conditions as described above.
2555
- *
2556
- * var err = new TypeError('Illegal salmon!');
2557
- * var badFn = function () { throw err; };
2558
- *
2559
- * expect(badFn).to.throw(TypeError, 'salmon');
2560
- * expect(badFn).to.throw(TypeError, /salmon/);
2561
- * expect(badFn).to.throw(err, 'salmon');
2562
- * expect(badFn).to.throw(err, /salmon/);
2563
- *
2564
- * Add `.not` earlier in the chain to negate `.throw`.
2565
- *
2566
- * var goodFn = function () {};
2567
- * expect(goodFn).to.not.throw();
2568
- *
2569
- * However, it's dangerous to negate `.throw` when providing any arguments.
2570
- * The problem is that it creates uncertain expectations by asserting that the
2571
- * target either doesn't throw an error, or that it throws an error but of a
2572
- * different type than the given type, or that it throws an error of the given
2573
- * type but with a message that doesn't include the given string. It's often
2574
- * best to identify the exact output that's expected, and then write an
2575
- * assertion that only accepts that exact output.
2576
- *
2577
- * When the target isn't expected to throw an error, it's often best to assert
2578
- * exactly that.
2579
- *
2580
- * var goodFn = function () {};
2581
- *
2582
- * expect(goodFn).to.not.throw(); // Recommended
2583
- * expect(goodFn).to.not.throw(ReferenceError, 'x'); // Not recommended
2584
- *
2585
- * When the target is expected to throw an error, it's often best to assert
2586
- * that the error is of its expected type, and has a message that includes an
2587
- * expected string, rather than asserting that it doesn't have one of many
2588
- * unexpected types, and doesn't have a message that includes some string.
2589
- *
2590
- * var badFn = function () { throw new TypeError('Illegal salmon!'); };
2591
- *
2592
- * expect(badFn).to.throw(TypeError, 'salmon'); // Recommended
2593
- * expect(badFn).to.not.throw(ReferenceError, 'x'); // Not recommended
2594
- *
2595
- * `.throw` changes the target of any assertions that follow in the chain to
2596
- * be the error object that's thrown.
2597
- *
2598
- * var err = new TypeError('Illegal salmon!');
2599
- * err.code = 42;
2600
- * var badFn = function () { throw err; };
2601
- *
2602
- * expect(badFn).to.throw(TypeError).with.property('code', 42);
2603
- *
2604
- * `.throw` accepts an optional `msg` argument which is a custom error message
2605
- * to show when the assertion fails. The message can also be given as the
2606
- * second argument to `expect`. When not providing two arguments, always use
2607
- * the second form.
2608
- *
2609
- * var goodFn = function () {};
2610
- *
2611
- * expect(goodFn).to.throw(TypeError, 'x', 'nooo why fail??');
2612
- * expect(goodFn, 'nooo why fail??').to.throw();
2613
- *
2614
- * Due to limitations in ES5, `.throw` may not always work as expected when
2615
- * using a transpiler such as Babel or TypeScript. In particular, it may
2616
- * produce unexpected results when subclassing the built-in `Error` object and
2617
- * then passing the subclassed constructor to `.throw`. See your transpiler's
2618
- * docs for details:
2619
- *
2620
- * - ([Babel](https://babeljs.io/docs/usage/caveats/#classes))
2621
- * - ([TypeScript](https://github.com/Microsoft/TypeScript/wiki/Breaking-Changes#extending-built-ins-like-error-array-and-map-may-no-longer-work))
2622
- *
2623
- * Beware of some common mistakes when using the `throw` assertion. One common
2624
- * mistake is to accidentally invoke the function yourself instead of letting
2625
- * the `throw` assertion invoke the function for you. For example, when
2626
- * testing if a function named `fn` throws, provide `fn` instead of `fn()` as
2627
- * the target for the assertion.
2628
- *
2629
- * expect(fn).to.throw(); // Good! Tests `fn` as desired
2630
- * expect(fn()).to.throw(); // Bad! Tests result of `fn()`, not `fn`
2631
- *
2632
- * If you need to assert that your function `fn` throws when passed certain
2633
- * arguments, then wrap a call to `fn` inside of another function.
2634
- *
2635
- * expect(function () { fn(42); }).to.throw(); // Function expression
2636
- * expect(() => fn(42)).to.throw(); // ES6 arrow function
2637
- *
2638
- * Another common mistake is to provide an object method (or any stand-alone
2639
- * function that relies on `this`) as the target of the assertion. Doing so is
2640
- * problematic because the `this` context will be lost when the function is
2641
- * invoked by `.throw`; there's no way for it to know what `this` is supposed
2642
- * to be. There are two ways around this problem. One solution is to wrap the
2643
- * method or function call inside of another function. Another solution is to
2644
- * use `bind`.
2645
- *
2646
- * expect(function () { cat.meow(); }).to.throw(); // Function expression
2647
- * expect(() => cat.meow()).to.throw(); // ES6 arrow function
2648
- * expect(cat.meow.bind(cat)).to.throw(); // Bind
2649
- *
2650
- * Finally, it's worth mentioning that it's a best practice in JavaScript to
2651
- * only throw `Error` and derivatives of `Error` such as `ReferenceError`,
2652
- * `TypeError`, and user-defined objects that extend `Error`. No other type of
2653
- * value will generate a stack trace when initialized. With that said, the
2654
- * `throw` assertion does technically support any type of value being thrown,
2655
- * not just `Error` and its derivatives.
2656
- *
2657
- * The aliases `.throws` and `.Throw` can be used interchangeably with
2658
- * `.throw`.
2659
- *
2660
- * @name throw
2661
- * @alias throws
2662
- * @alias Throw
2663
- * @param {Error} errorLike
2664
- * @param {string | RegExp} errMsgMatcher error message
2665
- * @param {string} msg _optional_
2666
- * @see https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Error#Error_types
2667
- * @returns {void} error for chaining (null if no error)
2668
- * @namespace BDD
2669
- * @public
2670
- */
2671
- function assertThrows (errorLike, errMsgMatcher, msg) {
2672
- if (msg) flag(this, 'message', msg);
2673
- var obj = flag(this, 'object')
2674
- , ssfi = flag(this, 'ssfi')
2675
- , flagMsg = flag(this, 'message')
2676
- , negate = flag(this, 'negate') || false;
2677
- new Assertion(obj, flagMsg, ssfi, true).is.a('function');
2678
-
2679
- if (_.isRegExp(errorLike) || typeof errorLike === 'string') {
2680
- errMsgMatcher = errorLike;
2681
- errorLike = null;
2682
- }
2683
-
2684
- let caughtErr;
2685
- let errorWasThrown = false;
2686
- try {
2687
- obj();
2688
- } catch (err) {
2689
- errorWasThrown = true;
2690
- caughtErr = err;
2691
- }
2692
-
2693
- // If we have the negate flag enabled and at least one valid argument it means we do expect an error
2694
- // but we want it to match a given set of criteria
2695
- var everyArgIsUndefined = errorLike === undefined && errMsgMatcher === undefined;
2696
-
2697
- // If we've got the negate flag enabled and both args, we should only fail if both aren't compatible
2698
- // See Issue #551 and PR #683@GitHub
2699
- var everyArgIsDefined = Boolean(errorLike && errMsgMatcher);
2700
- var errorLikeFail = false;
2701
- var errMsgMatcherFail = false;
2702
-
2703
- // Checking if error was thrown
2704
- if (everyArgIsUndefined || !everyArgIsUndefined && !negate) {
2705
- // We need this to display results correctly according to their types
2706
- var errorLikeString = 'an error';
2707
- if (errorLike instanceof Error) {
2708
- errorLikeString = '#{exp}';
2709
- } else if (errorLike) {
2710
- errorLikeString = _.checkError.getConstructorName(errorLike);
2711
- }
2712
-
2713
- let actual = caughtErr;
2714
- if (caughtErr instanceof Error) {
2715
- actual = caughtErr.toString();
2716
- } else if (typeof caughtErr === 'string') {
2717
- actual = caughtErr;
2718
- } else if (caughtErr && (typeof caughtErr === 'object' || typeof caughtErr === 'function')) {
2719
- try {
2720
- actual = _.checkError.getConstructorName(caughtErr);
2721
- } catch (_err) {
2722
- // somehow wasn't a constructor, maybe we got a function thrown
2723
- // or similar
2724
- }
2725
- }
2726
-
2727
- this.assert(
2728
- errorWasThrown
2729
- , 'expected #{this} to throw ' + errorLikeString
2730
- , 'expected #{this} to not throw an error but #{act} was thrown'
2731
- , errorLike && errorLike.toString()
2732
- , actual
2733
- );
2734
- }
2735
-
2736
- if (errorLike && caughtErr) {
2737
- // We should compare instances only if `errorLike` is an instance of `Error`
2738
- if (errorLike instanceof Error) {
2739
- var isCompatibleInstance = _.checkError.compatibleInstance(caughtErr, errorLike);
2740
-
2741
- if (isCompatibleInstance === negate) {
2742
- // These checks were created to ensure we won't fail too soon when we've got both args and a negate
2743
- // See Issue #551 and PR #683@GitHub
2744
- if (everyArgIsDefined && negate) {
2745
- errorLikeFail = true;
2746
- } else {
2747
- this.assert(
2748
- negate
2749
- , 'expected #{this} to throw #{exp} but #{act} was thrown'
2750
- , 'expected #{this} to not throw #{exp}' + (caughtErr && !negate ? ' but #{act} was thrown' : '')
2751
- , errorLike.toString()
2752
- , caughtErr.toString()
2753
- );
2754
- }
2755
- }
2756
- }
2757
-
2758
- var isCompatibleConstructor = _.checkError.compatibleConstructor(caughtErr, errorLike);
2759
- if (isCompatibleConstructor === negate) {
2760
- if (everyArgIsDefined && negate) {
2761
- errorLikeFail = true;
2762
- } else {
2763
- this.assert(
2764
- negate
2765
- , 'expected #{this} to throw #{exp} but #{act} was thrown'
2766
- , 'expected #{this} to not throw #{exp}' + (caughtErr ? ' but #{act} was thrown' : '')
2767
- , (errorLike instanceof Error ? errorLike.toString() : errorLike && _.checkError.getConstructorName(errorLike))
2768
- , (caughtErr instanceof Error ? caughtErr.toString() : caughtErr && _.checkError.getConstructorName(caughtErr))
2769
- );
2770
- }
2771
- }
2772
- }
2773
-
2774
- if (caughtErr && errMsgMatcher !== undefined && errMsgMatcher !== null) {
2775
- // Here we check compatible messages
2776
- var placeholder = 'including';
2777
- if (_.isRegExp(errMsgMatcher)) {
2778
- placeholder = 'matching'
2779
- }
2780
-
2781
- var isCompatibleMessage = _.checkError.compatibleMessage(caughtErr, errMsgMatcher);
2782
- if (isCompatibleMessage === negate) {
2783
- if (everyArgIsDefined && negate) {
2784
- errMsgMatcherFail = true;
2785
- } else {
2786
- this.assert(
2787
- negate
2788
- , 'expected #{this} to throw error ' + placeholder + ' #{exp} but got #{act}'
2789
- , 'expected #{this} to throw error not ' + placeholder + ' #{exp}'
2790
- , errMsgMatcher
2791
- , _.checkError.getMessage(caughtErr)
2792
- );
2793
- }
2794
- }
2795
- }
2796
-
2797
- // If both assertions failed and both should've matched we throw an error
2798
- if (errorLikeFail && errMsgMatcherFail) {
2799
- this.assert(
2800
- negate
2801
- , 'expected #{this} to throw #{exp} but #{act} was thrown'
2802
- , 'expected #{this} to not throw #{exp}' + (caughtErr ? ' but #{act} was thrown' : '')
2803
- , (errorLike instanceof Error ? errorLike.toString() : errorLike && _.checkError.getConstructorName(errorLike))
2804
- , (caughtErr instanceof Error ? caughtErr.toString() : caughtErr && _.checkError.getConstructorName(caughtErr))
2805
- );
2806
- }
2807
-
2808
- flag(this, 'object', caughtErr);
2809
- };
2810
-
2811
- Assertion.addMethod('throw', assertThrows);
2812
- Assertion.addMethod('throws', assertThrows);
2813
- Assertion.addMethod('Throw', assertThrows);
2814
-
2815
- /**
2816
- * ### .respondTo(method[, msg])
2817
- *
2818
- * When the target is a non-function object, `.respondTo` asserts that the
2819
- * target has a method with the given name `method`. The method can be own or
2820
- * inherited, and it can be enumerable or non-enumerable.
2821
- *
2822
- * function Cat () {}
2823
- * Cat.prototype.meow = function () {};
2824
- *
2825
- * expect(new Cat()).to.respondTo('meow');
2826
- *
2827
- * When the target is a function, `.respondTo` asserts that the target's
2828
- * `prototype` property has a method with the given name `method`. Again, the
2829
- * method can be own or inherited, and it can be enumerable or non-enumerable.
2830
- *
2831
- * function Cat () {}
2832
- * Cat.prototype.meow = function () {};
2833
- *
2834
- * expect(Cat).to.respondTo('meow');
2835
- *
2836
- * Add `.itself` earlier in the chain to force `.respondTo` to treat the
2837
- * target as a non-function object, even if it's a function. Thus, it asserts
2838
- * that the target has a method with the given name `method`, rather than
2839
- * asserting that the target's `prototype` property has a method with the
2840
- * given name `method`.
2841
- *
2842
- * function Cat () {}
2843
- * Cat.prototype.meow = function () {};
2844
- * Cat.hiss = function () {};
2845
- *
2846
- * expect(Cat).itself.to.respondTo('hiss').but.not.respondTo('meow');
2847
- *
2848
- * When not adding `.itself`, it's important to check the target's type before
2849
- * using `.respondTo`. See the `.a` doc for info on checking a target's type.
2850
- *
2851
- * function Cat () {}
2852
- * Cat.prototype.meow = function () {};
2853
- *
2854
- * expect(new Cat()).to.be.an('object').that.respondsTo('meow');
2855
- *
2856
- * Add `.not` earlier in the chain to negate `.respondTo`.
2857
- *
2858
- * function Dog () {}
2859
- * Dog.prototype.bark = function () {};
2860
- *
2861
- * expect(new Dog()).to.not.respondTo('meow');
2862
- *
2863
- * `.respondTo` accepts an optional `msg` argument which is a custom error
2864
- * message to show when the assertion fails. The message can also be given as
2865
- * the second argument to `expect`.
2866
- *
2867
- * expect({}).to.respondTo('meow', 'nooo why fail??');
2868
- * expect({}, 'nooo why fail??').to.respondTo('meow');
2869
- *
2870
- * The alias `.respondsTo` can be used interchangeably with `.respondTo`.
2871
- *
2872
- * @name respondTo
2873
- * @alias respondsTo
2874
- * @param {string} method
2875
- * @param {string} msg _optional_
2876
- * @namespace BDD
2877
- * @public
2878
- */
2879
- function respondTo (method, msg) {
2880
- if (msg) flag(this, 'message', msg);
2881
- var obj = flag(this, 'object')
2882
- , itself = flag(this, 'itself')
2883
- , context = ('function' === typeof obj && !itself)
2884
- ? obj.prototype[method]
2885
- : obj[method];
2886
-
2887
- this.assert(
2888
- 'function' === typeof context
2889
- , 'expected #{this} to respond to ' + _.inspect(method)
2890
- , 'expected #{this} to not respond to ' + _.inspect(method)
2891
- );
2892
- }
2893
-
2894
- Assertion.addMethod('respondTo', respondTo);
2895
- Assertion.addMethod('respondsTo', respondTo);
2896
-
2897
- /**
2898
- * ### .itself
2899
- *
2900
- * Forces all `.respondTo` assertions that follow in the chain to behave as if
2901
- * the target is a non-function object, even if it's a function. Thus, it
2902
- * causes `.respondTo` to assert that the target has a method with the given
2903
- * name, rather than asserting that the target's `prototype` property has a
2904
- * method with the given name.
2905
- *
2906
- * function Cat () {}
2907
- * Cat.prototype.meow = function () {};
2908
- * Cat.hiss = function () {};
2909
- *
2910
- * expect(Cat).itself.to.respondTo('hiss').but.not.respondTo('meow');
2911
- *
2912
- * @name itself
2913
- * @namespace BDD
2914
- * @public
2915
- */
2916
- Assertion.addProperty('itself', function () {
2917
- flag(this, 'itself', true);
2918
- });
2919
-
2920
- /**
2921
- * ### .satisfy(matcher[, msg])
2922
- *
2923
- * Invokes the given `matcher` function with the target being passed as the
2924
- * first argument, and asserts that the value returned is truthy.
2925
- *
2926
- * expect(1).to.satisfy(function(num) {
2927
- * return num > 0;
2928
- * });
2929
- *
2930
- * Add `.not` earlier in the chain to negate `.satisfy`.
2931
- *
2932
- * expect(1).to.not.satisfy(function(num) {
2933
- * return num > 2;
2934
- * });
2935
- *
2936
- * `.satisfy` accepts an optional `msg` argument which is a custom error
2937
- * message to show when the assertion fails. The message can also be given as
2938
- * the second argument to `expect`.
2939
- *
2940
- * expect(1).to.satisfy(function(num) {
2941
- * return num > 2;
2942
- * }, 'nooo why fail??');
2943
- *
2944
- * expect(1, 'nooo why fail??').to.satisfy(function(num) {
2945
- * return num > 2;
2946
- * });
2947
- *
2948
- * The alias `.satisfies` can be used interchangeably with `.satisfy`.
2949
- *
2950
- * @name satisfy
2951
- * @alias satisfies
2952
- * @param {Function} matcher
2953
- * @param {string} msg _optional_
2954
- * @namespace BDD
2955
- * @public
2956
- */
2957
- function satisfy (matcher, msg) {
2958
- if (msg) flag(this, 'message', msg);
2959
- var obj = flag(this, 'object');
2960
- var result = matcher(obj);
2961
- this.assert(
2962
- result
2963
- , 'expected #{this} to satisfy ' + _.objDisplay(matcher)
2964
- , 'expected #{this} to not satisfy' + _.objDisplay(matcher)
2965
- , flag(this, 'negate') ? false : true
2966
- , result
2967
- );
2968
- }
2969
-
2970
- Assertion.addMethod('satisfy', satisfy);
2971
- Assertion.addMethod('satisfies', satisfy);
2972
-
2973
- /**
2974
- * ### .closeTo(expected, delta[, msg])
2975
- *
2976
- * Asserts that the target is a number that's within a given +/- `delta` range
2977
- * of the given number `expected`. However, it's often best to assert that the
2978
- * target is equal to its expected value.
2979
- *
2980
- * // Recommended
2981
- * expect(1.5).to.equal(1.5);
2982
- *
2983
- * // Not recommended
2984
- * expect(1.5).to.be.closeTo(1, 0.5);
2985
- * expect(1.5).to.be.closeTo(2, 0.5);
2986
- * expect(1.5).to.be.closeTo(1, 1);
2987
- *
2988
- * Add `.not` earlier in the chain to negate `.closeTo`.
2989
- *
2990
- * expect(1.5).to.equal(1.5); // Recommended
2991
- * expect(1.5).to.not.be.closeTo(3, 1); // Not recommended
2992
- *
2993
- * `.closeTo` accepts an optional `msg` argument which is a custom error
2994
- * message to show when the assertion fails. The message can also be given as
2995
- * the second argument to `expect`.
2996
- *
2997
- * expect(1.5).to.be.closeTo(3, 1, 'nooo why fail??');
2998
- * expect(1.5, 'nooo why fail??').to.be.closeTo(3, 1);
2999
- *
3000
- * The alias `.approximately` can be used interchangeably with `.closeTo`.
3001
- *
3002
- * @name closeTo
3003
- * @alias approximately
3004
- * @param {number} expected
3005
- * @param {number} delta
3006
- * @param {string} msg _optional_
3007
- * @namespace BDD
3008
- * @public
3009
- */
3010
- function closeTo(expected, delta, msg) {
3011
- if (msg) flag(this, 'message', msg);
3012
- var obj = flag(this, 'object')
3013
- , flagMsg = flag(this, 'message')
3014
- , ssfi = flag(this, 'ssfi');
3015
-
3016
- new Assertion(obj, flagMsg, ssfi, true).is.a('number');
3017
- if (typeof expected !== 'number' || typeof delta !== 'number') {
3018
- flagMsg = flagMsg ? flagMsg + ': ' : '';
3019
- var deltaMessage = delta === undefined ? ", and a delta is required" : "";
3020
- throw new AssertionError(
3021
- flagMsg + 'the arguments to closeTo or approximately must be numbers' + deltaMessage,
3022
- undefined,
3023
- ssfi
3024
- );
3025
- }
3026
-
3027
- this.assert(
3028
- Math.abs(obj - expected) <= delta
3029
- , 'expected #{this} to be close to ' + expected + ' +/- ' + delta
3030
- , 'expected #{this} not to be close to ' + expected + ' +/- ' + delta
3031
- );
3032
- }
3033
-
3034
- Assertion.addMethod('closeTo', closeTo);
3035
- Assertion.addMethod('approximately', closeTo);
3036
-
3037
- /**
3038
- * @param {unknown} _subset
3039
- * @param {unknown} _superset
3040
- * @param {unknown} cmp
3041
- * @param {unknown} contains
3042
- * @param {unknown} ordered
3043
- * @returns {boolean}
3044
- */
3045
- function isSubsetOf(_subset, _superset, cmp, contains, ordered) {
3046
- let superset = Array.from(_superset);
3047
- let subset = Array.from(_subset);
3048
- if (!contains) {
3049
- if (subset.length !== superset.length) return false;
3050
- superset = superset.slice();
3051
- }
3052
-
3053
- return subset.every(function(elem, idx) {
3054
- if (ordered) return cmp ? cmp(elem, superset[idx]) : elem === superset[idx];
3055
-
3056
- if (!cmp) {
3057
- var matchIdx = superset.indexOf(elem);
3058
- if (matchIdx === -1) return false;
3059
-
3060
- // Remove match from superset so not counted twice if duplicate in subset.
3061
- if (!contains) superset.splice(matchIdx, 1);
3062
- return true;
3063
- }
3064
-
3065
- return superset.some(function(elem2, matchIdx) {
3066
- if (!cmp(elem, elem2)) return false;
3067
-
3068
- // Remove match from superset so not counted twice if duplicate in subset.
3069
- if (!contains) superset.splice(matchIdx, 1);
3070
- return true;
3071
- });
3072
- });
3073
- }
3074
-
3075
- /**
3076
- * ### .members(set[, msg])
3077
- *
3078
- * Asserts that the target array has the same members as the given array
3079
- * `set`.
3080
- *
3081
- * expect([1, 2, 3]).to.have.members([2, 1, 3]);
3082
- * expect([1, 2, 2]).to.have.members([2, 1, 2]);
3083
- *
3084
- * By default, members are compared using strict (`===`) equality. Add `.deep`
3085
- * earlier in the chain to use deep equality instead. See the `deep-eql`
3086
- * project page for info on the deep equality algorithm:
3087
- * https://github.com/chaijs/deep-eql.
3088
- *
3089
- * // Target array deeply (but not strictly) has member `{a: 1}`
3090
- * expect([{a: 1}]).to.have.deep.members([{a: 1}]);
3091
- * expect([{a: 1}]).to.not.have.members([{a: 1}]);
3092
- *
3093
- * By default, order doesn't matter. Add `.ordered` earlier in the chain to
3094
- * require that members appear in the same order.
3095
- *
3096
- * expect([1, 2, 3]).to.have.ordered.members([1, 2, 3]);
3097
- * expect([1, 2, 3]).to.have.members([2, 1, 3])
3098
- * .but.not.ordered.members([2, 1, 3]);
3099
- *
3100
- * By default, both arrays must be the same size. Add `.include` earlier in
3101
- * the chain to require that the target's members be a superset of the
3102
- * expected members. Note that duplicates are ignored in the subset when
3103
- * `.include` is added.
3104
- *
3105
- * // Target array is a superset of [1, 2] but not identical
3106
- * expect([1, 2, 3]).to.include.members([1, 2]);
3107
- * expect([1, 2, 3]).to.not.have.members([1, 2]);
3108
- *
3109
- * // Duplicates in the subset are ignored
3110
- * expect([1, 2, 3]).to.include.members([1, 2, 2, 2]);
3111
- *
3112
- * `.deep`, `.ordered`, and `.include` can all be combined. However, if
3113
- * `.include` and `.ordered` are combined, the ordering begins at the start of
3114
- * both arrays.
3115
- *
3116
- * expect([{a: 1}, {b: 2}, {c: 3}])
3117
- * .to.include.deep.ordered.members([{a: 1}, {b: 2}])
3118
- * .but.not.include.deep.ordered.members([{b: 2}, {c: 3}]);
3119
- *
3120
- * Add `.not` earlier in the chain to negate `.members`. However, it's
3121
- * dangerous to do so. The problem is that it creates uncertain expectations
3122
- * by asserting that the target array doesn't have all of the same members as
3123
- * the given array `set` but may or may not have some of them. It's often best
3124
- * to identify the exact output that's expected, and then write an assertion
3125
- * that only accepts that exact output.
3126
- *
3127
- * expect([1, 2]).to.not.include(3).and.not.include(4); // Recommended
3128
- * expect([1, 2]).to.not.have.members([3, 4]); // Not recommended
3129
- *
3130
- * `.members` accepts an optional `msg` argument which is a custom error
3131
- * message to show when the assertion fails. The message can also be given as
3132
- * the second argument to `expect`.
3133
- *
3134
- * expect([1, 2]).to.have.members([1, 2, 3], 'nooo why fail??');
3135
- * expect([1, 2], 'nooo why fail??').to.have.members([1, 2, 3]);
3136
- *
3137
- * @name members
3138
- * @param {Array} set
3139
- * @param {string} msg _optional_
3140
- * @namespace BDD
3141
- * @public
3142
- */
3143
- Assertion.addMethod('members', function (subset, msg) {
3144
- if (msg) flag(this, 'message', msg);
3145
- var obj = flag(this, 'object')
3146
- , flagMsg = flag(this, 'message')
3147
- , ssfi = flag(this, 'ssfi');
3148
-
3149
- new Assertion(obj, flagMsg, ssfi, true).to.be.iterable;
3150
- new Assertion(subset, flagMsg, ssfi, true).to.be.iterable;
3151
-
3152
- var contains = flag(this, 'contains');
3153
- var ordered = flag(this, 'ordered');
3154
-
3155
- var subject, failMsg, failNegateMsg;
3156
-
3157
- if (contains) {
3158
- subject = ordered ? 'an ordered superset' : 'a superset';
3159
- failMsg = 'expected #{this} to be ' + subject + ' of #{exp}';
3160
- failNegateMsg = 'expected #{this} to not be ' + subject + ' of #{exp}';
3161
- } else {
3162
- subject = ordered ? 'ordered members' : 'members';
3163
- failMsg = 'expected #{this} to have the same ' + subject + ' as #{exp}';
3164
- failNegateMsg = 'expected #{this} to not have the same ' + subject + ' as #{exp}';
3165
- }
3166
-
3167
- var cmp = flag(this, 'deep') ? flag(this, 'eql') : undefined;
3168
-
3169
- this.assert(
3170
- isSubsetOf(subset, obj, cmp, contains, ordered)
3171
- , failMsg
3172
- , failNegateMsg
3173
- , subset
3174
- , obj
3175
- , true
3176
- );
3177
- });
3178
-
3179
- /**
3180
- * ### .iterable
3181
- *
3182
- * Asserts that the target is an iterable, which means that it has a iterator.
3183
- *
3184
- * expect([1, 2]).to.be.iterable;
3185
- * expect("foobar").to.be.iterable;
3186
- *
3187
- * Add `.not` earlier in the chain to negate `.iterable`.
3188
- *
3189
- * expect(1).to.not.be.iterable;
3190
- * expect(true).to.not.be.iterable;
3191
- *
3192
- * A custom error message can be given as the second argument to `expect`.
3193
- *
3194
- * expect(1, 'nooo why fail??').to.be.iterable;
3195
- *
3196
- * @name iterable
3197
- * @namespace BDD
3198
- * @public
3199
- */
3200
- Assertion.addProperty('iterable', function(msg) {
3201
- if (msg) flag(this, 'message', msg);
3202
- var obj = flag(this, 'object');
3203
-
3204
- this.assert(
3205
- obj != undefined && obj[Symbol.iterator]
3206
- , 'expected #{this} to be an iterable'
3207
- , 'expected #{this} to not be an iterable'
3208
- , obj
3209
- );
3210
- });
3211
-
3212
- /**
3213
- * ### .oneOf(list[, msg])
3214
- *
3215
- * Asserts that the target is a member of the given array `list`. However,
3216
- * it's often best to assert that the target is equal to its expected value.
3217
- *
3218
- * expect(1).to.equal(1); // Recommended
3219
- * expect(1).to.be.oneOf([1, 2, 3]); // Not recommended
3220
- *
3221
- * Comparisons are performed using strict (`===`) equality.
3222
- *
3223
- * Add `.not` earlier in the chain to negate `.oneOf`.
3224
- *
3225
- * expect(1).to.equal(1); // Recommended
3226
- * expect(1).to.not.be.oneOf([2, 3, 4]); // Not recommended
3227
- *
3228
- * It can also be chained with `.contain` or `.include`, which will work with
3229
- * both arrays and strings:
3230
- *
3231
- * expect('Today is sunny').to.contain.oneOf(['sunny', 'cloudy'])
3232
- * expect('Today is rainy').to.not.contain.oneOf(['sunny', 'cloudy'])
3233
- * expect([1,2,3]).to.contain.oneOf([3,4,5])
3234
- * expect([1,2,3]).to.not.contain.oneOf([4,5,6])
3235
- *
3236
- * `.oneOf` accepts an optional `msg` argument which is a custom error message
3237
- * to show when the assertion fails. The message can also be given as the
3238
- * second argument to `expect`.
3239
- *
3240
- * expect(1).to.be.oneOf([2, 3, 4], 'nooo why fail??');
3241
- * expect(1, 'nooo why fail??').to.be.oneOf([2, 3, 4]);
3242
- *
3243
- * @name oneOf
3244
- * @param {Array<*>} list
3245
- * @param {string} msg _optional_
3246
- * @namespace BDD
3247
- * @public
3248
- */
3249
- function oneOf (list, msg) {
3250
- if (msg) flag(this, 'message', msg);
3251
- var expected = flag(this, 'object')
3252
- , flagMsg = flag(this, 'message')
3253
- , ssfi = flag(this, 'ssfi')
3254
- , contains = flag(this, 'contains')
3255
- , isDeep = flag(this, 'deep')
3256
- , eql = flag(this, 'eql');
3257
- new Assertion(list, flagMsg, ssfi, true).to.be.an('array');
3258
-
3259
- if (contains) {
3260
- this.assert(
3261
- list.some(function(possibility) { return expected.indexOf(possibility) > -1 })
3262
- , 'expected #{this} to contain one of #{exp}'
3263
- , 'expected #{this} to not contain one of #{exp}'
3264
- , list
3265
- , expected
3266
- );
3267
- } else {
3268
- if (isDeep) {
3269
- this.assert(
3270
- list.some(function(possibility) { return eql(expected, possibility) })
3271
- , 'expected #{this} to deeply equal one of #{exp}'
3272
- , 'expected #{this} to deeply equal one of #{exp}'
3273
- , list
3274
- , expected
3275
- );
3276
- } else {
3277
- this.assert(
3278
- list.indexOf(expected) > -1
3279
- , 'expected #{this} to be one of #{exp}'
3280
- , 'expected #{this} to not be one of #{exp}'
3281
- , list
3282
- , expected
3283
- );
3284
- }
3285
- }
3286
- }
3287
-
3288
- Assertion.addMethod('oneOf', oneOf);
3289
-
3290
- /**
3291
- * ### .change(subject[, prop[, msg]])
3292
- *
3293
- * When one argument is provided, `.change` asserts that the given function
3294
- * `subject` returns a different value when it's invoked before the target
3295
- * function compared to when it's invoked afterward. However, it's often best
3296
- * to assert that `subject` is equal to its expected value.
3297
- *
3298
- * var dots = ''
3299
- * , addDot = function () { dots += '.'; }
3300
- * , getDots = function () { return dots; };
3301
- *
3302
- * // Recommended
3303
- * expect(getDots()).to.equal('');
3304
- * addDot();
3305
- * expect(getDots()).to.equal('.');
3306
- *
3307
- * // Not recommended
3308
- * expect(addDot).to.change(getDots);
3309
- *
3310
- * When two arguments are provided, `.change` asserts that the value of the
3311
- * given object `subject`'s `prop` property is different before invoking the
3312
- * target function compared to afterward.
3313
- *
3314
- * var myObj = {dots: ''}
3315
- * , addDot = function () { myObj.dots += '.'; };
3316
- *
3317
- * // Recommended
3318
- * expect(myObj).to.have.property('dots', '');
3319
- * addDot();
3320
- * expect(myObj).to.have.property('dots', '.');
3321
- *
3322
- * // Not recommended
3323
- * expect(addDot).to.change(myObj, 'dots');
3324
- *
3325
- * Strict (`===`) equality is used to compare before and after values.
3326
- *
3327
- * Add `.not` earlier in the chain to negate `.change`.
3328
- *
3329
- * var dots = ''
3330
- * , noop = function () {}
3331
- * , getDots = function () { return dots; };
3332
- *
3333
- * expect(noop).to.not.change(getDots);
3334
- *
3335
- * var myObj = {dots: ''}
3336
- * , noop = function () {};
3337
- *
3338
- * expect(noop).to.not.change(myObj, 'dots');
3339
- *
3340
- * `.change` accepts an optional `msg` argument which is a custom error
3341
- * message to show when the assertion fails. The message can also be given as
3342
- * the second argument to `expect`. When not providing two arguments, always
3343
- * use the second form.
3344
- *
3345
- * var myObj = {dots: ''}
3346
- * , addDot = function () { myObj.dots += '.'; };
3347
- *
3348
- * expect(addDot).to.not.change(myObj, 'dots', 'nooo why fail??');
3349
- *
3350
- * var dots = ''
3351
- * , addDot = function () { dots += '.'; }
3352
- * , getDots = function () { return dots; };
3353
- *
3354
- * expect(addDot, 'nooo why fail??').to.not.change(getDots);
3355
- *
3356
- * `.change` also causes all `.by` assertions that follow in the chain to
3357
- * assert how much a numeric subject was increased or decreased by. However,
3358
- * it's dangerous to use `.change.by`. The problem is that it creates
3359
- * uncertain expectations by asserting that the subject either increases by
3360
- * the given delta, or that it decreases by the given delta. It's often best
3361
- * to identify the exact output that's expected, and then write an assertion
3362
- * that only accepts that exact output.
3363
- *
3364
- * var myObj = {val: 1}
3365
- * , addTwo = function () { myObj.val += 2; }
3366
- * , subtractTwo = function () { myObj.val -= 2; };
3367
- *
3368
- * expect(addTwo).to.increase(myObj, 'val').by(2); // Recommended
3369
- * expect(addTwo).to.change(myObj, 'val').by(2); // Not recommended
3370
- *
3371
- * expect(subtractTwo).to.decrease(myObj, 'val').by(2); // Recommended
3372
- * expect(subtractTwo).to.change(myObj, 'val').by(2); // Not recommended
3373
- *
3374
- * The alias `.changes` can be used interchangeably with `.change`.
3375
- *
3376
- * @name change
3377
- * @alias changes
3378
- * @param {string} subject
3379
- * @param {string} prop name _optional_
3380
- * @param {string} msg _optional_
3381
- * @namespace BDD
3382
- * @public
3383
- */
3384
- function assertChanges (subject, prop, msg) {
3385
- if (msg) flag(this, 'message', msg);
3386
- var fn = flag(this, 'object')
3387
- , flagMsg = flag(this, 'message')
3388
- , ssfi = flag(this, 'ssfi');
3389
- new Assertion(fn, flagMsg, ssfi, true).is.a('function');
3390
-
3391
- var initial;
3392
- if (!prop) {
3393
- new Assertion(subject, flagMsg, ssfi, true).is.a('function');
3394
- initial = subject();
3395
- } else {
3396
- new Assertion(subject, flagMsg, ssfi, true).to.have.property(prop);
3397
- initial = subject[prop];
3398
- }
3399
-
3400
- fn();
3401
-
3402
- var final = prop === undefined || prop === null ? subject() : subject[prop];
3403
- var msgObj = prop === undefined || prop === null ? initial : '.' + prop;
3404
-
3405
- // This gets flagged because of the .by(delta) assertion
3406
- flag(this, 'deltaMsgObj', msgObj);
3407
- flag(this, 'initialDeltaValue', initial);
3408
- flag(this, 'finalDeltaValue', final);
3409
- flag(this, 'deltaBehavior', 'change');
3410
- flag(this, 'realDelta', final !== initial);
3411
-
3412
- this.assert(
3413
- initial !== final
3414
- , 'expected ' + msgObj + ' to change'
3415
- , 'expected ' + msgObj + ' to not change'
3416
- );
3417
- }
3418
-
3419
- Assertion.addMethod('change', assertChanges);
3420
- Assertion.addMethod('changes', assertChanges);
3421
-
3422
- /**
3423
- * ### .increase(subject[, prop[, msg]])
3424
- *
3425
- * When one argument is provided, `.increase` asserts that the given function
3426
- * `subject` returns a greater number when it's invoked after invoking the
3427
- * target function compared to when it's invoked beforehand. `.increase` also
3428
- * causes all `.by` assertions that follow in the chain to assert how much
3429
- * greater of a number is returned. It's often best to assert that the return
3430
- * value increased by the expected amount, rather than asserting it increased
3431
- * by any amount.
3432
- *
3433
- * var val = 1
3434
- * , addTwo = function () { val += 2; }
3435
- * , getVal = function () { return val; };
3436
- *
3437
- * expect(addTwo).to.increase(getVal).by(2); // Recommended
3438
- * expect(addTwo).to.increase(getVal); // Not recommended
3439
- *
3440
- * When two arguments are provided, `.increase` asserts that the value of the
3441
- * given object `subject`'s `prop` property is greater after invoking the
3442
- * target function compared to beforehand.
3443
- *
3444
- * var myObj = {val: 1}
3445
- * , addTwo = function () { myObj.val += 2; };
3446
- *
3447
- * expect(addTwo).to.increase(myObj, 'val').by(2); // Recommended
3448
- * expect(addTwo).to.increase(myObj, 'val'); // Not recommended
3449
- *
3450
- * Add `.not` earlier in the chain to negate `.increase`. However, it's
3451
- * dangerous to do so. The problem is that it creates uncertain expectations
3452
- * by asserting that the subject either decreases, or that it stays the same.
3453
- * It's often best to identify the exact output that's expected, and then
3454
- * write an assertion that only accepts that exact output.
3455
- *
3456
- * When the subject is expected to decrease, it's often best to assert that it
3457
- * decreased by the expected amount.
3458
- *
3459
- * var myObj = {val: 1}
3460
- * , subtractTwo = function () { myObj.val -= 2; };
3461
- *
3462
- * expect(subtractTwo).to.decrease(myObj, 'val').by(2); // Recommended
3463
- * expect(subtractTwo).to.not.increase(myObj, 'val'); // Not recommended
3464
- *
3465
- * When the subject is expected to stay the same, it's often best to assert
3466
- * exactly that.
3467
- *
3468
- * var myObj = {val: 1}
3469
- * , noop = function () {};
3470
- *
3471
- * expect(noop).to.not.change(myObj, 'val'); // Recommended
3472
- * expect(noop).to.not.increase(myObj, 'val'); // Not recommended
3473
- *
3474
- * `.increase` accepts an optional `msg` argument which is a custom error
3475
- * message to show when the assertion fails. The message can also be given as
3476
- * the second argument to `expect`. When not providing two arguments, always
3477
- * use the second form.
3478
- *
3479
- * var myObj = {val: 1}
3480
- * , noop = function () {};
3481
- *
3482
- * expect(noop).to.increase(myObj, 'val', 'nooo why fail??');
3483
- *
3484
- * var val = 1
3485
- * , noop = function () {}
3486
- * , getVal = function () { return val; };
3487
- *
3488
- * expect(noop, 'nooo why fail??').to.increase(getVal);
3489
- *
3490
- * The alias `.increases` can be used interchangeably with `.increase`.
3491
- *
3492
- * @name increase
3493
- * @alias increases
3494
- * @param {string | Function} subject
3495
- * @param {string} prop name _optional_
3496
- * @param {string} msg _optional_
3497
- * @namespace BDD
3498
- * @public
3499
- */
3500
- function assertIncreases (subject, prop, msg) {
3501
- if (msg) flag(this, 'message', msg);
3502
- var fn = flag(this, 'object')
3503
- , flagMsg = flag(this, 'message')
3504
- , ssfi = flag(this, 'ssfi');
3505
- new Assertion(fn, flagMsg, ssfi, true).is.a('function');
3506
-
3507
- var initial;
3508
- if (!prop) {
3509
- new Assertion(subject, flagMsg, ssfi, true).is.a('function');
3510
- initial = subject();
3511
- } else {
3512
- new Assertion(subject, flagMsg, ssfi, true).to.have.property(prop);
3513
- initial = subject[prop];
3514
- }
3515
-
3516
- // Make sure that the target is a number
3517
- new Assertion(initial, flagMsg, ssfi, true).is.a('number');
3518
-
3519
- fn();
3520
-
3521
- var final = prop === undefined || prop === null ? subject() : subject[prop];
3522
- var msgObj = prop === undefined || prop === null ? initial : '.' + prop;
3523
-
3524
- flag(this, 'deltaMsgObj', msgObj);
3525
- flag(this, 'initialDeltaValue', initial);
3526
- flag(this, 'finalDeltaValue', final);
3527
- flag(this, 'deltaBehavior', 'increase');
3528
- flag(this, 'realDelta', final - initial);
3529
-
3530
- this.assert(
3531
- final - initial > 0
3532
- , 'expected ' + msgObj + ' to increase'
3533
- , 'expected ' + msgObj + ' to not increase'
3534
- );
3535
- }
3536
-
3537
- Assertion.addMethod('increase', assertIncreases);
3538
- Assertion.addMethod('increases', assertIncreases);
3539
-
3540
- /**
3541
- * ### .decrease(subject[, prop[, msg]])
3542
- *
3543
- * When one argument is provided, `.decrease` asserts that the given function
3544
- * `subject` returns a lesser number when it's invoked after invoking the
3545
- * target function compared to when it's invoked beforehand. `.decrease` also
3546
- * causes all `.by` assertions that follow in the chain to assert how much
3547
- * lesser of a number is returned. It's often best to assert that the return
3548
- * value decreased by the expected amount, rather than asserting it decreased
3549
- * by any amount.
3550
- *
3551
- * var val = 1
3552
- * , subtractTwo = function () { val -= 2; }
3553
- * , getVal = function () { return val; };
3554
- *
3555
- * expect(subtractTwo).to.decrease(getVal).by(2); // Recommended
3556
- * expect(subtractTwo).to.decrease(getVal); // Not recommended
3557
- *
3558
- * When two arguments are provided, `.decrease` asserts that the value of the
3559
- * given object `subject`'s `prop` property is lesser after invoking the
3560
- * target function compared to beforehand.
3561
- *
3562
- * var myObj = {val: 1}
3563
- * , subtractTwo = function () { myObj.val -= 2; };
3564
- *
3565
- * expect(subtractTwo).to.decrease(myObj, 'val').by(2); // Recommended
3566
- * expect(subtractTwo).to.decrease(myObj, 'val'); // Not recommended
3567
- *
3568
- * Add `.not` earlier in the chain to negate `.decrease`. However, it's
3569
- * dangerous to do so. The problem is that it creates uncertain expectations
3570
- * by asserting that the subject either increases, or that it stays the same.
3571
- * It's often best to identify the exact output that's expected, and then
3572
- * write an assertion that only accepts that exact output.
3573
- *
3574
- * When the subject is expected to increase, it's often best to assert that it
3575
- * increased by the expected amount.
3576
- *
3577
- * var myObj = {val: 1}
3578
- * , addTwo = function () { myObj.val += 2; };
3579
- *
3580
- * expect(addTwo).to.increase(myObj, 'val').by(2); // Recommended
3581
- * expect(addTwo).to.not.decrease(myObj, 'val'); // Not recommended
3582
- *
3583
- * When the subject is expected to stay the same, it's often best to assert
3584
- * exactly that.
3585
- *
3586
- * var myObj = {val: 1}
3587
- * , noop = function () {};
3588
- *
3589
- * expect(noop).to.not.change(myObj, 'val'); // Recommended
3590
- * expect(noop).to.not.decrease(myObj, 'val'); // Not recommended
3591
- *
3592
- * `.decrease` accepts an optional `msg` argument which is a custom error
3593
- * message to show when the assertion fails. The message can also be given as
3594
- * the second argument to `expect`. When not providing two arguments, always
3595
- * use the second form.
3596
- *
3597
- * var myObj = {val: 1}
3598
- * , noop = function () {};
3599
- *
3600
- * expect(noop).to.decrease(myObj, 'val', 'nooo why fail??');
3601
- *
3602
- * var val = 1
3603
- * , noop = function () {}
3604
- * , getVal = function () { return val; };
3605
- *
3606
- * expect(noop, 'nooo why fail??').to.decrease(getVal);
3607
- *
3608
- * The alias `.decreases` can be used interchangeably with `.decrease`.
3609
- *
3610
- * @name decrease
3611
- * @alias decreases
3612
- * @param {string | Function} subject
3613
- * @param {string} prop name _optional_
3614
- * @param {string} msg _optional_
3615
- * @namespace BDD
3616
- * @public
3617
- */
3618
- function assertDecreases (subject, prop, msg) {
3619
- if (msg) flag(this, 'message', msg);
3620
- var fn = flag(this, 'object')
3621
- , flagMsg = flag(this, 'message')
3622
- , ssfi = flag(this, 'ssfi');
3623
- new Assertion(fn, flagMsg, ssfi, true).is.a('function');
3624
-
3625
- var initial;
3626
- if (!prop) {
3627
- new Assertion(subject, flagMsg, ssfi, true).is.a('function');
3628
- initial = subject();
3629
- } else {
3630
- new Assertion(subject, flagMsg, ssfi, true).to.have.property(prop);
3631
- initial = subject[prop];
3632
- }
3633
-
3634
- // Make sure that the target is a number
3635
- new Assertion(initial, flagMsg, ssfi, true).is.a('number');
3636
-
3637
- fn();
3638
-
3639
- var final = prop === undefined || prop === null ? subject() : subject[prop];
3640
- var msgObj = prop === undefined || prop === null ? initial : '.' + prop;
3641
-
3642
- flag(this, 'deltaMsgObj', msgObj);
3643
- flag(this, 'initialDeltaValue', initial);
3644
- flag(this, 'finalDeltaValue', final);
3645
- flag(this, 'deltaBehavior', 'decrease');
3646
- flag(this, 'realDelta', initial - final);
3647
-
3648
- this.assert(
3649
- final - initial < 0
3650
- , 'expected ' + msgObj + ' to decrease'
3651
- , 'expected ' + msgObj + ' to not decrease'
3652
- );
3653
- }
3654
-
3655
- Assertion.addMethod('decrease', assertDecreases);
3656
- Assertion.addMethod('decreases', assertDecreases);
3657
-
3658
- /**
3659
- * ### .by(delta[, msg])
3660
- *
3661
- * When following an `.increase` assertion in the chain, `.by` asserts that
3662
- * the subject of the `.increase` assertion increased by the given `delta`.
3663
- *
3664
- * var myObj = {val: 1}
3665
- * , addTwo = function () { myObj.val += 2; };
3666
- *
3667
- * expect(addTwo).to.increase(myObj, 'val').by(2);
3668
- *
3669
- * When following a `.decrease` assertion in the chain, `.by` asserts that the
3670
- * subject of the `.decrease` assertion decreased by the given `delta`.
3671
- *
3672
- * var myObj = {val: 1}
3673
- * , subtractTwo = function () { myObj.val -= 2; };
3674
- *
3675
- * expect(subtractTwo).to.decrease(myObj, 'val').by(2);
3676
- *
3677
- * When following a `.change` assertion in the chain, `.by` asserts that the
3678
- * subject of the `.change` assertion either increased or decreased by the
3679
- * given `delta`. However, it's dangerous to use `.change.by`. The problem is
3680
- * that it creates uncertain expectations. It's often best to identify the
3681
- * exact output that's expected, and then write an assertion that only accepts
3682
- * that exact output.
3683
- *
3684
- * var myObj = {val: 1}
3685
- * , addTwo = function () { myObj.val += 2; }
3686
- * , subtractTwo = function () { myObj.val -= 2; };
3687
- *
3688
- * expect(addTwo).to.increase(myObj, 'val').by(2); // Recommended
3689
- * expect(addTwo).to.change(myObj, 'val').by(2); // Not recommended
3690
- *
3691
- * expect(subtractTwo).to.decrease(myObj, 'val').by(2); // Recommended
3692
- * expect(subtractTwo).to.change(myObj, 'val').by(2); // Not recommended
3693
- *
3694
- * Add `.not` earlier in the chain to negate `.by`. However, it's often best
3695
- * to assert that the subject changed by its expected delta, rather than
3696
- * asserting that it didn't change by one of countless unexpected deltas.
3697
- *
3698
- * var myObj = {val: 1}
3699
- * , addTwo = function () { myObj.val += 2; };
3700
- *
3701
- * // Recommended
3702
- * expect(addTwo).to.increase(myObj, 'val').by(2);
3703
- *
3704
- * // Not recommended
3705
- * expect(addTwo).to.increase(myObj, 'val').but.not.by(3);
3706
- *
3707
- * `.by` accepts an optional `msg` argument which is a custom error message to
3708
- * show when the assertion fails. The message can also be given as the second
3709
- * argument to `expect`.
3710
- *
3711
- * var myObj = {val: 1}
3712
- * , addTwo = function () { myObj.val += 2; };
3713
- *
3714
- * expect(addTwo).to.increase(myObj, 'val').by(3, 'nooo why fail??');
3715
- * expect(addTwo, 'nooo why fail??').to.increase(myObj, 'val').by(3);
3716
- *
3717
- * @name by
3718
- * @param {number} delta
3719
- * @param {string} msg _optional_
3720
- * @namespace BDD
3721
- * @public
3722
- */
3723
- function assertDelta(delta, msg) {
3724
- if (msg) flag(this, 'message', msg);
3725
-
3726
- var msgObj = flag(this, 'deltaMsgObj');
3727
- var initial = flag(this, 'initialDeltaValue');
3728
- var final = flag(this, 'finalDeltaValue');
3729
- var behavior = flag(this, 'deltaBehavior');
3730
- var realDelta = flag(this, 'realDelta');
3731
-
3732
- var expression;
3733
- if (behavior === 'change') {
3734
- expression = Math.abs(final - initial) === Math.abs(delta);
3735
- } else {
3736
- expression = realDelta === Math.abs(delta);
3737
- }
3738
-
3739
- this.assert(
3740
- expression
3741
- , 'expected ' + msgObj + ' to ' + behavior + ' by ' + delta
3742
- , 'expected ' + msgObj + ' to not ' + behavior + ' by ' + delta
3743
- );
3744
- }
3745
-
3746
- Assertion.addMethod('by', assertDelta);
3747
-
3748
- /**
3749
- * ### .extensible
3750
- *
3751
- * Asserts that the target is extensible, which means that new properties can
3752
- * be added to it. Primitives are never extensible.
3753
- *
3754
- * expect({a: 1}).to.be.extensible;
3755
- *
3756
- * Add `.not` earlier in the chain to negate `.extensible`.
3757
- *
3758
- * var nonExtensibleObject = Object.preventExtensions({})
3759
- * , sealedObject = Object.seal({})
3760
- * , frozenObject = Object.freeze({});
3761
- *
3762
- * expect(nonExtensibleObject).to.not.be.extensible;
3763
- * expect(sealedObject).to.not.be.extensible;
3764
- * expect(frozenObject).to.not.be.extensible;
3765
- * expect(1).to.not.be.extensible;
3766
- *
3767
- * A custom error message can be given as the second argument to `expect`.
3768
- *
3769
- * expect(1, 'nooo why fail??').to.be.extensible;
3770
- *
3771
- * @name extensible
3772
- * @namespace BDD
3773
- * @public
3774
- */
3775
- Assertion.addProperty('extensible', function() {
3776
- var obj = flag(this, 'object');
3777
-
3778
- // In ES5, if the argument to this method is a primitive, then it will cause a TypeError.
3779
- // In ES6, a non-object argument will be treated as if it was a non-extensible ordinary object, simply return false.
3780
- // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/isExtensible
3781
- // The following provides ES6 behavior for ES5 environments.
3782
-
3783
- var isExtensible = obj === Object(obj) && Object.isExtensible(obj);
3784
-
3785
- this.assert(
3786
- isExtensible
3787
- , 'expected #{this} to be extensible'
3788
- , 'expected #{this} to not be extensible'
3789
- );
3790
- });
3791
-
3792
- /**
3793
- * ### .sealed
3794
- *
3795
- * Asserts that the target is sealed, which means that new properties can't be
3796
- * added to it, and its existing properties can't be reconfigured or deleted.
3797
- * However, it's possible that its existing properties can still be reassigned
3798
- * to different values. Primitives are always sealed.
3799
- *
3800
- * var sealedObject = Object.seal({});
3801
- * var frozenObject = Object.freeze({});
3802
- *
3803
- * expect(sealedObject).to.be.sealed;
3804
- * expect(frozenObject).to.be.sealed;
3805
- * expect(1).to.be.sealed;
3806
- *
3807
- * Add `.not` earlier in the chain to negate `.sealed`.
3808
- *
3809
- * expect({a: 1}).to.not.be.sealed;
3810
- *
3811
- * A custom error message can be given as the second argument to `expect`.
3812
- *
3813
- * expect({a: 1}, 'nooo why fail??').to.be.sealed;
3814
- *
3815
- * @name sealed
3816
- * @namespace BDD
3817
- * @public
3818
- */
3819
- Assertion.addProperty('sealed', function() {
3820
- var obj = flag(this, 'object');
3821
-
3822
- // In ES5, if the argument to this method is a primitive, then it will cause a TypeError.
3823
- // In ES6, a non-object argument will be treated as if it was a sealed ordinary object, simply return true.
3824
- // See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/isSealed
3825
- // The following provides ES6 behavior for ES5 environments.
3826
-
3827
- var isSealed = obj === Object(obj) ? Object.isSealed(obj) : true;
3828
-
3829
- this.assert(
3830
- isSealed
3831
- , 'expected #{this} to be sealed'
3832
- , 'expected #{this} to not be sealed'
3833
- );
3834
- });
3835
-
3836
- /**
3837
- * ### .frozen
3838
- *
3839
- * Asserts that the target is frozen, which means that new properties can't be
3840
- * added to it, and its existing properties can't be reassigned to different
3841
- * values, reconfigured, or deleted. Primitives are always frozen.
3842
- *
3843
- * var frozenObject = Object.freeze({});
3844
- *
3845
- * expect(frozenObject).to.be.frozen;
3846
- * expect(1).to.be.frozen;
3847
- *
3848
- * Add `.not` earlier in the chain to negate `.frozen`.
3849
- *
3850
- * expect({a: 1}).to.not.be.frozen;
3851
- *
3852
- * A custom error message can be given as the second argument to `expect`.
3853
- *
3854
- * expect({a: 1}, 'nooo why fail??').to.be.frozen;
3855
- *
3856
- * @name frozen
3857
- * @namespace BDD
3858
- * @public
3859
- */
3860
- Assertion.addProperty('frozen', function() {
3861
- var obj = flag(this, 'object');
3862
-
3863
- // In ES5, if the argument to this method is a primitive, then it will cause a TypeError.
3864
- // In ES6, a non-object argument will be treated as if it was a frozen ordinary object, simply return true.
3865
- // See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/isFrozen
3866
- // The following provides ES6 behavior for ES5 environments.
3867
-
3868
- var isFrozen = obj === Object(obj) ? Object.isFrozen(obj) : true;
3869
-
3870
- this.assert(
3871
- isFrozen
3872
- , 'expected #{this} to be frozen'
3873
- , 'expected #{this} to not be frozen'
3874
- );
3875
- });
3876
-
3877
- /**
3878
- * ### .finite
3879
- *
3880
- * Asserts that the target is a number, and isn't `NaN` or positive/negative
3881
- * `Infinity`.
3882
- *
3883
- * expect(1).to.be.finite;
3884
- *
3885
- * Add `.not` earlier in the chain to negate `.finite`. However, it's
3886
- * dangerous to do so. The problem is that it creates uncertain expectations
3887
- * by asserting that the subject either isn't a number, or that it's `NaN`, or
3888
- * that it's positive `Infinity`, or that it's negative `Infinity`. It's often
3889
- * best to identify the exact output that's expected, and then write an
3890
- * assertion that only accepts that exact output.
3891
- *
3892
- * When the target isn't expected to be a number, it's often best to assert
3893
- * that it's the expected type, rather than asserting that it isn't one of
3894
- * many unexpected types.
3895
- *
3896
- * expect('foo').to.be.a('string'); // Recommended
3897
- * expect('foo').to.not.be.finite; // Not recommended
3898
- *
3899
- * When the target is expected to be `NaN`, it's often best to assert exactly
3900
- * that.
3901
- *
3902
- * expect(NaN).to.be.NaN; // Recommended
3903
- * expect(NaN).to.not.be.finite; // Not recommended
3904
- *
3905
- * When the target is expected to be positive infinity, it's often best to
3906
- * assert exactly that.
3907
- *
3908
- * expect(Infinity).to.equal(Infinity); // Recommended
3909
- * expect(Infinity).to.not.be.finite; // Not recommended
3910
- *
3911
- * When the target is expected to be negative infinity, it's often best to
3912
- * assert exactly that.
3913
- *
3914
- * expect(-Infinity).to.equal(-Infinity); // Recommended
3915
- * expect(-Infinity).to.not.be.finite; // Not recommended
3916
- *
3917
- * A custom error message can be given as the second argument to `expect`.
3918
- *
3919
- * expect('foo', 'nooo why fail??').to.be.finite;
3920
- *
3921
- * @name finite
3922
- * @namespace BDD
3923
- * @public
3924
- */
3925
- Assertion.addProperty('finite', function(msg) {
3926
- var obj = flag(this, 'object');
3927
-
3928
- this.assert(
3929
- typeof obj === 'number' && isFinite(obj)
3930
- , 'expected #{this} to be a finite number'
3931
- , 'expected #{this} to not be a finite number'
3932
- );
3933
- });