cloudstructs 0.9.27 → 0.9.29

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 (460) hide show
  1. package/.jsii +4 -4
  2. package/assets/slack-textract/detect.lambda/index.js +929 -51
  3. package/lib/codecommit-mirror/index.js +2 -2
  4. package/lib/dmarc/index.js +1 -1
  5. package/lib/ecs-service-roller/index.js +2 -2
  6. package/lib/email-receiver/receiver.js +1 -1
  7. package/lib/mjml-template/index.js +1 -1
  8. package/lib/saml-identity-provider/index.js +2 -2
  9. package/lib/slack-app/manifest.js +1 -1
  10. package/lib/slack-app/slack-app.js +2 -2
  11. package/lib/slack-events/index.js +1 -1
  12. package/lib/slack-textract/index.js +1 -1
  13. package/lib/ssl-server-test/index.js +1 -1
  14. package/lib/state-machine-cr-provider/index.js +1 -1
  15. package/lib/static-website/index.js +1 -1
  16. package/lib/toolkit-cleaner/index.js +1 -1
  17. package/lib/url-shortener/index.js +1 -1
  18. package/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js +2 -2
  19. package/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js +1 -1
  20. package/node_modules/@babel/runtime/helpers/esm/wrapRegExp.js +4 -3
  21. package/node_modules/@babel/runtime/helpers/objectWithoutProperties.js +2 -2
  22. package/node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js +1 -1
  23. package/node_modules/@babel/runtime/helpers/wrapRegExp.js +4 -3
  24. package/node_modules/@babel/runtime/package.json +1 -1
  25. package/node_modules/@slack/logger/node_modules/@types/node/README.md +1 -1
  26. package/node_modules/@slack/logger/node_modules/@types/node/assert.d.ts +55 -0
  27. package/node_modules/@slack/logger/node_modules/@types/node/buffer.buffer.d.ts +114 -39
  28. package/node_modules/@slack/logger/node_modules/@types/node/buffer.d.ts +4 -11
  29. package/node_modules/@slack/logger/node_modules/@types/node/constants.d.ts +14 -12
  30. package/node_modules/@slack/logger/node_modules/@types/node/crypto.d.ts +36 -1
  31. package/node_modules/@slack/logger/node_modules/@types/node/dgram.d.ts +10 -7
  32. package/node_modules/@slack/logger/node_modules/@types/node/fs/promises.d.ts +2 -2
  33. package/node_modules/@slack/logger/node_modules/@types/node/fs.d.ts +45 -98
  34. package/node_modules/@slack/logger/node_modules/@types/node/globals.d.ts +0 -57
  35. package/node_modules/@slack/logger/node_modules/@types/node/http.d.ts +1 -0
  36. package/node_modules/@slack/logger/node_modules/@types/node/module.d.ts +530 -237
  37. package/node_modules/@slack/logger/node_modules/@types/node/net.d.ts +30 -5
  38. package/node_modules/@slack/logger/node_modules/@types/node/package.json +2 -2
  39. package/node_modules/@slack/logger/node_modules/@types/node/perf_hooks.d.ts +5 -0
  40. package/node_modules/@slack/logger/node_modules/@types/node/process.d.ts +54 -4
  41. package/node_modules/@slack/logger/node_modules/@types/node/sea.d.ts +1 -1
  42. package/node_modules/@slack/logger/node_modules/@types/node/sqlite.d.ts +207 -2
  43. package/node_modules/@slack/logger/node_modules/@types/node/stream/web.d.ts +6 -1
  44. package/node_modules/@slack/logger/node_modules/@types/node/stream.d.ts +936 -1000
  45. package/node_modules/@slack/logger/node_modules/@types/node/test.d.ts +40 -138
  46. package/node_modules/@slack/logger/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +107 -35
  47. package/node_modules/@slack/logger/node_modules/@types/node/util.d.ts +85 -17
  48. package/node_modules/@slack/logger/node_modules/@types/node/vm.d.ts +1 -1
  49. package/node_modules/@slack/web-api/README.md +4 -4
  50. package/node_modules/@slack/web-api/dist/WebClient.d.ts +30 -1
  51. package/node_modules/@slack/web-api/dist/WebClient.d.ts.map +1 -1
  52. package/node_modules/@slack/web-api/dist/WebClient.js +15 -2
  53. package/node_modules/@slack/web-api/dist/WebClient.js.map +1 -1
  54. package/node_modules/@slack/web-api/dist/methods.d.ts +1 -1
  55. package/node_modules/@slack/web-api/dist/methods.js +1 -1
  56. package/node_modules/@slack/web-api/node_modules/@types/node/README.md +1 -1
  57. package/node_modules/@slack/web-api/node_modules/@types/node/assert.d.ts +55 -0
  58. package/node_modules/@slack/web-api/node_modules/@types/node/buffer.buffer.d.ts +114 -39
  59. package/node_modules/@slack/web-api/node_modules/@types/node/buffer.d.ts +4 -11
  60. package/node_modules/@slack/web-api/node_modules/@types/node/constants.d.ts +14 -12
  61. package/node_modules/@slack/web-api/node_modules/@types/node/crypto.d.ts +36 -1
  62. package/node_modules/@slack/web-api/node_modules/@types/node/dgram.d.ts +10 -7
  63. package/node_modules/@slack/web-api/node_modules/@types/node/fs/promises.d.ts +2 -2
  64. package/node_modules/@slack/web-api/node_modules/@types/node/fs.d.ts +45 -98
  65. package/node_modules/@slack/web-api/node_modules/@types/node/globals.d.ts +0 -57
  66. package/node_modules/@slack/web-api/node_modules/@types/node/http.d.ts +1 -0
  67. package/node_modules/@slack/web-api/node_modules/@types/node/module.d.ts +530 -237
  68. package/node_modules/@slack/web-api/node_modules/@types/node/net.d.ts +30 -5
  69. package/node_modules/@slack/web-api/node_modules/@types/node/package.json +2 -2
  70. package/node_modules/@slack/web-api/node_modules/@types/node/perf_hooks.d.ts +5 -0
  71. package/node_modules/@slack/web-api/node_modules/@types/node/process.d.ts +54 -4
  72. package/node_modules/@slack/web-api/node_modules/@types/node/sea.d.ts +1 -1
  73. package/node_modules/@slack/web-api/node_modules/@types/node/sqlite.d.ts +207 -2
  74. package/node_modules/@slack/web-api/node_modules/@types/node/stream/web.d.ts +6 -1
  75. package/node_modules/@slack/web-api/node_modules/@types/node/stream.d.ts +936 -1000
  76. package/node_modules/@slack/web-api/node_modules/@types/node/test.d.ts +40 -138
  77. package/node_modules/@slack/web-api/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +107 -35
  78. package/node_modules/@slack/web-api/node_modules/@types/node/util.d.ts +85 -17
  79. package/node_modules/@slack/web-api/node_modules/@types/node/vm.d.ts +1 -1
  80. package/node_modules/@slack/web-api/package.json +8 -6
  81. package/node_modules/@types/cacheable-request/node_modules/@types/node/README.md +1 -1
  82. package/node_modules/@types/cacheable-request/node_modules/@types/node/assert.d.ts +55 -0
  83. package/node_modules/@types/cacheable-request/node_modules/@types/node/buffer.buffer.d.ts +114 -39
  84. package/node_modules/@types/cacheable-request/node_modules/@types/node/buffer.d.ts +4 -11
  85. package/node_modules/@types/cacheable-request/node_modules/@types/node/constants.d.ts +14 -12
  86. package/node_modules/@types/cacheable-request/node_modules/@types/node/crypto.d.ts +36 -1
  87. package/node_modules/@types/cacheable-request/node_modules/@types/node/dgram.d.ts +10 -7
  88. package/node_modules/@types/cacheable-request/node_modules/@types/node/fs/promises.d.ts +2 -2
  89. package/node_modules/@types/cacheable-request/node_modules/@types/node/fs.d.ts +45 -98
  90. package/node_modules/@types/cacheable-request/node_modules/@types/node/globals.d.ts +0 -57
  91. package/node_modules/@types/cacheable-request/node_modules/@types/node/http.d.ts +1 -0
  92. package/node_modules/@types/cacheable-request/node_modules/@types/node/module.d.ts +530 -237
  93. package/node_modules/@types/cacheable-request/node_modules/@types/node/net.d.ts +30 -5
  94. package/node_modules/@types/cacheable-request/node_modules/@types/node/package.json +2 -2
  95. package/node_modules/@types/cacheable-request/node_modules/@types/node/perf_hooks.d.ts +5 -0
  96. package/node_modules/@types/cacheable-request/node_modules/@types/node/process.d.ts +54 -4
  97. package/node_modules/@types/cacheable-request/node_modules/@types/node/sea.d.ts +1 -1
  98. package/node_modules/@types/cacheable-request/node_modules/@types/node/sqlite.d.ts +207 -2
  99. package/node_modules/@types/cacheable-request/node_modules/@types/node/stream/web.d.ts +6 -1
  100. package/node_modules/@types/cacheable-request/node_modules/@types/node/stream.d.ts +936 -1000
  101. package/node_modules/@types/cacheable-request/node_modules/@types/node/test.d.ts +40 -138
  102. package/node_modules/@types/cacheable-request/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +107 -35
  103. package/node_modules/@types/cacheable-request/node_modules/@types/node/util.d.ts +85 -17
  104. package/node_modules/@types/cacheable-request/node_modules/@types/node/vm.d.ts +1 -1
  105. package/node_modules/@types/keyv/node_modules/@types/node/README.md +1 -1
  106. package/node_modules/@types/keyv/node_modules/@types/node/assert.d.ts +55 -0
  107. package/node_modules/@types/keyv/node_modules/@types/node/buffer.buffer.d.ts +114 -39
  108. package/node_modules/@types/keyv/node_modules/@types/node/buffer.d.ts +4 -11
  109. package/node_modules/@types/keyv/node_modules/@types/node/constants.d.ts +14 -12
  110. package/node_modules/@types/keyv/node_modules/@types/node/crypto.d.ts +36 -1
  111. package/node_modules/@types/keyv/node_modules/@types/node/dgram.d.ts +10 -7
  112. package/node_modules/@types/keyv/node_modules/@types/node/fs/promises.d.ts +2 -2
  113. package/node_modules/@types/keyv/node_modules/@types/node/fs.d.ts +45 -98
  114. package/node_modules/@types/keyv/node_modules/@types/node/globals.d.ts +0 -57
  115. package/node_modules/@types/keyv/node_modules/@types/node/http.d.ts +1 -0
  116. package/node_modules/@types/keyv/node_modules/@types/node/module.d.ts +530 -237
  117. package/node_modules/@types/keyv/node_modules/@types/node/net.d.ts +30 -5
  118. package/node_modules/@types/keyv/node_modules/@types/node/package.json +2 -2
  119. package/node_modules/@types/keyv/node_modules/@types/node/perf_hooks.d.ts +5 -0
  120. package/node_modules/@types/keyv/node_modules/@types/node/process.d.ts +54 -4
  121. package/node_modules/@types/keyv/node_modules/@types/node/sea.d.ts +1 -1
  122. package/node_modules/@types/keyv/node_modules/@types/node/sqlite.d.ts +207 -2
  123. package/node_modules/@types/keyv/node_modules/@types/node/stream/web.d.ts +6 -1
  124. package/node_modules/@types/keyv/node_modules/@types/node/stream.d.ts +936 -1000
  125. package/node_modules/@types/keyv/node_modules/@types/node/test.d.ts +40 -138
  126. package/node_modules/@types/keyv/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +107 -35
  127. package/node_modules/@types/keyv/node_modules/@types/node/util.d.ts +85 -17
  128. package/node_modules/@types/keyv/node_modules/@types/node/vm.d.ts +1 -1
  129. package/node_modules/@types/responselike/node_modules/@types/node/README.md +1 -1
  130. package/node_modules/@types/responselike/node_modules/@types/node/assert.d.ts +55 -0
  131. package/node_modules/@types/responselike/node_modules/@types/node/buffer.buffer.d.ts +114 -39
  132. package/node_modules/@types/responselike/node_modules/@types/node/buffer.d.ts +4 -11
  133. package/node_modules/@types/responselike/node_modules/@types/node/constants.d.ts +14 -12
  134. package/node_modules/@types/responselike/node_modules/@types/node/crypto.d.ts +36 -1
  135. package/node_modules/@types/responselike/node_modules/@types/node/dgram.d.ts +10 -7
  136. package/node_modules/@types/responselike/node_modules/@types/node/fs/promises.d.ts +2 -2
  137. package/node_modules/@types/responselike/node_modules/@types/node/fs.d.ts +45 -98
  138. package/node_modules/@types/responselike/node_modules/@types/node/globals.d.ts +0 -57
  139. package/node_modules/@types/responselike/node_modules/@types/node/http.d.ts +1 -0
  140. package/node_modules/@types/responselike/node_modules/@types/node/module.d.ts +530 -237
  141. package/node_modules/@types/responselike/node_modules/@types/node/net.d.ts +30 -5
  142. package/node_modules/@types/responselike/node_modules/@types/node/package.json +2 -2
  143. package/node_modules/@types/responselike/node_modules/@types/node/perf_hooks.d.ts +5 -0
  144. package/node_modules/@types/responselike/node_modules/@types/node/process.d.ts +54 -4
  145. package/node_modules/@types/responselike/node_modules/@types/node/sea.d.ts +1 -1
  146. package/node_modules/@types/responselike/node_modules/@types/node/sqlite.d.ts +207 -2
  147. package/node_modules/@types/responselike/node_modules/@types/node/stream/web.d.ts +6 -1
  148. package/node_modules/@types/responselike/node_modules/@types/node/stream.d.ts +936 -1000
  149. package/node_modules/@types/responselike/node_modules/@types/node/test.d.ts +40 -138
  150. package/node_modules/@types/responselike/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +107 -35
  151. package/node_modules/@types/responselike/node_modules/@types/node/util.d.ts +85 -17
  152. package/node_modules/@types/responselike/node_modules/@types/node/vm.d.ts +1 -1
  153. package/node_modules/axios/CHANGELOG.md +97 -0
  154. package/node_modules/axios/README.md +35 -13
  155. package/node_modules/axios/dist/axios.js +14 -25
  156. package/node_modules/axios/dist/axios.js.map +1 -1
  157. package/node_modules/axios/dist/axios.min.js +2 -1
  158. package/node_modules/axios/dist/axios.min.js.map +1 -1
  159. package/node_modules/axios/dist/browser/axios.cjs +14 -28
  160. package/node_modules/axios/dist/browser/axios.cjs.map +1 -1
  161. package/node_modules/axios/dist/esm/axios.js +14 -28
  162. package/node_modules/axios/dist/esm/axios.js.map +1 -1
  163. package/node_modules/axios/dist/esm/axios.min.js +2 -1
  164. package/node_modules/axios/dist/esm/axios.min.js.map +1 -1
  165. package/node_modules/axios/dist/node/axios.cjs +44 -31
  166. package/node_modules/axios/dist/node/axios.cjs.map +1 -1
  167. package/node_modules/axios/index.d.cts +1 -0
  168. package/node_modules/axios/index.d.ts +1 -0
  169. package/node_modules/axios/lib/adapters/http.js +1 -1
  170. package/node_modules/axios/lib/core/Axios.js +10 -1
  171. package/node_modules/axios/lib/core/buildFullPath.js +3 -2
  172. package/node_modules/axios/lib/env/data.js +1 -1
  173. package/node_modules/axios/lib/helpers/formDataToStream.js +3 -2
  174. package/node_modules/axios/lib/helpers/resolveConfig.js +1 -1
  175. package/node_modules/axios/lib/platform/node/index.js +26 -0
  176. package/node_modules/axios/lib/utils.js +0 -22
  177. package/node_modules/axios/package.json +4 -4
  178. package/node_modules/call-bind-apply-helpers/.eslintrc +17 -0
  179. package/node_modules/call-bind-apply-helpers/.github/FUNDING.yml +12 -0
  180. package/node_modules/call-bind-apply-helpers/.nycrc +9 -0
  181. package/node_modules/call-bind-apply-helpers/CHANGELOG.md +30 -0
  182. package/node_modules/call-bind-apply-helpers/LICENSE +21 -0
  183. package/node_modules/call-bind-apply-helpers/README.md +62 -0
  184. package/node_modules/call-bind-apply-helpers/actualApply.d.ts +1 -0
  185. package/node_modules/call-bind-apply-helpers/actualApply.js +10 -0
  186. package/node_modules/call-bind-apply-helpers/applyBind.d.ts +19 -0
  187. package/node_modules/call-bind-apply-helpers/applyBind.js +10 -0
  188. package/node_modules/call-bind-apply-helpers/functionApply.d.ts +1 -0
  189. package/node_modules/call-bind-apply-helpers/functionApply.js +4 -0
  190. package/node_modules/call-bind-apply-helpers/functionCall.d.ts +1 -0
  191. package/node_modules/call-bind-apply-helpers/functionCall.js +4 -0
  192. package/node_modules/call-bind-apply-helpers/index.d.ts +64 -0
  193. package/node_modules/call-bind-apply-helpers/index.js +15 -0
  194. package/node_modules/call-bind-apply-helpers/package.json +85 -0
  195. package/node_modules/call-bind-apply-helpers/reflectApply.d.ts +3 -0
  196. package/node_modules/call-bind-apply-helpers/reflectApply.js +4 -0
  197. package/node_modules/call-bind-apply-helpers/test/index.js +63 -0
  198. package/node_modules/call-bind-apply-helpers/tsconfig.json +9 -0
  199. package/node_modules/dunder-proto/.eslintrc +5 -0
  200. package/node_modules/dunder-proto/.github/FUNDING.yml +12 -0
  201. package/node_modules/dunder-proto/.nycrc +13 -0
  202. package/node_modules/dunder-proto/CHANGELOG.md +24 -0
  203. package/node_modules/dunder-proto/LICENSE +21 -0
  204. package/node_modules/dunder-proto/README.md +54 -0
  205. package/node_modules/dunder-proto/get.d.ts +5 -0
  206. package/node_modules/dunder-proto/get.js +30 -0
  207. package/node_modules/dunder-proto/package.json +76 -0
  208. package/node_modules/dunder-proto/set.d.ts +5 -0
  209. package/node_modules/dunder-proto/set.js +35 -0
  210. package/node_modules/dunder-proto/test/get.js +34 -0
  211. package/node_modules/dunder-proto/test/index.js +4 -0
  212. package/node_modules/dunder-proto/test/set.js +50 -0
  213. package/node_modules/dunder-proto/tsconfig.json +9 -0
  214. package/node_modules/es-define-property/.eslintrc +13 -0
  215. package/node_modules/es-define-property/.github/FUNDING.yml +12 -0
  216. package/node_modules/es-define-property/.nycrc +9 -0
  217. package/node_modules/es-define-property/CHANGELOG.md +29 -0
  218. package/node_modules/es-define-property/LICENSE +21 -0
  219. package/node_modules/es-define-property/README.md +49 -0
  220. package/node_modules/es-define-property/index.d.ts +3 -0
  221. package/node_modules/es-define-property/index.js +14 -0
  222. package/node_modules/es-define-property/package.json +81 -0
  223. package/node_modules/es-define-property/test/index.js +56 -0
  224. package/node_modules/es-define-property/tsconfig.json +10 -0
  225. package/node_modules/es-errors/.eslintrc +5 -0
  226. package/node_modules/es-errors/.github/FUNDING.yml +12 -0
  227. package/node_modules/es-errors/CHANGELOG.md +40 -0
  228. package/node_modules/es-errors/LICENSE +21 -0
  229. package/node_modules/es-errors/README.md +55 -0
  230. package/node_modules/es-errors/eval.d.ts +3 -0
  231. package/node_modules/es-errors/eval.js +4 -0
  232. package/node_modules/es-errors/index.d.ts +3 -0
  233. package/node_modules/es-errors/index.js +4 -0
  234. package/node_modules/es-errors/package.json +80 -0
  235. package/node_modules/es-errors/range.d.ts +3 -0
  236. package/node_modules/es-errors/range.js +4 -0
  237. package/node_modules/es-errors/ref.d.ts +3 -0
  238. package/node_modules/es-errors/ref.js +4 -0
  239. package/node_modules/es-errors/syntax.d.ts +3 -0
  240. package/node_modules/es-errors/syntax.js +4 -0
  241. package/node_modules/es-errors/test/index.js +19 -0
  242. package/node_modules/es-errors/tsconfig.json +49 -0
  243. package/node_modules/es-errors/type.d.ts +3 -0
  244. package/node_modules/es-errors/type.js +4 -0
  245. package/node_modules/es-errors/uri.d.ts +3 -0
  246. package/node_modules/es-errors/uri.js +4 -0
  247. package/node_modules/es-object-atoms/.eslintrc +16 -0
  248. package/node_modules/es-object-atoms/.github/FUNDING.yml +12 -0
  249. package/node_modules/es-object-atoms/CHANGELOG.md +37 -0
  250. package/node_modules/es-object-atoms/LICENSE +21 -0
  251. package/node_modules/es-object-atoms/README.md +63 -0
  252. package/node_modules/es-object-atoms/RequireObjectCoercible.d.ts +3 -0
  253. package/node_modules/es-object-atoms/RequireObjectCoercible.js +11 -0
  254. package/node_modules/es-object-atoms/ToObject.d.ts +7 -0
  255. package/node_modules/es-object-atoms/ToObject.js +10 -0
  256. package/node_modules/es-object-atoms/index.d.ts +3 -0
  257. package/node_modules/es-object-atoms/index.js +4 -0
  258. package/node_modules/es-object-atoms/isObject.d.ts +3 -0
  259. package/node_modules/es-object-atoms/isObject.js +6 -0
  260. package/node_modules/es-object-atoms/package.json +80 -0
  261. package/node_modules/es-object-atoms/test/index.js +38 -0
  262. package/node_modules/es-object-atoms/tsconfig.json +6 -0
  263. package/node_modules/es-set-tostringtag/.eslintrc +13 -0
  264. package/node_modules/es-set-tostringtag/.nycrc +9 -0
  265. package/node_modules/es-set-tostringtag/CHANGELOG.md +67 -0
  266. package/node_modules/es-set-tostringtag/LICENSE +21 -0
  267. package/node_modules/es-set-tostringtag/README.md +53 -0
  268. package/node_modules/es-set-tostringtag/index.d.ts +10 -0
  269. package/node_modules/es-set-tostringtag/index.js +35 -0
  270. package/node_modules/es-set-tostringtag/package.json +78 -0
  271. package/node_modules/es-set-tostringtag/test/index.js +85 -0
  272. package/node_modules/es-set-tostringtag/tsconfig.json +9 -0
  273. package/node_modules/foreground-child/dist/commonjs/all-signals.d.ts +0 -1
  274. package/node_modules/foreground-child/dist/commonjs/all-signals.d.ts.map +1 -1
  275. package/node_modules/foreground-child/dist/commonjs/index.d.ts +1 -8
  276. package/node_modules/foreground-child/dist/commonjs/index.d.ts.map +1 -1
  277. package/node_modules/foreground-child/dist/commonjs/index.js +2 -2
  278. package/node_modules/foreground-child/dist/commonjs/index.js.map +1 -1
  279. package/node_modules/foreground-child/dist/commonjs/proxy-signals.d.ts +0 -1
  280. package/node_modules/foreground-child/dist/commonjs/proxy-signals.d.ts.map +1 -1
  281. package/node_modules/foreground-child/dist/commonjs/watchdog.d.ts +0 -1
  282. package/node_modules/foreground-child/dist/commonjs/watchdog.d.ts.map +1 -1
  283. package/node_modules/foreground-child/dist/esm/all-signals.d.ts +0 -1
  284. package/node_modules/foreground-child/dist/esm/all-signals.d.ts.map +1 -1
  285. package/node_modules/foreground-child/dist/esm/index.d.ts +1 -8
  286. package/node_modules/foreground-child/dist/esm/index.d.ts.map +1 -1
  287. package/node_modules/foreground-child/dist/esm/proxy-signals.d.ts +0 -1
  288. package/node_modules/foreground-child/dist/esm/proxy-signals.d.ts.map +1 -1
  289. package/node_modules/foreground-child/dist/esm/watchdog.d.ts +0 -1
  290. package/node_modules/foreground-child/dist/esm/watchdog.d.ts.map +1 -1
  291. package/node_modules/foreground-child/package.json +6 -11
  292. package/node_modules/form-data/lib/form_data.js +24 -22
  293. package/node_modules/form-data/package.json +17 -14
  294. package/node_modules/function-bind/.eslintrc +21 -0
  295. package/node_modules/function-bind/.github/FUNDING.yml +12 -0
  296. package/node_modules/function-bind/.github/SECURITY.md +3 -0
  297. package/node_modules/function-bind/.nycrc +13 -0
  298. package/node_modules/function-bind/CHANGELOG.md +136 -0
  299. package/node_modules/function-bind/LICENSE +20 -0
  300. package/node_modules/function-bind/README.md +46 -0
  301. package/node_modules/function-bind/implementation.js +84 -0
  302. package/node_modules/function-bind/index.js +5 -0
  303. package/node_modules/function-bind/package.json +87 -0
  304. package/node_modules/function-bind/test/.eslintrc +9 -0
  305. package/node_modules/function-bind/test/index.js +252 -0
  306. package/node_modules/get-intrinsic/.eslintrc +42 -0
  307. package/node_modules/get-intrinsic/.github/FUNDING.yml +12 -0
  308. package/node_modules/get-intrinsic/.nycrc +9 -0
  309. package/node_modules/get-intrinsic/CHANGELOG.md +186 -0
  310. package/node_modules/get-intrinsic/LICENSE +21 -0
  311. package/node_modules/get-intrinsic/README.md +71 -0
  312. package/node_modules/get-intrinsic/index.js +378 -0
  313. package/node_modules/get-intrinsic/package.json +97 -0
  314. package/node_modules/get-intrinsic/test/GetIntrinsic.js +274 -0
  315. package/node_modules/get-proto/.eslintrc +10 -0
  316. package/node_modules/get-proto/.github/FUNDING.yml +12 -0
  317. package/node_modules/get-proto/.nycrc +9 -0
  318. package/node_modules/get-proto/CHANGELOG.md +21 -0
  319. package/node_modules/get-proto/LICENSE +21 -0
  320. package/node_modules/get-proto/Object.getPrototypeOf.d.ts +5 -0
  321. package/node_modules/get-proto/Object.getPrototypeOf.js +6 -0
  322. package/node_modules/get-proto/README.md +50 -0
  323. package/node_modules/get-proto/Reflect.getPrototypeOf.d.ts +3 -0
  324. package/node_modules/get-proto/Reflect.getPrototypeOf.js +4 -0
  325. package/node_modules/get-proto/index.d.ts +5 -0
  326. package/node_modules/get-proto/index.js +27 -0
  327. package/node_modules/get-proto/package.json +81 -0
  328. package/node_modules/get-proto/test/index.js +68 -0
  329. package/node_modules/get-proto/tsconfig.json +9 -0
  330. package/node_modules/gopd/.eslintrc +16 -0
  331. package/node_modules/gopd/.github/FUNDING.yml +12 -0
  332. package/node_modules/gopd/CHANGELOG.md +45 -0
  333. package/node_modules/gopd/LICENSE +21 -0
  334. package/node_modules/gopd/README.md +40 -0
  335. package/node_modules/gopd/gOPD.d.ts +1 -0
  336. package/node_modules/gopd/gOPD.js +4 -0
  337. package/node_modules/gopd/index.d.ts +5 -0
  338. package/node_modules/gopd/index.js +15 -0
  339. package/node_modules/gopd/package.json +77 -0
  340. package/node_modules/gopd/test/index.js +36 -0
  341. package/node_modules/gopd/tsconfig.json +9 -0
  342. package/node_modules/has-symbols/.eslintrc +11 -0
  343. package/node_modules/has-symbols/.github/FUNDING.yml +12 -0
  344. package/node_modules/has-symbols/.nycrc +9 -0
  345. package/node_modules/has-symbols/CHANGELOG.md +91 -0
  346. package/node_modules/has-symbols/LICENSE +21 -0
  347. package/node_modules/has-symbols/README.md +46 -0
  348. package/node_modules/has-symbols/index.d.ts +3 -0
  349. package/node_modules/has-symbols/index.js +14 -0
  350. package/node_modules/has-symbols/package.json +111 -0
  351. package/node_modules/has-symbols/shams.d.ts +3 -0
  352. package/node_modules/has-symbols/shams.js +45 -0
  353. package/node_modules/has-symbols/test/index.js +22 -0
  354. package/node_modules/has-symbols/test/shams/core-js.js +29 -0
  355. package/node_modules/has-symbols/test/shams/get-own-property-symbols.js +29 -0
  356. package/node_modules/has-symbols/test/tests.js +58 -0
  357. package/node_modules/has-symbols/tsconfig.json +10 -0
  358. package/node_modules/has-tostringtag/.eslintrc +5 -0
  359. package/node_modules/has-tostringtag/.github/FUNDING.yml +12 -0
  360. package/node_modules/has-tostringtag/.nycrc +13 -0
  361. package/node_modules/has-tostringtag/CHANGELOG.md +42 -0
  362. package/node_modules/has-tostringtag/LICENSE +21 -0
  363. package/node_modules/has-tostringtag/README.md +46 -0
  364. package/node_modules/has-tostringtag/index.d.ts +3 -0
  365. package/node_modules/has-tostringtag/index.js +8 -0
  366. package/node_modules/has-tostringtag/package.json +108 -0
  367. package/node_modules/has-tostringtag/shams.d.ts +3 -0
  368. package/node_modules/has-tostringtag/shams.js +8 -0
  369. package/node_modules/has-tostringtag/test/index.js +21 -0
  370. package/node_modules/has-tostringtag/test/shams/core-js.js +31 -0
  371. package/node_modules/has-tostringtag/test/shams/get-own-property-symbols.js +30 -0
  372. package/node_modules/has-tostringtag/test/tests.js +15 -0
  373. package/node_modules/has-tostringtag/tsconfig.json +49 -0
  374. package/node_modules/hasown/.eslintrc +5 -0
  375. package/node_modules/hasown/.github/FUNDING.yml +12 -0
  376. package/node_modules/hasown/.nycrc +13 -0
  377. package/node_modules/hasown/CHANGELOG.md +40 -0
  378. package/node_modules/hasown/LICENSE +21 -0
  379. package/node_modules/hasown/README.md +40 -0
  380. package/node_modules/hasown/index.d.ts +3 -0
  381. package/node_modules/hasown/index.js +8 -0
  382. package/node_modules/hasown/package.json +92 -0
  383. package/node_modules/hasown/tsconfig.json +6 -0
  384. package/node_modules/js-beautify/README.md +19 -8
  385. package/node_modules/js-beautify/js/lib/beautifier.js +35 -18
  386. package/node_modules/js-beautify/js/lib/beautifier.min.js +1 -1
  387. package/node_modules/js-beautify/js/lib/beautify-html.js +35 -18
  388. package/node_modules/js-beautify/js/lib/beautify.js +4 -0
  389. package/node_modules/js-beautify/js/src/core/templatablepattern.js +4 -0
  390. package/node_modules/js-beautify/js/src/html/beautifier.js +5 -4
  391. package/node_modules/js-beautify/js/src/html/tokenizer.js +26 -14
  392. package/node_modules/js-beautify/package.json +5 -5
  393. package/node_modules/math-intrinsics/.eslintrc +16 -0
  394. package/node_modules/math-intrinsics/.github/FUNDING.yml +12 -0
  395. package/node_modules/math-intrinsics/CHANGELOG.md +24 -0
  396. package/node_modules/math-intrinsics/LICENSE +21 -0
  397. package/node_modules/math-intrinsics/README.md +50 -0
  398. package/node_modules/math-intrinsics/abs.d.ts +1 -0
  399. package/node_modules/math-intrinsics/abs.js +4 -0
  400. package/node_modules/math-intrinsics/constants/maxArrayLength.d.ts +3 -0
  401. package/node_modules/math-intrinsics/constants/maxArrayLength.js +4 -0
  402. package/node_modules/math-intrinsics/constants/maxSafeInteger.d.ts +3 -0
  403. package/node_modules/math-intrinsics/constants/maxSafeInteger.js +5 -0
  404. package/node_modules/math-intrinsics/constants/maxValue.d.ts +3 -0
  405. package/node_modules/math-intrinsics/constants/maxValue.js +5 -0
  406. package/node_modules/math-intrinsics/floor.d.ts +1 -0
  407. package/node_modules/math-intrinsics/floor.js +4 -0
  408. package/node_modules/math-intrinsics/isFinite.d.ts +3 -0
  409. package/node_modules/math-intrinsics/isFinite.js +12 -0
  410. package/node_modules/math-intrinsics/isInteger.d.ts +3 -0
  411. package/node_modules/math-intrinsics/isInteger.js +16 -0
  412. package/node_modules/math-intrinsics/isNaN.d.ts +1 -0
  413. package/node_modules/math-intrinsics/isNaN.js +6 -0
  414. package/node_modules/math-intrinsics/isNegativeZero.d.ts +3 -0
  415. package/node_modules/math-intrinsics/isNegativeZero.js +6 -0
  416. package/node_modules/math-intrinsics/max.d.ts +1 -0
  417. package/node_modules/math-intrinsics/max.js +4 -0
  418. package/node_modules/math-intrinsics/min.d.ts +1 -0
  419. package/node_modules/math-intrinsics/min.js +4 -0
  420. package/node_modules/math-intrinsics/mod.d.ts +3 -0
  421. package/node_modules/math-intrinsics/mod.js +9 -0
  422. package/node_modules/math-intrinsics/package.json +86 -0
  423. package/node_modules/math-intrinsics/pow.d.ts +1 -0
  424. package/node_modules/math-intrinsics/pow.js +4 -0
  425. package/node_modules/math-intrinsics/round.d.ts +1 -0
  426. package/node_modules/math-intrinsics/round.js +4 -0
  427. package/node_modules/math-intrinsics/sign.d.ts +3 -0
  428. package/node_modules/math-intrinsics/sign.js +11 -0
  429. package/node_modules/math-intrinsics/test/index.js +192 -0
  430. package/node_modules/math-intrinsics/tsconfig.json +3 -0
  431. package/node_modules/semver/README.md +14 -4
  432. package/node_modules/semver/bin/semver.js +2 -1
  433. package/node_modules/semver/classes/semver.js +22 -6
  434. package/node_modules/semver/functions/diff.js +5 -12
  435. package/node_modules/semver/internal/re.js +2 -0
  436. package/node_modules/semver/package.json +8 -7
  437. package/package.json +19 -19
  438. package/node_modules/axios/SECURITY.md +0 -6
  439. /package/node_modules/{path-key → cross-spawn/node_modules/path-key}/index.d.ts +0 -0
  440. /package/node_modules/{path-key → cross-spawn/node_modules/path-key}/index.js +0 -0
  441. /package/node_modules/{path-key → cross-spawn/node_modules/path-key}/license +0 -0
  442. /package/node_modules/{path-key → cross-spawn/node_modules/path-key}/package.json +0 -0
  443. /package/node_modules/{path-key → cross-spawn/node_modules/path-key}/readme.md +0 -0
  444. /package/node_modules/{path-scurry/node_modules/lru-cache → lru-cache}/LICENSE +0 -0
  445. /package/node_modules/{path-scurry/node_modules/lru-cache → lru-cache}/README.md +0 -0
  446. /package/node_modules/{path-scurry/node_modules/lru-cache → lru-cache}/dist/commonjs/index.d.ts +0 -0
  447. /package/node_modules/{path-scurry/node_modules/lru-cache → lru-cache}/dist/commonjs/index.d.ts.map +0 -0
  448. /package/node_modules/{path-scurry/node_modules/lru-cache → lru-cache}/dist/commonjs/index.js +0 -0
  449. /package/node_modules/{path-scurry/node_modules/lru-cache → lru-cache}/dist/commonjs/index.js.map +0 -0
  450. /package/node_modules/{path-scurry/node_modules/lru-cache → lru-cache}/dist/commonjs/index.min.js +0 -0
  451. /package/node_modules/{path-scurry/node_modules/lru-cache → lru-cache}/dist/commonjs/index.min.js.map +0 -0
  452. /package/node_modules/{path-scurry/node_modules/lru-cache → lru-cache}/dist/commonjs/package.json +0 -0
  453. /package/node_modules/{path-scurry/node_modules/lru-cache → lru-cache}/dist/esm/index.d.ts +0 -0
  454. /package/node_modules/{path-scurry/node_modules/lru-cache → lru-cache}/dist/esm/index.d.ts.map +0 -0
  455. /package/node_modules/{path-scurry/node_modules/lru-cache → lru-cache}/dist/esm/index.js +0 -0
  456. /package/node_modules/{path-scurry/node_modules/lru-cache → lru-cache}/dist/esm/index.js.map +0 -0
  457. /package/node_modules/{path-scurry/node_modules/lru-cache → lru-cache}/dist/esm/index.min.js +0 -0
  458. /package/node_modules/{path-scurry/node_modules/lru-cache → lru-cache}/dist/esm/index.min.js.map +0 -0
  459. /package/node_modules/{path-scurry/node_modules/lru-cache → lru-cache}/dist/esm/package.json +0 -0
  460. /package/node_modules/{path-scurry/node_modules/lru-cache → lru-cache}/package.json +0 -0
@@ -0,0 +1,136 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [v1.1.2](https://github.com/ljharb/function-bind/compare/v1.1.1...v1.1.2) - 2023-10-12
9
+
10
+ ### Merged
11
+
12
+ - Point to the correct file [`#16`](https://github.com/ljharb/function-bind/pull/16)
13
+
14
+ ### Commits
15
+
16
+ - [Tests] migrate tests to Github Actions [`4f8b57c`](https://github.com/ljharb/function-bind/commit/4f8b57c02f2011fe9ae353d5e74e8745f0988af8)
17
+ - [Tests] remove `jscs` [`90eb2ed`](https://github.com/ljharb/function-bind/commit/90eb2edbeefd5b76cd6c3a482ea3454db169b31f)
18
+ - [meta] update `.gitignore` [`53fcdc3`](https://github.com/ljharb/function-bind/commit/53fcdc371cd66634d6e9b71c836a50f437e89fed)
19
+ - [Tests] up to `node` `v11.10`, `v10.15`, `v9.11`, `v8.15`, `v6.16`, `v4.9`; use `nvm install-latest-npm`; run audit script in tests [`1fe8f6e`](https://github.com/ljharb/function-bind/commit/1fe8f6e9aed0dfa8d8b3cdbd00c7f5ea0cd2b36e)
20
+ - [meta] add `auto-changelog` [`1921fcb`](https://github.com/ljharb/function-bind/commit/1921fcb5b416b63ffc4acad051b6aad5722f777d)
21
+ - [Robustness] remove runtime dependency on all builtins except `.apply` [`f743e61`](https://github.com/ljharb/function-bind/commit/f743e61aa6bb2360358c04d4884c9db853d118b7)
22
+ - Docs: enable badges; update wording [`503cb12`](https://github.com/ljharb/function-bind/commit/503cb12d998b5f91822776c73332c7adcd6355dd)
23
+ - [readme] update badges [`290c5db`](https://github.com/ljharb/function-bind/commit/290c5dbbbda7264efaeb886552a374b869a4bb48)
24
+ - [Tests] switch to nyc for coverage [`ea360ba`](https://github.com/ljharb/function-bind/commit/ea360ba907fc2601ed18d01a3827fa2d3533cdf8)
25
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `tape` [`cae5e9e`](https://github.com/ljharb/function-bind/commit/cae5e9e07a5578dc6df26c03ee22851ce05b943c)
26
+ - [meta] add `funding` field; create FUNDING.yml [`c9f4274`](https://github.com/ljharb/function-bind/commit/c9f4274aa80ea3aae9657a3938fdba41a3b04ca6)
27
+ - [Tests] fix eslint errors from #15 [`f69aaa2`](https://github.com/ljharb/function-bind/commit/f69aaa2beb2fdab4415bfb885760a699d0b9c964)
28
+ - [actions] fix permissions [`99a0cd9`](https://github.com/ljharb/function-bind/commit/99a0cd9f3b5bac223a0d572f081834cd73314be7)
29
+ - [meta] use `npmignore` to autogenerate an npmignore file [`f03b524`](https://github.com/ljharb/function-bind/commit/f03b524ca91f75a109a5d062f029122c86ecd1ae)
30
+ - [Dev Deps] update `@ljharb/eslint‑config`, `eslint`, `tape` [`7af9300`](https://github.com/ljharb/function-bind/commit/7af930023ae2ce7645489532821e4fbbcd7a2280)
31
+ - [Dev Deps] update `eslint`, `@ljharb/eslint-config`, `covert`, `tape` [`64a9127`](https://github.com/ljharb/function-bind/commit/64a9127ab0bd331b93d6572eaf6e9971967fc08c)
32
+ - [Tests] use `aud` instead of `npm audit` [`e75069c`](https://github.com/ljharb/function-bind/commit/e75069c50010a8fcce2a9ce2324934c35fdb4386)
33
+ - [Dev Deps] update `@ljharb/eslint-config`, `aud`, `tape` [`d03555c`](https://github.com/ljharb/function-bind/commit/d03555ca59dea3b71ce710045e4303b9e2619e28)
34
+ - [meta] add `safe-publish-latest` [`9c8f809`](https://github.com/ljharb/function-bind/commit/9c8f8092aed027d7e80c94f517aa892385b64f09)
35
+ - [Dev Deps] update `@ljharb/eslint-config`, `tape` [`baf6893`](https://github.com/ljharb/function-bind/commit/baf6893e27f5b59abe88bc1995e6f6ed1e527397)
36
+ - [meta] create SECURITY.md [`4db1779`](https://github.com/ljharb/function-bind/commit/4db17799f1f28ae294cb95e0081ca2b591c3911b)
37
+ - [Tests] add `npm run audit` [`c8b38ec`](https://github.com/ljharb/function-bind/commit/c8b38ec40ed3f85dabdee40ed4148f1748375bc2)
38
+ - Revert "Point to the correct file" [`05cdf0f`](https://github.com/ljharb/function-bind/commit/05cdf0fa205c6a3c5ba40bbedd1dfa9874f915c9)
39
+
40
+ ## [v1.1.1](https://github.com/ljharb/function-bind/compare/v1.1.0...v1.1.1) - 2017-08-28
41
+
42
+ ### Commits
43
+
44
+ - [Tests] up to `node` `v8`; newer npm breaks on older node; fix scripts [`817f7d2`](https://github.com/ljharb/function-bind/commit/817f7d28470fdbff8ef608d4d565dd4d1430bc5e)
45
+ - [Dev Deps] update `eslint`, `jscs`, `tape`, `@ljharb/eslint-config` [`854288b`](https://github.com/ljharb/function-bind/commit/854288b1b6f5c555f89aceb9eff1152510262084)
46
+ - [Dev Deps] update `tape`, `jscs`, `eslint`, `@ljharb/eslint-config` [`83e639f`](https://github.com/ljharb/function-bind/commit/83e639ff74e6cd6921285bccec22c1bcf72311bd)
47
+ - Only apps should have lockfiles [`5ed97f5`](https://github.com/ljharb/function-bind/commit/5ed97f51235c17774e0832e122abda0f3229c908)
48
+ - Use a SPDX-compliant “license” field. [`5feefea`](https://github.com/ljharb/function-bind/commit/5feefea0dc0193993e83e5df01ded424403a5381)
49
+
50
+ ## [v1.1.0](https://github.com/ljharb/function-bind/compare/v1.0.2...v1.1.0) - 2016-02-14
51
+
52
+ ### Commits
53
+
54
+ - Update `eslint`, `tape`; use my personal shared `eslint` config [`9c9062a`](https://github.com/ljharb/function-bind/commit/9c9062abbe9dd70b59ea2c3a3c3a81f29b457097)
55
+ - Add `npm run eslint` [`dd96c56`](https://github.com/ljharb/function-bind/commit/dd96c56720034a3c1ffee10b8a59a6f7c53e24ad)
56
+ - [New] return the native `bind` when available. [`82186e0`](https://github.com/ljharb/function-bind/commit/82186e03d73e580f95ff167e03f3582bed90ed72)
57
+ - [Dev Deps] update `tape`, `jscs`, `eslint`, `@ljharb/eslint-config` [`a3dd767`](https://github.com/ljharb/function-bind/commit/a3dd76720c795cb7f4586b0544efabf8aa107b8b)
58
+ - Update `eslint` [`3dae2f7`](https://github.com/ljharb/function-bind/commit/3dae2f7423de30a2d20313ddb1edc19660142fe9)
59
+ - Update `tape`, `covert`, `jscs` [`a181eee`](https://github.com/ljharb/function-bind/commit/a181eee0cfa24eb229c6e843a971f36e060a2f6a)
60
+ - [Tests] up to `node` `v5.6`, `v4.3` [`964929a`](https://github.com/ljharb/function-bind/commit/964929a6a4ddb36fb128de2bcc20af5e4f22e1ed)
61
+ - Test up to `io.js` `v2.1` [`2be7310`](https://github.com/ljharb/function-bind/commit/2be7310f2f74886a7124ca925be411117d41d5ea)
62
+ - Update `tape`, `jscs`, `eslint`, `@ljharb/eslint-config` [`45f3d68`](https://github.com/ljharb/function-bind/commit/45f3d6865c6ca93726abcef54febe009087af101)
63
+ - [Dev Deps] update `tape`, `jscs` [`6e1340d`](https://github.com/ljharb/function-bind/commit/6e1340d94642deaecad3e717825db641af4f8b1f)
64
+ - [Tests] up to `io.js` `v3.3`, `node` `v4.1` [`d9bad2b`](https://github.com/ljharb/function-bind/commit/d9bad2b778b1b3a6dd2876087b88b3acf319f8cc)
65
+ - Update `eslint` [`935590c`](https://github.com/ljharb/function-bind/commit/935590caa024ab356102e4858e8fc315b2ccc446)
66
+ - [Dev Deps] update `jscs`, `eslint`, `@ljharb/eslint-config` [`8c9a1ef`](https://github.com/ljharb/function-bind/commit/8c9a1efd848e5167887aa8501857a0940a480c57)
67
+ - Test on `io.js` `v2.2` [`9a3a38c`](https://github.com/ljharb/function-bind/commit/9a3a38c92013aed6e108666e7bd40969b84ac86e)
68
+ - Run `travis-ci` tests on `iojs` and `node` v0.12; speed up builds; allow 0.8 failures. [`69afc26`](https://github.com/ljharb/function-bind/commit/69afc2617405b147dd2a8d8ae73ca9e9283f18b4)
69
+ - [Dev Deps] Update `tape`, `eslint` [`36c1be0`](https://github.com/ljharb/function-bind/commit/36c1be0ab12b45fe5df6b0fdb01a5d5137fd0115)
70
+ - Update `tape`, `jscs` [`98d8303`](https://github.com/ljharb/function-bind/commit/98d8303cd5ca1c6b8f985469f86b0d44d7d45f6e)
71
+ - Update `jscs` [`9633a4e`](https://github.com/ljharb/function-bind/commit/9633a4e9fbf82051c240855166e468ba8ba0846f)
72
+ - Update `tape`, `jscs` [`c80ef0f`](https://github.com/ljharb/function-bind/commit/c80ef0f46efc9791e76fa50de4414092ac147831)
73
+ - Test up to `io.js` `v3.0` [`7e2c853`](https://github.com/ljharb/function-bind/commit/7e2c8537d52ab9cf5a655755561d8917684c0df4)
74
+ - Test on `io.js` `v2.4` [`5a199a2`](https://github.com/ljharb/function-bind/commit/5a199a27ba46795ba5eaf0845d07d4b8232895c9)
75
+ - Test on `io.js` `v2.3` [`a511b88`](https://github.com/ljharb/function-bind/commit/a511b8896de0bddf3b56862daa416c701f4d0453)
76
+ - Fixing a typo from 822b4e1938db02dc9584aa434fd3a45cb20caf43 [`732d6b6`](https://github.com/ljharb/function-bind/commit/732d6b63a9b33b45230e630dbcac7a10855d3266)
77
+ - Update `jscs` [`da52a48`](https://github.com/ljharb/function-bind/commit/da52a4886c06d6490f46ae30b15e4163ba08905d)
78
+ - Lock covert to v1.0.0. [`d6150fd`](https://github.com/ljharb/function-bind/commit/d6150fda1e6f486718ebdeff823333d9e48e7430)
79
+
80
+ ## [v1.0.2](https://github.com/ljharb/function-bind/compare/v1.0.1...v1.0.2) - 2014-10-04
81
+
82
+ ## [v1.0.1](https://github.com/ljharb/function-bind/compare/v1.0.0...v1.0.1) - 2014-10-03
83
+
84
+ ### Merged
85
+
86
+ - make CI build faster [`#3`](https://github.com/ljharb/function-bind/pull/3)
87
+
88
+ ### Commits
89
+
90
+ - Using my standard jscs.json [`d8ee94c`](https://github.com/ljharb/function-bind/commit/d8ee94c993eff0a84cf5744fe6a29627f5cffa1a)
91
+ - Adding `npm run lint` [`7571ab7`](https://github.com/ljharb/function-bind/commit/7571ab7dfdbd99b25a1dbb2d232622bd6f4f9c10)
92
+ - Using consistent indentation [`e91a1b1`](https://github.com/ljharb/function-bind/commit/e91a1b13a61e99ec1e530e299b55508f74218a95)
93
+ - Updating jscs [`7e17892`](https://github.com/ljharb/function-bind/commit/7e1789284bc629bc9c1547a61c9b227bbd8c7a65)
94
+ - Using consistent quotes [`c50b57f`](https://github.com/ljharb/function-bind/commit/c50b57fcd1c5ec38320979c837006069ebe02b77)
95
+ - Adding keywords [`cb94631`](https://github.com/ljharb/function-bind/commit/cb946314eed35f21186a25fb42fc118772f9ee00)
96
+ - Directly export a function expression instead of using a declaration, and relying on hoisting. [`5a33c5f`](https://github.com/ljharb/function-bind/commit/5a33c5f45642de180e0d207110bf7d1843ceb87c)
97
+ - Naming npm URL and badge in README; use SVG [`2aef8fc`](https://github.com/ljharb/function-bind/commit/2aef8fcb79d54e63a58ae557c4e60949e05d5e16)
98
+ - Naming deps URLs in README [`04228d7`](https://github.com/ljharb/function-bind/commit/04228d766670ee45ca24e98345c1f6a7621065b5)
99
+ - Naming travis-ci URLs in README; using SVG [`62c810c`](https://github.com/ljharb/function-bind/commit/62c810c2f54ced956cd4d4ab7b793055addfe36e)
100
+ - Make sure functions are invoked correctly (also passing coverage tests) [`2b289b4`](https://github.com/ljharb/function-bind/commit/2b289b4dfbf037ffcfa4dc95eb540f6165e9e43a)
101
+ - Removing the strict mode pragmas; they make tests fail. [`1aa701d`](https://github.com/ljharb/function-bind/commit/1aa701d199ddc3782476e8f7eef82679be97b845)
102
+ - Adding myself as a contributor [`85fd57b`](https://github.com/ljharb/function-bind/commit/85fd57b0860e5a7af42de9a287f3f265fc6d72fc)
103
+ - Adding strict mode pragmas [`915b08e`](https://github.com/ljharb/function-bind/commit/915b08e084c86a722eafe7245e21db74aa21ca4c)
104
+ - Adding devDeps URLs to README [`4ccc731`](https://github.com/ljharb/function-bind/commit/4ccc73112c1769859e4ca3076caf4086b3cba2cd)
105
+ - Fixing the description. [`a7a472c`](https://github.com/ljharb/function-bind/commit/a7a472cf649af515c635cf560fc478fbe48999c8)
106
+ - Using a function expression instead of a function declaration. [`b5d3e4e`](https://github.com/ljharb/function-bind/commit/b5d3e4ea6aaffc63888953eeb1fbc7ff45f1fa14)
107
+ - Updating tape [`f086be6`](https://github.com/ljharb/function-bind/commit/f086be6029fb56dde61a258c1340600fa174d1e0)
108
+ - Updating jscs [`5f9bdb3`](https://github.com/ljharb/function-bind/commit/5f9bdb375ab13ba48f30852aab94029520c54d71)
109
+ - Updating jscs [`9b409ba`](https://github.com/ljharb/function-bind/commit/9b409ba6118e23395a4e5d83ef39152aab9d3bfc)
110
+ - Run coverage as part of tests. [`8e1b6d4`](https://github.com/ljharb/function-bind/commit/8e1b6d459f047d1bd4fee814e01247c984c80bd0)
111
+ - Run linter as part of tests [`c1ca83f`](https://github.com/ljharb/function-bind/commit/c1ca83f832df94587d09e621beba682fabfaa987)
112
+ - Updating covert [`701e837`](https://github.com/ljharb/function-bind/commit/701e83774b57b4d3ef631e1948143f43a72f4bb9)
113
+
114
+ ## [v1.0.0](https://github.com/ljharb/function-bind/compare/v0.2.0...v1.0.0) - 2014-08-09
115
+
116
+ ### Commits
117
+
118
+ - Make sure old and unstable nodes don't fail Travis [`27adca3`](https://github.com/ljharb/function-bind/commit/27adca34a4ab6ad67b6dfde43942a1b103ce4d75)
119
+ - Fixing an issue when the bound function is called as a constructor in ES3. [`e20122d`](https://github.com/ljharb/function-bind/commit/e20122d267d92ce553859b280cbbea5d27c07731)
120
+ - Adding `npm run coverage` [`a2e29c4`](https://github.com/ljharb/function-bind/commit/a2e29c4ecaef9e2f6cd1603e868c139073375502)
121
+ - Updating tape [`b741168`](https://github.com/ljharb/function-bind/commit/b741168b12b235b1717ff696087645526b69213c)
122
+ - Upgrading tape [`63631a0`](https://github.com/ljharb/function-bind/commit/63631a04c7fbe97cc2fa61829cc27246d6986f74)
123
+ - Updating tape [`363cb46`](https://github.com/ljharb/function-bind/commit/363cb46dafb23cb3e347729a22f9448051d78464)
124
+
125
+ ## v0.2.0 - 2014-03-23
126
+
127
+ ### Commits
128
+
129
+ - Updating test coverage to match es5-shim. [`aa94d44`](https://github.com/ljharb/function-bind/commit/aa94d44b8f9d7f69f10e060db7709aa7a694e5d4)
130
+ - initial [`942ee07`](https://github.com/ljharb/function-bind/commit/942ee07e94e542d91798137bc4b80b926137e066)
131
+ - Setting the bound function's length properly. [`079f46a`](https://github.com/ljharb/function-bind/commit/079f46a2d3515b7c0b308c2c13fceb641f97ca25)
132
+ - Ensuring that some older browsers will throw when given a regex. [`36ac55b`](https://github.com/ljharb/function-bind/commit/36ac55b87f460d4330253c92870aa26fbfe8227f)
133
+ - Removing npm scripts that don't have dependencies [`9d2be60`](https://github.com/ljharb/function-bind/commit/9d2be600002cb8bc8606f8f3585ad3e05868c750)
134
+ - Updating tape [`297a4ac`](https://github.com/ljharb/function-bind/commit/297a4acc5464db381940aafb194d1c88f4e678f3)
135
+ - Skipping length tests for now. [`d9891ea`](https://github.com/ljharb/function-bind/commit/d9891ea4d2aaffa69f408339cdd61ff740f70565)
136
+ - don't take my tea [`dccd930`](https://github.com/ljharb/function-bind/commit/dccd930bfd60ea10cb178d28c97550c3bc8c1e07)
@@ -0,0 +1,20 @@
1
+ Copyright (c) 2013 Raynos.
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ of this software and associated documentation files (the "Software"), to deal
5
+ in the Software without restriction, including without limitation the rights
6
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
+ copies of the Software, and to permit persons to whom the Software is
8
+ furnished to do so, subject to the following conditions:
9
+
10
+ The above copyright notice and this permission notice shall be included in
11
+ all copies or substantial portions of the Software.
12
+
13
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
+ THE SOFTWARE.
20
+
@@ -0,0 +1,46 @@
1
+ # function-bind <sup>[![Version Badge][npm-version-svg]][package-url]</sup>
2
+
3
+ [![github actions][actions-image]][actions-url]
4
+ <!--[![coverage][codecov-image]][codecov-url]-->
5
+ [![dependency status][deps-svg]][deps-url]
6
+ [![dev dependency status][dev-deps-svg]][dev-deps-url]
7
+ [![License][license-image]][license-url]
8
+ [![Downloads][downloads-image]][downloads-url]
9
+
10
+ [![npm badge][npm-badge-png]][package-url]
11
+
12
+ Implementation of function.prototype.bind
13
+
14
+ Old versions of phantomjs, Internet Explorer < 9, and node < 0.6 don't support `Function.prototype.bind`.
15
+
16
+ ## Example
17
+
18
+ ```js
19
+ Function.prototype.bind = require("function-bind")
20
+ ```
21
+
22
+ ## Installation
23
+
24
+ `npm install function-bind`
25
+
26
+ ## Contributors
27
+
28
+ - Raynos
29
+
30
+ ## MIT Licenced
31
+
32
+ [package-url]: https://npmjs.org/package/function-bind
33
+ [npm-version-svg]: https://versionbadg.es/Raynos/function-bind.svg
34
+ [deps-svg]: https://david-dm.org/Raynos/function-bind.svg
35
+ [deps-url]: https://david-dm.org/Raynos/function-bind
36
+ [dev-deps-svg]: https://david-dm.org/Raynos/function-bind/dev-status.svg
37
+ [dev-deps-url]: https://david-dm.org/Raynos/function-bind#info=devDependencies
38
+ [npm-badge-png]: https://nodei.co/npm/function-bind.png?downloads=true&stars=true
39
+ [license-image]: https://img.shields.io/npm/l/function-bind.svg
40
+ [license-url]: LICENSE
41
+ [downloads-image]: https://img.shields.io/npm/dm/function-bind.svg
42
+ [downloads-url]: https://npm-stat.com/charts.html?package=function-bind
43
+ [codecov-image]: https://codecov.io/gh/Raynos/function-bind/branch/main/graphs/badge.svg
44
+ [codecov-url]: https://app.codecov.io/gh/Raynos/function-bind/
45
+ [actions-image]: https://img.shields.io/endpoint?url=https://github-actions-badge-u3jn4tfpocch.runkit.sh/Raynos/function-bind
46
+ [actions-url]: https://github.com/Raynos/function-bind/actions
@@ -0,0 +1,84 @@
1
+ 'use strict';
2
+
3
+ /* eslint no-invalid-this: 1 */
4
+
5
+ var ERROR_MESSAGE = 'Function.prototype.bind called on incompatible ';
6
+ var toStr = Object.prototype.toString;
7
+ var max = Math.max;
8
+ var funcType = '[object Function]';
9
+
10
+ var concatty = function concatty(a, b) {
11
+ var arr = [];
12
+
13
+ for (var i = 0; i < a.length; i += 1) {
14
+ arr[i] = a[i];
15
+ }
16
+ for (var j = 0; j < b.length; j += 1) {
17
+ arr[j + a.length] = b[j];
18
+ }
19
+
20
+ return arr;
21
+ };
22
+
23
+ var slicy = function slicy(arrLike, offset) {
24
+ var arr = [];
25
+ for (var i = offset || 0, j = 0; i < arrLike.length; i += 1, j += 1) {
26
+ arr[j] = arrLike[i];
27
+ }
28
+ return arr;
29
+ };
30
+
31
+ var joiny = function (arr, joiner) {
32
+ var str = '';
33
+ for (var i = 0; i < arr.length; i += 1) {
34
+ str += arr[i];
35
+ if (i + 1 < arr.length) {
36
+ str += joiner;
37
+ }
38
+ }
39
+ return str;
40
+ };
41
+
42
+ module.exports = function bind(that) {
43
+ var target = this;
44
+ if (typeof target !== 'function' || toStr.apply(target) !== funcType) {
45
+ throw new TypeError(ERROR_MESSAGE + target);
46
+ }
47
+ var args = slicy(arguments, 1);
48
+
49
+ var bound;
50
+ var binder = function () {
51
+ if (this instanceof bound) {
52
+ var result = target.apply(
53
+ this,
54
+ concatty(args, arguments)
55
+ );
56
+ if (Object(result) === result) {
57
+ return result;
58
+ }
59
+ return this;
60
+ }
61
+ return target.apply(
62
+ that,
63
+ concatty(args, arguments)
64
+ );
65
+
66
+ };
67
+
68
+ var boundLength = max(0, target.length - args.length);
69
+ var boundArgs = [];
70
+ for (var i = 0; i < boundLength; i++) {
71
+ boundArgs[i] = '$' + i;
72
+ }
73
+
74
+ bound = Function('binder', 'return function (' + joiny(boundArgs, ',') + '){ return binder.apply(this,arguments); }')(binder);
75
+
76
+ if (target.prototype) {
77
+ var Empty = function Empty() {};
78
+ Empty.prototype = target.prototype;
79
+ bound.prototype = new Empty();
80
+ Empty.prototype = null;
81
+ }
82
+
83
+ return bound;
84
+ };
@@ -0,0 +1,5 @@
1
+ 'use strict';
2
+
3
+ var implementation = require('./implementation');
4
+
5
+ module.exports = Function.prototype.bind || implementation;
@@ -0,0 +1,87 @@
1
+ {
2
+ "name": "function-bind",
3
+ "version": "1.1.2",
4
+ "description": "Implementation of Function.prototype.bind",
5
+ "keywords": [
6
+ "function",
7
+ "bind",
8
+ "shim",
9
+ "es5"
10
+ ],
11
+ "author": "Raynos <raynos2@gmail.com>",
12
+ "repository": {
13
+ "type": "git",
14
+ "url": "https://github.com/Raynos/function-bind.git"
15
+ },
16
+ "funding": {
17
+ "url": "https://github.com/sponsors/ljharb"
18
+ },
19
+ "main": "index",
20
+ "homepage": "https://github.com/Raynos/function-bind",
21
+ "contributors": [
22
+ {
23
+ "name": "Raynos"
24
+ },
25
+ {
26
+ "name": "Jordan Harband",
27
+ "url": "https://github.com/ljharb"
28
+ }
29
+ ],
30
+ "bugs": {
31
+ "url": "https://github.com/Raynos/function-bind/issues",
32
+ "email": "raynos2@gmail.com"
33
+ },
34
+ "devDependencies": {
35
+ "@ljharb/eslint-config": "^21.1.0",
36
+ "aud": "^2.0.3",
37
+ "auto-changelog": "^2.4.0",
38
+ "eslint": "=8.8.0",
39
+ "in-publish": "^2.0.1",
40
+ "npmignore": "^0.3.0",
41
+ "nyc": "^10.3.2",
42
+ "safe-publish-latest": "^2.0.0",
43
+ "tape": "^5.7.1"
44
+ },
45
+ "license": "MIT",
46
+ "scripts": {
47
+ "prepublishOnly": "safe-publish-latest",
48
+ "prepublish": "not-in-publish || npm run prepublishOnly",
49
+ "prepack": "npmignore --auto --commentLines=autogenerated",
50
+ "pretest": "npm run lint",
51
+ "test": "npm run tests-only",
52
+ "posttest": "aud --production",
53
+ "tests-only": "nyc tape 'test/**/*.js'",
54
+ "lint": "eslint --ext=js,mjs .",
55
+ "version": "auto-changelog && git add CHANGELOG.md",
56
+ "postversion": "auto-changelog && git add CHANGELOG.md && git commit --no-edit --amend && git tag -f \"v$(node -e \"console.log(require('./package.json').version)\")\""
57
+ },
58
+ "testling": {
59
+ "files": "test/index.js",
60
+ "browsers": [
61
+ "ie/8..latest",
62
+ "firefox/16..latest",
63
+ "firefox/nightly",
64
+ "chrome/22..latest",
65
+ "chrome/canary",
66
+ "opera/12..latest",
67
+ "opera/next",
68
+ "safari/5.1..latest",
69
+ "ipad/6.0..latest",
70
+ "iphone/6.0..latest",
71
+ "android-browser/4.2..latest"
72
+ ]
73
+ },
74
+ "auto-changelog": {
75
+ "output": "CHANGELOG.md",
76
+ "template": "keepachangelog",
77
+ "unreleased": false,
78
+ "commitLimit": false,
79
+ "backfillLimit": false,
80
+ "hideCredit": true
81
+ },
82
+ "publishConfig": {
83
+ "ignore": [
84
+ ".github/workflows"
85
+ ]
86
+ }
87
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "rules": {
3
+ "array-bracket-newline": 0,
4
+ "array-element-newline": 0,
5
+ "max-statements-per-line": [2, { "max": 2 }],
6
+ "no-invalid-this": 0,
7
+ "no-magic-numbers": 0,
8
+ }
9
+ }
@@ -0,0 +1,252 @@
1
+ // jscs:disable requireUseStrict
2
+
3
+ var test = require('tape');
4
+
5
+ var functionBind = require('../implementation');
6
+ var getCurrentContext = function () { return this; };
7
+
8
+ test('functionBind is a function', function (t) {
9
+ t.equal(typeof functionBind, 'function');
10
+ t.end();
11
+ });
12
+
13
+ test('non-functions', function (t) {
14
+ var nonFunctions = [true, false, [], {}, 42, 'foo', NaN, /a/g];
15
+ t.plan(nonFunctions.length);
16
+ for (var i = 0; i < nonFunctions.length; ++i) {
17
+ try { functionBind.call(nonFunctions[i]); } catch (ex) {
18
+ t.ok(ex instanceof TypeError, 'throws when given ' + String(nonFunctions[i]));
19
+ }
20
+ }
21
+ t.end();
22
+ });
23
+
24
+ test('without a context', function (t) {
25
+ t.test('binds properly', function (st) {
26
+ var args, context;
27
+ var namespace = {
28
+ func: functionBind.call(function () {
29
+ args = Array.prototype.slice.call(arguments);
30
+ context = this;
31
+ })
32
+ };
33
+ namespace.func(1, 2, 3);
34
+ st.deepEqual(args, [1, 2, 3]);
35
+ st.equal(context, getCurrentContext.call());
36
+ st.end();
37
+ });
38
+
39
+ t.test('binds properly, and still supplies bound arguments', function (st) {
40
+ var args, context;
41
+ var namespace = {
42
+ func: functionBind.call(function () {
43
+ args = Array.prototype.slice.call(arguments);
44
+ context = this;
45
+ }, undefined, 1, 2, 3)
46
+ };
47
+ namespace.func(4, 5, 6);
48
+ st.deepEqual(args, [1, 2, 3, 4, 5, 6]);
49
+ st.equal(context, getCurrentContext.call());
50
+ st.end();
51
+ });
52
+
53
+ t.test('returns properly', function (st) {
54
+ var args;
55
+ var namespace = {
56
+ func: functionBind.call(function () {
57
+ args = Array.prototype.slice.call(arguments);
58
+ return this;
59
+ }, null)
60
+ };
61
+ var context = namespace.func(1, 2, 3);
62
+ st.equal(context, getCurrentContext.call(), 'returned context is namespaced context');
63
+ st.deepEqual(args, [1, 2, 3], 'passed arguments are correct');
64
+ st.end();
65
+ });
66
+
67
+ t.test('returns properly with bound arguments', function (st) {
68
+ var args;
69
+ var namespace = {
70
+ func: functionBind.call(function () {
71
+ args = Array.prototype.slice.call(arguments);
72
+ return this;
73
+ }, null, 1, 2, 3)
74
+ };
75
+ var context = namespace.func(4, 5, 6);
76
+ st.equal(context, getCurrentContext.call(), 'returned context is namespaced context');
77
+ st.deepEqual(args, [1, 2, 3, 4, 5, 6], 'passed arguments are correct');
78
+ st.end();
79
+ });
80
+
81
+ t.test('called as a constructor', function (st) {
82
+ var thunkify = function (value) {
83
+ return function () { return value; };
84
+ };
85
+ st.test('returns object value', function (sst) {
86
+ var expectedReturnValue = [1, 2, 3];
87
+ var Constructor = functionBind.call(thunkify(expectedReturnValue), null);
88
+ var result = new Constructor();
89
+ sst.equal(result, expectedReturnValue);
90
+ sst.end();
91
+ });
92
+
93
+ st.test('does not return primitive value', function (sst) {
94
+ var Constructor = functionBind.call(thunkify(42), null);
95
+ var result = new Constructor();
96
+ sst.notEqual(result, 42);
97
+ sst.end();
98
+ });
99
+
100
+ st.test('object from bound constructor is instance of original and bound constructor', function (sst) {
101
+ var A = function (x) {
102
+ this.name = x || 'A';
103
+ };
104
+ var B = functionBind.call(A, null, 'B');
105
+
106
+ var result = new B();
107
+ sst.ok(result instanceof B, 'result is instance of bound constructor');
108
+ sst.ok(result instanceof A, 'result is instance of original constructor');
109
+ sst.end();
110
+ });
111
+
112
+ st.end();
113
+ });
114
+
115
+ t.end();
116
+ });
117
+
118
+ test('with a context', function (t) {
119
+ t.test('with no bound arguments', function (st) {
120
+ var args, context;
121
+ var boundContext = {};
122
+ var namespace = {
123
+ func: functionBind.call(function () {
124
+ args = Array.prototype.slice.call(arguments);
125
+ context = this;
126
+ }, boundContext)
127
+ };
128
+ namespace.func(1, 2, 3);
129
+ st.equal(context, boundContext, 'binds a context properly');
130
+ st.deepEqual(args, [1, 2, 3], 'supplies passed arguments');
131
+ st.end();
132
+ });
133
+
134
+ t.test('with bound arguments', function (st) {
135
+ var args, context;
136
+ var boundContext = {};
137
+ var namespace = {
138
+ func: functionBind.call(function () {
139
+ args = Array.prototype.slice.call(arguments);
140
+ context = this;
141
+ }, boundContext, 1, 2, 3)
142
+ };
143
+ namespace.func(4, 5, 6);
144
+ st.equal(context, boundContext, 'binds a context properly');
145
+ st.deepEqual(args, [1, 2, 3, 4, 5, 6], 'supplies bound and passed arguments');
146
+ st.end();
147
+ });
148
+
149
+ t.test('returns properly', function (st) {
150
+ var boundContext = {};
151
+ var args;
152
+ var namespace = {
153
+ func: functionBind.call(function () {
154
+ args = Array.prototype.slice.call(arguments);
155
+ return this;
156
+ }, boundContext)
157
+ };
158
+ var context = namespace.func(1, 2, 3);
159
+ st.equal(context, boundContext, 'returned context is bound context');
160
+ st.notEqual(context, getCurrentContext.call(), 'returned context is not lexical context');
161
+ st.deepEqual(args, [1, 2, 3], 'passed arguments are correct');
162
+ st.end();
163
+ });
164
+
165
+ t.test('returns properly with bound arguments', function (st) {
166
+ var boundContext = {};
167
+ var args;
168
+ var namespace = {
169
+ func: functionBind.call(function () {
170
+ args = Array.prototype.slice.call(arguments);
171
+ return this;
172
+ }, boundContext, 1, 2, 3)
173
+ };
174
+ var context = namespace.func(4, 5, 6);
175
+ st.equal(context, boundContext, 'returned context is bound context');
176
+ st.notEqual(context, getCurrentContext.call(), 'returned context is not lexical context');
177
+ st.deepEqual(args, [1, 2, 3, 4, 5, 6], 'passed arguments are correct');
178
+ st.end();
179
+ });
180
+
181
+ t.test('passes the correct arguments when called as a constructor', function (st) {
182
+ var expected = { name: 'Correct' };
183
+ var namespace = {
184
+ Func: functionBind.call(function (arg) {
185
+ return arg;
186
+ }, { name: 'Incorrect' })
187
+ };
188
+ var returned = new namespace.Func(expected);
189
+ st.equal(returned, expected, 'returns the right arg when called as a constructor');
190
+ st.end();
191
+ });
192
+
193
+ t.test('has the new instance\'s context when called as a constructor', function (st) {
194
+ var actualContext;
195
+ var expectedContext = { foo: 'bar' };
196
+ var namespace = {
197
+ Func: functionBind.call(function () {
198
+ actualContext = this;
199
+ }, expectedContext)
200
+ };
201
+ var result = new namespace.Func();
202
+ st.equal(result instanceof namespace.Func, true);
203
+ st.notEqual(actualContext, expectedContext);
204
+ st.end();
205
+ });
206
+
207
+ t.end();
208
+ });
209
+
210
+ test('bound function length', function (t) {
211
+ t.test('sets a correct length without thisArg', function (st) {
212
+ var subject = functionBind.call(function (a, b, c) { return a + b + c; });
213
+ st.equal(subject.length, 3);
214
+ st.equal(subject(1, 2, 3), 6);
215
+ st.end();
216
+ });
217
+
218
+ t.test('sets a correct length with thisArg', function (st) {
219
+ var subject = functionBind.call(function (a, b, c) { return a + b + c; }, {});
220
+ st.equal(subject.length, 3);
221
+ st.equal(subject(1, 2, 3), 6);
222
+ st.end();
223
+ });
224
+
225
+ t.test('sets a correct length without thisArg and first argument', function (st) {
226
+ var subject = functionBind.call(function (a, b, c) { return a + b + c; }, undefined, 1);
227
+ st.equal(subject.length, 2);
228
+ st.equal(subject(2, 3), 6);
229
+ st.end();
230
+ });
231
+
232
+ t.test('sets a correct length with thisArg and first argument', function (st) {
233
+ var subject = functionBind.call(function (a, b, c) { return a + b + c; }, {}, 1);
234
+ st.equal(subject.length, 2);
235
+ st.equal(subject(2, 3), 6);
236
+ st.end();
237
+ });
238
+
239
+ t.test('sets a correct length without thisArg and too many arguments', function (st) {
240
+ var subject = functionBind.call(function (a, b, c) { return a + b + c; }, undefined, 1, 2, 3, 4);
241
+ st.equal(subject.length, 0);
242
+ st.equal(subject(), 6);
243
+ st.end();
244
+ });
245
+
246
+ t.test('sets a correct length with thisArg and too many arguments', function (st) {
247
+ var subject = functionBind.call(function (a, b, c) { return a + b + c; }, {}, 1, 2, 3, 4);
248
+ st.equal(subject.length, 0);
249
+ st.equal(subject(), 6);
250
+ st.end();
251
+ });
252
+ });