isomorfeus-preact 10.5.6 → 10.5.10

Sign up to get free protection for your applications and to get access to all the features.
Files changed (928) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +28 -1
  3. data/lib/isomorfeus/preact/imports.rb +0 -7
  4. data/lib/isomorfeus-preact.rb +4 -1
  5. data/lib/lucid_app/context.rb +12 -12
  6. data/lib/nano_css.rb +464 -0
  7. data/lib/preact/version.rb +1 -1
  8. data/node_modules/.package-lock.json +6 -236
  9. data/node_modules/preact/compat/dist/compat.js +1 -1
  10. data/node_modules/preact/compat/dist/compat.js.map +1 -1
  11. data/node_modules/preact/compat/dist/compat.mjs +1 -1
  12. data/node_modules/preact/compat/dist/compat.mjs.map +1 -1
  13. data/node_modules/preact/compat/dist/compat.module.js +1 -1
  14. data/node_modules/preact/compat/dist/compat.module.js.map +1 -1
  15. data/node_modules/preact/compat/dist/compat.umd.js +1 -1
  16. data/node_modules/preact/compat/dist/compat.umd.js.map +1 -1
  17. data/node_modules/preact/compat/src/index.d.ts +1 -1
  18. data/node_modules/preact/compat/src/render.js +10 -3
  19. data/node_modules/preact/debug/dist/debug.js.map +1 -1
  20. data/node_modules/preact/debug/dist/debug.mjs.map +1 -1
  21. data/node_modules/preact/debug/dist/debug.module.js.map +1 -1
  22. data/node_modules/preact/debug/dist/debug.umd.js.map +1 -1
  23. data/node_modules/preact/devtools/dist/devtools.js +1 -1
  24. data/node_modules/preact/devtools/dist/devtools.js.map +1 -1
  25. data/node_modules/preact/devtools/dist/devtools.mjs +1 -1
  26. data/node_modules/preact/devtools/dist/devtools.mjs.map +1 -1
  27. data/node_modules/preact/devtools/dist/devtools.module.js +1 -1
  28. data/node_modules/preact/devtools/dist/devtools.module.js.map +1 -1
  29. data/node_modules/preact/devtools/dist/devtools.umd.js +1 -1
  30. data/node_modules/preact/devtools/dist/devtools.umd.js.map +1 -1
  31. data/node_modules/preact/devtools/src/devtools.js +1 -1
  32. data/node_modules/preact/dist/index.d.ts +1295 -0
  33. data/node_modules/preact/dist/preact.js +1 -1
  34. data/node_modules/preact/dist/preact.js.map +1 -1
  35. data/node_modules/preact/dist/preact.min.js +1 -1
  36. data/node_modules/preact/dist/preact.min.js.map +1 -1
  37. data/node_modules/preact/dist/preact.mjs +1 -1
  38. data/node_modules/preact/dist/preact.mjs.map +1 -1
  39. data/node_modules/preact/dist/preact.module.js +1 -1
  40. data/node_modules/preact/dist/preact.module.js.map +1 -1
  41. data/node_modules/preact/dist/preact.umd.js +1 -1
  42. data/node_modules/preact/dist/preact.umd.js.map +1 -1
  43. data/node_modules/preact/hooks/dist/hooks.js +1 -1
  44. data/node_modules/preact/hooks/dist/hooks.js.map +1 -1
  45. data/node_modules/preact/hooks/dist/hooks.mjs +1 -1
  46. data/node_modules/preact/hooks/dist/hooks.mjs.map +1 -1
  47. data/node_modules/preact/hooks/dist/hooks.module.js +1 -1
  48. data/node_modules/preact/hooks/dist/hooks.module.js.map +1 -1
  49. data/node_modules/preact/hooks/dist/hooks.umd.js +1 -1
  50. data/node_modules/preact/hooks/dist/hooks.umd.js.map +1 -1
  51. data/node_modules/preact/hooks/src/index.js +1 -8
  52. data/node_modules/preact/jsx-runtime/dist/jsxRuntime.mjs.map +1 -0
  53. data/node_modules/preact/package.json +8 -4
  54. data/node_modules/preact/src/create-element.js +2 -1
  55. data/node_modules/preact/src/diff/children.js +7 -19
  56. data/node_modules/preact/src/jsx.d.ts +45 -2
  57. data/node_modules/preact/test-utils/dist/testUtils.mjs.map +1 -1
  58. data/node_modules/wouter-preact/cjs/index.js +1 -1
  59. data/node_modules/wouter-preact/cjs/use-location.js +6 -6
  60. data/node_modules/wouter-preact/index.js +1 -1
  61. data/node_modules/wouter-preact/package.json +1 -1
  62. data/node_modules/wouter-preact/use-location.js +6 -6
  63. data/package.json +3 -4
  64. metadata +27 -888
  65. data/node_modules/.bin/loose-envify +0 -12
  66. data/node_modules/.bin/loose-envify.cmd +0 -17
  67. data/node_modules/.bin/loose-envify.ps1 +0 -28
  68. data/node_modules/@babel/runtime/LICENSE +0 -22
  69. data/node_modules/@babel/runtime/README.md +0 -19
  70. data/node_modules/@babel/runtime/helpers/AsyncGenerator.js +0 -99
  71. data/node_modules/@babel/runtime/helpers/AwaitValue.js +0 -6
  72. data/node_modules/@babel/runtime/helpers/applyDecoratedDescriptor.js +0 -31
  73. data/node_modules/@babel/runtime/helpers/arrayLikeToArray.js +0 -12
  74. data/node_modules/@babel/runtime/helpers/arrayWithHoles.js +0 -6
  75. data/node_modules/@babel/runtime/helpers/arrayWithoutHoles.js +0 -8
  76. data/node_modules/@babel/runtime/helpers/assertThisInitialized.js +0 -10
  77. data/node_modules/@babel/runtime/helpers/asyncGeneratorDelegate.js +0 -57
  78. data/node_modules/@babel/runtime/helpers/asyncIterator.js +0 -16
  79. data/node_modules/@babel/runtime/helpers/asyncToGenerator.js +0 -38
  80. data/node_modules/@babel/runtime/helpers/awaitAsyncGenerator.js +0 -8
  81. data/node_modules/@babel/runtime/helpers/checkPrivateRedeclaration.js +0 -8
  82. data/node_modules/@babel/runtime/helpers/classApplyDescriptorDestructureSet.js +0 -23
  83. data/node_modules/@babel/runtime/helpers/classApplyDescriptorGet.js +0 -10
  84. data/node_modules/@babel/runtime/helpers/classApplyDescriptorSet.js +0 -14
  85. data/node_modules/@babel/runtime/helpers/classCallCheck.js +0 -8
  86. data/node_modules/@babel/runtime/helpers/classCheckPrivateStaticAccess.js +0 -8
  87. data/node_modules/@babel/runtime/helpers/classCheckPrivateStaticFieldDescriptor.js +0 -8
  88. data/node_modules/@babel/runtime/helpers/classExtractFieldDescriptor.js +0 -10
  89. data/node_modules/@babel/runtime/helpers/classNameTDZError.js +0 -6
  90. data/node_modules/@babel/runtime/helpers/classPrivateFieldDestructureSet.js +0 -11
  91. data/node_modules/@babel/runtime/helpers/classPrivateFieldGet.js +0 -11
  92. data/node_modules/@babel/runtime/helpers/classPrivateFieldInitSpec.js +0 -9
  93. data/node_modules/@babel/runtime/helpers/classPrivateFieldLooseBase.js +0 -10
  94. data/node_modules/@babel/runtime/helpers/classPrivateFieldLooseKey.js +0 -8
  95. data/node_modules/@babel/runtime/helpers/classPrivateFieldSet.js +0 -12
  96. data/node_modules/@babel/runtime/helpers/classPrivateMethodGet.js +0 -10
  97. data/node_modules/@babel/runtime/helpers/classPrivateMethodInitSpec.js +0 -9
  98. data/node_modules/@babel/runtime/helpers/classPrivateMethodSet.js +0 -6
  99. data/node_modules/@babel/runtime/helpers/classStaticPrivateFieldDestructureSet.js +0 -14
  100. data/node_modules/@babel/runtime/helpers/classStaticPrivateFieldSpecGet.js +0 -14
  101. data/node_modules/@babel/runtime/helpers/classStaticPrivateFieldSpecSet.js +0 -15
  102. data/node_modules/@babel/runtime/helpers/classStaticPrivateMethodGet.js +0 -9
  103. data/node_modules/@babel/runtime/helpers/classStaticPrivateMethodSet.js +0 -6
  104. data/node_modules/@babel/runtime/helpers/construct.js +0 -26
  105. data/node_modules/@babel/runtime/helpers/createClass.js +0 -18
  106. data/node_modules/@babel/runtime/helpers/createForOfIteratorHelper.js +0 -61
  107. data/node_modules/@babel/runtime/helpers/createForOfIteratorHelperLoose.js +0 -25
  108. data/node_modules/@babel/runtime/helpers/createSuper.js +0 -25
  109. data/node_modules/@babel/runtime/helpers/decorate.js +0 -401
  110. data/node_modules/@babel/runtime/helpers/defaults.js +0 -17
  111. data/node_modules/@babel/runtime/helpers/defineEnumerableProperties.js +0 -25
  112. data/node_modules/@babel/runtime/helpers/defineProperty.js +0 -17
  113. data/node_modules/@babel/runtime/helpers/esm/AsyncGenerator.js +0 -95
  114. data/node_modules/@babel/runtime/helpers/esm/AwaitValue.js +0 -3
  115. data/node_modules/@babel/runtime/helpers/esm/applyDecoratedDescriptor.js +0 -28
  116. data/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js +0 -9
  117. data/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js +0 -3
  118. data/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js +0 -4
  119. data/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js +0 -7
  120. data/node_modules/@babel/runtime/helpers/esm/asyncGeneratorDelegate.js +0 -54
  121. data/node_modules/@babel/runtime/helpers/esm/asyncIterator.js +0 -13
  122. data/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js +0 -35
  123. data/node_modules/@babel/runtime/helpers/esm/awaitAsyncGenerator.js +0 -4
  124. data/node_modules/@babel/runtime/helpers/esm/checkPrivateRedeclaration.js +0 -5
  125. data/node_modules/@babel/runtime/helpers/esm/classApplyDescriptorDestructureSet.js +0 -20
  126. data/node_modules/@babel/runtime/helpers/esm/classApplyDescriptorGet.js +0 -7
  127. data/node_modules/@babel/runtime/helpers/esm/classApplyDescriptorSet.js +0 -11
  128. data/node_modules/@babel/runtime/helpers/esm/classCallCheck.js +0 -5
  129. data/node_modules/@babel/runtime/helpers/esm/classCheckPrivateStaticAccess.js +0 -5
  130. data/node_modules/@babel/runtime/helpers/esm/classCheckPrivateStaticFieldDescriptor.js +0 -5
  131. data/node_modules/@babel/runtime/helpers/esm/classExtractFieldDescriptor.js +0 -7
  132. data/node_modules/@babel/runtime/helpers/esm/classNameTDZError.js +0 -3
  133. data/node_modules/@babel/runtime/helpers/esm/classPrivateFieldDestructureSet.js +0 -6
  134. data/node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet.js +0 -6
  135. data/node_modules/@babel/runtime/helpers/esm/classPrivateFieldInitSpec.js +0 -5
  136. data/node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseBase.js +0 -7
  137. data/node_modules/@babel/runtime/helpers/esm/classPrivateFieldLooseKey.js +0 -4
  138. data/node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet.js +0 -7
  139. data/node_modules/@babel/runtime/helpers/esm/classPrivateMethodGet.js +0 -7
  140. data/node_modules/@babel/runtime/helpers/esm/classPrivateMethodInitSpec.js +0 -5
  141. data/node_modules/@babel/runtime/helpers/esm/classPrivateMethodSet.js +0 -3
  142. data/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldDestructureSet.js +0 -8
  143. data/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldSpecGet.js +0 -8
  144. data/node_modules/@babel/runtime/helpers/esm/classStaticPrivateFieldSpecSet.js +0 -9
  145. data/node_modules/@babel/runtime/helpers/esm/classStaticPrivateMethodGet.js +0 -5
  146. data/node_modules/@babel/runtime/helpers/esm/classStaticPrivateMethodSet.js +0 -3
  147. data/node_modules/@babel/runtime/helpers/esm/construct.js +0 -18
  148. data/node_modules/@babel/runtime/helpers/esm/createClass.js +0 -15
  149. data/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js +0 -57
  150. data/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelperLoose.js +0 -21
  151. data/node_modules/@babel/runtime/helpers/esm/createSuper.js +0 -19
  152. data/node_modules/@babel/runtime/helpers/esm/decorate.js +0 -396
  153. data/node_modules/@babel/runtime/helpers/esm/defaults.js +0 -14
  154. data/node_modules/@babel/runtime/helpers/esm/defineEnumerableProperties.js +0 -22
  155. data/node_modules/@babel/runtime/helpers/esm/defineProperty.js +0 -14
  156. data/node_modules/@babel/runtime/helpers/esm/extends.js +0 -17
  157. data/node_modules/@babel/runtime/helpers/esm/get.js +0 -20
  158. data/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js +0 -6
  159. data/node_modules/@babel/runtime/helpers/esm/inherits.js +0 -15
  160. data/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js +0 -6
  161. data/node_modules/@babel/runtime/helpers/esm/initializerDefineProperty.js +0 -9
  162. data/node_modules/@babel/runtime/helpers/esm/initializerWarningHelper.js +0 -3
  163. data/node_modules/@babel/runtime/helpers/esm/instanceof.js +0 -7
  164. data/node_modules/@babel/runtime/helpers/esm/interopRequireDefault.js +0 -5
  165. data/node_modules/@babel/runtime/helpers/esm/interopRequireWildcard.js +0 -51
  166. data/node_modules/@babel/runtime/helpers/esm/isNativeFunction.js +0 -3
  167. data/node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js +0 -12
  168. data/node_modules/@babel/runtime/helpers/esm/iterableToArray.js +0 -3
  169. data/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js +0 -29
  170. data/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimitLoose.js +0 -14
  171. data/node_modules/@babel/runtime/helpers/esm/jsx.js +0 -46
  172. data/node_modules/@babel/runtime/helpers/esm/maybeArrayLike.js +0 -9
  173. data/node_modules/@babel/runtime/helpers/esm/newArrowCheck.js +0 -5
  174. data/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js +0 -3
  175. data/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js +0 -3
  176. data/node_modules/@babel/runtime/helpers/esm/objectDestructuringEmpty.js +0 -3
  177. data/node_modules/@babel/runtime/helpers/esm/objectSpread.js +0 -19
  178. data/node_modules/@babel/runtime/helpers/esm/objectSpread2.js +0 -39
  179. data/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js +0 -19
  180. data/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js +0 -14
  181. data/node_modules/@babel/runtime/helpers/esm/package.json +0 -3
  182. data/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js +0 -11
  183. data/node_modules/@babel/runtime/helpers/esm/readOnlyError.js +0 -3
  184. data/node_modules/@babel/runtime/helpers/esm/set.js +0 -51
  185. data/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js +0 -8
  186. data/node_modules/@babel/runtime/helpers/esm/skipFirstGeneratorNext.js +0 -7
  187. data/node_modules/@babel/runtime/helpers/esm/slicedToArray.js +0 -7
  188. data/node_modules/@babel/runtime/helpers/esm/slicedToArrayLoose.js +0 -7
  189. data/node_modules/@babel/runtime/helpers/esm/superPropBase.js +0 -9
  190. data/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteral.js +0 -11
  191. data/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteralLoose.js +0 -8
  192. data/node_modules/@babel/runtime/helpers/esm/tdz.js +0 -3
  193. data/node_modules/@babel/runtime/helpers/esm/temporalRef.js +0 -5
  194. data/node_modules/@babel/runtime/helpers/esm/temporalUndefined.js +0 -1
  195. data/node_modules/@babel/runtime/helpers/esm/toArray.js +0 -7
  196. data/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js +0 -7
  197. data/node_modules/@babel/runtime/helpers/esm/toPrimitive.js +0 -13
  198. data/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js +0 -6
  199. data/node_modules/@babel/runtime/helpers/esm/typeof.js +0 -15
  200. data/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js +0 -9
  201. data/node_modules/@babel/runtime/helpers/esm/wrapAsyncGenerator.js +0 -6
  202. data/node_modules/@babel/runtime/helpers/esm/wrapNativeSuper.js +0 -37
  203. data/node_modules/@babel/runtime/helpers/esm/wrapRegExp.js +0 -65
  204. data/node_modules/@babel/runtime/helpers/esm/writeOnlyError.js +0 -3
  205. data/node_modules/@babel/runtime/helpers/extends.js +0 -21
  206. data/node_modules/@babel/runtime/helpers/get.js +0 -27
  207. data/node_modules/@babel/runtime/helpers/getPrototypeOf.js +0 -10
  208. data/node_modules/@babel/runtime/helpers/inherits.js +0 -19
  209. data/node_modules/@babel/runtime/helpers/inheritsLoose.js +0 -10
  210. data/node_modules/@babel/runtime/helpers/initializerDefineProperty.js +0 -12
  211. data/node_modules/@babel/runtime/helpers/initializerWarningHelper.js +0 -6
  212. data/node_modules/@babel/runtime/helpers/instanceof.js +0 -10
  213. data/node_modules/@babel/runtime/helpers/interopRequireDefault.js +0 -8
  214. data/node_modules/@babel/runtime/helpers/interopRequireWildcard.js +0 -54
  215. data/node_modules/@babel/runtime/helpers/isNativeFunction.js +0 -6
  216. data/node_modules/@babel/runtime/helpers/isNativeReflectConstruct.js +0 -15
  217. data/node_modules/@babel/runtime/helpers/iterableToArray.js +0 -6
  218. data/node_modules/@babel/runtime/helpers/iterableToArrayLimit.js +0 -32
  219. data/node_modules/@babel/runtime/helpers/iterableToArrayLimitLoose.js +0 -17
  220. data/node_modules/@babel/runtime/helpers/jsx.js +0 -50
  221. data/node_modules/@babel/runtime/helpers/maybeArrayLike.js +0 -13
  222. data/node_modules/@babel/runtime/helpers/newArrowCheck.js +0 -8
  223. data/node_modules/@babel/runtime/helpers/nonIterableRest.js +0 -6
  224. data/node_modules/@babel/runtime/helpers/nonIterableSpread.js +0 -6
  225. data/node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js +0 -6
  226. data/node_modules/@babel/runtime/helpers/objectSpread.js +0 -23
  227. data/node_modules/@babel/runtime/helpers/objectSpread2.js +0 -42
  228. data/node_modules/@babel/runtime/helpers/objectWithoutProperties.js +0 -23
  229. data/node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js +0 -17
  230. data/node_modules/@babel/runtime/helpers/possibleConstructorReturn.js +0 -16
  231. data/node_modules/@babel/runtime/helpers/readOnlyError.js +0 -6
  232. data/node_modules/@babel/runtime/helpers/set.js +0 -55
  233. data/node_modules/@babel/runtime/helpers/setPrototypeOf.js +0 -12
  234. data/node_modules/@babel/runtime/helpers/skipFirstGeneratorNext.js +0 -10
  235. data/node_modules/@babel/runtime/helpers/slicedToArray.js +0 -14
  236. data/node_modules/@babel/runtime/helpers/slicedToArrayLoose.js +0 -14
  237. data/node_modules/@babel/runtime/helpers/superPropBase.js +0 -13
  238. data/node_modules/@babel/runtime/helpers/taggedTemplateLiteral.js +0 -14
  239. data/node_modules/@babel/runtime/helpers/taggedTemplateLiteralLoose.js +0 -11
  240. data/node_modules/@babel/runtime/helpers/tdz.js +0 -6
  241. data/node_modules/@babel/runtime/helpers/temporalRef.js +0 -10
  242. data/node_modules/@babel/runtime/helpers/temporalUndefined.js +0 -4
  243. data/node_modules/@babel/runtime/helpers/toArray.js +0 -14
  244. data/node_modules/@babel/runtime/helpers/toConsumableArray.js +0 -14
  245. data/node_modules/@babel/runtime/helpers/toPrimitive.js +0 -17
  246. data/node_modules/@babel/runtime/helpers/toPropertyKey.js +0 -11
  247. data/node_modules/@babel/runtime/helpers/typeof.js +0 -22
  248. data/node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js +0 -13
  249. data/node_modules/@babel/runtime/helpers/wrapAsyncGenerator.js +0 -10
  250. data/node_modules/@babel/runtime/helpers/wrapNativeSuper.js +0 -45
  251. data/node_modules/@babel/runtime/helpers/wrapRegExp.js +0 -72
  252. data/node_modules/@babel/runtime/helpers/writeOnlyError.js +0 -6
  253. data/node_modules/@babel/runtime/package.json +0 -848
  254. data/node_modules/@babel/runtime/regenerator/index.js +0 -1
  255. data/node_modules/css-in-js-utils/Changelog.md +0 -16
  256. data/node_modules/css-in-js-utils/LICENSE +0 -21
  257. data/node_modules/css-in-js-utils/README.md +0 -241
  258. data/node_modules/css-in-js-utils/lib/__tests__/assignStyle-test.js +0 -117
  259. data/node_modules/css-in-js-utils/lib/__tests__/camelCaseProperty-test.js +0 -15
  260. data/node_modules/css-in-js-utils/lib/__tests__/cssifyDeclaration-test.js +0 -15
  261. data/node_modules/css-in-js-utils/lib/__tests__/cssifyObject-test.js +0 -31
  262. data/node_modules/css-in-js-utils/lib/__tests__/isPrefixedProperty-test.js +0 -19
  263. data/node_modules/css-in-js-utils/lib/__tests__/isPrefixedValue-test.js +0 -19
  264. data/node_modules/css-in-js-utils/lib/__tests__/isUnitlessProperty-test.js +0 -43
  265. data/node_modules/css-in-js-utils/lib/__tests__/normalizeProperty-test.js +0 -21
  266. data/node_modules/css-in-js-utils/lib/__tests__/resolveArrayValue-test.js +0 -17
  267. data/node_modules/css-in-js-utils/lib/__tests__/unprefixProperty-test.js +0 -19
  268. data/node_modules/css-in-js-utils/lib/__tests__/unprefixValue-test.js +0 -20
  269. data/node_modules/css-in-js-utils/lib/assignStyle.js +0 -37
  270. data/node_modules/css-in-js-utils/lib/camelCaseProperty.js +0 -15
  271. data/node_modules/css-in-js-utils/lib/cssifyDeclaration.js +0 -17
  272. data/node_modules/css-in-js-utils/lib/cssifyObject.js +0 -34
  273. data/node_modules/css-in-js-utils/lib/hyphenateProperty.js +0 -17
  274. data/node_modules/css-in-js-utils/lib/index.js +0 -71
  275. data/node_modules/css-in-js-utils/lib/isPrefixedProperty.js +0 -12
  276. data/node_modules/css-in-js-utils/lib/isPrefixedValue.js +0 -12
  277. data/node_modules/css-in-js-utils/lib/isUnitlessProperty.js +0 -64
  278. data/node_modules/css-in-js-utils/lib/normalizeProperty.js +0 -21
  279. data/node_modules/css-in-js-utils/lib/resolveArrayValue.js +0 -19
  280. data/node_modules/css-in-js-utils/lib/unprefixProperty.js +0 -13
  281. data/node_modules/css-in-js-utils/lib/unprefixValue.js +0 -16
  282. data/node_modules/css-in-js-utils/package.json +0 -56
  283. data/node_modules/css-tree/CHANGELOG.md +0 -590
  284. data/node_modules/css-tree/LICENSE +0 -19
  285. data/node_modules/css-tree/README.md +0 -130
  286. data/node_modules/css-tree/data/index.js +0 -103
  287. data/node_modules/css-tree/data/patch.json +0 -721
  288. data/node_modules/css-tree/dist/csstree.js +0 -12606
  289. data/node_modules/css-tree/dist/csstree.min.js +0 -1
  290. data/node_modules/css-tree/lib/common/List.js +0 -576
  291. data/node_modules/css-tree/lib/common/OffsetToLocation.js +0 -91
  292. data/node_modules/css-tree/lib/common/SyntaxError.js +0 -82
  293. data/node_modules/css-tree/lib/common/TokenStream.js +0 -219
  294. data/node_modules/css-tree/lib/common/adopt-buffer.js +0 -10
  295. data/node_modules/css-tree/lib/convertor/create.js +0 -28
  296. data/node_modules/css-tree/lib/convertor/index.js +0 -3
  297. data/node_modules/css-tree/lib/definition-syntax/SyntaxError.js +0 -14
  298. data/node_modules/css-tree/lib/definition-syntax/generate.js +0 -129
  299. data/node_modules/css-tree/lib/definition-syntax/index.js +0 -6
  300. data/node_modules/css-tree/lib/definition-syntax/parse.js +0 -568
  301. data/node_modules/css-tree/lib/definition-syntax/tokenizer.js +0 -55
  302. data/node_modules/css-tree/lib/definition-syntax/walk.js +0 -52
  303. data/node_modules/css-tree/lib/generator/create.js +0 -66
  304. data/node_modules/css-tree/lib/generator/index.js +0 -4
  305. data/node_modules/css-tree/lib/generator/sourceMap.js +0 -95
  306. data/node_modules/css-tree/lib/index.js +0 -1
  307. data/node_modules/css-tree/lib/lexer/Lexer.js +0 -466
  308. data/node_modules/css-tree/lib/lexer/error.js +0 -127
  309. data/node_modules/css-tree/lib/lexer/generic-an-plus-b.js +0 -236
  310. data/node_modules/css-tree/lib/lexer/generic-urange.js +0 -159
  311. data/node_modules/css-tree/lib/lexer/generic.js +0 -585
  312. data/node_modules/css-tree/lib/lexer/index.js +0 -3
  313. data/node_modules/css-tree/lib/lexer/match-graph.js +0 -455
  314. data/node_modules/css-tree/lib/lexer/match.js +0 -639
  315. data/node_modules/css-tree/lib/lexer/prepare-tokens.js +0 -73
  316. data/node_modules/css-tree/lib/lexer/search.js +0 -65
  317. data/node_modules/css-tree/lib/lexer/structure.js +0 -163
  318. data/node_modules/css-tree/lib/lexer/trace.js +0 -79
  319. data/node_modules/css-tree/lib/parser/create.js +0 -304
  320. data/node_modules/css-tree/lib/parser/index.js +0 -4
  321. data/node_modules/css-tree/lib/parser/sequence.js +0 -54
  322. data/node_modules/css-tree/lib/syntax/atrule/font-face.js +0 -8
  323. data/node_modules/css-tree/lib/syntax/atrule/import.js +0 -40
  324. data/node_modules/css-tree/lib/syntax/atrule/index.js +0 -7
  325. data/node_modules/css-tree/lib/syntax/atrule/media.js +0 -12
  326. data/node_modules/css-tree/lib/syntax/atrule/page.js +0 -12
  327. data/node_modules/css-tree/lib/syntax/atrule/supports.js +0 -89
  328. data/node_modules/css-tree/lib/syntax/config/lexer.js +0 -9
  329. data/node_modules/css-tree/lib/syntax/config/mix.js +0 -140
  330. data/node_modules/css-tree/lib/syntax/config/parser.js +0 -25
  331. data/node_modules/css-tree/lib/syntax/config/walker.js +0 -3
  332. data/node_modules/css-tree/lib/syntax/create.js +0 -77
  333. data/node_modules/css-tree/lib/syntax/function/expression.js +0 -7
  334. data/node_modules/css-tree/lib/syntax/function/var.js +0 -43
  335. data/node_modules/css-tree/lib/syntax/index.js +0 -21
  336. data/node_modules/css-tree/lib/syntax/node/AnPlusB.js +0 -297
  337. data/node_modules/css-tree/lib/syntax/node/Atrule.js +0 -107
  338. data/node_modules/css-tree/lib/syntax/node/AtrulePrelude.js +0 -51
  339. data/node_modules/css-tree/lib/syntax/node/AttributeSelector.js +0 -165
  340. data/node_modules/css-tree/lib/syntax/node/Block.js +0 -91
  341. data/node_modules/css-tree/lib/syntax/node/Brackets.js +0 -34
  342. data/node_modules/css-tree/lib/syntax/node/CDC.js +0 -19
  343. data/node_modules/css-tree/lib/syntax/node/CDO.js +0 -19
  344. data/node_modules/css-tree/lib/syntax/node/ClassSelector.js +0 -29
  345. data/node_modules/css-tree/lib/syntax/node/Combinator.js +0 -55
  346. data/node_modules/css-tree/lib/syntax/node/Comment.js +0 -36
  347. data/node_modules/css-tree/lib/syntax/node/Declaration.js +0 -169
  348. data/node_modules/css-tree/lib/syntax/node/DeclarationList.js +0 -49
  349. data/node_modules/css-tree/lib/syntax/node/Dimension.js +0 -29
  350. data/node_modules/css-tree/lib/syntax/node/Function.js +0 -40
  351. data/node_modules/css-tree/lib/syntax/node/Hash.js +0 -26
  352. data/node_modules/css-tree/lib/syntax/node/IdSelector.js +0 -27
  353. data/node_modules/css-tree/lib/syntax/node/Identifier.js +0 -20
  354. data/node_modules/css-tree/lib/syntax/node/MediaFeature.js +0 -76
  355. data/node_modules/css-tree/lib/syntax/node/MediaQuery.js +0 -68
  356. data/node_modules/css-tree/lib/syntax/node/MediaQueryList.js +0 -36
  357. data/node_modules/css-tree/lib/syntax/node/Nth.js +0 -51
  358. data/node_modules/css-tree/lib/syntax/node/Number.js +0 -18
  359. data/node_modules/css-tree/lib/syntax/node/Operator.js +0 -21
  360. data/node_modules/css-tree/lib/syntax/node/Parentheses.js +0 -34
  361. data/node_modules/css-tree/lib/syntax/node/Percentage.js +0 -27
  362. data/node_modules/css-tree/lib/syntax/node/PseudoClassSelector.js +0 -61
  363. data/node_modules/css-tree/lib/syntax/node/PseudoElementSelector.js +0 -62
  364. data/node_modules/css-tree/lib/syntax/node/Ratio.js +0 -66
  365. data/node_modules/css-tree/lib/syntax/node/Raw.js +0 -87
  366. data/node_modules/css-tree/lib/syntax/node/Rule.js +0 -54
  367. data/node_modules/css-tree/lib/syntax/node/Selector.js +0 -32
  368. data/node_modules/css-tree/lib/syntax/node/SelectorList.js +0 -39
  369. data/node_modules/css-tree/lib/syntax/node/String.js +0 -18
  370. data/node_modules/css-tree/lib/syntax/node/StyleSheet.js +0 -81
  371. data/node_modules/css-tree/lib/syntax/node/TypeSelector.js +0 -53
  372. data/node_modules/css-tree/lib/syntax/node/UnicodeRange.js +0 -173
  373. data/node_modules/css-tree/lib/syntax/node/Url.js +0 -69
  374. data/node_modules/css-tree/lib/syntax/node/Value.js +0 -19
  375. data/node_modules/css-tree/lib/syntax/node/WhiteSpace.js +0 -26
  376. data/node_modules/css-tree/lib/syntax/node/index.js +0 -42
  377. data/node_modules/css-tree/lib/syntax/pseudo/common/nth.js +0 -9
  378. data/node_modules/css-tree/lib/syntax/pseudo/common/nthWithOfClause.js +0 -9
  379. data/node_modules/css-tree/lib/syntax/pseudo/common/selectorList.js +0 -7
  380. data/node_modules/css-tree/lib/syntax/pseudo/dir.js +0 -7
  381. data/node_modules/css-tree/lib/syntax/pseudo/has.js +0 -7
  382. data/node_modules/css-tree/lib/syntax/pseudo/index.js +0 -12
  383. data/node_modules/css-tree/lib/syntax/pseudo/lang.js +0 -7
  384. data/node_modules/css-tree/lib/syntax/pseudo/matches.js +0 -1
  385. data/node_modules/css-tree/lib/syntax/pseudo/not.js +0 -1
  386. data/node_modules/css-tree/lib/syntax/pseudo/nth-child.js +0 -1
  387. data/node_modules/css-tree/lib/syntax/pseudo/nth-last-child.js +0 -1
  388. data/node_modules/css-tree/lib/syntax/pseudo/nth-last-of-type.js +0 -1
  389. data/node_modules/css-tree/lib/syntax/pseudo/nth-of-type.js +0 -1
  390. data/node_modules/css-tree/lib/syntax/pseudo/slotted.js +0 -7
  391. data/node_modules/css-tree/lib/syntax/scope/atrulePrelude.js +0 -3
  392. data/node_modules/css-tree/lib/syntax/scope/default.js +0 -87
  393. data/node_modules/css-tree/lib/syntax/scope/index.js +0 -5
  394. data/node_modules/css-tree/lib/syntax/scope/selector.js +0 -80
  395. data/node_modules/css-tree/lib/syntax/scope/value.js +0 -5
  396. data/node_modules/css-tree/lib/tokenizer/char-code-definitions.js +0 -249
  397. data/node_modules/css-tree/lib/tokenizer/const.js +0 -40
  398. data/node_modules/css-tree/lib/tokenizer/index.js +0 -591
  399. data/node_modules/css-tree/lib/tokenizer/utils.js +0 -243
  400. data/node_modules/css-tree/lib/utils/clone.js +0 -21
  401. data/node_modules/css-tree/lib/utils/createCustomError.js +0 -17
  402. data/node_modules/css-tree/lib/utils/names.js +0 -104
  403. data/node_modules/css-tree/lib/walker/create.js +0 -284
  404. data/node_modules/css-tree/lib/walker/index.js +0 -4
  405. data/node_modules/css-tree/package.json +0 -60
  406. data/node_modules/csstype/LICENSE +0 -19
  407. data/node_modules/csstype/README.md +0 -273
  408. data/node_modules/csstype/index.d.ts +0 -20553
  409. data/node_modules/csstype/index.js.flow +0 -6278
  410. data/node_modules/csstype/package.json +0 -62
  411. data/node_modules/error-stack-parser/CHANGELOG.md +0 -53
  412. data/node_modules/error-stack-parser/LICENSE +0 -19
  413. data/node_modules/error-stack-parser/README.md +0 -44
  414. data/node_modules/error-stack-parser/dist/error-stack-parser.js +0 -202
  415. data/node_modules/error-stack-parser/dist/error-stack-parser.min.js +0 -2
  416. data/node_modules/error-stack-parser/dist/error-stack-parser.min.js.map +0 -1
  417. data/node_modules/error-stack-parser/error-stack-parser.d.ts +0 -66
  418. data/node_modules/error-stack-parser/error-stack-parser.js +0 -202
  419. data/node_modules/error-stack-parser/package.json +0 -63
  420. data/node_modules/fastest-stable-stringify/.eslintrc.yml +0 -26
  421. data/node_modules/fastest-stable-stringify/.travis.yml +0 -7
  422. data/node_modules/fastest-stable-stringify/LICENSE +0 -18
  423. data/node_modules/fastest-stable-stringify/README.md +0 -44
  424. data/node_modules/fastest-stable-stringify/benchmark/index.js +0 -32
  425. data/node_modules/fastest-stable-stringify/benchmark/test.json +0 -215
  426. data/node_modules/fastest-stable-stringify/example/key_cmp.js +0 -7
  427. data/node_modules/fastest-stable-stringify/example/nested.js +0 -3
  428. data/node_modules/fastest-stable-stringify/example/str.js +0 -3
  429. data/node_modules/fastest-stable-stringify/example/value_cmp.js +0 -7
  430. data/node_modules/fastest-stable-stringify/index.js +0 -60
  431. data/node_modules/fastest-stable-stringify/package.json +0 -54
  432. data/node_modules/fastest-stable-stringify/test/bench.js +0 -20
  433. data/node_modules/fastest-stable-stringify/test/nested.js +0 -24
  434. data/node_modules/fastest-stable-stringify/test/str.js +0 -52
  435. data/node_modules/fastest-stable-stringify/test/to-json.js +0 -22
  436. data/node_modules/hyphenate-style-name/LICENSE +0 -28
  437. data/node_modules/hyphenate-style-name/README.md +0 -28
  438. data/node_modules/hyphenate-style-name/index.cjs.js +0 -21
  439. data/node_modules/hyphenate-style-name/index.js +0 -19
  440. data/node_modules/hyphenate-style-name/package.json +0 -42
  441. data/node_modules/inline-style-prefixer/CHANGELOG.md +0 -195
  442. data/node_modules/inline-style-prefixer/LICENSE +0 -22
  443. data/node_modules/inline-style-prefixer/README.md +0 -100
  444. data/node_modules/inline-style-prefixer/es/createPrefixer.js +0 -47
  445. data/node_modules/inline-style-prefixer/es/data.js +0 -12
  446. data/node_modules/inline-style-prefixer/es/generator/generatePluginList.js +0 -21
  447. data/node_modules/inline-style-prefixer/es/generator/generatePrefixMap.js +0 -75
  448. data/node_modules/inline-style-prefixer/es/generator/index.js +0 -69
  449. data/node_modules/inline-style-prefixer/es/generator/maps/pluginMap.js +0 -108
  450. data/node_modules/inline-style-prefixer/es/generator/maps/propertyMap.js +0 -38
  451. data/node_modules/inline-style-prefixer/es/index.js +0 -26
  452. data/node_modules/inline-style-prefixer/es/plugins/backgroundClip.js +0 -7
  453. data/node_modules/inline-style-prefixer/es/plugins/calc.js +0 -11
  454. data/node_modules/inline-style-prefixer/es/plugins/crossFade.js +0 -12
  455. data/node_modules/inline-style-prefixer/es/plugins/cursor.js +0 -16
  456. data/node_modules/inline-style-prefixer/es/plugins/filter.js +0 -12
  457. data/node_modules/inline-style-prefixer/es/plugins/flex.js +0 -10
  458. data/node_modules/inline-style-prefixer/es/plugins/flexboxIE.js +0 -67
  459. data/node_modules/inline-style-prefixer/es/plugins/flexboxOld.js +0 -33
  460. data/node_modules/inline-style-prefixer/es/plugins/gradient.js +0 -14
  461. data/node_modules/inline-style-prefixer/es/plugins/grid.js +0 -129
  462. data/node_modules/inline-style-prefixer/es/plugins/imageSet.js +0 -12
  463. data/node_modules/inline-style-prefixer/es/plugins/index.js +0 -17
  464. data/node_modules/inline-style-prefixer/es/plugins/logical.js +0 -35
  465. data/node_modules/inline-style-prefixer/es/plugins/position.js +0 -5
  466. data/node_modules/inline-style-prefixer/es/plugins/sizing.js +0 -26
  467. data/node_modules/inline-style-prefixer/es/plugins/transition.js +0 -75
  468. data/node_modules/inline-style-prefixer/es/utils/addNewValuesOnly.js +0 -15
  469. data/node_modules/inline-style-prefixer/es/utils/capitalizeString.js +0 -3
  470. data/node_modules/inline-style-prefixer/es/utils/isObject.js +0 -3
  471. data/node_modules/inline-style-prefixer/es/utils/prefixProperty.js +0 -22
  472. data/node_modules/inline-style-prefixer/es/utils/prefixValue.js +0 -11
  473. data/node_modules/inline-style-prefixer/lib/createPrefixer.js +0 -66
  474. data/node_modules/inline-style-prefixer/lib/data.js +0 -17
  475. data/node_modules/inline-style-prefixer/lib/generator/generatePluginList.js +0 -32
  476. data/node_modules/inline-style-prefixer/lib/generator/generatePrefixMap.js +0 -86
  477. data/node_modules/inline-style-prefixer/lib/generator/index.js +0 -85
  478. data/node_modules/inline-style-prefixer/lib/generator/maps/pluginMap.js +0 -113
  479. data/node_modules/inline-style-prefixer/lib/generator/maps/propertyMap.js +0 -43
  480. data/node_modules/inline-style-prefixer/lib/index.js +0 -78
  481. data/node_modules/inline-style-prefixer/lib/plugins/backgroundClip.js +0 -13
  482. data/node_modules/inline-style-prefixer/lib/plugins/calc.js +0 -21
  483. data/node_modules/inline-style-prefixer/lib/plugins/crossFade.js +0 -22
  484. data/node_modules/inline-style-prefixer/lib/plugins/cursor.js +0 -22
  485. data/node_modules/inline-style-prefixer/lib/plugins/filter.js +0 -22
  486. data/node_modules/inline-style-prefixer/lib/plugins/flex.js +0 -16
  487. data/node_modules/inline-style-prefixer/lib/plugins/flexboxIE.js +0 -73
  488. data/node_modules/inline-style-prefixer/lib/plugins/flexboxOld.js +0 -39
  489. data/node_modules/inline-style-prefixer/lib/plugins/gradient.js +0 -26
  490. data/node_modules/inline-style-prefixer/lib/plugins/grid.js +0 -136
  491. data/node_modules/inline-style-prefixer/lib/plugins/imageSet.js +0 -22
  492. data/node_modules/inline-style-prefixer/lib/plugins/index.js +0 -69
  493. data/node_modules/inline-style-prefixer/lib/plugins/logical.js +0 -41
  494. data/node_modules/inline-style-prefixer/lib/plugins/position.js +0 -11
  495. data/node_modules/inline-style-prefixer/lib/plugins/sizing.js +0 -32
  496. data/node_modules/inline-style-prefixer/lib/plugins/transition.js +0 -92
  497. data/node_modules/inline-style-prefixer/lib/utils/addNewValuesOnly.js +0 -21
  498. data/node_modules/inline-style-prefixer/lib/utils/capitalizeString.js +0 -9
  499. data/node_modules/inline-style-prefixer/lib/utils/isObject.js +0 -9
  500. data/node_modules/inline-style-prefixer/lib/utils/prefixProperty.js +0 -32
  501. data/node_modules/inline-style-prefixer/lib/utils/prefixValue.js +0 -17
  502. data/node_modules/inline-style-prefixer/package.json +0 -79
  503. data/node_modules/isobject/LICENSE +0 -21
  504. data/node_modules/isobject/README.md +0 -122
  505. data/node_modules/isobject/index.d.ts +0 -5
  506. data/node_modules/isobject/index.js +0 -12
  507. data/node_modules/isobject/package.json +0 -74
  508. data/node_modules/js-tokens/CHANGELOG.md +0 -151
  509. data/node_modules/js-tokens/LICENSE +0 -21
  510. data/node_modules/js-tokens/README.md +0 -240
  511. data/node_modules/js-tokens/index.js +0 -23
  512. data/node_modules/js-tokens/package.json +0 -30
  513. data/node_modules/loose-envify/LICENSE +0 -21
  514. data/node_modules/loose-envify/README.md +0 -45
  515. data/node_modules/loose-envify/cli.js +0 -16
  516. data/node_modules/loose-envify/custom.js +0 -4
  517. data/node_modules/loose-envify/index.js +0 -3
  518. data/node_modules/loose-envify/loose-envify.js +0 -36
  519. data/node_modules/loose-envify/package.json +0 -36
  520. data/node_modules/loose-envify/replace.js +0 -65
  521. data/node_modules/mdn-data/LICENSE +0 -116
  522. data/node_modules/mdn-data/README.md +0 -56
  523. data/node_modules/mdn-data/api/index.js +0 -3
  524. data/node_modules/mdn-data/api/inheritance.json +0 -2681
  525. data/node_modules/mdn-data/api/inheritance.schema.json +0 -31
  526. data/node_modules/mdn-data/css/at-rules.json +0 -560
  527. data/node_modules/mdn-data/css/at-rules.schema.json +0 -132
  528. data/node_modules/mdn-data/css/definitions.json +0 -77
  529. data/node_modules/mdn-data/css/index.js +0 -8
  530. data/node_modules/mdn-data/css/properties.json +0 -9163
  531. data/node_modules/mdn-data/css/properties.schema.json +0 -402
  532. data/node_modules/mdn-data/css/selectors.json +0 -927
  533. data/node_modules/mdn-data/css/selectors.schema.json +0 -36
  534. data/node_modules/mdn-data/css/syntaxes.json +0 -761
  535. data/node_modules/mdn-data/css/syntaxes.schema.json +0 -15
  536. data/node_modules/mdn-data/css/types.json +0 -265
  537. data/node_modules/mdn-data/css/types.schema.json +0 -32
  538. data/node_modules/mdn-data/css/units.json +0 -199
  539. data/node_modules/mdn-data/css/units.schema.json +0 -28
  540. data/node_modules/mdn-data/index.js +0 -5
  541. data/node_modules/mdn-data/l10n/css.json +0 -1567
  542. data/node_modules/mdn-data/l10n/index.js +0 -3
  543. data/node_modules/mdn-data/package.json +0 -39
  544. data/node_modules/nano-css/.circleci/config.yml +0 -85
  545. data/node_modules/nano-css/.eslintrc.yml +0 -27
  546. data/node_modules/nano-css/.github/FUNDING.yml +0 -3
  547. data/node_modules/nano-css/.github/workflows/nodejs.yml +0 -23
  548. data/node_modules/nano-css/CHANGELOG.md +0 -362
  549. data/node_modules/nano-css/LICENSE +0 -24
  550. data/node_modules/nano-css/README.md +0 -70
  551. data/node_modules/nano-css/addon/__dev__/warnOnMissingDependencies.js +0 -25
  552. data/node_modules/nano-css/addon/__tests__/__snapshots__/reset.test.js.snap +0 -407
  553. data/node_modules/nano-css/addon/__tests__/__snapshots__/tachyons.test.js.snap +0 -43
  554. data/node_modules/nano-css/addon/__tests__/amp.server.dev.test.js +0 -6
  555. data/node_modules/nano-css/addon/__tests__/amp.server.test.js +0 -223
  556. data/node_modules/nano-css/addon/__tests__/atoms.dev.test.js +0 -5
  557. data/node_modules/nano-css/addon/__tests__/atoms.server.dev.test.js +0 -8
  558. data/node_modules/nano-css/addon/__tests__/atoms.server.test.js +0 -6
  559. data/node_modules/nano-css/addon/__tests__/atoms.test.js +0 -49
  560. data/node_modules/nano-css/addon/__tests__/cssom.server.test.js +0 -12
  561. data/node_modules/nano-css/addon/__tests__/emmet/emmet.dev.test.js +0 -5
  562. data/node_modules/nano-css/addon/__tests__/emmet/emmet.server.dev.test.js +0 -8
  563. data/node_modules/nano-css/addon/__tests__/emmet/emmet.server.test.js +0 -6
  564. data/node_modules/nano-css/addon/__tests__/emmet/emmet.test.js +0 -219
  565. data/node_modules/nano-css/addon/__tests__/env.js +0 -6
  566. data/node_modules/nano-css/addon/__tests__/extract.server.test.js +0 -159
  567. data/node_modules/nano-css/addon/__tests__/index.server.dev.test.js +0 -6
  568. data/node_modules/nano-css/addon/__tests__/index.server.test.js +0 -4
  569. data/node_modules/nano-css/addon/__tests__/index.test.js +0 -257
  570. data/node_modules/nano-css/addon/__tests__/jsx.dev.test.js +0 -5
  571. data/node_modules/nano-css/addon/__tests__/jsx.server.dev.test.js +0 -6
  572. data/node_modules/nano-css/addon/__tests__/jsx.server.test.js +0 -4
  573. data/node_modules/nano-css/addon/__tests__/jsx.test.js +0 -33
  574. data/node_modules/nano-css/addon/__tests__/keyframes.dev.test.js +0 -5
  575. data/node_modules/nano-css/addon/__tests__/keyframes.server.dev.test.js +0 -6
  576. data/node_modules/nano-css/addon/__tests__/keyframes.server.test.js +0 -4
  577. data/node_modules/nano-css/addon/__tests__/keyframes.test.js +0 -131
  578. data/node_modules/nano-css/addon/__tests__/limit.server.test.js +0 -54
  579. data/node_modules/nano-css/addon/__tests__/nesting.test.js +0 -85
  580. data/node_modules/nano-css/addon/__tests__/prefixer.test.js +0 -121
  581. data/node_modules/nano-css/addon/__tests__/put.dev.test.js +0 -5
  582. data/node_modules/nano-css/addon/__tests__/put.server.dev.test.js +0 -6
  583. data/node_modules/nano-css/addon/__tests__/put.server.test.js +0 -4
  584. data/node_modules/nano-css/addon/__tests__/put.test.js +0 -75
  585. data/node_modules/nano-css/addon/__tests__/reset.test.js +0 -38
  586. data/node_modules/nano-css/addon/__tests__/rule.dev.test.js +0 -5
  587. data/node_modules/nano-css/addon/__tests__/rule.server.dev.test.js +0 -7
  588. data/node_modules/nano-css/addon/__tests__/rule.server.test.js +0 -5
  589. data/node_modules/nano-css/addon/__tests__/rule.test.js +0 -57
  590. data/node_modules/nano-css/addon/__tests__/setup.js +0 -7
  591. data/node_modules/nano-css/addon/__tests__/sheet.test.js +0 -74
  592. data/node_modules/nano-css/addon/__tests__/snake.test.js +0 -124
  593. data/node_modules/nano-css/addon/__tests__/tachyons.test.js +0 -45
  594. data/node_modules/nano-css/addon/__tests__/units.dev.test.js +0 -5
  595. data/node_modules/nano-css/addon/__tests__/units.server.dev.test.js +0 -6
  596. data/node_modules/nano-css/addon/__tests__/units.server.test.js +0 -4
  597. data/node_modules/nano-css/addon/__tests__/units.test.js +0 -41
  598. data/node_modules/nano-css/addon/__tests__/validate.dev.test.js +0 -5
  599. data/node_modules/nano-css/addon/__tests__/validate.test.js +0 -69
  600. data/node_modules/nano-css/addon/__tests__/vcssom.server.test.js +0 -14
  601. data/node_modules/nano-css/addon/__tests__/virtual.dev.test.js +0 -5
  602. data/node_modules/nano-css/addon/__tests__/virtual.server.dev.test.js +0 -6
  603. data/node_modules/nano-css/addon/__tests__/virtual.server.test.js +0 -4
  604. data/node_modules/nano-css/addon/__tests__/virtual.test.js +0 -225
  605. data/node_modules/nano-css/addon/amp.d.ts +0 -5
  606. data/node_modules/nano-css/addon/amp.js +0 -156
  607. data/node_modules/nano-css/addon/animate/fadeIn.js +0 -22
  608. data/node_modules/nano-css/addon/animate/fadeInDown.js +0 -25
  609. data/node_modules/nano-css/addon/animate/fadeInScale.js +0 -25
  610. data/node_modules/nano-css/addon/animate/fadeOut.js +0 -23
  611. data/node_modules/nano-css/addon/animate/fadeOutScale.js +0 -21
  612. data/node_modules/nano-css/addon/array.d.ts +0 -5
  613. data/node_modules/nano-css/addon/array.js +0 -33
  614. data/node_modules/nano-css/addon/atoms.d.ts +0 -243
  615. data/node_modules/nano-css/addon/atoms.js +0 -63
  616. data/node_modules/nano-css/addon/cache.d.ts +0 -8
  617. data/node_modules/nano-css/addon/cache.js +0 -17
  618. data/node_modules/nano-css/addon/component.d.ts +0 -7
  619. data/node_modules/nano-css/addon/component.js +0 -26
  620. data/node_modules/nano-css/addon/cssom.d.ts +0 -17
  621. data/node_modules/nano-css/addon/cssom.js +0 -36
  622. data/node_modules/nano-css/addon/decorator.d.ts +0 -7
  623. data/node_modules/nano-css/addon/decorator.js +0 -43
  624. data/node_modules/nano-css/addon/drule.d.ts +0 -8
  625. data/node_modules/nano-css/addon/drule.js +0 -27
  626. data/node_modules/nano-css/addon/dsheet.d.ts +0 -8
  627. data/node_modules/nano-css/addon/dsheet.js +0 -36
  628. data/node_modules/nano-css/addon/emmet.d.ts +0 -614
  629. data/node_modules/nano-css/addon/emmet.js +0 -177
  630. data/node_modules/nano-css/addon/extract.d.ts +0 -5
  631. data/node_modules/nano-css/addon/extract.js +0 -59
  632. data/node_modules/nano-css/addon/global.d.ts +0 -8
  633. data/node_modules/nano-css/addon/global.js +0 -19
  634. data/node_modules/nano-css/addon/googleFont.d.ts +0 -8
  635. data/node_modules/nano-css/addon/googleFont.js +0 -43
  636. data/node_modules/nano-css/addon/hydrate.d.ts +0 -7
  637. data/node_modules/nano-css/addon/hydrate.js +0 -28
  638. data/node_modules/nano-css/addon/hyperstyle.js +0 -27
  639. data/node_modules/nano-css/addon/important.js +0 -38
  640. data/node_modules/nano-css/addon/jsx.js +0 -60
  641. data/node_modules/nano-css/addon/keyframes.d.ts +0 -34
  642. data/node_modules/nano-css/addon/keyframes.js +0 -61
  643. data/node_modules/nano-css/addon/limit.js +0 -26
  644. data/node_modules/nano-css/addon/nesting.js +0 -37
  645. data/node_modules/nano-css/addon/pipe.js +0 -57
  646. data/node_modules/nano-css/addon/prefixer.js +0 -79
  647. data/node_modules/nano-css/addon/ref.js +0 -87
  648. data/node_modules/nano-css/addon/reset/EricMeyer.js +0 -48
  649. data/node_modules/nano-css/addon/reset/EricMeyerCondensed.js +0 -44
  650. data/node_modules/nano-css/addon/reset/Minimalistic.js +0 -16
  651. data/node_modules/nano-css/addon/reset/Minimalistic2.js +0 -17
  652. data/node_modules/nano-css/addon/reset/Minimalistic3.js +0 -18
  653. data/node_modules/nano-css/addon/reset/Normalize.js +0 -83
  654. data/node_modules/nano-css/addon/reset/PoorMan.js +0 -25
  655. data/node_modules/nano-css/addon/reset/ShaunInman.js +0 -42
  656. data/node_modules/nano-css/addon/reset/Siolon.js +0 -34
  657. data/node_modules/nano-css/addon/reset/Tantek.js +0 -31
  658. data/node_modules/nano-css/addon/reset/Tripoli.js +0 -75
  659. data/node_modules/nano-css/addon/reset/Universal.js +0 -23
  660. data/node_modules/nano-css/addon/reset/Yahoo.js +0 -43
  661. data/node_modules/nano-css/addon/reset-font.js +0 -24
  662. data/node_modules/nano-css/addon/rtl.js +0 -15
  663. data/node_modules/nano-css/addon/rule.d.ts +0 -26
  664. data/node_modules/nano-css/addon/rule.js +0 -39
  665. data/node_modules/nano-css/addon/sheet.d.ts +0 -22
  666. data/node_modules/nano-css/addon/sheet.js +0 -45
  667. data/node_modules/nano-css/addon/snake.js +0 -141
  668. data/node_modules/nano-css/addon/sourcemaps.js +0 -96
  669. data/node_modules/nano-css/addon/spread.js +0 -23
  670. data/node_modules/nano-css/addon/stable.js +0 -7
  671. data/node_modules/nano-css/addon/style.js +0 -33
  672. data/node_modules/nano-css/addon/styled.js +0 -161
  673. data/node_modules/nano-css/addon/stylis/plugin-onRule.js +0 -43
  674. data/node_modules/nano-css/addon/stylis.js +0 -28
  675. data/node_modules/nano-css/addon/tachyons.js +0 -215
  676. data/node_modules/nano-css/addon/unitless.js +0 -78
  677. data/node_modules/nano-css/addon/units.d.ts +0 -89
  678. data/node_modules/nano-css/addon/units.js +0 -27
  679. data/node_modules/nano-css/addon/useStyles.js +0 -24
  680. data/node_modules/nano-css/addon/util/cloneElement.js +0 -11
  681. data/node_modules/nano-css/addon/util/transformComponentDynamic.js +0 -50
  682. data/node_modules/nano-css/addon/util/transformComponentStatic.js +0 -26
  683. data/node_modules/nano-css/addon/validate.js +0 -82
  684. data/node_modules/nano-css/addon/vcssom/__tests__/cssToTree.test.js +0 -159
  685. data/node_modules/nano-css/addon/vcssom/cssToTree.d.ts +0 -15
  686. data/node_modules/nano-css/addon/vcssom/cssToTree.js +0 -42
  687. data/node_modules/nano-css/addon/vcssom/removeRule.d.ts +0 -3
  688. data/node_modules/nano-css/addon/vcssom/removeRule.js +0 -15
  689. data/node_modules/nano-css/addon/vcssom.d.ts +0 -72
  690. data/node_modules/nano-css/addon/vcssom.js +0 -97
  691. data/node_modules/nano-css/addon/virtual.js +0 -107
  692. data/node_modules/nano-css/addon/withStyles.js +0 -32
  693. data/node_modules/nano-css/index.d.ts +0 -4
  694. data/node_modules/nano-css/index.js +0 -138
  695. data/node_modules/nano-css/package.json +0 -145
  696. data/node_modules/nano-css/preset/react.js +0 -43
  697. data/node_modules/nano-css/preset/sheet.d.ts +0 -5
  698. data/node_modules/nano-css/preset/sheet.js +0 -27
  699. data/node_modules/nano-css/preset/vdom.js +0 -40
  700. data/node_modules/nano-css/prettier.config.js +0 -13
  701. data/node_modules/nano-css/renovate.json +0 -3
  702. data/node_modules/nano-css/types/common.d.ts +0 -14
  703. data/node_modules/nano-css/types/demo.ts +0 -7
  704. data/node_modules/nano-css/types/nano.d.ts +0 -171
  705. data/node_modules/object-assign/index.js +0 -90
  706. data/node_modules/object-assign/license +0 -21
  707. data/node_modules/object-assign/package.json +0 -42
  708. data/node_modules/object-assign/readme.md +0 -61
  709. data/node_modules/preact/compat/LICENSE +0 -21
  710. data/node_modules/preact/debug/LICENSE +0 -21
  711. data/node_modules/preact/devtools/LICENSE +0 -21
  712. data/node_modules/preact/hooks/LICENSE +0 -21
  713. data/node_modules/preact/jsx-runtime/LICENSE +0 -21
  714. data/node_modules/react/LICENSE +0 -21
  715. data/node_modules/react/README.md +0 -13
  716. data/node_modules/react/build-info.json +0 -8
  717. data/node_modules/react/cjs/react-jsx-dev-runtime.development.js +0 -1203
  718. data/node_modules/react/cjs/react-jsx-dev-runtime.production.min.js +0 -9
  719. data/node_modules/react/cjs/react-jsx-dev-runtime.profiling.min.js +0 -9
  720. data/node_modules/react/cjs/react-jsx-runtime.development.js +0 -1221
  721. data/node_modules/react/cjs/react-jsx-runtime.production.min.js +0 -10
  722. data/node_modules/react/cjs/react-jsx-runtime.profiling.min.js +0 -10
  723. data/node_modules/react/cjs/react.development.js +0 -2333
  724. data/node_modules/react/cjs/react.production.min.js +0 -23
  725. data/node_modules/react/index.js +0 -7
  726. data/node_modules/react/jsx-dev-runtime.js +0 -7
  727. data/node_modules/react/jsx-runtime.js +0 -7
  728. data/node_modules/react/package.json +0 -39
  729. data/node_modules/react/umd/react.development.js +0 -3357
  730. data/node_modules/react/umd/react.production.min.js +0 -31
  731. data/node_modules/react/umd/react.profiling.min.js +0 -36
  732. data/node_modules/react-dom/LICENSE +0 -21
  733. data/node_modules/react-dom/README.md +0 -54
  734. data/node_modules/react-dom/build-info.json +0 -8
  735. data/node_modules/react-dom/cjs/react-dom-server.browser.development.js +0 -4342
  736. data/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js +0 -51
  737. data/node_modules/react-dom/cjs/react-dom-server.node.development.js +0 -4383
  738. data/node_modules/react-dom/cjs/react-dom-server.node.production.min.js +0 -52
  739. data/node_modules/react-dom/cjs/react-dom-test-utils.development.js +0 -2118
  740. data/node_modules/react-dom/cjs/react-dom-test-utils.production.min.js +0 -43
  741. data/node_modules/react-dom/cjs/react-dom.development.js +0 -26262
  742. data/node_modules/react-dom/cjs/react-dom.production.min.js +0 -297
  743. data/node_modules/react-dom/cjs/react-dom.profiling.min.js +0 -310
  744. data/node_modules/react-dom/index.js +0 -38
  745. data/node_modules/react-dom/package.json +0 -49
  746. data/node_modules/react-dom/profiling.js +0 -38
  747. data/node_modules/react-dom/server.browser.js +0 -7
  748. data/node_modules/react-dom/server.js +0 -3
  749. data/node_modules/react-dom/server.node.js +0 -7
  750. data/node_modules/react-dom/test-utils.js +0 -7
  751. data/node_modules/react-dom/umd/react-dom-server.browser.development.js +0 -4341
  752. data/node_modules/react-dom/umd/react-dom-server.browser.production.min.js +0 -46
  753. data/node_modules/react-dom/umd/react-dom-test-utils.development.js +0 -2136
  754. data/node_modules/react-dom/umd/react-dom-test-utils.production.min.js +0 -35
  755. data/node_modules/react-dom/umd/react-dom.development.js +0 -26292
  756. data/node_modules/react-dom/umd/react-dom.production.min.js +0 -245
  757. data/node_modules/react-dom/umd/react-dom.profiling.min.js +0 -252
  758. data/node_modules/regenerator-runtime/LICENSE +0 -21
  759. data/node_modules/regenerator-runtime/README.md +0 -31
  760. data/node_modules/regenerator-runtime/package.json +0 -19
  761. data/node_modules/regenerator-runtime/path.js +0 -11
  762. data/node_modules/regenerator-runtime/runtime.js +0 -754
  763. data/node_modules/rtl-css-js/CHANGELOG.md +0 -5
  764. data/node_modules/rtl-css-js/LICENSE +0 -20
  765. data/node_modules/rtl-css-js/README.md +0 -205
  766. data/node_modules/rtl-css-js/core/package.json +0 -6
  767. data/node_modules/rtl-css-js/core.d.ts +0 -163
  768. data/node_modules/rtl-css-js/core.esm.d.ts +0 -1
  769. data/node_modules/rtl-css-js/core.esm.js +0 -9
  770. data/node_modules/rtl-css-js/dist/cjs/convert-a10c80e3.js +0 -509
  771. data/node_modules/rtl-css-js/dist/cjs/core.js +0 -30
  772. data/node_modules/rtl-css-js/dist/cjs/index.js +0 -7
  773. data/node_modules/rtl-css-js/dist/esm/convert-09159978.js +0 -487
  774. data/node_modules/rtl-css-js/dist/esm/core.js +0 -1
  775. data/node_modules/rtl-css-js/dist/esm/index.js +0 -5
  776. data/node_modules/rtl-css-js/dist/rtl-css-js.core.umd.js +0 -519
  777. data/node_modules/rtl-css-js/dist/rtl-css-js.core.umd.js.map +0 -1
  778. data/node_modules/rtl-css-js/dist/rtl-css-js.core.umd.min.js +0 -2
  779. data/node_modules/rtl-css-js/dist/rtl-css-js.core.umd.min.js.map +0 -1
  780. data/node_modules/rtl-css-js/dist/rtl-css-js.umd.js +0 -496
  781. data/node_modules/rtl-css-js/dist/rtl-css-js.umd.js.map +0 -1
  782. data/node_modules/rtl-css-js/dist/rtl-css-js.umd.min.js +0 -2
  783. data/node_modules/rtl-css-js/dist/rtl-css-js.umd.min.js.map +0 -1
  784. data/node_modules/rtl-css-js/package.json +0 -66
  785. data/node_modules/rtl-css-js/types.d.ts +0 -8
  786. data/node_modules/scheduler/LICENSE +0 -21
  787. data/node_modules/scheduler/README.md +0 -9
  788. data/node_modules/scheduler/build-info.json +0 -8
  789. data/node_modules/scheduler/cjs/scheduler-tracing.development.js +0 -347
  790. data/node_modules/scheduler/cjs/scheduler-tracing.production.min.js +0 -9
  791. data/node_modules/scheduler/cjs/scheduler-tracing.profiling.min.js +0 -16
  792. data/node_modules/scheduler/cjs/scheduler-unstable_mock.development.js +0 -665
  793. data/node_modules/scheduler/cjs/scheduler-unstable_mock.production.min.js +0 -19
  794. data/node_modules/scheduler/cjs/scheduler-unstable_post_task.development.js +0 -206
  795. data/node_modules/scheduler/cjs/scheduler-unstable_post_task.production.min.js +0 -13
  796. data/node_modules/scheduler/cjs/scheduler.development.js +0 -646
  797. data/node_modules/scheduler/cjs/scheduler.production.min.js +0 -20
  798. data/node_modules/scheduler/index.js +0 -7
  799. data/node_modules/scheduler/package.json +0 -40
  800. data/node_modules/scheduler/tracing-profiling.js +0 -7
  801. data/node_modules/scheduler/tracing.js +0 -7
  802. data/node_modules/scheduler/umd/scheduler-tracing.development.js +0 -80
  803. data/node_modules/scheduler/umd/scheduler-tracing.production.min.js +0 -80
  804. data/node_modules/scheduler/umd/scheduler-tracing.profiling.min.js +0 -80
  805. data/node_modules/scheduler/umd/scheduler-unstable_mock.development.js +0 -664
  806. data/node_modules/scheduler/umd/scheduler-unstable_mock.production.min.js +0 -18
  807. data/node_modules/scheduler/umd/scheduler.development.js +0 -152
  808. data/node_modules/scheduler/umd/scheduler.production.min.js +0 -146
  809. data/node_modules/scheduler/umd/scheduler.profiling.min.js +0 -146
  810. data/node_modules/scheduler/unstable_mock.js +0 -7
  811. data/node_modules/scheduler/unstable_post_task.js +0 -7
  812. data/node_modules/source-map/CHANGELOG.md +0 -301
  813. data/node_modules/source-map/LICENSE +0 -28
  814. data/node_modules/source-map/README.md +0 -742
  815. data/node_modules/source-map/dist/source-map.debug.js +0 -3234
  816. data/node_modules/source-map/dist/source-map.js +0 -3233
  817. data/node_modules/source-map/dist/source-map.min.js +0 -2
  818. data/node_modules/source-map/dist/source-map.min.js.map +0 -1
  819. data/node_modules/source-map/lib/array-set.js +0 -121
  820. data/node_modules/source-map/lib/base64-vlq.js +0 -140
  821. data/node_modules/source-map/lib/base64.js +0 -67
  822. data/node_modules/source-map/lib/binary-search.js +0 -111
  823. data/node_modules/source-map/lib/mapping-list.js +0 -79
  824. data/node_modules/source-map/lib/quick-sort.js +0 -114
  825. data/node_modules/source-map/lib/source-map-consumer.js +0 -1145
  826. data/node_modules/source-map/lib/source-map-generator.js +0 -425
  827. data/node_modules/source-map/lib/source-node.js +0 -413
  828. data/node_modules/source-map/lib/util.js +0 -488
  829. data/node_modules/source-map/package.json +0 -73
  830. data/node_modules/source-map/source-map.d.ts +0 -98
  831. data/node_modules/source-map/source-map.js +0 -8
  832. data/node_modules/sourcemap-codec/CHANGELOG.md +0 -64
  833. data/node_modules/sourcemap-codec/LICENSE +0 -21
  834. data/node_modules/sourcemap-codec/README.md +0 -63
  835. data/node_modules/sourcemap-codec/dist/sourcemap-codec.es.js +0 -124
  836. data/node_modules/sourcemap-codec/dist/sourcemap-codec.es.js.map +0 -1
  837. data/node_modules/sourcemap-codec/dist/sourcemap-codec.umd.js +0 -135
  838. data/node_modules/sourcemap-codec/dist/sourcemap-codec.umd.js.map +0 -1
  839. data/node_modules/sourcemap-codec/dist/types/sourcemap-codec.d.ts +0 -5
  840. data/node_modules/sourcemap-codec/package.json +0 -53
  841. data/node_modules/stack-generator/.eslintrc.yml +0 -32
  842. data/node_modules/stack-generator/CHANGELOG.md +0 -18
  843. data/node_modules/stack-generator/CONTRIBUTING.md +0 -27
  844. data/node_modules/stack-generator/LICENSE +0 -19
  845. data/node_modules/stack-generator/README.md +0 -28
  846. data/node_modules/stack-generator/bower.json +0 -33
  847. data/node_modules/stack-generator/component.json +0 -17
  848. data/node_modules/stack-generator/dist/stack-generator.js +0 -45
  849. data/node_modules/stack-generator/dist/stack-generator.min.js +0 -2
  850. data/node_modules/stack-generator/dist/stack-generator.min.js.map +0 -1
  851. data/node_modules/stack-generator/karma.conf.ci.js +0 -108
  852. data/node_modules/stack-generator/karma.conf.js +0 -26
  853. data/node_modules/stack-generator/package.json +0 -53
  854. data/node_modules/stack-generator/stack-generator.js +0 -45
  855. data/node_modules/stackframe/.eslintrc.yml +0 -29
  856. data/node_modules/stackframe/CHANGELOG.md +0 -39
  857. data/node_modules/stackframe/CONTRIBUTING.md +0 -28
  858. data/node_modules/stackframe/LICENSE +0 -19
  859. data/node_modules/stackframe/README.md +0 -78
  860. data/node_modules/stackframe/bower.json +0 -31
  861. data/node_modules/stackframe/component.json +0 -16
  862. data/node_modules/stackframe/dist/stackframe.js +0 -143
  863. data/node_modules/stackframe/dist/stackframe.min.js +0 -2
  864. data/node_modules/stackframe/dist/stackframe.min.js.map +0 -1
  865. data/node_modules/stackframe/karma.conf.ci.js +0 -105
  866. data/node_modules/stackframe/karma.conf.js +0 -23
  867. data/node_modules/stackframe/package.json +0 -51
  868. data/node_modules/stackframe/stackframe-tests.ts +0 -47
  869. data/node_modules/stackframe/stackframe.d.ts +0 -74
  870. data/node_modules/stackframe/stackframe.js +0 -143
  871. data/node_modules/stacktrace-gps/CHANGELOG.md +0 -60
  872. data/node_modules/stacktrace-gps/LICENSE +0 -19
  873. data/node_modules/stacktrace-gps/README.md +0 -89
  874. data/node_modules/stacktrace-gps/dist/polyfills.js +0 -5
  875. data/node_modules/stacktrace-gps/dist/stacktrace-gps-with-polyfills.min.js +0 -2
  876. data/node_modules/stacktrace-gps/dist/stacktrace-gps-with-polyfills.min.js.map +0 -1
  877. data/node_modules/stacktrace-gps/dist/stacktrace-gps.js +0 -342
  878. data/node_modules/stacktrace-gps/dist/stacktrace-gps.min.js +0 -2
  879. data/node_modules/stacktrace-gps/dist/stacktrace-gps.min.js.map +0 -1
  880. data/node_modules/stacktrace-gps/node_modules/source-map/CHANGELOG.md +0 -301
  881. data/node_modules/stacktrace-gps/node_modules/source-map/LICENSE +0 -28
  882. data/node_modules/stacktrace-gps/node_modules/source-map/README.md +0 -729
  883. data/node_modules/stacktrace-gps/node_modules/source-map/dist/source-map.debug.js +0 -3056
  884. data/node_modules/stacktrace-gps/node_modules/source-map/dist/source-map.js +0 -3055
  885. data/node_modules/stacktrace-gps/node_modules/source-map/dist/source-map.min.js +0 -2
  886. data/node_modules/stacktrace-gps/node_modules/source-map/dist/source-map.min.js.map +0 -1
  887. data/node_modules/stacktrace-gps/node_modules/source-map/lib/array-set.js +0 -104
  888. data/node_modules/stacktrace-gps/node_modules/source-map/lib/base64-vlq.js +0 -140
  889. data/node_modules/stacktrace-gps/node_modules/source-map/lib/base64.js +0 -67
  890. data/node_modules/stacktrace-gps/node_modules/source-map/lib/binary-search.js +0 -111
  891. data/node_modules/stacktrace-gps/node_modules/source-map/lib/mapping-list.js +0 -79
  892. data/node_modules/stacktrace-gps/node_modules/source-map/lib/quick-sort.js +0 -114
  893. data/node_modules/stacktrace-gps/node_modules/source-map/lib/source-map-consumer.js +0 -1082
  894. data/node_modules/stacktrace-gps/node_modules/source-map/lib/source-map-generator.js +0 -404
  895. data/node_modules/stacktrace-gps/node_modules/source-map/lib/source-node.js +0 -407
  896. data/node_modules/stacktrace-gps/node_modules/source-map/lib/util.js +0 -417
  897. data/node_modules/stacktrace-gps/node_modules/source-map/package.json +0 -71
  898. data/node_modules/stacktrace-gps/node_modules/source-map/source-map.js +0 -8
  899. data/node_modules/stacktrace-gps/package.json +0 -66
  900. data/node_modules/stacktrace-gps/stacktrace-gps.js +0 -342
  901. data/node_modules/stacktrace-js/CHANGELOG.md +0 -97
  902. data/node_modules/stacktrace-js/LICENSE +0 -19
  903. data/node_modules/stacktrace-js/README.md +0 -186
  904. data/node_modules/stacktrace-js/dist/stacktrace-with-promises-and-json-polyfills.js +0 -5405
  905. data/node_modules/stacktrace-js/dist/stacktrace-with-promises-and-json-polyfills.min.js +0 -3
  906. data/node_modules/stacktrace-js/dist/stacktrace-with-promises-and-json-polyfills.min.js.map +0 -1
  907. data/node_modules/stacktrace-js/dist/stacktrace.js +0 -3025
  908. data/node_modules/stacktrace-js/dist/stacktrace.min.js +0 -2
  909. data/node_modules/stacktrace-js/dist/stacktrace.min.js.map +0 -1
  910. data/node_modules/stacktrace-js/package.json +0 -82
  911. data/node_modules/stacktrace-js/stacktrace-js.d.ts +0 -134
  912. data/node_modules/stacktrace-js/stacktrace.js +0 -227
  913. data/node_modules/stylis/LICENSE +0 -21
  914. data/node_modules/stylis/README.md +0 -152
  915. data/node_modules/stylis/dist/stylis.mjs +0 -2
  916. data/node_modules/stylis/dist/stylis.mjs.map +0 -1
  917. data/node_modules/stylis/dist/umd/package.json +0 -1
  918. data/node_modules/stylis/dist/umd/stylis.js +0 -2
  919. data/node_modules/stylis/dist/umd/stylis.js.map +0 -1
  920. data/node_modules/stylis/index.js +0 -7
  921. data/node_modules/stylis/package.json +0 -164
  922. data/node_modules/stylis/src/Enum.js +0 -20
  923. data/node_modules/stylis/src/Middleware.js +0 -107
  924. data/node_modules/stylis/src/Parser.js +0 -184
  925. data/node_modules/stylis/src/Prefixer.js +0 -119
  926. data/node_modules/stylis/src/Serializer.js +0 -34
  927. data/node_modules/stylis/src/Tokenizer.js +0 -244
  928. data/node_modules/stylis/src/Utility.js +0 -109
@@ -1 +1 @@
1
- {"version":3,"file":"compat.umd.js","sources":["../src/util.js","../src/PureComponent.js","../src/memo.js","../src/forwardRef.js","../src/Children.js","../src/suspense.js","../src/suspense-list.js","../src/portals.js","../src/render.js","../src/index.js"],"sourcesContent":["/**\n * Assign properties from `props` to `obj`\n * @template O, P The obj and props types\n * @param {O} obj The object to copy properties to\n * @param {P} props The object to copy properties from\n * @returns {O & P}\n */\nexport function assign(obj, props) {\n\tfor (let i in props) obj[i] = props[i];\n\treturn /** @type {O & P} */ (obj);\n}\n\n/**\n * Check if two objects have a different shape\n * @param {object} a\n * @param {object} b\n * @returns {boolean}\n */\nexport function shallowDiffers(a, b) {\n\tfor (let i in a) if (i !== '__source' && !(i in b)) return true;\n\tfor (let i in b) if (i !== '__source' && a[i] !== b[i]) return true;\n\treturn false;\n}\n\nexport function removeNode(node) {\n\tlet parentNode = node.parentNode;\n\tif (parentNode) parentNode.removeChild(node);\n}\n","import { Component } from 'preact';\nimport { shallowDiffers } from './util';\n\n/**\n * Component class with a predefined `shouldComponentUpdate` implementation\n */\nexport function PureComponent(p) {\n\tthis.props = p;\n}\nPureComponent.prototype = new Component();\n// Some third-party libraries check if this property is present\nPureComponent.prototype.isPureReactComponent = true;\nPureComponent.prototype.shouldComponentUpdate = function(props, state) {\n\treturn shallowDiffers(this.props, props) || shallowDiffers(this.state, state);\n};\n","import { createElement } from 'preact';\nimport { shallowDiffers } from './util';\n\n/**\n * Memoize a component, so that it only updates when the props actually have\n * changed. This was previously known as `React.pure`.\n * @param {import('./internal').FunctionComponent} c functional component\n * @param {(prev: object, next: object) => boolean} [comparer] Custom equality function\n * @returns {import('./internal').FunctionComponent}\n */\nexport function memo(c, comparer) {\n\tfunction shouldUpdate(nextProps) {\n\t\tlet ref = this.props.ref;\n\t\tlet updateRef = ref == nextProps.ref;\n\t\tif (!updateRef && ref) {\n\t\t\tref.call ? ref(null) : (ref.current = null);\n\t\t}\n\n\t\tif (!comparer) {\n\t\t\treturn shallowDiffers(this.props, nextProps);\n\t\t}\n\n\t\treturn !comparer(this.props, nextProps) || !updateRef;\n\t}\n\n\tfunction Memoed(props) {\n\t\tthis.shouldComponentUpdate = shouldUpdate;\n\t\treturn createElement(c, props);\n\t}\n\tMemoed.displayName = 'Memo(' + (c.displayName || c.name) + ')';\n\tMemoed.prototype.isReactComponent = true;\n\tMemoed._forwarded = true;\n\treturn Memoed;\n}\n","import { options } from 'preact';\nimport { assign } from './util';\n\nlet oldDiffHook = options._diff;\noptions._diff = vnode => {\n\tif (vnode.type && vnode.type._forwarded && vnode.ref) {\n\t\tvnode.props.ref = vnode.ref;\n\t\tvnode.ref = null;\n\t}\n\tif (oldDiffHook) oldDiffHook(vnode);\n};\n\nexport const REACT_FORWARD_SYMBOL =\n\t(typeof Symbol != 'undefined' &&\n\t\tSymbol.for &&\n\t\tSymbol.for('react.forward_ref')) ||\n\t0xf47;\n\n/**\n * Pass ref down to a child. This is mainly used in libraries with HOCs that\n * wrap components. Using `forwardRef` there is an easy way to get a reference\n * of the wrapped component instead of one of the wrapper itself.\n * @param {import('./index').ForwardFn} fn\n * @returns {import('./internal').FunctionComponent}\n */\nexport function forwardRef(fn) {\n\t// We always have ref in props.ref, except for\n\t// mobx-react. It will call this function directly\n\t// and always pass ref as the second argument.\n\tfunction Forwarded(props, ref) {\n\t\tlet clone = assign({}, props);\n\t\tdelete clone.ref;\n\t\tref = props.ref || ref;\n\t\treturn fn(\n\t\t\tclone,\n\t\t\t!ref || (typeof ref === 'object' && !('current' in ref)) ? null : ref\n\t\t);\n\t}\n\n\t// mobx-react checks for this being present\n\tForwarded.$$typeof = REACT_FORWARD_SYMBOL;\n\t// mobx-react heavily relies on implementation details.\n\t// It expects an object here with a `render` property,\n\t// and prototype.render will fail. Without this\n\t// mobx-react throws.\n\tForwarded.render = Forwarded;\n\n\tForwarded.prototype.isReactComponent = Forwarded._forwarded = true;\n\tForwarded.displayName = 'ForwardRef(' + (fn.displayName || fn.name) + ')';\n\treturn Forwarded;\n}\n","import { toChildArray } from 'preact';\n\nconst mapFn = (children, fn) => {\n\tif (children == null) return null;\n\treturn toChildArray(toChildArray(children).map(fn));\n};\n\n// This API is completely unnecessary for Preact, so it's basically passthrough.\nexport const Children = {\n\tmap: mapFn,\n\tforEach: mapFn,\n\tcount(children) {\n\t\treturn children ? toChildArray(children).length : 0;\n\t},\n\tonly(children) {\n\t\tconst normalized = toChildArray(children);\n\t\tif (normalized.length !== 1) throw 'Children.only';\n\t\treturn normalized[0];\n\t},\n\ttoArray: toChildArray\n};\n","import { Component, createElement, options, Fragment } from 'preact';\nimport { assign } from './util';\n\nconst oldCatchError = options._catchError;\noptions._catchError = function(error, newVNode, oldVNode) {\n\tif (error.then) {\n\t\t/** @type {import('./internal').Component} */\n\t\tlet component;\n\t\tlet vnode = newVNode;\n\n\t\tfor (; (vnode = vnode._parent); ) {\n\t\t\tif ((component = vnode._component) && component._childDidSuspend) {\n\t\t\t\tif (newVNode._dom == null) {\n\t\t\t\t\tnewVNode._dom = oldVNode._dom;\n\t\t\t\t\tnewVNode._children = oldVNode._children;\n\t\t\t\t}\n\t\t\t\t// Don't call oldCatchError if we found a Suspense\n\t\t\t\treturn component._childDidSuspend(error, newVNode);\n\t\t\t}\n\t\t}\n\t}\n\toldCatchError(error, newVNode, oldVNode);\n};\n\nconst oldUnmount = options.unmount;\noptions.unmount = function(vnode) {\n\t/** @type {import('./internal').Component} */\n\tconst component = vnode._component;\n\tif (component && component._onResolve) {\n\t\tcomponent._onResolve();\n\t}\n\n\t// if the component is still hydrating\n\t// most likely it is because the component is suspended\n\t// we set the vnode.type as `null` so that it is not a typeof function\n\t// so the unmount will remove the vnode._dom\n\tif (component && vnode._hydrating === true) {\n\t\tvnode.type = null;\n\t}\n\n\tif (oldUnmount) oldUnmount(vnode);\n};\n\nfunction detachedClone(vnode, detachedParent, parentDom) {\n\tif (vnode) {\n\t\tif (vnode._component && vnode._component.__hooks) {\n\t\t\tvnode._component.__hooks._list.forEach(effect => {\n\t\t\t\tif (typeof effect._cleanup == 'function') effect._cleanup();\n\t\t\t});\n\n\t\t\tvnode._component.__hooks = null;\n\t\t}\n\n\t\tvnode = assign({}, vnode);\n\t\tif (vnode._component != null) {\n\t\t\tif (vnode._component._parentDom === parentDom) {\n\t\t\t\tvnode._component._parentDom = detachedParent;\n\t\t\t}\n\t\t\tvnode._component = null;\n\t\t}\n\n\t\tvnode._children =\n\t\t\tvnode._children &&\n\t\t\tvnode._children.map(child =>\n\t\t\t\tdetachedClone(child, detachedParent, parentDom)\n\t\t\t);\n\t}\n\n\treturn vnode;\n}\n\nfunction removeOriginal(vnode, detachedParent, originalParent) {\n\tif (vnode) {\n\t\tvnode._original = null;\n\t\tvnode._children =\n\t\t\tvnode._children &&\n\t\t\tvnode._children.map(child =>\n\t\t\t\tremoveOriginal(child, detachedParent, originalParent)\n\t\t\t);\n\n\t\tif (vnode._component) {\n\t\t\tif (vnode._component._parentDom === detachedParent) {\n\t\t\t\tif (vnode._dom) {\n\t\t\t\t\toriginalParent.insertBefore(vnode._dom, vnode._nextDom);\n\t\t\t\t}\n\t\t\t\tvnode._component._force = true;\n\t\t\t\tvnode._component._parentDom = originalParent;\n\t\t\t}\n\t\t}\n\t}\n\n\treturn vnode;\n}\n\n// having custom inheritance instead of a class here saves a lot of bytes\nexport function Suspense() {\n\t// we do not call super here to golf some bytes...\n\tthis._pendingSuspensionCount = 0;\n\tthis._suspenders = null;\n\tthis._detachOnNextRender = null;\n}\n\n// Things we do here to save some bytes but are not proper JS inheritance:\n// - call `new Component()` as the prototype\n// - do not set `Suspense.prototype.constructor` to `Suspense`\nSuspense.prototype = new Component();\n\n/**\n * @this {import('./internal').SuspenseComponent}\n * @param {Promise} promise The thrown promise\n * @param {import('./internal').VNode<any, any>} suspendingVNode The suspending component\n */\nSuspense.prototype._childDidSuspend = function(promise, suspendingVNode) {\n\tconst suspendingComponent = suspendingVNode._component;\n\n\t/** @type {import('./internal').SuspenseComponent} */\n\tconst c = this;\n\n\tif (c._suspenders == null) {\n\t\tc._suspenders = [];\n\t}\n\tc._suspenders.push(suspendingComponent);\n\n\tconst resolve = suspended(c._vnode);\n\n\tlet resolved = false;\n\tconst onResolved = () => {\n\t\tif (resolved) return;\n\n\t\tresolved = true;\n\t\tsuspendingComponent._onResolve = null;\n\n\t\tif (resolve) {\n\t\t\tresolve(onSuspensionComplete);\n\t\t} else {\n\t\t\tonSuspensionComplete();\n\t\t}\n\t};\n\n\tsuspendingComponent._onResolve = onResolved;\n\n\tconst onSuspensionComplete = () => {\n\t\tif (!--c._pendingSuspensionCount) {\n\t\t\t// If the suspension was during hydration we don't need to restore the\n\t\t\t// suspended children into the _children array\n\t\t\tif (c.state._suspended) {\n\t\t\t\tconst suspendedVNode = c.state._suspended;\n\t\t\t\tc._vnode._children[0] = removeOriginal(\n\t\t\t\t\tsuspendedVNode,\n\t\t\t\t\tsuspendedVNode._component._parentDom,\n\t\t\t\t\tsuspendedVNode._component._originalParentDom\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tc.setState({ _suspended: (c._detachOnNextRender = null) });\n\n\t\t\tlet suspended;\n\t\t\twhile ((suspended = c._suspenders.pop())) {\n\t\t\t\tsuspended.forceUpdate();\n\t\t\t}\n\t\t}\n\t};\n\n\t/**\n\t * We do not set `suspended: true` during hydration because we want the actual markup\n\t * to remain on screen and hydrate it when the suspense actually gets resolved.\n\t * While in non-hydration cases the usual fallback -> component flow would occour.\n\t */\n\tconst wasHydrating = suspendingVNode._hydrating === true;\n\tif (!c._pendingSuspensionCount++ && !wasHydrating) {\n\t\tc.setState({ _suspended: (c._detachOnNextRender = c._vnode._children[0]) });\n\t}\n\tpromise.then(onResolved, onResolved);\n};\n\nSuspense.prototype.componentWillUnmount = function() {\n\tthis._suspenders = [];\n};\n\n/**\n * @this {import('./internal').SuspenseComponent}\n * @param {import('./internal').SuspenseComponent[\"props\"]} props\n * @param {import('./internal').SuspenseState} state\n */\nSuspense.prototype.render = function(props, state) {\n\tif (this._detachOnNextRender) {\n\t\t// When the Suspense's _vnode was created by a call to createVNode\n\t\t// (i.e. due to a setState further up in the tree)\n\t\t// it's _children prop is null, in this case we \"forget\" about the parked vnodes to detach\n\t\tif (this._vnode._children) {\n\t\t\tconst detachedParent = document.createElement('div');\n\t\t\tconst detachedComponent = this._vnode._children[0]._component;\n\t\t\tthis._vnode._children[0] = detachedClone(\n\t\t\t\tthis._detachOnNextRender,\n\t\t\t\tdetachedParent,\n\t\t\t\t(detachedComponent._originalParentDom = detachedComponent._parentDom)\n\t\t\t);\n\t\t}\n\n\t\tthis._detachOnNextRender = null;\n\t}\n\n\t// Wrap fallback tree in a VNode that prevents itself from being marked as aborting mid-hydration:\n\t/** @type {import('./internal').VNode} */\n\tconst fallback =\n\t\tstate._suspended && createElement(Fragment, null, props.fallback);\n\tif (fallback) fallback._hydrating = null;\n\n\treturn [\n\t\tcreateElement(Fragment, null, state._suspended ? null : props.children),\n\t\tfallback\n\t];\n};\n\n/**\n * Checks and calls the parent component's _suspended method, passing in the\n * suspended vnode. This is a way for a parent (e.g. SuspenseList) to get notified\n * that one of its children/descendants suspended.\n *\n * The parent MAY return a callback. The callback will get called when the\n * suspension resolves, notifying the parent of the fact.\n * Moreover, the callback gets function `unsuspend` as a parameter. The resolved\n * child descendant will not actually get unsuspended until `unsuspend` gets called.\n * This is a way for the parent to delay unsuspending.\n *\n * If the parent does not return a callback then the resolved vnode\n * gets unsuspended immediately when it resolves.\n *\n * @param {import('./internal').VNode} vnode\n * @returns {((unsuspend: () => void) => void)?}\n */\nexport function suspended(vnode) {\n\t/** @type {import('./internal').Component} */\n\tlet component = vnode._parent._component;\n\treturn component && component._suspended && component._suspended(vnode);\n}\n\nexport function lazy(loader) {\n\tlet prom;\n\tlet component;\n\tlet error;\n\n\tfunction Lazy(props) {\n\t\tif (!prom) {\n\t\t\tprom = loader();\n\t\t\tprom.then(\n\t\t\t\texports => {\n\t\t\t\t\tcomponent = exports.default || exports;\n\t\t\t\t},\n\t\t\t\te => {\n\t\t\t\t\terror = e;\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\n\t\tif (error) {\n\t\t\tthrow error;\n\t\t}\n\n\t\tif (!component) {\n\t\t\tthrow prom;\n\t\t}\n\n\t\treturn createElement(component, props);\n\t}\n\n\tLazy.displayName = 'Lazy';\n\tLazy._forwarded = true;\n\treturn Lazy;\n}\n","import { Component, toChildArray } from 'preact';\nimport { suspended } from './suspense.js';\n\n// Indexes to linked list nodes (nodes are stored as arrays to save bytes).\nconst SUSPENDED_COUNT = 0;\nconst RESOLVED_COUNT = 1;\nconst NEXT_NODE = 2;\n\n// Having custom inheritance instead of a class here saves a lot of bytes.\nexport function SuspenseList() {\n\tthis._next = null;\n\tthis._map = null;\n}\n\n// Mark one of child's earlier suspensions as resolved.\n// Some pending callbacks may become callable due to this\n// (e.g. the last suspended descendant gets resolved when\n// revealOrder === 'together'). Process those callbacks as well.\nconst resolve = (list, child, node) => {\n\tif (++node[RESOLVED_COUNT] === node[SUSPENDED_COUNT]) {\n\t\t// The number a child (or any of its descendants) has been suspended\n\t\t// matches the number of times it's been resolved. Therefore we\n\t\t// mark the child as completely resolved by deleting it from ._map.\n\t\t// This is used to figure out when *all* children have been completely\n\t\t// resolved when revealOrder is 'together'.\n\t\tlist._map.delete(child);\n\t}\n\n\t// If revealOrder is falsy then we can do an early exit, as the\n\t// callbacks won't get queued in the node anyway.\n\t// If revealOrder is 'together' then also do an early exit\n\t// if all suspended descendants have not yet been resolved.\n\tif (\n\t\t!list.props.revealOrder ||\n\t\t(list.props.revealOrder[0] === 't' && list._map.size)\n\t) {\n\t\treturn;\n\t}\n\n\t// Walk the currently suspended children in order, calling their\n\t// stored callbacks on the way. Stop if we encounter a child that\n\t// has not been completely resolved yet.\n\tnode = list._next;\n\twhile (node) {\n\t\twhile (node.length > 3) {\n\t\t\tnode.pop()();\n\t\t}\n\t\tif (node[RESOLVED_COUNT] < node[SUSPENDED_COUNT]) {\n\t\t\tbreak;\n\t\t}\n\t\tlist._next = node = node[NEXT_NODE];\n\t}\n};\n\n// Things we do here to save some bytes but are not proper JS inheritance:\n// - call `new Component()` as the prototype\n// - do not set `Suspense.prototype.constructor` to `Suspense`\nSuspenseList.prototype = new Component();\n\nSuspenseList.prototype._suspended = function(child) {\n\tconst list = this;\n\tconst delegated = suspended(list._vnode);\n\n\tlet node = list._map.get(child);\n\tnode[SUSPENDED_COUNT]++;\n\n\treturn unsuspend => {\n\t\tconst wrappedUnsuspend = () => {\n\t\t\tif (!list.props.revealOrder) {\n\t\t\t\t// Special case the undefined (falsy) revealOrder, as there\n\t\t\t\t// is no need to coordinate a specific order or unsuspends.\n\t\t\t\tunsuspend();\n\t\t\t} else {\n\t\t\t\tnode.push(unsuspend);\n\t\t\t\tresolve(list, child, node);\n\t\t\t}\n\t\t};\n\t\tif (delegated) {\n\t\t\tdelegated(wrappedUnsuspend);\n\t\t} else {\n\t\t\twrappedUnsuspend();\n\t\t}\n\t};\n};\n\nSuspenseList.prototype.render = function(props) {\n\tthis._next = null;\n\tthis._map = new Map();\n\n\tconst children = toChildArray(props.children);\n\tif (props.revealOrder && props.revealOrder[0] === 'b') {\n\t\t// If order === 'backwards' (or, well, anything starting with a 'b')\n\t\t// then flip the child list around so that the last child will be\n\t\t// the first in the linked list.\n\t\tchildren.reverse();\n\t}\n\t// Build the linked list. Iterate through the children in reverse order\n\t// so that `_next` points to the first linked list node to be resolved.\n\tfor (let i = children.length; i--; ) {\n\t\t// Create a new linked list node as an array of form:\n\t\t// \t[suspended_count, resolved_count, next_node]\n\t\t// where suspended_count and resolved_count are numeric counters for\n\t\t// keeping track how many times a node has been suspended and resolved.\n\t\t//\n\t\t// Note that suspended_count starts from 1 instead of 0, so we can block\n\t\t// processing callbacks until componentDidMount has been called. In a sense\n\t\t// node is suspended at least until componentDidMount gets called!\n\t\t//\n\t\t// Pending callbacks are added to the end of the node:\n\t\t// \t[suspended_count, resolved_count, next_node, callback_0, callback_1, ...]\n\t\tthis._map.set(children[i], (this._next = [1, 0, this._next]));\n\t}\n\treturn props.children;\n};\n\nSuspenseList.prototype.componentDidUpdate = SuspenseList.prototype.componentDidMount = function() {\n\t// Iterate through all children after mounting for two reasons:\n\t// 1. As each node[SUSPENDED_COUNT] starts from 1, this iteration increases\n\t// each node[RELEASED_COUNT] by 1, therefore balancing the counters.\n\t// The nodes can now be completely consumed from the linked list.\n\t// 2. Handle nodes that might have gotten resolved between render and\n\t// componentDidMount.\n\tthis._map.forEach((node, child) => {\n\t\tresolve(this, child, node);\n\t});\n};\n","import { createElement, render } from 'preact';\n\n/**\n * @param {import('../../src/index').RenderableProps<{ context: any }>} props\n */\nfunction ContextProvider(props) {\n\tthis.getChildContext = () => props.context;\n\treturn props.children;\n}\n\n/**\n * Portal component\n * @this {import('./internal').Component}\n * @param {object | null | undefined} props\n *\n * TODO: use createRoot() instead of fake root\n */\nfunction Portal(props) {\n\tconst _this = this;\n\tlet container = props._container;\n\n\t_this.componentWillUnmount = function() {\n\t\trender(null, _this._temp);\n\t\t_this._temp = null;\n\t\t_this._container = null;\n\t};\n\n\t// When we change container we should clear our old container and\n\t// indicate a new mount.\n\tif (_this._container && _this._container !== container) {\n\t\t_this.componentWillUnmount();\n\t}\n\n\t// When props.vnode is undefined/false/null we are dealing with some kind of\n\t// conditional vnode. This should not trigger a render.\n\tif (props._vnode) {\n\t\tif (!_this._temp) {\n\t\t\t_this._container = container;\n\n\t\t\t// Create a fake DOM parent node that manages a subset of `container`'s children:\n\t\t\t_this._temp = {\n\t\t\t\tnodeType: 1,\n\t\t\t\tparentNode: container,\n\t\t\t\tchildNodes: [],\n\t\t\t\tappendChild(child) {\n\t\t\t\t\tthis.childNodes.push(child);\n\t\t\t\t\t_this._container.appendChild(child);\n\t\t\t\t},\n\t\t\t\tinsertBefore(child, before) {\n\t\t\t\t\tthis.childNodes.push(child);\n\t\t\t\t\t_this._container.appendChild(child);\n\t\t\t\t},\n\t\t\t\tremoveChild(child) {\n\t\t\t\t\tthis.childNodes.splice(this.childNodes.indexOf(child) >>> 1, 1);\n\t\t\t\t\t_this._container.removeChild(child);\n\t\t\t\t}\n\t\t\t};\n\t\t}\n\n\t\t// Render our wrapping element into temp.\n\t\trender(\n\t\t\tcreateElement(ContextProvider, { context: _this.context }, props._vnode),\n\t\t\t_this._temp\n\t\t);\n\t}\n\t// When we come from a conditional render, on a mounted\n\t// portal we should clear the DOM.\n\telse if (_this._temp) {\n\t\t_this.componentWillUnmount();\n\t}\n}\n\n/**\n * Create a `Portal` to continue rendering the vnode tree at a different DOM node\n * @param {import('./internal').VNode} vnode The vnode to render\n * @param {import('./internal').PreactElement} container The DOM node to continue rendering in to.\n */\nexport function createPortal(vnode, container) {\n\treturn createElement(Portal, { _vnode: vnode, _container: container });\n}\n","import {\n\trender as preactRender,\n\thydrate as preactHydrate,\n\toptions,\n\ttoChildArray,\n\tComponent\n} from 'preact';\n\nexport const REACT_ELEMENT_TYPE =\n\t(typeof Symbol != 'undefined' && Symbol.for && Symbol.for('react.element')) ||\n\t0xeac7;\n\nconst CAMEL_PROPS = /^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|fill|flood|font|glyph(?!R)|horiz|marker(?!H|W|U)|overline|paint|stop|strikethrough|stroke|text(?!L)|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/;\n\n// Input types for which onchange should not be converted to oninput.\n// type=\"file|checkbox|radio\", plus \"range\" in IE11.\n// (IE11 doesn't support Symbol, which we use here to turn `rad` into `ra` which matches \"range\")\nconst onChangeInputType = type =>\n\t(typeof Symbol != 'undefined' && typeof Symbol() == 'symbol'\n\t\t? /fil|che|rad/i\n\t\t: /fil|che|ra/i\n\t).test(type);\n\n// Some libraries like `react-virtualized` explicitly check for this.\nComponent.prototype.isReactComponent = {};\n\n// `UNSAFE_*` lifecycle hooks\n// Preact only ever invokes the unprefixed methods.\n// Here we provide a base \"fallback\" implementation that calls any defined UNSAFE_ prefixed method.\n// - If a component defines its own `componentDidMount()` (including via defineProperty), use that.\n// - If a component defines `UNSAFE_componentDidMount()`, `componentDidMount` is the alias getter/setter.\n// - If anything assigns to an `UNSAFE_*` property, the assignment is forwarded to the unprefixed property.\n// See https://github.com/preactjs/preact/issues/1941\n[\n\t'componentWillMount',\n\t'componentWillReceiveProps',\n\t'componentWillUpdate'\n].forEach(key => {\n\tObject.defineProperty(Component.prototype, key, {\n\t\tconfigurable: true,\n\t\tget() {\n\t\t\treturn this['UNSAFE_' + key];\n\t\t},\n\t\tset(v) {\n\t\t\tObject.defineProperty(this, key, {\n\t\t\t\tconfigurable: true,\n\t\t\t\twritable: true,\n\t\t\t\tvalue: v\n\t\t\t});\n\t\t}\n\t});\n});\n\n/**\n * Proxy render() since React returns a Component reference.\n * @param {import('./internal').VNode} vnode VNode tree to render\n * @param {import('./internal').PreactElement} parent DOM node to render vnode tree into\n * @param {() => void} [callback] Optional callback that will be called after rendering\n * @returns {import('./internal').Component | null} The root component reference or null\n */\nexport function render(vnode, parent, callback) {\n\t// React destroys any existing DOM nodes, see #1727\n\t// ...but only on the first render, see #1828\n\tif (parent._children == null) {\n\t\tparent.textContent = '';\n\t}\n\n\tpreactRender(vnode, parent);\n\tif (typeof callback == 'function') callback();\n\n\treturn vnode ? vnode._component : null;\n}\n\nexport function hydrate(vnode, parent, callback) {\n\tpreactHydrate(vnode, parent);\n\tif (typeof callback == 'function') callback();\n\n\treturn vnode ? vnode._component : null;\n}\n\nlet oldEventHook = options.event;\noptions.event = e => {\n\tif (oldEventHook) e = oldEventHook(e);\n\te.persist = empty;\n\te.isPropagationStopped = isPropagationStopped;\n\te.isDefaultPrevented = isDefaultPrevented;\n\treturn (e.nativeEvent = e);\n};\n\nfunction empty() {}\n\nfunction isPropagationStopped() {\n\treturn this.cancelBubble;\n}\n\nfunction isDefaultPrevented() {\n\treturn this.defaultPrevented;\n}\n\nlet classNameDescriptor = {\n\tconfigurable: true,\n\tget() {\n\t\treturn this.class;\n\t}\n};\n\nlet oldVNodeHook = options.vnode;\noptions.vnode = vnode => {\n\tlet type = vnode.type;\n\tlet props = vnode.props;\n\tlet normalizedProps = props;\n\n\t// only normalize props on Element nodes\n\tif (typeof type === 'string') {\n\t\tnormalizedProps = {};\n\n\t\tfor (let i in props) {\n\t\t\tlet value = props[i];\n\n\t\t\tif (i === 'value' && 'defaultValue' in props && value == null) {\n\t\t\t\t// Skip applying value if it is null/undefined and we already set\n\t\t\t\t// a default value\n\t\t\t\tcontinue;\n\t\t\t} else if (\n\t\t\t\ti === 'defaultValue' &&\n\t\t\t\t'value' in props &&\n\t\t\t\tprops.value == null\n\t\t\t) {\n\t\t\t\t// `defaultValue` is treated as a fallback `value` when a value prop is present but null/undefined.\n\t\t\t\t// `defaultValue` for Elements with no value prop is the same as the DOM defaultValue property.\n\t\t\t\ti = 'value';\n\t\t\t} else if (i === 'download' && value === true) {\n\t\t\t\t// Calling `setAttribute` with a truthy value will lead to it being\n\t\t\t\t// passed as a stringified value, e.g. `download=\"true\"`. React\n\t\t\t\t// converts it to an empty string instead, otherwise the attribute\n\t\t\t\t// value will be used as the file name and the file will be called\n\t\t\t\t// \"true\" upon downloading it.\n\t\t\t\tvalue = '';\n\t\t\t} else if (/ondoubleclick/i.test(i)) {\n\t\t\t\ti = 'ondblclick';\n\t\t\t} else if (\n\t\t\t\t/^onchange(textarea|input)/i.test(i + type) &&\n\t\t\t\t!onChangeInputType(props.type)\n\t\t\t) {\n\t\t\t\ti = 'oninput';\n\t\t\t} else if (/^on(Ani|Tra|Tou|BeforeInp)/.test(i)) {\n\t\t\t\ti = i.toLowerCase();\n\t\t\t} else if (CAMEL_PROPS.test(i)) {\n\t\t\t\ti = i.replace(/[A-Z0-9]/, '-$&').toLowerCase();\n\t\t\t} else if (value === null) {\n\t\t\t\tvalue = undefined;\n\t\t\t}\n\n\t\t\tnormalizedProps[i] = value;\n\t\t}\n\n\t\t// Add support for array select values: <select multiple value={[]} />\n\t\tif (\n\t\t\ttype == 'select' &&\n\t\t\tnormalizedProps.multiple &&\n\t\t\tArray.isArray(normalizedProps.value)\n\t\t) {\n\t\t\t// forEach() always returns undefined, which we abuse here to unset the value prop.\n\t\t\tnormalizedProps.value = toChildArray(props.children).forEach(child => {\n\t\t\t\tchild.props.selected =\n\t\t\t\t\tnormalizedProps.value.indexOf(child.props.value) != -1;\n\t\t\t});\n\t\t}\n\n\t\t// Adding support for defaultValue in select tag\n\t\tif (type == 'select' && normalizedProps.defaultValue != null) {\n\t\t\tnormalizedProps.value = toChildArray(props.children).forEach(child => {\n\t\t\t\tif (normalizedProps.multiple) {\n\t\t\t\t\tchild.props.selected =\n\t\t\t\t\t\tnormalizedProps.defaultValue.indexOf(child.props.value) != -1;\n\t\t\t\t} else {\n\t\t\t\t\tchild.props.selected =\n\t\t\t\t\t\tnormalizedProps.defaultValue == child.props.value;\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tvnode.props = normalizedProps;\n\t}\n\n\tif (type && props.class != props.className) {\n\t\tclassNameDescriptor.enumerable = 'className' in props;\n\t\tif (props.className != null) normalizedProps.class = props.className;\n\t\tObject.defineProperty(normalizedProps, 'className', classNameDescriptor);\n\t}\n\n\tvnode.$$typeof = REACT_ELEMENT_TYPE;\n\n\tif (oldVNodeHook) oldVNodeHook(vnode);\n};\n\n// Only needed for react-relay\nlet currentComponent;\nconst oldBeforeRender = options._render;\noptions._render = function(vnode) {\n\tif (oldBeforeRender) {\n\t\toldBeforeRender(vnode);\n\t}\n\tcurrentComponent = vnode._component;\n};\n\n// This is a very very private internal function for React it\n// is used to sort-of do runtime dependency injection. So far\n// only `react-relay` makes use of it. It uses it to read the\n// context value.\nexport const __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = {\n\tReactCurrentDispatcher: {\n\t\tcurrent: {\n\t\t\treadContext(context) {\n\t\t\t\treturn currentComponent._globalContext[context._id].props.value;\n\t\t\t}\n\t\t}\n\t}\n};\n","import {\n\tcreateElement,\n\trender as preactRender,\n\tcloneElement as preactCloneElement,\n\tcreateRef,\n\tComponent,\n\tcreateContext,\n\tFragment\n} from 'preact';\nimport {\n\tuseState,\n\tuseReducer,\n\tuseEffect,\n\tuseLayoutEffect,\n\tuseRef,\n\tuseImperativeHandle,\n\tuseMemo,\n\tuseCallback,\n\tuseContext,\n\tuseDebugValue\n} from 'preact/hooks';\nimport { PureComponent } from './PureComponent';\nimport { memo } from './memo';\nimport { forwardRef } from './forwardRef';\nimport { Children } from './Children';\nimport { Suspense, lazy } from './suspense';\nimport { SuspenseList } from './suspense-list';\nimport { createPortal } from './portals';\nimport {\n\thydrate,\n\trender,\n\tREACT_ELEMENT_TYPE,\n\t__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED\n} from './render';\n\nconst version = '17.0.2'; // trick libraries to think we are react\n\n/**\n * Legacy version of createElement.\n * @param {import('./internal').VNode[\"type\"]} type The node name or Component constructor\n */\nfunction createFactory(type) {\n\treturn createElement.bind(null, type);\n}\n\n/**\n * Check if the passed element is a valid (p)react node.\n * @param {*} element The element to check\n * @returns {boolean}\n */\nfunction isValidElement(element) {\n\treturn !!element && element.$$typeof === REACT_ELEMENT_TYPE;\n}\n\n/**\n * Wrap `cloneElement` to abort if the passed element is not a valid element and apply\n * all vnode normalizations.\n * @param {import('./internal').VNode} element The vnode to clone\n * @param {object} props Props to add when cloning\n * @param {Array<import('./internal').ComponentChildren>} rest Optional component children\n */\nfunction cloneElement(element) {\n\tif (!isValidElement(element)) return element;\n\treturn preactCloneElement.apply(null, arguments);\n}\n\n/**\n * Remove a component tree from the DOM, including state and event handlers.\n * @param {import('./internal').PreactElement} container\n * @returns {boolean}\n */\nfunction unmountComponentAtNode(container) {\n\tif (container._children) {\n\t\tpreactRender(null, container);\n\t\treturn true;\n\t}\n\treturn false;\n}\n\n/**\n * Get the matching DOM node for a component\n * @param {import('./internal').Component} component\n * @returns {import('./internal').PreactElement | null}\n */\nfunction findDOMNode(component) {\n\treturn (\n\t\t(component &&\n\t\t\t(component.base || (component.nodeType === 1 && component))) ||\n\t\tnull\n\t);\n}\n\n/**\n * Deprecated way to control batched rendering inside the reconciler, but we\n * already schedule in batches inside our rendering code\n * @template Arg\n * @param {(arg: Arg) => void} callback function that triggers the updated\n * @param {Arg} [arg] Optional argument that can be passed to the callback\n */\n// eslint-disable-next-line camelcase\nconst unstable_batchedUpdates = (callback, arg) => callback(arg);\n\n/**\n * In React, `flushSync` flushes the entire tree and forces a rerender. It's\n * implmented here as a no-op.\n * @template Arg\n * @template Result\n * @param {(arg: Arg) => Result} callback function that runs before the flush\n * @param {Arg} [arg] Optional arugment that can be passed to the callback\n * @returns\n */\nconst flushSync = (callback, arg) => callback(arg);\n\n/**\n * Strict Mode is not implemented in Preact, so we provide a stand-in for it\n * that just renders its children without imposing any restrictions.\n */\nconst StrictMode = Fragment;\n\nexport * from 'preact/hooks';\nexport {\n\tversion,\n\tChildren,\n\trender,\n\thydrate,\n\tunmountComponentAtNode,\n\tcreatePortal,\n\tcreateElement,\n\tcreateContext,\n\tcreateFactory,\n\tcloneElement,\n\tcreateRef,\n\tFragment,\n\tisValidElement,\n\tfindDOMNode,\n\tComponent,\n\tPureComponent,\n\tmemo,\n\tforwardRef,\n\tflushSync,\n\t// eslint-disable-next-line camelcase\n\tunstable_batchedUpdates,\n\tStrictMode,\n\tSuspense,\n\tSuspenseList,\n\tlazy,\n\t__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED\n};\n\n// React copies the named exports to the default one.\nexport default {\n\tuseState,\n\tuseReducer,\n\tuseEffect,\n\tuseLayoutEffect,\n\tuseRef,\n\tuseImperativeHandle,\n\tuseMemo,\n\tuseCallback,\n\tuseContext,\n\tuseDebugValue,\n\tversion,\n\tChildren,\n\trender,\n\thydrate,\n\tunmountComponentAtNode,\n\tcreatePortal,\n\tcreateElement,\n\tcreateContext,\n\tcreateFactory,\n\tcloneElement,\n\tcreateRef,\n\tFragment,\n\tisValidElement,\n\tfindDOMNode,\n\tComponent,\n\tPureComponent,\n\tmemo,\n\tforwardRef,\n\tflushSync,\n\tunstable_batchedUpdates,\n\tStrictMode,\n\tSuspense,\n\tSuspenseList,\n\tlazy,\n\t__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED\n};\n"],"names":["assign","obj","props","i","shallowDiffers","a","b","PureComponent","p","memo","c","comparer","shouldUpdate","nextProps","ref","this","updateRef","call","current","Memoed","shouldComponentUpdate","createElement","displayName","name","prototype","isReactComponent","Component","isPureReactComponent","state","oldDiffHook","options","vnode","type","REACT_FORWARD_SYMBOL","Symbol","for","forwardRef","fn","Forwarded","clone","$$typeof","render","mapFn","children","toChildArray","map","Children","forEach","count","length","only","normalized","toArray","oldCatchError","error","newVNode","oldVNode","then","component","oldUnmount","unmount","Suspense","_suspenders","suspended","lazy","loader","prom","Lazy","exports","default","e","SuspenseList","_next","_map","promise","suspendingVNode","suspendingComponent","push","resolve","resolved","onResolved","onSuspensionComplete","suspendedVNode","removeOriginal","detachedParent","originalParent","child","insertBefore","setState","pop","forceUpdate","wasHydrating","componentWillUnmount","document","detachedComponent","detachedClone","parentDom","effect","fallback","Fragment","list","node","delete","revealOrder","size","ContextProvider","getChildContext","context","Portal","_this","container","_container","_temp","nodeType","parentNode","childNodes","appendChild","before","removeChild","splice","indexOf","createPortal","delegated","get","unsuspend","wrappedUnsuspend","Map","reverse","set","componentDidUpdate","componentDidMount","REACT_ELEMENT_TYPE","CAMEL_PROPS","onChangeInputType","test","parent","callback","textContent","preactRender","hydrate","preactHydrate","key","Object","defineProperty","configurable","v","writable","value","oldEventHook","event","empty","isPropagationStopped","cancelBubble","isDefaultPrevented","defaultPrevented","persist","nativeEvent","currentComponent","classNameDescriptor","class","oldVNodeHook","normalizedProps","toLowerCase","replace","undefined","multiple","Array","isArray","selected","defaultValue","className","enumerable","oldBeforeRender","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","ReactCurrentDispatcher","readContext","createFactory","bind","isValidElement","element","cloneElement","preactCloneElement","apply","arguments","unmountComponentAtNode","findDOMNode","base","unstable_batchedUpdates","arg","flushSync","StrictMode","useState","useReducer","useEffect","useLayoutEffect","useRef","useImperativeHandle","useMemo","useCallback","useContext","useDebugValue","version","createContext","createRef"],"mappings":"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"}
1
+ {"version":3,"file":"compat.umd.js","sources":["../src/util.js","../src/PureComponent.js","../src/memo.js","../src/forwardRef.js","../src/Children.js","../src/suspense.js","../src/suspense-list.js","../src/portals.js","../src/render.js","../src/index.js"],"sourcesContent":["/**\n * Assign properties from `props` to `obj`\n * @template O, P The obj and props types\n * @param {O} obj The object to copy properties to\n * @param {P} props The object to copy properties from\n * @returns {O & P}\n */\nexport function assign(obj, props) {\n\tfor (let i in props) obj[i] = props[i];\n\treturn /** @type {O & P} */ (obj);\n}\n\n/**\n * Check if two objects have a different shape\n * @param {object} a\n * @param {object} b\n * @returns {boolean}\n */\nexport function shallowDiffers(a, b) {\n\tfor (let i in a) if (i !== '__source' && !(i in b)) return true;\n\tfor (let i in b) if (i !== '__source' && a[i] !== b[i]) return true;\n\treturn false;\n}\n\nexport function removeNode(node) {\n\tlet parentNode = node.parentNode;\n\tif (parentNode) parentNode.removeChild(node);\n}\n","import { Component } from 'preact';\nimport { shallowDiffers } from './util';\n\n/**\n * Component class with a predefined `shouldComponentUpdate` implementation\n */\nexport function PureComponent(p) {\n\tthis.props = p;\n}\nPureComponent.prototype = new Component();\n// Some third-party libraries check if this property is present\nPureComponent.prototype.isPureReactComponent = true;\nPureComponent.prototype.shouldComponentUpdate = function(props, state) {\n\treturn shallowDiffers(this.props, props) || shallowDiffers(this.state, state);\n};\n","import { createElement } from 'preact';\nimport { shallowDiffers } from './util';\n\n/**\n * Memoize a component, so that it only updates when the props actually have\n * changed. This was previously known as `React.pure`.\n * @param {import('./internal').FunctionComponent} c functional component\n * @param {(prev: object, next: object) => boolean} [comparer] Custom equality function\n * @returns {import('./internal').FunctionComponent}\n */\nexport function memo(c, comparer) {\n\tfunction shouldUpdate(nextProps) {\n\t\tlet ref = this.props.ref;\n\t\tlet updateRef = ref == nextProps.ref;\n\t\tif (!updateRef && ref) {\n\t\t\tref.call ? ref(null) : (ref.current = null);\n\t\t}\n\n\t\tif (!comparer) {\n\t\t\treturn shallowDiffers(this.props, nextProps);\n\t\t}\n\n\t\treturn !comparer(this.props, nextProps) || !updateRef;\n\t}\n\n\tfunction Memoed(props) {\n\t\tthis.shouldComponentUpdate = shouldUpdate;\n\t\treturn createElement(c, props);\n\t}\n\tMemoed.displayName = 'Memo(' + (c.displayName || c.name) + ')';\n\tMemoed.prototype.isReactComponent = true;\n\tMemoed._forwarded = true;\n\treturn Memoed;\n}\n","import { options } from 'preact';\nimport { assign } from './util';\n\nlet oldDiffHook = options._diff;\noptions._diff = vnode => {\n\tif (vnode.type && vnode.type._forwarded && vnode.ref) {\n\t\tvnode.props.ref = vnode.ref;\n\t\tvnode.ref = null;\n\t}\n\tif (oldDiffHook) oldDiffHook(vnode);\n};\n\nexport const REACT_FORWARD_SYMBOL =\n\t(typeof Symbol != 'undefined' &&\n\t\tSymbol.for &&\n\t\tSymbol.for('react.forward_ref')) ||\n\t0xf47;\n\n/**\n * Pass ref down to a child. This is mainly used in libraries with HOCs that\n * wrap components. Using `forwardRef` there is an easy way to get a reference\n * of the wrapped component instead of one of the wrapper itself.\n * @param {import('./index').ForwardFn} fn\n * @returns {import('./internal').FunctionComponent}\n */\nexport function forwardRef(fn) {\n\t// We always have ref in props.ref, except for\n\t// mobx-react. It will call this function directly\n\t// and always pass ref as the second argument.\n\tfunction Forwarded(props, ref) {\n\t\tlet clone = assign({}, props);\n\t\tdelete clone.ref;\n\t\tref = props.ref || ref;\n\t\treturn fn(\n\t\t\tclone,\n\t\t\t!ref || (typeof ref === 'object' && !('current' in ref)) ? null : ref\n\t\t);\n\t}\n\n\t// mobx-react checks for this being present\n\tForwarded.$$typeof = REACT_FORWARD_SYMBOL;\n\t// mobx-react heavily relies on implementation details.\n\t// It expects an object here with a `render` property,\n\t// and prototype.render will fail. Without this\n\t// mobx-react throws.\n\tForwarded.render = Forwarded;\n\n\tForwarded.prototype.isReactComponent = Forwarded._forwarded = true;\n\tForwarded.displayName = 'ForwardRef(' + (fn.displayName || fn.name) + ')';\n\treturn Forwarded;\n}\n","import { toChildArray } from 'preact';\n\nconst mapFn = (children, fn) => {\n\tif (children == null) return null;\n\treturn toChildArray(toChildArray(children).map(fn));\n};\n\n// This API is completely unnecessary for Preact, so it's basically passthrough.\nexport const Children = {\n\tmap: mapFn,\n\tforEach: mapFn,\n\tcount(children) {\n\t\treturn children ? toChildArray(children).length : 0;\n\t},\n\tonly(children) {\n\t\tconst normalized = toChildArray(children);\n\t\tif (normalized.length !== 1) throw 'Children.only';\n\t\treturn normalized[0];\n\t},\n\ttoArray: toChildArray\n};\n","import { Component, createElement, options, Fragment } from 'preact';\nimport { assign } from './util';\n\nconst oldCatchError = options._catchError;\noptions._catchError = function(error, newVNode, oldVNode) {\n\tif (error.then) {\n\t\t/** @type {import('./internal').Component} */\n\t\tlet component;\n\t\tlet vnode = newVNode;\n\n\t\tfor (; (vnode = vnode._parent); ) {\n\t\t\tif ((component = vnode._component) && component._childDidSuspend) {\n\t\t\t\tif (newVNode._dom == null) {\n\t\t\t\t\tnewVNode._dom = oldVNode._dom;\n\t\t\t\t\tnewVNode._children = oldVNode._children;\n\t\t\t\t}\n\t\t\t\t// Don't call oldCatchError if we found a Suspense\n\t\t\t\treturn component._childDidSuspend(error, newVNode);\n\t\t\t}\n\t\t}\n\t}\n\toldCatchError(error, newVNode, oldVNode);\n};\n\nconst oldUnmount = options.unmount;\noptions.unmount = function(vnode) {\n\t/** @type {import('./internal').Component} */\n\tconst component = vnode._component;\n\tif (component && component._onResolve) {\n\t\tcomponent._onResolve();\n\t}\n\n\t// if the component is still hydrating\n\t// most likely it is because the component is suspended\n\t// we set the vnode.type as `null` so that it is not a typeof function\n\t// so the unmount will remove the vnode._dom\n\tif (component && vnode._hydrating === true) {\n\t\tvnode.type = null;\n\t}\n\n\tif (oldUnmount) oldUnmount(vnode);\n};\n\nfunction detachedClone(vnode, detachedParent, parentDom) {\n\tif (vnode) {\n\t\tif (vnode._component && vnode._component.__hooks) {\n\t\t\tvnode._component.__hooks._list.forEach(effect => {\n\t\t\t\tif (typeof effect._cleanup == 'function') effect._cleanup();\n\t\t\t});\n\n\t\t\tvnode._component.__hooks = null;\n\t\t}\n\n\t\tvnode = assign({}, vnode);\n\t\tif (vnode._component != null) {\n\t\t\tif (vnode._component._parentDom === parentDom) {\n\t\t\t\tvnode._component._parentDom = detachedParent;\n\t\t\t}\n\t\t\tvnode._component = null;\n\t\t}\n\n\t\tvnode._children =\n\t\t\tvnode._children &&\n\t\t\tvnode._children.map(child =>\n\t\t\t\tdetachedClone(child, detachedParent, parentDom)\n\t\t\t);\n\t}\n\n\treturn vnode;\n}\n\nfunction removeOriginal(vnode, detachedParent, originalParent) {\n\tif (vnode) {\n\t\tvnode._original = null;\n\t\tvnode._children =\n\t\t\tvnode._children &&\n\t\t\tvnode._children.map(child =>\n\t\t\t\tremoveOriginal(child, detachedParent, originalParent)\n\t\t\t);\n\n\t\tif (vnode._component) {\n\t\t\tif (vnode._component._parentDom === detachedParent) {\n\t\t\t\tif (vnode._dom) {\n\t\t\t\t\toriginalParent.insertBefore(vnode._dom, vnode._nextDom);\n\t\t\t\t}\n\t\t\t\tvnode._component._force = true;\n\t\t\t\tvnode._component._parentDom = originalParent;\n\t\t\t}\n\t\t}\n\t}\n\n\treturn vnode;\n}\n\n// having custom inheritance instead of a class here saves a lot of bytes\nexport function Suspense() {\n\t// we do not call super here to golf some bytes...\n\tthis._pendingSuspensionCount = 0;\n\tthis._suspenders = null;\n\tthis._detachOnNextRender = null;\n}\n\n// Things we do here to save some bytes but are not proper JS inheritance:\n// - call `new Component()` as the prototype\n// - do not set `Suspense.prototype.constructor` to `Suspense`\nSuspense.prototype = new Component();\n\n/**\n * @this {import('./internal').SuspenseComponent}\n * @param {Promise} promise The thrown promise\n * @param {import('./internal').VNode<any, any>} suspendingVNode The suspending component\n */\nSuspense.prototype._childDidSuspend = function(promise, suspendingVNode) {\n\tconst suspendingComponent = suspendingVNode._component;\n\n\t/** @type {import('./internal').SuspenseComponent} */\n\tconst c = this;\n\n\tif (c._suspenders == null) {\n\t\tc._suspenders = [];\n\t}\n\tc._suspenders.push(suspendingComponent);\n\n\tconst resolve = suspended(c._vnode);\n\n\tlet resolved = false;\n\tconst onResolved = () => {\n\t\tif (resolved) return;\n\n\t\tresolved = true;\n\t\tsuspendingComponent._onResolve = null;\n\n\t\tif (resolve) {\n\t\t\tresolve(onSuspensionComplete);\n\t\t} else {\n\t\t\tonSuspensionComplete();\n\t\t}\n\t};\n\n\tsuspendingComponent._onResolve = onResolved;\n\n\tconst onSuspensionComplete = () => {\n\t\tif (!--c._pendingSuspensionCount) {\n\t\t\t// If the suspension was during hydration we don't need to restore the\n\t\t\t// suspended children into the _children array\n\t\t\tif (c.state._suspended) {\n\t\t\t\tconst suspendedVNode = c.state._suspended;\n\t\t\t\tc._vnode._children[0] = removeOriginal(\n\t\t\t\t\tsuspendedVNode,\n\t\t\t\t\tsuspendedVNode._component._parentDom,\n\t\t\t\t\tsuspendedVNode._component._originalParentDom\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tc.setState({ _suspended: (c._detachOnNextRender = null) });\n\n\t\t\tlet suspended;\n\t\t\twhile ((suspended = c._suspenders.pop())) {\n\t\t\t\tsuspended.forceUpdate();\n\t\t\t}\n\t\t}\n\t};\n\n\t/**\n\t * We do not set `suspended: true` during hydration because we want the actual markup\n\t * to remain on screen and hydrate it when the suspense actually gets resolved.\n\t * While in non-hydration cases the usual fallback -> component flow would occour.\n\t */\n\tconst wasHydrating = suspendingVNode._hydrating === true;\n\tif (!c._pendingSuspensionCount++ && !wasHydrating) {\n\t\tc.setState({ _suspended: (c._detachOnNextRender = c._vnode._children[0]) });\n\t}\n\tpromise.then(onResolved, onResolved);\n};\n\nSuspense.prototype.componentWillUnmount = function() {\n\tthis._suspenders = [];\n};\n\n/**\n * @this {import('./internal').SuspenseComponent}\n * @param {import('./internal').SuspenseComponent[\"props\"]} props\n * @param {import('./internal').SuspenseState} state\n */\nSuspense.prototype.render = function(props, state) {\n\tif (this._detachOnNextRender) {\n\t\t// When the Suspense's _vnode was created by a call to createVNode\n\t\t// (i.e. due to a setState further up in the tree)\n\t\t// it's _children prop is null, in this case we \"forget\" about the parked vnodes to detach\n\t\tif (this._vnode._children) {\n\t\t\tconst detachedParent = document.createElement('div');\n\t\t\tconst detachedComponent = this._vnode._children[0]._component;\n\t\t\tthis._vnode._children[0] = detachedClone(\n\t\t\t\tthis._detachOnNextRender,\n\t\t\t\tdetachedParent,\n\t\t\t\t(detachedComponent._originalParentDom = detachedComponent._parentDom)\n\t\t\t);\n\t\t}\n\n\t\tthis._detachOnNextRender = null;\n\t}\n\n\t// Wrap fallback tree in a VNode that prevents itself from being marked as aborting mid-hydration:\n\t/** @type {import('./internal').VNode} */\n\tconst fallback =\n\t\tstate._suspended && createElement(Fragment, null, props.fallback);\n\tif (fallback) fallback._hydrating = null;\n\n\treturn [\n\t\tcreateElement(Fragment, null, state._suspended ? null : props.children),\n\t\tfallback\n\t];\n};\n\n/**\n * Checks and calls the parent component's _suspended method, passing in the\n * suspended vnode. This is a way for a parent (e.g. SuspenseList) to get notified\n * that one of its children/descendants suspended.\n *\n * The parent MAY return a callback. The callback will get called when the\n * suspension resolves, notifying the parent of the fact.\n * Moreover, the callback gets function `unsuspend` as a parameter. The resolved\n * child descendant will not actually get unsuspended until `unsuspend` gets called.\n * This is a way for the parent to delay unsuspending.\n *\n * If the parent does not return a callback then the resolved vnode\n * gets unsuspended immediately when it resolves.\n *\n * @param {import('./internal').VNode} vnode\n * @returns {((unsuspend: () => void) => void)?}\n */\nexport function suspended(vnode) {\n\t/** @type {import('./internal').Component} */\n\tlet component = vnode._parent._component;\n\treturn component && component._suspended && component._suspended(vnode);\n}\n\nexport function lazy(loader) {\n\tlet prom;\n\tlet component;\n\tlet error;\n\n\tfunction Lazy(props) {\n\t\tif (!prom) {\n\t\t\tprom = loader();\n\t\t\tprom.then(\n\t\t\t\texports => {\n\t\t\t\t\tcomponent = exports.default || exports;\n\t\t\t\t},\n\t\t\t\te => {\n\t\t\t\t\terror = e;\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\n\t\tif (error) {\n\t\t\tthrow error;\n\t\t}\n\n\t\tif (!component) {\n\t\t\tthrow prom;\n\t\t}\n\n\t\treturn createElement(component, props);\n\t}\n\n\tLazy.displayName = 'Lazy';\n\tLazy._forwarded = true;\n\treturn Lazy;\n}\n","import { Component, toChildArray } from 'preact';\nimport { suspended } from './suspense.js';\n\n// Indexes to linked list nodes (nodes are stored as arrays to save bytes).\nconst SUSPENDED_COUNT = 0;\nconst RESOLVED_COUNT = 1;\nconst NEXT_NODE = 2;\n\n// Having custom inheritance instead of a class here saves a lot of bytes.\nexport function SuspenseList() {\n\tthis._next = null;\n\tthis._map = null;\n}\n\n// Mark one of child's earlier suspensions as resolved.\n// Some pending callbacks may become callable due to this\n// (e.g. the last suspended descendant gets resolved when\n// revealOrder === 'together'). Process those callbacks as well.\nconst resolve = (list, child, node) => {\n\tif (++node[RESOLVED_COUNT] === node[SUSPENDED_COUNT]) {\n\t\t// The number a child (or any of its descendants) has been suspended\n\t\t// matches the number of times it's been resolved. Therefore we\n\t\t// mark the child as completely resolved by deleting it from ._map.\n\t\t// This is used to figure out when *all* children have been completely\n\t\t// resolved when revealOrder is 'together'.\n\t\tlist._map.delete(child);\n\t}\n\n\t// If revealOrder is falsy then we can do an early exit, as the\n\t// callbacks won't get queued in the node anyway.\n\t// If revealOrder is 'together' then also do an early exit\n\t// if all suspended descendants have not yet been resolved.\n\tif (\n\t\t!list.props.revealOrder ||\n\t\t(list.props.revealOrder[0] === 't' && list._map.size)\n\t) {\n\t\treturn;\n\t}\n\n\t// Walk the currently suspended children in order, calling their\n\t// stored callbacks on the way. Stop if we encounter a child that\n\t// has not been completely resolved yet.\n\tnode = list._next;\n\twhile (node) {\n\t\twhile (node.length > 3) {\n\t\t\tnode.pop()();\n\t\t}\n\t\tif (node[RESOLVED_COUNT] < node[SUSPENDED_COUNT]) {\n\t\t\tbreak;\n\t\t}\n\t\tlist._next = node = node[NEXT_NODE];\n\t}\n};\n\n// Things we do here to save some bytes but are not proper JS inheritance:\n// - call `new Component()` as the prototype\n// - do not set `Suspense.prototype.constructor` to `Suspense`\nSuspenseList.prototype = new Component();\n\nSuspenseList.prototype._suspended = function(child) {\n\tconst list = this;\n\tconst delegated = suspended(list._vnode);\n\n\tlet node = list._map.get(child);\n\tnode[SUSPENDED_COUNT]++;\n\n\treturn unsuspend => {\n\t\tconst wrappedUnsuspend = () => {\n\t\t\tif (!list.props.revealOrder) {\n\t\t\t\t// Special case the undefined (falsy) revealOrder, as there\n\t\t\t\t// is no need to coordinate a specific order or unsuspends.\n\t\t\t\tunsuspend();\n\t\t\t} else {\n\t\t\t\tnode.push(unsuspend);\n\t\t\t\tresolve(list, child, node);\n\t\t\t}\n\t\t};\n\t\tif (delegated) {\n\t\t\tdelegated(wrappedUnsuspend);\n\t\t} else {\n\t\t\twrappedUnsuspend();\n\t\t}\n\t};\n};\n\nSuspenseList.prototype.render = function(props) {\n\tthis._next = null;\n\tthis._map = new Map();\n\n\tconst children = toChildArray(props.children);\n\tif (props.revealOrder && props.revealOrder[0] === 'b') {\n\t\t// If order === 'backwards' (or, well, anything starting with a 'b')\n\t\t// then flip the child list around so that the last child will be\n\t\t// the first in the linked list.\n\t\tchildren.reverse();\n\t}\n\t// Build the linked list. Iterate through the children in reverse order\n\t// so that `_next` points to the first linked list node to be resolved.\n\tfor (let i = children.length; i--; ) {\n\t\t// Create a new linked list node as an array of form:\n\t\t// \t[suspended_count, resolved_count, next_node]\n\t\t// where suspended_count and resolved_count are numeric counters for\n\t\t// keeping track how many times a node has been suspended and resolved.\n\t\t//\n\t\t// Note that suspended_count starts from 1 instead of 0, so we can block\n\t\t// processing callbacks until componentDidMount has been called. In a sense\n\t\t// node is suspended at least until componentDidMount gets called!\n\t\t//\n\t\t// Pending callbacks are added to the end of the node:\n\t\t// \t[suspended_count, resolved_count, next_node, callback_0, callback_1, ...]\n\t\tthis._map.set(children[i], (this._next = [1, 0, this._next]));\n\t}\n\treturn props.children;\n};\n\nSuspenseList.prototype.componentDidUpdate = SuspenseList.prototype.componentDidMount = function() {\n\t// Iterate through all children after mounting for two reasons:\n\t// 1. As each node[SUSPENDED_COUNT] starts from 1, this iteration increases\n\t// each node[RELEASED_COUNT] by 1, therefore balancing the counters.\n\t// The nodes can now be completely consumed from the linked list.\n\t// 2. Handle nodes that might have gotten resolved between render and\n\t// componentDidMount.\n\tthis._map.forEach((node, child) => {\n\t\tresolve(this, child, node);\n\t});\n};\n","import { createElement, render } from 'preact';\n\n/**\n * @param {import('../../src/index').RenderableProps<{ context: any }>} props\n */\nfunction ContextProvider(props) {\n\tthis.getChildContext = () => props.context;\n\treturn props.children;\n}\n\n/**\n * Portal component\n * @this {import('./internal').Component}\n * @param {object | null | undefined} props\n *\n * TODO: use createRoot() instead of fake root\n */\nfunction Portal(props) {\n\tconst _this = this;\n\tlet container = props._container;\n\n\t_this.componentWillUnmount = function() {\n\t\trender(null, _this._temp);\n\t\t_this._temp = null;\n\t\t_this._container = null;\n\t};\n\n\t// When we change container we should clear our old container and\n\t// indicate a new mount.\n\tif (_this._container && _this._container !== container) {\n\t\t_this.componentWillUnmount();\n\t}\n\n\t// When props.vnode is undefined/false/null we are dealing with some kind of\n\t// conditional vnode. This should not trigger a render.\n\tif (props._vnode) {\n\t\tif (!_this._temp) {\n\t\t\t_this._container = container;\n\n\t\t\t// Create a fake DOM parent node that manages a subset of `container`'s children:\n\t\t\t_this._temp = {\n\t\t\t\tnodeType: 1,\n\t\t\t\tparentNode: container,\n\t\t\t\tchildNodes: [],\n\t\t\t\tappendChild(child) {\n\t\t\t\t\tthis.childNodes.push(child);\n\t\t\t\t\t_this._container.appendChild(child);\n\t\t\t\t},\n\t\t\t\tinsertBefore(child, before) {\n\t\t\t\t\tthis.childNodes.push(child);\n\t\t\t\t\t_this._container.appendChild(child);\n\t\t\t\t},\n\t\t\t\tremoveChild(child) {\n\t\t\t\t\tthis.childNodes.splice(this.childNodes.indexOf(child) >>> 1, 1);\n\t\t\t\t\t_this._container.removeChild(child);\n\t\t\t\t}\n\t\t\t};\n\t\t}\n\n\t\t// Render our wrapping element into temp.\n\t\trender(\n\t\t\tcreateElement(ContextProvider, { context: _this.context }, props._vnode),\n\t\t\t_this._temp\n\t\t);\n\t}\n\t// When we come from a conditional render, on a mounted\n\t// portal we should clear the DOM.\n\telse if (_this._temp) {\n\t\t_this.componentWillUnmount();\n\t}\n}\n\n/**\n * Create a `Portal` to continue rendering the vnode tree at a different DOM node\n * @param {import('./internal').VNode} vnode The vnode to render\n * @param {import('./internal').PreactElement} container The DOM node to continue rendering in to.\n */\nexport function createPortal(vnode, container) {\n\treturn createElement(Portal, { _vnode: vnode, _container: container });\n}\n","import {\n\trender as preactRender,\n\thydrate as preactHydrate,\n\toptions,\n\ttoChildArray,\n\tComponent\n} from 'preact';\n\nexport const REACT_ELEMENT_TYPE =\n\t(typeof Symbol != 'undefined' && Symbol.for && Symbol.for('react.element')) ||\n\t0xeac7;\n\nconst CAMEL_PROPS = /^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|marker(?!H|W|U)|overline|paint|stop|strikethrough|stroke|text(?!L)|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/;\n\nconst IS_DOM = typeof document !== 'undefined';\n\n// Input types for which onchange should not be converted to oninput.\n// type=\"file|checkbox|radio\", plus \"range\" in IE11.\n// (IE11 doesn't support Symbol, which we use here to turn `rad` into `ra` which matches \"range\")\nconst onChangeInputType = type =>\n\t(typeof Symbol != 'undefined' && typeof Symbol() == 'symbol'\n\t\t? /fil|che|rad/i\n\t\t: /fil|che|ra/i\n\t).test(type);\n\n// Some libraries like `react-virtualized` explicitly check for this.\nComponent.prototype.isReactComponent = {};\n\n// `UNSAFE_*` lifecycle hooks\n// Preact only ever invokes the unprefixed methods.\n// Here we provide a base \"fallback\" implementation that calls any defined UNSAFE_ prefixed method.\n// - If a component defines its own `componentDidMount()` (including via defineProperty), use that.\n// - If a component defines `UNSAFE_componentDidMount()`, `componentDidMount` is the alias getter/setter.\n// - If anything assigns to an `UNSAFE_*` property, the assignment is forwarded to the unprefixed property.\n// See https://github.com/preactjs/preact/issues/1941\n[\n\t'componentWillMount',\n\t'componentWillReceiveProps',\n\t'componentWillUpdate'\n].forEach(key => {\n\tObject.defineProperty(Component.prototype, key, {\n\t\tconfigurable: true,\n\t\tget() {\n\t\t\treturn this['UNSAFE_' + key];\n\t\t},\n\t\tset(v) {\n\t\t\tObject.defineProperty(this, key, {\n\t\t\t\tconfigurable: true,\n\t\t\t\twritable: true,\n\t\t\t\tvalue: v\n\t\t\t});\n\t\t}\n\t});\n});\n\n/**\n * Proxy render() since React returns a Component reference.\n * @param {import('./internal').VNode} vnode VNode tree to render\n * @param {import('./internal').PreactElement} parent DOM node to render vnode tree into\n * @param {() => void} [callback] Optional callback that will be called after rendering\n * @returns {import('./internal').Component | null} The root component reference or null\n */\nexport function render(vnode, parent, callback) {\n\t// React destroys any existing DOM nodes, see #1727\n\t// ...but only on the first render, see #1828\n\tif (parent._children == null) {\n\t\tparent.textContent = '';\n\t}\n\n\tpreactRender(vnode, parent);\n\tif (typeof callback == 'function') callback();\n\n\treturn vnode ? vnode._component : null;\n}\n\nexport function hydrate(vnode, parent, callback) {\n\tpreactHydrate(vnode, parent);\n\tif (typeof callback == 'function') callback();\n\n\treturn vnode ? vnode._component : null;\n}\n\nlet oldEventHook = options.event;\noptions.event = e => {\n\tif (oldEventHook) e = oldEventHook(e);\n\te.persist = empty;\n\te.isPropagationStopped = isPropagationStopped;\n\te.isDefaultPrevented = isDefaultPrevented;\n\treturn (e.nativeEvent = e);\n};\n\nfunction empty() {}\n\nfunction isPropagationStopped() {\n\treturn this.cancelBubble;\n}\n\nfunction isDefaultPrevented() {\n\treturn this.defaultPrevented;\n}\n\nlet classNameDescriptor = {\n\tconfigurable: true,\n\tget() {\n\t\treturn this.class;\n\t}\n};\n\nlet oldVNodeHook = options.vnode;\noptions.vnode = vnode => {\n\tlet type = vnode.type;\n\tlet props = vnode.props;\n\tlet normalizedProps = props;\n\n\t// only normalize props on Element nodes\n\tif (typeof type === 'string') {\n\t\tconst nonCustomElement = type.indexOf('-') === -1;\n\t\tnormalizedProps = {};\n\n\t\tfor (let i in props) {\n\t\t\tlet value = props[i];\n\n\t\t\tif (IS_DOM && i === 'children' && type === 'noscript') {\n\t\t\t\t// Emulate React's behavior of not rendering the contents of noscript tags on the client.\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\telse if (i === 'value' && 'defaultValue' in props && value == null) {\n\t\t\t\t// Skip applying value if it is null/undefined and we already set\n\t\t\t\t// a default value\n\t\t\t\tcontinue;\n\t\t\t} else if (\n\t\t\t\ti === 'defaultValue' &&\n\t\t\t\t'value' in props &&\n\t\t\t\tprops.value == null\n\t\t\t) {\n\t\t\t\t// `defaultValue` is treated as a fallback `value` when a value prop is present but null/undefined.\n\t\t\t\t// `defaultValue` for Elements with no value prop is the same as the DOM defaultValue property.\n\t\t\t\ti = 'value';\n\t\t\t} else if (i === 'download' && value === true) {\n\t\t\t\t// Calling `setAttribute` with a truthy value will lead to it being\n\t\t\t\t// passed as a stringified value, e.g. `download=\"true\"`. React\n\t\t\t\t// converts it to an empty string instead, otherwise the attribute\n\t\t\t\t// value will be used as the file name and the file will be called\n\t\t\t\t// \"true\" upon downloading it.\n\t\t\t\tvalue = '';\n\t\t\t} else if (/ondoubleclick/i.test(i)) {\n\t\t\t\ti = 'ondblclick';\n\t\t\t} else if (\n\t\t\t\t/^onchange(textarea|input)/i.test(i + type) &&\n\t\t\t\t!onChangeInputType(props.type)\n\t\t\t) {\n\t\t\t\ti = 'oninput';\n\t\t\t} else if (/^on(Ani|Tra|Tou|BeforeInp)/.test(i)) {\n\t\t\t\ti = i.toLowerCase();\n\t\t\t} else if (nonCustomElement && CAMEL_PROPS.test(i)) {\n\t\t\t\ti = i.replace(/[A-Z0-9]/, '-$&').toLowerCase();\n\t\t\t} else if (value === null) {\n\t\t\t\tvalue = undefined;\n\t\t\t}\n\n\t\t\tnormalizedProps[i] = value;\n\t\t}\n\n\t\t// Add support for array select values: <select multiple value={[]} />\n\t\tif (\n\t\t\ttype == 'select' &&\n\t\t\tnormalizedProps.multiple &&\n\t\t\tArray.isArray(normalizedProps.value)\n\t\t) {\n\t\t\t// forEach() always returns undefined, which we abuse here to unset the value prop.\n\t\t\tnormalizedProps.value = toChildArray(props.children).forEach(child => {\n\t\t\t\tchild.props.selected =\n\t\t\t\t\tnormalizedProps.value.indexOf(child.props.value) != -1;\n\t\t\t});\n\t\t}\n\n\t\t// Adding support for defaultValue in select tag\n\t\tif (type == 'select' && normalizedProps.defaultValue != null) {\n\t\t\tnormalizedProps.value = toChildArray(props.children).forEach(child => {\n\t\t\t\tif (normalizedProps.multiple) {\n\t\t\t\t\tchild.props.selected =\n\t\t\t\t\t\tnormalizedProps.defaultValue.indexOf(child.props.value) != -1;\n\t\t\t\t} else {\n\t\t\t\t\tchild.props.selected =\n\t\t\t\t\t\tnormalizedProps.defaultValue == child.props.value;\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tvnode.props = normalizedProps;\n\t}\n\n\tif (type && props.class != props.className) {\n\t\tclassNameDescriptor.enumerable = 'className' in props;\n\t\tif (props.className != null) normalizedProps.class = props.className;\n\t\tObject.defineProperty(normalizedProps, 'className', classNameDescriptor);\n\t}\n\n\tvnode.$$typeof = REACT_ELEMENT_TYPE;\n\n\tif (oldVNodeHook) oldVNodeHook(vnode);\n};\n\n// Only needed for react-relay\nlet currentComponent;\nconst oldBeforeRender = options._render;\noptions._render = function(vnode) {\n\tif (oldBeforeRender) {\n\t\toldBeforeRender(vnode);\n\t}\n\tcurrentComponent = vnode._component;\n};\n\n// This is a very very private internal function for React it\n// is used to sort-of do runtime dependency injection. So far\n// only `react-relay` makes use of it. It uses it to read the\n// context value.\nexport const __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = {\n\tReactCurrentDispatcher: {\n\t\tcurrent: {\n\t\t\treadContext(context) {\n\t\t\t\treturn currentComponent._globalContext[context._id].props.value;\n\t\t\t}\n\t\t}\n\t}\n};\n","import {\n\tcreateElement,\n\trender as preactRender,\n\tcloneElement as preactCloneElement,\n\tcreateRef,\n\tComponent,\n\tcreateContext,\n\tFragment\n} from 'preact';\nimport {\n\tuseState,\n\tuseReducer,\n\tuseEffect,\n\tuseLayoutEffect,\n\tuseRef,\n\tuseImperativeHandle,\n\tuseMemo,\n\tuseCallback,\n\tuseContext,\n\tuseDebugValue\n} from 'preact/hooks';\nimport { PureComponent } from './PureComponent';\nimport { memo } from './memo';\nimport { forwardRef } from './forwardRef';\nimport { Children } from './Children';\nimport { Suspense, lazy } from './suspense';\nimport { SuspenseList } from './suspense-list';\nimport { createPortal } from './portals';\nimport {\n\thydrate,\n\trender,\n\tREACT_ELEMENT_TYPE,\n\t__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED\n} from './render';\n\nconst version = '17.0.2'; // trick libraries to think we are react\n\n/**\n * Legacy version of createElement.\n * @param {import('./internal').VNode[\"type\"]} type The node name or Component constructor\n */\nfunction createFactory(type) {\n\treturn createElement.bind(null, type);\n}\n\n/**\n * Check if the passed element is a valid (p)react node.\n * @param {*} element The element to check\n * @returns {boolean}\n */\nfunction isValidElement(element) {\n\treturn !!element && element.$$typeof === REACT_ELEMENT_TYPE;\n}\n\n/**\n * Wrap `cloneElement` to abort if the passed element is not a valid element and apply\n * all vnode normalizations.\n * @param {import('./internal').VNode} element The vnode to clone\n * @param {object} props Props to add when cloning\n * @param {Array<import('./internal').ComponentChildren>} rest Optional component children\n */\nfunction cloneElement(element) {\n\tif (!isValidElement(element)) return element;\n\treturn preactCloneElement.apply(null, arguments);\n}\n\n/**\n * Remove a component tree from the DOM, including state and event handlers.\n * @param {import('./internal').PreactElement} container\n * @returns {boolean}\n */\nfunction unmountComponentAtNode(container) {\n\tif (container._children) {\n\t\tpreactRender(null, container);\n\t\treturn true;\n\t}\n\treturn false;\n}\n\n/**\n * Get the matching DOM node for a component\n * @param {import('./internal').Component} component\n * @returns {import('./internal').PreactElement | null}\n */\nfunction findDOMNode(component) {\n\treturn (\n\t\t(component &&\n\t\t\t(component.base || (component.nodeType === 1 && component))) ||\n\t\tnull\n\t);\n}\n\n/**\n * Deprecated way to control batched rendering inside the reconciler, but we\n * already schedule in batches inside our rendering code\n * @template Arg\n * @param {(arg: Arg) => void} callback function that triggers the updated\n * @param {Arg} [arg] Optional argument that can be passed to the callback\n */\n// eslint-disable-next-line camelcase\nconst unstable_batchedUpdates = (callback, arg) => callback(arg);\n\n/**\n * In React, `flushSync` flushes the entire tree and forces a rerender. It's\n * implmented here as a no-op.\n * @template Arg\n * @template Result\n * @param {(arg: Arg) => Result} callback function that runs before the flush\n * @param {Arg} [arg] Optional arugment that can be passed to the callback\n * @returns\n */\nconst flushSync = (callback, arg) => callback(arg);\n\n/**\n * Strict Mode is not implemented in Preact, so we provide a stand-in for it\n * that just renders its children without imposing any restrictions.\n */\nconst StrictMode = Fragment;\n\nexport * from 'preact/hooks';\nexport {\n\tversion,\n\tChildren,\n\trender,\n\thydrate,\n\tunmountComponentAtNode,\n\tcreatePortal,\n\tcreateElement,\n\tcreateContext,\n\tcreateFactory,\n\tcloneElement,\n\tcreateRef,\n\tFragment,\n\tisValidElement,\n\tfindDOMNode,\n\tComponent,\n\tPureComponent,\n\tmemo,\n\tforwardRef,\n\tflushSync,\n\t// eslint-disable-next-line camelcase\n\tunstable_batchedUpdates,\n\tStrictMode,\n\tSuspense,\n\tSuspenseList,\n\tlazy,\n\t__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED\n};\n\n// React copies the named exports to the default one.\nexport default {\n\tuseState,\n\tuseReducer,\n\tuseEffect,\n\tuseLayoutEffect,\n\tuseRef,\n\tuseImperativeHandle,\n\tuseMemo,\n\tuseCallback,\n\tuseContext,\n\tuseDebugValue,\n\tversion,\n\tChildren,\n\trender,\n\thydrate,\n\tunmountComponentAtNode,\n\tcreatePortal,\n\tcreateElement,\n\tcreateContext,\n\tcreateFactory,\n\tcloneElement,\n\tcreateRef,\n\tFragment,\n\tisValidElement,\n\tfindDOMNode,\n\tComponent,\n\tPureComponent,\n\tmemo,\n\tforwardRef,\n\tflushSync,\n\tunstable_batchedUpdates,\n\tStrictMode,\n\tSuspense,\n\tSuspenseList,\n\tlazy,\n\t__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED\n};\n"],"names":["assign","obj","props","i","shallowDiffers","a","b","PureComponent","p","memo","c","comparer","shouldUpdate","nextProps","ref","this","updateRef","call","current","Memoed","shouldComponentUpdate","createElement","displayName","name","prototype","isReactComponent","Component","isPureReactComponent","state","oldDiffHook","options","vnode","type","REACT_FORWARD_SYMBOL","Symbol","for","forwardRef","fn","Forwarded","clone","$$typeof","render","mapFn","children","toChildArray","map","Children","forEach","count","length","only","normalized","toArray","oldCatchError","error","newVNode","oldVNode","then","component","oldUnmount","unmount","Suspense","_suspenders","suspended","lazy","loader","prom","Lazy","exports","default","e","SuspenseList","_next","_map","promise","suspendingVNode","suspendingComponent","push","resolve","resolved","onResolved","onSuspensionComplete","suspendedVNode","removeOriginal","detachedParent","originalParent","child","insertBefore","setState","pop","forceUpdate","wasHydrating","componentWillUnmount","document","detachedComponent","detachedClone","parentDom","effect","fallback","Fragment","list","node","delete","revealOrder","size","ContextProvider","getChildContext","context","Portal","_this","container","_container","_temp","nodeType","parentNode","childNodes","appendChild","before","removeChild","splice","indexOf","createPortal","delegated","get","unsuspend","wrappedUnsuspend","Map","reverse","set","componentDidUpdate","componentDidMount","REACT_ELEMENT_TYPE","CAMEL_PROPS","IS_DOM","onChangeInputType","test","parent","callback","textContent","preactRender","hydrate","preactHydrate","key","Object","defineProperty","configurable","v","writable","value","oldEventHook","event","empty","isPropagationStopped","cancelBubble","isDefaultPrevented","defaultPrevented","persist","nativeEvent","currentComponent","classNameDescriptor","class","oldVNodeHook","normalizedProps","nonCustomElement","toLowerCase","replace","undefined","multiple","Array","isArray","selected","defaultValue","className","enumerable","oldBeforeRender","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","ReactCurrentDispatcher","readContext","createFactory","bind","isValidElement","element","cloneElement","preactCloneElement","apply","arguments","unmountComponentAtNode","findDOMNode","base","unstable_batchedUpdates","arg","flushSync","StrictMode","useState","useReducer","useEffect","useLayoutEffect","useRef","useImperativeHandle","useMemo","useCallback","useContext","useDebugValue","version","createContext","createRef"],"mappings":"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"}
@@ -105,7 +105,7 @@ declare namespace React {
105
105
 
106
106
  export function forwardRef<R, P = {}>(
107
107
  fn: ForwardFn<P, R>
108
- ): preact.FunctionalComponent<Omit<P, 'ref'> & { ref?: preact.RefObject<R> }>;
108
+ ): preact.FunctionalComponent<Omit<P, 'ref'> & { ref?: preact.Ref<R> }>;
109
109
 
110
110
  export function unstable_batchedUpdates(
111
111
  callback: (arg?: any) => void,
@@ -10,7 +10,9 @@ export const REACT_ELEMENT_TYPE =
10
10
  (typeof Symbol != 'undefined' && Symbol.for && Symbol.for('react.element')) ||
11
11
  0xeac7;
12
12
 
13
- const CAMEL_PROPS = /^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|fill|flood|font|glyph(?!R)|horiz|marker(?!H|W|U)|overline|paint|stop|strikethrough|stroke|text(?!L)|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/;
13
+ const CAMEL_PROPS = /^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|marker(?!H|W|U)|overline|paint|stop|strikethrough|stroke|text(?!L)|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/;
14
+
15
+ const IS_DOM = typeof document !== 'undefined';
14
16
 
15
17
  // Input types for which onchange should not be converted to oninput.
16
18
  // type="file|checkbox|radio", plus "range" in IE11.
@@ -112,12 +114,17 @@ options.vnode = vnode => {
112
114
 
113
115
  // only normalize props on Element nodes
114
116
  if (typeof type === 'string') {
117
+ const nonCustomElement = type.indexOf('-') === -1;
115
118
  normalizedProps = {};
116
119
 
117
120
  for (let i in props) {
118
121
  let value = props[i];
119
122
 
120
- if (i === 'value' && 'defaultValue' in props && value == null) {
123
+ if (IS_DOM && i === 'children' && type === 'noscript') {
124
+ // Emulate React's behavior of not rendering the contents of noscript tags on the client.
125
+ continue;
126
+ }
127
+ else if (i === 'value' && 'defaultValue' in props && value == null) {
121
128
  // Skip applying value if it is null/undefined and we already set
122
129
  // a default value
123
130
  continue;
@@ -145,7 +152,7 @@ options.vnode = vnode => {
145
152
  i = 'oninput';
146
153
  } else if (/^on(Ani|Tra|Tou|BeforeInp)/.test(i)) {
147
154
  i = i.toLowerCase();
148
- } else if (CAMEL_PROPS.test(i)) {
155
+ } else if (nonCustomElement && CAMEL_PROPS.test(i)) {
149
156
  i = i.replace(/[A-Z0-9]/, '-$&').toLowerCase();
150
157
  } else if (value === null) {
151
158
  value = undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"debug.js","sources":["../src/check-props.js","../src/component-stack.js","../src/debug.js","../src/constants.js","../src/util.js"],"sourcesContent":["const ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nlet loggedTypeFailures = {};\n\n/**\n * Reset the history of which prop type warnings have been logged.\n */\nexport function resetPropWarnings() {\n\tloggedTypeFailures = {};\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * Adapted from https://github.com/facebook/prop-types/blob/master/checkPropTypes.js\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n */\nexport function checkPropTypes(\n\ttypeSpecs,\n\tvalues,\n\tlocation,\n\tcomponentName,\n\tgetStack\n) {\n\tObject.keys(typeSpecs).forEach(typeSpecName => {\n\t\tlet error;\n\t\ttry {\n\t\t\terror = typeSpecs[typeSpecName](\n\t\t\t\tvalues,\n\t\t\t\ttypeSpecName,\n\t\t\t\tcomponentName,\n\t\t\t\tlocation,\n\t\t\t\tnull,\n\t\t\t\tReactPropTypesSecret\n\t\t\t);\n\t\t} catch (e) {\n\t\t\terror = e;\n\t\t}\n\t\tif (error && !(error.message in loggedTypeFailures)) {\n\t\t\tloggedTypeFailures[error.message] = true;\n\t\t\tconsole.error(\n\t\t\t\t`Failed ${location} type: ${error.message}${(getStack &&\n\t\t\t\t\t`\\n${getStack()}`) ||\n\t\t\t\t\t''}`\n\t\t\t);\n\t\t}\n\t});\n}\n","import { options, Fragment } from 'preact';\n\n/**\n * Get human readable name of the component/dom node\n * @param {import('./internal').VNode} vnode\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function getDisplayName(vnode) {\n\tif (vnode.type === Fragment) {\n\t\treturn 'Fragment';\n\t} else if (typeof vnode.type == 'function') {\n\t\treturn vnode.type.displayName || vnode.type.name;\n\t} else if (typeof vnode.type == 'string') {\n\t\treturn vnode.type;\n\t}\n\n\treturn '#text';\n}\n\n/**\n * Used to keep track of the currently rendered `vnode` and print it\n * in debug messages.\n */\nlet renderStack = [];\n\n/**\n * Keep track of the current owners. An owner describes a component\n * which was responsible to render a specific `vnode`. This exclude\n * children that are passed via `props.children`, because they belong\n * to the parent owner.\n *\n * ```jsx\n * const Foo = props => <div>{props.children}</div> // div's owner is Foo\n * const Bar = props => {\n * return (\n * <Foo><span /></Foo> // Foo's owner is Bar, span's owner is Bar\n * )\n * }\n * ```\n *\n * Note: A `vnode` may be hoisted to the root scope due to compiler\n * optimiztions. In these cases the `_owner` will be different.\n */\nlet ownerStack = [];\n\n/**\n * Get the currently rendered `vnode`\n * @returns {import('./internal').VNode | null}\n */\nexport function getCurrentVNode() {\n\treturn renderStack.length > 0 ? renderStack[renderStack.length - 1] : null;\n}\n\n/**\n * If the user doesn't have `@babel/plugin-transform-react-jsx-source`\n * somewhere in his tool chain we can't print the filename and source\n * location of a component. In that case we just omit that, but we'll\n * print a helpful message to the console, notifying the user of it.\n */\nlet hasBabelPlugin = false;\n\n/**\n * Check if a `vnode` is a possible owner.\n * @param {import('./internal').VNode} vnode\n */\nfunction isPossibleOwner(vnode) {\n\treturn typeof vnode.type == 'function' && vnode.type != Fragment;\n}\n\n/**\n * Return the component stack that was captured up to this point.\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function getOwnerStack(vnode) {\n\tconst stack = [vnode];\n\tlet next = vnode;\n\twhile (next._owner != null) {\n\t\tstack.push(next._owner);\n\t\tnext = next._owner;\n\t}\n\n\treturn stack.reduce((acc, owner) => {\n\t\tacc += ` in ${getDisplayName(owner)}`;\n\n\t\tconst source = owner.__source;\n\t\tif (source) {\n\t\t\tacc += ` (at ${source.fileName}:${source.lineNumber})`;\n\t\t} else if (!hasBabelPlugin) {\n\t\t\thasBabelPlugin = true;\n\t\t\tconsole.warn(\n\t\t\t\t'Add @babel/plugin-transform-react-jsx-source to get a more detailed component stack. Note that you should not add it to production builds of your App for bundle size reasons.'\n\t\t\t);\n\t\t}\n\n\t\treturn (acc += '\\n');\n\t}, '');\n}\n\n/**\n * Setup code to capture the component trace while rendering. Note that\n * we cannot simply traverse `vnode._parent` upwards, because we have some\n * debug messages for `this.setState` where the `vnode` is `undefined`.\n */\nexport function setupComponentStack() {\n\tlet oldDiff = options._diff;\n\tlet oldDiffed = options.diffed;\n\tlet oldRoot = options._root;\n\tlet oldVNode = options.vnode;\n\tlet oldRender = options._render;\n\n\toptions.diffed = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\townerStack.pop();\n\t\t}\n\t\trenderStack.pop();\n\t\tif (oldDiffed) oldDiffed(vnode);\n\t};\n\n\toptions._diff = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\trenderStack.push(vnode);\n\t\t}\n\t\tif (oldDiff) oldDiff(vnode);\n\t};\n\n\toptions._root = (vnode, parent) => {\n\t\townerStack = [];\n\t\tif (oldRoot) oldRoot(vnode, parent);\n\t};\n\n\toptions.vnode = vnode => {\n\t\tvnode._owner =\n\t\t\townerStack.length > 0 ? ownerStack[ownerStack.length - 1] : null;\n\t\tif (oldVNode) oldVNode(vnode);\n\t};\n\n\toptions._render = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\townerStack.push(vnode);\n\t\t}\n\n\t\tif (oldRender) oldRender(vnode);\n\t};\n}\n","import { checkPropTypes } from './check-props';\nimport { options, Component } from 'preact';\nimport {\n\tELEMENT_NODE,\n\tDOCUMENT_NODE,\n\tDOCUMENT_FRAGMENT_NODE\n} from './constants';\nimport {\n\tgetOwnerStack,\n\tsetupComponentStack,\n\tgetCurrentVNode,\n\tgetDisplayName\n} from './component-stack';\nimport { assign } from './util';\n\nconst isWeakMapSupported = typeof WeakMap == 'function';\n\nfunction getClosestDomNodeParent(parent) {\n\tif (!parent) return {};\n\tif (typeof parent.type == 'function') {\n\t\treturn getClosestDomNodeParent(parent._parent);\n\t}\n\treturn parent;\n}\n\nexport function initDebug() {\n\tsetupComponentStack();\n\n\tlet hooksAllowed = false;\n\n\t/* eslint-disable no-console */\n\tlet oldBeforeDiff = options._diff;\n\tlet oldDiffed = options.diffed;\n\tlet oldVnode = options.vnode;\n\tlet oldCatchError = options._catchError;\n\tlet oldRoot = options._root;\n\tlet oldHook = options._hook;\n\tconst warnedComponents = !isWeakMapSupported\n\t\t? null\n\t\t: {\n\t\t\t\tuseEffect: new WeakMap(),\n\t\t\t\tuseLayoutEffect: new WeakMap(),\n\t\t\t\tlazyPropTypes: new WeakMap()\n\t\t };\n\tconst deprecations = [];\n\n\toptions._catchError = (error, vnode, oldVNode) => {\n\t\tlet component = vnode && vnode._component;\n\t\tif (component && typeof error.then == 'function') {\n\t\t\tconst promise = error;\n\t\t\terror = new Error(\n\t\t\t\t`Missing Suspense. The throwing component was: ${getDisplayName(vnode)}`\n\t\t\t);\n\n\t\t\tlet parent = vnode;\n\t\t\tfor (; parent; parent = parent._parent) {\n\t\t\t\tif (parent._component && parent._component._childDidSuspend) {\n\t\t\t\t\terror = promise;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// We haven't recovered and we know at this point that there is no\n\t\t\t// Suspense component higher up in the tree\n\t\t\tif (error instanceof Error) {\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t}\n\n\t\ttry {\n\t\t\toldCatchError(error, vnode, oldVNode);\n\n\t\t\t// when an error was handled by an ErrorBoundary we will nontheless emit an error\n\t\t\t// event on the window object. This is to make up for react compatibility in dev mode\n\t\t\t// and thus make the Next.js dev overlay work.\n\t\t\tif (typeof error.then != 'function') {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthrow error;\n\t\t\t\t});\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tthrow e;\n\t\t}\n\t};\n\n\toptions._root = (vnode, parentNode) => {\n\t\tif (!parentNode) {\n\t\t\tthrow new Error(\n\t\t\t\t'Undefined parent passed to render(), this is the second argument.\\n' +\n\t\t\t\t\t'Check if the element is available in the DOM/has the correct id.'\n\t\t\t);\n\t\t}\n\n\t\tlet isValid;\n\t\tswitch (parentNode.nodeType) {\n\t\t\tcase ELEMENT_NODE:\n\t\t\tcase DOCUMENT_FRAGMENT_NODE:\n\t\t\tcase DOCUMENT_NODE:\n\t\t\t\tisValid = true;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tisValid = false;\n\t\t}\n\n\t\tif (!isValid) {\n\t\t\tlet componentName = getDisplayName(vnode);\n\t\t\tthrow new Error(\n\t\t\t\t`Expected a valid HTML node as a second argument to render.\tReceived ${parentNode} instead: render(<${componentName} />, ${parentNode});`\n\t\t\t);\n\t\t}\n\n\t\tif (oldRoot) oldRoot(vnode, parentNode);\n\t};\n\n\toptions._diff = vnode => {\n\t\tlet { type, _parent: parent } = vnode;\n\t\tlet parentVNode = getClosestDomNodeParent(parent);\n\n\t\thooksAllowed = true;\n\n\t\tif (type === undefined) {\n\t\t\tthrow new Error(\n\t\t\t\t'Undefined component passed to createElement()\\n\\n' +\n\t\t\t\t\t'You likely forgot to export your component or might have mixed up default and named imports' +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t} else if (type != null && typeof type == 'object') {\n\t\t\tif (type._children !== undefined && type._dom !== undefined) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`Invalid type passed to createElement(): ${type}\\n\\n` +\n\t\t\t\t\t\t'Did you accidentally pass a JSX literal as JSX twice?\\n\\n' +\n\t\t\t\t\t\t` let My${getDisplayName(vnode)} = ${serializeVNode(type)};\\n` +\n\t\t\t\t\t\t` let vnode = <My${getDisplayName(vnode)} />;\\n\\n` +\n\t\t\t\t\t\t'This usually happens when you export a JSX literal and not the component.' +\n\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tthrow new Error(\n\t\t\t\t'Invalid type passed to createElement(): ' +\n\t\t\t\t\t(Array.isArray(type) ? 'array' : type)\n\t\t\t);\n\t\t}\n\n\t\tif (\n\t\t\t(type === 'thead' || type === 'tfoot' || type === 'tbody') &&\n\t\t\tparentVNode.type !== 'table'\n\t\t) {\n\t\t\tconsole.error(\n\t\t\t\t'Improper nesting of table. Your <thead/tbody/tfoot> should have a <table> parent.' +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t} else if (\n\t\t\ttype === 'tr' &&\n\t\t\tparentVNode.type !== 'thead' &&\n\t\t\tparentVNode.type !== 'tfoot' &&\n\t\t\tparentVNode.type !== 'tbody' &&\n\t\t\tparentVNode.type !== 'table'\n\t\t) {\n\t\t\tconsole.error(\n\t\t\t\t'Improper nesting of table. Your <tr> should have a <thead/tbody/tfoot/table> parent.' +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t} else if (type === 'td' && parentVNode.type !== 'tr') {\n\t\t\tconsole.error(\n\t\t\t\t'Improper nesting of table. Your <td> should have a <tr> parent.' +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t} else if (type === 'th' && parentVNode.type !== 'tr') {\n\t\t\tconsole.error(\n\t\t\t\t'Improper nesting of table. Your <th> should have a <tr>.' +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t}\n\n\t\tif (\n\t\t\tvnode.ref !== undefined &&\n\t\t\ttypeof vnode.ref != 'function' &&\n\t\t\ttypeof vnode.ref != 'object' &&\n\t\t\t!('$$typeof' in vnode) // allow string refs when preact-compat is installed\n\t\t) {\n\t\t\tthrow new Error(\n\t\t\t\t`Component's \"ref\" property should be a function, or an object created ` +\n\t\t\t\t\t`by createRef(), but got [${typeof vnode.ref}] instead\\n` +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t}\n\n\t\tif (typeof vnode.type == 'string') {\n\t\t\tfor (const key in vnode.props) {\n\t\t\t\tif (\n\t\t\t\t\tkey[0] === 'o' &&\n\t\t\t\t\tkey[1] === 'n' &&\n\t\t\t\t\ttypeof vnode.props[key] != 'function' &&\n\t\t\t\t\tvnode.props[key] != null\n\t\t\t\t) {\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t`Component's \"${key}\" property should be a function, ` +\n\t\t\t\t\t\t\t`but got [${typeof vnode.props[key]}] instead\\n` +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Check prop-types if available\n\t\tif (typeof vnode.type == 'function' && vnode.type.propTypes) {\n\t\t\tif (\n\t\t\t\tvnode.type.displayName === 'Lazy' &&\n\t\t\t\twarnedComponents &&\n\t\t\t\t!warnedComponents.lazyPropTypes.has(vnode.type)\n\t\t\t) {\n\t\t\t\tconst m =\n\t\t\t\t\t'PropTypes are not supported on lazy(). Use propTypes on the wrapped component itself. ';\n\t\t\t\ttry {\n\t\t\t\t\tconst lazyVNode = vnode.type();\n\t\t\t\t\twarnedComponents.lazyPropTypes.set(vnode.type, true);\n\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\tm + `Component wrapped in lazy() is ${getDisplayName(lazyVNode)}`\n\t\t\t\t\t);\n\t\t\t\t} catch (promise) {\n\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\tm + \"We will log the wrapped component's name once it is loaded.\"\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tlet values = vnode.props;\n\t\t\tif (vnode.type._forwarded) {\n\t\t\t\tvalues = assign({}, values);\n\t\t\t\tdelete values.ref;\n\t\t\t}\n\n\t\t\tcheckPropTypes(\n\t\t\t\tvnode.type.propTypes,\n\t\t\t\tvalues,\n\t\t\t\t'prop',\n\t\t\t\tgetDisplayName(vnode),\n\t\t\t\t() => getOwnerStack(vnode)\n\t\t\t);\n\t\t}\n\n\t\tif (oldBeforeDiff) oldBeforeDiff(vnode);\n\t};\n\n\toptions._hook = (comp, index, type) => {\n\t\tif (!comp || !hooksAllowed) {\n\t\t\tthrow new Error('Hook can only be invoked from render methods.');\n\t\t}\n\n\t\tif (oldHook) oldHook(comp, index, type);\n\t};\n\n\t// Ideally we'd want to print a warning once per component, but we\n\t// don't have access to the vnode that triggered it here. As a\n\t// compromise and to avoid flooding the console with warnings we\n\t// print each deprecation warning only once.\n\tconst warn = (property, message) => ({\n\t\tget() {\n\t\t\tconst key = 'get' + property + message;\n\t\t\tif (deprecations && deprecations.indexOf(key) < 0) {\n\t\t\t\tdeprecations.push(key);\n\t\t\t\tconsole.warn(`getting vnode.${property} is deprecated, ${message}`);\n\t\t\t}\n\t\t},\n\t\tset() {\n\t\t\tconst key = 'set' + property + message;\n\t\t\tif (deprecations && deprecations.indexOf(key) < 0) {\n\t\t\t\tdeprecations.push(key);\n\t\t\t\tconsole.warn(`setting vnode.${property} is not allowed, ${message}`);\n\t\t\t}\n\t\t}\n\t});\n\n\tconst deprecatedAttributes = {\n\t\tnodeName: warn('nodeName', 'use vnode.type'),\n\t\tattributes: warn('attributes', 'use vnode.props'),\n\t\tchildren: warn('children', 'use vnode.props.children')\n\t};\n\n\tconst deprecatedProto = Object.create({}, deprecatedAttributes);\n\n\toptions.vnode = vnode => {\n\t\tconst props = vnode.props;\n\t\tif (\n\t\t\tvnode.type !== null &&\n\t\t\tprops != null &&\n\t\t\t('__source' in props || '__self' in props)\n\t\t) {\n\t\t\tconst newProps = (vnode.props = {});\n\t\t\tfor (let i in props) {\n\t\t\t\tconst v = props[i];\n\t\t\t\tif (i === '__source') vnode.__source = v;\n\t\t\t\telse if (i === '__self') vnode.__self = v;\n\t\t\t\telse newProps[i] = v;\n\t\t\t}\n\t\t}\n\n\t\t// eslint-disable-next-line\n\t\tvnode.__proto__ = deprecatedProto;\n\t\tif (oldVnode) oldVnode(vnode);\n\t};\n\n\toptions.diffed = vnode => {\n\t\t// Check if the user passed plain objects as children. Note that we cannot\n\t\t// move this check into `options.vnode` because components can receive\n\t\t// children in any shape they want (e.g.\n\t\t// `<MyJSONFormatter>{{ foo: 123, bar: \"abc\" }}</MyJSONFormatter>`).\n\t\t// Putting this check in `options.diffed` ensures that\n\t\t// `vnode._children` is set and that we only validate the children\n\t\t// that were actually rendered.\n\t\tif (vnode._children) {\n\t\t\tvnode._children.forEach(child => {\n\t\t\t\tif (child && child.type === undefined) {\n\t\t\t\t\t// Remove internal vnode keys that will always be patched\n\t\t\t\t\tdelete child._parent;\n\t\t\t\t\tdelete child._depth;\n\t\t\t\t\tconst keys = Object.keys(child).join(',');\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t`Objects are not valid as a child. Encountered an object with the keys {${keys}}.` +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\thooksAllowed = false;\n\n\t\tif (oldDiffed) oldDiffed(vnode);\n\n\t\tif (vnode._children != null) {\n\t\t\tconst keys = [];\n\t\t\tfor (let i = 0; i < vnode._children.length; i++) {\n\t\t\t\tconst child = vnode._children[i];\n\t\t\t\tif (!child || child.key == null) continue;\n\n\t\t\t\tconst key = child.key;\n\t\t\t\tif (keys.indexOf(key) !== -1) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Following component has two or more children with the ' +\n\t\t\t\t\t\t\t`same key attribute: \"${key}\". This may cause glitches and misbehavior ` +\n\t\t\t\t\t\t\t'in rendering process. Component: \\n\\n' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\n\t\t\t\t\t// Break early to not spam the console\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tkeys.push(key);\n\t\t\t}\n\t\t}\n\t};\n}\n\nconst setState = Component.prototype.setState;\nComponent.prototype.setState = function(update, callback) {\n\tif (this._vnode == null) {\n\t\t// `this._vnode` will be `null` during componentWillMount. But it\n\t\t// is perfectly valid to call `setState` during cWM. So we\n\t\t// need an additional check to verify that we are dealing with a\n\t\t// call inside constructor.\n\t\tif (this.state == null) {\n\t\t\tconsole.warn(\n\t\t\t\t`Calling \"this.setState\" inside the constructor of a component is a ` +\n\t\t\t\t\t`no-op and might be a bug in your application. Instead, set ` +\n\t\t\t\t\t`\"this.state = {}\" directly.\\n\\n${getOwnerStack(getCurrentVNode())}`\n\t\t\t);\n\t\t}\n\t} else if (this._parentDom == null) {\n\t\tconsole.warn(\n\t\t\t`Can't call \"this.setState\" on an unmounted component. This is a no-op, ` +\n\t\t\t\t`but it indicates a memory leak in your application. To fix, cancel all ` +\n\t\t\t\t`subscriptions and asynchronous tasks in the componentWillUnmount method.` +\n\t\t\t\t`\\n\\n${getOwnerStack(this._vnode)}`\n\t\t);\n\t}\n\n\treturn setState.call(this, update, callback);\n};\n\nconst forceUpdate = Component.prototype.forceUpdate;\nComponent.prototype.forceUpdate = function(callback) {\n\tif (this._vnode == null) {\n\t\tconsole.warn(\n\t\t\t`Calling \"this.forceUpdate\" inside the constructor of a component is a ` +\n\t\t\t\t`no-op and might be a bug in your application.\\n\\n${getOwnerStack(\n\t\t\t\t\tgetCurrentVNode()\n\t\t\t\t)}`\n\t\t);\n\t} else if (this._parentDom == null) {\n\t\tconsole.warn(\n\t\t\t`Can't call \"this.forceUpdate\" on an unmounted component. This is a no-op, ` +\n\t\t\t\t`but it indicates a memory leak in your application. To fix, cancel all ` +\n\t\t\t\t`subscriptions and asynchronous tasks in the componentWillUnmount method.` +\n\t\t\t\t`\\n\\n${getOwnerStack(this._vnode)}`\n\t\t);\n\t}\n\treturn forceUpdate.call(this, callback);\n};\n\n/**\n * Serialize a vnode tree to a string\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function serializeVNode(vnode) {\n\tlet { props } = vnode;\n\tlet name = getDisplayName(vnode);\n\n\tlet attrs = '';\n\tfor (let prop in props) {\n\t\tif (props.hasOwnProperty(prop) && prop !== 'children') {\n\t\t\tlet value = props[prop];\n\n\t\t\t// If it is an object but doesn't have toString(), use Object.toString\n\t\t\tif (typeof value == 'function') {\n\t\t\t\tvalue = `function ${value.displayName || value.name}() {}`;\n\t\t\t}\n\n\t\t\tvalue =\n\t\t\t\tObject(value) === value && !value.toString\n\t\t\t\t\t? Object.prototype.toString.call(value)\n\t\t\t\t\t: value + '';\n\n\t\t\tattrs += ` ${prop}=${JSON.stringify(value)}`;\n\t\t}\n\t}\n\n\tlet children = props.children;\n\treturn `<${name}${attrs}${\n\t\tchildren && children.length ? '>..</' + name + '>' : ' />'\n\t}`;\n}\n","export const ELEMENT_NODE = 1;\nexport const DOCUMENT_NODE = 9;\nexport const DOCUMENT_FRAGMENT_NODE = 11;\n","/**\n * Assign properties from `props` to `obj`\n * @template O, P The obj and props types\n * @param {O} obj The object to copy properties to\n * @param {P} props The object to copy properties from\n * @returns {O & P}\n */\nexport function assign(obj, props) {\n\tfor (let i in props) obj[i] = props[i];\n\treturn /** @type {O & P} */ (obj);\n}\n"],"names":["loggedTypeFailures","getDisplayName","vnode","type","Fragment","displayName","name","renderStack","ownerStack","getCurrentVNode","length","hasBabelPlugin","isPossibleOwner","getOwnerStack","stack","next","push","reduce","acc","owner","source","__source","fileName","lineNumber","console","warn","isWeakMapSupported","WeakMap","setState","Component","prototype","update","callback","this","state","call","forceUpdate","serializeVNode","props","attrs","prop","hasOwnProperty","value","Object","toString","JSON","stringify","children","oldDiff","options","oldDiffed","diffed","oldRoot","oldVNode","oldRender","pop","parent","setupComponentStack","hooksAllowed","oldBeforeDiff","oldVnode","oldCatchError","oldHook","warnedComponents","useEffect","useLayoutEffect","lazyPropTypes","deprecations","error","then","promise","Error","setTimeout","e","parentNode","isValid","nodeType","componentName","parentVNode","getClosestDomNodeParent","undefined","Array","isArray","ref","key","propTypes","has","m","lazyVNode","set","values","obj","i","assign","typeSpecs","location","getStack","keys","forEach","typeSpecName","message","checkPropTypes","comp","index","property","get","indexOf","deprecatedAttributes","nodeName","attributes","deprecatedProto","create","newProps","v","__self","__proto__","child","join"],"mappings":"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"}
1
+ {"version":3,"file":"debug.js","sources":["../src/check-props.js","../src/component-stack.js","../src/debug.js","../src/constants.js","../src/util.js"],"sourcesContent":["const ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nlet loggedTypeFailures = {};\n\n/**\n * Reset the history of which prop type warnings have been logged.\n */\nexport function resetPropWarnings() {\n\tloggedTypeFailures = {};\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * Adapted from https://github.com/facebook/prop-types/blob/master/checkPropTypes.js\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n */\nexport function checkPropTypes(\n\ttypeSpecs,\n\tvalues,\n\tlocation,\n\tcomponentName,\n\tgetStack\n) {\n\tObject.keys(typeSpecs).forEach(typeSpecName => {\n\t\tlet error;\n\t\ttry {\n\t\t\terror = typeSpecs[typeSpecName](\n\t\t\t\tvalues,\n\t\t\t\ttypeSpecName,\n\t\t\t\tcomponentName,\n\t\t\t\tlocation,\n\t\t\t\tnull,\n\t\t\t\tReactPropTypesSecret\n\t\t\t);\n\t\t} catch (e) {\n\t\t\terror = e;\n\t\t}\n\t\tif (error && !(error.message in loggedTypeFailures)) {\n\t\t\tloggedTypeFailures[error.message] = true;\n\t\t\tconsole.error(\n\t\t\t\t`Failed ${location} type: ${error.message}${(getStack &&\n\t\t\t\t\t`\\n${getStack()}`) ||\n\t\t\t\t\t''}`\n\t\t\t);\n\t\t}\n\t});\n}\n","import { options, Fragment } from 'preact';\n\n/**\n * Get human readable name of the component/dom node\n * @param {import('./internal').VNode} vnode\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function getDisplayName(vnode) {\n\tif (vnode.type === Fragment) {\n\t\treturn 'Fragment';\n\t} else if (typeof vnode.type == 'function') {\n\t\treturn vnode.type.displayName || vnode.type.name;\n\t} else if (typeof vnode.type == 'string') {\n\t\treturn vnode.type;\n\t}\n\n\treturn '#text';\n}\n\n/**\n * Used to keep track of the currently rendered `vnode` and print it\n * in debug messages.\n */\nlet renderStack = [];\n\n/**\n * Keep track of the current owners. An owner describes a component\n * which was responsible to render a specific `vnode`. This exclude\n * children that are passed via `props.children`, because they belong\n * to the parent owner.\n *\n * ```jsx\n * const Foo = props => <div>{props.children}</div> // div's owner is Foo\n * const Bar = props => {\n * return (\n * <Foo><span /></Foo> // Foo's owner is Bar, span's owner is Bar\n * )\n * }\n * ```\n *\n * Note: A `vnode` may be hoisted to the root scope due to compiler\n * optimiztions. In these cases the `_owner` will be different.\n */\nlet ownerStack = [];\n\n/**\n * Get the currently rendered `vnode`\n * @returns {import('./internal').VNode | null}\n */\nexport function getCurrentVNode() {\n\treturn renderStack.length > 0 ? renderStack[renderStack.length - 1] : null;\n}\n\n/**\n * If the user doesn't have `@babel/plugin-transform-react-jsx-source`\n * somewhere in his tool chain we can't print the filename and source\n * location of a component. In that case we just omit that, but we'll\n * print a helpful message to the console, notifying the user of it.\n */\nlet hasBabelPlugin = false;\n\n/**\n * Check if a `vnode` is a possible owner.\n * @param {import('./internal').VNode} vnode\n */\nfunction isPossibleOwner(vnode) {\n\treturn typeof vnode.type == 'function' && vnode.type != Fragment;\n}\n\n/**\n * Return the component stack that was captured up to this point.\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function getOwnerStack(vnode) {\n\tconst stack = [vnode];\n\tlet next = vnode;\n\twhile (next._owner != null) {\n\t\tstack.push(next._owner);\n\t\tnext = next._owner;\n\t}\n\n\treturn stack.reduce((acc, owner) => {\n\t\tacc += ` in ${getDisplayName(owner)}`;\n\n\t\tconst source = owner.__source;\n\t\tif (source) {\n\t\t\tacc += ` (at ${source.fileName}:${source.lineNumber})`;\n\t\t} else if (!hasBabelPlugin) {\n\t\t\thasBabelPlugin = true;\n\t\t\tconsole.warn(\n\t\t\t\t'Add @babel/plugin-transform-react-jsx-source to get a more detailed component stack. Note that you should not add it to production builds of your App for bundle size reasons.'\n\t\t\t);\n\t\t}\n\n\t\treturn (acc += '\\n');\n\t}, '');\n}\n\n/**\n * Setup code to capture the component trace while rendering. Note that\n * we cannot simply traverse `vnode._parent` upwards, because we have some\n * debug messages for `this.setState` where the `vnode` is `undefined`.\n */\nexport function setupComponentStack() {\n\tlet oldDiff = options._diff;\n\tlet oldDiffed = options.diffed;\n\tlet oldRoot = options._root;\n\tlet oldVNode = options.vnode;\n\tlet oldRender = options._render;\n\n\toptions.diffed = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\townerStack.pop();\n\t\t}\n\t\trenderStack.pop();\n\t\tif (oldDiffed) oldDiffed(vnode);\n\t};\n\n\toptions._diff = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\trenderStack.push(vnode);\n\t\t}\n\t\tif (oldDiff) oldDiff(vnode);\n\t};\n\n\toptions._root = (vnode, parent) => {\n\t\townerStack = [];\n\t\tif (oldRoot) oldRoot(vnode, parent);\n\t};\n\n\toptions.vnode = vnode => {\n\t\tvnode._owner =\n\t\t\townerStack.length > 0 ? ownerStack[ownerStack.length - 1] : null;\n\t\tif (oldVNode) oldVNode(vnode);\n\t};\n\n\toptions._render = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\townerStack.push(vnode);\n\t\t}\n\n\t\tif (oldRender) oldRender(vnode);\n\t};\n}\n","import { checkPropTypes } from './check-props';\nimport { options, Component } from 'preact';\nimport {\n\tELEMENT_NODE,\n\tDOCUMENT_NODE,\n\tDOCUMENT_FRAGMENT_NODE\n} from './constants';\nimport {\n\tgetOwnerStack,\n\tsetupComponentStack,\n\tgetCurrentVNode,\n\tgetDisplayName\n} from './component-stack';\nimport { assign } from './util';\n\nconst isWeakMapSupported = typeof WeakMap == 'function';\n\nfunction getClosestDomNodeParent(parent) {\n\tif (!parent) return {};\n\tif (typeof parent.type == 'function') {\n\t\treturn getClosestDomNodeParent(parent._parent);\n\t}\n\treturn parent;\n}\n\nexport function initDebug() {\n\tsetupComponentStack();\n\n\tlet hooksAllowed = false;\n\n\t/* eslint-disable no-console */\n\tlet oldBeforeDiff = options._diff;\n\tlet oldDiffed = options.diffed;\n\tlet oldVnode = options.vnode;\n\tlet oldCatchError = options._catchError;\n\tlet oldRoot = options._root;\n\tlet oldHook = options._hook;\n\tconst warnedComponents = !isWeakMapSupported\n\t\t? null\n\t\t: {\n\t\t\t\tuseEffect: new WeakMap(),\n\t\t\t\tuseLayoutEffect: new WeakMap(),\n\t\t\t\tlazyPropTypes: new WeakMap()\n\t\t };\n\tconst deprecations = [];\n\n\toptions._catchError = (error, vnode, oldVNode) => {\n\t\tlet component = vnode && vnode._component;\n\t\tif (component && typeof error.then == 'function') {\n\t\t\tconst promise = error;\n\t\t\terror = new Error(\n\t\t\t\t`Missing Suspense. The throwing component was: ${getDisplayName(vnode)}`\n\t\t\t);\n\n\t\t\tlet parent = vnode;\n\t\t\tfor (; parent; parent = parent._parent) {\n\t\t\t\tif (parent._component && parent._component._childDidSuspend) {\n\t\t\t\t\terror = promise;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// We haven't recovered and we know at this point that there is no\n\t\t\t// Suspense component higher up in the tree\n\t\t\tif (error instanceof Error) {\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t}\n\n\t\ttry {\n\t\t\toldCatchError(error, vnode, oldVNode);\n\n\t\t\t// when an error was handled by an ErrorBoundary we will nontheless emit an error\n\t\t\t// event on the window object. This is to make up for react compatibility in dev mode\n\t\t\t// and thus make the Next.js dev overlay work.\n\t\t\tif (typeof error.then != 'function') {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthrow error;\n\t\t\t\t});\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tthrow e;\n\t\t}\n\t};\n\n\toptions._root = (vnode, parentNode) => {\n\t\tif (!parentNode) {\n\t\t\tthrow new Error(\n\t\t\t\t'Undefined parent passed to render(), this is the second argument.\\n' +\n\t\t\t\t\t'Check if the element is available in the DOM/has the correct id.'\n\t\t\t);\n\t\t}\n\n\t\tlet isValid;\n\t\tswitch (parentNode.nodeType) {\n\t\t\tcase ELEMENT_NODE:\n\t\t\tcase DOCUMENT_FRAGMENT_NODE:\n\t\t\tcase DOCUMENT_NODE:\n\t\t\t\tisValid = true;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tisValid = false;\n\t\t}\n\n\t\tif (!isValid) {\n\t\t\tlet componentName = getDisplayName(vnode);\n\t\t\tthrow new Error(\n\t\t\t\t`Expected a valid HTML node as a second argument to render.\tReceived ${parentNode} instead: render(<${componentName} />, ${parentNode});`\n\t\t\t);\n\t\t}\n\n\t\tif (oldRoot) oldRoot(vnode, parentNode);\n\t};\n\n\toptions._diff = vnode => {\n\t\tlet { type, _parent: parent } = vnode;\n\t\tlet parentVNode = getClosestDomNodeParent(parent);\n\n\t\thooksAllowed = true;\n\n\t\tif (type === undefined) {\n\t\t\tthrow new Error(\n\t\t\t\t'Undefined component passed to createElement()\\n\\n' +\n\t\t\t\t\t'You likely forgot to export your component or might have mixed up default and named imports' +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t} else if (type != null && typeof type == 'object') {\n\t\t\tif (type._children !== undefined && type._dom !== undefined) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`Invalid type passed to createElement(): ${type}\\n\\n` +\n\t\t\t\t\t\t'Did you accidentally pass a JSX literal as JSX twice?\\n\\n' +\n\t\t\t\t\t\t` let My${getDisplayName(vnode)} = ${serializeVNode(type)};\\n` +\n\t\t\t\t\t\t` let vnode = <My${getDisplayName(vnode)} />;\\n\\n` +\n\t\t\t\t\t\t'This usually happens when you export a JSX literal and not the component.' +\n\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tthrow new Error(\n\t\t\t\t'Invalid type passed to createElement(): ' +\n\t\t\t\t\t(Array.isArray(type) ? 'array' : type)\n\t\t\t);\n\t\t}\n\n\t\tif (\n\t\t\t(type === 'thead' || type === 'tfoot' || type === 'tbody') &&\n\t\t\tparentVNode.type !== 'table'\n\t\t) {\n\t\t\tconsole.error(\n\t\t\t\t'Improper nesting of table. Your <thead/tbody/tfoot> should have a <table> parent.' +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t} else if (\n\t\t\ttype === 'tr' &&\n\t\t\tparentVNode.type !== 'thead' &&\n\t\t\tparentVNode.type !== 'tfoot' &&\n\t\t\tparentVNode.type !== 'tbody' &&\n\t\t\tparentVNode.type !== 'table'\n\t\t) {\n\t\t\tconsole.error(\n\t\t\t\t'Improper nesting of table. Your <tr> should have a <thead/tbody/tfoot/table> parent.' +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t} else if (type === 'td' && parentVNode.type !== 'tr') {\n\t\t\tconsole.error(\n\t\t\t\t'Improper nesting of table. Your <td> should have a <tr> parent.' +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t} else if (type === 'th' && parentVNode.type !== 'tr') {\n\t\t\tconsole.error(\n\t\t\t\t'Improper nesting of table. Your <th> should have a <tr>.' +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t}\n\n\t\tif (\n\t\t\tvnode.ref !== undefined &&\n\t\t\ttypeof vnode.ref != 'function' &&\n\t\t\ttypeof vnode.ref != 'object' &&\n\t\t\t!('$$typeof' in vnode) // allow string refs when preact-compat is installed\n\t\t) {\n\t\t\tthrow new Error(\n\t\t\t\t`Component's \"ref\" property should be a function, or an object created ` +\n\t\t\t\t\t`by createRef(), but got [${typeof vnode.ref}] instead\\n` +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t}\n\n\t\tif (typeof vnode.type == 'string') {\n\t\t\tfor (const key in vnode.props) {\n\t\t\t\tif (\n\t\t\t\t\tkey[0] === 'o' &&\n\t\t\t\t\tkey[1] === 'n' &&\n\t\t\t\t\ttypeof vnode.props[key] != 'function' &&\n\t\t\t\t\tvnode.props[key] != null\n\t\t\t\t) {\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t`Component's \"${key}\" property should be a function, ` +\n\t\t\t\t\t\t\t`but got [${typeof vnode.props[key]}] instead\\n` +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Check prop-types if available\n\t\tif (typeof vnode.type == 'function' && vnode.type.propTypes) {\n\t\t\tif (\n\t\t\t\tvnode.type.displayName === 'Lazy' &&\n\t\t\t\twarnedComponents &&\n\t\t\t\t!warnedComponents.lazyPropTypes.has(vnode.type)\n\t\t\t) {\n\t\t\t\tconst m =\n\t\t\t\t\t'PropTypes are not supported on lazy(). Use propTypes on the wrapped component itself. ';\n\t\t\t\ttry {\n\t\t\t\t\tconst lazyVNode = vnode.type();\n\t\t\t\t\twarnedComponents.lazyPropTypes.set(vnode.type, true);\n\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\tm + `Component wrapped in lazy() is ${getDisplayName(lazyVNode)}`\n\t\t\t\t\t);\n\t\t\t\t} catch (promise) {\n\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\tm + \"We will log the wrapped component's name once it is loaded.\"\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tlet values = vnode.props;\n\t\t\tif (vnode.type._forwarded) {\n\t\t\t\tvalues = assign({}, values);\n\t\t\t\tdelete values.ref;\n\t\t\t}\n\n\t\t\tcheckPropTypes(\n\t\t\t\tvnode.type.propTypes,\n\t\t\t\tvalues,\n\t\t\t\t'prop',\n\t\t\t\tgetDisplayName(vnode),\n\t\t\t\t() => getOwnerStack(vnode)\n\t\t\t);\n\t\t}\n\n\t\tif (oldBeforeDiff) oldBeforeDiff(vnode);\n\t};\n\n\toptions._hook = (comp, index, type) => {\n\t\tif (!comp || !hooksAllowed) {\n\t\t\tthrow new Error('Hook can only be invoked from render methods.');\n\t\t}\n\n\t\tif (oldHook) oldHook(comp, index, type);\n\t};\n\n\t// Ideally we'd want to print a warning once per component, but we\n\t// don't have access to the vnode that triggered it here. As a\n\t// compromise and to avoid flooding the console with warnings we\n\t// print each deprecation warning only once.\n\tconst warn = (property, message) => ({\n\t\tget() {\n\t\t\tconst key = 'get' + property + message;\n\t\t\tif (deprecations && deprecations.indexOf(key) < 0) {\n\t\t\t\tdeprecations.push(key);\n\t\t\t\tconsole.warn(`getting vnode.${property} is deprecated, ${message}`);\n\t\t\t}\n\t\t},\n\t\tset() {\n\t\t\tconst key = 'set' + property + message;\n\t\t\tif (deprecations && deprecations.indexOf(key) < 0) {\n\t\t\t\tdeprecations.push(key);\n\t\t\t\tconsole.warn(`setting vnode.${property} is not allowed, ${message}`);\n\t\t\t}\n\t\t}\n\t});\n\n\tconst deprecatedAttributes = {\n\t\tnodeName: warn('nodeName', 'use vnode.type'),\n\t\tattributes: warn('attributes', 'use vnode.props'),\n\t\tchildren: warn('children', 'use vnode.props.children')\n\t};\n\n\tconst deprecatedProto = Object.create({}, deprecatedAttributes);\n\n\toptions.vnode = vnode => {\n\t\tconst props = vnode.props;\n\t\tif (\n\t\t\tvnode.type !== null &&\n\t\t\tprops != null &&\n\t\t\t('__source' in props || '__self' in props)\n\t\t) {\n\t\t\tconst newProps = (vnode.props = {});\n\t\t\tfor (let i in props) {\n\t\t\t\tconst v = props[i];\n\t\t\t\tif (i === '__source') vnode.__source = v;\n\t\t\t\telse if (i === '__self') vnode.__self = v;\n\t\t\t\telse newProps[i] = v;\n\t\t\t}\n\t\t}\n\n\t\t// eslint-disable-next-line\n\t\tvnode.__proto__ = deprecatedProto;\n\t\tif (oldVnode) oldVnode(vnode);\n\t};\n\n\toptions.diffed = vnode => {\n\t\t// Check if the user passed plain objects as children. Note that we cannot\n\t\t// move this check into `options.vnode` because components can receive\n\t\t// children in any shape they want (e.g.\n\t\t// `<MyJSONFormatter>{{ foo: 123, bar: \"abc\" }}</MyJSONFormatter>`).\n\t\t// Putting this check in `options.diffed` ensures that\n\t\t// `vnode._children` is set and that we only validate the children\n\t\t// that were actually rendered.\n\t\tif (vnode._children) {\n\t\t\tvnode._children.forEach(child => {\n\t\t\t\tif (child && child.type === undefined) {\n\t\t\t\t\t// Remove internal vnode keys that will always be patched\n\t\t\t\t\tdelete child._parent;\n\t\t\t\t\tdelete child._depth;\n\t\t\t\t\tconst keys = Object.keys(child).join(',');\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t`Objects are not valid as a child. Encountered an object with the keys {${keys}}.` +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\thooksAllowed = false;\n\n\t\tif (oldDiffed) oldDiffed(vnode);\n\n\t\tif (vnode._children != null) {\n\t\t\tconst keys = [];\n\t\t\tfor (let i = 0; i < vnode._children.length; i++) {\n\t\t\t\tconst child = vnode._children[i];\n\t\t\t\tif (!child || child.key == null) continue;\n\n\t\t\t\tconst key = child.key;\n\t\t\t\tif (keys.indexOf(key) !== -1) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Following component has two or more children with the ' +\n\t\t\t\t\t\t\t`same key attribute: \"${key}\". This may cause glitches and misbehavior ` +\n\t\t\t\t\t\t\t'in rendering process. Component: \\n\\n' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\n\t\t\t\t\t// Break early to not spam the console\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tkeys.push(key);\n\t\t\t}\n\t\t}\n\t};\n}\n\nconst setState = Component.prototype.setState;\nComponent.prototype.setState = function(update, callback) {\n\tif (this._vnode == null) {\n\t\t// `this._vnode` will be `null` during componentWillMount. But it\n\t\t// is perfectly valid to call `setState` during cWM. So we\n\t\t// need an additional check to verify that we are dealing with a\n\t\t// call inside constructor.\n\t\tif (this.state == null) {\n\t\t\tconsole.warn(\n\t\t\t\t`Calling \"this.setState\" inside the constructor of a component is a ` +\n\t\t\t\t\t`no-op and might be a bug in your application. Instead, set ` +\n\t\t\t\t\t`\"this.state = {}\" directly.\\n\\n${getOwnerStack(getCurrentVNode())}`\n\t\t\t);\n\t\t}\n\t} else if (this._parentDom == null) {\n\t\tconsole.warn(\n\t\t\t`Can't call \"this.setState\" on an unmounted component. This is a no-op, ` +\n\t\t\t\t`but it indicates a memory leak in your application. To fix, cancel all ` +\n\t\t\t\t`subscriptions and asynchronous tasks in the componentWillUnmount method.` +\n\t\t\t\t`\\n\\n${getOwnerStack(this._vnode)}`\n\t\t);\n\t}\n\n\treturn setState.call(this, update, callback);\n};\n\nconst forceUpdate = Component.prototype.forceUpdate;\nComponent.prototype.forceUpdate = function(callback) {\n\tif (this._vnode == null) {\n\t\tconsole.warn(\n\t\t\t`Calling \"this.forceUpdate\" inside the constructor of a component is a ` +\n\t\t\t\t`no-op and might be a bug in your application.\\n\\n${getOwnerStack(\n\t\t\t\t\tgetCurrentVNode()\n\t\t\t\t)}`\n\t\t);\n\t} else if (this._parentDom == null) {\n\t\tconsole.warn(\n\t\t\t`Can't call \"this.forceUpdate\" on an unmounted component. This is a no-op, ` +\n\t\t\t\t`but it indicates a memory leak in your application. To fix, cancel all ` +\n\t\t\t\t`subscriptions and asynchronous tasks in the componentWillUnmount method.` +\n\t\t\t\t`\\n\\n${getOwnerStack(this._vnode)}`\n\t\t);\n\t}\n\treturn forceUpdate.call(this, callback);\n};\n\n/**\n * Serialize a vnode tree to a string\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function serializeVNode(vnode) {\n\tlet { props } = vnode;\n\tlet name = getDisplayName(vnode);\n\n\tlet attrs = '';\n\tfor (let prop in props) {\n\t\tif (props.hasOwnProperty(prop) && prop !== 'children') {\n\t\t\tlet value = props[prop];\n\n\t\t\t// If it is an object but doesn't have toString(), use Object.toString\n\t\t\tif (typeof value == 'function') {\n\t\t\t\tvalue = `function ${value.displayName || value.name}() {}`;\n\t\t\t}\n\n\t\t\tvalue =\n\t\t\t\tObject(value) === value && !value.toString\n\t\t\t\t\t? Object.prototype.toString.call(value)\n\t\t\t\t\t: value + '';\n\n\t\t\tattrs += ` ${prop}=${JSON.stringify(value)}`;\n\t\t}\n\t}\n\n\tlet children = props.children;\n\treturn `<${name}${attrs}${\n\t\tchildren && children.length ? '>..</' + name + '>' : ' />'\n\t}`;\n}\n","export const ELEMENT_NODE = 1;\nexport const DOCUMENT_NODE = 9;\nexport const DOCUMENT_FRAGMENT_NODE = 11;\n","/**\n * Assign properties from `props` to `obj`\n * @template O, P The obj and props types\n * @param {O} obj The object to copy properties to\n * @param {P} props The object to copy properties from\n * @returns {O & P}\n */\nexport function assign(obj, props) {\n\tfor (let i in props) obj[i] = props[i];\n\treturn /** @type {O & P} */ (obj);\n}\n"],"names":["loggedTypeFailures","getDisplayName","vnode","type","Fragment","displayName","name","renderStack","ownerStack","getCurrentVNode","length","hasBabelPlugin","isPossibleOwner","getOwnerStack","stack","next","push","reduce","acc","owner","source","__source","fileName","lineNumber","console","warn","isWeakMapSupported","WeakMap","setState","Component","prototype","update","callback","this","state","call","forceUpdate","serializeVNode","props","attrs","prop","hasOwnProperty","value","Object","toString","JSON","stringify","children","oldDiff","options","oldDiffed","diffed","oldRoot","oldVNode","oldRender","pop","parent","setupComponentStack","hooksAllowed","oldBeforeDiff","oldVnode","oldCatchError","oldHook","warnedComponents","useEffect","useLayoutEffect","lazyPropTypes","deprecations","error","then","promise","Error","setTimeout","e","parentNode","isValid","nodeType","componentName","parentVNode","getClosestDomNodeParent","undefined","Array","isArray","ref","key","propTypes","has","m","lazyVNode","set","values","obj","i","assign","typeSpecs","location","getStack","keys","forEach","typeSpecName","message","checkPropTypes","comp","index","property","get","indexOf","deprecatedAttributes","nodeName","attributes","deprecatedProto","create","newProps","v","__self","__proto__","child","join"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"debug.module.js","sources":["../src/check-props.js","../src/component-stack.js","../src/debug.js","../src/constants.js"],"sourcesContent":["const ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nlet loggedTypeFailures = {};\n\n/**\n * Reset the history of which prop type warnings have been logged.\n */\nexport function resetPropWarnings() {\n\tloggedTypeFailures = {};\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * Adapted from https://github.com/facebook/prop-types/blob/master/checkPropTypes.js\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n */\nexport function checkPropTypes(\n\ttypeSpecs,\n\tvalues,\n\tlocation,\n\tcomponentName,\n\tgetStack\n) {\n\tObject.keys(typeSpecs).forEach(typeSpecName => {\n\t\tlet error;\n\t\ttry {\n\t\t\terror = typeSpecs[typeSpecName](\n\t\t\t\tvalues,\n\t\t\t\ttypeSpecName,\n\t\t\t\tcomponentName,\n\t\t\t\tlocation,\n\t\t\t\tnull,\n\t\t\t\tReactPropTypesSecret\n\t\t\t);\n\t\t} catch (e) {\n\t\t\terror = e;\n\t\t}\n\t\tif (error && !(error.message in loggedTypeFailures)) {\n\t\t\tloggedTypeFailures[error.message] = true;\n\t\t\tconsole.error(\n\t\t\t\t`Failed ${location} type: ${error.message}${(getStack && getStack()) ||\n\t\t\t\t\t''}`\n\t\t\t);\n\t\t}\n\t});\n}\n","import { options, Fragment } from 'preact';\n\n/**\n * Get human readable name of the component/dom node\n * @param {import('./internal').VNode} vnode\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function getDisplayName(vnode) {\n\tif (vnode.type === Fragment) {\n\t\treturn 'Fragment';\n\t} else if (typeof vnode.type == 'function') {\n\t\treturn vnode.type.displayName || vnode.type.name;\n\t} else if (typeof vnode.type == 'string') {\n\t\treturn vnode.type;\n\t}\n\n\treturn '#text';\n}\n\n/**\n * Used to keep track of the currently rendered `vnode` and print it\n * in debug messages.\n */\nlet renderStack = [];\n\n/**\n * Keep track of the current owners. An owner describes a component\n * which was responsible to render a specific `vnode`. This exclude\n * children that are passed via `props.children`, because they belong\n * to the parent owner.\n *\n * ```jsx\n * const Foo = props => <div>{props.children}</div> // div's owner is Foo\n * const Bar = props => {\n * return (\n * <Foo><span /></Foo> // Foo's owner is Bar, span's owner is Bar\n * )\n * }\n * ```\n *\n * Note: A `vnode` may be hoisted to the root scope due to compiler\n * optimiztions. In these cases the `_owner` will be different.\n */\nlet ownerStack = [];\n\n/**\n * Get the currently rendered `vnode`\n * @returns {import('./internal').VNode | null}\n */\nexport function getCurrentVNode() {\n\treturn renderStack.length > 0 ? renderStack[renderStack.length - 1] : null;\n}\n\n/**\n * If the user doesn't have `@babel/plugin-transform-react-jsx-source`\n * somewhere in his tool chain we can't print the filename and source\n * location of a component. In that case we just omit that, but we'll\n * print a helpful message to the console, notifying the user of it.\n */\nlet hasBabelPlugin = false;\n\n/**\n * Check if a `vnode` is a possible owner.\n * @param {import('./internal').VNode} vnode\n */\nfunction isPossibleOwner(vnode) {\n\treturn typeof vnode.type == 'function' && vnode.type != Fragment;\n}\n\n/**\n * Return the component stack that was captured up to this point.\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function getOwnerStack(vnode) {\n\tconst stack = [vnode];\n\tlet next = vnode;\n\twhile (next._owner != null) {\n\t\tstack.push(next._owner);\n\t\tnext = next._owner;\n\t}\n\n\treturn stack.reduce((acc, owner) => {\n\t\tacc += ` in ${getDisplayName(owner)}`;\n\n\t\tconst source = owner.__source;\n\t\tif (source) {\n\t\t\tacc += ` (at ${source.fileName}:${source.lineNumber})`;\n\t\t} else if (!hasBabelPlugin) {\n\t\t\thasBabelPlugin = true;\n\t\t\tconsole.warn(\n\t\t\t\t'Add @babel/plugin-transform-react-jsx-source to get a more detailed component stack. Note that you should not add it to production builds of your App for bundle size reasons.'\n\t\t\t);\n\t\t}\n\n\t\treturn (acc += '\\n');\n\t}, '');\n}\n\n/**\n * Setup code to capture the component trace while rendering. Note that\n * we cannot simply traverse `vnode._parent` upwards, because we have some\n * debug messages for `this.setState` where the `vnode` is `undefined`.\n */\nexport function setupComponentStack() {\n\tlet oldDiff = options._diff;\n\tlet oldDiffed = options.diffed;\n\tlet oldRoot = options._root;\n\tlet oldVNode = options.vnode;\n\tlet oldRender = options._render;\n\n\toptions.diffed = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\townerStack.pop();\n\t\t}\n\t\trenderStack.pop();\n\t\tif (oldDiffed) oldDiffed(vnode);\n\t};\n\n\toptions._diff = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\trenderStack.push(vnode);\n\t\t}\n\t\tif (oldDiff) oldDiff(vnode);\n\t};\n\n\toptions._root = (vnode, parent) => {\n\t\townerStack = [];\n\t\tif (oldRoot) oldRoot(vnode, parent);\n\t};\n\n\toptions.vnode = vnode => {\n\t\tvnode._owner =\n\t\t\townerStack.length > 0 ? ownerStack[ownerStack.length - 1] : null;\n\t\tif (oldVNode) oldVNode(vnode);\n\t};\n\n\toptions._render = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\townerStack.push(vnode);\n\t\t}\n\n\t\tif (oldRender) oldRender(vnode);\n\t};\n}\n","import { checkPropTypes } from './check-props';\nimport { options, Component } from 'preact';\nimport {\n\tELEMENT_NODE,\n\tDOCUMENT_NODE,\n\tDOCUMENT_FRAGMENT_NODE\n} from './constants';\nimport {\n\tgetOwnerStack,\n\tsetupComponentStack,\n\tgetCurrentVNode,\n\tgetDisplayName\n} from './component-stack';\n\nconst isWeakMapSupported = typeof WeakMap == 'function';\n\nfunction getClosestDomNodeParent(parent) {\n\tif (!parent) return {};\n\tif (typeof parent.type == 'function') {\n\t\treturn getClosestDomNodeParent(parent._parent);\n\t}\n\treturn parent;\n}\n\nexport function initDebug() {\n\tsetupComponentStack();\n\n\t/* eslint-disable no-console */\n\tlet oldBeforeDiff = options._diff;\n\tlet oldDiffed = options.diffed;\n\tlet oldVnode = options.vnode;\n\tlet oldCatchError = options._catchError;\n\tlet oldRoot = options._root;\n\tlet oldHook = options._hook;\n\tconst warnedComponents = !isWeakMapSupported\n\t\t? null\n\t\t: {\n\t\t\t\tuseEffect: new WeakMap(),\n\t\t\t\tuseLayoutEffect: new WeakMap(),\n\t\t\t\tlazyPropTypes: new WeakMap()\n\t\t };\n\n\toptions._catchError = (error, vnode, oldVNode) => {\n\t\tlet component = vnode && vnode._component;\n\t\tif (component && typeof error.then == 'function') {\n\t\t\tconst promise = error;\n\t\t\terror = new Error(\n\t\t\t\t`Missing Suspense. The throwing component was: ${getDisplayName(vnode)}`\n\t\t\t);\n\n\t\t\tlet parent = vnode;\n\t\t\tfor (; parent; parent = parent._parent) {\n\t\t\t\tif (parent._component && parent._component._childDidSuspend) {\n\t\t\t\t\terror = promise;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// We haven't recovered and we know at this point that there is no\n\t\t\t// Suspense component higher up in the tree\n\t\t\tif (error instanceof Error) {\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t}\n\n\t\toldCatchError(error, vnode, oldVNode);\n\t};\n\n\toptions._root = (vnode, parentNode) => {\n\t\tif (!parentNode) {\n\t\t\tthrow new Error(\n\t\t\t\t'Undefined parent passed to render(), this is the second argument.\\n' +\n\t\t\t\t\t'Check if the element is available in the DOM/has the correct id.'\n\t\t\t);\n\t\t}\n\t\tlet isValid;\n\t\tswitch (parentNode.nodeType) {\n\t\t\tcase ELEMENT_NODE:\n\t\t\tcase DOCUMENT_FRAGMENT_NODE:\n\t\t\tcase DOCUMENT_NODE:\n\t\t\t\tisValid = true;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tisValid = false;\n\t\t}\n\n\t\tif (!isValid) {\n\t\t\tlet componentName = getDisplayName(vnode);\n\t\t\tthrow new Error(\n\t\t\t\t`Expected a valid HTML node as a second argument to render.\tReceived ${parentNode} instead: render(<${componentName} />, ${parentNode});`\n\t\t\t);\n\t\t}\n\n\t\tif (oldRoot) oldRoot(vnode, parentNode);\n\t};\n\n\toptions._diff = vnode => {\n\t\tlet { type, _parent: parent } = vnode;\n\t\tlet parentVNode = getClosestDomNodeParent(parent);\n\n\t\tif (type === undefined) {\n\t\t\tthrow new Error(\n\t\t\t\t'Undefined component passed to createElement()\\n\\n' +\n\t\t\t\t\t'You likely forgot to export your component or might have mixed up default and named imports' +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t} else if (type != null && typeof type == 'object') {\n\t\t\tif (type._children !== undefined && type._dom !== undefined) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`Invalid type passed to createElement(): ${type}\\n\\n` +\n\t\t\t\t\t\t'Did you accidentally pass a JSX literal as JSX twice?\\n\\n' +\n\t\t\t\t\t\t` let My${getDisplayName(vnode)} = ${serializeVNode(type)};\\n` +\n\t\t\t\t\t\t` let vnode = <My${getDisplayName(vnode)} />;\\n\\n` +\n\t\t\t\t\t\t'This usually happens when you export a JSX literal and not the component.' +\n\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tthrow new Error(\n\t\t\t\t'Invalid type passed to createElement(): ' +\n\t\t\t\t\t(Array.isArray(type) ? 'array' : type)\n\t\t\t);\n\t\t}\n\n\t\tif (\n\t\t\t(type === 'thead' || type === 'tfoot' || type === 'tbody') &&\n\t\t\tparentVNode.type !== 'table'\n\t\t) {\n\t\t\tconsole.error(\n\t\t\t\t'Improper nesting of table. Your <thead/tbody/tfoot> should have a <table> parent.' +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t} else if (\n\t\t\ttype === 'tr' &&\n\t\t\tparentVNode.type !== 'thead' &&\n\t\t\tparentVNode.type !== 'tfoot' &&\n\t\t\tparentVNode.type !== 'tbody' &&\n\t\t\tparentVNode.type !== 'table'\n\t\t) {\n\t\t\tconsole.error(\n\t\t\t\t'Improper nesting of table. Your <tr> should have a <thead/tbody/tfoot/table> parent.' +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t} else if (type === 'td' && parentVNode.type !== 'tr') {\n\t\t\tconsole.error(\n\t\t\t\t'Improper nesting of table. Your <td> should have a <tr> parent.' +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t} else if (type === 'th' && parentVNode.type !== 'tr') {\n\t\t\tconsole.error(\n\t\t\t\t'Improper nesting of table. Your <th> should have a <tr>.' +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t}\n\n\t\tif (\n\t\t\tvnode.ref !== undefined &&\n\t\t\ttypeof vnode.ref != 'function' &&\n\t\t\ttypeof vnode.ref != 'object' &&\n\t\t\t!('$$typeof' in vnode) // allow string refs when preact-compat is installed\n\t\t) {\n\t\t\tthrow new Error(\n\t\t\t\t`Component's \"ref\" property should be a function, or an object created ` +\n\t\t\t\t\t`by createRef(), but got [${typeof vnode.ref}] instead\\n` +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t);\n\t\t}\n\n\t\tif (typeof vnode.type == 'string') {\n\t\t\tfor (const key in vnode.props) {\n\t\t\t\tif (\n\t\t\t\t\tkey[0] === 'o' &&\n\t\t\t\t\tkey[1] === 'n' &&\n\t\t\t\t\ttypeof vnode.props[key] != 'function' &&\n\t\t\t\t\tvnode.props[key] != null\n\t\t\t\t) {\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t`Component's \"${key}\" property should be a function, ` +\n\t\t\t\t\t\t\t`but got [${typeof vnode.props[key]}] instead\\n` +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Check prop-types if available\n\t\tif (typeof vnode.type == 'function' && vnode.type.propTypes) {\n\t\t\tif (\n\t\t\t\tvnode.type.displayName === 'Lazy' &&\n\t\t\t\twarnedComponents &&\n\t\t\t\t!warnedComponents.lazyPropTypes.has(vnode.type)\n\t\t\t) {\n\t\t\t\tconst m =\n\t\t\t\t\t'PropTypes are not supported on lazy(). Use propTypes on the wrapped component itself. ';\n\t\t\t\ttry {\n\t\t\t\t\tconst lazyVNode = vnode.type();\n\t\t\t\t\twarnedComponents.lazyPropTypes.set(vnode.type, true);\n\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\tm + `Component wrapped in lazy() is ${getDisplayName(lazyVNode)}`\n\t\t\t\t\t);\n\t\t\t\t} catch (promise) {\n\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\tm + \"We will log the wrapped component's name once it is loaded.\"\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t\tcheckPropTypes(\n\t\t\t\tvnode.type.propTypes,\n\t\t\t\tvnode.props,\n\t\t\t\t'prop',\n\t\t\t\tgetDisplayName(vnode)\n\t\t\t);\n\t\t}\n\n\t\tif (oldBeforeDiff) oldBeforeDiff(vnode);\n\t};\n\n\toptions._hook = comp => {\n\t\tif (!comp) {\n\t\t\tthrow new Error('Hook can only be invoked from render methods.');\n\t\t}\n\n\t\tif (oldHook) oldHook(comp);\n\t};\n\n\tconst warn = (property, err) => ({\n\t\tget() {\n\t\t\tthrow new Error(`getting vnode.${property} is deprecated, ${err}`);\n\t\t},\n\t\tset() {\n\t\t\tthrow new Error(`setting vnode.${property} is not allowed, ${err}`);\n\t\t}\n\t});\n\n\tconst deprecatedAttributes = {\n\t\tnodeName: warn('nodeName', 'use vnode.type'),\n\t\tattributes: warn('attributes', 'use vnode.props'),\n\t\tchildren: warn('children', 'use vnode.props.children')\n\t};\n\n\tconst deprecatedProto = Object.create({}, deprecatedAttributes);\n\n\toptions.vnode = vnode => {\n\t\tconst props = vnode.props;\n\t\tif (\n\t\t\tvnode.type !== null &&\n\t\t\tprops != null &&\n\t\t\t('__source' in props || '__self' in props)\n\t\t) {\n\t\t\tconst newProps = (vnode.props = {});\n\t\t\tfor (let i in props) {\n\t\t\t\tconst v = props[i];\n\t\t\t\tif (i === '__source') vnode.__source = v;\n\t\t\t\telse if (i === '__self') vnode.__self = v;\n\t\t\t\telse newProps[i] = v;\n\t\t\t}\n\t\t}\n\t\tObject.setPrototypeOf(vnode, deprecatedProto);\n\t\tif (oldVnode) oldVnode(vnode);\n\t};\n\n\toptions.diffed = vnode => {\n\t\t// Check if the user passed plain objects as children. Note that we cannot\n\t\t// move this check into `options.vnode` because components can receive\n\t\t// children in any shape they want (e.g.\n\t\t// `<MyJSONFormatter>{{ foo: 123, bar: \"abc\" }}</MyJSONFormatter>`).\n\t\t// Putting this check in `options.diffed` ensures that\n\t\t// `vnode._children` is set and that we only validate the children\n\t\t// that were actually rendered.\n\t\tif (vnode._children) {\n\t\t\tvnode._children.forEach(child => {\n\t\t\t\tif (child && child.type === undefined) {\n\t\t\t\t\t// Remove internal vnode keys that will always be patched\n\t\t\t\t\tdelete child._parent;\n\t\t\t\t\tdelete child._depth;\n\t\t\t\t\tconst keys = Object.keys(child).join(',');\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t`Objects are not valid as a child. Encountered an object with the keys {${keys}}.` +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\t/** @type {import('./internal').Component} */\n\t\tconst component = vnode._component;\n\t\tif (component && component.__hooks) {\n\t\t\tlet hooks = component.__hooks;\n\t\t\tif (Array.isArray(hooks._list)) {\n\t\t\t\thooks._list.forEach(hook => {\n\t\t\t\t\tif (hook._factory && (!hook._args || !Array.isArray(hook._args))) {\n\t\t\t\t\t\tlet componentName = getDisplayName(vnode);\n\t\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\t\t`In ${componentName} you are calling useMemo/useCallback without passing arguments.\\n` +\n\t\t\t\t\t\t\t\t`This is a noop since it will not be able to memoize, it will execute it every render.` +\n\t\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\tif (oldDiffed) oldDiffed(vnode);\n\n\t\tif (vnode._children != null) {\n\t\t\tconst keys = [];\n\t\t\tfor (let i = 0; i < vnode._children.length; i++) {\n\t\t\t\tconst child = vnode._children[i];\n\t\t\t\tif (!child || child.key == null) continue;\n\n\t\t\t\tconst key = child.key;\n\t\t\t\tif (keys.indexOf(key) !== -1) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Following component has two or more children with the ' +\n\t\t\t\t\t\t\t`same key attribute: \"${key}\". This may cause glitches and misbehavior ` +\n\t\t\t\t\t\t\t'in rendering process. Component: \\n\\n' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\n\t\t\t\t\t// Break early to not spam the console\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tkeys.push(key);\n\t\t\t}\n\t\t}\n\t};\n}\n\nconst setState = Component.prototype.setState;\nComponent.prototype.setState = function(update, callback) {\n\tif (this._vnode == null) {\n\t\t// `this._vnode` will be `null` during componentWillMount. But it\n\t\t// is perfectly valid to call `setState` during cWM. So we\n\t\t// need an additional check to verify that we are dealing with a\n\t\t// call inside constructor.\n\t\tif (this.state == null) {\n\t\t\tconsole.warn(\n\t\t\t\t`Calling \"this.setState\" inside the constructor of a component is a ` +\n\t\t\t\t\t`no-op and might be a bug in your application. Instead, set ` +\n\t\t\t\t\t`\"this.state = {}\" directly.\\n\\n${getOwnerStack(getCurrentVNode())}`\n\t\t\t);\n\t\t}\n\t} else if (this._parentDom == null) {\n\t\tconsole.warn(\n\t\t\t`Can't call \"this.setState\" on an unmounted component. This is a no-op, ` +\n\t\t\t\t`but it indicates a memory leak in your application. To fix, cancel all ` +\n\t\t\t\t`subscriptions and asynchronous tasks in the componentWillUnmount method.` +\n\t\t\t\t`\\n\\n${getOwnerStack(this._vnode)}`\n\t\t);\n\t}\n\n\treturn setState.call(this, update, callback);\n};\n\nconst forceUpdate = Component.prototype.forceUpdate;\nComponent.prototype.forceUpdate = function(callback) {\n\tif (this._vnode == null) {\n\t\tconsole.warn(\n\t\t\t`Calling \"this.forceUpdate\" inside the constructor of a component is a ` +\n\t\t\t\t`no-op and might be a bug in your application.\\n\\n${getOwnerStack(\n\t\t\t\t\tgetCurrentVNode()\n\t\t\t\t)}`\n\t\t);\n\t} else if (this._parentDom == null) {\n\t\tconsole.warn(\n\t\t\t`Can't call \"this.forceUpdate\" on an unmounted component. This is a no-op, ` +\n\t\t\t\t`but it indicates a memory leak in your application. To fix, cancel all ` +\n\t\t\t\t`subscriptions and asynchronous tasks in the componentWillUnmount method.` +\n\t\t\t\t`\\n\\n${getOwnerStack(this._vnode)}`\n\t\t);\n\t}\n\treturn forceUpdate.call(this, callback);\n};\n\n/**\n * Serialize a vnode tree to a string\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function serializeVNode(vnode) {\n\tlet { props } = vnode;\n\tlet name = getDisplayName(vnode);\n\n\tlet attrs = '';\n\tfor (let prop in props) {\n\t\tif (props.hasOwnProperty(prop) && prop !== 'children') {\n\t\t\tlet value = props[prop];\n\n\t\t\t// If it is an object but doesn't have toString(), use Object.toString\n\t\t\tif (typeof value == 'function') {\n\t\t\t\tvalue = `function ${value.displayName || value.name}() {}`;\n\t\t\t}\n\n\t\t\tvalue =\n\t\t\t\tObject(value) === value && !value.toString\n\t\t\t\t\t? Object.prototype.toString.call(value)\n\t\t\t\t\t: value + '';\n\n\t\t\tattrs += ` ${prop}=${JSON.stringify(value)}`;\n\t\t}\n\t}\n\n\tlet children = props.children;\n\treturn `<${name}${attrs}${\n\t\tchildren && children.length ? '>..</' + name + '>' : ' />'\n\t}`;\n}\n","export const ELEMENT_NODE = 1;\nexport const DOCUMENT_NODE = 9;\nexport const DOCUMENT_FRAGMENT_NODE = 11;\n"],"names":["loggedTypeFailures","resetPropWarnings","getDisplayName","vnode","type","Fragment","displayName","name","renderStack","ownerStack","getCurrentVNode","length","hasBabelPlugin","isPossibleOwner","getOwnerStack","stack","next","_owner","push","reduce","acc","owner","source","__source","fileName","lineNumber","console","warn","isWeakMapSupported","WeakMap","setState","Component","prototype","update","callback","this","_vnode","state","_parentDom","call","forceUpdate","serializeVNode","props","attrs","prop","hasOwnProperty","value","Object","toString","JSON","stringify","children","oldDiff","options","_diff","oldDiffed","diffed","oldRoot","_root","oldVNode","oldRender","_render","pop","parent","setupComponentStack","oldBeforeDiff","oldVnode","oldCatchError","_catchError","oldHook","_hook","warnedComponents","useEffect","useLayoutEffect","lazyPropTypes","error","_component","then","promise","Error","_parent","_childDidSuspend","parentNode","isValid","nodeType","componentName","typeSpecs","values","parentVNode","getClosestDomNodeParent","undefined","_children","_dom","Array","isArray","ref","key","propTypes","has","m","lazyVNode","set","keys","forEach","typeSpecName","e","message","comp","property","err","get","deprecatedAttributes","nodeName","attributes","deprecatedProto","create","newProps","i","v","__self","setPrototypeOf","child","_depth","join","component","__hooks","hooks","_list","hook","_factory","_args","indexOf"],"mappings":"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"}
1
+ {"version":3,"file":"debug.mjs","sources":["../src/check-props.js","../src/component-stack.js","../src/debug.js","../src/constants.js","../src/index.js"],"sourcesContent":["const ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nlet loggedTypeFailures = {};\n\n/**\n * Reset the history of which prop type warnings have been logged.\n */\nexport function resetPropWarnings() {\n\tloggedTypeFailures = {};\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * Adapted from https://github.com/facebook/prop-types/blob/master/checkPropTypes.js\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n */\nexport function checkPropTypes(\n\ttypeSpecs,\n\tvalues,\n\tlocation,\n\tcomponentName,\n\tgetStack\n) {\n\tObject.keys(typeSpecs).forEach(typeSpecName => {\n\t\tlet error;\n\t\ttry {\n\t\t\terror = typeSpecs[typeSpecName](\n\t\t\t\tvalues,\n\t\t\t\ttypeSpecName,\n\t\t\t\tcomponentName,\n\t\t\t\tlocation,\n\t\t\t\tnull,\n\t\t\t\tReactPropTypesSecret\n\t\t\t);\n\t\t} catch (e) {\n\t\t\terror = e;\n\t\t}\n\t\tif (error && !(error.message in loggedTypeFailures)) {\n\t\t\tloggedTypeFailures[error.message] = true;\n\t\t\tconsole.error(\n\t\t\t\t`Failed ${location} type: ${error.message}${(getStack &&\n\t\t\t\t\t`\\n${getStack()}`) ||\n\t\t\t\t\t''}`\n\t\t\t);\n\t\t}\n\t});\n}\n","import { options, Fragment } from 'preact';\n\n/**\n * Get human readable name of the component/dom node\n * @param {import('./internal').VNode} vnode\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function getDisplayName(vnode) {\n\tif (vnode.type === Fragment) {\n\t\treturn 'Fragment';\n\t} else if (typeof vnode.type == 'function') {\n\t\treturn vnode.type.displayName || vnode.type.name;\n\t} else if (typeof vnode.type == 'string') {\n\t\treturn vnode.type;\n\t}\n\n\treturn '#text';\n}\n\n/**\n * Used to keep track of the currently rendered `vnode` and print it\n * in debug messages.\n */\nlet renderStack = [];\n\n/**\n * Keep track of the current owners. An owner describes a component\n * which was responsible to render a specific `vnode`. This exclude\n * children that are passed via `props.children`, because they belong\n * to the parent owner.\n *\n * ```jsx\n * const Foo = props => <div>{props.children}</div> // div's owner is Foo\n * const Bar = props => {\n * return (\n * <Foo><span /></Foo> // Foo's owner is Bar, span's owner is Bar\n * )\n * }\n * ```\n *\n * Note: A `vnode` may be hoisted to the root scope due to compiler\n * optimiztions. In these cases the `_owner` will be different.\n */\nlet ownerStack = [];\n\n/**\n * Get the currently rendered instance\n * @returns {import('./internal').Internal | null}\n */\nexport function getCurrentInternal() {\n\treturn renderStack.length > 0 ? renderStack[renderStack.length - 1] : null;\n}\n\n/**\n * If the user doesn't have `@babel/plugin-transform-react-jsx-source`\n * somewhere in his tool chain we can't print the filename and source\n * location of a component. In that case we just omit that, but we'll\n * print a helpful message to the console, notifying the user of it.\n */\nlet hasBabelPlugin = false;\n\n/**\n * Check if a `vnode` is a possible owner.\n * @param {import('./internal').Internal} internal\n */\nfunction isPossibleOwner(internal) {\n\treturn typeof internal.type == 'function' && internal.type != Fragment;\n}\n\n/**\n * Return the component stack that was captured up to this point.\n * @param {import('./internal').Internal} internal\n * @returns {string}\n */\nexport function getOwnerStack(internal) {\n\tconst stack = [internal];\n\tlet next = internal;\n\twhile (next._owner != null) {\n\t\tstack.push(next._owner);\n\t\tnext = next._owner;\n\t}\n\n\treturn stack.reduce((acc, owner) => {\n\t\tacc += ` in ${getDisplayName(owner)}`;\n\n\t\tconst source = owner.props && owner.props.__source;\n\t\tif (source) {\n\t\t\tacc += ` (at ${source.fileName}:${source.lineNumber})`;\n\t\t} else if (!hasBabelPlugin) {\n\t\t\thasBabelPlugin = true;\n\t\t\tconsole.warn(\n\t\t\t\t'Add @babel/plugin-transform-react-jsx-source to get a more detailed component stack. Note that you should not add it to production builds of your App for bundle size reasons.'\n\t\t\t);\n\t\t}\n\n\t\treturn (acc += '\\n');\n\t}, '');\n}\n\n/**\n * Setup code to capture the component trace while rendering. Note that\n * we cannot simply traverse `vnode._parent` upwards, because we have some\n * debug messages for `this.setState` where the `vnode` is `undefined`.\n */\nexport function setupComponentStack() {\n\tlet oldDiff = options._diff;\n\tlet oldDiffed = options.diffed;\n\tlet oldRoot = options._root;\n\tlet oldVNode = options.vnode;\n\tlet oldInternal = options._internal;\n\tlet oldRender = options._render;\n\n\toptions.diffed = internal => {\n\t\tif (isPossibleOwner(internal)) {\n\t\t\townerStack.pop();\n\t\t}\n\t\trenderStack.pop();\n\t\tif (oldDiffed) oldDiffed(internal);\n\t};\n\n\toptions._diff = (internal, vnode) => {\n\t\tif (isPossibleOwner(internal)) {\n\t\t\trenderStack.push(internal);\n\t\t}\n\t\tif (oldDiff) oldDiff(internal, vnode);\n\t};\n\n\toptions._root = (vnode, parent) => {\n\t\townerStack = [];\n\t\tif (oldRoot) oldRoot(vnode, parent);\n\t};\n\n\toptions.vnode = vnode => {\n\t\tvnode._owner =\n\t\t\townerStack.length > 0 ? ownerStack[ownerStack.length - 1] : null;\n\t\tif (oldVNode) oldVNode(vnode);\n\t};\n\n\toptions._internal = (internal, vnode) => {\n\t\tif (internal.type !== null) {\n\t\t\tinternal._owner = vnode._owner;\n\t\t}\n\t\tif (oldInternal) oldInternal(internal, vnode);\n\t};\n\n\toptions._render = vnode => {\n\t\tif (isPossibleOwner(vnode)) {\n\t\t\townerStack.push(vnode);\n\t\t}\n\n\t\tif (oldRender) oldRender(vnode);\n\t};\n}\n","import { checkPropTypes } from './check-props';\nimport { options, Component } from 'preact';\nimport {\n\tELEMENT_NODE,\n\tDOCUMENT_NODE,\n\tDOCUMENT_FRAGMENT_NODE\n} from './constants';\nimport {\n\tgetOwnerStack,\n\tsetupComponentStack,\n\tgetCurrentInternal,\n\tgetDisplayName\n} from './component-stack';\nimport { MODE_UNMOUNTING } from 'preact/src/constants';\nimport { IS_NON_DIMENSIONAL } from 'preact/compat/src/util';\n\nconst isWeakMapSupported = typeof WeakMap == 'function';\n\nfunction getClosestDomNodeParent(parent) {\n\tif (!parent) return {};\n\tif (typeof parent.type == 'function') {\n\t\treturn getClosestDomNodeParent(parent._parent);\n\t}\n\treturn parent;\n}\n\nexport function initDebug() {\n\tsetupComponentStack();\n\n\tlet hooksAllowed = false;\n\n\t/* eslint-disable no-console */\n\tlet oldBeforeDiff = options._diff;\n\tlet oldDiffed = options.diffed;\n\tlet oldVnode = options.vnode;\n\tlet oldCatchError = options._catchError;\n\tlet oldRoot = options._root;\n\tlet oldHook = options._hook;\n\tconst warnedComponents = !isWeakMapSupported\n\t\t? null\n\t\t: {\n\t\t\t\tuseEffect: new WeakMap(),\n\t\t\t\tuseLayoutEffect: new WeakMap(),\n\t\t\t\tlazyPropTypes: new WeakMap()\n\t\t };\n\tconst deprecations = [];\n\n\toptions._catchError = (error, vnode, oldVNode) => {\n\t\tlet component = vnode && vnode._component;\n\t\tif (component && typeof error.then == 'function') {\n\t\t\tconst promise = error;\n\t\t\terror = new Error(\n\t\t\t\t`Missing Suspense. The throwing component was: ${getDisplayName(vnode)}`\n\t\t\t);\n\n\t\t\tlet parent = vnode;\n\t\t\tfor (; parent; parent = parent._parent) {\n\t\t\t\tif (parent._component && parent._component._childDidSuspend) {\n\t\t\t\t\terror = promise;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// We haven't recovered and we know at this point that there is no\n\t\t\t// Suspense component higher up in the tree\n\t\t\tif (error instanceof Error) {\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t}\n\n\t\ttry {\n\t\t\toldCatchError(error, vnode, oldVNode);\n\n\t\t\t// when an error was handled by an ErrorBoundary we will nontheless emit an error\n\t\t\t// event on the window object. This is to make up for react compatibility in dev mode\n\t\t\t// and thus make the Next.js dev overlay work.\n\t\t\tif (typeof error.then != 'function') {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthrow error;\n\t\t\t\t});\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tthrow e;\n\t\t}\n\t};\n\n\toptions._root = (vnode, parentNode) => {\n\t\tif (!parentNode) {\n\t\t\tthrow new Error(\n\t\t\t\t'Undefined parent passed to render(), this is the second argument.\\n' +\n\t\t\t\t\t'Check if the element is available in the DOM/has the correct id.'\n\t\t\t);\n\t\t}\n\n\t\tlet isValid;\n\t\tswitch (parentNode.nodeType) {\n\t\t\tcase ELEMENT_NODE:\n\t\t\tcase DOCUMENT_FRAGMENT_NODE:\n\t\t\tcase DOCUMENT_NODE:\n\t\t\t\tisValid = true;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tisValid = false;\n\t\t}\n\n\t\tif (!isValid) {\n\t\t\tlet componentName = getDisplayName(vnode);\n\t\t\tthrow new Error(\n\t\t\t\t`Expected a valid HTML node as a second argument to render.\tReceived ${parentNode} instead: render(<${componentName} />, ${parentNode});`\n\t\t\t);\n\t\t}\n\n\t\tif (oldRoot) oldRoot(vnode, parentNode);\n\t};\n\n\toptions._diff = (internal, vnode) => {\n\t\tif (vnode === null || typeof vnode !== 'object') return;\n\t\t// Check if the user passed plain objects as children. Note that we cannot\n\t\t// move this check into `options.vnode` because components can receive\n\t\t// children in any shape they want (e.g.\n\t\t// `<MyJSONFormatter>{{ foo: 123, bar: \"abc\" }}</MyJSONFormatter>`).\n\t\tif (vnode.constructor !== undefined) {\n\t\t\tconst keys = Object.keys(vnode).join(',');\n\t\t\tthrow new Error(\n\t\t\t\t`Objects are not valid as a child. Encountered an object with the keys {${keys}}.` +\n\t\t\t\t\t`\\n\\n${getOwnerStack(internal)}`\n\t\t\t);\n\t\t}\n\n\t\tlet { type, _parent: parent } = internal;\n\n\t\tif (type === undefined) {\n\t\t\tthrow new Error(\n\t\t\t\t'Undefined component passed to createElement()\\n\\n' +\n\t\t\t\t\t'You likely forgot to export your component or might have mixed up default and named imports' +\n\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(internal)}`\n\t\t\t);\n\t\t} else if (type != null && typeof type == 'object') {\n\t\t\tif (type.constructor === undefined) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`Invalid type passed to createElement(): ${type}\\n\\n` +\n\t\t\t\t\t\t'Did you accidentally pass a JSX literal as JSX twice?\\n\\n' +\n\t\t\t\t\t\t` let My${getDisplayName(internal)} = ${serializeVNode(type)};\\n` +\n\t\t\t\t\t\t` let vnode = <My${getDisplayName(internal)} />;\\n\\n` +\n\t\t\t\t\t\t'This usually happens when you export a JSX literal and not the component.' +\n\t\t\t\t\t\t`\\n\\n${getOwnerStack(internal)}`\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tthrow new Error(\n\t\t\t\t'Invalid type passed to createElement(): ' +\n\t\t\t\t\t(Array.isArray(type) ? 'array' : type)\n\t\t\t);\n\t\t}\n\n\t\tlet parentVNode = getClosestDomNodeParent(parent);\n\n\t\thooksAllowed = true;\n\n\t\tif (\n\t\t\t(type === 'thead' || type === 'tfoot' || type === 'tbody') &&\n\t\t\tparentVNode.type !== 'table'\n\t\t) {\n\t\t\tconsole.error(\n\t\t\t\t'Improper nesting of table. Your <thead/tbody/tfoot> should have a <table> parent.' +\n\t\t\t\t\tserializeVNode(internal) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(internal)}`\n\t\t\t);\n\t\t} else if (\n\t\t\ttype === 'tr' &&\n\t\t\tparentVNode.type !== 'thead' &&\n\t\t\tparentVNode.type !== 'tfoot' &&\n\t\t\tparentVNode.type !== 'tbody' &&\n\t\t\tparentVNode.type !== 'table'\n\t\t) {\n\t\t\tconsole.error(\n\t\t\t\t'Improper nesting of table. Your <tr> should have a <thead/tbody/tfoot/table> parent.' +\n\t\t\t\t\tserializeVNode(internal) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(internal)}`\n\t\t\t);\n\t\t} else if (type === 'td' && parentVNode.type !== 'tr') {\n\t\t\tconsole.error(\n\t\t\t\t'Improper nesting of table. Your <td> should have a <tr> parent.' +\n\t\t\t\t\tserializeVNode(internal) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(internal)}`\n\t\t\t);\n\t\t} else if (type === 'th' && parentVNode.type !== 'tr') {\n\t\t\tconsole.error(\n\t\t\t\t'Improper nesting of table. Your <th> should have a <tr>.' +\n\t\t\t\t\tserializeVNode(internal) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(internal)}`\n\t\t\t);\n\t\t}\n\t\tlet isCompatNode = '$$typeof' in vnode;\n\t\tif (\n\t\t\tinternal.ref !== undefined &&\n\t\t\ttypeof internal.ref != 'function' &&\n\t\t\ttypeof internal.ref != 'object' &&\n\t\t\t!isCompatNode // allow string refs when preact-compat is installed\n\t\t) {\n\t\t\tthrow new Error(\n\t\t\t\t`Component's \"ref\" property should be a function, or an object created ` +\n\t\t\t\t\t`by createRef(), but got [${typeof internal.ref}] instead\\n` +\n\t\t\t\t\tserializeVNode(internal) +\n\t\t\t\t\t`\\n\\n${getOwnerStack(internal)}`\n\t\t\t);\n\t\t}\n\n\t\tif (typeof internal.type == 'string') {\n\t\t\tfor (const key in vnode.props) {\n\t\t\t\tif (\n\t\t\t\t\tkey[0] === 'o' &&\n\t\t\t\t\tkey[1] === 'n' &&\n\t\t\t\t\ttypeof vnode.props[key] != 'function' &&\n\t\t\t\t\tvnode.props[key] != null\n\t\t\t\t) {\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t`Component's \"${key}\" property should be a function, ` +\n\t\t\t\t\t\t\t`but got [${typeof vnode.props[key]}] instead\\n` +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(internal)}`\n\t\t\t\t\t);\n\t\t\t\t} else if (\n\t\t\t\t\t!isCompatNode &&\n\t\t\t\t\tkey === 'style' &&\n\t\t\t\t\tvnode.props[key] !== null &&\n\t\t\t\t\ttypeof vnode.props[key] === 'object'\n\t\t\t\t) {\n\t\t\t\t\tconst style = vnode.props[key];\n\t\t\t\t\tfor (let i in style) {\n\t\t\t\t\t\tif (typeof style[i] === 'number' && !IS_NON_DIMENSIONAL.test(i)) {\n\t\t\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\t\t\t`Numeric CSS property value is missing a \"px\" unit: ${i}: ${style[i]}\"\\n` +\n\t\t\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Check prop-types if available\n\t\tif (typeof internal.type == 'function' && internal.type.propTypes) {\n\t\t\tif (\n\t\t\t\tinternal.type.displayName === 'Lazy' &&\n\t\t\t\twarnedComponents &&\n\t\t\t\t!warnedComponents.lazyPropTypes.has(internal.type)\n\t\t\t) {\n\t\t\t\tconst m =\n\t\t\t\t\t'PropTypes are not supported on lazy(). Use propTypes on the wrapped component itself. ';\n\t\t\t\ttry {\n\t\t\t\t\tconst lazyVNode = internal.type();\n\t\t\t\t\twarnedComponents.lazyPropTypes.set(internal.type, true);\n\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\tm + `Component wrapped in lazy() is ${getDisplayName(lazyVNode)}`\n\t\t\t\t\t);\n\t\t\t\t} catch (promise) {\n\t\t\t\t\tconsole.warn(\n\t\t\t\t\t\tm + \"We will log the wrapped component's name once it is loaded.\"\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// If vnode is not present we're mounting\n\t\t\tlet values = vnode ? vnode.props : internal.props;\n\t\t\tif (internal.type._forwarded) {\n\t\t\t\tvalues = Object.assign({}, values);\n\t\t\t\tdelete values.ref;\n\t\t\t}\n\n\t\t\tcheckPropTypes(\n\t\t\t\tinternal.type.propTypes,\n\t\t\t\tvalues,\n\t\t\t\t'prop',\n\t\t\t\tgetDisplayName(internal),\n\t\t\t\t() => getOwnerStack(internal)\n\t\t\t);\n\t\t}\n\n\t\tif (oldBeforeDiff) oldBeforeDiff(internal, vnode);\n\t};\n\n\toptions._hook = (comp, index, type) => {\n\t\tif (!comp || !hooksAllowed) {\n\t\t\tthrow new Error('Hook can only be invoked from render methods.');\n\t\t}\n\n\t\tif (oldHook) oldHook(comp, index, type);\n\t};\n\n\t// Ideally we'd want to print a warning once per component, but we\n\t// don't have access to the vnode that triggered it here. As a\n\t// compromise and to avoid flooding the console with warnings we\n\t// print each deprecation warning only once.\n\tconst warn = (property, message) => ({\n\t\tget() {\n\t\t\tconst key = 'get' + property + message;\n\t\t\tif (deprecations && deprecations.indexOf(key) < 0) {\n\t\t\t\tdeprecations.push(key);\n\t\t\t\tconsole.warn(`getting vnode.${property} is deprecated, ${message}`);\n\t\t\t}\n\t\t},\n\t\tset() {\n\t\t\tconst key = 'set' + property + message;\n\t\t\tif (deprecations && deprecations.indexOf(key) < 0) {\n\t\t\t\tdeprecations.push(key);\n\t\t\t\tconsole.warn(`setting vnode.${property} is not allowed, ${message}`);\n\t\t\t}\n\t\t}\n\t});\n\n\tconst deprecatedAttributes = {\n\t\tnodeName: warn('nodeName', 'use vnode.type'),\n\t\tattributes: warn('attributes', 'use vnode.props'),\n\t\tchildren: warn('children', 'use vnode.props.children')\n\t};\n\n\t// Property descriptor: preserve a property's value but make it non-enumerable:\n\tconst debugProps = {\n\t\t__source: { enumerable: false },\n\t\t__self: { enumerable: false }\n\t};\n\n\t// If it's acceptable to inject debug properties onto the\n\t// prototype, __proto__ is faster than defineProperties():\n\t// https://esbench.com/bench/6021ebd7d9c27600a7bfdba3\n\tconst deprecatedProto = Object.create({}, deprecatedAttributes);\n\n\toptions.vnode = vnode => {\n\t\tconst props = vnode.props;\n\t\tif (props != null && ('__source' in props || '__self' in props)) {\n\t\t\tObject.defineProperties(props, debugProps);\n\t\t\tvnode.__source = props.__source;\n\t\t\tvnode.__self = props.__self;\n\t\t}\n\n\t\t// eslint-disable-next-line\n\t\tvnode.__proto__ = deprecatedProto;\n\t\tif (oldVnode) oldVnode(vnode);\n\t};\n\n\toptions.diffed = vnode => {\n\t\thooksAllowed = false;\n\n\t\tif (oldDiffed) oldDiffed(vnode);\n\n\t\tif (vnode._children != null) {\n\t\t\tconst keys = [];\n\t\t\tfor (let i = 0; i < vnode._children.length; i++) {\n\t\t\t\tconst child = vnode._children[i];\n\t\t\t\tif (!child || child.key == null) continue;\n\n\t\t\t\tconst key = child.key;\n\t\t\t\tif (keys.indexOf(key) !== -1) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t'Following component has two or more children with the ' +\n\t\t\t\t\t\t\t`same key attribute: \"${key}\". This may cause glitches and misbehavior ` +\n\t\t\t\t\t\t\t'in rendering process. Component: \\n\\n' +\n\t\t\t\t\t\t\tserializeVNode(vnode) +\n\t\t\t\t\t\t\t`\\n\\n${getOwnerStack(vnode)}`\n\t\t\t\t\t);\n\n\t\t\t\t\t// Break early to not spam the console\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tkeys.push(key);\n\t\t\t}\n\t\t}\n\t};\n}\n\nconst setState = Component.prototype.setState;\n\n/** @this {import('../../src/internal').Component} */\nComponent.prototype.setState = function(update, callback) {\n\tif (this._internal == null) {\n\t\t// `this._internal` will be `null` during componentWillMount. But it\n\t\t// is perfectly valid to call `setState` during cWM. So we\n\t\t// need an additional check to verify that we are dealing with a\n\t\t// call inside constructor.\n\t\tif (this.state == null) {\n\t\t\tconsole.warn(\n\t\t\t\t`Calling \"this.setState\" inside the constructor of a component is a ` +\n\t\t\t\t\t`no-op and might be a bug in your application. Instead, set ` +\n\t\t\t\t\t`\"this.state = {}\" directly.\\n\\n${getOwnerStack(\n\t\t\t\t\t\tgetCurrentInternal()\n\t\t\t\t\t)}`\n\t\t\t);\n\t\t}\n\t} else if (this._internal._flags & MODE_UNMOUNTING) {\n\t\tconsole.warn(\n\t\t\t`Can't call \"this.setState\" on an unmounted component. This is a no-op, ` +\n\t\t\t\t`but it indicates a memory leak in your application. To fix, cancel all ` +\n\t\t\t\t`subscriptions and asynchronous tasks in the componentWillUnmount method.` +\n\t\t\t\t`\\n\\n${getOwnerStack(this._internal)}`\n\t\t);\n\t}\n\n\treturn setState.call(this, update, callback);\n};\n\nconst forceUpdate = Component.prototype.forceUpdate;\n\n/** @this {import('../../src/internal').Component} */\nComponent.prototype.forceUpdate = function(callback) {\n\tif (this._internal == null) {\n\t\tconsole.warn(\n\t\t\t`Calling \"this.forceUpdate\" inside the constructor of a component is a ` +\n\t\t\t\t`no-op and might be a bug in your application.\\n\\n${getOwnerStack(\n\t\t\t\t\tgetCurrentInternal()\n\t\t\t\t)}`\n\t\t);\n\t} else if (this._internal._flags & MODE_UNMOUNTING) {\n\t\tconsole.warn(\n\t\t\t`Can't call \"this.forceUpdate\" on an unmounted component. This is a no-op, ` +\n\t\t\t\t`but it indicates a memory leak in your application. To fix, cancel all ` +\n\t\t\t\t`subscriptions and asynchronous tasks in the componentWillUnmount method.` +\n\t\t\t\t`\\n\\n${getOwnerStack(this._internal)}`\n\t\t);\n\t}\n\treturn forceUpdate.call(this, callback);\n};\n\n/**\n * Serialize a vnode tree to a string\n * @param {import('./internal').VNode} vnode\n * @returns {string}\n */\nexport function serializeVNode(vnode) {\n\tlet { props } = vnode;\n\tlet name = getDisplayName(vnode);\n\n\tlet attrs = '';\n\tfor (let prop in props) {\n\t\tif (props.hasOwnProperty(prop) && prop !== 'children') {\n\t\t\tlet value = props[prop];\n\n\t\t\t// If it is an object but doesn't have toString(), use Object.toString\n\t\t\tif (typeof value == 'function') {\n\t\t\t\tvalue = `function ${value.displayName || value.name}() {}`;\n\t\t\t}\n\n\t\t\tvalue =\n\t\t\t\tObject(value) === value && !value.toString\n\t\t\t\t\t? Object.prototype.toString.call(value)\n\t\t\t\t\t: value + '';\n\n\t\t\tattrs += ` ${prop}=${JSON.stringify(value)}`;\n\t\t}\n\t}\n\n\tlet children = props.children;\n\treturn `<${name}${attrs}${\n\t\tchildren && children.length ? '>..</' + name + '>' : ' />'\n\t}`;\n}\n","export const ELEMENT_NODE = 1;\nexport const DOCUMENT_NODE = 9;\nexport const DOCUMENT_FRAGMENT_NODE = 11;\n","import { initDebug } from './debug';\nimport 'preact/devtools';\n\ninitDebug();\n\nexport { resetPropWarnings } from './check-props';\n"],"names":["loggedTypeFailures","resetPropWarnings","getDisplayName","vnode","type","Fragment","displayName","name","renderStack","ownerStack","getCurrentInternal","length","hasBabelPlugin","isPossibleOwner","internal","getOwnerStack","stack","next","push","reduce","acc","owner","source","props","__source","fileName","lineNumber","console","warn","isWeakMapSupported","WeakMap","getClosestDomNodeParent","parent","setState","Component","prototype","update","callback","this","state","MODE_UNMOUNTING","call","forceUpdate","serializeVNode","attrs","prop","hasOwnProperty","value","Object","toString","JSON","stringify","children","oldDiff","options","oldDiffed","diffed","oldRoot","oldVNode","oldInternal","oldRender","pop","setupComponentStack","hooksAllowed","oldBeforeDiff","oldVnode","oldCatchError","oldHook","warnedComponents","useEffect","useLayoutEffect","lazyPropTypes","deprecations","error","then","promise","Error","setTimeout","e","parentNode","isValid","nodeType","componentName","undefined","constructor","keys","join","__","Array","isArray","parentVNode","isCompatNode","ref","key","style","i","IS_NON_DIMENSIONAL","test","propTypes","has","m","lazyVNode","set","values","assign","typeSpecs","location","getStack","forEach","typeSpecName","message","checkPropTypes","comp","index","property","get","indexOf","deprecatedAttributes","nodeName","attributes","debugProps","enumerable","__self","deprecatedProto","create","defineProperties","__proto__","child","initDebug"],"mappings":"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"}