@epic-web/workshop-app 5.1.0 → 5.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1975) hide show
  1. package/build/client/assets/{manifest-77ab30ae.js → manifest-b22910a7.js} +1 -1
  2. package/build/server/index.js +108 -2344
  3. package/build/server/index.js.map +1 -1
  4. package/package.json +3 -25
  5. package/node_modules/@babel/runtime/LICENSE +0 -22
  6. package/node_modules/@babel/runtime/README.md +0 -19
  7. package/node_modules/@babel/runtime/helpers/AwaitValue.js +0 -4
  8. package/node_modules/@babel/runtime/helpers/OverloadYield.js +0 -4
  9. package/node_modules/@babel/runtime/helpers/applyDecoratedDescriptor.js +0 -9
  10. package/node_modules/@babel/runtime/helpers/applyDecs.js +0 -236
  11. package/node_modules/@babel/runtime/helpers/applyDecs2203.js +0 -184
  12. package/node_modules/@babel/runtime/helpers/applyDecs2203R.js +0 -191
  13. package/node_modules/@babel/runtime/helpers/applyDecs2301.js +0 -222
  14. package/node_modules/@babel/runtime/helpers/applyDecs2305.js +0 -133
  15. package/node_modules/@babel/runtime/helpers/applyDecs2311.js +0 -124
  16. package/node_modules/@babel/runtime/helpers/arrayLikeToArray.js +0 -6
  17. package/node_modules/@babel/runtime/helpers/arrayWithHoles.js +0 -4
  18. package/node_modules/@babel/runtime/helpers/arrayWithoutHoles.js +0 -5
  19. package/node_modules/@babel/runtime/helpers/assertClassBrand.js +0 -5
  20. package/node_modules/@babel/runtime/helpers/assertThisInitialized.js +0 -5
  21. package/node_modules/@babel/runtime/helpers/asyncGeneratorDelegate.js +0 -24
  22. package/node_modules/@babel/runtime/helpers/asyncIterator.js +0 -45
  23. package/node_modules/@babel/runtime/helpers/asyncToGenerator.js +0 -26
  24. package/node_modules/@babel/runtime/helpers/awaitAsyncGenerator.js +0 -5
  25. package/node_modules/@babel/runtime/helpers/callSuper.js +0 -7
  26. package/node_modules/@babel/runtime/helpers/checkInRHS.js +0 -6
  27. package/node_modules/@babel/runtime/helpers/checkPrivateRedeclaration.js +0 -4
  28. package/node_modules/@babel/runtime/helpers/classApplyDescriptorDestructureSet.js +0 -10
  29. package/node_modules/@babel/runtime/helpers/classApplyDescriptorGet.js +0 -4
  30. package/node_modules/@babel/runtime/helpers/classApplyDescriptorSet.js +0 -7
  31. package/node_modules/@babel/runtime/helpers/classCallCheck.js +0 -4
  32. package/node_modules/@babel/runtime/helpers/classCheckPrivateStaticAccess.js +0 -5
  33. package/node_modules/@babel/runtime/helpers/classCheckPrivateStaticFieldDescriptor.js +0 -4
  34. package/node_modules/@babel/runtime/helpers/classExtractFieldDescriptor.js +0 -5
  35. package/node_modules/@babel/runtime/helpers/classNameTDZError.js +0 -4
  36. package/node_modules/@babel/runtime/helpers/classPrivateFieldDestructureSet.js +0 -7
  37. package/node_modules/@babel/runtime/helpers/classPrivateFieldGet.js +0 -7
  38. package/node_modules/@babel/runtime/helpers/classPrivateFieldGet2.js +0 -5
  39. package/node_modules/@babel/runtime/helpers/classPrivateFieldInitSpec.js +0 -5
  40. package/node_modules/@babel/runtime/helpers/classPrivateFieldLooseBase.js +0 -5
  41. package/node_modules/@babel/runtime/helpers/classPrivateFieldLooseKey.js +0 -5
  42. package/node_modules/@babel/runtime/helpers/classPrivateFieldSet.js +0 -7
  43. package/node_modules/@babel/runtime/helpers/classPrivateFieldSet2.js +0 -5
  44. package/node_modules/@babel/runtime/helpers/classPrivateGetter.js +0 -5
  45. package/node_modules/@babel/runtime/helpers/classPrivateMethodGet.js +0 -5
  46. package/node_modules/@babel/runtime/helpers/classPrivateMethodInitSpec.js +0 -5
  47. package/node_modules/@babel/runtime/helpers/classPrivateMethodSet.js +0 -4
  48. package/node_modules/@babel/runtime/helpers/classPrivateSetter.js +0 -5
  49. package/node_modules/@babel/runtime/helpers/classStaticPrivateFieldDestructureSet.js +0 -7
  50. package/node_modules/@babel/runtime/helpers/classStaticPrivateFieldSpecGet.js +0 -7
  51. package/node_modules/@babel/runtime/helpers/classStaticPrivateFieldSpecSet.js +0 -7
  52. package/node_modules/@babel/runtime/helpers/classStaticPrivateMethodGet.js +0 -5
  53. package/node_modules/@babel/runtime/helpers/classStaticPrivateMethodSet.js +0 -4
  54. package/node_modules/@babel/runtime/helpers/construct.js +0 -10
  55. package/node_modules/@babel/runtime/helpers/createClass.js +0 -13
  56. package/node_modules/@babel/runtime/helpers/createForOfIteratorHelper.js +0 -50
  57. package/node_modules/@babel/runtime/helpers/createForOfIteratorHelperLoose.js +0 -19
  58. package/node_modules/@babel/runtime/helpers/createSuper.js +0 -16
  59. package/node_modules/@babel/runtime/helpers/decorate.js +0 -250
  60. package/node_modules/@babel/runtime/helpers/defaults.js +0 -9
  61. package/node_modules/@babel/runtime/helpers/defineAccessor.js +0 -8
  62. package/node_modules/@babel/runtime/helpers/defineEnumerableProperties.js +0 -12
  63. package/node_modules/@babel/runtime/helpers/defineProperty.js +0 -10
  64. package/node_modules/@babel/runtime/helpers/dispose.js +0 -28
  65. package/node_modules/@babel/runtime/helpers/esm/AwaitValue.js +0 -4
  66. package/node_modules/@babel/runtime/helpers/esm/OverloadYield.js +0 -4
  67. package/node_modules/@babel/runtime/helpers/esm/applyDecoratedDescriptor.js +0 -9
  68. package/node_modules/@babel/runtime/helpers/esm/applyDecs.js +0 -236
  69. package/node_modules/@babel/runtime/helpers/esm/applyDecs2203.js +0 -184
  70. package/node_modules/@babel/runtime/helpers/esm/applyDecs2203R.js +0 -191
  71. package/node_modules/@babel/runtime/helpers/esm/applyDecs2301.js +0 -222
  72. package/node_modules/@babel/runtime/helpers/esm/applyDecs2305.js +0 -133
  73. package/node_modules/@babel/runtime/helpers/esm/applyDecs2311.js +0 -124
  74. package/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js +0 -6
  75. package/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js +0 -4
  76. package/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js +0 -5
  77. package/node_modules/@babel/runtime/helpers/esm/assertClassBrand.js +0 -5
  78. package/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js +0 -5
  79. package/node_modules/@babel/runtime/helpers/esm/asyncGeneratorDelegate.js +0 -24
  80. package/node_modules/@babel/runtime/helpers/esm/asyncIterator.js +0 -45
  81. package/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js +0 -26
  82. package/node_modules/@babel/runtime/helpers/esm/awaitAsyncGenerator.js +0 -5
  83. package/node_modules/@babel/runtime/helpers/esm/callSuper.js +0 -7
  84. package/node_modules/@babel/runtime/helpers/esm/checkInRHS.js +0 -6
  85. package/node_modules/@babel/runtime/helpers/esm/checkPrivateRedeclaration.js +0 -4
  86. package/node_modules/@babel/runtime/helpers/esm/classApplyDescriptorDestructureSet.js +0 -10
  87. package/node_modules/@babel/runtime/helpers/esm/classApplyDescriptorGet.js +0 -4
  88. package/node_modules/@babel/runtime/helpers/esm/classApplyDescriptorSet.js +0 -7
  89. package/node_modules/@babel/runtime/helpers/esm/classCallCheck.js +0 -4
  90. package/node_modules/@babel/runtime/helpers/esm/classCheckPrivateStaticAccess.js +0 -5
  91. package/node_modules/@babel/runtime/helpers/esm/classCheckPrivateStaticFieldDescriptor.js +0 -4
  92. package/node_modules/@babel/runtime/helpers/esm/classExtractFieldDescriptor.js +0 -5
  93. package/node_modules/@babel/runtime/helpers/esm/classNameTDZError.js +0 -4
  94. package/node_modules/@babel/runtime/helpers/esm/classPrivateFieldDestructureSet.js +0 -7
  95. package/node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet.js +0 -7
  96. package/node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet2.js +0 -5
  97. package/node_modules/@babel/runtime/helpers/esm/classPrivateFieldInitSpec.js +0 -5
  98. package/node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseBase.js +0 -5
  99. package/node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseKey.js +0 -5
  100. package/node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet.js +0 -7
  101. package/node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet2.js +0 -5
  102. package/node_modules/@babel/runtime/helpers/esm/classPrivateGetter.js +0 -5
  103. package/node_modules/@babel/runtime/helpers/esm/classPrivateMethodGet.js +0 -5
  104. package/node_modules/@babel/runtime/helpers/esm/classPrivateMethodInitSpec.js +0 -5
  105. package/node_modules/@babel/runtime/helpers/esm/classPrivateMethodSet.js +0 -4
  106. package/node_modules/@babel/runtime/helpers/esm/classPrivateSetter.js +0 -5
  107. package/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldDestructureSet.js +0 -7
  108. package/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldSpecGet.js +0 -7
  109. package/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldSpecSet.js +0 -7
  110. package/node_modules/@babel/runtime/helpers/esm/classStaticPrivateMethodGet.js +0 -5
  111. package/node_modules/@babel/runtime/helpers/esm/classStaticPrivateMethodSet.js +0 -4
  112. package/node_modules/@babel/runtime/helpers/esm/construct.js +0 -10
  113. package/node_modules/@babel/runtime/helpers/esm/createClass.js +0 -13
  114. package/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js +0 -50
  115. package/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelperLoose.js +0 -19
  116. package/node_modules/@babel/runtime/helpers/esm/createSuper.js +0 -16
  117. package/node_modules/@babel/runtime/helpers/esm/decorate.js +0 -250
  118. package/node_modules/@babel/runtime/helpers/esm/defaults.js +0 -9
  119. package/node_modules/@babel/runtime/helpers/esm/defineAccessor.js +0 -8
  120. package/node_modules/@babel/runtime/helpers/esm/defineEnumerableProperties.js +0 -12
  121. package/node_modules/@babel/runtime/helpers/esm/defineProperty.js +0 -10
  122. package/node_modules/@babel/runtime/helpers/esm/dispose.js +0 -28
  123. package/node_modules/@babel/runtime/helpers/esm/extends.js +0 -10
  124. package/node_modules/@babel/runtime/helpers/esm/get.js +0 -11
  125. package/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js +0 -6
  126. package/node_modules/@babel/runtime/helpers/esm/identity.js +0 -4
  127. package/node_modules/@babel/runtime/helpers/esm/importDeferProxy.js +0 -27
  128. package/node_modules/@babel/runtime/helpers/esm/inherits.js +0 -14
  129. package/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js +0 -5
  130. package/node_modules/@babel/runtime/helpers/esm/initializerDefineProperty.js +0 -9
  131. package/node_modules/@babel/runtime/helpers/esm/initializerWarningHelper.js +0 -4
  132. package/node_modules/@babel/runtime/helpers/esm/instanceof.js +0 -4
  133. package/node_modules/@babel/runtime/helpers/esm/interopRequireDefault.js +0 -6
  134. package/node_modules/@babel/runtime/helpers/esm/interopRequireWildcard.js +0 -27
  135. package/node_modules/@babel/runtime/helpers/esm/isNativeFunction.js +0 -8
  136. package/node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js +0 -9
  137. package/node_modules/@babel/runtime/helpers/esm/iterableToArray.js +0 -4
  138. package/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js +0 -28
  139. package/node_modules/@babel/runtime/helpers/esm/jsx.js +0 -22
  140. package/node_modules/@babel/runtime/helpers/esm/maybeArrayLike.js +0 -9
  141. package/node_modules/@babel/runtime/helpers/esm/newArrowCheck.js +0 -4
  142. package/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js +0 -4
  143. package/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js +0 -4
  144. package/node_modules/@babel/runtime/helpers/esm/nullishReceiverError.js +0 -4
  145. package/node_modules/@babel/runtime/helpers/esm/objectDestructuringEmpty.js +0 -4
  146. package/node_modules/@babel/runtime/helpers/esm/objectSpread.js +0 -14
  147. package/node_modules/@babel/runtime/helpers/esm/objectSpread2.js +0 -23
  148. package/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js +0 -13
  149. package/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js +0 -10
  150. package/node_modules/@babel/runtime/helpers/esm/package.json +0 -3
  151. package/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js +0 -8
  152. package/node_modules/@babel/runtime/helpers/esm/readOnlyError.js +0 -4
  153. package/node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js +0 -304
  154. package/node_modules/@babel/runtime/helpers/esm/set.js +0 -22
  155. package/node_modules/@babel/runtime/helpers/esm/setFunctionName.js +0 -12
  156. package/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js +0 -6
  157. package/node_modules/@babel/runtime/helpers/esm/skipFirstGeneratorNext.js +0 -7
  158. package/node_modules/@babel/runtime/helpers/esm/slicedToArray.js +0 -8
  159. package/node_modules/@babel/runtime/helpers/esm/superPropBase.js +0 -6
  160. package/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteral.js +0 -8
  161. package/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteralLoose.js +0 -4
  162. package/node_modules/@babel/runtime/helpers/esm/tdz.js +0 -4
  163. package/node_modules/@babel/runtime/helpers/esm/temporalRef.js +0 -6
  164. package/node_modules/@babel/runtime/helpers/esm/temporalUndefined.js +0 -2
  165. package/node_modules/@babel/runtime/helpers/esm/toArray.js +0 -8
  166. package/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js +0 -8
  167. package/node_modules/@babel/runtime/helpers/esm/toPrimitive.js +0 -12
  168. package/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js +0 -7
  169. package/node_modules/@babel/runtime/helpers/esm/toSetter.js +0 -10
  170. package/node_modules/@babel/runtime/helpers/esm/typeof.js +0 -10
  171. package/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js +0 -9
  172. package/node_modules/@babel/runtime/helpers/esm/using.js +0 -12
  173. package/node_modules/@babel/runtime/helpers/esm/usingCtx.js +0 -47
  174. package/node_modules/@babel/runtime/helpers/esm/wrapAsyncGenerator.js +0 -69
  175. package/node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js +0 -27
  176. package/node_modules/@babel/runtime/helpers/esm/wrapRegExp.js +0 -51
  177. package/node_modules/@babel/runtime/helpers/esm/writeOnlyError.js +0 -4
  178. package/node_modules/@babel/runtime/helpers/extends.js +0 -10
  179. package/node_modules/@babel/runtime/helpers/get.js +0 -11
  180. package/node_modules/@babel/runtime/helpers/getPrototypeOf.js +0 -6
  181. package/node_modules/@babel/runtime/helpers/identity.js +0 -4
  182. package/node_modules/@babel/runtime/helpers/importDeferProxy.js +0 -27
  183. package/node_modules/@babel/runtime/helpers/inherits.js +0 -14
  184. package/node_modules/@babel/runtime/helpers/inheritsLoose.js +0 -5
  185. package/node_modules/@babel/runtime/helpers/initializerDefineProperty.js +0 -9
  186. package/node_modules/@babel/runtime/helpers/initializerWarningHelper.js +0 -4
  187. package/node_modules/@babel/runtime/helpers/instanceof.js +0 -4
  188. package/node_modules/@babel/runtime/helpers/interopRequireDefault.js +0 -6
  189. package/node_modules/@babel/runtime/helpers/interopRequireWildcard.js +0 -27
  190. package/node_modules/@babel/runtime/helpers/isNativeFunction.js +0 -8
  191. package/node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js +0 -9
  192. package/node_modules/@babel/runtime/helpers/iterableToArray.js +0 -4
  193. package/node_modules/@babel/runtime/helpers/iterableToArrayLimit.js +0 -28
  194. package/node_modules/@babel/runtime/helpers/jsx.js +0 -22
  195. package/node_modules/@babel/runtime/helpers/maybeArrayLike.js +0 -9
  196. package/node_modules/@babel/runtime/helpers/newArrowCheck.js +0 -4
  197. package/node_modules/@babel/runtime/helpers/nonIterableRest.js +0 -4
  198. package/node_modules/@babel/runtime/helpers/nonIterableSpread.js +0 -4
  199. package/node_modules/@babel/runtime/helpers/nullishReceiverError.js +0 -4
  200. package/node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js +0 -4
  201. package/node_modules/@babel/runtime/helpers/objectSpread.js +0 -14
  202. package/node_modules/@babel/runtime/helpers/objectSpread2.js +0 -23
  203. package/node_modules/@babel/runtime/helpers/objectWithoutProperties.js +0 -13
  204. package/node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js +0 -10
  205. package/node_modules/@babel/runtime/helpers/possibleConstructorReturn.js +0 -8
  206. package/node_modules/@babel/runtime/helpers/readOnlyError.js +0 -4
  207. package/node_modules/@babel/runtime/helpers/regeneratorRuntime.js +0 -304
  208. package/node_modules/@babel/runtime/helpers/set.js +0 -22
  209. package/node_modules/@babel/runtime/helpers/setFunctionName.js +0 -12
  210. package/node_modules/@babel/runtime/helpers/setPrototypeOf.js +0 -6
  211. package/node_modules/@babel/runtime/helpers/skipFirstGeneratorNext.js +0 -7
  212. package/node_modules/@babel/runtime/helpers/slicedToArray.js +0 -8
  213. package/node_modules/@babel/runtime/helpers/superPropBase.js +0 -6
  214. package/node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js +0 -8
  215. package/node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js +0 -4
  216. package/node_modules/@babel/runtime/helpers/tdz.js +0 -4
  217. package/node_modules/@babel/runtime/helpers/temporalRef.js +0 -6
  218. package/node_modules/@babel/runtime/helpers/temporalUndefined.js +0 -2
  219. package/node_modules/@babel/runtime/helpers/toArray.js +0 -8
  220. package/node_modules/@babel/runtime/helpers/toConsumableArray.js +0 -8
  221. package/node_modules/@babel/runtime/helpers/toPrimitive.js +0 -12
  222. package/node_modules/@babel/runtime/helpers/toPropertyKey.js +0 -7
  223. package/node_modules/@babel/runtime/helpers/toSetter.js +0 -10
  224. package/node_modules/@babel/runtime/helpers/typeof.js +0 -10
  225. package/node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js +0 -9
  226. package/node_modules/@babel/runtime/helpers/using.js +0 -12
  227. package/node_modules/@babel/runtime/helpers/usingCtx.js +0 -47
  228. package/node_modules/@babel/runtime/helpers/wrapAsyncGenerator.js +0 -69
  229. package/node_modules/@babel/runtime/helpers/wrapNativeSuper.js +0 -27
  230. package/node_modules/@babel/runtime/helpers/wrapRegExp.js +0 -51
  231. package/node_modules/@babel/runtime/helpers/writeOnlyError.js +0 -4
  232. package/node_modules/@babel/runtime/package.json +0 -1038
  233. package/node_modules/@babel/runtime/regenerator/index.js +0 -15
  234. package/node_modules/@conform-to/dom/LICENSE +0 -21
  235. package/node_modules/@conform-to/dom/README +0 -37
  236. package/node_modules/@conform-to/dom/_virtual/_rollupPluginBabelHelpers.js +0 -58
  237. package/node_modules/@conform-to/dom/_virtual/_rollupPluginBabelHelpers.mjs +0 -51
  238. package/node_modules/@conform-to/dom/dom.d.ts +0 -55
  239. package/node_modules/@conform-to/dom/dom.js +0 -104
  240. package/node_modules/@conform-to/dom/dom.mjs +0 -95
  241. package/node_modules/@conform-to/dom/form.d.ts +0 -246
  242. package/node_modules/@conform-to/dom/form.js +0 -582
  243. package/node_modules/@conform-to/dom/form.mjs +0 -578
  244. package/node_modules/@conform-to/dom/formdata.d.ts +0 -61
  245. package/node_modules/@conform-to/dom/formdata.js +0 -214
  246. package/node_modules/@conform-to/dom/formdata.mjs +0 -200
  247. package/node_modules/@conform-to/dom/index.d.ts +0 -26
  248. package/node_modules/@conform-to/dom/index.js +0 -20
  249. package/node_modules/@conform-to/dom/index.mjs +0 -4
  250. package/node_modules/@conform-to/dom/intent.d.ts +0 -114
  251. package/node_modules/@conform-to/dom/intent.js +0 -136
  252. package/node_modules/@conform-to/dom/intent.mjs +0 -126
  253. package/node_modules/@conform-to/dom/package.json +0 -59
  254. package/node_modules/@conform-to/dom/parse.d.ts +0 -50
  255. package/node_modules/@conform-to/dom/parse.js +0 -43
  256. package/node_modules/@conform-to/dom/parse.mjs +0 -37
  257. package/node_modules/@conform-to/dom/submission.d.ts +0 -135
  258. package/node_modules/@conform-to/dom/submission.js +0 -305
  259. package/node_modules/@conform-to/dom/submission.mjs +0 -288
  260. package/node_modules/@conform-to/dom/types.d.ts +0 -23
  261. package/node_modules/@conform-to/dom/util.d.ts +0 -6
  262. package/node_modules/@conform-to/dom/util.js +0 -19
  263. package/node_modules/@conform-to/dom/util.mjs +0 -13
  264. package/node_modules/@conform-to/react/LICENSE +0 -21
  265. package/node_modules/@conform-to/react/README +0 -37
  266. package/node_modules/@conform-to/react/_virtual/_rollupPluginBabelHelpers.js +0 -87
  267. package/node_modules/@conform-to/react/_virtual/_rollupPluginBabelHelpers.mjs +0 -78
  268. package/node_modules/@conform-to/react/context.d.ts +0 -200
  269. package/node_modules/@conform-to/react/context.js +0 -256
  270. package/node_modules/@conform-to/react/context.mjs +0 -241
  271. package/node_modules/@conform-to/react/experimental.d.ts +0 -0
  272. package/node_modules/@conform-to/react/helpers.d.ts +0 -208
  273. package/node_modules/@conform-to/react/helpers.js +0 -222
  274. package/node_modules/@conform-to/react/helpers.mjs +0 -211
  275. package/node_modules/@conform-to/react/hooks.d.ts +0 -63
  276. package/node_modules/@conform-to/react/hooks.js +0 -88
  277. package/node_modules/@conform-to/react/hooks.mjs +0 -79
  278. package/node_modules/@conform-to/react/index.d.ts +0 -29
  279. package/node_modules/@conform-to/react/index.js +0 -30
  280. package/node_modules/@conform-to/react/index.mjs +0 -5
  281. package/node_modules/@conform-to/react/integrations.d.ts +0 -45
  282. package/node_modules/@conform-to/react/integrations.js +0 -298
  283. package/node_modules/@conform-to/react/integrations.mjs +0 -284
  284. package/node_modules/@conform-to/react/package.json +0 -69
  285. package/node_modules/@conform-to/zod/LICENSE +0 -21
  286. package/node_modules/@conform-to/zod/README +0 -37
  287. package/node_modules/@conform-to/zod/_virtual/_rollupPluginBabelHelpers.js +0 -58
  288. package/node_modules/@conform-to/zod/_virtual/_rollupPluginBabelHelpers.mjs +0 -51
  289. package/node_modules/@conform-to/zod/coercion.d.ts +0 -37
  290. package/node_modules/@conform-to/zod/coercion.js +0 -171
  291. package/node_modules/@conform-to/zod/coercion.mjs +0 -164
  292. package/node_modules/@conform-to/zod/constraint.d.ts +0 -5
  293. package/node_modules/@conform-to/zod/constraint.js +0 -103
  294. package/node_modules/@conform-to/zod/constraint.mjs +0 -99
  295. package/node_modules/@conform-to/zod/index.d.ts +0 -2
  296. package/node_modules/@conform-to/zod/index.js +0 -12
  297. package/node_modules/@conform-to/zod/index.mjs +0 -2
  298. package/node_modules/@conform-to/zod/package.json +0 -61
  299. package/node_modules/@conform-to/zod/parse.d.ts +0 -46
  300. package/node_modules/@conform-to/zod/parse.js +0 -64
  301. package/node_modules/@conform-to/zod/parse.mjs +0 -59
  302. package/node_modules/@epic-web/client-hints/README.md +0 -221
  303. package/node_modules/@epic-web/client-hints/dist/color-scheme.d.ts +0 -12
  304. package/node_modules/@epic-web/client-hints/dist/color-scheme.js +0 -25
  305. package/node_modules/@epic-web/client-hints/dist/index.d.ts +0 -6
  306. package/node_modules/@epic-web/client-hints/dist/index.js +0 -79
  307. package/node_modules/@epic-web/client-hints/dist/reduced-motion.d.ts +0 -12
  308. package/node_modules/@epic-web/client-hints/dist/reduced-motion.js +0 -25
  309. package/node_modules/@epic-web/client-hints/dist/time-zone.d.ts +0 -5
  310. package/node_modules/@epic-web/client-hints/dist/time-zone.js +0 -5
  311. package/node_modules/@epic-web/client-hints/dist/utils.d.ts +0 -9
  312. package/node_modules/@epic-web/client-hints/dist/utils.js +0 -1
  313. package/node_modules/@epic-web/client-hints/package.json +0 -71
  314. package/node_modules/@epic-web/restore-scroll/README.md +0 -108
  315. package/node_modules/@epic-web/restore-scroll/dist/index.d.ts +0 -7
  316. package/node_modules/@epic-web/restore-scroll/dist/index.js +0 -85
  317. package/node_modules/@epic-web/restore-scroll/package.json +0 -64
  318. package/node_modules/@floating-ui/core/LICENSE +0 -20
  319. package/node_modules/@floating-ui/core/README.md +0 -4
  320. package/node_modules/@floating-ui/core/dist/floating-ui.core.browser.min.mjs +0 -1
  321. package/node_modules/@floating-ui/core/dist/floating-ui.core.browser.mjs +0 -1164
  322. package/node_modules/@floating-ui/core/dist/floating-ui.core.d.mts +0 -521
  323. package/node_modules/@floating-ui/core/dist/floating-ui.core.d.ts +0 -521
  324. package/node_modules/@floating-ui/core/dist/floating-ui.core.esm.js +0 -1036
  325. package/node_modules/@floating-ui/core/dist/floating-ui.core.mjs +0 -1036
  326. package/node_modules/@floating-ui/core/dist/floating-ui.core.umd.js +0 -1183
  327. package/node_modules/@floating-ui/core/dist/floating-ui.core.umd.min.js +0 -1
  328. package/node_modules/@floating-ui/core/package.json +0 -63
  329. package/node_modules/@floating-ui/dom/LICENSE +0 -20
  330. package/node_modules/@floating-ui/dom/README.md +0 -4
  331. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.browser.min.mjs +0 -1
  332. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.browser.mjs +0 -853
  333. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.d.mts +0 -356
  334. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.d.ts +0 -356
  335. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.esm.js +0 -704
  336. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs +0 -704
  337. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.umd.js +0 -872
  338. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.umd.min.js +0 -1
  339. package/node_modules/@floating-ui/dom/package.json +0 -71
  340. package/node_modules/@floating-ui/react-dom/LICENSE +0 -20
  341. package/node_modules/@floating-ui/react-dom/README.md +0 -3
  342. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.d.mts +0 -307
  343. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.d.ts +0 -307
  344. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.esm.js +0 -363
  345. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.mjs +0 -363
  346. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.umd.js +0 -414
  347. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.umd.min.js +0 -1
  348. package/node_modules/@floating-ui/react-dom/package.json +0 -77
  349. package/node_modules/@floating-ui/utils/LICENSE +0 -20
  350. package/node_modules/@floating-ui/utils/README.md +0 -4
  351. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.d.mts +0 -103
  352. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.d.ts +0 -103
  353. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.d.mts +0 -45
  354. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.d.ts +0 -45
  355. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.esm.js +0 -139
  356. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs +0 -139
  357. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.umd.js +0 -165
  358. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.umd.min.js +0 -1
  359. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.esm.js +0 -138
  360. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs +0 -138
  361. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.umd.js +0 -169
  362. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.umd.min.js +0 -1
  363. package/node_modules/@floating-ui/utils/dom/floating-ui.utils.dom.d.ts +0 -45
  364. package/node_modules/@floating-ui/utils/dom/floating-ui.utils.dom.esm.js +0 -139
  365. package/node_modules/@floating-ui/utils/dom/floating-ui.utils.dom.umd.js +0 -165
  366. package/node_modules/@floating-ui/utils/dom/package.json +0 -6
  367. package/node_modules/@floating-ui/utils/package.json +0 -70
  368. package/node_modules/@radix-ui/number/README.md +0 -13
  369. package/node_modules/@radix-ui/number/dist/index.d.mts +0 -3
  370. package/node_modules/@radix-ui/number/dist/index.d.ts +0 -3
  371. package/node_modules/@radix-ui/number/dist/index.js +0 -31
  372. package/node_modules/@radix-ui/number/dist/index.js.map +0 -7
  373. package/node_modules/@radix-ui/number/dist/index.mjs +0 -8
  374. package/node_modules/@radix-ui/number/dist/index.mjs.map +0 -7
  375. package/node_modules/@radix-ui/number/package.json +0 -38
  376. package/node_modules/@radix-ui/primitive/README.md +0 -13
  377. package/node_modules/@radix-ui/primitive/dist/index.d.mts +0 -5
  378. package/node_modules/@radix-ui/primitive/dist/index.d.ts +0 -5
  379. package/node_modules/@radix-ui/primitive/dist/index.js +0 -36
  380. package/node_modules/@radix-ui/primitive/dist/index.js.map +0 -7
  381. package/node_modules/@radix-ui/primitive/dist/index.mjs +0 -13
  382. package/node_modules/@radix-ui/primitive/dist/index.mjs.map +0 -7
  383. package/node_modules/@radix-ui/primitive/package.json +0 -38
  384. package/node_modules/@radix-ui/react-accordion/README.md +0 -13
  385. package/node_modules/@radix-ui/react-accordion/dist/index.d.mts +0 -125
  386. package/node_modules/@radix-ui/react-accordion/dist/index.d.ts +0 -125
  387. package/node_modules/@radix-ui/react-accordion/dist/index.js +0 -350
  388. package/node_modules/@radix-ui/react-accordion/dist/index.js.map +0 -7
  389. package/node_modules/@radix-ui/react-accordion/dist/index.mjs +0 -318
  390. package/node_modules/@radix-ui/react-accordion/dist/index.mjs.map +0 -7
  391. package/node_modules/@radix-ui/react-accordion/package.json +0 -63
  392. package/node_modules/@radix-ui/react-arrow/README.md +0 -13
  393. package/node_modules/@radix-ui/react-arrow/dist/index.d.mts +0 -10
  394. package/node_modules/@radix-ui/react-arrow/dist/index.d.ts +0 -10
  395. package/node_modules/@radix-ui/react-arrow/dist/index.js +0 -60
  396. package/node_modules/@radix-ui/react-arrow/dist/index.js.map +0 -7
  397. package/node_modules/@radix-ui/react-arrow/dist/index.mjs +0 -27
  398. package/node_modules/@radix-ui/react-arrow/dist/index.mjs.map +0 -7
  399. package/node_modules/@radix-ui/react-arrow/package.json +0 -55
  400. package/node_modules/@radix-ui/react-collapsible/README.md +0 -13
  401. package/node_modules/@radix-ui/react-collapsible/dist/index.d.mts +0 -43
  402. package/node_modules/@radix-ui/react-collapsible/dist/index.d.ts +0 -43
  403. package/node_modules/@radix-ui/react-collapsible/dist/index.js +0 -186
  404. package/node_modules/@radix-ui/react-collapsible/dist/index.js.map +0 -7
  405. package/node_modules/@radix-ui/react-collapsible/dist/index.mjs +0 -154
  406. package/node_modules/@radix-ui/react-collapsible/dist/index.mjs.map +0 -7
  407. package/node_modules/@radix-ui/react-collapsible/package.json +0 -62
  408. package/node_modules/@radix-ui/react-collection/README.md +0 -13
  409. package/node_modules/@radix-ui/react-collection/dist/index.d.mts +0 -34
  410. package/node_modules/@radix-ui/react-collection/dist/index.d.ts +0 -34
  411. package/node_modules/@radix-ui/react-collection/dist/index.js +0 -104
  412. package/node_modules/@radix-ui/react-collection/dist/index.js.map +0 -7
  413. package/node_modules/@radix-ui/react-collection/dist/index.mjs +0 -72
  414. package/node_modules/@radix-ui/react-collection/dist/index.mjs.map +0 -7
  415. package/node_modules/@radix-ui/react-collection/package.json +0 -58
  416. package/node_modules/@radix-ui/react-compose-refs/README.md +0 -13
  417. package/node_modules/@radix-ui/react-compose-refs/dist/index.d.mts +0 -15
  418. package/node_modules/@radix-ui/react-compose-refs/dist/index.d.ts +0 -15
  419. package/node_modules/@radix-ui/react-compose-refs/dist/index.js +0 -53
  420. package/node_modules/@radix-ui/react-compose-refs/dist/index.js.map +0 -7
  421. package/node_modules/@radix-ui/react-compose-refs/dist/index.mjs +0 -20
  422. package/node_modules/@radix-ui/react-compose-refs/dist/index.mjs.map +0 -7
  423. package/node_modules/@radix-ui/react-compose-refs/package.json +0 -47
  424. package/node_modules/@radix-ui/react-context/README.md +0 -13
  425. package/node_modules/@radix-ui/react-context/dist/index.d.mts +0 -28
  426. package/node_modules/@radix-ui/react-context/dist/index.d.ts +0 -28
  427. package/node_modules/@radix-ui/react-context/dist/index.js +0 -114
  428. package/node_modules/@radix-ui/react-context/dist/index.js.map +0 -7
  429. package/node_modules/@radix-ui/react-context/dist/index.mjs +0 -81
  430. package/node_modules/@radix-ui/react-context/dist/index.mjs.map +0 -7
  431. package/node_modules/@radix-ui/react-context/package.json +0 -47
  432. package/node_modules/@radix-ui/react-direction/README.md +0 -13
  433. package/node_modules/@radix-ui/react-direction/dist/index.d.mts +0 -12
  434. package/node_modules/@radix-ui/react-direction/dist/index.d.ts +0 -12
  435. package/node_modules/@radix-ui/react-direction/dist/index.js +0 -52
  436. package/node_modules/@radix-ui/react-direction/dist/index.js.map +0 -7
  437. package/node_modules/@radix-ui/react-direction/dist/index.mjs +0 -19
  438. package/node_modules/@radix-ui/react-direction/dist/index.mjs.map +0 -7
  439. package/node_modules/@radix-ui/react-direction/package.json +0 -47
  440. package/node_modules/@radix-ui/react-dismissable-layer/README.md +0 -13
  441. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.d.mts +0 -51
  442. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.d.ts +0 -51
  443. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.js +0 -253
  444. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.js.map +0 -7
  445. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs +0 -221
  446. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs.map +0 -7
  447. package/node_modules/@radix-ui/react-dismissable-layer/package.json +0 -62
  448. package/node_modules/@radix-ui/react-focus-guards/README.md +0 -13
  449. package/node_modules/@radix-ui/react-focus-guards/dist/index.d.mts +0 -9
  450. package/node_modules/@radix-ui/react-focus-guards/dist/index.d.ts +0 -9
  451. package/node_modules/@radix-ui/react-focus-guards/dist/index.js +0 -69
  452. package/node_modules/@radix-ui/react-focus-guards/dist/index.js.map +0 -7
  453. package/node_modules/@radix-ui/react-focus-guards/dist/index.mjs +0 -37
  454. package/node_modules/@radix-ui/react-focus-guards/dist/index.mjs.map +0 -7
  455. package/node_modules/@radix-ui/react-focus-guards/package.json +0 -47
  456. package/node_modules/@radix-ui/react-focus-scope/README.md +0 -13
  457. package/node_modules/@radix-ui/react-focus-scope/dist/index.d.mts +0 -32
  458. package/node_modules/@radix-ui/react-focus-scope/dist/index.d.ts +0 -32
  459. package/node_modules/@radix-ui/react-focus-scope/dist/index.js +0 -246
  460. package/node_modules/@radix-ui/react-focus-scope/dist/index.js.map +0 -7
  461. package/node_modules/@radix-ui/react-focus-scope/dist/index.mjs +0 -214
  462. package/node_modules/@radix-ui/react-focus-scope/dist/index.mjs.map +0 -7
  463. package/node_modules/@radix-ui/react-focus-scope/package.json +0 -57
  464. package/node_modules/@radix-ui/react-id/README.md +0 -13
  465. package/node_modules/@radix-ui/react-id/dist/index.d.mts +0 -3
  466. package/node_modules/@radix-ui/react-id/dist/index.d.ts +0 -3
  467. package/node_modules/@radix-ui/react-id/dist/index.js +0 -49
  468. package/node_modules/@radix-ui/react-id/dist/index.js.map +0 -7
  469. package/node_modules/@radix-ui/react-id/dist/index.mjs +0 -16
  470. package/node_modules/@radix-ui/react-id/dist/index.mjs.map +0 -7
  471. package/node_modules/@radix-ui/react-id/package.json +0 -50
  472. package/node_modules/@radix-ui/react-popover/README.md +0 -13
  473. package/node_modules/@radix-ui/react-popover/dist/index.d.mts +0 -95
  474. package/node_modules/@radix-ui/react-popover/dist/index.d.ts +0 -95
  475. package/node_modules/@radix-ui/react-popover/dist/index.js +0 -350
  476. package/node_modules/@radix-ui/react-popover/dist/index.js.map +0 -7
  477. package/node_modules/@radix-ui/react-popover/dist/index.mjs +0 -318
  478. package/node_modules/@radix-ui/react-popover/dist/index.mjs.map +0 -7
  479. package/node_modules/@radix-ui/react-popover/package.json +0 -69
  480. package/node_modules/@radix-ui/react-popper/README.md +0 -13
  481. package/node_modules/@radix-ui/react-popper/dist/index.d.mts +0 -56
  482. package/node_modules/@radix-ui/react-popper/dist/index.d.ts +0 -56
  483. package/node_modules/@radix-ui/react-popper/dist/index.js +0 -325
  484. package/node_modules/@radix-ui/react-popper/dist/index.js.map +0 -7
  485. package/node_modules/@radix-ui/react-popper/dist/index.mjs +0 -303
  486. package/node_modules/@radix-ui/react-popper/dist/index.mjs.map +0 -7
  487. package/node_modules/@radix-ui/react-popper/package.json +0 -64
  488. package/node_modules/@radix-ui/react-portal/README.md +0 -13
  489. package/node_modules/@radix-ui/react-portal/dist/index.d.mts +0 -14
  490. package/node_modules/@radix-ui/react-portal/dist/index.d.ts +0 -14
  491. package/node_modules/@radix-ui/react-portal/dist/index.js +0 -55
  492. package/node_modules/@radix-ui/react-portal/dist/index.js.map +0 -7
  493. package/node_modules/@radix-ui/react-portal/dist/index.mjs +0 -23
  494. package/node_modules/@radix-ui/react-portal/dist/index.mjs.map +0 -7
  495. package/node_modules/@radix-ui/react-portal/package.json +0 -56
  496. package/node_modules/@radix-ui/react-presence/README.md +0 -13
  497. package/node_modules/@radix-ui/react-presence/dist/index.d.mts +0 -11
  498. package/node_modules/@radix-ui/react-presence/dist/index.d.ts +0 -11
  499. package/node_modules/@radix-ui/react-presence/dist/index.js +0 -158
  500. package/node_modules/@radix-ui/react-presence/dist/index.js.map +0 -7
  501. package/node_modules/@radix-ui/react-presence/dist/index.mjs +0 -126
  502. package/node_modules/@radix-ui/react-presence/dist/index.mjs.map +0 -7
  503. package/node_modules/@radix-ui/react-presence/package.json +0 -56
  504. package/node_modules/@radix-ui/react-primitive/README.md +0 -13
  505. package/node_modules/@radix-ui/react-primitive/dist/index.d.mts +0 -52
  506. package/node_modules/@radix-ui/react-primitive/dist/index.d.ts +0 -52
  507. package/node_modules/@radix-ui/react-primitive/dist/index.js +0 -78
  508. package/node_modules/@radix-ui/react-primitive/dist/index.js.map +0 -7
  509. package/node_modules/@radix-ui/react-primitive/dist/index.mjs +0 -45
  510. package/node_modules/@radix-ui/react-primitive/dist/index.mjs.map +0 -7
  511. package/node_modules/@radix-ui/react-primitive/package.json +0 -58
  512. package/node_modules/@radix-ui/react-roving-focus/README.md +0 -13
  513. package/node_modules/@radix-ui/react-roving-focus/dist/index.d.mts +0 -55
  514. package/node_modules/@radix-ui/react-roving-focus/dist/index.d.ts +0 -55
  515. package/node_modules/@radix-ui/react-roving-focus/dist/index.js +0 -260
  516. package/node_modules/@radix-ui/react-roving-focus/dist/index.js.map +0 -7
  517. package/node_modules/@radix-ui/react-roving-focus/dist/index.mjs +0 -228
  518. package/node_modules/@radix-ui/react-roving-focus/dist/index.mjs.map +0 -7
  519. package/node_modules/@radix-ui/react-roving-focus/package.json +0 -63
  520. package/node_modules/@radix-ui/react-select/README.md +0 -13
  521. package/node_modules/@radix-ui/react-select/dist/index.d.mts +0 -144
  522. package/node_modules/@radix-ui/react-select/dist/index.d.ts +0 -144
  523. package/node_modules/@radix-ui/react-select/dist/index.js +0 -1182
  524. package/node_modules/@radix-ui/react-select/dist/index.js.map +0 -7
  525. package/node_modules/@radix-ui/react-select/dist/index.mjs +0 -1150
  526. package/node_modules/@radix-ui/react-select/dist/index.mjs.map +0 -7
  527. package/node_modules/@radix-ui/react-select/package.json +0 -75
  528. package/node_modules/@radix-ui/react-slot/README.md +0 -13
  529. package/node_modules/@radix-ui/react-slot/dist/index.d.mts +0 -13
  530. package/node_modules/@radix-ui/react-slot/dist/index.d.ts +0 -13
  531. package/node_modules/@radix-ui/react-slot/dist/index.js +0 -118
  532. package/node_modules/@radix-ui/react-slot/dist/index.js.map +0 -7
  533. package/node_modules/@radix-ui/react-slot/dist/index.mjs +0 -85
  534. package/node_modules/@radix-ui/react-slot/dist/index.mjs.map +0 -7
  535. package/node_modules/@radix-ui/react-slot/package.json +0 -50
  536. package/node_modules/@radix-ui/react-tabs/README.md +0 -13
  537. package/node_modules/@radix-ui/react-tabs/dist/index.d.mts +0 -66
  538. package/node_modules/@radix-ui/react-tabs/dist/index.d.ts +0 -66
  539. package/node_modules/@radix-ui/react-tabs/dist/index.js +0 -231
  540. package/node_modules/@radix-ui/react-tabs/dist/index.js.map +0 -7
  541. package/node_modules/@radix-ui/react-tabs/dist/index.mjs +0 -199
  542. package/node_modules/@radix-ui/react-tabs/dist/index.mjs.map +0 -7
  543. package/node_modules/@radix-ui/react-tabs/package.json +0 -62
  544. package/node_modules/@radix-ui/react-toast/README.md +0 -13
  545. package/node_modules/@radix-ui/react-toast/dist/index.d.mts +0 -130
  546. package/node_modules/@radix-ui/react-toast/dist/index.d.ts +0 -130
  547. package/node_modules/@radix-ui/react-toast/dist/index.js +0 -681
  548. package/node_modules/@radix-ui/react-toast/dist/index.js.map +0 -7
  549. package/node_modules/@radix-ui/react-toast/dist/index.mjs +0 -649
  550. package/node_modules/@radix-ui/react-toast/dist/index.mjs.map +0 -7
  551. package/node_modules/@radix-ui/react-toast/package.json +0 -66
  552. package/node_modules/@radix-ui/react-use-callback-ref/README.md +0 -13
  553. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.d.mts +0 -7
  554. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.d.ts +0 -7
  555. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.js +0 -46
  556. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.js.map +0 -7
  557. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs +0 -13
  558. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs.map +0 -7
  559. package/node_modules/@radix-ui/react-use-callback-ref/package.json +0 -47
  560. package/node_modules/@radix-ui/react-use-controllable-state/README.md +0 -13
  561. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.d.mts +0 -10
  562. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.d.ts +0 -10
  563. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.js +0 -80
  564. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.js.map +0 -7
  565. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs +0 -47
  566. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs.map +0 -7
  567. package/node_modules/@radix-ui/react-use-controllable-state/package.json +0 -50
  568. package/node_modules/@radix-ui/react-use-escape-keydown/README.md +0 -13
  569. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.d.mts +0 -6
  570. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.d.ts +0 -6
  571. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.js +0 -52
  572. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.js.map +0 -7
  573. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.mjs +0 -19
  574. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.mjs.map +0 -7
  575. package/node_modules/@radix-ui/react-use-escape-keydown/package.json +0 -50
  576. package/node_modules/@radix-ui/react-use-layout-effect/README.md +0 -13
  577. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.d.mts +0 -12
  578. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.d.ts +0 -12
  579. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.js +0 -41
  580. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.js.map +0 -7
  581. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs +0 -8
  582. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs.map +0 -7
  583. package/node_modules/@radix-ui/react-use-layout-effect/package.json +0 -47
  584. package/node_modules/@radix-ui/react-use-previous/README.md +0 -13
  585. package/node_modules/@radix-ui/react-use-previous/dist/index.d.mts +0 -3
  586. package/node_modules/@radix-ui/react-use-previous/dist/index.d.ts +0 -3
  587. package/node_modules/@radix-ui/react-use-previous/dist/index.js +0 -49
  588. package/node_modules/@radix-ui/react-use-previous/dist/index.js.map +0 -7
  589. package/node_modules/@radix-ui/react-use-previous/dist/index.mjs +0 -16
  590. package/node_modules/@radix-ui/react-use-previous/dist/index.mjs.map +0 -7
  591. package/node_modules/@radix-ui/react-use-previous/package.json +0 -47
  592. package/node_modules/@radix-ui/react-use-rect/README.md +0 -13
  593. package/node_modules/@radix-ui/react-use-rect/dist/index.d.mts +0 -9
  594. package/node_modules/@radix-ui/react-use-rect/dist/index.d.ts +0 -9
  595. package/node_modules/@radix-ui/react-use-rect/dist/index.js +0 -54
  596. package/node_modules/@radix-ui/react-use-rect/dist/index.js.map +0 -7
  597. package/node_modules/@radix-ui/react-use-rect/dist/index.mjs +0 -21
  598. package/node_modules/@radix-ui/react-use-rect/dist/index.mjs.map +0 -7
  599. package/node_modules/@radix-ui/react-use-rect/package.json +0 -50
  600. package/node_modules/@radix-ui/react-use-size/README.md +0 -13
  601. package/node_modules/@radix-ui/react-use-size/dist/index.d.mts +0 -6
  602. package/node_modules/@radix-ui/react-use-size/dist/index.d.ts +0 -6
  603. package/node_modules/@radix-ui/react-use-size/dist/index.js +0 -74
  604. package/node_modules/@radix-ui/react-use-size/dist/index.js.map +0 -7
  605. package/node_modules/@radix-ui/react-use-size/dist/index.mjs +0 -41
  606. package/node_modules/@radix-ui/react-use-size/dist/index.mjs.map +0 -7
  607. package/node_modules/@radix-ui/react-use-size/package.json +0 -53
  608. package/node_modules/@radix-ui/react-visually-hidden/README.md +0 -13
  609. package/node_modules/@radix-ui/react-visually-hidden/dist/index.d.mts +0 -10
  610. package/node_modules/@radix-ui/react-visually-hidden/dist/index.d.ts +0 -10
  611. package/node_modules/@radix-ui/react-visually-hidden/dist/index.js +0 -70
  612. package/node_modules/@radix-ui/react-visually-hidden/dist/index.js.map +0 -7
  613. package/node_modules/@radix-ui/react-visually-hidden/dist/index.mjs +0 -37
  614. package/node_modules/@radix-ui/react-visually-hidden/dist/index.mjs.map +0 -7
  615. package/node_modules/@radix-ui/react-visually-hidden/package.json +0 -55
  616. package/node_modules/@radix-ui/rect/README.md +0 -13
  617. package/node_modules/@radix-ui/rect/dist/index.d.mts +0 -16
  618. package/node_modules/@radix-ui/rect/dist/index.d.ts +0 -16
  619. package/node_modules/@radix-ui/rect/dist/index.js +0 -73
  620. package/node_modules/@radix-ui/rect/dist/index.js.map +0 -7
  621. package/node_modules/@radix-ui/rect/dist/index.mjs +0 -50
  622. package/node_modules/@radix-ui/rect/dist/index.mjs.map +0 -7
  623. package/node_modules/@radix-ui/rect/package.json +0 -38
  624. package/node_modules/@remix-run/react/CHANGELOG.md +0 -964
  625. package/node_modules/@remix-run/react/LICENSE.md +0 -22
  626. package/node_modules/@remix-run/react/README.md +0 -13
  627. package/node_modules/@remix-run/react/dist/_virtual/_rollupPluginBabelHelpers.js +0 -30
  628. package/node_modules/@remix-run/react/dist/browser.d.ts +0 -37
  629. package/node_modules/@remix-run/react/dist/browser.js +0 -268
  630. package/node_modules/@remix-run/react/dist/components.d.ts +0 -137
  631. package/node_modules/@remix-run/react/dist/components.js +0 -911
  632. package/node_modules/@remix-run/react/dist/data.d.ts +0 -15
  633. package/node_modules/@remix-run/react/dist/data.js +0 -280
  634. package/node_modules/@remix-run/react/dist/entry.d.ts +0 -51
  635. package/node_modules/@remix-run/react/dist/errorBoundaries.d.ts +0 -36
  636. package/node_modules/@remix-run/react/dist/errorBoundaries.js +0 -186
  637. package/node_modules/@remix-run/react/dist/errors.d.ts +0 -2
  638. package/node_modules/@remix-run/react/dist/errors.js +0 -53
  639. package/node_modules/@remix-run/react/dist/esm/_virtual/_rollupPluginBabelHelpers.js +0 -26
  640. package/node_modules/@remix-run/react/dist/esm/browser.js +0 -308
  641. package/node_modules/@remix-run/react/dist/esm/components.js +0 -878
  642. package/node_modules/@remix-run/react/dist/esm/data.js +0 -267
  643. package/node_modules/@remix-run/react/dist/esm/errorBoundaries.js +0 -160
  644. package/node_modules/@remix-run/react/dist/esm/errors.js +0 -49
  645. package/node_modules/@remix-run/react/dist/esm/fallback.js +0 -35
  646. package/node_modules/@remix-run/react/dist/esm/fog-of-war.js +0 -226
  647. package/node_modules/@remix-run/react/dist/esm/index.js +0 -17
  648. package/node_modules/@remix-run/react/dist/esm/invariant.js +0 -17
  649. package/node_modules/@remix-run/react/dist/esm/links.js +0 -258
  650. package/node_modules/@remix-run/react/dist/esm/markup.js +0 -34
  651. package/node_modules/@remix-run/react/dist/esm/routeModules.js +0 -89
  652. package/node_modules/@remix-run/react/dist/esm/routes.js +0 -411
  653. package/node_modules/@remix-run/react/dist/esm/scroll-restoration.js +0 -84
  654. package/node_modules/@remix-run/react/dist/esm/server.js +0 -93
  655. package/node_modules/@remix-run/react/dist/esm/single-fetch.js +0 -309
  656. package/node_modules/@remix-run/react/dist/fallback.d.ts +0 -2
  657. package/node_modules/@remix-run/react/dist/fallback.js +0 -59
  658. package/node_modules/@remix-run/react/dist/fog-of-war.d.ts +0 -37
  659. package/node_modules/@remix-run/react/dist/fog-of-war.js +0 -254
  660. package/node_modules/@remix-run/react/dist/index.d.ts +0 -16
  661. package/node_modules/@remix-run/react/dist/index.js +0 -227
  662. package/node_modules/@remix-run/react/dist/invariant.d.ts +0 -2
  663. package/node_modules/@remix-run/react/dist/invariant.js +0 -19
  664. package/node_modules/@remix-run/react/dist/links.d.ts +0 -128
  665. package/node_modules/@remix-run/react/dist/links.js +0 -268
  666. package/node_modules/@remix-run/react/dist/markup.d.ts +0 -5
  667. package/node_modules/@remix-run/react/dist/markup.js +0 -39
  668. package/node_modules/@remix-run/react/dist/routeModules.d.ts +0 -132
  669. package/node_modules/@remix-run/react/dist/routeModules.js +0 -111
  670. package/node_modules/@remix-run/react/dist/routes.d.ts +0 -32
  671. package/node_modules/@remix-run/react/dist/routes.js +0 -438
  672. package/node_modules/@remix-run/react/dist/scroll-restoration.d.ts +0 -12
  673. package/node_modules/@remix-run/react/dist/scroll-restoration.js +0 -108
  674. package/node_modules/@remix-run/react/dist/server.d.ts +0 -14
  675. package/node_modules/@remix-run/react/dist/server.js +0 -117
  676. package/node_modules/@remix-run/react/dist/single-fetch.d.ts +0 -34
  677. package/node_modules/@remix-run/react/dist/single-fetch.js +0 -339
  678. package/node_modules/@remix-run/react/dist/warnings.d.ts +0 -1
  679. package/node_modules/@remix-run/react/future/single-fetch.d.ts +0 -73
  680. package/node_modules/@remix-run/react/package.json +0 -59
  681. package/node_modules/@remix-run/router/CHANGELOG.md +0 -747
  682. package/node_modules/@remix-run/router/LICENSE.md +0 -23
  683. package/node_modules/@remix-run/router/README.md +0 -135
  684. package/node_modules/@remix-run/router/dist/history.d.ts +0 -250
  685. package/node_modules/@remix-run/router/dist/index.d.ts +0 -9
  686. package/node_modules/@remix-run/router/dist/router.cjs.js +0 -5407
  687. package/node_modules/@remix-run/router/dist/router.cjs.js.map +0 -1
  688. package/node_modules/@remix-run/router/dist/router.d.ts +0 -523
  689. package/node_modules/@remix-run/router/dist/router.js +0 -4856
  690. package/node_modules/@remix-run/router/dist/router.js.map +0 -1
  691. package/node_modules/@remix-run/router/dist/router.umd.js +0 -5413
  692. package/node_modules/@remix-run/router/dist/router.umd.js.map +0 -1
  693. package/node_modules/@remix-run/router/dist/router.umd.min.js +0 -12
  694. package/node_modules/@remix-run/router/dist/router.umd.min.js.map +0 -1
  695. package/node_modules/@remix-run/router/dist/utils.d.ts +0 -528
  696. package/node_modules/@remix-run/router/history.ts +0 -746
  697. package/node_modules/@remix-run/router/index.ts +0 -101
  698. package/node_modules/@remix-run/router/package.json +0 -33
  699. package/node_modules/@remix-run/router/router.ts +0 -5760
  700. package/node_modules/@remix-run/router/utils.ts +0 -1673
  701. package/node_modules/@remix-run/server-runtime/CHANGELOG.md +0 -1023
  702. package/node_modules/@remix-run/server-runtime/LICENSE.md +0 -22
  703. package/node_modules/@remix-run/server-runtime/README.md +0 -26
  704. package/node_modules/@remix-run/server-runtime/dist/build.d.ts +0 -39
  705. package/node_modules/@remix-run/server-runtime/dist/cookies.d.ts +0 -69
  706. package/node_modules/@remix-run/server-runtime/dist/cookies.js +0 -173
  707. package/node_modules/@remix-run/server-runtime/dist/crypto.d.ts +0 -2
  708. package/node_modules/@remix-run/server-runtime/dist/data.d.ts +0 -33
  709. package/node_modules/@remix-run/server-runtime/dist/data.js +0 -138
  710. package/node_modules/@remix-run/server-runtime/dist/deprecations.d.ts +0 -1
  711. package/node_modules/@remix-run/server-runtime/dist/deprecations.js +0 -19
  712. package/node_modules/@remix-run/server-runtime/dist/dev.d.ts +0 -10
  713. package/node_modules/@remix-run/server-runtime/dist/dev.js +0 -53
  714. package/node_modules/@remix-run/server-runtime/dist/entry.d.ts +0 -43
  715. package/node_modules/@remix-run/server-runtime/dist/entry.js +0 -22
  716. package/node_modules/@remix-run/server-runtime/dist/errors.d.ts +0 -51
  717. package/node_modules/@remix-run/server-runtime/dist/errors.js +0 -122
  718. package/node_modules/@remix-run/server-runtime/dist/esm/cookies.js +0 -168
  719. package/node_modules/@remix-run/server-runtime/dist/esm/data.js +0 -133
  720. package/node_modules/@remix-run/server-runtime/dist/esm/deprecations.js +0 -15
  721. package/node_modules/@remix-run/server-runtime/dist/esm/dev.js +0 -46
  722. package/node_modules/@remix-run/server-runtime/dist/esm/entry.js +0 -18
  723. package/node_modules/@remix-run/server-runtime/dist/esm/errors.js +0 -115
  724. package/node_modules/@remix-run/server-runtime/dist/esm/formData.js +0 -55
  725. package/node_modules/@remix-run/server-runtime/dist/esm/headers.js +0 -90
  726. package/node_modules/@remix-run/server-runtime/dist/esm/index.js +0 -21
  727. package/node_modules/@remix-run/server-runtime/dist/esm/invariant.js +0 -18
  728. package/node_modules/@remix-run/server-runtime/dist/esm/markup.js +0 -29
  729. package/node_modules/@remix-run/server-runtime/dist/esm/mode.js +0 -24
  730. package/node_modules/@remix-run/server-runtime/dist/esm/responses.js +0 -123
  731. package/node_modules/@remix-run/server-runtime/dist/esm/routeMatching.js +0 -23
  732. package/node_modules/@remix-run/server-runtime/dist/esm/routes.js +0 -81
  733. package/node_modules/@remix-run/server-runtime/dist/esm/server.js +0 -524
  734. package/node_modules/@remix-run/server-runtime/dist/esm/serverHandoff.js +0 -20
  735. package/node_modules/@remix-run/server-runtime/dist/esm/sessions/cookieStorage.js +0 -51
  736. package/node_modules/@remix-run/server-runtime/dist/esm/sessions/memoryStorage.js +0 -61
  737. package/node_modules/@remix-run/server-runtime/dist/esm/sessions.js +0 -145
  738. package/node_modules/@remix-run/server-runtime/dist/esm/single-fetch.js +0 -450
  739. package/node_modules/@remix-run/server-runtime/dist/esm/upload/errors.js +0 -19
  740. package/node_modules/@remix-run/server-runtime/dist/esm/upload/memoryUploadHandler.js +0 -50
  741. package/node_modules/@remix-run/server-runtime/dist/esm/warnings.js +0 -19
  742. package/node_modules/@remix-run/server-runtime/dist/formData.d.ts +0 -15
  743. package/node_modules/@remix-run/server-runtime/dist/formData.js +0 -60
  744. package/node_modules/@remix-run/server-runtime/dist/headers.d.ts +0 -3
  745. package/node_modules/@remix-run/server-runtime/dist/headers.js +0 -94
  746. package/node_modules/@remix-run/server-runtime/dist/index.d.ts +0 -14
  747. package/node_modules/@remix-run/server-runtime/dist/index.js +0 -50
  748. package/node_modules/@remix-run/server-runtime/dist/interface.d.ts +0 -6
  749. package/node_modules/@remix-run/server-runtime/dist/invariant.d.ts +0 -2
  750. package/node_modules/@remix-run/server-runtime/dist/invariant.js +0 -22
  751. package/node_modules/@remix-run/server-runtime/dist/jsonify.d.ts +0 -33
  752. package/node_modules/@remix-run/server-runtime/dist/links.d.ts +0 -104
  753. package/node_modules/@remix-run/server-runtime/dist/markup.d.ts +0 -1
  754. package/node_modules/@remix-run/server-runtime/dist/markup.js +0 -33
  755. package/node_modules/@remix-run/server-runtime/dist/mode.d.ts +0 -9
  756. package/node_modules/@remix-run/server-runtime/dist/mode.js +0 -29
  757. package/node_modules/@remix-run/server-runtime/dist/reexport.d.ts +0 -14
  758. package/node_modules/@remix-run/server-runtime/dist/responses.d.ts +0 -47
  759. package/node_modules/@remix-run/server-runtime/dist/responses.js +0 -135
  760. package/node_modules/@remix-run/server-runtime/dist/routeMatching.d.ts +0 -8
  761. package/node_modules/@remix-run/server-runtime/dist/routeMatching.js +0 -27
  762. package/node_modules/@remix-run/server-runtime/dist/routeModules.d.ts +0 -214
  763. package/node_modules/@remix-run/server-runtime/dist/routes.d.ts +0 -31
  764. package/node_modules/@remix-run/server-runtime/dist/routes.js +0 -86
  765. package/node_modules/@remix-run/server-runtime/dist/serialize.d.ts +0 -25
  766. package/node_modules/@remix-run/server-runtime/dist/server.d.ts +0 -5
  767. package/node_modules/@remix-run/server-runtime/dist/server.js +0 -528
  768. package/node_modules/@remix-run/server-runtime/dist/serverHandoff.d.ts +0 -12
  769. package/node_modules/@remix-run/server-runtime/dist/serverHandoff.js +0 -24
  770. package/node_modules/@remix-run/server-runtime/dist/sessions/cookieStorage.d.ts +0 -23
  771. package/node_modules/@remix-run/server-runtime/dist/sessions/cookieStorage.js +0 -55
  772. package/node_modules/@remix-run/server-runtime/dist/sessions/memoryStorage.d.ts +0 -20
  773. package/node_modules/@remix-run/server-runtime/dist/sessions/memoryStorage.js +0 -65
  774. package/node_modules/@remix-run/server-runtime/dist/sessions.d.ts +0 -143
  775. package/node_modules/@remix-run/server-runtime/dist/sessions.js +0 -152
  776. package/node_modules/@remix-run/server-runtime/dist/single-fetch.d.ts +0 -90
  777. package/node_modules/@remix-run/server-runtime/dist/single-fetch.js +0 -468
  778. package/node_modules/@remix-run/server-runtime/dist/typecheck.d.ts +0 -4
  779. package/node_modules/@remix-run/server-runtime/dist/upload/errors.d.ts +0 -5
  780. package/node_modules/@remix-run/server-runtime/dist/upload/errors.js +0 -23
  781. package/node_modules/@remix-run/server-runtime/dist/upload/memoryUploadHandler.d.ts +0 -21
  782. package/node_modules/@remix-run/server-runtime/dist/upload/memoryUploadHandler.js +0 -54
  783. package/node_modules/@remix-run/server-runtime/dist/warnings.d.ts +0 -1
  784. package/node_modules/@remix-run/server-runtime/dist/warnings.js +0 -23
  785. package/node_modules/@remix-run/server-runtime/package.json +0 -51
  786. package/node_modules/@types/cookie/LICENSE +0 -21
  787. package/node_modules/@types/cookie/README.md +0 -15
  788. package/node_modules/@types/cookie/index.d.ts +0 -154
  789. package/node_modules/@types/cookie/package.json +0 -30
  790. package/node_modules/@web3-storage/multipart-parser/README.md +0 -37
  791. package/node_modules/@web3-storage/multipart-parser/cjs/src/index.js +0 -218
  792. package/node_modules/@web3-storage/multipart-parser/cjs/src/search.js +0 -269
  793. package/node_modules/@web3-storage/multipart-parser/cjs/src/utils.js +0 -37
  794. package/node_modules/@web3-storage/multipart-parser/esm/package.json +0 -4
  795. package/node_modules/@web3-storage/multipart-parser/esm/src/index.js +0 -219
  796. package/node_modules/@web3-storage/multipart-parser/esm/src/search.js +0 -269
  797. package/node_modules/@web3-storage/multipart-parser/esm/src/utils.js +0 -28
  798. package/node_modules/@web3-storage/multipart-parser/index.js +0 -1
  799. package/node_modules/@web3-storage/multipart-parser/package.json +0 -44
  800. package/node_modules/@web3-storage/multipart-parser/src/index.js +0 -257
  801. package/node_modules/@web3-storage/multipart-parser/src/search.js +0 -329
  802. package/node_modules/@web3-storage/multipart-parser/src/utils.js +0 -43
  803. package/node_modules/@web3-storage/multipart-parser/test/test.spec.js +0 -65
  804. package/node_modules/@web3-storage/multipart-parser/tsconfig.json +0 -41
  805. package/node_modules/@web3-storage/multipart-parser/types/index.d.ts +0 -15
  806. package/node_modules/@web3-storage/multipart-parser/types/index.d.ts.map +0 -1
  807. package/node_modules/@web3-storage/multipart-parser/types/search.d.ts +0 -36
  808. package/node_modules/@web3-storage/multipart-parser/types/search.d.ts.map +0 -1
  809. package/node_modules/@web3-storage/multipart-parser/types/utils.d.ts +0 -18
  810. package/node_modules/@web3-storage/multipart-parser/types/utils.d.ts.map +0 -1
  811. package/node_modules/aria-hidden/LICENSE +0 -21
  812. package/node_modules/aria-hidden/README.md +0 -99
  813. package/node_modules/aria-hidden/dist/es2015/index.d.ts +0 -29
  814. package/node_modules/aria-hidden/dist/es2015/index.js +0 -166
  815. package/node_modules/aria-hidden/dist/es2019/index.d.ts +0 -29
  816. package/node_modules/aria-hidden/dist/es2019/index.js +0 -155
  817. package/node_modules/aria-hidden/dist/es5/index.d.ts +0 -29
  818. package/node_modules/aria-hidden/dist/es5/index.js +0 -173
  819. package/node_modules/aria-hidden/package.json +0 -70
  820. package/node_modules/assertion-error/LICENSE +0 -21
  821. package/node_modules/assertion-error/README.md +0 -68
  822. package/node_modules/assertion-error/index.d.ts +0 -27
  823. package/node_modules/assertion-error/index.js +0 -60
  824. package/node_modules/assertion-error/package.json +0 -32
  825. package/node_modules/chai/CODEOWNERS +0 -1
  826. package/node_modules/chai/CODE_OF_CONDUCT.md +0 -58
  827. package/node_modules/chai/CONTRIBUTING.md +0 -218
  828. package/node_modules/chai/History.md +0 -1059
  829. package/node_modules/chai/LICENSE +0 -21
  830. package/node_modules/chai/README.md +0 -154
  831. package/node_modules/chai/ReleaseNotes.md +0 -737
  832. package/node_modules/chai/chai.js +0 -4018
  833. package/node_modules/chai/eslint.config.js +0 -12
  834. package/node_modules/chai/index.js +0 -1
  835. package/node_modules/chai/lib/chai/assertion.js +0 -164
  836. package/node_modules/chai/lib/chai/config.js +0 -114
  837. package/node_modules/chai/lib/chai/core/assertions.js +0 -3933
  838. package/node_modules/chai/lib/chai/interface/assert.js +0 -3012
  839. package/node_modules/chai/lib/chai/interface/expect.js +0 -55
  840. package/node_modules/chai/lib/chai/interface/should.js +0 -221
  841. package/node_modules/chai/lib/chai/utils/addChainableMethod.js +0 -147
  842. package/node_modules/chai/lib/chai/utils/addLengthGuard.js +0 -60
  843. package/node_modules/chai/lib/chai/utils/addMethod.js +0 -67
  844. package/node_modules/chai/lib/chai/utils/addProperty.js +0 -71
  845. package/node_modules/chai/lib/chai/utils/compareByInspect.js +0 -26
  846. package/node_modules/chai/lib/chai/utils/expectTypes.js +0 -50
  847. package/node_modules/chai/lib/chai/utils/flag.js +0 -33
  848. package/node_modules/chai/lib/chai/utils/getActual.js +0 -20
  849. package/node_modules/chai/lib/chai/utils/getEnumerableProperties.js +0 -25
  850. package/node_modules/chai/lib/chai/utils/getMessage.js +0 -46
  851. package/node_modules/chai/lib/chai/utils/getOperator.js +0 -58
  852. package/node_modules/chai/lib/chai/utils/getOwnEnumerableProperties.js +0 -24
  853. package/node_modules/chai/lib/chai/utils/getOwnEnumerablePropertySymbols.js +0 -26
  854. package/node_modules/chai/lib/chai/utils/getProperties.js +0 -38
  855. package/node_modules/chai/lib/chai/utils/index.js +0 -107
  856. package/node_modules/chai/lib/chai/utils/inspect.js +0 -31
  857. package/node_modules/chai/lib/chai/utils/isNaN.js +0 -26
  858. package/node_modules/chai/lib/chai/utils/isProxyEnabled.js +0 -24
  859. package/node_modules/chai/lib/chai/utils/objDisplay.js +0 -46
  860. package/node_modules/chai/lib/chai/utils/overwriteChainableMethod.js +0 -68
  861. package/node_modules/chai/lib/chai/utils/overwriteMethod.js +0 -91
  862. package/node_modules/chai/lib/chai/utils/overwriteProperty.js +0 -90
  863. package/node_modules/chai/lib/chai/utils/proxify.js +0 -147
  864. package/node_modules/chai/lib/chai/utils/test.js +0 -24
  865. package/node_modules/chai/lib/chai/utils/transferFlags.js +0 -43
  866. package/node_modules/chai/lib/chai/utils/type-detect.js +0 -20
  867. package/node_modules/chai/lib/chai.js +0 -65
  868. package/node_modules/chai/package.json +0 -61
  869. package/node_modules/chai/register-assert.cjs +0 -3
  870. package/node_modules/chai/register-assert.js +0 -3
  871. package/node_modules/chai/register-expect.cjs +0 -3
  872. package/node_modules/chai/register-expect.js +0 -3
  873. package/node_modules/chai/register-should.cjs +0 -3
  874. package/node_modules/chai/register-should.js +0 -3
  875. package/node_modules/chai/web-test-runner.config.js +0 -20
  876. package/node_modules/chai-dom/.eslintrc +0 -22
  877. package/node_modules/chai-dom/.travis.yml +0 -15
  878. package/node_modules/chai-dom/LICENSE +0 -24
  879. package/node_modules/chai-dom/README.md +0 -267
  880. package/node_modules/chai-dom/bower.json +0 -31
  881. package/node_modules/chai-dom/chai-dom.js +0 -429
  882. package/node_modules/chai-dom/package.json +0 -44
  883. package/node_modules/chai-dom/test/.eslintrc +0 -12
  884. package/node_modules/chai-dom/test/index.html +0 -27
  885. package/node_modules/chai-dom/test/tests.js +0 -1124
  886. package/node_modules/chai-dom/testem.js +0 -31
  887. package/node_modules/check-error/LICENSE +0 -19
  888. package/node_modules/check-error/README.md +0 -144
  889. package/node_modules/check-error/index.js +0 -135
  890. package/node_modules/check-error/package.json +0 -66
  891. package/node_modules/clsx/clsx.d.mts +0 -6
  892. package/node_modules/clsx/clsx.d.ts +0 -10
  893. package/node_modules/clsx/dist/clsx.js +0 -1
  894. package/node_modules/clsx/dist/clsx.min.js +0 -1
  895. package/node_modules/clsx/dist/clsx.mjs +0 -1
  896. package/node_modules/clsx/dist/lite.js +0 -1
  897. package/node_modules/clsx/dist/lite.mjs +0 -1
  898. package/node_modules/clsx/license +0 -9
  899. package/node_modules/clsx/package.json +0 -60
  900. package/node_modules/clsx/readme.md +0 -154
  901. package/node_modules/cookie/HISTORY.md +0 -147
  902. package/node_modules/cookie/LICENSE +0 -24
  903. package/node_modules/cookie/README.md +0 -317
  904. package/node_modules/cookie/SECURITY.md +0 -25
  905. package/node_modules/cookie/index.js +0 -274
  906. package/node_modules/cookie/package.json +0 -44
  907. package/node_modules/deep-eql/LICENSE +0 -19
  908. package/node_modules/deep-eql/README.md +0 -93
  909. package/node_modules/deep-eql/index.js +0 -513
  910. package/node_modules/deep-eql/package.json +0 -73
  911. package/node_modules/detect-node-es/LICENSE +0 -21
  912. package/node_modules/detect-node-es/Readme.md +0 -39
  913. package/node_modules/detect-node-es/es5/browser.js +0 -2
  914. package/node_modules/detect-node-es/es5/node.d.ts +0 -4
  915. package/node_modules/detect-node-es/es5/node.js +0 -2
  916. package/node_modules/detect-node-es/esm/browser.js +0 -2
  917. package/node_modules/detect-node-es/esm/node.js +0 -2
  918. package/node_modules/detect-node-es/package.json +0 -29
  919. package/node_modules/framer-motion/LICENSE.md +0 -21
  920. package/node_modules/framer-motion/README.md +0 -105
  921. package/node_modules/framer-motion/dist/cjs/dom-entry-GDJJhIpT.js +0 -5959
  922. package/node_modules/framer-motion/dist/cjs/dom-entry.js +0 -53
  923. package/node_modules/framer-motion/dist/cjs/index.js +0 -6566
  924. package/node_modules/framer-motion/dist/dom-entry.d.ts +0 -964
  925. package/node_modules/framer-motion/dist/dom.js +0 -1
  926. package/node_modules/framer-motion/dist/es/animation/GroupPlaybackControls.mjs +0 -80
  927. package/node_modules/framer-motion/dist/es/animation/animate.mjs +0 -83
  928. package/node_modules/framer-motion/dist/es/animation/animators/AcceleratedAnimation.mjs +0 -295
  929. package/node_modules/framer-motion/dist/es/animation/animators/BaseAnimation.mjs +0 -84
  930. package/node_modules/framer-motion/dist/es/animation/animators/MainThreadAnimation.mjs +0 -382
  931. package/node_modules/framer-motion/dist/es/animation/animators/drivers/driver-frameloop.mjs +0 -17
  932. package/node_modules/framer-motion/dist/es/animation/animators/utils/can-animate.mjs +0 -40
  933. package/node_modules/framer-motion/dist/es/animation/animators/waapi/easing.mjs +0 -40
  934. package/node_modules/framer-motion/dist/es/animation/animators/waapi/index.mjs +0 -23
  935. package/node_modules/framer-motion/dist/es/animation/animators/waapi/utils/get-final-keyframe.mjs +0 -12
  936. package/node_modules/framer-motion/dist/es/animation/generators/inertia.mjs +0 -87
  937. package/node_modules/framer-motion/dist/es/animation/generators/keyframes.mjs +0 -51
  938. package/node_modules/framer-motion/dist/es/animation/generators/spring/find.mjs +0 -89
  939. package/node_modules/framer-motion/dist/es/animation/generators/spring/index.mjs +0 -131
  940. package/node_modules/framer-motion/dist/es/animation/generators/utils/calc-duration.mjs +0 -17
  941. package/node_modules/framer-motion/dist/es/animation/generators/utils/velocity.mjs +0 -9
  942. package/node_modules/framer-motion/dist/es/animation/hooks/animation-controls.mjs +0 -80
  943. package/node_modules/framer-motion/dist/es/animation/hooks/use-animate.mjs +0 -17
  944. package/node_modules/framer-motion/dist/es/animation/hooks/use-animated-state.mjs +0 -62
  945. package/node_modules/framer-motion/dist/es/animation/hooks/use-animation.mjs +0 -41
  946. package/node_modules/framer-motion/dist/es/animation/interfaces/motion-value.mjs +0 -112
  947. package/node_modules/framer-motion/dist/es/animation/interfaces/single-value.mjs +0 -11
  948. package/node_modules/framer-motion/dist/es/animation/interfaces/visual-element-target.mjs +0 -80
  949. package/node_modules/framer-motion/dist/es/animation/interfaces/visual-element-variant.mjs +0 -66
  950. package/node_modules/framer-motion/dist/es/animation/interfaces/visual-element.mjs +0 -29
  951. package/node_modules/framer-motion/dist/es/animation/optimized-appear/data-id.mjs +0 -6
  952. package/node_modules/framer-motion/dist/es/animation/optimized-appear/get-appear-id.mjs +0 -7
  953. package/node_modules/framer-motion/dist/es/animation/optimized-appear/handoff.mjs +0 -83
  954. package/node_modules/framer-motion/dist/es/animation/optimized-appear/start.mjs +0 -80
  955. package/node_modules/framer-motion/dist/es/animation/optimized-appear/store-id.mjs +0 -3
  956. package/node_modules/framer-motion/dist/es/animation/optimized-appear/store.mjs +0 -3
  957. package/node_modules/framer-motion/dist/es/animation/sequence/create.mjs +0 -230
  958. package/node_modules/framer-motion/dist/es/animation/sequence/utils/calc-time.mjs +0 -21
  959. package/node_modules/framer-motion/dist/es/animation/sequence/utils/edit.mjs +0 -31
  960. package/node_modules/framer-motion/dist/es/animation/sequence/utils/sort.mjs +0 -14
  961. package/node_modules/framer-motion/dist/es/animation/utils/create-visual-element.mjs +0 -32
  962. package/node_modules/framer-motion/dist/es/animation/utils/default-transitions.mjs +0 -40
  963. package/node_modules/framer-motion/dist/es/animation/utils/is-animatable.mjs +0 -30
  964. package/node_modules/framer-motion/dist/es/animation/utils/is-animation-controls.mjs +0 -7
  965. package/node_modules/framer-motion/dist/es/animation/utils/is-dom-keyframes.mjs +0 -5
  966. package/node_modules/framer-motion/dist/es/animation/utils/is-keyframes-target.mjs +0 -5
  967. package/node_modules/framer-motion/dist/es/animation/utils/is-none.mjs +0 -15
  968. package/node_modules/framer-motion/dist/es/animation/utils/stagger.mjs +0 -26
  969. package/node_modules/framer-motion/dist/es/animation/utils/transitions.mjs +0 -15
  970. package/node_modules/framer-motion/dist/es/components/AnimatePresence/PopChild.mjs +0 -76
  971. package/node_modules/framer-motion/dist/es/components/AnimatePresence/PresenceChild.mjs +0 -57
  972. package/node_modules/framer-motion/dist/es/components/AnimatePresence/index.mjs +0 -169
  973. package/node_modules/framer-motion/dist/es/components/AnimatePresence/use-presence.mjs +0 -66
  974. package/node_modules/framer-motion/dist/es/components/AnimateSharedLayout.mjs +0 -15
  975. package/node_modules/framer-motion/dist/es/components/LayoutGroup/index.mjs +0 -31
  976. package/node_modules/framer-motion/dist/es/components/LazyMotion/index.mjs +0 -67
  977. package/node_modules/framer-motion/dist/es/components/MotionConfig/index.mjs +0 -43
  978. package/node_modules/framer-motion/dist/es/components/Reorder/Group.mjs +0 -52
  979. package/node_modules/framer-motion/dist/es/components/Reorder/Item.mjs +0 -33
  980. package/node_modules/framer-motion/dist/es/components/Reorder/index.mjs +0 -9
  981. package/node_modules/framer-motion/dist/es/components/Reorder/utils/check-reorder.mjs +0 -24
  982. package/node_modules/framer-motion/dist/es/context/DeprecatedLayoutGroupContext.mjs +0 -10
  983. package/node_modules/framer-motion/dist/es/context/LayoutGroupContext.mjs +0 -5
  984. package/node_modules/framer-motion/dist/es/context/LazyContext.mjs +0 -5
  985. package/node_modules/framer-motion/dist/es/context/MotionConfigContext.mjs +0 -12
  986. package/node_modules/framer-motion/dist/es/context/MotionContext/create.mjs +0 -13
  987. package/node_modules/framer-motion/dist/es/context/MotionContext/index.mjs +0 -5
  988. package/node_modules/framer-motion/dist/es/context/MotionContext/utils.mjs +0 -17
  989. package/node_modules/framer-motion/dist/es/context/PresenceContext.mjs +0 -8
  990. package/node_modules/framer-motion/dist/es/context/ReorderContext.mjs +0 -5
  991. package/node_modules/framer-motion/dist/es/context/SwitchLayoutGroupContext.mjs +0 -8
  992. package/node_modules/framer-motion/dist/es/debug/record.mjs +0 -7
  993. package/node_modules/framer-motion/dist/es/dom-entry.mjs +0 -25
  994. package/node_modules/framer-motion/dist/es/easing/anticipate.mjs +0 -5
  995. package/node_modules/framer-motion/dist/es/easing/back.mjs +0 -9
  996. package/node_modules/framer-motion/dist/es/easing/circ.mjs +0 -8
  997. package/node_modules/framer-motion/dist/es/easing/cubic-bezier.mjs +0 -51
  998. package/node_modules/framer-motion/dist/es/easing/ease.mjs +0 -7
  999. package/node_modules/framer-motion/dist/es/easing/modifiers/mirror.mjs +0 -5
  1000. package/node_modules/framer-motion/dist/es/easing/modifiers/reverse.mjs +0 -5
  1001. package/node_modules/framer-motion/dist/es/easing/utils/create-generator-easing.mjs +0 -18
  1002. package/node_modules/framer-motion/dist/es/easing/utils/get-easing-for-segment.mjs +0 -8
  1003. package/node_modules/framer-motion/dist/es/easing/utils/is-bezier-definition.mjs +0 -3
  1004. package/node_modules/framer-motion/dist/es/easing/utils/is-easing-array.mjs +0 -5
  1005. package/node_modules/framer-motion/dist/es/easing/utils/map.mjs +0 -37
  1006. package/node_modules/framer-motion/dist/es/events/add-dom-event.mjs +0 -6
  1007. package/node_modules/framer-motion/dist/es/events/add-pointer-event.mjs +0 -8
  1008. package/node_modules/framer-motion/dist/es/events/event-info.mjs +0 -15
  1009. package/node_modules/framer-motion/dist/es/events/use-dom-event.mjs +0 -34
  1010. package/node_modules/framer-motion/dist/es/events/utils/is-primary-pointer.mjs +0 -18
  1011. package/node_modules/framer-motion/dist/es/frameloop/batcher.mjs +0 -65
  1012. package/node_modules/framer-motion/dist/es/frameloop/frame.mjs +0 -6
  1013. package/node_modules/framer-motion/dist/es/frameloop/index-legacy.mjs +0 -20
  1014. package/node_modules/framer-motion/dist/es/frameloop/microtask.mjs +0 -5
  1015. package/node_modules/framer-motion/dist/es/frameloop/render-step.mjs +0 -104
  1016. package/node_modules/framer-motion/dist/es/frameloop/sync-time.mjs +0 -31
  1017. package/node_modules/framer-motion/dist/es/gestures/drag/VisualElementDragControls.mjs +0 -484
  1018. package/node_modules/framer-motion/dist/es/gestures/drag/index.mjs +0 -27
  1019. package/node_modules/framer-motion/dist/es/gestures/drag/use-drag-controls.mjs +0 -88
  1020. package/node_modules/framer-motion/dist/es/gestures/drag/utils/constraints.mjs +0 -129
  1021. package/node_modules/framer-motion/dist/es/gestures/drag/utils/lock.mjs +0 -53
  1022. package/node_modules/framer-motion/dist/es/gestures/focus.mjs +0 -41
  1023. package/node_modules/framer-motion/dist/es/gestures/hover.mjs +0 -33
  1024. package/node_modules/framer-motion/dist/es/gestures/pan/PanSession.mjs +0 -156
  1025. package/node_modules/framer-motion/dist/es/gestures/pan/index.mjs +0 -50
  1026. package/node_modules/framer-motion/dist/es/gestures/press.mjs +0 -130
  1027. package/node_modules/framer-motion/dist/es/gestures/utils/is-node-or-child.mjs +0 -20
  1028. package/node_modules/framer-motion/dist/es/index.mjs +0 -101
  1029. package/node_modules/framer-motion/dist/es/motion/features/Feature.mjs +0 -9
  1030. package/node_modules/framer-motion/dist/es/motion/features/animation/exit.mjs +0 -31
  1031. package/node_modules/framer-motion/dist/es/motion/features/animation/index.mjs +0 -41
  1032. package/node_modules/framer-motion/dist/es/motion/features/animations.mjs +0 -13
  1033. package/node_modules/framer-motion/dist/es/motion/features/definitions.mjs +0 -28
  1034. package/node_modules/framer-motion/dist/es/motion/features/drag.mjs +0 -17
  1035. package/node_modules/framer-motion/dist/es/motion/features/gestures.mjs +0 -21
  1036. package/node_modules/framer-motion/dist/es/motion/features/layout/MeasureLayout.mjs +0 -133
  1037. package/node_modules/framer-motion/dist/es/motion/features/layout.mjs +0 -11
  1038. package/node_modules/framer-motion/dist/es/motion/features/load-features.mjs +0 -12
  1039. package/node_modules/framer-motion/dist/es/motion/features/viewport/index.mjs +0 -72
  1040. package/node_modules/framer-motion/dist/es/motion/features/viewport/observers.mjs +0 -49
  1041. package/node_modules/framer-motion/dist/es/motion/index.mjs +0 -97
  1042. package/node_modules/framer-motion/dist/es/motion/utils/is-forced-motion-value.mjs +0 -11
  1043. package/node_modules/framer-motion/dist/es/motion/utils/is-motion-component.mjs +0 -12
  1044. package/node_modules/framer-motion/dist/es/motion/utils/symbol.mjs +0 -3
  1045. package/node_modules/framer-motion/dist/es/motion/utils/unwrap-motion-component.mjs +0 -17
  1046. package/node_modules/framer-motion/dist/es/motion/utils/use-motion-ref.mjs +0 -36
  1047. package/node_modules/framer-motion/dist/es/motion/utils/use-visual-element.mjs +0 -127
  1048. package/node_modules/framer-motion/dist/es/motion/utils/use-visual-state.mjs +0 -81
  1049. package/node_modules/framer-motion/dist/es/motion/utils/valid-prop.mjs +0 -57
  1050. package/node_modules/framer-motion/dist/es/projection/animation/mix-values.mjs +0 -93
  1051. package/node_modules/framer-motion/dist/es/projection/geometry/conversion.mjs +0 -33
  1052. package/node_modules/framer-motion/dist/es/projection/geometry/copy.mjs +0 -20
  1053. package/node_modules/framer-motion/dist/es/projection/geometry/delta-apply.mjs +0 -122
  1054. package/node_modules/framer-motion/dist/es/projection/geometry/delta-calc.mjs +0 -41
  1055. package/node_modules/framer-motion/dist/es/projection/geometry/delta-remove.mjs +0 -54
  1056. package/node_modules/framer-motion/dist/es/projection/geometry/models.mjs +0 -17
  1057. package/node_modules/framer-motion/dist/es/projection/geometry/utils.mjs +0 -25
  1058. package/node_modules/framer-motion/dist/es/projection/node/DocumentProjectionNode.mjs +0 -13
  1059. package/node_modules/framer-motion/dist/es/projection/node/HTMLProjectionNode.mjs +0 -27
  1060. package/node_modules/framer-motion/dist/es/projection/node/create-projection-node.mjs +0 -1562
  1061. package/node_modules/framer-motion/dist/es/projection/node/group.mjs +0 -24
  1062. package/node_modules/framer-motion/dist/es/projection/node/state.mjs +0 -19
  1063. package/node_modules/framer-motion/dist/es/projection/shared/stack.mjs +0 -112
  1064. package/node_modules/framer-motion/dist/es/projection/styles/scale-border-radius.mjs +0 -41
  1065. package/node_modules/framer-motion/dist/es/projection/styles/scale-box-shadow.mjs +0 -35
  1066. package/node_modules/framer-motion/dist/es/projection/styles/scale-correction.mjs +0 -6
  1067. package/node_modules/framer-motion/dist/es/projection/styles/transform.mjs +0 -49
  1068. package/node_modules/framer-motion/dist/es/projection/use-instant-layout-transition.mjs +0 -14
  1069. package/node_modules/framer-motion/dist/es/projection/use-reset-projection.mjs +0 -14
  1070. package/node_modules/framer-motion/dist/es/projection/utils/each-axis.mjs +0 -5
  1071. package/node_modules/framer-motion/dist/es/projection/utils/has-transform.mjs +0 -26
  1072. package/node_modules/framer-motion/dist/es/projection/utils/measure.mjs +0 -17
  1073. package/node_modules/framer-motion/dist/es/projection-entry.mjs +0 -11
  1074. package/node_modules/framer-motion/dist/es/render/VisualElement.mjs +0 -496
  1075. package/node_modules/framer-motion/dist/es/render/dom/DOMKeyframesResolver.mjs +0 -130
  1076. package/node_modules/framer-motion/dist/es/render/dom/DOMVisualElement.mjs +0 -28
  1077. package/node_modules/framer-motion/dist/es/render/dom/create-visual-element.mjs +0 -15
  1078. package/node_modules/framer-motion/dist/es/render/dom/features-animation.mjs +0 -14
  1079. package/node_modules/framer-motion/dist/es/render/dom/features-max.mjs +0 -14
  1080. package/node_modules/framer-motion/dist/es/render/dom/motion-minimal.mjs +0 -9
  1081. package/node_modules/framer-motion/dist/es/render/dom/motion-proxy.mjs +0 -47
  1082. package/node_modules/framer-motion/dist/es/render/dom/motion.mjs +0 -42
  1083. package/node_modules/framer-motion/dist/es/render/dom/resize/handle-element.mjs +0 -64
  1084. package/node_modules/framer-motion/dist/es/render/dom/resize/handle-window.mjs +0 -30
  1085. package/node_modules/framer-motion/dist/es/render/dom/resize/index.mjs +0 -8
  1086. package/node_modules/framer-motion/dist/es/render/dom/scroll/index.mjs +0 -36
  1087. package/node_modules/framer-motion/dist/es/render/dom/scroll/info.mjs +0 -56
  1088. package/node_modules/framer-motion/dist/es/render/dom/scroll/observe.mjs +0 -18
  1089. package/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/edge.mjs +0 -45
  1090. package/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/index.mjs +0 -59
  1091. package/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/inset.mjs +0 -45
  1092. package/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/offset.mjs +0 -35
  1093. package/node_modules/framer-motion/dist/es/render/dom/scroll/offsets/presets.mjs +0 -20
  1094. package/node_modules/framer-motion/dist/es/render/dom/scroll/on-scroll-handler.mjs +0 -48
  1095. package/node_modules/framer-motion/dist/es/render/dom/scroll/supports.mjs +0 -5
  1096. package/node_modules/framer-motion/dist/es/render/dom/scroll/track.mjs +0 -84
  1097. package/node_modules/framer-motion/dist/es/render/dom/use-render.mjs +0 -33
  1098. package/node_modules/framer-motion/dist/es/render/dom/utils/camel-to-dash.mjs +0 -6
  1099. package/node_modules/framer-motion/dist/es/render/dom/utils/create-config.mjs +0 -19
  1100. package/node_modules/framer-motion/dist/es/render/dom/utils/css-variables-conversion.mjs +0 -42
  1101. package/node_modules/framer-motion/dist/es/render/dom/utils/filter-props.mjs +0 -59
  1102. package/node_modules/framer-motion/dist/es/render/dom/utils/is-css-variable.mjs +0 -13
  1103. package/node_modules/framer-motion/dist/es/render/dom/utils/is-svg-component.mjs +0 -30
  1104. package/node_modules/framer-motion/dist/es/render/dom/utils/is-svg-element.mjs +0 -5
  1105. package/node_modules/framer-motion/dist/es/render/dom/utils/resolve-element.mjs +0 -28
  1106. package/node_modules/framer-motion/dist/es/render/dom/utils/unit-conversion.mjs +0 -65
  1107. package/node_modules/framer-motion/dist/es/render/dom/value-types/animatable-none.mjs +0 -15
  1108. package/node_modules/framer-motion/dist/es/render/dom/value-types/defaults.mjs +0 -30
  1109. package/node_modules/framer-motion/dist/es/render/dom/value-types/dimensions.mjs +0 -15
  1110. package/node_modules/framer-motion/dist/es/render/dom/value-types/find.mjs +0 -15
  1111. package/node_modules/framer-motion/dist/es/render/dom/value-types/get-as-type.mjs +0 -10
  1112. package/node_modules/framer-motion/dist/es/render/dom/value-types/number.mjs +0 -74
  1113. package/node_modules/framer-motion/dist/es/render/dom/value-types/test.mjs +0 -6
  1114. package/node_modules/framer-motion/dist/es/render/dom/value-types/type-auto.mjs +0 -9
  1115. package/node_modules/framer-motion/dist/es/render/dom/value-types/type-int.mjs +0 -8
  1116. package/node_modules/framer-motion/dist/es/render/dom/viewport/index.mjs +0 -43
  1117. package/node_modules/framer-motion/dist/es/render/html/HTMLVisualElement.mjs +0 -59
  1118. package/node_modules/framer-motion/dist/es/render/html/config-motion.mjs +0 -12
  1119. package/node_modules/framer-motion/dist/es/render/html/use-props.mjs +0 -57
  1120. package/node_modules/framer-motion/dist/es/render/html/utils/build-styles.mjs +0 -74
  1121. package/node_modules/framer-motion/dist/es/render/html/utils/build-transform.mjs +0 -45
  1122. package/node_modules/framer-motion/dist/es/render/html/utils/create-render-state.mjs +0 -8
  1123. package/node_modules/framer-motion/dist/es/render/html/utils/make-none-animatable.mjs +0 -30
  1124. package/node_modules/framer-motion/dist/es/render/html/utils/render.mjs +0 -9
  1125. package/node_modules/framer-motion/dist/es/render/html/utils/scrape-motion-values.mjs +0 -20
  1126. package/node_modules/framer-motion/dist/es/render/html/utils/transform.mjs +0 -28
  1127. package/node_modules/framer-motion/dist/es/render/store.mjs +0 -3
  1128. package/node_modules/framer-motion/dist/es/render/svg/SVGVisualElement.mjs +0 -47
  1129. package/node_modules/framer-motion/dist/es/render/svg/config-motion.mjs +0 -40
  1130. package/node_modules/framer-motion/dist/es/render/svg/lowercase-elements.mjs +0 -33
  1131. package/node_modules/framer-motion/dist/es/render/svg/use-props.mjs +0 -24
  1132. package/node_modules/framer-motion/dist/es/render/svg/utils/build-attrs.mjs +0 -52
  1133. package/node_modules/framer-motion/dist/es/render/svg/utils/camel-case-attrs.mjs +0 -30
  1134. package/node_modules/framer-motion/dist/es/render/svg/utils/create-render-state.mjs +0 -8
  1135. package/node_modules/framer-motion/dist/es/render/svg/utils/is-svg-tag.mjs +0 -3
  1136. package/node_modules/framer-motion/dist/es/render/svg/utils/path.mjs +0 -32
  1137. package/node_modules/framer-motion/dist/es/render/svg/utils/render.mjs +0 -12
  1138. package/node_modules/framer-motion/dist/es/render/svg/utils/scrape-motion-values.mjs +0 -19
  1139. package/node_modules/framer-motion/dist/es/render/svg/utils/transform-origin.mjs +0 -18
  1140. package/node_modules/framer-motion/dist/es/render/utils/KeyframesResolver.mjs +0 -164
  1141. package/node_modules/framer-motion/dist/es/render/utils/animation-state.mjs +0 -328
  1142. package/node_modules/framer-motion/dist/es/render/utils/compare-by-depth.mjs +0 -3
  1143. package/node_modules/framer-motion/dist/es/render/utils/flat-tree.mjs +0 -24
  1144. package/node_modules/framer-motion/dist/es/render/utils/is-controlling-variants.mjs +0 -13
  1145. package/node_modules/framer-motion/dist/es/render/utils/is-variant-label.mjs +0 -8
  1146. package/node_modules/framer-motion/dist/es/render/utils/motion-values.mjs +0 -67
  1147. package/node_modules/framer-motion/dist/es/render/utils/resolve-dynamic-variants.mjs +0 -8
  1148. package/node_modules/framer-motion/dist/es/render/utils/resolve-variants.mjs +0 -36
  1149. package/node_modules/framer-motion/dist/es/render/utils/setters.mjs +0 -27
  1150. package/node_modules/framer-motion/dist/es/render/utils/variant-props.mjs +0 -12
  1151. package/node_modules/framer-motion/dist/es/utils/GlobalConfig.mjs +0 -6
  1152. package/node_modules/framer-motion/dist/es/utils/array.mjs +0 -21
  1153. package/node_modules/framer-motion/dist/es/utils/clamp.mjs +0 -9
  1154. package/node_modules/framer-motion/dist/es/utils/delay.mjs +0 -20
  1155. package/node_modules/framer-motion/dist/es/utils/distance.mjs +0 -9
  1156. package/node_modules/framer-motion/dist/es/utils/errors.mjs +0 -18
  1157. package/node_modules/framer-motion/dist/es/utils/get-context-window.mjs +0 -6
  1158. package/node_modules/framer-motion/dist/es/utils/hsla-to-rgba.mjs +0 -42
  1159. package/node_modules/framer-motion/dist/es/utils/interpolate.mjs +0 -75
  1160. package/node_modules/framer-motion/dist/es/utils/is-browser.mjs +0 -3
  1161. package/node_modules/framer-motion/dist/es/utils/is-numerical-string.mjs +0 -6
  1162. package/node_modules/framer-motion/dist/es/utils/is-ref-object.mjs +0 -7
  1163. package/node_modules/framer-motion/dist/es/utils/is-zero-value-string.mjs +0 -6
  1164. package/node_modules/framer-motion/dist/es/utils/memo.mjs +0 -10
  1165. package/node_modules/framer-motion/dist/es/utils/mix/color.mjs +0 -47
  1166. package/node_modules/framer-motion/dist/es/utils/mix/complex.mjs +0 -94
  1167. package/node_modules/framer-motion/dist/es/utils/mix/immediate.mjs +0 -5
  1168. package/node_modules/framer-motion/dist/es/utils/mix/index.mjs +0 -14
  1169. package/node_modules/framer-motion/dist/es/utils/mix/number.mjs +0 -26
  1170. package/node_modules/framer-motion/dist/es/utils/mix/visibility.mjs +0 -16
  1171. package/node_modules/framer-motion/dist/es/utils/noop.mjs +0 -3
  1172. package/node_modules/framer-motion/dist/es/utils/offsets/default.mjs +0 -9
  1173. package/node_modules/framer-motion/dist/es/utils/offsets/fill.mjs +0 -12
  1174. package/node_modules/framer-motion/dist/es/utils/offsets/time.mjs +0 -5
  1175. package/node_modules/framer-motion/dist/es/utils/pipe.mjs +0 -11
  1176. package/node_modules/framer-motion/dist/es/utils/progress.mjs +0 -18
  1177. package/node_modules/framer-motion/dist/es/utils/reduced-motion/index.mjs +0 -19
  1178. package/node_modules/framer-motion/dist/es/utils/reduced-motion/state.mjs +0 -5
  1179. package/node_modules/framer-motion/dist/es/utils/reduced-motion/use-reduced-motion-config.mjs +0 -19
  1180. package/node_modules/framer-motion/dist/es/utils/reduced-motion/use-reduced-motion.mjs +0 -47
  1181. package/node_modules/framer-motion/dist/es/utils/resolve-value.mjs +0 -11
  1182. package/node_modules/framer-motion/dist/es/utils/shallow-compare.mjs +0 -14
  1183. package/node_modules/framer-motion/dist/es/utils/subscription-manager.mjs +0 -40
  1184. package/node_modules/framer-motion/dist/es/utils/time-conversion.mjs +0 -10
  1185. package/node_modules/framer-motion/dist/es/utils/transform.mjs +0 -21
  1186. package/node_modules/framer-motion/dist/es/utils/use-animation-frame.mjs +0 -21
  1187. package/node_modules/framer-motion/dist/es/utils/use-constant.mjs +0 -18
  1188. package/node_modules/framer-motion/dist/es/utils/use-cycle.mjs +0 -47
  1189. package/node_modules/framer-motion/dist/es/utils/use-force-update.mjs +0 -19
  1190. package/node_modules/framer-motion/dist/es/utils/use-in-view.mjs +0 -23
  1191. package/node_modules/framer-motion/dist/es/utils/use-instant-transition-state.mjs +0 -5
  1192. package/node_modules/framer-motion/dist/es/utils/use-instant-transition.mjs +0 -41
  1193. package/node_modules/framer-motion/dist/es/utils/use-is-mounted.mjs +0 -15
  1194. package/node_modules/framer-motion/dist/es/utils/use-isomorphic-effect.mjs +0 -6
  1195. package/node_modules/framer-motion/dist/es/utils/use-motion-value-event.mjs +0 -13
  1196. package/node_modules/framer-motion/dist/es/utils/use-unmount-effect.mjs +0 -7
  1197. package/node_modules/framer-motion/dist/es/utils/velocity-per-second.mjs +0 -11
  1198. package/node_modules/framer-motion/dist/es/utils/warn-once.mjs +0 -11
  1199. package/node_modules/framer-motion/dist/es/utils/wrap.mjs +0 -6
  1200. package/node_modules/framer-motion/dist/es/value/index.mjs +0 -319
  1201. package/node_modules/framer-motion/dist/es/value/scroll/use-element-scroll.mjs +0 -14
  1202. package/node_modules/framer-motion/dist/es/value/scroll/use-viewport-scroll.mjs +0 -14
  1203. package/node_modules/framer-motion/dist/es/value/types/color/hex.mjs +0 -40
  1204. package/node_modules/framer-motion/dist/es/value/types/color/hsla.mjs +0 -22
  1205. package/node_modules/framer-motion/dist/es/value/types/color/index.mjs +0 -28
  1206. package/node_modules/framer-motion/dist/es/value/types/color/rgba.mjs +0 -25
  1207. package/node_modules/framer-motion/dist/es/value/types/color/utils.mjs +0 -23
  1208. package/node_modules/framer-motion/dist/es/value/types/complex/filter.mjs +0 -30
  1209. package/node_modules/framer-motion/dist/es/value/types/complex/index.mjs +0 -90
  1210. package/node_modules/framer-motion/dist/es/value/types/numbers/index.mjs +0 -17
  1211. package/node_modules/framer-motion/dist/es/value/types/numbers/units.mjs +0 -19
  1212. package/node_modules/framer-motion/dist/es/value/types/utils.mjs +0 -15
  1213. package/node_modules/framer-motion/dist/es/value/use-combine-values.mjs +0 -37
  1214. package/node_modules/framer-motion/dist/es/value/use-computed.mjs +0 -19
  1215. package/node_modules/framer-motion/dist/es/value/use-inverted-scale.mjs +0 -52
  1216. package/node_modules/framer-motion/dist/es/value/use-motion-template.mjs +0 -45
  1217. package/node_modules/framer-motion/dist/es/value/use-motion-value.mjs +0 -38
  1218. package/node_modules/framer-motion/dist/es/value/use-scroll.mjs +0 -39
  1219. package/node_modules/framer-motion/dist/es/value/use-spring.mjs +0 -80
  1220. package/node_modules/framer-motion/dist/es/value/use-time.mjs +0 -10
  1221. package/node_modules/framer-motion/dist/es/value/use-transform.mjs +0 -29
  1222. package/node_modules/framer-motion/dist/es/value/use-velocity.mjs +0 -35
  1223. package/node_modules/framer-motion/dist/es/value/use-will-change/index.mjs +0 -50
  1224. package/node_modules/framer-motion/dist/es/value/use-will-change/is.mjs +0 -7
  1225. package/node_modules/framer-motion/dist/es/value/utils/is-motion-value.mjs +0 -3
  1226. package/node_modules/framer-motion/dist/es/value/utils/resolve-motion-value.mjs +0 -16
  1227. package/node_modules/framer-motion/dist/framer-motion.dev.js +0 -12433
  1228. package/node_modules/framer-motion/dist/framer-motion.js +0 -1
  1229. package/node_modules/framer-motion/dist/index.d.ts +0 -5278
  1230. package/node_modules/framer-motion/dist/three-entry.d.ts +0 -2954
  1231. package/node_modules/framer-motion/dom/README.md +0 -1
  1232. package/node_modules/framer-motion/dom/package.json +0 -6
  1233. package/node_modules/framer-motion/package.json +0 -108
  1234. package/node_modules/get-func-name/LICENSE +0 -19
  1235. package/node_modules/get-func-name/README.md +0 -123
  1236. package/node_modules/get-func-name/get-func-name.js +0 -1
  1237. package/node_modules/get-func-name/index.js +0 -52
  1238. package/node_modules/get-func-name/package.json +0 -85
  1239. package/node_modules/get-nonce/LICENSE +0 -21
  1240. package/node_modules/get-nonce/README.md +0 -54
  1241. package/node_modules/get-nonce/dist/es2015/index.d.ts +0 -2
  1242. package/node_modules/get-nonce/dist/es2015/index.js +0 -13
  1243. package/node_modules/get-nonce/dist/es5/index.d.ts +0 -2
  1244. package/node_modules/get-nonce/dist/es5/index.js +0 -15
  1245. package/node_modules/get-nonce/package.json +0 -68
  1246. package/node_modules/invariant/LICENSE +0 -21
  1247. package/node_modules/invariant/README.md +0 -37
  1248. package/node_modules/invariant/browser.js +0 -49
  1249. package/node_modules/invariant/invariant.js +0 -51
  1250. package/node_modules/invariant/invariant.js.flow +0 -7
  1251. package/node_modules/invariant/package.json +0 -35
  1252. package/node_modules/js-tokens/LICENSE +0 -21
  1253. package/node_modules/js-tokens/README.md +0 -240
  1254. package/node_modules/js-tokens/index.js +0 -23
  1255. package/node_modules/js-tokens/package.json +0 -30
  1256. package/node_modules/loose-envify/LICENSE +0 -21
  1257. package/node_modules/loose-envify/README.md +0 -45
  1258. package/node_modules/loose-envify/cli.js +0 -16
  1259. package/node_modules/loose-envify/custom.js +0 -4
  1260. package/node_modules/loose-envify/index.js +0 -3
  1261. package/node_modules/loose-envify/loose-envify.js +0 -36
  1262. package/node_modules/loose-envify/package.json +0 -36
  1263. package/node_modules/loose-envify/replace.js +0 -65
  1264. package/node_modules/loupe/LICENSE +0 -9
  1265. package/node_modules/loupe/README.md +0 -63
  1266. package/node_modules/loupe/lib/arguments.d.ts +0 -3
  1267. package/node_modules/loupe/lib/arguments.d.ts.map +0 -1
  1268. package/node_modules/loupe/lib/arguments.js +0 -7
  1269. package/node_modules/loupe/lib/array.d.ts +0 -3
  1270. package/node_modules/loupe/lib/array.d.ts.map +0 -1
  1271. package/node_modules/loupe/lib/array.js +0 -16
  1272. package/node_modules/loupe/lib/bigint.d.ts +0 -3
  1273. package/node_modules/loupe/lib/bigint.d.ts.map +0 -1
  1274. package/node_modules/loupe/lib/bigint.js +0 -7
  1275. package/node_modules/loupe/lib/class.d.ts +0 -5
  1276. package/node_modules/loupe/lib/class.d.ts.map +0 -1
  1277. package/node_modules/loupe/lib/class.js +0 -15
  1278. package/node_modules/loupe/lib/date.d.ts +0 -3
  1279. package/node_modules/loupe/lib/date.d.ts.map +0 -1
  1280. package/node_modules/loupe/lib/date.js +0 -11
  1281. package/node_modules/loupe/lib/error.d.ts +0 -3
  1282. package/node_modules/loupe/lib/error.d.ts.map +0 -1
  1283. package/node_modules/loupe/lib/error.js +0 -29
  1284. package/node_modules/loupe/lib/function.d.ts +0 -7
  1285. package/node_modules/loupe/lib/function.d.ts.map +0 -1
  1286. package/node_modules/loupe/lib/function.js +0 -9
  1287. package/node_modules/loupe/lib/helpers.d.ts +0 -7
  1288. package/node_modules/loupe/lib/helpers.d.ts.map +0 -1
  1289. package/node_modules/loupe/lib/helpers.js +0 -159
  1290. package/node_modules/loupe/lib/html.d.ts +0 -5
  1291. package/node_modules/loupe/lib/html.d.ts.map +0 -1
  1292. package/node_modules/loupe/lib/html.js +0 -34
  1293. package/node_modules/loupe/lib/index.d.ts +0 -7
  1294. package/node_modules/loupe/lib/index.d.ts.map +0 -1
  1295. package/node_modules/loupe/lib/index.js +0 -161
  1296. package/node_modules/loupe/lib/map.d.ts +0 -3
  1297. package/node_modules/loupe/lib/map.d.ts.map +0 -1
  1298. package/node_modules/loupe/lib/map.js +0 -24
  1299. package/node_modules/loupe/lib/number.d.ts +0 -3
  1300. package/node_modules/loupe/lib/number.d.ts.map +0 -1
  1301. package/node_modules/loupe/lib/number.js +0 -17
  1302. package/node_modules/loupe/lib/object.d.ts +0 -3
  1303. package/node_modules/loupe/lib/object.d.ts.map +0 -1
  1304. package/node_modules/loupe/lib/object.js +0 -22
  1305. package/node_modules/loupe/lib/promise.d.ts +0 -5
  1306. package/node_modules/loupe/lib/promise.d.ts.map +0 -1
  1307. package/node_modules/loupe/lib/promise.js +0 -18
  1308. package/node_modules/loupe/lib/regexp.d.ts +0 -3
  1309. package/node_modules/loupe/lib/regexp.d.ts.map +0 -1
  1310. package/node_modules/loupe/lib/regexp.js +0 -7
  1311. package/node_modules/loupe/lib/set.d.ts +0 -3
  1312. package/node_modules/loupe/lib/set.d.ts.map +0 -1
  1313. package/node_modules/loupe/lib/set.js +0 -15
  1314. package/node_modules/loupe/lib/string.d.ts +0 -3
  1315. package/node_modules/loupe/lib/string.d.ts.map +0 -1
  1316. package/node_modules/loupe/lib/string.js +0 -24
  1317. package/node_modules/loupe/lib/symbol.d.ts +0 -2
  1318. package/node_modules/loupe/lib/symbol.d.ts.map +0 -1
  1319. package/node_modules/loupe/lib/symbol.js +0 -6
  1320. package/node_modules/loupe/lib/typedarray.d.ts +0 -5
  1321. package/node_modules/loupe/lib/typedarray.d.ts.map +0 -1
  1322. package/node_modules/loupe/lib/typedarray.js +0 -38
  1323. package/node_modules/loupe/lib/types.d.ts +0 -15
  1324. package/node_modules/loupe/lib/types.d.ts.map +0 -1
  1325. package/node_modules/loupe/lib/types.js +0 -1
  1326. package/node_modules/loupe/loupe.js +0 -644
  1327. package/node_modules/loupe/package.json +0 -126
  1328. package/node_modules/pathval/LICENSE +0 -16
  1329. package/node_modules/pathval/README.md +0 -147
  1330. package/node_modules/pathval/index.js +0 -292
  1331. package/node_modules/pathval/package.json +0 -73
  1332. package/node_modules/pathval/pathval.js +0 -1
  1333. package/node_modules/react-remove-scroll/LICENSE +0 -21
  1334. package/node_modules/react-remove-scroll/README.md +0 -152
  1335. package/node_modules/react-remove-scroll/UI/UI.d.ts +0 -1
  1336. package/node_modules/react-remove-scroll/UI/package.json +0 -8
  1337. package/node_modules/react-remove-scroll/dist/es2015/Combination.d.ts +0 -3
  1338. package/node_modules/react-remove-scroll/dist/es2015/Combination.js +0 -7
  1339. package/node_modules/react-remove-scroll/dist/es2015/SideEffect.d.ts +0 -5
  1340. package/node_modules/react-remove-scroll/dist/es2015/SideEffect.js +0 -157
  1341. package/node_modules/react-remove-scroll/dist/es2015/UI.d.ts +0 -7
  1342. package/node_modules/react-remove-scroll/dist/es2015/UI.js +0 -36
  1343. package/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.d.ts +0 -3
  1344. package/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js +0 -19
  1345. package/node_modules/react-remove-scroll/dist/es2015/handleScroll.d.ts +0 -3
  1346. package/node_modules/react-remove-scroll/dist/es2015/handleScroll.js +0 -104
  1347. package/node_modules/react-remove-scroll/dist/es2015/index.d.ts +0 -2
  1348. package/node_modules/react-remove-scroll/dist/es2015/index.js +0 -2
  1349. package/node_modules/react-remove-scroll/dist/es2015/medium.d.ts +0 -2
  1350. package/node_modules/react-remove-scroll/dist/es2015/medium.js +0 -2
  1351. package/node_modules/react-remove-scroll/dist/es2015/pinchAndZoom.d.ts +0 -8
  1352. package/node_modules/react-remove-scroll/dist/es2015/pinchAndZoom.js +0 -33
  1353. package/node_modules/react-remove-scroll/dist/es2015/sidecar.d.ts +0 -2
  1354. package/node_modules/react-remove-scroll/dist/es2015/sidecar.js +0 -4
  1355. package/node_modules/react-remove-scroll/dist/es2015/types.d.ts +0 -98
  1356. package/node_modules/react-remove-scroll/dist/es2015/types.js +0 -1
  1357. package/node_modules/react-remove-scroll/dist/es2019/Combination.d.ts +0 -3
  1358. package/node_modules/react-remove-scroll/dist/es2019/Combination.js +0 -6
  1359. package/node_modules/react-remove-scroll/dist/es2019/SideEffect.d.ts +0 -5
  1360. package/node_modules/react-remove-scroll/dist/es2019/SideEffect.js +0 -155
  1361. package/node_modules/react-remove-scroll/dist/es2019/UI.d.ts +0 -7
  1362. package/node_modules/react-remove-scroll/dist/es2019/UI.js +0 -41
  1363. package/node_modules/react-remove-scroll/dist/es2019/aggresiveCapture.d.ts +0 -3
  1364. package/node_modules/react-remove-scroll/dist/es2019/aggresiveCapture.js +0 -19
  1365. package/node_modules/react-remove-scroll/dist/es2019/handleScroll.d.ts +0 -3
  1366. package/node_modules/react-remove-scroll/dist/es2019/handleScroll.js +0 -92
  1367. package/node_modules/react-remove-scroll/dist/es2019/index.d.ts +0 -2
  1368. package/node_modules/react-remove-scroll/dist/es2019/index.js +0 -2
  1369. package/node_modules/react-remove-scroll/dist/es2019/medium.d.ts +0 -2
  1370. package/node_modules/react-remove-scroll/dist/es2019/medium.js +0 -2
  1371. package/node_modules/react-remove-scroll/dist/es2019/pinchAndZoom.d.ts +0 -8
  1372. package/node_modules/react-remove-scroll/dist/es2019/pinchAndZoom.js +0 -33
  1373. package/node_modules/react-remove-scroll/dist/es2019/sidecar.d.ts +0 -2
  1374. package/node_modules/react-remove-scroll/dist/es2019/sidecar.js +0 -4
  1375. package/node_modules/react-remove-scroll/dist/es2019/types.d.ts +0 -98
  1376. package/node_modules/react-remove-scroll/dist/es2019/types.js +0 -1
  1377. package/node_modules/react-remove-scroll/dist/es5/Combination.d.ts +0 -3
  1378. package/node_modules/react-remove-scroll/dist/es5/Combination.js +0 -9
  1379. package/node_modules/react-remove-scroll/dist/es5/SideEffect.d.ts +0 -5
  1380. package/node_modules/react-remove-scroll/dist/es5/SideEffect.js +0 -163
  1381. package/node_modules/react-remove-scroll/dist/es5/UI.d.ts +0 -7
  1382. package/node_modules/react-remove-scroll/dist/es5/UI.js +0 -39
  1383. package/node_modules/react-remove-scroll/dist/es5/aggresiveCapture.d.ts +0 -3
  1384. package/node_modules/react-remove-scroll/dist/es5/aggresiveCapture.js +0 -22
  1385. package/node_modules/react-remove-scroll/dist/es5/handleScroll.d.ts +0 -3
  1386. package/node_modules/react-remove-scroll/dist/es5/handleScroll.js +0 -109
  1387. package/node_modules/react-remove-scroll/dist/es5/index.d.ts +0 -2
  1388. package/node_modules/react-remove-scroll/dist/es5/index.js +0 -6
  1389. package/node_modules/react-remove-scroll/dist/es5/medium.d.ts +0 -2
  1390. package/node_modules/react-remove-scroll/dist/es5/medium.js +0 -5
  1391. package/node_modules/react-remove-scroll/dist/es5/pinchAndZoom.d.ts +0 -8
  1392. package/node_modules/react-remove-scroll/dist/es5/pinchAndZoom.js +0 -37
  1393. package/node_modules/react-remove-scroll/dist/es5/sidecar.d.ts +0 -2
  1394. package/node_modules/react-remove-scroll/dist/es5/sidecar.js +0 -6
  1395. package/node_modules/react-remove-scroll/dist/es5/types.d.ts +0 -98
  1396. package/node_modules/react-remove-scroll/dist/es5/types.js +0 -2
  1397. package/node_modules/react-remove-scroll/dist/index.js +0 -93
  1398. package/node_modules/react-remove-scroll/package.json +0 -97
  1399. package/node_modules/react-remove-scroll/sidecar/package.json +0 -7
  1400. package/node_modules/react-remove-scroll/sidecar/sidecar.d.ts +0 -5
  1401. package/node_modules/react-remove-scroll-bar/README.md +0 -52
  1402. package/node_modules/react-remove-scroll-bar/constants/package.json +0 -8
  1403. package/node_modules/react-remove-scroll-bar/dist/es2015/component.d.ts +0 -13
  1404. package/node_modules/react-remove-scroll-bar/dist/es2015/component.js +0 -53
  1405. package/node_modules/react-remove-scroll-bar/dist/es2015/constants.d.ts +0 -8
  1406. package/node_modules/react-remove-scroll-bar/dist/es2015/constants.js +0 -8
  1407. package/node_modules/react-remove-scroll-bar/dist/es2015/index.d.ts +0 -4
  1408. package/node_modules/react-remove-scroll-bar/dist/es2015/index.js +0 -4
  1409. package/node_modules/react-remove-scroll-bar/dist/es2015/utils.d.ts +0 -14
  1410. package/node_modules/react-remove-scroll-bar/dist/es2015/utils.js +0 -29
  1411. package/node_modules/react-remove-scroll-bar/dist/es2019/component.d.ts +0 -13
  1412. package/node_modules/react-remove-scroll-bar/dist/es2019/component.js +0 -85
  1413. package/node_modules/react-remove-scroll-bar/dist/es2019/constants.d.ts +0 -8
  1414. package/node_modules/react-remove-scroll-bar/dist/es2019/constants.js +0 -8
  1415. package/node_modules/react-remove-scroll-bar/dist/es2019/index.d.ts +0 -4
  1416. package/node_modules/react-remove-scroll-bar/dist/es2019/index.js +0 -4
  1417. package/node_modules/react-remove-scroll-bar/dist/es2019/utils.d.ts +0 -14
  1418. package/node_modules/react-remove-scroll-bar/dist/es2019/utils.js +0 -28
  1419. package/node_modules/react-remove-scroll-bar/dist/es5/component.d.ts +0 -13
  1420. package/node_modules/react-remove-scroll-bar/dist/es5/component.js +0 -59
  1421. package/node_modules/react-remove-scroll-bar/dist/es5/constants.d.ts +0 -8
  1422. package/node_modules/react-remove-scroll-bar/dist/es5/constants.js +0 -11
  1423. package/node_modules/react-remove-scroll-bar/dist/es5/index.d.ts +0 -4
  1424. package/node_modules/react-remove-scroll-bar/dist/es5/index.js +0 -12
  1425. package/node_modules/react-remove-scroll-bar/dist/es5/utils.d.ts +0 -14
  1426. package/node_modules/react-remove-scroll-bar/dist/es5/utils.js +0 -33
  1427. package/node_modules/react-remove-scroll-bar/package.json +0 -85
  1428. package/node_modules/react-router/CHANGELOG.md +0 -723
  1429. package/node_modules/react-router/LICENSE.md +0 -23
  1430. package/node_modules/react-router/README.md +0 -16
  1431. package/node_modules/react-router/dist/index.d.ts +0 -29
  1432. package/node_modules/react-router/dist/index.js +0 -1456
  1433. package/node_modules/react-router/dist/index.js.map +0 -1
  1434. package/node_modules/react-router/dist/lib/components.d.ts +0 -157
  1435. package/node_modules/react-router/dist/lib/context.d.ts +0 -102
  1436. package/node_modules/react-router/dist/lib/hooks.d.ts +0 -181
  1437. package/node_modules/react-router/dist/main.js +0 -19
  1438. package/node_modules/react-router/dist/react-router.development.js +0 -1352
  1439. package/node_modules/react-router/dist/react-router.development.js.map +0 -1
  1440. package/node_modules/react-router/dist/react-router.production.min.js +0 -12
  1441. package/node_modules/react-router/dist/react-router.production.min.js.map +0 -1
  1442. package/node_modules/react-router/dist/umd/react-router.development.js +0 -1574
  1443. package/node_modules/react-router/dist/umd/react-router.development.js.map +0 -1
  1444. package/node_modules/react-router/dist/umd/react-router.production.min.js +0 -12
  1445. package/node_modules/react-router/dist/umd/react-router.production.min.js.map +0 -1
  1446. package/node_modules/react-router/package.json +0 -44
  1447. package/node_modules/react-router-dom/CHANGELOG.md +0 -866
  1448. package/node_modules/react-router-dom/LICENSE.md +0 -23
  1449. package/node_modules/react-router-dom/README.md +0 -5
  1450. package/node_modules/react-router-dom/dist/dom.d.ts +0 -117
  1451. package/node_modules/react-router-dom/dist/index.d.ts +0 -331
  1452. package/node_modules/react-router-dom/dist/index.js +0 -1447
  1453. package/node_modules/react-router-dom/dist/index.js.map +0 -1
  1454. package/node_modules/react-router-dom/dist/main.js +0 -19
  1455. package/node_modules/react-router-dom/dist/react-router-dom.development.js +0 -1514
  1456. package/node_modules/react-router-dom/dist/react-router-dom.development.js.map +0 -1
  1457. package/node_modules/react-router-dom/dist/react-router-dom.production.min.js +0 -12
  1458. package/node_modules/react-router-dom/dist/react-router-dom.production.min.js.map +0 -1
  1459. package/node_modules/react-router-dom/dist/server.d.ts +0 -31
  1460. package/node_modules/react-router-dom/dist/server.js +0 -322
  1461. package/node_modules/react-router-dom/dist/server.mjs +0 -297
  1462. package/node_modules/react-router-dom/dist/umd/react-router-dom.development.js +0 -1813
  1463. package/node_modules/react-router-dom/dist/umd/react-router-dom.development.js.map +0 -1
  1464. package/node_modules/react-router-dom/dist/umd/react-router-dom.production.min.js +0 -12
  1465. package/node_modules/react-router-dom/dist/umd/react-router-dom.production.min.js.map +0 -1
  1466. package/node_modules/react-router-dom/package.json +0 -49
  1467. package/node_modules/react-router-dom/server.d.ts +0 -31
  1468. package/node_modules/react-router-dom/server.js +0 -322
  1469. package/node_modules/react-router-dom/server.mjs +0 -297
  1470. package/node_modules/react-style-singleton/README.md +0 -41
  1471. package/node_modules/react-style-singleton/dist/es2015/component.d.ts +0 -21
  1472. package/node_modules/react-style-singleton/dist/es2015/component.js +0 -16
  1473. package/node_modules/react-style-singleton/dist/es2015/hook.d.ts +0 -23
  1474. package/node_modules/react-style-singleton/dist/es2015/hook.js +0 -22
  1475. package/node_modules/react-style-singleton/dist/es2015/index.d.ts +0 -3
  1476. package/node_modules/react-style-singleton/dist/es2015/index.js +0 -3
  1477. package/node_modules/react-style-singleton/dist/es2015/singleton.d.ts +0 -4
  1478. package/node_modules/react-style-singleton/dist/es2015/singleton.js +0 -48
  1479. package/node_modules/react-style-singleton/dist/es2019/component.d.ts +0 -21
  1480. package/node_modules/react-style-singleton/dist/es2019/component.js +0 -15
  1481. package/node_modules/react-style-singleton/dist/es2019/hook.d.ts +0 -23
  1482. package/node_modules/react-style-singleton/dist/es2019/hook.js +0 -22
  1483. package/node_modules/react-style-singleton/dist/es2019/index.d.ts +0 -3
  1484. package/node_modules/react-style-singleton/dist/es2019/index.js +0 -3
  1485. package/node_modules/react-style-singleton/dist/es2019/singleton.d.ts +0 -4
  1486. package/node_modules/react-style-singleton/dist/es2019/singleton.js +0 -48
  1487. package/node_modules/react-style-singleton/dist/es5/component.d.ts +0 -21
  1488. package/node_modules/react-style-singleton/dist/es5/component.js +0 -20
  1489. package/node_modules/react-style-singleton/dist/es5/hook.d.ts +0 -23
  1490. package/node_modules/react-style-singleton/dist/es5/hook.js +0 -27
  1491. package/node_modules/react-style-singleton/dist/es5/index.d.ts +0 -3
  1492. package/node_modules/react-style-singleton/dist/es5/index.js +0 -9
  1493. package/node_modules/react-style-singleton/dist/es5/singleton.d.ts +0 -4
  1494. package/node_modules/react-style-singleton/dist/es5/singleton.js +0 -52
  1495. package/node_modules/react-style-singleton/dist/index.js +0 -1
  1496. package/node_modules/react-style-singleton/package.json +0 -87
  1497. package/node_modules/regenerator-runtime/LICENSE +0 -21
  1498. package/node_modules/regenerator-runtime/README.md +0 -31
  1499. package/node_modules/regenerator-runtime/package.json +0 -19
  1500. package/node_modules/regenerator-runtime/path.js +0 -11
  1501. package/node_modules/regenerator-runtime/runtime.js +0 -761
  1502. package/node_modules/remix-utils/.eslintrc.cjs +0 -54
  1503. package/node_modules/remix-utils/LICENSE +0 -21
  1504. package/node_modules/remix-utils/README.md +0 -2149
  1505. package/node_modules/remix-utils/build/client/cache-assets.d.ts +0 -22
  1506. package/node_modules/remix-utils/build/client/cache-assets.js +0 -66
  1507. package/node_modules/remix-utils/build/common/promise.d.ts +0 -87
  1508. package/node_modules/remix-utils/build/common/promise.js +0 -112
  1509. package/node_modules/remix-utils/build/common/timers.d.ts +0 -27
  1510. package/node_modules/remix-utils/build/common/timers.js +0 -47
  1511. package/node_modules/remix-utils/build/react/authenticity-token.d.ts +0 -50
  1512. package/node_modules/remix-utils/build/react/authenticity-token.js +0 -54
  1513. package/node_modules/remix-utils/build/react/client-only.d.ts +0 -27
  1514. package/node_modules/remix-utils/build/react/client-only.js +0 -20
  1515. package/node_modules/remix-utils/build/react/existing-search-params.d.ts +0 -34
  1516. package/node_modules/remix-utils/build/react/existing-search-params.js +0 -32
  1517. package/node_modules/remix-utils/build/react/external-scripts.d.ts +0 -91
  1518. package/node_modules/remix-utils/build/react/external-scripts.js +0 -106
  1519. package/node_modules/remix-utils/build/react/fetcher-type.d.ts +0 -31
  1520. package/node_modules/remix-utils/build/react/fetcher-type.js +0 -53
  1521. package/node_modules/remix-utils/build/react/handle-conventions.d.ts +0 -10
  1522. package/node_modules/remix-utils/build/react/handle-conventions.js +0 -1
  1523. package/node_modules/remix-utils/build/react/honeypot.d.ts +0 -11
  1524. package/node_modules/remix-utils/build/react/honeypot.js +0 -16
  1525. package/node_modules/remix-utils/build/react/server-only.d.ts +0 -25
  1526. package/node_modules/remix-utils/build/react/server-only.js +0 -18
  1527. package/node_modules/remix-utils/build/react/use-debounce-fetcher.d.ts +0 -28
  1528. package/node_modules/remix-utils/build/react/use-debounce-fetcher.js +0 -27
  1529. package/node_modules/remix-utils/build/react/use-debounce-submit.d.ts +0 -7
  1530. package/node_modules/remix-utils/build/react/use-debounce-submit.js +0 -41
  1531. package/node_modules/remix-utils/build/react/use-delegated-anchors.d.ts +0 -6
  1532. package/node_modules/remix-utils/build/react/use-delegated-anchors.js +0 -69
  1533. package/node_modules/remix-utils/build/react/use-event-source.d.ts +0 -17
  1534. package/node_modules/remix-utils/build/react/use-event-source.js +0 -37
  1535. package/node_modules/remix-utils/build/react/use-global-navigation-state.d.ts +0 -33
  1536. package/node_modules/remix-utils/build/react/use-global-navigation-state.js +0 -67
  1537. package/node_modules/remix-utils/build/react/use-hydrated.d.ts +0 -18
  1538. package/node_modules/remix-utils/build/react/use-hydrated.js +0 -24
  1539. package/node_modules/remix-utils/build/react/use-locales.d.ts +0 -24
  1540. package/node_modules/remix-utils/build/react/use-locales.js +0 -56
  1541. package/node_modules/remix-utils/build/react/use-should-hydrate.d.ts +0 -21
  1542. package/node_modules/remix-utils/build/react/use-should-hydrate.js +0 -44
  1543. package/node_modules/remix-utils/build/server/cors.d.ts +0 -101
  1544. package/node_modules/remix-utils/build/server/cors.js +0 -179
  1545. package/node_modules/remix-utils/build/server/csrf.d.ts +0 -85
  1546. package/node_modules/remix-utils/build/server/csrf.js +0 -121
  1547. package/node_modules/remix-utils/build/server/event-stream.d.ts +0 -27
  1548. package/node_modules/remix-utils/build/server/event-stream.js +0 -44
  1549. package/node_modules/remix-utils/build/server/get-client-ip-address.d.ts +0 -29
  1550. package/node_modules/remix-utils/build/server/get-client-ip-address.js +0 -51
  1551. package/node_modules/remix-utils/build/server/get-client-locales.d.ts +0 -18
  1552. package/node_modules/remix-utils/build/server/get-client-locales.js +0 -18
  1553. package/node_modules/remix-utils/build/server/get-headers.d.ts +0 -6
  1554. package/node_modules/remix-utils/build/server/get-headers.js +0 -11
  1555. package/node_modules/remix-utils/build/server/honeypot.d.ts +0 -32
  1556. package/node_modules/remix-utils/build/server/honeypot.js +0 -96
  1557. package/node_modules/remix-utils/build/server/is-prefetch.d.ts +0 -16
  1558. package/node_modules/remix-utils/build/server/is-prefetch.js +0 -11
  1559. package/node_modules/remix-utils/build/server/json-hash.d.ts +0 -6
  1560. package/node_modules/remix-utils/build/server/json-hash.js +0 -16
  1561. package/node_modules/remix-utils/build/server/named-action.d.ts +0 -19
  1562. package/node_modules/remix-utils/build/server/named-action.js +0 -62
  1563. package/node_modules/remix-utils/build/server/parse-accept-header.d.ts +0 -12
  1564. package/node_modules/remix-utils/build/server/parse-accept-header.js +0 -17
  1565. package/node_modules/remix-utils/build/server/preload-route-assets.d.ts +0 -80
  1566. package/node_modules/remix-utils/build/server/preload-route-assets.js +0 -120
  1567. package/node_modules/remix-utils/build/server/redirect-back.d.ts +0 -18
  1568. package/node_modules/remix-utils/build/server/redirect-back.js +0 -29
  1569. package/node_modules/remix-utils/build/server/respond-to.d.ts +0 -40
  1570. package/node_modules/remix-utils/build/server/respond-to.js +0 -22
  1571. package/node_modules/remix-utils/build/server/responses.d.ts +0 -100
  1572. package/node_modules/remix-utils/build/server/responses.js +0 -167
  1573. package/node_modules/remix-utils/build/server/rolling-cookie.d.ts +0 -4
  1574. package/node_modules/remix-utils/build/server/rolling-cookie.js +0 -9
  1575. package/node_modules/remix-utils/build/server/safe-redirect.d.ts +0 -10
  1576. package/node_modules/remix-utils/build/server/safe-redirect.js +0 -22
  1577. package/node_modules/remix-utils/build/server/sec-fetch.d.ts +0 -43
  1578. package/node_modules/remix-utils/build/server/sec-fetch.js +0 -67
  1579. package/node_modules/remix-utils/build/server/typed-cookie.d.ts +0 -17
  1580. package/node_modules/remix-utils/build/server/typed-cookie.js +0 -58
  1581. package/node_modules/remix-utils/build/server/typed-session.d.ts +0 -59
  1582. package/node_modules/remix-utils/build/server/typed-session.js +0 -88
  1583. package/node_modules/remix-utils/package.json +0 -182
  1584. package/node_modules/remix-utils/scripts/check-pkg-exports.ts +0 -61
  1585. package/node_modules/set-cookie-parser/LICENSE +0 -21
  1586. package/node_modules/set-cookie-parser/README.md +0 -199
  1587. package/node_modules/set-cookie-parser/lib/set-cookie.js +0 -226
  1588. package/node_modules/set-cookie-parser/package.json +0 -43
  1589. package/node_modules/source-map/LICENSE +0 -28
  1590. package/node_modules/source-map/README.md +0 -742
  1591. package/node_modules/source-map/dist/source-map.debug.js +0 -3234
  1592. package/node_modules/source-map/dist/source-map.js +0 -3233
  1593. package/node_modules/source-map/dist/source-map.min.js +0 -2
  1594. package/node_modules/source-map/dist/source-map.min.js.map +0 -1
  1595. package/node_modules/source-map/lib/array-set.js +0 -121
  1596. package/node_modules/source-map/lib/base64-vlq.js +0 -140
  1597. package/node_modules/source-map/lib/base64.js +0 -67
  1598. package/node_modules/source-map/lib/binary-search.js +0 -111
  1599. package/node_modules/source-map/lib/mapping-list.js +0 -79
  1600. package/node_modules/source-map/lib/mappings.wasm +0 -0
  1601. package/node_modules/source-map/lib/quick-sort.js +0 -114
  1602. package/node_modules/source-map/lib/read-wasm.js +0 -49
  1603. package/node_modules/source-map/lib/source-map-consumer.js +0 -1145
  1604. package/node_modules/source-map/lib/source-map-generator.js +0 -425
  1605. package/node_modules/source-map/lib/source-node.js +0 -413
  1606. package/node_modules/source-map/lib/util.js +0 -488
  1607. package/node_modules/source-map/lib/wasm.js +0 -107
  1608. package/node_modules/source-map/package.json +0 -73
  1609. package/node_modules/source-map/source-map.d.ts +0 -98
  1610. package/node_modules/source-map/source-map.js +0 -8
  1611. package/node_modules/tailwind-merge/LICENSE.md +0 -21
  1612. package/node_modules/tailwind-merge/README.md +0 -38
  1613. package/node_modules/tailwind-merge/dist/bundle-cjs.js +0 -2595
  1614. package/node_modules/tailwind-merge/dist/bundle-cjs.js.map +0 -1
  1615. package/node_modules/tailwind-merge/dist/bundle-mjs.mjs +0 -2583
  1616. package/node_modules/tailwind-merge/dist/bundle-mjs.mjs.map +0 -1
  1617. package/node_modules/tailwind-merge/dist/es5/bundle-cjs.js +0 -2645
  1618. package/node_modules/tailwind-merge/dist/es5/bundle-cjs.js.map +0 -1
  1619. package/node_modules/tailwind-merge/dist/es5/bundle-mjs.mjs +0 -2633
  1620. package/node_modules/tailwind-merge/dist/es5/bundle-mjs.mjs.map +0 -1
  1621. package/node_modules/tailwind-merge/dist/types.d.ts +0 -2143
  1622. package/node_modules/tailwind-merge/package.json +0 -95
  1623. package/node_modules/tailwind-merge/src/index.ts +0 -14
  1624. package/node_modules/tailwind-merge/src/lib/class-utils.ts +0 -215
  1625. package/node_modules/tailwind-merge/src/lib/config-utils.ts +0 -14
  1626. package/node_modules/tailwind-merge/src/lib/create-tailwind-merge.ts +0 -50
  1627. package/node_modules/tailwind-merge/src/lib/default-config.ts +0 -1865
  1628. package/node_modules/tailwind-merge/src/lib/extend-tailwind-merge.ts +0 -26
  1629. package/node_modules/tailwind-merge/src/lib/from-theme.ts +0 -13
  1630. package/node_modules/tailwind-merge/src/lib/lru-cache.ts +0 -52
  1631. package/node_modules/tailwind-merge/src/lib/merge-classlist.ts +0 -99
  1632. package/node_modules/tailwind-merge/src/lib/merge-configs.ts +0 -72
  1633. package/node_modules/tailwind-merge/src/lib/modifier-utils.ts +0 -95
  1634. package/node_modules/tailwind-merge/src/lib/tw-join.ts +0 -50
  1635. package/node_modules/tailwind-merge/src/lib/tw-merge.ts +0 -4
  1636. package/node_modules/tailwind-merge/src/lib/types.ts +0 -412
  1637. package/node_modules/tailwind-merge/src/lib/validators.ts +0 -104
  1638. package/node_modules/tslib/CopyrightNotice.txt +0 -15
  1639. package/node_modules/tslib/LICENSE.txt +0 -12
  1640. package/node_modules/tslib/README.md +0 -164
  1641. package/node_modules/tslib/SECURITY.md +0 -41
  1642. package/node_modules/tslib/modules/index.d.ts +0 -37
  1643. package/node_modules/tslib/modules/index.js +0 -68
  1644. package/node_modules/tslib/modules/package.json +0 -3
  1645. package/node_modules/tslib/package.json +0 -47
  1646. package/node_modules/tslib/tslib.d.ts +0 -453
  1647. package/node_modules/tslib/tslib.es6.html +0 -1
  1648. package/node_modules/tslib/tslib.es6.js +0 -374
  1649. package/node_modules/tslib/tslib.es6.mjs +0 -373
  1650. package/node_modules/tslib/tslib.html +0 -1
  1651. package/node_modules/tslib/tslib.js +0 -424
  1652. package/node_modules/turbo-stream/LICENSE +0 -7
  1653. package/node_modules/turbo-stream/README.md +0 -31
  1654. package/node_modules/turbo-stream/dist/flatten.d.ts +0 -2
  1655. package/node_modules/turbo-stream/dist/flatten.js +0 -172
  1656. package/node_modules/turbo-stream/dist/turbo-stream.d.ts +0 -12
  1657. package/node_modules/turbo-stream/dist/turbo-stream.js +0 -202
  1658. package/node_modules/turbo-stream/dist/turbo-stream.mjs +0 -530
  1659. package/node_modules/turbo-stream/dist/unflatten.d.ts +0 -2
  1660. package/node_modules/turbo-stream/dist/unflatten.js +0 -127
  1661. package/node_modules/turbo-stream/dist/utils.d.ts +0 -43
  1662. package/node_modules/turbo-stream/dist/utils.js +0 -55
  1663. package/node_modules/turbo-stream/package.json +0 -50
  1664. package/node_modules/type-fest/index.d.ts +0 -160
  1665. package/node_modules/type-fest/package.json +0 -72
  1666. package/node_modules/type-fest/readme.md +0 -992
  1667. package/node_modules/type-fest/source/and.d.ts +0 -25
  1668. package/node_modules/type-fest/source/array-indices.d.ts +0 -23
  1669. package/node_modules/type-fest/source/array-slice.d.ts +0 -107
  1670. package/node_modules/type-fest/source/array-splice.d.ts +0 -97
  1671. package/node_modules/type-fest/source/array-values.d.ts +0 -22
  1672. package/node_modules/type-fest/source/async-return-type.d.ts +0 -23
  1673. package/node_modules/type-fest/source/asyncify.d.ts +0 -32
  1674. package/node_modules/type-fest/source/basic.d.ts +0 -68
  1675. package/node_modules/type-fest/source/camel-case.d.ts +0 -80
  1676. package/node_modules/type-fest/source/camel-cased-properties-deep.d.ts +0 -87
  1677. package/node_modules/type-fest/source/camel-cased-properties.d.ts +0 -36
  1678. package/node_modules/type-fest/source/conditional-except.d.ts +0 -45
  1679. package/node_modules/type-fest/source/conditional-keys.d.ts +0 -47
  1680. package/node_modules/type-fest/source/conditional-pick-deep.d.ts +0 -104
  1681. package/node_modules/type-fest/source/conditional-pick.d.ts +0 -44
  1682. package/node_modules/type-fest/source/conditional-simplify.d.ts +0 -32
  1683. package/node_modules/type-fest/source/delimiter-case.d.ts +0 -99
  1684. package/node_modules/type-fest/source/delimiter-cased-properties-deep.d.ts +0 -84
  1685. package/node_modules/type-fest/source/delimiter-cased-properties.d.ts +0 -37
  1686. package/node_modules/type-fest/source/distributed-omit.d.ts +0 -89
  1687. package/node_modules/type-fest/source/distributed-pick.d.ts +0 -85
  1688. package/node_modules/type-fest/source/empty-object.d.ts +0 -46
  1689. package/node_modules/type-fest/source/enforce-optional.d.ts +0 -47
  1690. package/node_modules/type-fest/source/entries.d.ts +0 -62
  1691. package/node_modules/type-fest/source/entry.d.ts +0 -65
  1692. package/node_modules/type-fest/source/exact.d.ts +0 -63
  1693. package/node_modules/type-fest/source/except.d.ts +0 -80
  1694. package/node_modules/type-fest/source/fixed-length-array.d.ts +0 -43
  1695. package/node_modules/type-fest/source/get.d.ts +0 -191
  1696. package/node_modules/type-fest/source/global-this.d.ts +0 -21
  1697. package/node_modules/type-fest/source/greater-than-or-equal.d.ts +0 -22
  1698. package/node_modules/type-fest/source/greater-than.d.ts +0 -51
  1699. package/node_modules/type-fest/source/has-optional-keys.d.ts +0 -21
  1700. package/node_modules/type-fest/source/has-readonly-keys.d.ts +0 -21
  1701. package/node_modules/type-fest/source/has-required-keys.d.ts +0 -59
  1702. package/node_modules/type-fest/source/has-writable-keys.d.ts +0 -21
  1703. package/node_modules/type-fest/source/if-any.d.ts +0 -24
  1704. package/node_modules/type-fest/source/if-empty-object.d.ts +0 -26
  1705. package/node_modules/type-fest/source/if-never.d.ts +0 -24
  1706. package/node_modules/type-fest/source/if-null.d.ts +0 -24
  1707. package/node_modules/type-fest/source/if-unknown.d.ts +0 -24
  1708. package/node_modules/type-fest/source/includes.d.ts +0 -22
  1709. package/node_modules/type-fest/source/int-range.d.ts +0 -53
  1710. package/node_modules/type-fest/source/internal.d.ts +0 -783
  1711. package/node_modules/type-fest/source/invariant-of.d.ts +0 -78
  1712. package/node_modules/type-fest/source/is-any.d.ts +0 -29
  1713. package/node_modules/type-fest/source/is-equal.d.ts +0 -31
  1714. package/node_modules/type-fest/source/is-float.d.ts +0 -33
  1715. package/node_modules/type-fest/source/is-integer.d.ts +0 -48
  1716. package/node_modules/type-fest/source/is-literal.d.ts +0 -258
  1717. package/node_modules/type-fest/source/is-never.d.ts +0 -42
  1718. package/node_modules/type-fest/source/is-null.d.ts +0 -20
  1719. package/node_modules/type-fest/source/is-unknown.d.ts +0 -52
  1720. package/node_modules/type-fest/source/iterable-element.d.ts +0 -54
  1721. package/node_modules/type-fest/source/join.d.ts +0 -68
  1722. package/node_modules/type-fest/source/jsonifiable.d.ts +0 -37
  1723. package/node_modules/type-fest/source/jsonify.d.ts +0 -121
  1724. package/node_modules/type-fest/source/kebab-case.d.ts +0 -38
  1725. package/node_modules/type-fest/source/kebab-cased-properties-deep.d.ts +0 -47
  1726. package/node_modules/type-fest/source/kebab-cased-properties.d.ts +0 -30
  1727. package/node_modules/type-fest/source/keys-of-union.d.ts +0 -40
  1728. package/node_modules/type-fest/source/last-array-element.d.ts +0 -38
  1729. package/node_modules/type-fest/source/less-than-or-equal.d.ts +0 -22
  1730. package/node_modules/type-fest/source/less-than.d.ts +0 -22
  1731. package/node_modules/type-fest/source/literal-to-primitive-deep.d.ts +0 -36
  1732. package/node_modules/type-fest/source/literal-to-primitive.d.ts +0 -36
  1733. package/node_modules/type-fest/source/literal-union.d.ts +0 -35
  1734. package/node_modules/type-fest/source/merge-deep.d.ts +0 -486
  1735. package/node_modules/type-fest/source/merge-exclusive.d.ts +0 -41
  1736. package/node_modules/type-fest/source/merge.d.ts +0 -48
  1737. package/node_modules/type-fest/source/multidimensional-array.d.ts +0 -44
  1738. package/node_modules/type-fest/source/multidimensional-readonly-array.d.ts +0 -48
  1739. package/node_modules/type-fest/source/non-empty-object.d.ts +0 -35
  1740. package/node_modules/type-fest/source/numeric.d.ts +0 -222
  1741. package/node_modules/type-fest/source/observable-like.d.ts +0 -63
  1742. package/node_modules/type-fest/source/omit-deep.d.ts +0 -140
  1743. package/node_modules/type-fest/source/omit-index-signature.d.ts +0 -107
  1744. package/node_modules/type-fest/source/opaque.d.ts +0 -252
  1745. package/node_modules/type-fest/source/optional-keys-of.d.ts +0 -38
  1746. package/node_modules/type-fest/source/or.d.ts +0 -25
  1747. package/node_modules/type-fest/source/override-properties.d.ts +0 -36
  1748. package/node_modules/type-fest/source/package-json.d.ts +0 -676
  1749. package/node_modules/type-fest/source/partial-deep.d.ts +0 -109
  1750. package/node_modules/type-fest/source/partial-on-undefined-deep.d.ts +0 -71
  1751. package/node_modules/type-fest/source/pascal-case.d.ts +0 -38
  1752. package/node_modules/type-fest/source/pascal-cased-properties-deep.d.ts +0 -55
  1753. package/node_modules/type-fest/source/pascal-cased-properties.d.ts +0 -35
  1754. package/node_modules/type-fest/source/paths.d.ts +0 -85
  1755. package/node_modules/type-fest/source/pick-deep.d.ts +0 -149
  1756. package/node_modules/type-fest/source/pick-index-signature.d.ts +0 -102
  1757. package/node_modules/type-fest/source/primitive.d.ts +0 -13
  1758. package/node_modules/type-fest/source/promisable.d.ts +0 -25
  1759. package/node_modules/type-fest/source/readonly-deep.d.ts +0 -81
  1760. package/node_modules/type-fest/source/readonly-keys-of.d.ts +0 -29
  1761. package/node_modules/type-fest/source/readonly-tuple.d.ts +0 -41
  1762. package/node_modules/type-fest/source/replace.d.ts +0 -67
  1763. package/node_modules/type-fest/source/require-all-or-none.d.ts +0 -42
  1764. package/node_modules/type-fest/source/require-at-least-one.d.ts +0 -34
  1765. package/node_modules/type-fest/source/require-exactly-one.d.ts +0 -34
  1766. package/node_modules/type-fest/source/require-one-or-none.d.ts +0 -37
  1767. package/node_modules/type-fest/source/required-deep.d.ts +0 -78
  1768. package/node_modules/type-fest/source/required-keys-of.d.ts +0 -29
  1769. package/node_modules/type-fest/source/schema.d.ts +0 -71
  1770. package/node_modules/type-fest/source/screaming-snake-case.d.ts +0 -33
  1771. package/node_modules/type-fest/source/set-field-type.d.ts +0 -37
  1772. package/node_modules/type-fest/source/set-non-nullable.d.ts +0 -39
  1773. package/node_modules/type-fest/source/set-optional.d.ts +0 -35
  1774. package/node_modules/type-fest/source/set-parameter-type.d.ts +0 -117
  1775. package/node_modules/type-fest/source/set-readonly.d.ts +0 -38
  1776. package/node_modules/type-fest/source/set-required.d.ts +0 -40
  1777. package/node_modules/type-fest/source/set-return-type.d.ts +0 -29
  1778. package/node_modules/type-fest/source/shared-union-fields-deep.d.ts +0 -168
  1779. package/node_modules/type-fest/source/simplify-deep.d.ts +0 -115
  1780. package/node_modules/type-fest/source/simplify.d.ts +0 -58
  1781. package/node_modules/type-fest/source/single-key-object.d.ts +0 -29
  1782. package/node_modules/type-fest/source/snake-case.d.ts +0 -38
  1783. package/node_modules/type-fest/source/snake-cased-properties-deep.d.ts +0 -47
  1784. package/node_modules/type-fest/source/snake-cased-properties.d.ts +0 -30
  1785. package/node_modules/type-fest/source/split-words.d.ts +0 -57
  1786. package/node_modules/type-fest/source/split.d.ts +0 -29
  1787. package/node_modules/type-fest/source/spread.d.ts +0 -85
  1788. package/node_modules/type-fest/source/string-key-of.d.ts +0 -25
  1789. package/node_modules/type-fest/source/string-slice.d.ts +0 -37
  1790. package/node_modules/type-fest/source/stringified.d.ts +0 -23
  1791. package/node_modules/type-fest/source/subtract.d.ts +0 -70
  1792. package/node_modules/type-fest/source/sum.d.ts +0 -70
  1793. package/node_modules/type-fest/source/tagged-union.d.ts +0 -51
  1794. package/node_modules/type-fest/source/trim.d.ts +0 -27
  1795. package/node_modules/type-fest/source/tsconfig-json.d.ts +0 -1198
  1796. package/node_modules/type-fest/source/tuple-to-union.d.ts +0 -51
  1797. package/node_modules/type-fest/source/typed-array.d.ts +0 -17
  1798. package/node_modules/type-fest/source/undefined-on-partial-deep.d.ts +0 -81
  1799. package/node_modules/type-fest/source/union-to-intersection.d.ts +0 -61
  1800. package/node_modules/type-fest/source/unknown-array.d.ts +0 -25
  1801. package/node_modules/type-fest/source/unknown-record.d.ts +0 -31
  1802. package/node_modules/type-fest/source/value-of.d.ts +0 -42
  1803. package/node_modules/type-fest/source/writable-deep.d.ts +0 -83
  1804. package/node_modules/type-fest/source/writable-keys-of.d.ts +0 -30
  1805. package/node_modules/type-fest/source/writable.d.ts +0 -68
  1806. package/node_modules/use-callback-ref/LICENSE +0 -21
  1807. package/node_modules/use-callback-ref/README.md +0 -170
  1808. package/node_modules/use-callback-ref/dist/es2015/assignRef.d.ts +0 -15
  1809. package/node_modules/use-callback-ref/dist/es2015/assignRef.js +0 -22
  1810. package/node_modules/use-callback-ref/dist/es2015/createRef.d.ts +0 -10
  1811. package/node_modules/use-callback-ref/dist/es2015/createRef.js +0 -23
  1812. package/node_modules/use-callback-ref/dist/es2015/index.d.ts +0 -8
  1813. package/node_modules/use-callback-ref/dist/es2015/index.js +0 -12
  1814. package/node_modules/use-callback-ref/dist/es2015/mergeRef.d.ts +0 -16
  1815. package/node_modules/use-callback-ref/dist/es2015/mergeRef.js +0 -18
  1816. package/node_modules/use-callback-ref/dist/es2015/refToCallback.d.ts +0 -24
  1817. package/node_modules/use-callback-ref/dist/es2015/refToCallback.js +0 -48
  1818. package/node_modules/use-callback-ref/dist/es2015/transformRef.d.ts +0 -11
  1819. package/node_modules/use-callback-ref/dist/es2015/transformRef.js +0 -14
  1820. package/node_modules/use-callback-ref/dist/es2015/types.d.ts +0 -5
  1821. package/node_modules/use-callback-ref/dist/es2015/types.js +0 -1
  1822. package/node_modules/use-callback-ref/dist/es2015/useMergeRef.d.ts +0 -17
  1823. package/node_modules/use-callback-ref/dist/es2015/useMergeRef.js +0 -45
  1824. package/node_modules/use-callback-ref/dist/es2015/useRef.d.ts +0 -16
  1825. package/node_modules/use-callback-ref/dist/es2015/useRef.js +0 -39
  1826. package/node_modules/use-callback-ref/dist/es2015/useTransformRef.d.ts +0 -15
  1827. package/node_modules/use-callback-ref/dist/es2015/useTransformRef.js +0 -18
  1828. package/node_modules/use-callback-ref/dist/es2019/assignRef.d.ts +0 -15
  1829. package/node_modules/use-callback-ref/dist/es2019/assignRef.js +0 -22
  1830. package/node_modules/use-callback-ref/dist/es2019/createRef.d.ts +0 -10
  1831. package/node_modules/use-callback-ref/dist/es2019/createRef.js +0 -23
  1832. package/node_modules/use-callback-ref/dist/es2019/index.d.ts +0 -8
  1833. package/node_modules/use-callback-ref/dist/es2019/index.js +0 -12
  1834. package/node_modules/use-callback-ref/dist/es2019/mergeRef.d.ts +0 -16
  1835. package/node_modules/use-callback-ref/dist/es2019/mergeRef.js +0 -18
  1836. package/node_modules/use-callback-ref/dist/es2019/refToCallback.d.ts +0 -24
  1837. package/node_modules/use-callback-ref/dist/es2019/refToCallback.js +0 -48
  1838. package/node_modules/use-callback-ref/dist/es2019/transformRef.d.ts +0 -11
  1839. package/node_modules/use-callback-ref/dist/es2019/transformRef.js +0 -14
  1840. package/node_modules/use-callback-ref/dist/es2019/types.d.ts +0 -5
  1841. package/node_modules/use-callback-ref/dist/es2019/types.js +0 -1
  1842. package/node_modules/use-callback-ref/dist/es2019/useMergeRef.d.ts +0 -17
  1843. package/node_modules/use-callback-ref/dist/es2019/useMergeRef.js +0 -43
  1844. package/node_modules/use-callback-ref/dist/es2019/useRef.d.ts +0 -16
  1845. package/node_modules/use-callback-ref/dist/es2019/useRef.js +0 -39
  1846. package/node_modules/use-callback-ref/dist/es2019/useTransformRef.d.ts +0 -15
  1847. package/node_modules/use-callback-ref/dist/es2019/useTransformRef.js +0 -18
  1848. package/node_modules/use-callback-ref/dist/es5/assignRef.d.ts +0 -15
  1849. package/node_modules/use-callback-ref/dist/es5/assignRef.js +0 -26
  1850. package/node_modules/use-callback-ref/dist/es5/createRef.d.ts +0 -10
  1851. package/node_modules/use-callback-ref/dist/es5/createRef.js +0 -27
  1852. package/node_modules/use-callback-ref/dist/es5/index.d.ts +0 -8
  1853. package/node_modules/use-callback-ref/dist/es5/index.js +0 -24
  1854. package/node_modules/use-callback-ref/dist/es5/mergeRef.d.ts +0 -16
  1855. package/node_modules/use-callback-ref/dist/es5/mergeRef.js +0 -22
  1856. package/node_modules/use-callback-ref/dist/es5/refToCallback.d.ts +0 -24
  1857. package/node_modules/use-callback-ref/dist/es5/refToCallback.js +0 -53
  1858. package/node_modules/use-callback-ref/dist/es5/transformRef.d.ts +0 -11
  1859. package/node_modules/use-callback-ref/dist/es5/transformRef.js +0 -18
  1860. package/node_modules/use-callback-ref/dist/es5/types.d.ts +0 -5
  1861. package/node_modules/use-callback-ref/dist/es5/types.js +0 -2
  1862. package/node_modules/use-callback-ref/dist/es5/useMergeRef.d.ts +0 -17
  1863. package/node_modules/use-callback-ref/dist/es5/useMergeRef.js +0 -50
  1864. package/node_modules/use-callback-ref/dist/es5/useRef.d.ts +0 -16
  1865. package/node_modules/use-callback-ref/dist/es5/useRef.js +0 -43
  1866. package/node_modules/use-callback-ref/dist/es5/useTransformRef.d.ts +0 -15
  1867. package/node_modules/use-callback-ref/dist/es5/useTransformRef.js +0 -22
  1868. package/node_modules/use-callback-ref/package.json +0 -84
  1869. package/node_modules/use-sidecar/LICENSE +0 -21
  1870. package/node_modules/use-sidecar/README.md +0 -349
  1871. package/node_modules/use-sidecar/dist/es2015/config.d.ts +0 -5
  1872. package/node_modules/use-sidecar/dist/es2015/config.js +0 -6
  1873. package/node_modules/use-sidecar/dist/es2015/env.d.ts +0 -4
  1874. package/node_modules/use-sidecar/dist/es2015/env.js +0 -5
  1875. package/node_modules/use-sidecar/dist/es2015/exports.d.ts +0 -3
  1876. package/node_modules/use-sidecar/dist/es2015/exports.js +0 -18
  1877. package/node_modules/use-sidecar/dist/es2015/hoc.d.ts +0 -3
  1878. package/node_modules/use-sidecar/dist/es2015/hoc.js +0 -15
  1879. package/node_modules/use-sidecar/dist/es2015/hook.d.ts +0 -2
  1880. package/node_modules/use-sidecar/dist/es2015/hook.js +0 -41
  1881. package/node_modules/use-sidecar/dist/es2015/index.d.ts +0 -7
  1882. package/node_modules/use-sidecar/dist/es2015/index.js +0 -6
  1883. package/node_modules/use-sidecar/dist/es2015/medium.d.ts +0 -3
  1884. package/node_modules/use-sidecar/dist/es2015/medium.js +0 -78
  1885. package/node_modules/use-sidecar/dist/es2015/renderProp.d.ts +0 -8
  1886. package/node_modules/use-sidecar/dist/es2015/renderProp.js +0 -35
  1887. package/node_modules/use-sidecar/dist/es2015/types.d.ts +0 -47
  1888. package/node_modules/use-sidecar/dist/es2015/types.js +0 -1
  1889. package/node_modules/use-sidecar/dist/es2019/config.d.ts +0 -5
  1890. package/node_modules/use-sidecar/dist/es2019/config.js +0 -6
  1891. package/node_modules/use-sidecar/dist/es2019/env.d.ts +0 -4
  1892. package/node_modules/use-sidecar/dist/es2019/env.js +0 -5
  1893. package/node_modules/use-sidecar/dist/es2019/exports.d.ts +0 -3
  1894. package/node_modules/use-sidecar/dist/es2019/exports.js +0 -16
  1895. package/node_modules/use-sidecar/dist/es2019/hoc.d.ts +0 -3
  1896. package/node_modules/use-sidecar/dist/es2019/hoc.js +0 -14
  1897. package/node_modules/use-sidecar/dist/es2019/hook.d.ts +0 -2
  1898. package/node_modules/use-sidecar/dist/es2019/hook.js +0 -41
  1899. package/node_modules/use-sidecar/dist/es2019/index.d.ts +0 -7
  1900. package/node_modules/use-sidecar/dist/es2019/index.js +0 -6
  1901. package/node_modules/use-sidecar/dist/es2019/medium.d.ts +0 -3
  1902. package/node_modules/use-sidecar/dist/es2019/medium.js +0 -78
  1903. package/node_modules/use-sidecar/dist/es2019/renderProp.d.ts +0 -8
  1904. package/node_modules/use-sidecar/dist/es2019/renderProp.js +0 -28
  1905. package/node_modules/use-sidecar/dist/es2019/types.d.ts +0 -47
  1906. package/node_modules/use-sidecar/dist/es2019/types.js +0 -1
  1907. package/node_modules/use-sidecar/dist/es5/config.d.ts +0 -5
  1908. package/node_modules/use-sidecar/dist/es5/config.js +0 -10
  1909. package/node_modules/use-sidecar/dist/es5/env.d.ts +0 -4
  1910. package/node_modules/use-sidecar/dist/es5/env.js +0 -8
  1911. package/node_modules/use-sidecar/dist/es5/exports.d.ts +0 -3
  1912. package/node_modules/use-sidecar/dist/es5/exports.js +0 -22
  1913. package/node_modules/use-sidecar/dist/es5/hoc.d.ts +0 -3
  1914. package/node_modules/use-sidecar/dist/es5/hoc.js +0 -19
  1915. package/node_modules/use-sidecar/dist/es5/hook.d.ts +0 -2
  1916. package/node_modules/use-sidecar/dist/es5/hook.js +0 -45
  1917. package/node_modules/use-sidecar/dist/es5/index.d.ts +0 -7
  1918. package/node_modules/use-sidecar/dist/es5/index.js +0 -16
  1919. package/node_modules/use-sidecar/dist/es5/medium.d.ts +0 -3
  1920. package/node_modules/use-sidecar/dist/es5/medium.js +0 -83
  1921. package/node_modules/use-sidecar/dist/es5/renderProp.d.ts +0 -8
  1922. package/node_modules/use-sidecar/dist/es5/renderProp.js +0 -39
  1923. package/node_modules/use-sidecar/dist/es5/types.d.ts +0 -47
  1924. package/node_modules/use-sidecar/dist/es5/types.js +0 -2
  1925. package/node_modules/use-sidecar/package.json +0 -89
  1926. package/node_modules/zod/LICENSE +0 -21
  1927. package/node_modules/zod/README.md +0 -2876
  1928. package/node_modules/zod/index.d.ts +0 -2
  1929. package/node_modules/zod/lib/ZodError.d.ts +0 -164
  1930. package/node_modules/zod/lib/ZodError.js +0 -137
  1931. package/node_modules/zod/lib/__tests__/Mocker.d.ts +0 -17
  1932. package/node_modules/zod/lib/__tests__/Mocker.js +0 -57
  1933. package/node_modules/zod/lib/benchmarks/datetime.d.ts +0 -5
  1934. package/node_modules/zod/lib/benchmarks/datetime.js +0 -54
  1935. package/node_modules/zod/lib/benchmarks/discriminatedUnion.d.ts +0 -5
  1936. package/node_modules/zod/lib/benchmarks/discriminatedUnion.js +0 -79
  1937. package/node_modules/zod/lib/benchmarks/index.d.ts +0 -1
  1938. package/node_modules/zod/lib/benchmarks/index.js +0 -59
  1939. package/node_modules/zod/lib/benchmarks/ipv4.d.ts +0 -5
  1940. package/node_modules/zod/lib/benchmarks/ipv4.js +0 -54
  1941. package/node_modules/zod/lib/benchmarks/object.d.ts +0 -5
  1942. package/node_modules/zod/lib/benchmarks/object.js +0 -70
  1943. package/node_modules/zod/lib/benchmarks/primitives.d.ts +0 -5
  1944. package/node_modules/zod/lib/benchmarks/primitives.js +0 -170
  1945. package/node_modules/zod/lib/benchmarks/realworld.d.ts +0 -5
  1946. package/node_modules/zod/lib/benchmarks/realworld.js +0 -56
  1947. package/node_modules/zod/lib/benchmarks/string.d.ts +0 -5
  1948. package/node_modules/zod/lib/benchmarks/string.js +0 -55
  1949. package/node_modules/zod/lib/benchmarks/union.d.ts +0 -5
  1950. package/node_modules/zod/lib/benchmarks/union.js +0 -79
  1951. package/node_modules/zod/lib/errors.d.ts +0 -5
  1952. package/node_modules/zod/lib/errors.js +0 -17
  1953. package/node_modules/zod/lib/external.d.ts +0 -6
  1954. package/node_modules/zod/lib/external.js +0 -18
  1955. package/node_modules/zod/lib/helpers/enumUtil.d.ts +0 -8
  1956. package/node_modules/zod/lib/helpers/enumUtil.js +0 -2
  1957. package/node_modules/zod/lib/helpers/errorUtil.d.ts +0 -9
  1958. package/node_modules/zod/lib/helpers/errorUtil.js +0 -8
  1959. package/node_modules/zod/lib/helpers/parseUtil.d.ts +0 -78
  1960. package/node_modules/zod/lib/helpers/parseUtil.js +0 -125
  1961. package/node_modules/zod/lib/helpers/partialUtil.d.ts +0 -8
  1962. package/node_modules/zod/lib/helpers/partialUtil.js +0 -2
  1963. package/node_modules/zod/lib/helpers/typeAliases.d.ts +0 -2
  1964. package/node_modules/zod/lib/helpers/typeAliases.js +0 -2
  1965. package/node_modules/zod/lib/helpers/util.d.ts +0 -82
  1966. package/node_modules/zod/lib/helpers/util.js +0 -142
  1967. package/node_modules/zod/lib/index.d.ts +0 -4
  1968. package/node_modules/zod/lib/index.js +0 -29
  1969. package/node_modules/zod/lib/index.mjs +0 -4236
  1970. package/node_modules/zod/lib/index.umd.js +0 -4351
  1971. package/node_modules/zod/lib/locales/en.d.ts +0 -3
  1972. package/node_modules/zod/lib/locales/en.js +0 -129
  1973. package/node_modules/zod/lib/types.d.ts +0 -1127
  1974. package/node_modules/zod/lib/types.js +0 -3677
  1975. 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
- });